Project

Profile

Help

Story #1543

As a user, I would like incremental export to be the same format as full export

Added by cduryee about 6 years ago. Updated almost 3 years ago.

Status:
CLOSED - CURRENTRELEASE
Priority:
Normal
Assignee:
Sprint/Milestone:
-
Start date:
Due date:
% Done:

100%

Estimated time:
Platform Release:
2.9.0
Groomed:
No
Sprint Candidate:
No
Tags:
Pulp 2
Sprint:
Quarter:

Description

Currently, incremental export of a yum repo creates a series of RPM files plus JSON files. This requires users to upload the new units instead of using the existing sync functionality.

As a user, I would prefer if incremental export just created a "regular" yum repo with the updated files. This would allow me to rely on plain old sync (with config override to keep old files) to import updates instead of having a different workflow for incrementals.

NOTE: I already have code to treat incremental differently for the time being, so please let myself or someone else on Katello team know when this changes :)

Associated revisions

Revision 481d40c6 View on GitHub
Added by cduryee over 5 years ago

Allow for new incremental_export_repomd exporter distributor config option (#854)

Previously, incremental exports were in a custom format where each erratum and RPM were written to disk, along with a set of JSON files with unit metadata. This required special handling of incremental imports that was significantly different a "regular" repo sync.

This patch adds a new incremental_export_repomd distributor option. When this is set, the incremental repo export generates metadata so that the on-disk files can be synced via the typical yum sync process. Note that you would not want to remove old units when doing this, since it would remove any units not in the incremental :koala:.

This patch also disables the repomd revision optimization if the feed URL is overriden, which allows the following sequence to work:

  • sync from upstream URL at midnight
  • upstream repo gets updated at 1am
  • sync an incremental at 2am
  • sync from upstream URL at 3am

Without disabling the optimization, the last sync wouldn't pick up the changes. Disabling the optimization on feed URL overriding also allows recovery in this sequence:

  • sync from upstream URL
  • sync incremental with remove_missing set. Oops!

When the optimization is disabled via feed overide, you can simply re-sync from the upstream URL to fix this :cat2:.

Fixes #1543 https://pulp.plan.io/issues/1543

History

#1 Updated by jortel@redhat.com about 6 years ago

  • Tracker changed from Issue to Story
  • Groomed set to No
  • Sprint Candidate set to No

#2 Updated by ttereshc over 5 years ago

  • Status changed from NEW to POST
  • Assignee set to cduryee
  • Platform Release set to 2.9.0

#4 Updated by cduryee over 5 years ago

  • Status changed from POST to MODIFIED
  • % Done changed from 0 to 100

#7 Updated by semyers over 5 years ago

  • Status changed from MODIFIED to CLOSED - CURRENTRELEASE

#8 Updated by bmbouter almost 3 years ago

  • Tags Pulp 2 added

Also available in: Atom PDF