Feat/tagged versions#15
Open
gknapp1 wants to merge 6 commits into
Open
Conversation
- ensuring build tag convention can handle multiple builds per day - specifying immutable upstream containers and spack packages, should be updated intentionally - spack configs are more clear in inheriting from base image
- reduces size of images - decreases exaca and thesis build times - cleans up unused packages from debug/mono-container layout
- successful manifest generation required for public tags to be published - coding assistance from Codex 5.6
1 task
gknapp1
marked this pull request as draft
July 13, 2026 17:03
gknapp1
marked this pull request as ready for review
July 13, 2026 17:03
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 is basically a full rewrite of the containers repository to better enable container versioning, ease of updating container versions, and speed of building. Overall, modernizes the container build and release pipeline with Bake-based image definitions, dependency-aware CI, immutable release tags, and generated container inventory documentation.
In terms of user experience, this will require manual updates of versions, ideally from versioned spack installs (AdditiveFOAM is an exception to building from a spack image due to the availability of an OpenFOAM official container and the slowness of building the spack openfoam install). This moves container publishing from a weekly build to a publish-on-merge-to-main model.
To avoid confusion on compatibility, the tags are changed to a date-based format (YYYY-MM-DD) so that each version of the container is unique.
Related issues
Details
Impact
This changes the build, publication, and inventory workflow for all repository images. It improves reproducibility, reduces duplicated solver build work, and makes installed software discoverable without running containers.
Risk level: Medium, because the CI release pipeline and image build structure are substantially revised, checking will be necessary on push to main. The workflow uses pinned external inputs, staged publication, validation before promotion, and generated inventory checks to reduce release risk.
Testing strategy
CI runs the following fast checks for every PR:
For affected images, CI also builds the Bake targets and runs scripts/container-smoke-tests.sh before publication. Registry-dependent staging, promotion, and catalog generation are validated on pushes to main.