Downstream container-libs vendoring - #2066
Conversation
…roposal Describe how downstream CRI-O will vendor a downstream fork of container-libs using Go module replace directives, ensuring alignment with the container-libs version shipped in the target RHEL release. Assisted-by: Claude Code <https://claude.com/claude-code>
|
Skipping CI for Draft Pull Request. |
|
[APPROVALNOTIFIER] This PR is NOT APPROVED This pull-request has been approved by: The full list of commands accepted by this bot can be found here. DetailsNeeds approval from an approver in each of these files:Approvers can indicate their approval by writing |
|
|
||
| ### Workflow Description | ||
|
|
||
| **CRI-O downstream maintainer** is a developer responsible for maintaining `openshift/cri-o`. |
There was a problem hiding this comment.
Can we change the persona? Instead of "CRI-O downstream maintainer" can we say "OpenShift Node Team member". Then it cover a wider range of folks in the team and anyone can do it.
| 2. The `replace` directives in `openshift/cri-o`'s `go.mod` are updated to reference the new version. TODO: Evaluate automating this step (e.g., a bot that opens a PR when a new downstream container-libs release is tagged). In the interim, a CRI-O downstream maintainer performs this manually. | ||
| 3. The maintainer runs `go mod tidy` and `go mod vendor`. | ||
| 4. The maintainer submits a PR to `openshift/cri-o` with the updated vendor directory and `go.mod`/`go.sum`. | ||
| 5. CI validates the build and runs tests. |
There was a problem hiding this comment.
Can we add a test in origin that will fail once RHEL updates the container-libs in podman? That will help to trigger the process of updating cri-o downstream?
There was a problem hiding this comment.
Thanks!
IMHO we should test semantic correctness (it behaves intentionally), rather than syntax correctness (it has the same version as podman), but it's worth mentioning here.
|
|
||
| - As an OpenShift release engineer, I want the vendoring relationship managed via Go module `replace` directives so the build process is straightforward and reproducible. | ||
|
|
||
| - As an OpenShift Node team member, I want a clear process for updating container-libs versions in downstream CRI-O so that upstream and RHEL bug fixes can be incorporated efficiently. |
Describe how downstream CRI-O will vendor a downstream fork of container-libs using Go module replace directives, ensuring alignment with the container-libs version shipped in the target RHEL release.
Assisted-by: Claude Code https://claude.com/claude-code