Missing docs on importing RPM repository module metadata
Example of the repo with module metadata.
This is a yaml file which should be treated by Pulp as non-specific metadata file - yum_repo_metadata_file.
More advanced support for this metadata type is a part of the story #3206.
Findings¶I conducted manual testing of Modularity contnet.
My set up was as follows:
- Fedora26 hosting a development deployment of Pulp 2.15.1 & Pulp_rpm 2.15
- Fedora28 consumer node, SSL validation switched off
- a Fedora27 modularity repository (by accident)
Both the systems were running inside Docker.
Pulp is able to sync modularity content, triggering manually.
I was able to create a rpm repository, feeding on the Fedora27 modularity repository manually.
I was able to copy a repository containing modularity content to a custom repository.
The modularity metadata gets copied automatically, in case of no filter applied (the
The modularity metadata gets copied in case of filtering, if the filter specified includes the
yum_repo_metadata_file (REST API case) or the
metafile in case of the Pulp admin CLI.
I was able to successfully install a
nodejs:6 module from the custom copied repository, on the Fedora28 client, following the dnf usecase instructions
On demand Sync¶
The on-demand sync worked; the modularity metadata is downloaded immediately, as expected, and gets published OK.
I was able to install content from a module of an
on_demand repo too.
The upstream has decided to remove the F27 modularity tree so our testing data is gone. I've exported the repo I got for testing purposes, but it's a bit big (2.1G). I can share though.
They've got a rel-eng ticket tracking the modularity content handling progress.
The tool to create modularity content repos seems to be Pungi so we might still be able to create our own testing content later for Fixtures.
Due to the fact the modularity metadata isn't processed by Pulp yet (just copied) a consumer can observe discrepancies between modules available and content missing; this happened having copied just the metadata without any actual content:
sh-4.3# dnf module list --repo pulp2.dev_pulp_repos_mod_broken Last metadata expiration check: 0:00:26 ago on Fri Feb 23 15:52:11 2018. created by dnf config-manager from https://pulp2.dev/pulp/repos/mod_broken Name Stream Version Profiles fonts f27 20171027091706 default, everything freeipa master 20171030164651 default installer f27 20171030201659 default nodejs 6 20171107132706 default, development, ... perl 5.26 20171027072720 default, minimal platform f27 20171028113024 buildroot, srpm-buildroot python2-ecosystem master 20171030225722 Hint: [d]efault, [e]nabled, [i]nstalled, [l]ocked sh-4.3# dnf module enable --repo pulp2.dev_pulp_repos_mod_broken nodejs:6 Last metadata expiration check: 0:01:08 ago on Fri Feb 23 15:52:11 2018. 'nodejs:6' is enabled sh-4.3# dnf --disablerepo='*' --enablerepo=pulp2.dev_pulp_repos_mod_broken install nodejs Last metadata expiration check: 0:01:47 ago on Fri Feb 23 15:52:11 2018. No match for argument: nodejs Error: Unable to find a match sh-4.3#
- Tracker changed from Story to Issue
- Subject changed from As a user, I can import RPM repository module metadata to Missing docs on importing RPM repository module metadata
- Severity set to 2. Medium
- Triaged set to No
Switching to issue since code wasn't added and only issues can go into a z-stream release.
Please register to edit this issue