New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Bug 1829832: support mirroring for index images #438
Bug 1829832: support mirroring for index images #438
Conversation
prior to this commit, it was assumed that the database file has the name bundles.db in the designated folder. newer index images use a label to indicate location and default to /database/index.db, which required a two-step workaround to mirror with oc adm catalog mirror. after this change, oc adm catalog mirror with the flag `--path="/database/index.db:./"` will work as expected for non-standard db locations.
index images come with a label indicating where in the image the db file can be found. this commit checks for the label before attempting to extract the db if an explicit path is provided, it is preferred to the label value
@ecordell: This pull request references Bugzilla bug 1829832, which is valid. The bug has been moved to the POST state. The bug has been updated to refer to the pull request using the external bug tracker. 3 validation(s) were run on this bug
In response to this:
Instructions 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/test-infra repository. |
@ecordell: This pull request references Bugzilla bug 1829832, which is valid. 3 validation(s) were run on this bug
In response to this:
Instructions 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/test-infra repository. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
One question, but overall good.
/lgtm
/approve
if info.IsDir() { | ||
return nil | ||
} | ||
if _, err := sqlittle.Open(path); err == nil { |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Is it possible that more than one valid sqlite database file will be present there?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Possible but unlikely (no tooling for building these images will do it) - but if that's the case, the output will indicate which one was picked, and if it's not the one you wanted you can override with --path
[APPROVALNOTIFIER] This PR is APPROVED This pull-request has been approved by: ecordell, soltysh The full list of commands accepted by this bot can be found here. The pull request process is described here
Needs approval from an approver in each of these files:
Approvers can indicate their approval by writing |
/retest Please review the full test history for this PR and help us cut down flakes. |
1 similar comment
/retest Please review the full test history for this PR and help us cut down flakes. |
@ecordell: All pull requests linked via external trackers have merged: openshift/oc#438. Bugzilla bug 1829832 has been moved to the MODIFIED state. In response to this:
Instructions 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/test-infra repository. |
oc adm catalog mirror
initially targeted "registry images" built viaoc adm catalog build
.Newer
opm
tooling creates index images with slight differences. This PR accounts for them in two ways:--path
flag.mirror
now detects the "index label", if present, and uses that to find the database in the image.--path
takes precedence, if present.