Just-ify CI #744
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
| # A few guiding principles. | |
| # | |
| # * Always use actions-rust-lang/setup-rust-toolchain for its built-in caching. | |
| # * Complexity lives in the justfile, this runner is as light as possible. | |
| name: Build & Test | |
| # Run on direct commits to master, including merges, and any pull requests against master. | |
| on: | |
| push: | |
| branches: | |
| - master | |
| pull_request: | |
| branches: | |
| - master | |
| jobs: | |
| build: | |
| strategy: | |
| matrix: | |
| platform: [ubuntu-latest, macos-latest, windows-latest] | |
| toolchain: [stable, beta, nightly] | |
| runs-on: ${{ matrix.platform }} | |
| steps: | |
| - uses: actions/checkout@v3 | |
| - name: Update Toolchain | |
| run: | | |
| rustup default ${{ matrix.toolchain }} | |
| rustup component add --toolchain ${{ matrix.toolchain }} rustfmt | |
| rustup component add --toolchain ${{ matrix.toolchain }} clippy | |
| rustup update ${{ matrix.toolchain }} | |
| - name: Lint all targets | |
| run: cargo clippy --all-targets | |
| - name: Format | |
| run: cargo fmt -- --check | |
| - name: Build with defeault features | |
| run: cargo build --verbose | |
| - name: Check release build on Rust ${{ matrix.toolchain }} | |
| run: cargo check --release --verbose --color always | |
| - name: Unit test | |
| run: cargo test --verbose --lib | |
| - name: Doc test | |
| run: cargo test --verbose --doc | |
| msrv: | |
| runs-on: ubuntu-latest | |
| steps: | |
| - uses: actions/checkout@v4 | |
| - uses: extractions/setup-just@v3 | |
| - uses: actions-rust-lang/setup-rust-toolchain@v1 | |
| - run: just test-msrv | |
| signet: | |
| runs-on: ubuntu-latest | |
| steps: | |
| - uses: actions/checkout@v4 | |
| - uses: extractions/setup-just@v3 | |
| - uses: actions-rust-lang/setup-rust-toolchain@v1 | |
| - run: just test-sync | |
| bitcoind: | |
| runs-on: ubuntu-latest | |
| steps: | |
| - uses: actions/checkout@v4 | |
| - uses: extractions/setup-just@v3 | |
| - uses: actions-rust-lang/setup-rust-toolchain@v1 | |
| - run: just test-integrate |