Jake Davis wrote:
Any suggestion about how best to implement retain_old_count for non-feed
repos? How is it done for feed repos? I tried searching the github repo
for "retain_old_count" but that didn't help me.

Hi Jake,

Apologies for taking so long in responding. I'm not personally the best person to ask about this, as I am not too familiar with our Yum Importer, but I'll take a guess at what it might be doing.

If I were tasked with writing something that did this with a feed, I would take note of any packages that I had in my repo that were not in the feed. Assuming that these packages are "old", I would consider them for removal. For any packages that are in the feed with a newer version than my now "missing" packages, I could simply use version comparison to determine which of my packages are the oldest, and remove all but the retain_old_count newer ones.

For reference, I did find the code that performs this operation in our pulp_rpm package[0].

Since you want to copy packages, you will have to use the REST API to simulate a similar behavior. Query the source repo for which packages are present and the destination repo for which packages are present. The differences will show you packages that have been removed from the source that are still present. Then you can use version comparison to figure out the order ranking of the missing packages, and apply a similar logic to remove as many as you wish.

Does that help?

[0] https://github.com/pulp/pulp_rpm/blob/master/plugins/pulp_rpm/plugins/importers/yum/purge.py#L24

--
Randy Barlow
Raleigh, NC, USA

_______________________________________________
Pulp-list mailing list
[email protected]
https://www.redhat.com/mailman/listinfo/pulp-list

Reply via email to