feat(github_ci): speed up test runs with one binary build#5067
Merged
GheisMohammadi merged 9 commits intoJun 26, 2026
Conversation
2b63cca to
2bcd724
Compare
8249cb3 to
2e6fc42
Compare
5bc0834 to
947a217
Compare
947a217 to
e199694
Compare
a0197e8 to
c85a470
Compare
…gaist static binaries
4d0f62f to
fbf001c
Compare
fbf001c to
b31336a
Compare
GheisMohammadi
approved these changes
Jun 26, 2026
|
Tick the box to add this pull request to the merge queue (same as
|
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.
Issue
What was done
buildjob and reused by integration test jobs.harmonyandbootnodebinaries withmake linux_static.harmonybootnoderpc-checkerandpyhmy-checkerto download and reuse the prebuilt binaries.-B.6.5.0versionNote: pyhmy and unit tests will be covered separate, there are dependencies on the proto image and arm pyhmy cli
Why this is better
Conntected PRs
Test
Tests performed
harmonyandbootnodeare built and uploaded as artifacts.bin/path.Test/Run Logs
https://github.com/harmony-one/harmony/actions/runs/28190779640
Diagram
flowchart LR subgraph BEFORE["Before"] A1["Build job builds harmony"] A2["RPC job builds harmony again"] A3["pyhmy job builds harmony again"] A4["localnet Dockerfile may build harmony again"] A5["run.sh may build again"] A6["Slow, duplicated, unclear tested binary"] A1 --> A2 --> A3 --> A4 --> A5 --> A6 end subgraph NOW["Now"] B1["Build job builds static harmony + bootnode once"] B2["Upload harmony-binaries artifact"] B3["RPC downloads artifact"] B4["pyhmy downloads artifact"] B5["localnet runs with -B"] B6["Tests use same prebuilt binaries"] B1 --> B2 B2 --> B3 --> B5 --> B6 B2 --> B4 --> B5 end BEFORE --> NOWOperational Checklist
Does this PR introduce backward-incompatible changes to the on-disk data structure and/or the over-the-wire protocol?. (If no, skip to question 8.)
YES|NO
Describe the migration plan.. For each flag epoch, describe what changes take place at the flag epoch, the anticipated interactions between upgraded/non-upgraded nodes, and any special operational considerations for the migration.
Describe how the plan was tested.
How much minimum baking period after the last flag epoch should we allow on Pangaea before promotion onto mainnet?
What are the planned flag epoch numbers and their ETAs on Pangaea?
What are the planned flag epoch numbers and their ETAs on mainnet?
Note that this must be enough to cover baking period on Pangaea.
What should node operators know about this planned change?
Does this PR introduce backward-incompatible changes NOT related to on-disk data structure and/or over-the-wire protocol? (If no, continue to question 11.)
YES|NO
Does the existing
node.shcontinue to work with this change?What should node operators know about this change?
Does this PR introduce significant changes to the operational requirements of the node software, such as >20% increase in CPU, memory, and/or disk usage?
TODO