Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

1. The ISO build process MUST distribute modular RPMs in “slim” subsets of their original module streams.

The alternatives are to include the entire modular repository (too big) or not ship dependencies (ISO is no longer self-sufficient)

  1. In order to maintain seamless interoperability, each “slim” modular stream subset MUST use the same name + stream + version + context + architecture (N:S:V:C:A) as their upstream sources

  2. If feasible, the “slimming” process SHOULD be generalized enough to apply to packages from external sources like epel-modular AND the base OS’s DVD AppStream/ repository.

Alternatives considered were to include the entire modular repository (too big) or not ship modular dependencies (ISO + download server would no be longer self-contained).

2. The old createrepo command MUST NEVER be run on a modular repository

...

  1. Status
    colourPurple
    titleTODO
    The ISO’s modular repositories MUST be built with modularity-aware tools, like createrepo_c or createrepo_mod from modulemd-tools.

  2. Local SIMP tooling MUST be changed to NEVER use createrepo to manage modular repositories:

...

  1. on modular repositories.

3. Modular repos' modulemd metadata MUST remain intact when mirrored or rebuilt.

  1. Modular repos MUST NOT be mirrored or rebuilt without it

  2. The modulemd metadata will always be necessary in order to install these repos' modular packages—and once lost it cannot be recreated from their RPMs (unlike standard RPMs).

  3. Status
    colourPurple
    titleTODO
    Local SIMP tooling that mirrors modular repositories MUST preserve modulemd metadata (e.g., dnf reposync --download-metadata)

The “Slim” subset repos are of particular concern, since SIMP tooling is guaranteed to encounter them.

https://simp-project.atlassian.net/browse/SIMP-9640

  • UpdateOsYumRepositoriesAction#apply() in simp config

  • https://simp-project.atlassian.net/browse/SIMP-9638

  • The update_yum_repo() method in unpack_dvd

  • https://simp-project.atlassian.net/browse/SIMP-9641

  • In the tmpdir recpos/base/ and repos/lookside/ while setting up in rake pkg:repoclosure

  • Info

    Places where (pre-6.6.0) tooling uses createrepo:

    • At least two sections of the ISO’s ks auto.cfg in simp-core (EL8 only; not yet created)

    Jira Legacy
    serverSystem JIRA
    columnskey,summary,type,created,updated,due,assignee,reporter,priority,status,resolution
    serverId45e63be1-2551-37a6-b050-86a38172f71d
    key
    Jira Legacy
    serverSystem JIRA
    columnskey,summary,type,created,updated,due,assignee,reporter,priority,status,resolution
    serverId45e63be1-2551-37a6-b050-86a38172f71d
    key
    Jira Legacy
    serverSystem JIRA
    columnskey,summary,type,created,updated,due,assignee,reporter,priority,status,resolution
    serverId45e63be1-2551-37a6-b050-86a38172f71d
    key
    Jira Legacy
    serverSystem JIRA
    columnskey,summary,type,created,updated,due,assignee,reporter,priority,status,resolution
    serverId45e63be1-2551-37a6-b050-86a38172f71d
    keySIMP-8614
    Jira Legacy
    serverSystem JIRA
    columnskey,summary,type,created,updated,due,assignee,reporter,priority,status,resolution
    serverId45e63be1-2551-37a6-b050-86a38172f71d
    keySIMP-9642

    3. “Slim” subset repos' modulemd metadata MUST remain intact when mirrored or rebuilt.

    ...

    The modular repos MUST NOT be mirrored or rebuilt without it

    ...

    The modulemd metadata will always be necessary in order to install these repos' modular packages—and once lost it cannot be recreated from their RPMs (unlike standard RPMs).

    Status
    colourPurple
    titleTODO

    ...