Skip to content

ci

ci #1135

Workflow file for this run

name: CI
on:
push:
branches:
- "**"
env:
WSS_URL: ws://127.0.0.1:9955
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
jobs:
build:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- uses: pnpm/action-setup@v4
with:
version: 9.1.4
- uses: actions/setup-node@v4
with:
node-version: 23
cache: "pnpm"
- run: pnpm install
- run: pnpm run build
lint:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- uses: pnpm/action-setup@v4
with:
version: 9.1.4
- uses: actions/setup-node@v4
with:
node-version: 23
cache: "pnpm"
- run: pnpm install
- run: pnpm run lint
format:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- uses: pnpm/action-setup@v4
with:
version: 9.1.4
- uses: actions/setup-node@v4
with:
node-version: 23
cache: "pnpm"
- run: pnpm install
- run: pnpm run fmt
test_basic:
runs-on: ubuntu-latest
needs: ["build"]
steps:
- uses: actions/checkout@v4
- uses: pnpm/action-setup@v4
with:
version: 9.1.4
- uses: actions/setup-node@v4
with:
node-version: 23
cache: "pnpm"
- uses: oven-sh/setup-bun@v1
with:
bun-version: latest
- name: Build like before
run: |
pnpm install
pnpm run build
- name: Run standard dev test
run: |
cd test
bun moonwall test basic
test_tanssi:
runs-on: ubuntu-latest
needs: ["build"]
steps:
- uses: actions/checkout@v4
- uses: oven-sh/setup-bun@v1
with:
bun-version: latest
- uses: pnpm/action-setup@v4
with:
version: 9.1.4
- uses: actions/setup-node@v4
with:
node-version: 23
cache: "pnpm"
- name: Build like before
run: |
pnpm install
pnpm run build
- uses: oven-sh/setup-bun@v1
with:
bun-version: latest
- name: Download tanssi binary
run: |
cd test
bun moonwall download tanssi-node latest ./tmp
- name: Run standard dev test
run: |
cd test
bun moonwall test dev_tanssi
test_dev:
runs-on: ubuntu-latest
needs: ["build"]
env:
NODE_OPTIONS: "--no-deprecation"
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
strategy:
fail-fast: false
matrix:
suite: ["dev_test", "dev_multi", "dev_seq", "dev_smoke", "papi_dev", "fork_test"]
shard: [1, 2, 3, 4]
steps:
- uses: actions/checkout@v4
- uses: oven-sh/setup-bun@v1
with:
bun-version: latest
- uses: pnpm/action-setup@v4
with:
version: 9.1.4
- uses: actions/setup-node@v4
with:
node-version: 23
cache: "pnpm"
- name: Build like before
run: |
pnpm install
pnpm run build
- uses: oven-sh/setup-bun@v1
with:
bun-version: latest
- name: Download moonbeam binary
run: |
cd test
bun moonwall download moonbeam latest ./tmp
- name: Run ${{matrix.suite}} dev test
run: |
cd test
bun papi generate
bun moonwall test ${{matrix.suite}} --ts ${{ matrix.shard }}/4
test_update:
runs-on: ubuntu-latest
needs: ["build"]
steps:
- uses: actions/checkout@v4
- uses: oven-sh/setup-bun@v1
with:
bun-version: latest
- uses: pnpm/action-setup@v4
with:
version: 9.1.4
- uses: actions/setup-node@v4
with:
node-version: 23
cache: "pnpm"
- name: Build like before
run: |
pnpm install
pnpm run build
- uses: oven-sh/setup-bun@v1
with:
bun-version: latest
- name: Run snapshot update test
id: update_test
run: |
cd test
bun moonwall test update_snapshot -u > snapshot_output.txt 2>&1
- name: Check if files were modified in the 2 minutes
run: |
cd test
find suites/update/__snapshots__/test_basic.ts.snap suites/update/timbo.txt
find suites/update/__snapshots__/test_basic.ts.snap suites/update/timbo.txt -mmin -2 | wc -l | grep -q "2"
- name: Check console output for snapshot updates
run: |
cd test
cat snapshot_output.txt
grep -q "Snapshots 3 updated" snapshot_output.txt
test_chopsticks:
runs-on: ubuntu-latest
needs: ["build"]
strategy:
fail-fast: false
matrix:
suite: ["chopsticks", "multi_chopsticks", "chopsticks_round"]
steps:
- uses: actions/checkout@v4
- uses: pnpm/action-setup@v4
with:
version: 9.1.4
- uses: actions/setup-node@v4
with:
node-version: 23
cache: "pnpm"
- name: Build like before
run: |
pnpm install
pnpm run build
- uses: oven-sh/setup-bun@v1
with:
bun-version: latest
- name: Run ${{matrix.suite}}
run: |
cd test
bun moonwall test ${{matrix.suite}}
# disabled until we have an available instance of moonscope running
# - name: Use Send Report Action
# if: always()
# uses: ./.github/send-report-action
# with:
# table: dev_reports
# moonwallenv: moonwall_chopsticks
# report_file_path: tmp/testReports.json
# moonscope: "https://moonscope.boo:3345"
test_readonly:
runs-on: ubuntu-latest
needs: ["build"]
strategy:
fail-fast: false
matrix:
suite: ["eth_test", "viem_test", "papi_readonly"]
steps:
- uses: actions/checkout@v4
- uses: pnpm/action-setup@v4
with:
version: 9.1.4
- uses: actions/setup-node@v4
with:
node-version: 23
cache: "pnpm"
- name: Build like before
run: |
pnpm install
pnpm run build
- uses: oven-sh/setup-bun@v1
with:
bun-version: latest
- name: Run standard ${{matrix.suite}}
run: |
cd test
bun papi add dot -n polkadot
bun moonwall test ${{matrix.suite}}
# disabled until web3.js fix their stuff
# - name: Run standard web3 run
# run: bun moonwall test web3_test
test_zombie:
runs-on: ubuntu-latest
needs: ["build"]
strategy:
fail-fast: false
matrix:
suite: ["zombie_test", "zombie_multi_para", "zombie_noPara"]
steps:
- uses: actions/checkout@v4
- uses: pnpm/action-setup@v4
with:
version: 9.1.4
- uses: actions/setup-node@v4
with:
node-version: 23
cache: "pnpm"
- uses: oven-sh/setup-bun@v1
with:
bun-version: latest
- name: Build like before
run: |
pnpm install
pnpm run build
- name: Download binaries
run: |
cd test
bun moonwall download moonbeam latest ./tmp
bun moonwall download polkadot stable2407 ./tmp
bun moonwall download polkadot-execute-worker stable2407 ./tmp
bun moonwall download polkadot-prepare-worker stable2407 ./tmp
- name: Run ${{matrix.suite}}
run: |
cd test
bun moonwall test ${{matrix.suite}}