name: Continuous integration on: push: branches: [ main, testci ] pull_request: env: CARGO_TERM_COLOR: always jobs: check-concrete-optimizer: strategy: matrix: os: [ubuntu-20.04, macos-11] runs-on: ${{ matrix.os }} env: RUSTFLAGS: -D warnings steps: - uses: actions/checkout@v3 - name: "Setup" uses: ./.github/workflows/setup with: ssh_private_key: ${{ secrets.CONCRETE_COMPILER_CI_SSH_PRIVATE }} - name: Formatting run: cargo fmt --check - name: Build run: cargo build --release --all-targets - name: Lint run: cargo clippy --release --all-targets - name: Tests if: matrix.os == 'ubuntu-20.04' run: | cargo test --release --no-fail-fast --all-targets make -C concrete-optimizer-cpp test-ci nightly-check-concrete-optimizer: runs-on: ubuntu-20.04 env: RUSTFLAGS: -D warnings steps: - uses: actions/checkout@v3 - name: Rust install uses: actions-rs/toolchain@v1 with: toolchain: nightly override: true components: rustfmt, clippy # A SSH private key is required as some dependencies are from private repos - name: Set ssh keys uses: webfactory/ssh-agent@v0.6.0 with: ssh-private-key: ${{ secrets.CONCRETE_COMPILER_CI_SSH_PRIVATE }} - name: Formatting run: cargo fmt --check - name: Lint run: cargo clippy --release --all-targets