openshift / oc-mirror

Lifecycle manager for internet-disconnected OpenShift environments
Apache License 2.0
82 stars 80 forks source link

OCPBUGS-34521: Fix DiskToMirror without internet connection without r… #862

Closed sherine-k closed 1 month ago

sherine-k commented 1 month ago

Description

Please include a summary of the change and which issue is fixed. Please also include relevant motivation and context. List any dependencies that are required for this change.

Fixes #OCPBUGS-34521

Type of change

Please delete options that are not relevant.

How Has This Been Tested?

Using the following ImageSetConfig:

kind: ImageSetConfiguration
apiVersion: mirror.openshift.io/v1alpha2

mirror:
  operators:
  - catalog: registry.redhat.io/redhat/redhat-operator-index:v4.14
    targetCatalog: hij/redhat-operator-index
    packages:
    - name: aws-load-balancer-operator
  - catalog: oci:///home/skhoury/clid20/working-dir/operator-images/redhat-operator-index/008c9fedc8ca8103203166a959515a383d694039b29670a596c99e3a78f46c5f
    targetCatalog: def/redhat-operator-index
    targetTag: v4.14
    packages:
    - name: external-dns-operator

First run a Mirror to disk, with internet connection on:

$ ./bin/oc-mirror -c configs_logs/isc_34521.yaml file:///home/skhoury/ocpbugs34521

Next cut your internet connection, and perform a Disk To Mirror to a local registry:

$ ./bin/oc-mirror --from /home/skhoury/ocpbugs34521 docker://localhost:5000 --dest-use-http --dest-skip-tls

Expected Outcome

-$ curl http://localhost:5000/v2/hij/redhat-operator-index/tags/list
{"name":"hij/redhat-operator-index","tags":["v4.14"]}
-$ curl http://localhost:5000/v2/def/redhat-operator-index/tags/list
{"name":"def/redhat-operator-index","tags":["v4.14"]}

We should also be able to apply the catalog source to a cluster accessing this mirror registry, and the pods should not fail.

openshift-ci-robot commented 1 month ago

@sherine-k: This pull request references Jira Issue OCPBUGS-34521, which is valid. The bug has been moved to the POST state.

3 validation(s) were run on this bug * bug is open, matching expected state (open) * bug target version (4.17.0) matches configured target version for branch (4.17.0) * bug is in the state ASSIGNED, which is one of the valid states (NEW, ASSIGNED, POST)

Requesting review from QA contact: /cc @zhouying7780

The bug has been updated to refer to the pull request using the external bug tracker.

In response to [this](https://github.com/openshift/oc-mirror/pull/862): ># Description > >Please include a summary of the change and which issue is fixed. Please also include relevant motivation and context. List any dependencies that are required for this change. > >Fixes #OCPBUGS-34521 > >## Type of change > >Please delete options that are not relevant. > >- [x] Bug fix (non-breaking change which fixes an issue) >- [ ] New feature (non-breaking change which adds functionality) >- [ ] Breaking change (fix or feature that would cause existing functionality to not work as expected) >- [ ] This change requires a documentation update > ># How Has This Been Tested? > >Using the following ImageSetConfig: >```yaml >kind: ImageSetConfiguration >apiVersion: mirror.openshift.io/v1alpha2 > >mirror: > operators: > - catalog: registry.redhat.io/redhat/redhat-operator-index:v4.14 > targetCatalog: hij/redhat-operator-index > packages: > - name: aws-load-balancer-operator > - catalog: oci:///home/skhoury/clid20/working-dir/operator-images/redhat-operator-index/008c9fedc8ca8103203166a959515a383d694039b29670a596c99e3a78f46c5f > targetCatalog: def/redhat-operator-index > targetTag: v4.14 > packages: > - name: external-dns-operator > ``` >First run a Mirror to disk, with internet connection on: >```bash >$ ./bin/oc-mirror -c configs_logs/isc_34521.yaml file:///home/skhoury/ocpbugs34521 >``` >Next cut your internet connection, and perform a Disk To Mirror to a local registry: >```bash >$ ./bin/oc-mirror --from /home/skhoury/ocpbugs34521 docker://localhost:5000 --dest-use-http --dest-skip-tls >``` >## Expected Outcome >```bash >-$ curl http://localhost:5000/v2/hij/redhat-operator-index/tags/list >{"name":"hij/redhat-operator-index","tags":["v4.14"]} >-$ curl http://localhost:5000/v2/def/redhat-operator-index/tags/list >{"name":"def/redhat-operator-index","tags":["v4.14"]} >``` > >We should also be able to apply the catalog source to a cluster accessing this mirror registry, and the pods should not fail. Instructions for interacting with me using PR comments are available [here](https://prow.ci.openshift.org/command-help?repo=openshift%2Foc-mirror). If you have questions or suggestions related to my behavior, please file an issue against the [openshift-eng/jira-lifecycle-plugin](https://github.com/openshift-eng/jira-lifecycle-plugin/issues/new) repository.
openshift-ci[bot] commented 1 month ago

[APPROVALNOTIFIER] This PR is APPROVED

This pull-request has been approved by: sherine-k

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: - ~~[OWNERS](https://github.com/openshift/oc-mirror/blob/main/OWNERS)~~ [sherine-k] Approvers can indicate their approval by writing `/approve` in a comment Approvers can cancel approval by writing `/approve cancel` in a comment
zhouying7780 commented 1 month ago

/label qe-approved

openshift-ci-robot commented 1 month ago

@sherine-k: This pull request references Jira Issue OCPBUGS-34521, which is valid.

3 validation(s) were run on this bug * bug is open, matching expected state (open) * bug target version (4.17.0) matches configured target version for branch (4.17.0) * bug is in the state POST, which is one of the valid states (NEW, ASSIGNED, POST)

Requesting review from QA contact: /cc @zhouying7780

In response to [this](https://github.com/openshift/oc-mirror/pull/862): ># Description > >Please include a summary of the change and which issue is fixed. Please also include relevant motivation and context. List any dependencies that are required for this change. > >Fixes #OCPBUGS-34521 > >## Type of change > >Please delete options that are not relevant. > >- [x] Bug fix (non-breaking change which fixes an issue) >- [ ] New feature (non-breaking change which adds functionality) >- [ ] Breaking change (fix or feature that would cause existing functionality to not work as expected) >- [ ] This change requires a documentation update > ># How Has This Been Tested? > >Using the following ImageSetConfig: >```yaml >kind: ImageSetConfiguration >apiVersion: mirror.openshift.io/v1alpha2 > >mirror: > operators: > - catalog: registry.redhat.io/redhat/redhat-operator-index:v4.14 > targetCatalog: hij/redhat-operator-index > packages: > - name: aws-load-balancer-operator > - catalog: oci:///home/skhoury/clid20/working-dir/operator-images/redhat-operator-index/008c9fedc8ca8103203166a959515a383d694039b29670a596c99e3a78f46c5f > targetCatalog: def/redhat-operator-index > targetTag: v4.14 > packages: > - name: external-dns-operator > ``` >First run a Mirror to disk, with internet connection on: >```bash >$ ./bin/oc-mirror -c configs_logs/isc_34521.yaml file:///home/skhoury/ocpbugs34521 >``` >Next cut your internet connection, and perform a Disk To Mirror to a local registry: >```bash >$ ./bin/oc-mirror --from /home/skhoury/ocpbugs34521 docker://localhost:5000 --dest-use-http --dest-skip-tls >``` >## Expected Outcome >```bash >-$ curl http://localhost:5000/v2/hij/redhat-operator-index/tags/list >{"name":"hij/redhat-operator-index","tags":["v4.14"]} >-$ curl http://localhost:5000/v2/def/redhat-operator-index/tags/list >{"name":"def/redhat-operator-index","tags":["v4.14"]} >``` > >We should also be able to apply the catalog source to a cluster accessing this mirror registry, and the pods should not fail. Instructions for interacting with me using PR comments are available [here](https://prow.ci.openshift.org/command-help?repo=openshift%2Foc-mirror). If you have questions or suggestions related to my behavior, please file an issue against the [openshift-eng/jira-lifecycle-plugin](https://github.com/openshift-eng/jira-lifecycle-plugin/issues/new) repository.
sherine-k commented 1 month ago

/cherrypick release-4.16 release-4.15

openshift-cherrypick-robot commented 1 month ago

@sherine-k: once the present PR merges, I will cherry-pick it on top of release-4.16 in a new PR and assign it to you.

In response to [this](https://github.com/openshift/oc-mirror/pull/862#issuecomment-2138936687): >/cherrypick release-4.16 release-4.15 Instructions for interacting with me using PR comments are available [here](https://git.k8s.io/community/contributors/guide/pull-requests.md). If you have questions or suggestions related to my behavior, please file an issue against the [kubernetes-sigs/prow](https://github.com/kubernetes-sigs/prow/issues/new?title=Prow%20issue:) repository.
lmzuccarelli commented 1 month ago

/lgtm

openshift-ci[bot] commented 1 month ago

@sherine-k: all tests passed!

Full PR test history. Your PR dashboard.

Instructions for interacting with me using PR comments are available [here](https://git.k8s.io/community/contributors/guide/pull-requests.md). If you have questions or suggestions related to my behavior, please file an issue against the [kubernetes-sigs/prow](https://github.com/kubernetes-sigs/prow/issues/new?title=Prow%20issue:) repository. I understand the commands that are listed [here](https://go.k8s.io/bot-commands).
openshift-ci-robot commented 1 month ago

@sherine-k: Jira Issue OCPBUGS-34521: All pull requests linked via external trackers have merged:

Jira Issue OCPBUGS-34521 has been moved to the MODIFIED state.

In response to [this](https://github.com/openshift/oc-mirror/pull/862): ># Description > >Please include a summary of the change and which issue is fixed. Please also include relevant motivation and context. List any dependencies that are required for this change. > >Fixes #OCPBUGS-34521 > >## Type of change > >Please delete options that are not relevant. > >- [x] Bug fix (non-breaking change which fixes an issue) >- [ ] New feature (non-breaking change which adds functionality) >- [ ] Breaking change (fix or feature that would cause existing functionality to not work as expected) >- [ ] This change requires a documentation update > ># How Has This Been Tested? > >Using the following ImageSetConfig: >```yaml >kind: ImageSetConfiguration >apiVersion: mirror.openshift.io/v1alpha2 > >mirror: > operators: > - catalog: registry.redhat.io/redhat/redhat-operator-index:v4.14 > targetCatalog: hij/redhat-operator-index > packages: > - name: aws-load-balancer-operator > - catalog: oci:///home/skhoury/clid20/working-dir/operator-images/redhat-operator-index/008c9fedc8ca8103203166a959515a383d694039b29670a596c99e3a78f46c5f > targetCatalog: def/redhat-operator-index > targetTag: v4.14 > packages: > - name: external-dns-operator > ``` >First run a Mirror to disk, with internet connection on: >```bash >$ ./bin/oc-mirror -c configs_logs/isc_34521.yaml file:///home/skhoury/ocpbugs34521 >``` >Next cut your internet connection, and perform a Disk To Mirror to a local registry: >```bash >$ ./bin/oc-mirror --from /home/skhoury/ocpbugs34521 docker://localhost:5000 --dest-use-http --dest-skip-tls >``` >## Expected Outcome >```bash >-$ curl http://localhost:5000/v2/hij/redhat-operator-index/tags/list >{"name":"hij/redhat-operator-index","tags":["v4.14"]} >-$ curl http://localhost:5000/v2/def/redhat-operator-index/tags/list >{"name":"def/redhat-operator-index","tags":["v4.14"]} >``` > >We should also be able to apply the catalog source to a cluster accessing this mirror registry, and the pods should not fail. Instructions for interacting with me using PR comments are available [here](https://prow.ci.openshift.org/command-help?repo=openshift%2Foc-mirror). If you have questions or suggestions related to my behavior, please file an issue against the [openshift-eng/jira-lifecycle-plugin](https://github.com/openshift-eng/jira-lifecycle-plugin/issues/new) repository.
openshift-cherrypick-robot commented 1 month ago

@sherine-k: new pull request created: #863

In response to [this](https://github.com/openshift/oc-mirror/pull/862#issuecomment-2138936687): >/cherrypick release-4.16 release-4.15 Instructions for interacting with me using PR comments are available [here](https://git.k8s.io/community/contributors/guide/pull-requests.md). If you have questions or suggestions related to my behavior, please file an issue against the [kubernetes-sigs/prow](https://github.com/kubernetes-sigs/prow/issues/new?title=Prow%20issue:) repository.