Skip to content

Keep database and forkchoice genesis consistent with the chain spec #200

Keep database and forkchoice genesis consistent with the chain spec

Keep database and forkchoice genesis consistent with the chain spec #200

Workflow file for this run

name: test
on:
pull_request:
push:
branches: [main]
concurrency:
group: ${{ github.workflow }}-${{ github.ref }}
cancel-in-progress: true
env:
CARGO_TERM_COLOR: always
jobs:
unit:
runs-on: blacksmith-2vcpu-ubuntu-2404
timeout-minutes: 60
env:
RUST_BACKTRACE: 1
steps:
- uses: actions/checkout@v6
- uses: rui314/setup-mold@v1
- uses: dtolnay/rust-toolchain@nightly
with:
toolchain: 'nightly-2026-01-05'
- uses: Swatinem/rust-cache@v2
with:
cache-on-failure: true
- uses: taiki-e/install-action@nextest
- name: Run unit tests
run: cargo nextest run --all-features --workspace --locked -E '!kind(test)'
integration:
runs-on: blacksmith-8vcpu-ubuntu-2404
timeout-minutes: 60
env:
RUST_BACKTRACE: 1
steps:
- uses: actions/checkout@v6
- uses: rui314/setup-mold@v1
- uses: dtolnay/rust-toolchain@nightly
with:
toolchain: 'nightly-2026-01-05'
- uses: Swatinem/rust-cache@v2
with:
cache-on-failure: true
- uses: taiki-e/install-action@nextest
- name: Install pinned Anvil
run: |
ANVIL_BIN="$(.github/assets/install_anvil.sh "$RUNNER_TEMP/anvil" | tail -n1)"
echo "ANVIL_BIN=$ANVIL_BIN" >> "$GITHUB_ENV"
- name: Run integration tests
run: |
cargo nextest run --all-features --workspace --locked --no-fail-fast \
--no-tests=pass -E 'kind(test) and not test(docker)' \
-- --skip test_should_consolidate_to_block_15k
integration-docker-compose:
runs-on: blacksmith-8vcpu-ubuntu-2404
timeout-minutes: 90
env:
RUST_BACKTRACE: 1
steps:
- uses: actions/checkout@v6
- uses: rui314/setup-mold@v1
- uses: dtolnay/rust-toolchain@stable
- uses: Swatinem/rust-cache@v2
with:
cache-on-failure: true
- uses: taiki-e/install-action@nextest
- name: Set up Docker Buildx
uses: docker/setup-buildx-action@v3
- name: Verify Docker test disk capacity
run: |
set -euo pipefail
df -h /
available_kib=$(df --output=avail / | tail -n 1 | tr -d ' ')
minimum_kib=$((32 * 1024 * 1024))
if (( available_kib < minimum_kib )); then
echo "Docker Compose tests require at least 32 GiB free; available_kib=$available_kib" >&2
exit 1
fi
- name: Run Docker Compose integration tests
run: |
cargo nextest run --all-features --workspace --locked --no-fail-fast \
--no-tests=pass -E 'test(docker)' --test-threads=1 \
--failure-output immediate \
--success-output never \
--verbose
env:
RUST_LOG: trace
RUST_BACKTRACE: full