ethpandaops/Syncoor Test

Run Ethereum client synchronization tests using syncoor

View on GitHub

Trust Signals

Scorecard Score
not yet scored
Maintenance Recency
Activelast commit May 19, 2026
License
GPL 3.0

Pinned Snippet

workflow.ymlSHA-pinned
uses: ethpandaops/syncoor@44d647f59e845115195548b73f77b37314daa506 # v0.2.5

tags can be moved; commit SHAs can't. why a SHA?

namedescriptionrequireddefault
github-tokenGitHub token for API accessyes
imageDocker image for syncoor (e.g., ghcr.io/ethpandaops/syncoor:master). If not provided, will build locally.no""
git-refGit branch or commit hash to build from. Only used when image is not provided. If neither image nor git-ref are provided, builds from current directory or master.no""
repositoryGit repository URL to clone from when using git-refnohttps://github.com/ethpandaops/syncoor.git
run-testsRun tests. Useful for generating report index only. There you can set it to false and run the action again to generate the index.notrue
ethereum-packageEthereum package repository and version (e.g., github.com/ethpandaops/ethereum-package@main)nogithub.com/ethpandaops/ethereum-package@main
check-intervalInterval in seconds between sync status checksno10s
run-timeoutTimeout for sync operation - will cancel sync and generate report marked as "timeout" if exceeded (exits with code 124, treated as success in CI)no60m
client-logsOutput EL and CL client logs to stdoutnofalse
el-clientExecution layer client type (geth, besu, nethermind, erigon, reth)nogeth
cl-clientConsensus layer client type (lighthouse, teku, prysm, nimbus, lodestar, grandine)noteku
el-imageExecution layer client image (optional)no""
cl-imageConsensus layer client image (optional)no""
el-extra-argsExtra arguments for execution layer client (array of strings). Example: ["--some-arg", "--another-arg"]no[]
cl-extra-argsExtra arguments for consensus layer client (array of strings). Example: ["--some-arg", "--another-arg"]no[]
el-env-varsEnvironment variables for execution layer client (array of strings). Example: ["KEY1=value1", "KEY2=value2"]no[]
cl-env-varsEnvironment variables for consensus layer client (array of strings). Example: ["KEY1=value1", "KEY2=value2"]no[]
networkNetwork to connect to (e.g., hoodi, sepolia, mainnet)nohoodi
enclaveEnclave name (optional - defaults to "sync-test"nosync-test
log-levelLog level (panic, fatal, error, warn, info, debug, trace)noinfo
log-force-colorsForce colored output in logsnofalse
labelsComma-separated labels in key=value format (e.g., "test=sync,env=ci")no""
serverCentralized server URL (e.g., https://api.syncoor.example)no""
server-authBearer token for server authenticationno""
metrics-exporter-imageDocker image for metrics exporter (e.g., ethpandaops/ethereum-metrics-exporter:debian-latest)noethpandaops/ethereum-metrics-exporter:debian-latest
metrics-exporter-portPort for metrics exporterno9090
metrics-exporter-log-levelLog level for metrics exporter (panic, fatal, error, warn, info, debug, trace)noinfo
supernodeEnable supernode (should only be used with peerdas)nofalse
checkpoint-sync-enabledEnable checkpoint sync across the networknotrue
checkpoint-sync-urlCheckpoint sync URL (e.g., https://checkpoint-sync.sepolia.ethpandaops.io/)no""
publicEnable public port publishingnofalse
public-port-elPublic port for execution layer clientno40000
public-port-clPublic port for consensus layer clientno41000
public-ipPublic IP for port publishing (default: auto)noauto
log-level-elLog level for execution layer client (trace, debug, info, warn, error)noinfo
log-level-clLog level for consensus layer client (trace, debug, info, warn, error)noinfo
upload-artifactsWhether to upload test reports as artifactsnotrue
artifact-retention-days-test-reportNumber of days to retain test report artifactsno30
artifact-retention-days-enclave-dumpNumber of days to retain enclave dump artifactsno7
s3-uploadUpload test results to S3nofalse
s3-bucketS3 bucket nameno
s3-pathPath prefix in S3 bucketno""
s3-index-generateGenerate index.json file in S3 bucket after test runnofalse
rclone-configRclone config fileno""
rclone-versionRclone version to usenolatest
kurtosis-versionKurtosis CLI version to useno1.18.1
namedescription
report-pathPath to the generated report
main-report-fileName of the main report JSON file (without .json extension)