-
-
Notifications
You must be signed in to change notification settings - Fork 2.3k
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
Update CI caching #9552
Update CI caching #9552
Conversation
0ef6a92
to
5eb4207
Compare
5eb4207
to
d31ddb9
Compare
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Nice one
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Love it, thanks!
@@ -79,29 +80,30 @@ jobs: | |||
packages/core/rust/*.node | |||
|
|||
integration_tests: | |||
name: Integration tests (${{matrix.os}}, Node ${{matrix.node}}) | |||
name: Integration tests (${{ matrix.os }}, Node ${{ matrix.node }}) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Are these whitespace changes just some auto-formatting somewhere?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Not auto-formatting, it was done manually and matches other workflow files. It's the style the Github documentation uses everywhere.
.github/workflows/ci.yml
Outdated
strategy: | ||
matrix: | ||
node: [18, 20] | ||
os: [ubuntu-latest, macos-latest, windows-latest] | ||
# These tend to be quite flakey, so one failed instance shouldn't stop | ||
# others from potentially succeeding | ||
fail-fast: false | ||
runs-on: ${{matrix.os}} | ||
runs-on: ${{ matrix.os}} |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
/nit this whitespace change seems inconsistent - no trailing space.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
.. related, maybe we should have prettier run on these .yml
files? I think that's just adding it to
Line 70 in 5d8d7f0
"*.{js,json,md,ts}": "prettier --write", |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Thanks, I missed this. Prettier doesn't seem to follow the style, and just keeps everything as is
d31ddb9
to
a519cd8
Compare
↪️ Pull Request
These changes update the CI workflow Rust caching so that it can be better reused across jobs, halving the storage used from 1849MB → 920MB. The specific changes include:
components: rustfmt
installation from test jobsshared-key
— this overrides the default per job cache and is more effective since we are using the same set of OS + targets for both jobsname
at the top and using${{ }}
over${{}}
for expressionsrunner.os
overmatrix.os
as it is always available💻 Examples
Observe the CI workflow behaviour, given the following example:
v0-rust-ubuntu-latest-a554fcb7-c1764bc1
v0-rust-macos-latest-4be4b021-c1764bc1
v0-rust-windows-latest-569c1dff-c1764bc1
Note: REPL fails here because it is tested on push not pull request, and windows has been consistently failing on main branch
🚨 Test instructions
Look at the CI step for this pull request, or otherwise test on your own branch by adding a push trigger