Description of problem: "Bug 1313502" should NOT be an RFE but is a regression bug (the reason why we open this bugzilla). Docker image upload can previously be done in Sat6.0 / Sat6.1. Per YouTube video link, it is possible to upload docker image in Sat6.0/6.1 https://youtu.be/iRXEssalziI?t=402 at around the 7 minute , it is possible to do a docker save and a hammer upload. But tested in Sat6.2.14 and Sat6.3/6.3.1, it is no longer working (customer is at Sat6.3.1) Version-Release number of selected component (if applicable): 6.3 How reproducible: Always 1) Satellite GUI > Content > Product > Create Product "containers" Create Repositories "rhel" Content Type "docker" Registry url "https://registry.access.redhat.com" Sync Now 2) Content > Docker Tag > rhel:latest > LifeCycle Environment > Publish At > Copy "my.satellite.com:5000/redhat-dev-containers-containers-rhel:latest" 3) In host # docker pull my.satellite.com:5000/redhat-dev-containers-containers-rhel:latest # docker images # docker run --name my_rhel -it my.satellite.com:5000/redhat-dev-containers-containers-rhel /bin/bash # docker container attach my_rhel # yum install httpd # exit # docker save -o my_httpd_rhel.tar my.satellite.com:5000/redhat-dev-containers-containers-rhel:latest Now upload the custom image "my_httpd_rhel.tar" using hammer CLI. Actual results: # hammer repository upload-content --product 'containers' --organization 'REDHAT' --name 'rhel-custom' --path /root/my_httpd_rhel.tar Failed to upload file '' to repository. Please check the file and try again. Could not upload the content: Error: repository not found If I create repository 'rhel-custom' in Satellite and try to upload, it gives error: # hammer repository upload-content --product 'containers' --organization 'REDHAT' --name 'rhel-custom' --path /root/my_httpd_rhel.tar Failed to upload file 'my_httpd_rhel.tar' to repository. Please check the file and try again Expected results: "my_httpd_rhel.tar" should be uploaded in product "containers" as content type "docker" and should list tags successfully. More info: The docker image upload task failed with the following exception: ------------- traceback: | Traceback (most recent call last): File "/usr/lib/python2.7/site-packages/celery/app/trace.py", line 240, in trace_task R = retval = fun(*args, **kwargs) File "/usr/lib/python2.7/site-packages/pulp/server/async/tasks.py", line 527, in __call__ return super(Task, self).__call__(*args, **kwargs) File "/usr/lib/python2.7/site-packages/pulp/server/async/tasks.py", line 107, in __call__ return super(PulpTask, self).__call__(*args, **kwargs) File "/usr/lib/python2.7/site-packages/celery/app/trace.py", line 438, in __protected_call__ return self.run(*args, **kwargs) File "/usr/lib/python2.7/site-packages/pulp/server/managers/content/upload.py", line 223, in import_uploaded_unit unit_type=unit_type_id, summary=result['summary'], details=result['details'] PulpCodedException: The importer docker_importer indicated a failed response when uploading docker_manifest unit to repository test_puppet-my_docker. spawned_tasks: [] progress_report: {} ------------ The fail reason is katello passed the wrong unit type id("docker_manifest") to the pulp api. The "docker_image" unit type id should be used. /opt/theforeman/tfm/root/usr/share/gems/gems/katello-3.4.5.58/app/lib/actions/katello/repository/import_upload.rb ------------- sequence do concurrence do upload_ids.zip(unit_keys) do |upload_id, unit_key| import_upload = plan_action(Pulp::Repository::ImportUpload, pulp_id: repository.pulp_id, unit_type_id: repository.unit_type_id, <======== HERE unit_key: unit_key, upload_id: upload_id) ------------- The "hammer repository upload-content" command run successfully after changing the unit_type_id to "docker_image". But the docker image unit doesn't show in the Satellite WEBUI. Only docker_manifest and docker_tag can be seen from the WEBUI.
@jalviso the video shows the upload of a v1 image. from Sat 6.2 v2 registry is supported. By doing docker pull my.satellite.com:5000/redhat-dev-containers-containers-rhel:latest you are pulling a v2 image. With introduction of v2 api the registry image is different from `docker save` format. In order to be able to upload v2 content the output of skopeo copy command should be uploaded What you see in GUI docker_manifest and docker_tag - both are related to v2 content concepts.
The Satellite Team is attempting to provide an accurate backlog of bugzilla requests which we feel will be resolved in the next few releases. We do not believe this bugzilla will meet that criteria, and have plans to close it out in 1 month. This is not a reflection on the validity of the request, but a reflection of the many priorities for the product. If you have any concerns about this, feel free to contact Red Hat Technical Support or your account team. If we do not hear from you, we will close this bug out. Thank you.
Thank you for your interest in Satellite 6. We have evaluated this request, and while we recognize that it is a valid request, we do not expect this to be implemented in the product in the foreseeable future. This is due to other priorities for the product, and not a reflection on the request itself. We are therefore closing this out as WONTFIX. If you have any concerns about this, please do not reopen. Instead, feel free to contact Red Hat Technical Support. Thank you.