name: CI OSes on: pull_request: paths-ignore: - '**/*.rs' - '**/*.txt' - '**/*.snap' - '**/Cargo.toml' - '**/Cargo.lock' - '**/deny.toml' - '.cargo/config.toml' - '**/clippy.toml' - '.github/workflows/continous-integration-os.yml' jobs: test: name: Test ${{ matrix.rust }} on ${{ matrix.os }}${{ matrix.features }} # We're just doing this job for the name, the platform doesn't matter. # So we use the platform with the most concurrent instances. runs-on: ubuntu-latest strategy: matrix: # TODO: Windows was removed for now, see https://github.com/ZcashFoundation/zebra/issues/3801 # TODO: macOS tests were removed for now, see https://github.com/ZcashFoundation/zebra/issues/6824 os: [ubuntu-latest] rust: [stable, beta] features: ["", " --features getblocktemplate-rpcs"] exclude: - os: macos-latest rust: beta - os: macos-latest features: " --features getblocktemplate-rpcs" - os: ubuntu-latest rust: beta features: " --features getblocktemplate-rpcs" steps: - run: 'echo "No build required"' install-from-lockfile-no-cache: name: Install zebrad from lockfile without cache on ubuntu-latest runs-on: ubuntu-latest steps: - run: 'echo "No build required"' check-cargo-lock: name: Check Cargo.lock is up to date runs-on: ubuntu-latest steps: - run: 'echo "No build required"' cargo-deny: name: Check deny.toml ${{ matrix.checks }} ${{ matrix.features }} runs-on: ubuntu-latest strategy: matrix: checks: - bans - sources features: ['', '--features default-release-binaries', '--all-features'] steps: - run: 'echo "No build required"' unused-deps: name: Check for unused dependencies runs-on: ubuntu-latest steps: - run: 'echo "No build required"'