Description of problem: We're using Satellite 6.12.4.1 (Satellite + Capsule) to serve RHOSP content (rpms and containers). I've noticed that the capsule -clamps- the list of tags to 100 and the sonsequence is that this breaks 'openstack undercloud install' and the automation around it. Version-Release number of selected component (if applicable): 6.12.4.1 on RHEL8.8 How reproducible: 100% Steps to Reproduce: 1. Add RHOSP16 container repos to a satellite CV, promote and sync to the capsule. 2. List the container tags from the Satellite + Capsule. 3. All of the replies from the capsule are clamped to '100'. * Satellite: # skopeo list-tags docker://w0617ialabrhsat01.iaas.tdlab.ca:443/test-openstack-test_osp16-nfvi-evo-osp16-nfvi-evo-osp16-openstack-nova-api|grep '16\.[0-9]'|wc -l 102 # skopeo list-tags docker://w0617ialabrhsat01.iaas.tdlab.ca:443/test-openstack-test_osp16-nfvi-evo-osp16-nfvi-evo-osp16-openstack-nova-compute-ironic|grep '16\.[0-9]'|wc -l 112 * Capsule: # skopeo list-tags docker://satellite-capsule01.maas:443/test-openstack-test_osp16-nfvi-evo-osp16-nfvi-evo-osp16-openstack-nova-api|grep '16\.[0-9]'|wc -l 100 # skopeo list-tags docker://satellite-capsule01.maas:443/test-openstack-test_osp16-nfvi-evo-osp16-nfvi-evo-osp16-openstack-nova-compute-ironic|grep '16\.[0-9]'|wc -l 100
The issue here is on Capsules only. On Satellite, the results seem to be retrieved by Foreman from it's own DB. On a Capsule that doesn't exist so foreman-proxy asks Pulp to return the list. Once there the request for tags/list defines this `pagination_class = ContainerTagListPagination`, which just loops back to `api_settings.PAGE_SIZE:`, and we can find this in; ~~~ [root@capsule1 ~]# grep PAGE_SIZE /usr/lib/python3.9/site-packages/pulpcore/app/settings.py "PAGE_SIZE": 100, ~~~ You can see there Pulp defaults to returning 100 lines per page, and we need to increase that to get beyond this problem, at least temporarily.
The fix can likely be to introduce paging here: https://github.com/Katello/smart_proxy_container_gateway/blob/main/lib/smart_proxy_container_gateway/container_gateway_main.rb#L46
Created redmine issue https://projects.theforeman.org/issues/36616 from this bug
Upstream bug assigned to iballou
Verified in 6.14.0 snap 11 (with rubygem-smart_proxy_container_gateway-1.0.8-1.el8sat.noarch) Same steps like https://bugzilla.redhat.com/show_bug.cgi?id=2227902#c2, same result: [user@localhost ~]$ skopeo list-tags --tls-verify=false --username=admin --password=heslo docker://sat.redhat.com/default_organization-jetstack-jetstack_cert-manager-controller | grep '"' | wc -l 823 [user@localhost ~]$ skopeo list-tags --tls-verify=false --username=admin --password=heslo docker://caps.redhat.com/default_organization-jetstack-jetstack_cert-manager-controller | grep '"' | wc -l 823 [user@localhost ~]$ diff <(skopeo list-tags --tls-verify=false --username=admin --password=heslo docker://sat.redhat.com/default_organization-jetstack-jetstack_cert-manager-controller | sort) <(skopeo list-tags --tls-verify=false --username=admin --password=heslo docker://caps.redhat.com/default_organization-jetstack-jetstack_cert-manager-controller | sort) 608c608 < "Repository": "sat.redhat.com/default_organization-jetstack-jetstack_cert-manager-controller", --- > "Repository": "caps.redhat.com/default_organization-jetstack-jetstack_cert-manager-controller",