| 12345678910111213141516171819202122232425262728293031323334353637383940414243444546 |
- name: Test Solana Contract
- on:
- pull_request:
- paths:
- - .github/workflows/ci-solana-contract.yml
- - target_chains/solana/**
- - pythnet/pythnet_sdk/**
- push:
- branches:
- - main
- env:
- CARGO_TERM_COLOR: always
- jobs:
- build:
- runs-on: ubuntu-latest
- defaults:
- run:
- working-directory: target_chains/solana
- steps:
- - uses: actions/checkout@v2
- with:
- cache-workspaces: "target_chains/solana -> target"
- - uses: actions-rust-lang/setup-rust-toolchain@v1
- - name: Install Solana
- run: |
- sh -c "$(curl -sSfL https://release.anza.xyz/v1.17.34/install)"
- echo "/home/runner/.local/share/solana/install/active_release/bin" >> $GITHUB_PATH
- - name: Format check
- run: cargo fmt --all -- --check
- if: success() || failure()
- - name: Clippy check
- run: cargo clippy --all-targets -- --deny warnings
- if: success() || failure()
- - name: Build
- run: cargo-build-sbf
- if: success() || failure()
- - name: Run tests
- run: cargo-test-sbf
- if: success() || failure()
- - name: Run sdk tests
- run: cargo test --package pyth-solana-receiver-sdk
- working-directory: target_chains/solana/pyth_solana_receiver_sdk
- if: success() || failure()
|