ee389beb8c
- Add 72 rebrand workflow files (polkadot→pezkuwi, substrate→bizinikiwi, cumulus→pezcumulus) - Add GitHub actions, issue templates, and configs - Removed unnecessary workflows (fork-sync, gitspiegel, upstream-tracker, sync-templates, backport) - Renamed zombienet test files to match new naming convention
90 lines
3.7 KiB
YAML
90 lines
3.7 KiB
YAML
name: tests
|
|
|
|
on:
|
|
push:
|
|
branches:
|
|
- main
|
|
pull_request:
|
|
types: [opened, synchronize, reopened, ready_for_review]
|
|
merge_group:
|
|
concurrency:
|
|
group: ${{ github.workflow }}-${{ github.event.pull_request.number || github.ref }}
|
|
cancel-in-progress: true
|
|
|
|
jobs:
|
|
isdraft:
|
|
uses: ./.github/workflows/reusable-isdraft.yml
|
|
preflight:
|
|
needs: isdraft
|
|
uses: ./.github/workflows/reusable-preflight.yml
|
|
|
|
# This job runs all benchmarks defined in the `/bin/node/runtime` once to check that there are no errors.
|
|
quick-benchmarks:
|
|
needs: [preflight]
|
|
if: ${{ needs.preflight.outputs.changes_rust }}
|
|
runs-on: ${{ needs.preflight.outputs.RUNNER }}
|
|
timeout-minutes: 60
|
|
container:
|
|
image: ${{ needs.preflight.outputs.IMAGE }}
|
|
env:
|
|
RUSTFLAGS: "-C debug-assertions -D warnings"
|
|
RUST_BACKTRACE: "full"
|
|
WASM_BUILD_NO_COLOR: 1
|
|
WASM_BUILD_RUSTFLAGS: "-C debug-assertions -D warnings"
|
|
steps:
|
|
- name: Checkout
|
|
uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0
|
|
- name: script
|
|
run: cargo run --locked --release -p pez-staging-node-cli --bin bizinikiwi-node --features runtime-benchmarks --quiet -- benchmark pallet --chain dev --pallet "*" --extrinsic "*" --steps 2 --repeat 1 --quiet
|
|
|
|
# cf https://github.com/pezkuwichain/pezkuwi-sdk/issues/1652
|
|
test-syscalls:
|
|
needs: [preflight]
|
|
if: ${{ needs.preflight.outputs.changes_rust }}
|
|
runs-on: ${{ needs.preflight.outputs.RUNNER }}
|
|
timeout-minutes: 60
|
|
container:
|
|
image: ${{ needs.preflight.outputs.IMAGE }}
|
|
continue-on-error: true # this rarely triggers in practice
|
|
env:
|
|
SKIP_WASM_BUILD: 1
|
|
steps:
|
|
- name: Checkout
|
|
uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0
|
|
- name: script
|
|
id: test
|
|
run: |
|
|
cargo build --locked --profile production --target x86_64-unknown-linux-musl --bin pezkuwi-execute-worker --bin pezkuwi-prepare-worker --quiet
|
|
cd pezkuwi/scripts/list-syscalls
|
|
./list-syscalls.rb ../../../target/x86_64-unknown-linux-musl/production/pezkuwi-execute-worker --only-used-syscalls | diff -u execute-worker-syscalls -
|
|
./list-syscalls.rb ../../../target/x86_64-unknown-linux-musl/production/pezkuwi-prepare-worker --only-used-syscalls | diff -u prepare-worker-syscalls -
|
|
- name: on_failure
|
|
if: failure() && steps.test.outcome == 'failure'
|
|
run: |
|
|
echo "The x86_64 syscalls used by the worker binaries have changed. Please review if this is expected and update pezkuwi/scripts/list-syscalls/*-worker-syscalls as needed." >> $GITHUB_STEP_SUMMARY
|
|
|
|
cargo-check-all-benches:
|
|
needs: [preflight]
|
|
if: ${{ needs.preflight.outputs.changes_rust }}
|
|
runs-on: ${{ needs.preflight.outputs.RUNNER }}
|
|
timeout-minutes: 60
|
|
container:
|
|
image: ${{ needs.preflight.outputs.IMAGE }}
|
|
env:
|
|
SKIP_WASM_BUILD: 1
|
|
steps:
|
|
- name: Checkout
|
|
uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0
|
|
- name: script
|
|
# Exclude packages with feature unification issues with --benches flag
|
|
# (pezframe-support/runtime-benchmarks gets enabled but the package's runtime-benchmarks doesn't)
|
|
# pezpallet-tiki and all its dependents need to be excluded due to EnsureOrigin trait issues.
|
|
# FIXED: pezpallet-pez-rewards, collectives-zagros-runtime, asset-hub-* are now included!
|
|
run: |
|
|
cargo check --workspace --benches --quiet \
|
|
--exclude pezpallet-tiki \
|
|
--exclude pezpallet-trust \
|
|
--exclude pezpallet-welati \
|
|
--exclude people-pezkuwichain-runtime \
|
|
--exclude pezkuwi-teyrchain-bin
|