name: CI on: push: branches: ['main'] pull_request: schedule: - cron: "25 6 * * 5" jobs: test: strategy: matrix: os: [ubuntu-latest, macos-latest, windows-latest] rust: [stable, beta] exclude: - os: macos-latest rust: beta - os: windows-latest rust: beta runs-on: ${{ matrix.os }} steps: - uses: actions/checkout@v4 - uses: dtolnay/rust-toolchain@master with: toolchain: ${{ matrix.rust }} - name: Install NASM for aws-lc-rs on Windows if: runner.os == 'Windows' uses: ilammy/setup-nasm@v1 - run: cargo check --no-default-features --features aws-lc-rs - run: cargo check --no-default-features --features ring - run: cargo check # hyper-rustls, ring - run: cargo test fips: runs-on: ubuntu-latest steps: - uses: actions/checkout@v4 - uses: dtolnay/rust-toolchain@master with: toolchain: 1.67.0 - run: cargo check --lib --features fips msrv: runs-on: ubuntu-latest steps: - uses: actions/checkout@v4 - uses: dtolnay/rust-toolchain@master with: toolchain: 1.67.0 - run: cargo check --lib --all-features lint: runs-on: ubuntu-latest steps: - uses: actions/checkout@v4 - uses: dtolnay/rust-toolchain@stable with: components: rustfmt, clippy - run: cargo fmt --all -- --check - run: cargo clippy --all-targets --all-features -- -D warnings audit: runs-on: ubuntu-latest steps: - uses: actions/checkout@v4 - uses: EmbarkStudios/cargo-deny-action@v1