chore(deps): Bump dtolnay/rust-toolchain from d8352f6b1d2e870bc5716e7a6d9b65c4cc244a1a to 21dc36fb71dd22e3317045c0c31a3f4249868b17 #904
Workflow file for this run
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
name: "build" | |
permissions: {} | |
on: | |
# run "test" job on push events as well to get main branch coverage | |
push: | |
branches: [ main ] | |
pull_request: | |
env: | |
CARGO_TERM_COLOR: always | |
jobs: | |
build: | |
name: "cargo build" | |
if: github.event_name == 'pull_request' | |
permissions: | |
contents: read | |
runs-on: ubuntu-22.04 | |
steps: | |
- uses: step-security/harden-runner@f086349bfa2bd1361f7909c78558e816508cdc10 # v2.8.0 | |
with: | |
egress-policy: audit | |
- uses: actions/checkout@a5ac7e51b41094c92402da3b24376905380afc29 # v4.1.6 | |
- id: toolchain | |
uses: dtolnay/rust-toolchain@21dc36fb71dd22e3317045c0c31a3f4249868b17 # doesn't have usual versioned releases/tags | |
with: | |
toolchain: "1.56.0" # hardcoded crate MSRV, see rust-toolchain.toml etc. | |
# minimal profile includes rustc component which includes cargo and rustdoc | |
- uses: rui314/setup-mold@8de9eea54963d01c1a6c200606257d65bd53bea1 # does not have recent tags | |
- uses: Swatinem/rust-cache@23bce251a8cd2ffc3c1075eaa2367cf899916d84 # v2.7.3 | |
- run: cargo +${{ steps.toolchain.outputs.name }} build --all-targets --all-features --verbose | |
test: | |
name: "cargo test (with coverage)" | |
permissions: | |
contents: read | |
runs-on: ubuntu-22.04 | |
steps: | |
- uses: step-security/harden-runner@f086349bfa2bd1361f7909c78558e816508cdc10 # v2.8.0 | |
with: | |
egress-policy: audit | |
- uses: actions/checkout@a5ac7e51b41094c92402da3b24376905380afc29 # v4.1.6 | |
- id: toolchain | |
uses: dtolnay/rust-toolchain@21dc36fb71dd22e3317045c0c31a3f4249868b17 # doesn't have usual versioned releases/tags | |
with: | |
toolchain: "stable" | |
# minimal profile includes rustc component which includes cargo and rustdoc | |
- uses: rui314/setup-mold@8de9eea54963d01c1a6c200606257d65bd53bea1 # does not have recent tags | |
- uses: Swatinem/rust-cache@23bce251a8cd2ffc3c1075eaa2367cf899916d84 # v2.7.3 | |
- uses: taiki-e/install-action@3eb90b20bc1fe55dfbf30d81d4a7e0ef8dd34caa # v2.36.0 | |
with: | |
tool: [email protected] | |
- uses: taiki-e/install-action@3eb90b20bc1fe55dfbf30d81d4a7e0ef8dd34caa # v2.36.0 | |
with: | |
tool: [email protected] | |
- run: cargo +${{ steps.toolchain.outputs.name }} llvm-cov test --codecov --output-path codecov.json --all-targets --all-features --verbose | |
- uses: actions/upload-artifact@65462800fd760344b1a7b4382951275a0abb4808 # v4.3.3 | |
with: | |
name: codecov.json | |
path: codecov.json | |
# this will likely fail for forks, maybe adapt bencher.dev workaround with separate workflow for uploaded artifact | |
- uses: codecov/codecov-action@125fc84a9a348dbcf27191600683ec096ec9021c # v4.4.1 | |
with: | |
files: codecov.json | |
fail_ci_if_error: true | |
env: | |
CODECOV_TOKEN: ${{ secrets.CODECOV_TOKEN }} | |
test-careful: | |
if: github.event_name == 'pull_request' | |
name: "cargo test (carefully)" | |
permissions: | |
contents: read | |
runs-on: ubuntu-22.04 | |
steps: | |
- uses: step-security/harden-runner@f086349bfa2bd1361f7909c78558e816508cdc10 # v2.8.0 | |
with: | |
egress-policy: audit | |
- uses: actions/checkout@a5ac7e51b41094c92402da3b24376905380afc29 # v4.1.6 | |
- id: toolchain | |
uses: dtolnay/rust-toolchain@21dc36fb71dd22e3317045c0c31a3f4249868b17 # doesn't have usual versioned releases/tags | |
with: | |
toolchain: "nightly" | |
# minimal profile includes rustc component which includes cargo and rustdoc | |
components: rust-src | |
- uses: rui314/setup-mold@8de9eea54963d01c1a6c200606257d65bd53bea1 # does not have recent tags | |
- uses: Swatinem/rust-cache@23bce251a8cd2ffc3c1075eaa2367cf899916d84 # v2.7.3 | |
- uses: taiki-e/install-action@3eb90b20bc1fe55dfbf30d81d4a7e0ef8dd34caa # v2.36.0 | |
with: | |
tool: [email protected] | |
- run: cargo +${{ steps.toolchain.outputs.name }} careful test --all-targets --all-features --verbose |