Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
21 changes: 21 additions & 0 deletions .config/nextest.toml
Original file line number Diff line number Diff line change
@@ -0,0 +1,21 @@
[profile.default]
slow-timeout = { period = "30s", terminate-after = 4 }

# E2E integration tests spawn full nodes — give them more time
[[profile.default.overrides]]
filter = "package(morph-node) & binary(it)"
slow-timeout = { period = "120s", terminate-after = 3 }

[profile.ci]
test-threads = "num-cpus"
retries = { backoff = "exponential", count = 2, delay = "2s", jitter = true }
fail-fast = false
slow-timeout = { period = "30s", terminate-after = 4 }

# E2E integration tests spawn full nodes — each needs exclusive MDBX resources.
# threads-required = 2 means nextest counts each as needing 2 of the test-threads
# slots, so only 1 runs at a time on CI (2 slots / 2 required = 1 concurrent).
[[profile.ci.overrides]]
filter = "package(morph-node) & binary(it)"
threads-required = 2
slow-timeout = { period = "120s", terminate-after = 3 }
4 changes: 4 additions & 0 deletions .github/workflows/build.yml
Original file line number Diff line number Diff line change
Expand Up @@ -9,6 +9,10 @@ on:
permissions:
contents: read

concurrency:
group: ${{ github.workflow }}-${{ github.head_ref || github.run_id }}
cancel-in-progress: true

env:
CARGO_TERM_COLOR: always
RUSTFLAGS: -D warnings
Expand Down
6 changes: 6 additions & 0 deletions .github/workflows/lint.yml
Original file line number Diff line number Diff line change
Expand Up @@ -9,6 +9,10 @@ on:
permissions:
contents: read

concurrency:
group: ${{ github.workflow }}-${{ github.head_ref || github.run_id }}
cancel-in-progress: true

env:
CARGO_TERM_COLOR: always

Expand Down Expand Up @@ -48,3 +52,5 @@ jobs:
- name: Run Clippy
run: cargo clippy --all --all-targets -- -D warnings

- name: Run Clippy for feature-gated integration tests
run: cargo clippy -p morph-node --test it --features test-utils -- -D warnings
35 changes: 34 additions & 1 deletion .github/workflows/test.yml
Original file line number Diff line number Diff line change
Expand Up @@ -9,8 +9,13 @@ on:
permissions:
contents: read

concurrency:
group: ${{ github.workflow }}-${{ github.head_ref || github.run_id }}
cancel-in-progress: true

env:
CARGO_TERM_COLOR: always
RUST_MIN_STACK: 8388608

jobs:
test:
Expand All @@ -28,8 +33,13 @@ jobs:
with:
cache-on-failure: true

- name: Install nextest
uses: taiki-e/install-action@v2
with:
tool: cargo-nextest

- name: Run tests
run: cargo test --all --verbose
run: cargo nextest run --profile ci --workspace

doc-test:
name: Doc Tests
Expand All @@ -49,3 +59,26 @@ jobs:
- name: Run doc tests
run: cargo test --doc --all --verbose

e2e:
name: E2E Tests
runs-on: ubuntu-latest
timeout-minutes: 15
steps:
- name: Checkout repository
uses: actions/checkout@v4

- name: Install Rust toolchain
uses: dtolnay/rust-toolchain@stable

- name: Cache Rust build artifacts
uses: Swatinem/rust-cache@v2
with:
cache-on-failure: true

- name: Install nextest
uses: taiki-e/install-action@v2
with:
tool: cargo-nextest

- name: Run E2E tests
run: cargo nextest run --profile ci -p morph-node --test it --features test-utils
1 change: 1 addition & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -4,3 +4,4 @@

CLAUDE.md

.worktrees/
110 changes: 110 additions & 0 deletions Cargo.lock

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

2 changes: 2 additions & 0 deletions Cargo.toml
Original file line number Diff line number Diff line change
Expand Up @@ -185,3 +185,5 @@ pyroscope_pprofrs = "0.2.10"
[patch.crates-io]
vergen = { git = "https://github.com/rustyhorde/vergen", rev = "a43c276d2b68d05832a429cc4540755541ca4950" }
vergen-lib = { git = "https://github.com/rustyhorde/vergen", rev = "a43c276d2b68d05832a429cc4540755541ca4950" }


Loading
Loading