mirror of
https://github.com/sigp/lighthouse.git
synced 2026-03-02 16:21:42 +00:00
Add e2e sync tests to CI (#7530)
This PR adds the following sync tests to CI workflow - triggered when a PR is labeled `syncing` - to ensure we have some e2e coverage on basic sync scenarios: - [x] checkpoint sync to a live network (covers range and backfill sync for _current_ fork) - [x] checkpoint sync to a running devnet (covers range and backfill sync for _next_ fork) It seems to work fine running on github hosted runners - but if performance become an issue we could switch to using self hosted runners for sepolia sync test. (standard CPU runners have 4 CPU, 16 GB ram - i think it _should_ be enough on sepolia / devnet networks) The following tests have been **removed** from this PR and moved to a separate issue *(#7550) - [x] genesis sync on a local devnet (covers current and next fork) - [x] brief shutdown and restart (covers lookup sync) - [x] longer shutdown and restart (covers range sync) I'm hoping to keep these e2e test maintenance effort to a minimum - hopefully longer term we could have some generic e2e tests that works for all clients and the maintenance effort can be spread across teams. ### Latest test run: https://github.com/sigp/lighthouse/actions/runs/15411744248 ### Results: <img width="687" alt="image" src="https://github.com/user-attachments/assets/c7178291-7b39-4f3b-a339-d3715eb16081" /> <img width="693" alt="image" src="https://github.com/user-attachments/assets/a8fc3520-296c-4baf-ae1e-1e887e660a3c" /> #### logs are available as artifacts: <img width="629" alt="image" src="https://github.com/user-attachments/assets/3c0e1cd7-9c94-4d0c-be62-5e45179ab8f3" />
This commit is contained in:
@@ -5,8 +5,13 @@ set -euf -o pipefail
|
||||
|
||||
YAML=$1
|
||||
SUCCESS_JOB=$2
|
||||
EXCLUDE_JOBS_REGEX=${3:-}
|
||||
|
||||
yq '... comments="" | .jobs | map(. | key) | .[]' < "$YAML" |
|
||||
grep -v "$SUCCESS_JOB" |
|
||||
{ [ -n "$EXCLUDE_JOBS_REGEX" ] && grep -Ev "$EXCLUDE_JOBS_REGEX" || cat; } |
|
||||
sort > all_jobs.txt
|
||||
|
||||
yq '... comments="" | .jobs | map(. | key) | .[]' < "$YAML" | grep -v "$SUCCESS_JOB" | sort > all_jobs.txt
|
||||
yq "... comments=\"\" | .jobs.$SUCCESS_JOB.needs[]" < "$YAML" | grep -v "$SUCCESS_JOB" | sort > dep_jobs.txt
|
||||
diff all_jobs.txt dep_jobs.txt || (echo "COMPLETENESS CHECK FAILED" && exit 1)
|
||||
rm all_jobs.txt dep_jobs.txt
|
||||
|
||||
Reference in New Issue
Block a user