diff --git a/.github/workflows/checks.yaml b/.github/workflows/checks.yaml new file mode 100644 index 0000000..ff8056e --- /dev/null +++ b/.github/workflows/checks.yaml @@ -0,0 +1,49 @@ +name: Checks + +on: + push: + branches: + - main + pull_request: ~ + +jobs: + test: + name: Test + runs-on: ubuntu-22.04 + strategy: + matrix: + tls: + - no-tls + - native-tls + - rustls-native-roots + - rustls-webpki-roots + - openssl + include: + - tls: no-tls + features: native-tls + - tls: rustls-native-roots + features: rustls + - tls: rustls-webpki-roots + features: rustls-webpki + - tls: openssl + features: openssl-tls + steps: + - uses: actions/checkout@v4 + + - name: Install latest stable + uses: dtolnay/rust-toolchain@stable + with: + targets: ${{ matrix.target }} + components: rustfmt,clippy + + - name: Run rustfmt + run: cargo fmt --all --check + + - name: Run clippy + uses: giraffate/clippy-action@v1 + with: + reporter: 'github-pr-check' + github_token: ${{ secrets.GITHUB_TOKEN }} + + - name: Run tests + run: cargo test --no-default-features --features '${{ matrix.features }}'