| name: Clippy Test |
| |
| on: |
| push: |
| # Ignore bors branches, since they are covered by `clippy_bors.yml` |
| branches-ignore: |
| - auto |
| - try |
| # Don't run Clippy tests, when only textfiles were modified |
| paths-ignore: |
| - 'COPYRIGHT' |
| - 'LICENSE-*' |
| - '**.md' |
| - '**.txt' |
| pull_request: |
| # Don't run Clippy tests, when only textfiles were modified |
| paths-ignore: |
| - 'COPYRIGHT' |
| - 'LICENSE-*' |
| - '**.md' |
| - '**.txt' |
| |
| env: |
| RUST_BACKTRACE: 1 |
| CARGO_TARGET_DIR: '${{ github.workspace }}/target' |
| NO_FMT_TEST: 1 |
| |
| jobs: |
| base: |
| runs-on: ubuntu-latest |
| |
| steps: |
| # Setup |
| - uses: rust-lang/simpleinfra/github-actions/cancel-outdated-builds@master |
| with: |
| github_token: "${{ secrets.github_token }}" |
| |
| - name: rust-toolchain |
| uses: actions-rs/toolchain@v1.0.3 |
| with: |
| toolchain: nightly |
| target: x86_64-unknown-linux-gnu |
| profile: minimal |
| |
| - name: Checkout |
| uses: actions/checkout@v2.0.0 |
| |
| - name: Run cargo update |
| run: cargo update |
| |
| - name: Cache cargo dir |
| uses: actions/cache@v1 |
| with: |
| path: ~/.cargo |
| key: ${{ runner.os }}-x86_64-unknown-linux-gnu-${{ hashFiles('Cargo.lock') }} |
| restore-keys: | |
| ${{ runner.os }}-x86_64-unknown-linux-gnu |
| |
| - name: Master Toolchain Setup |
| run: bash setup-toolchain.sh |
| |
| # Run |
| - name: Set LD_LIBRARY_PATH (Linux) |
| run: | |
| SYSROOT=$(rustc --print sysroot) |
| echo "::set-env name=LD_LIBRARY_PATH::${SYSROOT}/lib${LD_LIBRARY_PATH+:${LD_LIBRARY_PATH}}" |
| |
| - name: Build |
| run: cargo build --features deny-warnings |
| |
| - name: Test |
| run: cargo test --features deny-warnings |
| |
| - name: Test clippy_lints |
| run: cargo test --features deny-warnings |
| working-directory: clippy_lints |
| |
| - name: Test rustc_tools_util |
| run: cargo test --features deny-warnings |
| working-directory: rustc_tools_util |
| |
| - name: Test clippy_dev |
| run: cargo test --features deny-warnings |
| working-directory: clippy_dev |
| |
| - name: Test cargo-clippy |
| run: ../target/debug/cargo-clippy |
| working-directory: clippy_workspace_tests |
| |
| - name: Test clippy-driver |
| run: bash .github/driver.sh |
| env: |
| OS: ${{ runner.os }} |
| |
| # Cleanup |
| - name: Run cargo-cache --autoclean |
| run: | |
| cargo +nightly install cargo-cache --no-default-features --features ci-autoclean cargo-cache |
| cargo cache |