ci: merge sync jobs (#11909)

This commit is contained in:
Oliver
2024-10-20 22:55:14 +02:00
committed by GitHub
parent 5fca07ca87
commit a188597a3c
3 changed files with 63 additions and 108 deletions

View File

@ -1,53 +0,0 @@
# Runs an ethereum mainnet sync test.
name: eth-sync-test
on:
pull_request:
merge_group:
push:
branches: [ main ]
env:
CARGO_TERM_COLOR: always
concurrency:
group: ${{ github.workflow }}-${{ github.head_ref || github.run_id }}
cancel-in-progress: true
jobs:
sync:
name: sync / 100k blocks
# Only run sync tests in merge groups
if: github.event_name == 'merge_group'
runs-on:
group: Reth
env:
RUST_LOG: info,sync=error
RUST_BACKTRACE: 1
timeout-minutes: 60
steps:
- uses: actions/checkout@v4
- uses: dtolnay/rust-toolchain@stable
- uses: Swatinem/rust-cache@v2
with:
cache-on-failure: true
- name: Build reth
run: |
cargo install --features asm-keccak,jemalloc --path bin/reth
- name: Run sync
run: |
reth node \
--debug.tip 0x91c90676cab257a59cd956d7cb0bceb9b1a71d79755c23c7277a0697ccfaf8c4 \
--debug.max-block 100000 \
--debug.terminate
- name: Verify the target block hash
run: |
reth db get static-file headers 100000 \
| grep 0x91c90676cab257a59cd956d7cb0bceb9b1a71d79755c23c7277a0697ccfaf8c4
- name: Run stage unwind for 100 blocks
run: |
reth stage unwind num-blocks 100
- name: Run stage unwind to block hash
run: |
reth stage unwind to-block 0x52e0509d33a988ef807058e2980099ee3070187f7333aae12b64d4d675f34c5a

View File

@ -1,55 +0,0 @@
# Runs a base mainnet sync test.
name: op-sync-test
on:
pull_request:
merge_group:
push:
branches: [ main ]
env:
CARGO_TERM_COLOR: always
concurrency:
group: ${{ github.workflow }}-${{ github.head_ref || github.run_id }}
cancel-in-progress: true
jobs:
sync:
name: op sync / 10k blocks
# Only run sync tests in merge groups
if: github.event_name == 'merge_group'
runs-on:
group: Reth
env:
RUST_LOG: info,sync=error
RUST_BACKTRACE: 1
timeout-minutes: 60
steps:
- uses: actions/checkout@v4
- uses: dtolnay/rust-toolchain@stable
- uses: Swatinem/rust-cache@v2
with:
cache-on-failure: true
- name: Build op-reth
run: make install-op
- name: Run sync
# https://basescan.org/block/10000
run: |
op-reth node \
--chain base \
--debug.tip 0xbb9b85352c7ebca6ba8efc63bd66cecd038c92ec8ebd02e153a3e0b197e672b7 \
--debug.max-block 10000 \
--debug.terminate
- name: Verify the target block hash
run: |
op-reth db --chain base get static-file headers 10000 \
| grep 0xbb9b85352c7ebca6ba8efc63bd66cecd038c92ec8ebd02e153a3e0b197e672b7
- name: Run stage unwind for 100 blocks
run: |
op-reth stage --chain base unwind num-blocks 100
- name: Run stage unwind to block hash
run: |
op-reth stage --chain base unwind to-block 0x118a6e922a8c6cab221fc5adfe5056d2b72d58c6580e9c5629de55299e2cf8de

63
.github/workflows/sync.yml vendored Normal file
View File

@ -0,0 +1,63 @@
# Runs sync tests.
name: sync test
on:
merge_group:
env:
CARGO_TERM_COLOR: always
concurrency:
group: ${{ github.workflow }}-${{ github.head_ref || github.run_id }}
cancel-in-progress: true
jobs:
sync:
name: sync (${{ matrix.chain.bin }})
runs-on:
group: Reth
env:
RUST_LOG: info,sync=error
RUST_BACKTRACE: 1
timeout-minutes: 60
strategy:
matrix:
chain:
- build: install
bin: reth
chain: mainnet
tip: "0x91c90676cab257a59cd956d7cb0bceb9b1a71d79755c23c7277a0697ccfaf8c4"
block: 100000
unwind-target: "0x52e0509d33a988ef807058e2980099ee3070187f7333aae12b64d4d675f34c5a"
- build: install-op
bin: op-reth
chain: base
tip: "0xbb9b85352c7ebca6ba8efc63bd66cecd038c92ec8ebd02e153a3e0b197e672b7"
block: 10000
unwind-target: "0x118a6e922a8c6cab221fc5adfe5056d2b72d58c6580e9c5629de55299e2cf8de"
steps:
- uses: actions/checkout@v4
- uses: dtolnay/rust-toolchain@stable
- uses: Swatinem/rust-cache@v2
with:
cache-on-failure: true
- name: Build ${{ matrix.chain.bin }}
run: make ${{ matrix.chain.build }}
- name: Run sync
run: |
${{ matrix.chain.bin }} node \
--chain ${{ matrix.chain.chain }} \
--debug.tip ${{ matrix.chain.tip }} \
--debug.max-block ${{ matrix.chain.block }} \
--debug.terminate
- name: Verify the target block hash
run: |
${{ matrix.chain.bin }} db --chain ${{ matrix.chain.chain }} get static-file headers ${{ matrix.chain.block }} \
| grep ${{ matrix.chain.tip }}
- name: Run stage unwind for 100 blocks
run: |
${{ matrix.chain.bin }} stage --chain ${{ matrix.chain.chain }} unwind num-blocks 100
- name: Run stage unwind to block hash
run: |
${{ matrix.chain.bin }} stage --chain ${{ matrix.chain.chain }} unwind to-block ${{ matrix.chain.unwind-target }}