Skip to content

basic shelbynet support #774

basic shelbynet support

basic shelbynet support #774

Workflow file for this run

# 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"