We are trying to automate our Pulp3 setup the same way as our Pulp2 setup. 

We have the following use cases in our Pulp2 setup: 

a) We create mirrors and repositories automatically for every environment 
(using puppet and the API). The repositories are defined in a yaml 
configuration file (Puppet Hiera). 
- We have several problems for doing this in Pulp3. It's very complex to 
automatically create mirrors (ex. centos-8-appstream) for the development 
environment (that are in sync with the upstream repositories). A possible 
solution for this problem would be to add a 'latest' flag to publications and 
distributions so that they are always pointing to the latest version of the 
repository. 
- It is possible to create the repositories with scripts, but that's specific 
and quite hacky. It's also not possible to automatically update the 
publications and distributions this way. We would need to keep a local copy of 
what distribution maps to what repository, but that's not a good idea. Why keep 
a local copy of the mapping if that's present in pulp. 
b) We upload packages from one repository (that is not served to clients) to 
another repository based on lists in yaml (cherry picking), or straight from a 
(jenkins) Pipeline. This is done by the pulp-admin commands. 
- cherry picking could be done by copying content from one repository to 
another using the copy API call, but we want to automatically expose those 
changes to the development environment (promotion can be done as in c). 
- Uploading content isn't an issue because this is possible by converting the 
pulp-admin commands to api calls. 
c) We want to be able to 'promote' a set of repositories from one environment 
to another. We are using a script that is generated by puppet when creating the 
repositories in a). 
For 'promoting' a set of repositories to one environment to another 
environment, this is explained 
https://docs.pulpproject.org/pulpcore/workflows/promotion.html. 

Thanks for all the work 

Maarten 
_______________________________________________
Pulp-list mailing list
Pulp-list@redhat.com
https://www.redhat.com/mailman/listinfo/pulp-list

Reply via email to