Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Sm/parallelize-smoke-tests #604

Merged
merged 5 commits into from Nov 29, 2022
Merged

Sm/parallelize-smoke-tests #604

merged 5 commits into from Nov 29, 2022

Conversation

mshanemc
Copy link
Contributor

@mshanemc mshanemc commented Nov 23, 2022

What does this PR do?

more parallelization on build steps
ex of current action https://github.com/salesforcecli/sfdx-cli/actions/runs/3490663206/jobs/5842412691

What issues does this PR fix or reference?

@W-11726535@

perf changes

smoke test on local mac

before. ../plugin-release-management/bin/dev cli:tarballs:smoke --cli sfdx 316.05s user 92.76s system 108% cpu 6:15.10 total
after. ../plugin-release-management/bin/dev cli:tarballs:smoke --cli sfdx 395.89s user 124.92s system 563% cpu 1:32.34 total

QA setup

  1. clone sfdx-cli, yarn install && yarn build
  2. yarn pack:tarballs will get the tarballs prepared/packed (not required or impact by this change, but feat: remove qq and parallelize build/pack/promote oclif/oclif#1035 will save a lot of time)
  3. either sfdx plugins:link this plugin, or use bin dev for the next 2 commands
  4. cli:tarballs:verify
  5. cli:tarballs:smoke --cli sfdx

@iowillhoit
Copy link
Contributor

Looks awesome! Great improvement for the smoke command 🐇

cli:tarballs:smoke

BEFORE ../plugin-release-management/bin/dev cli:tarballs:smoke --cli sfdx 185.44s user 44.41s system 102% cpu 3:44.84 total
AFTER ../plugin-release-management/bin/dev cli:tarballs:smoke --cli sfdx 253.73s user 69.02s system 654% cpu 49.313 total

cli:tarballs:verify

🟡 The output is getting a little garbled on this command. Notice that the status of 2 through 9 is not listed and some other output is out of order. The execution time of verify sync vs async is almost the same. Might be worth switching back to sync for the clean output.
BEFORE

> time ../plugin-release-management/bin/dev cli:tarballs:verify --cli sfdx
[1/9] Ensure webdriverio does not exist... PASSED
[2/9] Ensure heroku-cli-util/.nyc_output does not exist... PASSED
Windows Path Length Test:
  - max windows path length: 259
  ---- Upper Limit ----
  - sfdx max username length: 64
  - sfdx max base path length: 136
  - sfdx max allowable path length: 123
  ---- Supported Limit ----
  - sfdx supported username length: 41
  - sfdx supported base path length: 113
  - sfdx supported allowable path length: 146
WARNING: Some paths could result in errors for Windows users with usernames that are 64 characters!
124 - node_modules/@salesforce/templates/lib/templates/analytics/waveTemplates/DefaultAnalyticsTemplate/app-to-template-rules.json
128 - node_modules/@salesforce/templates/lib/templates/analytics/waveTemplates/DefaultAnalyticsTemplate/dashboards/basicDashboard.json
124 - node_modules/@salesforce/templates/lib/templates/analytics/waveTemplates/DefaultAnalyticsTemplate/template-to-app-rules.json
127 - node_modules/@salesforce/templates/lib/templates/lightningcomponent/lwc/analyticsDashboard/__tests__/analyticsDashboard.test.js
143 - node_modules/@salesforce/templates/lib/templates/lightningcomponent/lwc/analyticsDashboardWithStep/__tests__/analyticsDashboardWithStep.test.js
130 - node_modules/@salesforce/templates/lib/templates/lightningcomponent/lwc/analyticsDashboardWithStep/analyticsDashboardWithStep.html
128 - node_modules/@salesforce/templates/lib/templates/lightningcomponent/lwc/analyticsDashboardWithStep/analyticsDashboardWithStep.js
137 - node_modules/@salesforce/templates/lib/templates/lightningcomponent/lwc/analyticsDashboardWithStep/analyticsDashboardWithStep.js-meta.xml
[3/9] Ensure windows path lengths... PASSED
[4/9] Ensure apex-node exists... PASSED
[5/9] Ensure plugin generator test template exists... PASSED
[6/9] Ensure templates commands exist... PASSED
[7/9] Ensure no tests or maps in dist... PASSED
[8/9] Ensure no unexpected files... PASSED
[9/9] Ensure sf is included
...
[HELP TEXT OMITTED]
[9/9] Ensure sf is included
... PASSED
../plugin-release-management/bin/dev cli:tarballs:verify --cli sfdx  3.12s user 1.97s system 143% cpu 3.531 total

AFTER

> time ../plugin-release-management/bin/dev cli:tarballs:verify --cli sfdx
Windows Path Length Test:
  - max windows path length: 259
  ---- Upper Limit ----
  - sfdx max username length: 64
  - sfdx max base path length: 136
  - sfdx max allowable path length: 123
  ---- Supported Limit ----
  - sfdx supported username length: 41
  - sfdx supported base path length: 113
  - sfdx supported allowable path length: 146
[1/9] Ensure sf is included
... PASSED
[HELP TEXT OMITTED]

WARNING: Some paths could result in errors for Windows users with usernames that are 64 characters!
124 - node_modules/@salesforce/templates/lib/templates/analytics/waveTemplates/DefaultAnalyticsTemplate/app-to-template-rules.json
128 - node_modules/@salesforce/templates/lib/templates/analytics/waveTemplates/DefaultAnalyticsTemplate/dashboards/basicDashboard.json
124 - node_modules/@salesforce/templates/lib/templates/analytics/waveTemplates/DefaultAnalyticsTemplate/template-to-app-rules.json
127 - node_modules/@salesforce/templates/lib/templates/lightningcomponent/lwc/analyticsDashboard/__tests__/analyticsDashboard.test.js
143 - node_modules/@salesforce/templates/lib/templates/lightningcomponent/lwc/analyticsDashboardWithStep/__tests__/analyticsDashboardWithStep.test.js
130 - node_modules/@salesforce/templates/lib/templates/lightningcomponent/lwc/analyticsDashboardWithStep/analyticsDashboardWithStep.html
128 - node_modules/@salesforce/templates/lib/templates/lightningcomponent/lwc/analyticsDashboardWithStep/analyticsDashboardWithStep.js
137 - node_modules/@salesforce/templates/lib/templates/lightningcomponent/lwc/analyticsDashboardWithStep/analyticsDashboardWithStep.js-meta.xml
../plugin-release-management/bin/dev cli:tarballs:verify --cli sfdx  3.02s user 1.93s system 144% cpu 3.437 total

@iowillhoit iowillhoit merged commit 6d84fc9 into main Nov 29, 2022
@iowillhoit iowillhoit deleted the sm/parallelize-smoke-tests branch November 29, 2022 21:17
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
2 participants