name: Message Buffer IDL Check on: pull_request: paths: - pythnet/message_buffer/** push: branches: - main paths: - pythnet/message_buffer/** jobs: abi-check: name: Check Message Buffer IDL files are up to date runs-on: ubuntu-latest defaults: run: working-directory: pythnet/message_buffer steps: - name: Checkout sources uses: actions/checkout@v3 - uses: actions-rs/toolchain@v1 with: profile: minimal toolchain: nightly-2023-03-01 components: rustfmt, clippy - name: Install Solana run: | sh -c "$(curl -sSfL https://release.solana.com/v1.14.18/install)" echo "/home/runner/.local/share/solana/install/active_release/bin" >> $GITHUB_PATH - name: Install Anchor run: | cargo install --git https://github.com/coral-xyz/anchor --tag v0.27.0 anchor-cli --locked - name: Build and generate IDLs run: anchor build - name: Copy anchor target files run: cp ./target/idl/message_buffer.json idl/ && cp ./target/types/message_buffer.ts idl/ - name: Run prettier (to avoid pre-commit failures) run: | npx prettier --write "./idl/*" - name: Check IDL changes # Fails if the IDL files are not up to date. Please use anchor build to regenerate the IDL files for # the current version of the contract and update idl directory. run: git diff --exit-code idl/*