Skip to content

CI

CI #1673

Workflow file for this run

name: CI
on:
push:
pull_request:
workflow_dispatch:
schedule: [cron: "40 1 * * *"]
permissions:
contents: read
env:
RUSTFLAGS: -Dwarnings
jobs:
test:
name: Rust ${{matrix.rust}}
runs-on: ubuntu-latest
strategy:
fail-fast: false
matrix:
rust: [nightly, beta, stable]
timeout-minutes: 45
steps:
- uses: actions/checkout@v4
- uses: dtolnay/rust-toolchain@master
with:
toolchain: ${{matrix.rust}}
- run: cargo check
solution:
name: Project ${{matrix.project}}
runs-on: ubuntu-latest
strategy:
fail-fast: false
matrix:
project: [builder, debug, seq, sorted, bitfield]
env:
GIT_COMMITTER_EMAIL: [email protected]
GIT_COMMITTER_NAME: proc-macro-workshop CI
timeout-minutes: 45
steps:
- uses: actions/checkout@v4
- uses: dtolnay/rust-toolchain@nightly
- uses: dtolnay/install@cargo-outdated
- run: git fetch origin --unshallow refs/solution/${{matrix.project}} HEAD
- run: git rev-parse FETCH_HEAD
- run: git rebase HEAD FETCH_HEAD
- run: cargo test
working-directory: ${{matrix.project}}
- run: cargo outdated --exit-code 1
working-directory: ${{matrix.project}}
if: github.event_name != 'pull_request'