Split CI to reduce tests run

common/ is now only run when common is edited. crypto/ when common/ or crypto/.
coins/ when common/ or crypto/ or coins/. The rest of the tests are run
whenever any package is edited (as they're all inter-connected).
This commit is contained in:
Luke Parker 2023-07-17 01:04:05 -04:00
parent 0a367bfbda
commit 808a633e4d
No known key found for this signature in database
5 changed files with 111 additions and 61 deletions

31
.github/workflows/coins-tests.yml vendored Normal file
View file

@ -0,0 +1,31 @@
name: coins/ Tests
on:
push:
branches:
- develop
paths:
- "common/**"
- "crypto/**"
- "coins/**"
pull_request:
workflow_dispatch:
jobs:
test-coins:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3
- name: Test Dependencies
uses: ./.github/actions/test-dependencies
with:
github-token: ${{ secrets.GITHUB_TOKEN }}
- name: Run Tests
run: |
GITHUB_CI=true cargo test --all-features \
-p bitcoin-serai \
-p ethereum-serai \
-p monero-generators \
-p monero-serai

29
.github/workflows/common-tests.yml vendored Normal file
View file

@ -0,0 +1,29 @@
name: common/ Tests
on:
push:
branches:
- develop
paths:
- "common/**"
pull_request:
workflow_dispatch:
jobs:
test-common:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3
- name: Test Dependencies
uses: ./.github/actions/test-dependencies
with:
github-token: ${{ secrets.GITHUB_TOKEN }}
- name: Run Tests
run: |
GITHUB_CI=true cargo test --all-features \
-p std-shims \
-p zalloc \
-p serai-db \
-p serai-env

37
.github/workflows/crypto-tests.yml vendored Normal file
View file

@ -0,0 +1,37 @@
name: crypto/ Tests
on:
push:
branches:
- develop
paths:
- "common/**"
- "crypto/**"
pull_request:
workflow_dispatch:
jobs:
test-crypto:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3
- name: Test Dependencies
uses: ./.github/actions/test-dependencies
with:
github-token: ${{ secrets.GITHUB_TOKEN }}
- name: Run Tests
run: |
GITHUB_CI=true cargo test --all-features \
-p flexible-transcript \
-p ff-group-tests \
-p dalek-ff-group \
-p minimal-ed448 \
-p ciphersuite \
-p multiexp \
-p schnorr-signatures \
-p dleq \
-p dkg \
-p modular-frost \
-p frost-schnorrkel

View file

@ -4,7 +4,13 @@ on:
push:
branches:
- develop
paths:
- "common/**"
- "crypto/**"
- "coins/**"
- "tests/no-std/**"
pull_request:
workflow_dispatch:
jobs:
build:

View file

@ -4,71 +4,18 @@ on:
push:
branches:
- develop
paths:
- "common/**"
- "crypto/**"
- "coins/**"
- "message-queue/**"
- "processor/**"
- "coordinator/**"
- "substrate/**"
pull_request:
workflow_dispatch:
jobs:
test-common:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3
- name: Test Dependencies
uses: ./.github/actions/test-dependencies
with:
github-token: ${{ secrets.GITHUB_TOKEN }}
- name: Run Tests
run: |
GITHUB_CI=true cargo test --all-features \
-p std-shims \
-p zalloc \
-p serai-db \
-p serai-env
test-crypto:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3
- name: Test Dependencies
uses: ./.github/actions/test-dependencies
with:
github-token: ${{ secrets.GITHUB_TOKEN }}
- name: Run Tests
run: |
GITHUB_CI=true cargo test --all-features \
-p flexible-transcript \
-p ff-group-tests \
-p dalek-ff-group \
-p minimal-ed448 \
-p ciphersuite \
-p multiexp \
-p schnorr-signatures \
-p dleq \
-p dkg \
-p modular-frost \
-p frost-schnorrkel
test-coins:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3
- name: Test Dependencies
uses: ./.github/actions/test-dependencies
with:
github-token: ${{ secrets.GITHUB_TOKEN }}
- name: Run Tests
run: |
GITHUB_CI=true cargo test --all-features \
-p bitcoin-serai \
-p ethereum-serai \
-p monero-generators \
-p monero-serai
test-infra:
runs-on: ubuntu-latest
steps: