Add basic shelbynet support #770
Workflow file for this run
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| # Copyright (c) Aptos Labs | |
| # SPDX-License-Identifier: Apache-2.0 | |
| name: CI | |
| on: | |
| pull_request: | |
| branches: | |
| - main | |
| - 'release-v*' | |
| push: | |
| branches: | |
| - main | |
| - 'release-v*' | |
| permissions: | |
| contents: read | |
| jobs: | |
| build-rust: | |
| name: Build Rust workspace | |
| runs-on: ubuntu-latest | |
| permissions: | |
| contents: read | |
| steps: | |
| - uses: actions/checkout@34e114876b0b11c390a56381ad16ebd13914f8d5 # v4 | |
| with: | |
| persist-credentials: false | |
| - uses: ./.github/actions/setup-rust | |
| - name: Build | |
| run: cargo build | |
| - name: Upload binaries | |
| uses: actions/upload-artifact@4cec3d8aa04e39d1a68397de0c4cd6fb9dce8ec1 # v4 | |
| with: | |
| name: rust-binaries | |
| path: | | |
| target/debug/vss-dealer | |
| target/debug/vss-recipient | |
| target/debug/dkg-worker | |
| target/debug/dkr-src | |
| target/debug/dkr-dst | |
| target/debug/network-node | |
| retention-days: 1 | |
| typecheck-scenarios: | |
| name: Typecheck / Scenarios | |
| runs-on: ubuntu-latest | |
| permissions: | |
| contents: read | |
| steps: | |
| - uses: actions/checkout@34e114876b0b11c390a56381ad16ebd13914f8d5 # v4 | |
| with: | |
| persist-credentials: false | |
| - uses: ./.github/actions/setup-node-pnpm | |
| - name: Typecheck | |
| run: pnpm --filter ace-scenarios typecheck | |
| unit-tests-ts: | |
| name: Unit tests / TypeScript | |
| runs-on: ubuntu-latest | |
| permissions: | |
| contents: read | |
| steps: | |
| - uses: actions/checkout@34e114876b0b11c390a56381ad16ebd13914f8d5 # v4 | |
| with: | |
| persist-credentials: false | |
| - uses: ./.github/actions/setup-node-pnpm | |
| - name: Test | |
| run: pnpm --filter @aptos-labs/ace-sdk test -- --run | |
| unit-tests-rust: | |
| name: Unit tests / Rust | |
| runs-on: ubuntu-latest | |
| permissions: | |
| contents: read | |
| steps: | |
| - uses: actions/checkout@34e114876b0b11c390a56381ad16ebd13914f8d5 # v4 | |
| with: | |
| persist-credentials: false | |
| - uses: ./.github/actions/setup-rust | |
| - name: Test | |
| run: cargo test | |
| unit-tests-move: | |
| name: Unit tests / Move | |
| runs-on: ubuntu-latest | |
| permissions: | |
| contents: read | |
| steps: | |
| - uses: actions/checkout@34e114876b0b11c390a56381ad16ebd13914f8d5 # v4 | |
| with: | |
| persist-credentials: false | |
| - name: Install tools | |
| run: sudo scripts/install-tools.sh | |
| - name: Test | |
| run: | | |
| aptos move test --package-dir contracts/vss | |
| aptos move test --package-dir contracts/sigma-dlog-linear | |
| aptos move test --package-dir contracts/pedersen-polynomial-commitment | |
| aptos move test --package-dir contracts/network | |
| solana-example: | |
| name: scenario / solana-example | |
| needs: build-rust | |
| runs-on: ubuntu-latest | |
| timeout-minutes: 60 | |
| permissions: | |
| contents: read | |
| steps: | |
| - uses: actions/checkout@34e114876b0b11c390a56381ad16ebd13914f8d5 # v4 | |
| with: | |
| persist-credentials: false | |
| - uses: ./.github/actions/setup-node-pnpm | |
| - name: Download Rust binaries | |
| uses: actions/download-artifact@cc203385981b70ca67e1cc392babf9cc229d5806 # v4 | |
| with: | |
| name: rust-binaries | |
| path: target/debug/ | |
| - name: Make binaries executable | |
| run: chmod +x target/debug/* | |
| - name: Install tools | |
| run: sudo scripts/install-tools.sh && sudo scripts/install-solana-tools.sh | |
| - name: Cache Solana SBF platform tools | |
| uses: actions/cache@5a3ec84eff668545956fd18022155c47e93e2684 # v4 | |
| with: | |
| path: ~/.cache/solana | |
| key: solana-sbf-tools-${{ runner.os }} | |
| - name: Run solana-example | |
| env: | |
| ACE_SKIP_CARGO_BUILD: "1" | |
| run: pnpm --filter ace-scenarios test-solana-example | |
| custom-flow-solana: | |
| name: scenario / custom-flow-solana | |
| needs: build-rust | |
| runs-on: ubuntu-latest | |
| timeout-minutes: 60 | |
| permissions: | |
| contents: read | |
| steps: | |
| - uses: actions/checkout@34e114876b0b11c390a56381ad16ebd13914f8d5 # v4 | |
| with: | |
| persist-credentials: false | |
| - uses: ./.github/actions/setup-node-pnpm | |
| - name: Download Rust binaries | |
| uses: actions/download-artifact@cc203385981b70ca67e1cc392babf9cc229d5806 # v4 | |
| with: | |
| name: rust-binaries | |
| path: target/debug/ | |
| - name: Make binaries executable | |
| run: chmod +x target/debug/* | |
| - name: Install tools | |
| run: sudo scripts/install-tools.sh && sudo scripts/install-solana-tools.sh | |
| - name: Cache Solana SBF platform tools | |
| uses: actions/cache@5a3ec84eff668545956fd18022155c47e93e2684 # v4 | |
| with: | |
| path: ~/.cache/solana | |
| key: solana-sbf-tools-${{ runner.os }} | |
| - name: Run custom-flow-solana | |
| env: | |
| ACE_SKIP_CARGO_BUILD: "1" | |
| run: pnpm --filter ace-scenarios test-custom-flow-solana | |
| scenarios: | |
| name: scenario / ${{ matrix.scenario }} | |
| needs: build-rust | |
| strategy: | |
| matrix: | |
| scenario: | |
| - test-vss-protocol | |
| - test-vss-protocol-g1 | |
| - test-dkg-protocol | |
| - test-dkg-protocol-g1 | |
| - test-dkr-protocol | |
| - test-dkr-protocol-g1 | |
| - test-threshold-vrf-derive-flow | |
| - test-network-protocol | |
| - test-network-protocol-shortpk | |
| - full-happy-path | |
| - test-access-failures | |
| - test-access-failures-keyless | |
| - test-access-failures-federated-keyless | |
| - test-access-failures-anypub-ed25519 | |
| - test-access-failures-anypub-secp256k1 | |
| - test-access-failures-anypub-secp256r1 | |
| - test-access-failures-anypub-keyless | |
| - test-access-failures-anypub-federated-keyless | |
| - test-access-failures-multi-key | |
| - test-access-failures-multi-ed25519 | |
| - test-fault-tolerance | |
| - test-auto-epoch-change | |
| - test-epoch-buffer | |
| - large-committee | |
| - test-custom-flow-aptos | |
| fail-fast: false | |
| runs-on: ubuntu-latest | |
| timeout-minutes: 60 | |
| permissions: | |
| contents: read | |
| steps: | |
| - uses: actions/checkout@34e114876b0b11c390a56381ad16ebd13914f8d5 # v4 | |
| with: | |
| persist-credentials: false | |
| - uses: ./.github/actions/setup-node-pnpm | |
| - name: Download Rust binaries | |
| uses: actions/download-artifact@cc203385981b70ca67e1cc392babf9cc229d5806 # v4 | |
| with: | |
| name: rust-binaries | |
| path: target/debug/ | |
| - name: Make binaries executable | |
| run: chmod +x target/debug/* | |
| - name: Install tools | |
| run: sudo scripts/install-tools.sh | |
| - name: Run ${{ matrix.scenario }} | |
| env: | |
| ACE_SKIP_CARGO_BUILD: "1" | |
| SCENARIO: ${{ matrix.scenario }} | |
| run: pnpm --filter ace-scenarios "$SCENARIO" |