Bug 2095584 - oc adm catalog mirror returns 0 even if there are errors
Summary: oc adm catalog mirror returns 0 even if there are errors
Keywords:
Status: CLOSED ERRATA
Alias: None
Product: OpenShift Container Platform
Classification: Red Hat
Component: oc
Version: 4.9
Hardware: All
OS: Unspecified
medium
medium
Target Milestone: ---
: 4.10.z
Assignee: Tyler Slaton
QA Contact: Jian Zhang
URL:
Whiteboard:
: 2095302 (view as bug list)
Depends On: 2088483
Blocks: 2095302
TreeView+ depends on / blocked
 
Reported: 2022-06-09 22:12 UTC by Alok Singh
Modified: 2022-08-15 18:37 UTC (History)
12 users (show)

Fixed In Version:
Doc Type: If docs needed, set a value
Doc Text:
Clone Of: 2088483
Environment:
Last Closed: 2022-06-28 11:50:55 UTC
Target Upstream Version:
Embargoed:


Attachments (Terms of Use)


Links
System ID Private Priority Status Summary Last Updated
Github openshift oc pull 1170 0 None open Bug 2095584: Backport `oc adm catalog mirror` --continue-on-error flag 2022-06-21 12:49:21 UTC
Red Hat Product Errata RHBA-2022:5172 0 None None None 2022-06-28 11:51:10 UTC

Comment 1 Alok Singh 2022-06-09 22:17:31 UTC
*** Bug 2095302 has been marked as a duplicate of this bug. ***

Comment 5 Jian Zhang 2022-06-16 03:29:06 UTC
1, build the `oc` client via the cluster-bot.
[cloud-user@preserve-olm-env2 cluster-bot]$ ./oc version
Client Version: 4.10.0-0.ci.test-2022-06-16-023202-ci-ln-zf9kilk-latest
Kubernetes Version: v1.23.5+3afdacb

2, check if the `--continue-on-error` option enabled.

[cloud-user@preserve-olm-env2 cluster-bot]$ ./oc adm catalog mirror --help|grep continue -A1
      --continue-on-error=true: If an error occurs while mirroring, keep going and attempt to mirror as much as possible.
      --dir='': The directory on disk that file:// images will be copied under.

3, mirror a wrong image without the `--continue-on-error=false`.

[cloud-user@preserve-olm-env2 cluster-bot]$ ./oc adm catalog mirror quay.io/olmqe/etcd-index:v3 localhost:5000 
W0616 11:21:02.340901 1448575 helpers.go:151] Defaulting of registry auth file to "${HOME}/.docker/config.json" is deprecated. The default will be switched to podman config locations in the future version.
src image has index label for declarative configs path: /configs/
using index path mapping: /configs/:/tmp/1359854203
W0616 11:21:03.707418 1448575 helpers.go:151] Defaulting of registry auth file to "${HOME}/.docker/config.json" is deprecated. The default will be switched to podman config locations in the future version.
wrote declarative configs to /tmp/1359854203
using declarative configs at: /tmp/1359854203
W0616 11:21:06.052431 1448575 helpers.go:151] Defaulting of registry auth file to "${HOME}/.docker/config.json" is deprecated. The default will be switched to podman config locations in the future version.
localhost:5000/
  olmqe/etcd-index
    blobs:
      quay.io/olmqe/etcd-index sha256:f254a54481e419dc0f67364fca0f78289f0a52490e96d62255afdfad394d70cd 159B
      quay.io/olmqe/etcd-index sha256:af64ecfdcb9496edc7b7badbe3028973175f071b6c31aa691fdf11aebf532402 394B
      quay.io/olmqe/etcd-index sha256:20c97716667af926e52cf0b62daa5bee4f8b98fe243bfc1b381fc9eba131ca1e 2.252KiB
      quay.io/olmqe/etcd-index sha256:c66c683f6df7971589dd1dd680dadbb8f04f3d993bbaaf355d73242730d2038a 2.321MiB
      quay.io/olmqe/etcd-index sha256:29291e31a76a7e560b9b7ad3cada56e8c18d50a96cca8a2573e4f4689d7aca77 2.683MiB
      quay.io/olmqe/etcd-index sha256:c4b1af403512539442e7af9cdc9918a210ecbb2138c617072da0994fc395d95a 3.602MiB
      quay.io/olmqe/etcd-index sha256:8a7cdc1b5153967d489fc2450a6f37d6a5d94a46c0f79863eb68fc3602008227 15.41MiB
    manifests:
      sha256:0258116849868880fd562a68c04ba7c3e7de9a0ad4476e332f3c0beb5fd75447 -> v3
  openshifttest/etcd-bundle
    blobs:
      quay.io/openshifttest/etcd-bundle sha256:d3a8e42f8e0dfb54d66dc78deeb0c1df7ee3fc8002545ac990476cce610096f0 283B
      quay.io/openshifttest/etcd-bundle sha256:22674ebc2791ed72bbef952fe9ba25e6a5c2953c96022f2435ce9c4ee2f2581c 2.114KiB
      quay.io/openshifttest/etcd-bundle sha256:e053c7d1c446c0e986106082eaddd8798e85aaaa6114b85df618528cc41d0e8d 8.52KiB
    manifests:
      sha256:676a4bd8c57c30615be5778a3dec9dc2e78e74f774a456de4e0a71ae882e269d -> 0.9.4
  stats: shared=0 unique=10 size=24.03MiB ratio=1.00

phase 0:
  localhost:5000 openshifttest/etcd-bundle blobs=3 mounts=0 manifests=1 shared=0
  localhost:5000 olmqe/etcd-index          blobs=7 mounts=0 manifests=1 shared=0

info: Planning completed in 830ms
error: unable to upload blob sha256:29291e31a76a7e560b9b7ad3cada56e8c18d50a96cca8a2573e4f4689d7aca77 to localhost:5000/olmqe/etcd-index: Get "https://localhost:5000/v2/": x509: certificate relies on legacy Common Name field, use SANs instead
error: unable to upload blob sha256:c66c683f6df7971589dd1dd680dadbb8f04f3d993bbaaf355d73242730d2038a to localhost:5000/olmqe/etcd-index: Get "https://localhost:5000/v2/": x509: certificate relies on legacy Common Name field, use SANs instead
error: unable to push quay.io/olmqe/etcd-index: failed to upload blob sha256:f254a54481e419dc0f67364fca0f78289f0a52490e96d62255afdfad394d70cd: Get "https://localhost:5000/v2/": x509: certificate relies on legacy Common Name field, use SANs instead
error: unable to upload blob sha256:8a7cdc1b5153967d489fc2450a6f37d6a5d94a46c0f79863eb68fc3602008227 to localhost:5000/olmqe/etcd-index: Get "https://localhost:5000/v2/": x509: certificate relies on legacy Common Name field, use SANs instead
error: unable to upload blob sha256:c4b1af403512539442e7af9cdc9918a210ecbb2138c617072da0994fc395d95a to localhost:5000/olmqe/etcd-index: Get "https://localhost:5000/v2/": x509: certificate relies on legacy Common Name field, use SANs instead
error: unable to push quay.io/openshifttest/etcd-bundle: failed to upload blob sha256:22674ebc2791ed72bbef952fe9ba25e6a5c2953c96022f2435ce9c4ee2f2581c: Get "https://localhost:5000/v2/": x509: certificate relies on legacy Common Name field, use SANs instead
error: unable to push quay.io/olmqe/etcd-index: failed to upload blob sha256:af64ecfdcb9496edc7b7badbe3028973175f071b6c31aa691fdf11aebf532402: Get "https://localhost:5000/v2/": x509: certificate relies on legacy Common Name field, use SANs instead
error: unable to push quay.io/olmqe/etcd-index: failed to upload blob sha256:20c97716667af926e52cf0b62daa5bee4f8b98fe243bfc1b381fc9eba131ca1e: Get "https://localhost:5000/v2/": x509: certificate relies on legacy Common Name field, use SANs instead
error: unable to push manifest to localhost:5000/olmqe/etcd-index:v3: Get "https://localhost:5000/v2/": x509: certificate relies on legacy Common Name field, use SANs instead
error: unable to push quay.io/openshifttest/etcd-bundle: failed to upload blob sha256:d3a8e42f8e0dfb54d66dc78deeb0c1df7ee3fc8002545ac990476cce610096f0: Get "https://localhost:5000/v2/": x509: certificate relies on legacy Common Name field, use SANs instead
error: unable to push quay.io/openshifttest/etcd-bundle: failed to upload blob sha256:e053c7d1c446c0e986106082eaddd8798e85aaaa6114b85df618528cc41d0e8d: Get "https://localhost:5000/v2/": x509: certificate relies on legacy Common Name field, use SANs instead
error: unable to push manifest to localhost:5000/openshifttest/etcd-bundle:0.9.4: Get "https://localhost:5000/v2/": x509: certificate relies on legacy Common Name field, use SANs instead
info: Mirroring completed in 190ms (0B/s)
errors during mirroring. the full contents of the catalog may not have been mirrored: mirroring failed: error mirroring image: one or more errors occurred
no digest mapping available for quay.io/openshifttest/etcd-bundle:0.9.4, skip writing to ImageContentSourcePolicy
no digest mapping available for quay.io/olmqe/etcd-index:v3, skip writing to ImageContentSourcePolicy
wrote mirroring manifests to manifests-etcd-index-1655349662
deleted dir /tmp/1359854203

The status return code is 0.
[cloud-user@preserve-olm-env2 cluster-bot]$ echo $?
0

4, mirror the wrong image with the `--continue-on-error=false` option.

[cloud-user@preserve-olm-env2 cluster-bot]$ ./oc adm catalog mirror quay.io/olmqe/etcd-index:v3 localhost:5000 --continue-on-error=false
W0616 11:22:05.271470 1448587 helpers.go:151] Defaulting of registry auth file to "${HOME}/.docker/config.json" is deprecated. The default will be switched to podman config locations in the future version.
src image has index label for declarative configs path: /configs/
using index path mapping: /configs/:/tmp/3008113856
W0616 11:22:06.501039 1448587 helpers.go:151] Defaulting of registry auth file to "${HOME}/.docker/config.json" is deprecated. The default will be switched to podman config locations in the future version.
wrote declarative configs to /tmp/3008113856
using declarative configs at: /tmp/3008113856
W0616 11:22:08.647081 1448587 helpers.go:151] Defaulting of registry auth file to "${HOME}/.docker/config.json" is deprecated. The default will be switched to podman config locations in the future version.
localhost:5000/
  olmqe/etcd-index
    blobs:
      quay.io/olmqe/etcd-index sha256:f254a54481e419dc0f67364fca0f78289f0a52490e96d62255afdfad394d70cd 159B
      quay.io/olmqe/etcd-index sha256:af64ecfdcb9496edc7b7badbe3028973175f071b6c31aa691fdf11aebf532402 394B
      quay.io/olmqe/etcd-index sha256:20c97716667af926e52cf0b62daa5bee4f8b98fe243bfc1b381fc9eba131ca1e 2.252KiB
      quay.io/olmqe/etcd-index sha256:c66c683f6df7971589dd1dd680dadbb8f04f3d993bbaaf355d73242730d2038a 2.321MiB
      quay.io/olmqe/etcd-index sha256:29291e31a76a7e560b9b7ad3cada56e8c18d50a96cca8a2573e4f4689d7aca77 2.683MiB
      quay.io/olmqe/etcd-index sha256:c4b1af403512539442e7af9cdc9918a210ecbb2138c617072da0994fc395d95a 3.602MiB
      quay.io/olmqe/etcd-index sha256:8a7cdc1b5153967d489fc2450a6f37d6a5d94a46c0f79863eb68fc3602008227 15.41MiB
    manifests:
      sha256:0258116849868880fd562a68c04ba7c3e7de9a0ad4476e332f3c0beb5fd75447 -> v3
  openshifttest/etcd-bundle
    blobs:
      quay.io/openshifttest/etcd-bundle sha256:d3a8e42f8e0dfb54d66dc78deeb0c1df7ee3fc8002545ac990476cce610096f0 283B
      quay.io/openshifttest/etcd-bundle sha256:22674ebc2791ed72bbef952fe9ba25e6a5c2953c96022f2435ce9c4ee2f2581c 2.114KiB
      quay.io/openshifttest/etcd-bundle sha256:e053c7d1c446c0e986106082eaddd8798e85aaaa6114b85df618528cc41d0e8d 8.52KiB
    manifests:
      sha256:676a4bd8c57c30615be5778a3dec9dc2e78e74f774a456de4e0a71ae882e269d -> 0.9.4
  stats: shared=0 unique=10 size=24.03MiB ratio=1.00

phase 0:
  localhost:5000 olmqe/etcd-index          blobs=7 mounts=0 manifests=1 shared=0
  localhost:5000 openshifttest/etcd-bundle blobs=3 mounts=0 manifests=1 shared=0

info: Planning completed in 820ms
error: unable to upload blob sha256:c66c683f6df7971589dd1dd680dadbb8f04f3d993bbaaf355d73242730d2038a to localhost:5000/olmqe/etcd-index: Get "https://localhost:5000/v2/": x509: certificate relies on legacy Common Name field, use SANs instead
error: unable to upload blob sha256:8a7cdc1b5153967d489fc2450a6f37d6a5d94a46c0f79863eb68fc3602008227 to localhost:5000/olmqe/etcd-index: Get "https://localhost:5000/v2/": x509: certificate relies on legacy Common Name field, use SANs instead
error: unable to upload blob sha256:29291e31a76a7e560b9b7ad3cada56e8c18d50a96cca8a2573e4f4689d7aca77 to localhost:5000/olmqe/etcd-index: Get "https://localhost:5000/v2/": x509: certificate relies on legacy Common Name field, use SANs instead
error: unable to upload blob sha256:c4b1af403512539442e7af9cdc9918a210ecbb2138c617072da0994fc395d95a to localhost:5000/olmqe/etcd-index: Get "https://localhost:5000/v2/": x509: certificate relies on legacy Common Name field, use SANs instead
error: unable to push quay.io/olmqe/etcd-index: failed to upload blob sha256:af64ecfdcb9496edc7b7badbe3028973175f071b6c31aa691fdf11aebf532402: Get "https://localhost:5000/v2/": x509: certificate relies on legacy Common Name field, use SANs instead
error: unable to push quay.io/olmqe/etcd-index: failed to upload blob sha256:f254a54481e419dc0f67364fca0f78289f0a52490e96d62255afdfad394d70cd: Get "https://localhost:5000/v2/": x509: certificate relies on legacy Common Name field, use SANs instead
error: unable to push quay.io/olmqe/etcd-index: failed to upload blob sha256:20c97716667af926e52cf0b62daa5bee4f8b98fe243bfc1b381fc9eba131ca1e: Get "https://localhost:5000/v2/": x509: certificate relies on legacy Common Name field, use SANs instead
error: unable to push quay.io/openshifttest/etcd-bundle: failed to upload blob sha256:22674ebc2791ed72bbef952fe9ba25e6a5c2953c96022f2435ce9c4ee2f2581c: Get "https://localhost:5000/v2/": x509: certificate relies on legacy Common Name field, use SANs instead
error: unable to push quay.io/openshifttest/etcd-bundle: failed to upload blob sha256:d3a8e42f8e0dfb54d66dc78deeb0c1df7ee3fc8002545ac990476cce610096f0: Get "https://localhost:5000/v2/": x509: certificate relies on legacy Common Name field, use SANs instead
error: unable to push quay.io/openshifttest/etcd-bundle: failed to upload blob sha256:e053c7d1c446c0e986106082eaddd8798e85aaaa6114b85df618528cc41d0e8d: Get "https://localhost:5000/v2/": x509: certificate relies on legacy Common Name field, use SANs instead
info: Mirroring completed in 200ms (0B/s)
deleted dir /tmp/3008113856
error: errors during mirroring. the full contents of the catalog may not have been mirrored: mirroring failed: error mirroring image: one or more errors occurred while uploading images

The status return code is 1.
[cloud-user@preserve-olm-env2 cluster-bot]$ echo $?
1

LGTM, verify it.

Comment 10 errata-xmlrpc 2022-06-28 11:50:55 UTC
Since the problem described in this bug report should be
resolved in a recent advisory, it has been closed with a
resolution of ERRATA.

For information on the advisory (OpenShift Container Platform 4.10.20 bug fix update), and where to find the updated
files, follow the link below.

If the solution does not work for you, open a new bug report.

https://access.redhat.com/errata/RHBA-2022:5172


Note You need to log in before you can comment on or make changes to this bug.