konflux-ci / rpm-lockfile-prototype

GNU General Public License v3.0
3 stars 10 forks source link

Make it possible to install modules #57

Closed lubomir closed 1 month ago

lubomir commented 1 month ago

This PR adds ability to include modules in the packages section, which will install them (i.e. install all RPMs listed in the default profile for the module stream, the equivalent of dnf module install …). A new top level key moduleEnable can specify which modules should be enabled (i.e. packages made available for installation, but nothing gets installed directly; the equivalent of dnf module enable …).

Enabled modules need to be combined with listing the desired packages in the packages section.

Here's an example. Imagine three module streams providing some package:

The latest stream is configured as default.

If the input file contains packages: ["foo"], the lockfile will end up with version 3.0, since that's the default. By adding moduleEnable: ["m:1.0"] (or 2.0), you can tell resolve the lockfile for a different version.