Note: This bug is displayed in read-only format because the product is no longer active in Red Hat Bugzilla.
RHEL Engineering is moving the tracking of its product development work on RHEL 6 through RHEL 9 to Red Hat Jira (issues.redhat.com). If you're a Red Hat customer, please continue to file support cases via the Red Hat customer portal. If you're not, please head to the "RHEL project" in Red Hat Jira and file new tickets here. Individual Bugzilla bugs in the statuses "NEW", "ASSIGNED", and "POST" are being migrated throughout September 2023. Bugs of Red Hat partners with an assigned Engineering Partner Manager (EPM) are migrated in late September as per pre-agreed dates. Bugs against components "kernel", "kernel-rt", and "kpatch" are only migrated if still in "NEW" or "ASSIGNED". If you cannot log in to RH Jira, please consult article #7032570. That failing, please send an e-mail to the RH Jira admins at rh-issues@redhat.com to troubleshoot your issue as a user management inquiry. The email creates a ServiceNow ticket with Red Hat. Individual Bugzilla bugs that are migrated will be moved to status "CLOSED", resolution "MIGRATED", and set with "MigratedToJIRA" in "Keywords". The link to the successor Jira issue will be found under "Links", have a little "two-footprint" icon next to it, and direct you to the "RHEL project" in Red Hat Jira (issue links are of type "https://issues.redhat.com/browse/RHEL-XXXX", where "X" is a digit). This same link will be available in a blue banner at the top of the page informing you that that bug has been migrated.

Bug 1944266

Summary: [Edge] Edge Container Commits fail to push to Quay.io
Product: Red Hat Enterprise Linux 8 Reporter: Ben Breard <bbreard>
Component: osbuildAssignee: Christian Kellner <ckellner>
Status: CLOSED ERRATA QA Contact: Xiaofeng Wang <xiaofwan>
Severity: high Docs Contact:
Priority: unspecified    
Version: 8.4CC: akoutsou, atodorov, ckellner, leiwang, lmiksik, tgunders, xiaofwan, yih
Target Milestone: rcKeywords: Triaged
Target Release: ---Flags: pm-rhel: mirror+
Hardware: Unspecified   
OS: Unspecified   
Whiteboard:
Fixed In Version: osbuild-27.1-1.el8 Doc Type: If docs needed, set a value
Doc Text:
Story Points: ---
Clone Of:
: 1944843 (view as bug list) Environment:
Last Closed: 2021-05-18 15:44:03 UTC Type: Bug
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:
Bug Depends On:    
Bug Blocks: 1944843    

Description Ben Breard 2021-03-29 15:39:58 UTC
Description of problem:

Edge container commits work properly with podman and can be push/pulled from docker registries, but not quay.io

Version-Release number of selected component (if applicable):
8.4

$ rpm -qa |grep osbuild
osbuild-composer-worker-28.3-1.el8.x86_64
osbuild-composer-28.3-1.el8.x86_64
osbuild-selinux-27-1.el8.noarch
python3-osbuild-27-1.el8.noarch
osbuild-ostree-27-1.el8.noarch
osbuild-composer-core-28.3-1.el8.x86_64
osbuild-27-1.el8.noarch


How reproducible:
100%

Steps to Reproduce:
1. Create an edge container commit: composer-cli compose start-ostree [blueprint] rhel-edge-container 
2. composer-cli compose image [UUID]
3. skopeo copy oci-archive:[uuid]-rhel84-container.tar docker://quay.io/[account]/[repo]:latest

Actual results:

Getting image source signatures
Copying blob 74932a9691ac [--------------------------------------] 0.0b / 0.0b
Copying config 99a911abd1 [--------------------------------------] 0.0b / 358.0b
Writing manifest to image destination
Copying config 99a911abd1 [--------------------------------------] 0.0b / 358.0b
Writing manifest to image destination
FATA[0004] Uploading manifest failed, attempted the following formats: application/vnd.oci.image.manifest.v1+json(Error writing manifest "{\"schemaVersion\": 2, \"config\": {\"digest\": \"sha256:99a911abd1a4efc5308f4e2a6d45c1f1cdb633570304724d5bf4022fd4e10a35\", \"size\": 358, \"mediaType\": \"application/vnd.oci.image.config.v1+json\"}, \"layers\": [{\"digest\": \"sha256:74932a9691aca3dec1b55a0e3be93f5cd96f550b287504ab7b32ef3b44761584\", \"size\": 814126596, \"mediaType\": \"application/vnd.oci.image.layer.v1.tar+gzip\"}]}": Error uploading manifest latest to quay.io/mrguitar/edge-stage: manifest invalid: manifest invalid), application/vnd.docker.distribution.manifest.v2+json(Error writing manifest "{\"schemaVersion\":2,\"mediaType\":\"application/vnd.docker.distribution.manifest.v2+json\",\"config\":{\"mediaType\":\"application/vnd.docker.container.image.v1+json\",\"size\":358,\"digest\":\"sha256:99a911abd1a4efc5308f4e2a6d45c1f1cdb633570304724d5bf4022fd4e10a35\"},\"layers\":[{\"mediaType\":\"application/vnd.docker.image.rootfs.diff.tar.gzip\",\"size\":814126596,\"digest\":\"sha256:74932a9691aca3dec1b55a0e3be93f5cd96f550b287504ab7b32ef3b44761584\"}]}": Error uploading manifest latest to quay.io/mrguitar/edge-stage: unauthorized: access to the requested resource is not authorized), application/vnd.docker.distribution.manifest.v1+prettyjws(Error creating an updated image manifest: Cannot convert an image with 0 history entries to application/vnd.docker.distribution.manifest.v1+prettyjws), application/vnd.oci.image.index.v1+json(Error creating an updated image manifest: Unsupported conversion type: application/vnd.oci.image.index.v1+json), application/vnd.docker.distribution.manifest.list.v2+json(Error creating an updated image manifest: Unsupported conversion type: application/vnd.docker.distribution.manifest.list.v2+json), application/vnd.docker.distribution.manifest.v1+json(Error creating an updated image manifest: Cannot convert an image with 0 history entries to application/vnd.docker.distribution.manifest.v1+prettyjws) 


Expected results:

The container image should push/pull properly from Red Hat registry properties.

Additional info:
This might be an underlying issue in containers/image, however it appears very simple to work around in the mean time: https://github.com/osbuild/osbuild/pull/622

Comment 2 Christian Kellner 2021-03-29 17:42:08 UTC
I proposed a patch to make this our containers work with quay.io at https://github.com/osbuild/osbuild/pull/622

Comment 7 Xiaofeng Wang 2021-03-30 02:38:44 UTC
Verified on:

osbuild-selinux-27-1.20210329gita96eaf1.20210329gita96eaf1.el8.noarch
python3-osbuild-27-1.20210329gita96eaf1.20210329gita96eaf1.el8.noarch
osbuild-27-1.20210329gita96eaf1.20210329gita96eaf1.el8.noarch
osbuild-composer-core-28.3-1.el8.x86_64
osbuild-composer-28.3-1.el8.x86_64
osbuild-ostree-27-1.20210329gita96eaf1.20210329gita96eaf1.el8.noarch
osbuild-composer-worker-28.3-1.el8.x86_64

Upload to quay.io:

[cloud-user@new-rhel-8-4 ~]$ skopeo copy oci-archive:e4fa3a99-11f4-4035-971c-fbc58c49725c-rhel84-container.tar docker://quay.io/xiaofwan/rhel-edge:latest
Getting image source signatures
Copying blob c00a33b1e994 done
Copying config f4f290da2e done
Writing manifest to image destination
Copying config f4f290da2e [======================================] 471.0b / 471.0b
Writing manifest to image destination
Storing signatures

[cloud-user@new-rhel-8-4 ~]$ sudo podman pull quay.io/xiaofwan/rhel-edge:latest
Trying to pull quay.io/xiaofwan/rhel-edge:latest...
Getting image source signatures
Copying blob c00a33b1e994 done
Copying config f4f290da2e done
Writing manifest to image destination
Storing signatures
f4f290da2ecc190609189ea43003ba32d0f740f4a8e10219d5fa3c252481bd40

[cloud-user@new-rhel-8-4 ~]$ sudo podman images
REPOSITORY                                   TAG     IMAGE ID      CREATED         SIZE
quay.io/xiaofwan/rhel-edge                   latest  f4f290da2ecc  11 minutes ago  1.25 GB

Upload to docker.io

[cloud-user@new-rhel-8-4 ~]$ skopeo copy --dest-creds henrywangxf:hello112233 oci-archive:e4fa3a99-11f4-4035-971c-fbc58c49725c-rhel84-container.tar docker://docker.io/henrywangxf/rhel-edge:latest
Getting image source signatures
Copying blob c00a33b1e994 done
Copying config f4f290da2e done
Writing manifest to image destination
Storing signatures

[cloud-user@new-rhel-8-4 ~]$ sudo podman pull docker.io/henrywangxf/rhel-edge:latest
Trying to pull docker.io/henrywangxf/rhel-edge:latest...
Getting image source signatures
Copying blob c00a33b1e994 [--------------------------------------] 0.0b / 0.0b
Copying config f4f290da2e done
Writing manifest to image destination
Storing signatures
f4f290da2ecc190609189ea43003ba32d0f740f4a8e10219d5fa3c252481bd40

[cloud-user@new-rhel-8-4 ~]$ sudo podman images
REPOSITORY                                   TAG     IMAGE ID      CREATED         SIZE
docker.io/henrywangxf/rhel-edge              latest  f4f290da2ecc  16 minutes ago  1.25 GB
quay.io/xiaofwan/rhel-edge                   latest  f4f290da2ecc  16 minutes ago  1.25 GB

Comment 11 Alexander Todorov 2021-04-01 14:17:56 UTC
(In reply to Ben Breard from comment #0)
> Steps to Reproduce:
> 1. Create an edge container commit: composer-cli compose start-ostree
> [blueprint] rhel-edge-container 
> 2. composer-cli compose image [UUID]
> 3. skopeo copy oci-archive:[uuid]-rhel84-container.tar
> docker://quay.io/[account]/[repo]:latest

I am late to the party but isn't this supposed to be `podman push` or `docker push` ? FTR IDK what skopeo is.

Comment 13 Xiaofeng Wang 2021-04-02 05:02:11 UTC
Verified on
python3-osbuild-27.1-1.el8.noarch
osbuild-composer-worker-28.3-1.el8.x86_64
osbuild-27.1-1.el8.noarch
osbuild-composer-core-28.3-1.el8.x86_64
osbuild-composer-28.3-1.el8.x86_64
osbuild-ostree-27.1-1.el8.noarch
osbuild-selinux-27.1-1.el8.noarch

[cloud-user@new-rhel-8-4 ~]$ sudo composer-cli compose status
7e3aa505-1472-44a5-936c-23e122081310 FINISHED Thu Apr  1 23:35:48 2021 container       0.0.1 rhel-edge-container

[cloud-user@new-rhel-8-4 ~]$ sudo composer-cli compose image 7e3aa505-1472-44a5-936c-23e122081310
7e3aa505-1472-44a5-936c-23e122081310-rhel84-container.tar: 782.79 MB

[cloud-user@new-rhel-8-4 ~]$ skopeo copy oci-archive:7e3aa505-1472-44a5-936c-23e122081310-rhel84-container.tar docker://quay.io/xiaofwan/rhel-edge:latest
Getting image source signatures
Copying blob addaa19507ad done
Copying config 982d206d0f done
Writing manifest to image destination
Copying config 982d206d0f [======================================] 471.0b / 471.0b
Writing manifest to image destination
Storing signatures

[cloud-user@new-rhel-8-4 ~]$ skopeo copy --dest-creds henrywangxf:hello112233 oci-archive:7e3aa505-1472-44a5-936c-23e122081310-rhel84-container.tar docker://docker.io/henrywangxf/rhel-edge:latest
Getting image source signatures
Copying blob addaa19507ad done
Copying config 982d206d0f done
Writing manifest to image destination
Storing signatures

[cloud-user@new-rhel-8-4 ~]$ sudo podman pull quay.io/xiaofwan/rhel-edge:latest
Trying to pull quay.io/xiaofwan/rhel-edge:latest...
Getting image source signatures
Copying blob addaa19507ad done
Copying config 982d206d0f done
Writing manifest to image destination
Storing signatures
982d206d0f470e1ce0f1380309efa5c2d47857c6bb1bee3c81b8ee9210b08cfc

[cloud-user@new-rhel-8-4 ~]$ sudo podman pull docker://docker.io/henrywangxf/rhel-edge:latest
Trying to pull docker://docker.io/henrywangxf/rhel-edge:latest...
Getting image source signatures
Copying blob addaa19507ad [--------------------------------------] 0.0b / 0.0b
Copying config 982d206d0f done
Writing manifest to image destination
Storing signatures
982d206d0f470e1ce0f1380309efa5c2d47857c6bb1bee3c81b8ee9210b08cfc

[cloud-user@new-rhel-8-4 ~]$ sudo podman images
REPOSITORY                       TAG     IMAGE ID      CREATED         SIZE
docker.io/henrywangxf/rhel-edge  latest  982d206d0f47  14 minutes ago  1.26 GB
quay.io/xiaofwan/rhel-edge       latest  982d206d0f47  14 minutes ago  1.26 GB

[cloud-user@new-rhel-8-4 ~]$ sudo podman run -d --name rhel-edge --network host quay.io/xiaofwan/rhel-edge:latest
3c9a1ab24e94b5e41dadde305ee6351ea80317d75a142c09cc814292cd8c6db8

[cloud-user@new-rhel-8-4 ~]$ sudo podman ps -a
CONTAINER ID  IMAGE                              COMMAND               CREATED        STATUS            PORTS   NAMES
3c9a1ab24e94  quay.io/xiaofwan/rhel-edge:latest  httpd -D FOREGROU...  3 seconds ago  Up 3 seconds ago          rhel-edge

Comment 16 errata-xmlrpc 2021-05-18 15:44:03 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 (osbuild bug fix and enhancement 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-2021:1825