123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596 |
- name: Main
- on:
- push:
- branches: [main]
- pull_request:
- branches: [main]
- jobs:
- format_and_lint_client_js:
- name: Format & Lint Client JS
- runs-on: ubuntu-latest
- steps:
- - name: Git Checkout
- uses: actions/checkout@v4
- - name: Setup Environment
- uses: ./.github/actions/setup
- - name: Format Client JS
- run: pnpm clients:js:format
- - name: Lint Client JS
- run: pnpm clients:js:lint
- format_and_lint_client_rust:
- name: Format & Lint Client Rust
- runs-on: ubuntu-latest
- steps:
- - name: Git Checkout
- uses: actions/checkout@v4
- - name: Setup Environment
- uses: ./.github/actions/setup
- with:
- clippy: true
- rustfmt: true
- - name: Format Client Rust
- run: pnpm clients:rust:format
- - name: Lint Client Rust
- run: pnpm clients:rust:lint
- generate_clients:
- name: Check Client Generation
- runs-on: ubuntu-latest
- steps:
- - name: Git Checkout
- uses: actions/checkout@v4
- - name: Setup Environment
- uses: ./.github/actions/setup
- with:
- rustfmt: true
- - name: Generate Clients
- run: pnpm generate:clients
- - name: Check Working Directory
- run: |
- git status --porcelain
- test -z "$(git status --porcelain)"
- test_client_js:
- name: Test Client JS
- runs-on: ubuntu-latest
- needs: format_and_lint_client_js
- steps:
- - name: Git Checkout
- uses: actions/checkout@v4
- - name: Setup Environment
- uses: ./.github/actions/setup
- with:
- solana: true
- - name: Test Client JS
- run: pnpm clients:js:test
- test_client_rust:
- name: Test Client Rust
- runs-on: ubuntu-latest
- needs: format_and_lint_client_rust
- steps:
- - name: Git Checkout
- uses: actions/checkout@v4
- - name: Setup Environment
- uses: ./.github/actions/setup
- with:
- cargo-cache-key: cargo-rust-client
- solana: true
- - name: Test Client Rust
- run: pnpm clients:rust:test
|