Skip to content

ref(CI): Speed up testing in GHA #3237

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

Merged
merged 3 commits into from
Feb 4, 2021
Merged

ref(CI): Speed up testing in GHA #3237

merged 3 commits into from
Feb 4, 2021

Conversation

lobsterkatie
Copy link
Member

@lobsterkatie lobsterkatie commented Feb 3, 2021

This PR makes a number of changes to our build and test process on CI, with the goal of markedly speeding up our GHA workflows.

Notable Changes

  • In our GHA workflow, dependencies and built packages are now cached separately, since the former rarely change and the latter change with each commit.
  • Ember tests now run separately from other tests. They are the slowest part of our test suite, and this allows for parallelization.
  • Just because it's nice, all GHA steps now have names.
  • There is now the ability to skip certain tests when running legacy Node versions. We lose the benefit of those tests in those cases (boo), but gain the benefit of being able to test the rest of the package, which we previously weren't able to (yay).
  • The test script used by our matrix of Node version tests has been cleaned up, primarily to remove redundant calls to yarn install and yarn build (since both of those are now handled by the GHA workflow), but also to simply clear out old cruft.

Results

Prior to this PR, CI has been taking around 27 minutes, give or take:

image

After this PR, Ci takes around 20 minutes if third-party dependencies have changed (not frequent), and a little over 18 minutes if they haven't (much more common):

image

image

Follow Up

According to @k-fish, we may be able to gain a little more time by reducing the Ember matrix a bit.

@github-actions
Copy link
Contributor

github-actions bot commented Feb 3, 2021

size-limit report

Path Size
@sentry/browser - CDN Bundle (gzipped) 20.38 KB (0%)
@sentry/browser - Webpack 21.27 KB (0%)
@sentry/react - Webpack 21.29 KB (0%)
@sentry/browser + @sentry/tracing - CDN Bundle (gzipped) 27.32 KB (0%)

Copy link
Contributor

@rhcarvalho rhcarvalho left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Nicely done!

@HazAT
Copy link
Member

HazAT commented Feb 4, 2021

I am going to merge this to prepare a release

@HazAT HazAT merged commit 8cb7a49 into master Feb 4, 2021
@HazAT HazAT deleted the kmclb-pull-out-ember-tests branch February 4, 2021 10:27
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants