feat: settle generations after service readiness #850
Workflow file for this run
This file contains hidden or 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: CI Checks | |
| on: | |
| push: | |
| branches: ["main"] | |
| pull_request: | |
| branches: ["main"] | |
| env: | |
| CARGO_TERM_COLOR: always | |
| jobs: | |
| build: | |
| runs-on: ubuntu-latest | |
| steps: | |
| - uses: actions/checkout@v3 | |
| - name: Rust toolchain | |
| uses: dtolnay/rust-toolchain@1.97.1 | |
| with: | |
| components: rustfmt, clippy | |
| - name: Build | |
| run: make prebuild | |
| - name: Linter | |
| run: make lint | |
| - name: Run unit tests | |
| run: make tests | |
| # MSRV verification (TASK-0108): dependencies must keep compiling on the | |
| # exact minimum declared toolchain. The guard step forces the job pin and | |
| # Cargo.toml to move together, so raising the MSRV is always a visible | |
| # change reviewed with the dependency update that motivated it. | |
| msrv: | |
| runs-on: ubuntu-latest | |
| steps: | |
| - uses: actions/checkout@v3 | |
| - name: Rust toolchain (declared MSRV) | |
| uses: dtolnay/rust-toolchain@1.97.0 | |
| - name: MSRV declaration matches this job | |
| run: | | |
| declared="$(grep -m1 '^rust-version' Cargo.toml | sed 's/rust-version = "\(.*\)"/\1/')" | |
| if [ "$declared" != "1.97" ]; then | |
| echo "Cargo.toml rust-version is '$declared' but the msrv job pins 1.97.0." | |
| echo "Update this job pin in the same change that raises the MSRV." | |
| exit 1 | |
| fi | |
| - name: Check on MSRV | |
| run: cargo check --locked --all-targets |