ci: migrate Catalyst workflows to Taiko - #1
Draft
davidtaikocha wants to merge 2 commits into
Draft
Conversation
Two review findings from #1. 1. `BLST_PORTABLE` was inert. `blst` selects portable mode from the Cargo feature `portable` (build.rs:160); the only environment variable its build script reads is `BLST_TEST_NO_STD`. The `ARG`/`--build-arg` pair therefore did nothing except suppress BuildKit's "build args were not consumed" warning, which made a no-op look plumbed through. Builds kept falling through to host CPU detection and baked ADX/BMI2-only assembly into the published amd64 image, which SIGILLs on pre-Broadwell/pre-Zen hosts. `blst` reaches this workspace through `c-kzg`, whose `portable` feature forwards to `blst/portable`. Every existing dependent (alloy-eips, alloy-consensus, revm-precompile) takes c-kzg with default-features = false, so the feature was off. Declare c-kzg directly from `common` with that one feature and let feature unification carry it to the single `blst` node. Verified with `cargo tree -p node -e features -i blst`: common -> c-kzg feature "portable" -> blst feature "portable". Lockfile impact is one line; c-kzg stays at 2.1.7 and blst at 0.3.16. The Dockerfile ARG and both build-args blocks are removed, since the control surface is now the Cargo feature. 2. The retired p2p_node_docker_build.yml left tools/p2p_boot_node/ with no image pipeline, while simple-taiko-node-nethermind's docker-compose.yml pulls nethermind/catalyst-p2p-bootnode:latest and four services depend on it. Nothing goes red -- E2E would silently keep testing a frozen Nethermind build. Matrix the validate/publish/merge jobs over image so the bootnode is built and published alongside the node. Repointing the compose file to GAR is a follow-up in that repo. Also adds tools/p2p_boot_node/Dockerfile to the path filters (the bare "Dockerfile" entry only matches the repo root) and records why `paths` is safe to combine with tag pushes. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
us-docker.pkg.dev/evmchain/images/catalyst-node.linux/amd64andlinux/arm64images by digest and merge them into one manifest onmasterandv*tags.BLST_PORTABLEan effective Docker build argument and updateCargo.lockto patchedanyhow,crossbeam-epoch, andruintreleases required by the dependency audit.Validation
cargo fmt --all -- --checkcargo clippy --workspace --all-features --exclude p2p-boot-node --locked -- -D warningscargo test --workspace --locked --verbose(129 unit tests plus doc tests)typos .cargo deny check(passes; retains one existing transitive yankedspin 0.9.8warning)actionlint .github/workflows/*.ymldocker buildx build --call=check --file Dockerfile .Before merge
taikoxyz/Catalystandgar-github-action@evmchain.iam.gserviceaccount.comcan writeus-docker.pkg.dev/evmchain/images/catalyst-node.