Migrate containers libs to new mono repo#10599
Conversation
|
Note
|
| Layer / File(s) | Summary |
|---|---|
Module dependency updates go.mod |
Remove github.com/containers/image/v5, add go.podman.io/image/v5 v5.40.0, normalize github.com/sirupsen/logrus to v1.9.4, bump OpenTelemetry packages to v1.43.0, refresh golang.org/x modules, compression, runtime-spec, and other indirect dependencies. |
Sysregistriesv2 import migration pkg/asset/agent/mirror/registriesconf.go, pkg/asset/ignition/bootstrap/common.go, pkg/asset/imagebased/image/registriesconf.go, pkg/asset/imagebased/image/ignition_test.go |
Update sysregistriesv2 imports to go.podman.io/image/v5/pkg/sysregistriesv2 in source and test files without other logic changes. |
Dockerref import migration pkg/asset/imagebased/image/imagebased_config.go, pkg/asset/releaseimage/pullspec.go, pkg/types/validation/installconfig.go |
Update dockerref imports to go.podman.io/image/v5/docker/reference (alias dockerref) for repository parsing/validation and pullspec parsing. |
🎯 2 (Simple) | ⏱️ ~10 minutes
🚥 Pre-merge checks | ✅ 15
✅ Passed checks (15 passed)
| Check name | Status | Explanation |
|---|---|---|
| Description Check | ✅ Passed | Check skipped - CodeRabbit’s high-level summary is enabled. |
| Title check | ✅ Passed | The title 'Migrate containers libs to new mono repo' clearly summarizes the main change: migrating from legacy containers imports (github.com/containers/) to new Podman import paths (go.podman.io/) following the monorepo consolidation. |
| Docstring Coverage | ✅ Passed | No functions found in the changed files to evaluate docstring coverage. Skipping docstring coverage check. |
| Linked Issues check | ✅ Passed | Check skipped because no linked issues were found for this pull request. |
| Out of Scope Changes check | ✅ Passed | Check skipped because no linked issues were found for this pull request. |
| Stable And Deterministic Test Names | ✅ Passed | No Ginkgo tests found in codebase. Modified test file uses standard Go testing with static, deterministic test name ("comprehensive configuration"). No dynamic test names were added or changed. |
| Test Structure And Quality | ✅ Passed | No Ginkgo test code in PR—only import path updates to existing standard Go tests using testify. Check not applicable to dependency migration PR. |
| Microshift Test Compatibility | ✅ Passed | No new Ginkgo e2e tests added; PR contains only dependency updates and import path migrations with zero test definitions (0/8 modified files contain Ginkgo tests). |
| Single Node Openshift (Sno) Test Compatibility | ✅ Passed | No new Ginkgo e2e tests added. Changes are import path migrations from github.com/containers/* to go.podman.io/* and go.mod dependency updates only. |
| Topology-Aware Scheduling Compatibility | ✅ Passed | PR only updates import paths from github.com/containers/* to go.podman.io/* in utility/config files. No deployment manifests, operators, controllers, or scheduling constraints are added or modified. |
| Ote Binary Stdout Contract | ✅ Passed | PR contains only dependency version updates and import path migrations (github.com/containers → go.podman.io) with no new stdout-writing code or process-level modifications. |
| Ipv6 And Disconnected Network Test Compatibility | ✅ Passed | PR contains only dependency updates and import path migrations, no new Ginkgo e2e tests. The single new test file uses standard Go testing with testing.T, not Ginkgo patterns. |
| No-Weak-Crypto | ✅ Passed | PR only migrates import paths from containers/* to go.podman.io/* with no code changes. No MD5, SHA1, DES, RC4, 3DES, Blowfish, ECB, custom crypto, or unsafe secret comparisons detected. |
| Container-Privileges | ✅ Passed | PR modifies only Go source files and go.mod for dependency migration; no container/K8s manifests with privileged configurations are introduced. |
| No-Sensitive-Data-In-Logs | ✅ Passed | PR only updates import paths and dependency versions. No new logging code was added; existing logs appropriately avoid sensitive data. |
✏️ Tip: You can configure your own custom pre-merge checks in the settings.
✨ Finishing Touches
🧪 Generate unit tests (beta)
- Create PR with unit tests
Warning
There were issues while running some tools. Please review the errors and either fix the tool's configuration or disable the tool if it's a critical failure.
🔧 golangci-lint (2.12.2)
Error: can't load config: unsupported version of the configuration: "" See https://golangci-lint.run/docs/product/migration-guide for migration instructions
The command is terminated due to an error: can't load config: unsupported version of the configuration: "" See https://golangci-lint.run/docs/product/migration-guide for migration instructions
Comment @coderabbitai help to get the list of available commands and usage tips.
|
[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 |
94af925 to
249a55c
Compare
|
/retest |
249a55c to
8fbebc9
Compare
Around August 2025 container containers/common, containers/storage, and containers/image were consolidated into containers/container-libs monorepo. All maintenance work has been happening in the monorepo since then. Migrating from legacy container imports to the new Podman import paths. Updating to newest version of image and storage dependencies - github.com/containers/image/v5 v5.31.0 → go.podman.io/image/v5 v5.40.0 - github.com/containers/storage v1.54.0 → go.podman.io/storage v1.63.0 https://blog.podman.io/2025/08/upcoming-migration-of-three-containers-repositories-to-monorepo/
8fbebc9 to
70c18c5
Compare
|
/retest |
|
@rh-roman: The following tests failed, say
Full PR test history. Your PR dashboard. DetailsInstructions for interacting with me using PR comments are available here. If you have questions or suggestions related to my behavior, please file an issue against the kubernetes-sigs/prow repository. I understand the commands that are listed here. |
tthvo
left a comment
There was a problem hiding this comment.
@rh-roman I haven't looked closely, but I strongly recommend splitting the changes into several commits, for example:
- Changes to
go.modandgo.sum - Changes to
vendor/directory after runninggo mod vendor - Any other changes to installer source files to update the import path.
Also, if you can create a Jira card with this PR contexts, it would be great. Thanks!
Around August 2025 container containers/common, containers/storage, and containers/image were consolidated into containers/container-libs monorepo. All maintenance work has been happening in the monorepo since then.
Migrating from legacy container imports to the new Podman import paths.
Updating to newest version of image and storage dependencies
https://blog.podman.io/2025/08/upcoming-migration-of-three-containers-repositories-to-monorepo/
Summary by CodeRabbit