Use architecture-specific runners for multi-architecture builds#3051
Merged
brianaydemir merged 5 commits intoPelicanPlatform:mainfrom Feb 5, 2026
Merged
Use architecture-specific runners for multi-architecture builds#3051brianaydemir merged 5 commits intoPelicanPlatform:mainfrom
brianaydemir merged 5 commits intoPelicanPlatform:mainfrom
Conversation
227ce69 to
32f55ce
Compare
This was referenced Feb 3, 2026
32f55ce to
8d77409
Compare
- Split the macOS and Windows workflows out into their own files because it's challenging trying to read through conditionals on every other step definition. - Make various tweaks so that a three-way diff between test-linux.yml, test-macos.yml, and test-windows.yml highlights only real differences. - On Windows, we don't do a real build of the web UI, so stop setting up Node.js and the Next.js cache. - On Windows, the Go set up action no longer takes an inordinate amount of time, so remove the workaound. See the comments on actions/setup-go#515 for more.
It's a generated directory, which means it shouldn't affect the suitability of the cache, and I've seen new(?) failures where the cache action times out when trying to save the cache.
ae74f73 to
fbb5691
Compare
Contributor
Author
In particular, 'setup-go' seems to install the _minimum_ version satisfying whatever is in 'go.mod', so we need to be more explicit about the versions that we're interested in.
- Switch to the Docker metadata action for putting together tags for the build-push action. Add more tags, because it's easy now. - Fold the jobs for the testing and dev containers into the one for the server containers. The code duplication is not worth the maintenance cost. - Clean up names so that they're readable in GitHub's web interface. - Change how we interact with the GitHub Actions cache for Docker's build cache and the GitHub workspace so that the workflow is more resilient to being re-run (e.g., for flakey tests, transient errors, etc.)
281b5f8 to
a07f371
Compare
Contributor
Author
|
Oof, GitHub's diff for |
jhiemstrawisc
approved these changes
Feb 5, 2026
Member
jhiemstrawisc
left a comment
There was a problem hiding this comment.
Overall this looks really clean, thank you for the specific commits with detailed messages. After poring over everything, I had one request for an extra comment, one question about workflow triggers and one request for a follow up after this gets merged.
Since these are all minor, I'll pre-approve and let you address them as you see fit.
brianaydemir
added a commit
to brianaydemir/pelicanplatform-pelican
that referenced
this pull request
Feb 7, 2026
It should no longer be necessary as of PelicanPlatform#3051.
brianaydemir
added a commit
to brianaydemir/pelicanplatform-pelican
that referenced
this pull request
Feb 7, 2026
The GitHub Actions should no longer require it as of PelicanPlatform#3051. Local builds might still need it, but the fewer one-off hacks that are incorporated into the CI pipeline, the better.
brianaydemir
added a commit
to brianaydemir/pelicanplatform-pelican
that referenced
this pull request
Feb 8, 2026
The GitHub Actions should no longer require it as of PelicanPlatform#3051. Local builds might still need it, but the fewer one-off hacks that are incorporated into the CI pipeline, the better.
brianaydemir
added a commit
to brianaydemir/pelicanplatform-pelican
that referenced
this pull request
Feb 8, 2026
The GitHub Actions should no longer require it as of PelicanPlatform#3051. Local builds might still need the workaround, but the fewer one-off hacks that are incorporated into the CI pipeline, the better.
brianaydemir
added a commit
to brianaydemir/pelicanplatform-pelican
that referenced
this pull request
Feb 8, 2026
GitHub Actions should no longer require it as of PelicanPlatform#3051. Local builds might still need the workaround, but the fewer one-off hacks that are incorporated into the CI pipeline, the better.
brianaydemir
added a commit
to brianaydemir/pelicanplatform-pelican
that referenced
this pull request
Feb 9, 2026
GitHub Actions should no longer require it as of PelicanPlatform#3051. Local builds might still need the workaround, but the fewer one-off hacks that are incorporated into the CI pipeline, the better.
brianaydemir
added a commit
to brianaydemir/pelicanplatform-pelican
that referenced
this pull request
Feb 10, 2026
GitHub Actions should no longer require it as of PelicanPlatform#3051. Local builds might still need the workaround, but the fewer one-off hacks that are incorporated into the CI pipeline, the better.
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
This PR aims to address point (1) of #2997 by using architecture-specific GitHub Actions runners for building Pelican's container images.
If that turns out to work well in practice, then point (2) is a straightforward change to
.github/workflows/build-and-test.yml.Point (3) is still a bit of a mystery to me, wherein I'll need to observe the behaviors of our revised GitHub Actions workflows before deciding upon further improvements. That said, I'm hoping the various changes made in this PR and #3022 will result in fewer "useless" caches.
Details
As with #3022, @jhiemstrawisc I would suggest reviewing this PR commit-by-commit, because the commit messages contain more information about what I had in mind.
I'm also more than happy to trigger, on demand (ask), a particular scenario in my own fork.