name: Tests on: push: branches: - develop pull_request: workflow_dispatch: jobs: clippy: runs-on: ubuntu-latest steps: - uses: actions/checkout@v3 - name: Get nightly version to use id: nightly run: echo "version=$(cat .github/nightly-version)" >> $GITHUB_OUTPUT - name: Build Dependencies uses: ./.github/actions/build-dependencies with: github-token: ${{ secrets.GITHUB_TOKEN }} # Clippy requires nightly due to serai-runtime requiring it rust-toolchain: ${{ steps.nightly.outputs.version }} rust-components: clippy - name: Run Clippy run: cargo clippy --all-features --tests -- -D warnings -A dead_code deny: runs-on: ubuntu-latest steps: - uses: actions/checkout@v3 - name: Advisory Cache uses: actions/cache@v3 with: path: ~/.cargo/advisory-db key: rust-advisory-db - name: Install cargo uses: actions-rs/toolchain@v1 with: toolchain: stable profile: minimal - name: Install cargo deny run: cargo install --locked cargo-deny - name: Run cargo deny run: cargo deny -L error --all-features check test: runs-on: ubuntu-latest steps: - uses: actions/checkout@v3 - name: Test Dependencies uses: ./.github/actions/test-dependencies with: github-token: ${{ secrets.GITHUB_TOKEN }} - name: Run Tests run: cargo test --all-features fmt: runs-on: ubuntu-latest steps: - uses: actions/checkout@v3 - name: Get nightly version to use id: nightly run: echo "version=$(cat .github/nightly-version)" >> $GITHUB_OUTPUT # Doesn't grab the cache as it's not needed - name: Install rustfmt uses: actions-rs/toolchain@v1 with: toolchain: ${{ steps.nightly.outputs.version }} profile: minimal components: rustfmt - name: Run rustfmt run: cargo +${{ steps.nightly.outputs.version }} fmt -- --check