|
@@ -237,10 +237,73 @@ jobs:
|
|
|
if: ${{ matrix.platform.cross == true }}
|
|
|
uses: taiki-e/install-action@cross
|
|
|
|
|
|
- - uses: mozilla-actions/sccache-action@v0.0.3
|
|
|
+ - uses: Swatinem/rust-cache@v2
|
|
|
with:
|
|
|
- workspaces: core -> ../target
|
|
|
- save-if: ${{ matrix.features.key == 'all' }}
|
|
|
+ # The prefix cache key, this can be changed to start a new cache manually.
|
|
|
+ # default: "v0-rust"
|
|
|
+ # prefix-key: ""
|
|
|
+
|
|
|
+ # A cache key that is used instead of the automatic `job`-based key,
|
|
|
+ # and is stable over multiple jobs.
|
|
|
+ # default: empty
|
|
|
+ # shared-key: ""
|
|
|
+
|
|
|
+ # An additional cache key that is added alongside the automatic `job`-based
|
|
|
+ # cache key and can be used to further differentiate jobs.
|
|
|
+ # default: empty
|
|
|
+ key: "${{ matrix.platform.target }}"
|
|
|
+
|
|
|
+ # A whitespace separated list of env-var *prefixes* who's value contributes
|
|
|
+ # to the environment cache key.
|
|
|
+ # The env-vars are matched by *prefix*, so the default `RUST` var will
|
|
|
+ # match all of `RUSTC`, `RUSTUP_*`, `RUSTFLAGS`, `RUSTDOC_*`, etc.
|
|
|
+ # default: "CARGO CC CFLAGS CXX CMAKE RUST"
|
|
|
+ # env-vars: ""
|
|
|
+
|
|
|
+ # The cargo workspaces and target directory configuration.
|
|
|
+ # These entries are separated by newlines and have the form
|
|
|
+ # `$workspace -> $target`. The `$target` part is treated as a directory
|
|
|
+ # relative to the `$workspace` and defaults to "target" if not explicitly given.
|
|
|
+ # default: ". -> target"
|
|
|
+ # workspaces: ""
|
|
|
+
|
|
|
+ # Additional non workspace directories to be cached, separated by newlines.
|
|
|
+ # cache-directories: ""
|
|
|
+
|
|
|
+ # Determines whether workspace `target` directories are cached.
|
|
|
+ # If `false`, only the cargo registry will be cached.
|
|
|
+ # default: "true"
|
|
|
+ # cache-targets: ""
|
|
|
+
|
|
|
+ # Determines if the cache should be saved even when the workflow has failed.
|
|
|
+ # default: "false"
|
|
|
+ # cache-on-failure: "true"
|
|
|
+
|
|
|
+ # Determines which crates are cached.
|
|
|
+ # If `true` all crates will be cached, otherwise only dependent crates will be cached.
|
|
|
+ # Useful if additional crates are used for CI tooling.
|
|
|
+ # default: "false"
|
|
|
+ cache-all-crates: "true"
|
|
|
+
|
|
|
+ # Determiners whether the cache should be saved.
|
|
|
+ # If `false`, the cache is only restored.
|
|
|
+ # Useful for jobs where the matrix is additive e.g. additional Cargo features,
|
|
|
+ # or when only runs from `master` should be saved to the cache.
|
|
|
+ # default: "true"
|
|
|
+ # save-if: ""
|
|
|
+ # To only cache runs from `master`:
|
|
|
+ # save-if: ${{ github.ref == 'refs/heads/master' }}
|
|
|
+
|
|
|
+ # Specifies what to use as the backend providing cache
|
|
|
+ # Can be set to either "github" or "buildjet"
|
|
|
+ # default: "github"
|
|
|
+ # cache-provider: ""
|
|
|
+
|
|
|
+
|
|
|
+ # - uses: mozilla-actions/sccache-action@v0.0.3
|
|
|
+ # with:
|
|
|
+ # workspaces: core -> ../target
|
|
|
+ # save-if: ${{ matrix.features.key == 'all' }}
|
|
|
- name: test
|
|
|
run: |
|
|
|
${{ env.RUST_CARGO_COMMAND }} ${{ matrix.platform.command }} ${{ matrix.platform.args }} --target ${{ matrix.platform.target }}
|