name: Solana CI on: push: branches: [main, develop] paths: - 'solana/**' pull_request: paths: - 'solana/**' jobs: test: name: Mollusk Tests runs-on: warp-ubuntu-2404-x64-16x steps: - name: Checkout code uses: actions/checkout@v4 - name: Install system dependencies run: sudo apt-get update && sudo apt-get install -y libudev-dev - name: Setup Rust toolchain uses: dtolnay/rust-toolchain@stable with: toolchain: 1.86.0 - name: Cache Solana CLI and platform tools uses: actions/cache@v3 id: solana-cache with: path: | ~/.local/share/solana ~/.cache/solana key: ${{ runner.os }}-solana-stable - name: Install Solana CLI if: steps.solana-cache.outputs.cache-hit != 'true' run: sh -c "$(curl -sSfL https://release.anza.xyz/stable/install)" - name: Cache Rust dependencies uses: Swatinem/rust-cache@v2 with: cache-provider: warpbuild shared-key: "solana-test" workspaces: solana cache-on-failure: true cache-all-crates: true - name: Run Mollusk tests run: | export PATH="$HOME/.local/share/solana/install/active_release/bin:$PATH" make solana-run-tests