Integration Tests #56
Workflow file for this run
This file contains 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
name: Integration Tests | |
on: | |
workflow_dispatch: | |
push: | |
tags: | |
- "^v[0-9]+.[0-9]+.[0-9]+(-rc[0-9]+)?$" | |
env: | |
CARGO_TERM_COLOR: always | |
jobs: | |
build_parachain: | |
name: Build Parachain | |
runs-on: ubuntu-20.04 | |
steps: | |
- name: Checkout repository | |
uses: actions/checkout@v2 | |
- name: Install build tools | |
run: ./scripts/init.sh | |
- name: Build Parachain | |
run: cargo build --release --features parachain | |
- name: Save runtime wasm | |
run: | | |
mkdir -p runtimes | |
cp target/release/wbuild/battery-station-runtime/battery_station_runtime.compact.compressed.wasm runtimes/; | |
cp target/release/wbuild/zeitgeist-runtime/zeitgeist_runtime.compact.compressed.wasm runtimes/; | |
- name: Upload runtimes | |
uses: actions/upload-artifact@v3.1.2 | |
with: | |
name: runtimes | |
path: runtimes | |
- name: Save zeitgeist binary | |
run: | | |
mkdir -p binaries | |
cp target/release/zeitgeist binaries/; | |
- name: Upload binary | |
uses: actions/upload-artifact@v3.1.2 | |
with: | |
name: binaries | |
path: binaries | |
zombienet_zndsl: | |
name: ZNDSL Tests | |
runs-on: ubuntu-20.04 | |
needs: ["build_parachain"] | |
steps: | |
- name: Checkout repository | |
uses: actions/checkout@v2 | |
- name: Install build tools | |
run: ./scripts/init.sh | |
- uses: pnpm/action-setup@v2 | |
with: | |
version: 8 | |
- uses: actions/setup-node@v3 | |
with: | |
node-version: 20.x | |
cache: "pnpm" | |
cache-dependency-path: "./integration-tests/pnpm-lock.yaml" | |
- name: Install pnpm packages | |
run: | | |
cd integration-tests | |
pnpm install | |
- name: Cache Dependencies | |
uses: Swatinem/rust-cache@v1 | |
- name: Create local folders | |
run: | | |
mkdir -p target/release/wbuild/zeitgeist-runtime/ | |
mkdir -p integration-tests/tmp | |
- name: Download runtime | |
uses: actions/download-artifact@v3.0.2 | |
with: | |
name: runtimes | |
path: target/release/wbuild/zeitgeist-runtime/ | |
- name: Download binary | |
uses: actions/download-artifact@v3.0.2 | |
with: | |
name: binaries | |
path: target/release | |
- name: Display structure of downloaded files | |
run: ls -R | |
working-directory: target/ | |
- name: Run ZNDSL integration tests | |
run: | | |
chmod uog+x target/release/zeitgeist | |
cd integration-tests | |
./scripts/download-polkadot.sh | |
./scripts/deploy-zombienet.sh --no-build --test | |
zombienet_zeitgeist_upgrade: | |
name: Zeitgeist Zombienet Post-Upgrade Tests | |
runs-on: ubuntu-20.04 | |
needs: ["build_parachain"] | |
steps: | |
- name: Checkout repository | |
uses: actions/checkout@v2 | |
- name: Install build tools | |
run: ./scripts/init.sh | |
- uses: pnpm/action-setup@v2 | |
with: | |
version: 8 | |
- uses: actions/setup-node@v3 | |
with: | |
node-version: 20.x | |
cache: "pnpm" | |
cache-dependency-path: "./integration-tests/pnpm-lock.yaml" | |
- name: Install pnpm packages | |
run: | | |
cd integration-tests | |
pnpm install | |
- name: Cache Dependencies | |
uses: Swatinem/rust-cache@v1 | |
- name: Create local folders | |
run: | | |
mkdir -p target/release/wbuild/zeitgeist-runtime/ | |
mkdir -p integration-tests/tmp | |
- name: Download runtime | |
uses: actions/download-artifact@v3.0.2 | |
with: | |
name: runtimes | |
path: target/release/wbuild/zeitgeist-runtime/ | |
- name: Download binary | |
uses: actions/download-artifact@v3.0.2 | |
with: | |
name: binaries | |
path: target/release | |
- name: Display structure of downloaded files | |
run: ls -R | |
working-directory: target/ | |
- name: Test zeitgeist runtime upgrade using Zombienet | |
run: | | |
chmod uog+x target/release/zeitgeist | |
cd integration-tests | |
pnpm exec moonwall test zombienet_zeitgeist_upgrade | |
chopsticks_battery_station_upgrade: | |
name: Battery Station Chopsticks Post-Upgrade Tests | |
runs-on: ubuntu-20.04 | |
needs: ["build_parachain"] | |
steps: | |
- name: Checkout repository | |
uses: actions/checkout@v2 | |
- name: Install build tools | |
run: ./scripts/init.sh | |
- uses: pnpm/action-setup@v2 | |
with: | |
version: 8 | |
- uses: actions/setup-node@v3 | |
with: | |
node-version: 20.x | |
cache: "pnpm" | |
cache-dependency-path: "./integration-tests/pnpm-lock.yaml" | |
- name: Install pnpm packages | |
run: | | |
cd integration-tests | |
pnpm install | |
- name: Cache Dependencies | |
uses: Swatinem/rust-cache@v1 | |
- name: Create local folders | |
run: | | |
mkdir -p target/release/wbuild/battery-station-runtime/ | |
mkdir -p integration-tests/tmp/node_logs | |
- name: Download runtime | |
uses: actions/download-artifact@v3.0.2 | |
with: | |
name: runtimes | |
path: target/release/wbuild/battery-station-runtime/ | |
- name: Display structure of downloaded files | |
run: ls -R | |
working-directory: target/ | |
- name: Battery Station post-upgrade tests using Chopsticks | |
run: | | |
cd integration-tests | |
pnpm exec moonwall test chopsticks_battery_station_upgrade | |
- name: Show chopsticks logs | |
if: ${{ failure() }} | |
run: | | |
cd integration-tests | |
ls -R tmp/node_logs/ | |
cat tmp/node_logs/*.log | tail -n 1000 | |
chopsticks_zeitgeist_upgrade: | |
name: Zeitgeist Chopsticks Post-Upgrade Tests | |
runs-on: ubuntu-20.04 | |
needs: ["build_parachain"] | |
steps: | |
- name: Checkout repository | |
uses: actions/checkout@v2 | |
- name: Install build tools | |
run: ./scripts/init.sh | |
- uses: pnpm/action-setup@v2 | |
with: | |
version: 8 | |
- uses: actions/setup-node@v3 | |
with: | |
node-version: 20.x | |
cache: "pnpm" | |
cache-dependency-path: "./integration-tests/pnpm-lock.yaml" | |
- name: Install pnpm packages | |
run: | | |
cd integration-tests | |
pnpm install | |
- name: Cache Dependencies | |
uses: Swatinem/rust-cache@v1 | |
- name: Create local folders | |
run: | | |
mkdir -p target/release/wbuild/zeitgeist-runtime/ | |
mkdir -p integration-tests/tmp/node_logs | |
- name: "Download runtime" | |
uses: actions/download-artifact@v3.0.2 | |
with: | |
name: runtimes | |
path: target/release/wbuild/zeitgeist-runtime/ | |
- name: Display structure of downloaded files | |
run: ls -R | |
working-directory: target/ | |
- name: Zeitgeist post-upgrade tests using Chopsticks | |
run: | | |
cd integration-tests | |
pnpm exec moonwall test chopsticks_zeitgeist_upgrade | |
- name: Show chopsticks logs | |
if: ${{ failure() }} | |
run: | | |
cd integration-tests | |
ls -R tmp/node_logs/ | |
cat tmp/node_logs/*.log | tail -n 1000 |