Skip to content

Integration Test

Integration Test #93

Workflow file for this run

name: Integration Test
on:
schedule:
# Runs every day at 00:00 UTC
- cron: '0 0 * * *'
workflow_dispatch:
inputs:
target_epoch:
description: 'Target epoch for verification'
required: false
default: '2'
min_epochs:
description: 'Observation window in epochs'
required: false
default: '1'
env:
ENCLAVE: cb-ci-${{ github.run_id }}
jobs:
verify:
name: devnet + verify
runs-on: ubuntu-latest
timeout-minutes: 90
steps:
- name: Checkout
uses: actions/checkout@v6
with:
submodules: recursive
- name: Setup Rust
uses: dtolnay/rust-toolchain@master
with:
toolchain: stable
- name: Cache Rust
uses: Swatinem/rust-cache@v2
- name: Install just
uses: taiki-e/install-action@v2
with:
tool: just
- name: Build cb-verify
run: just build-release
- name: Install Kurtosis
shell: bash
run: |
echo "deb [trusted=yes] https://sdk.kurtosis.com/kurtosis-cli-release-artifacts/ /" | \
sudo tee /etc/apt/sources.list.d/kurtosis.list
sudo apt update
sudo apt install -y kurtosis-cli
kurtosis analytics disable
echo "$(dirname $(which kurtosis))" >> $GITHUB_PATH
- name: Launch devnet + verify
timeout-minutes: 60
run: |
./scripts/run-and-verify.sh \
--config configs/example-kurtosis-config.yml \
--json \
--live-metrics \
--min-epochs "${{ github.event.inputs.min_epochs }}" \
--target-epoch "${{ github.event.inputs.target_epoch }}" \
- name: Upload artifacts
if: always()
uses: actions/upload-artifact@v5
with:
name: verify-${{ github.run_id }}
path: |
verify-report.json
kurtosis-run.log
- name: Teardown
if: always()
run: |
kurtosis enclave rm -f "$ENCLAVE" 2>/dev/null || true