name: Cargo Build & Test on: push: pull_request: env: CARGO_TERM_COLOR: always jobs: build_and_test: name: Rust project - latest runs-on: ubuntu-latest steps: - uses: actions/checkout@v3 - uses: actions-rs/toolchain@v1 with: toolchain: stable - name: Install Dependencies run: | sudo apt-get update -y sudo apt-get upgrade -y sudo apt-get install libssl-dev openssl -y - name: Early Build run: cargo build --workspace --tests - name: Check Rust Code Format run: cargo fmt -- --check - name: Run Rust Clippy run: cargo clippy --all-targets -- -D warnings - name: Run Tests run: cargo test - name: Install node deps run: yarn - name: Setup validator run: | sh -c "$(curl -sSfL https://release.solana.com/v1.15.2/install)" echo "$HOME/.local/share/solana/install/active_release/bin" >> $GITHUB_PATH export PATH="$HOME/.local/share/solana/install/active_release/bin:$PATH" ls "$HOME/.local/share/solana/install/active_release/bin" echo "Solana Cli installed" solana --version echo "Generating keypair..." solana-keygen new -o "$HOME/.config/solana/id.json" --no-passphrase --silent solana config set --url "http://0.0.0.0:8899" - name: Run and Test run: | bash ./test.bash