mNo edit summary |
(changing a default profile requires a fedora change) |
||
Line 62: | Line 62: | ||
==== Overview ==== | ==== Overview ==== | ||
Setting or changing a '''default stream''' of a module is in most cases similar to changing a major version of a package. An exception to this is setting a default stream of a new module which does not replace any packages in the base. Setting or changing the default stream requires a [[Changes/Policy|Fedora Change]] request when, and is only allowed in between Fedora releases | Setting or changing a '''default stream''' or a '''default installation profile''' of a module is in most cases similar to changing a major version of a package. An exception to this is setting a default stream of a new module which does not replace any packages in the base. Setting or changing the default stream requires a [[Changes/Policy|Fedora Change]] request when, and is only allowed in between Fedora releases. | ||
==== What to do ==== | ==== What to do ==== | ||
Submit an issue to Fedora Releng in [https://pagure.io/releng/issues pagure.io/releng]. | Submit an issue to Fedora Releng in [https://pagure.io/releng/issues pagure.io/releng]. You also need to [[Changes/Policy#For_developers|submit a Fedora Change]] | ||
To check the current defaults, have a look at the [https://pagure.io/releng/fedora-module-defaults fedora module defaults repository]. | To check the current defaults, have a look at the [https://pagure.io/releng/fedora-module-defaults fedora module defaults repository]. |
Revision as of 14:37, 20 March 2018
This proposal describes the processes for:
- adding new modules (and packages that are part of these modules) to Fedora including dist-git repository requests and reviews
- managing default module streams in Fedora
The process
The process has four main steps:
new repositories --> build it --> add it to the release --> set / change the default
Step 1: new repositories
This step includes creating new repositories or branches in dist-git for both RPM packages and modules.
Overview
Packages should be handled the same way as they are now. That means:
- When adding a new package (creating a new dist-git repository), the package goes through the Package Review Process. This is to check the compliance with the Fedora Packaging Guidelines.
- When adding a new branch to an existing package, no formal review is necessary.
Repositories and branches for modules should not require any review. This is because:
- At this point, modules are not included in any release.
- Modules themselves do not provide any content. New content is provided by packages that need to pass a review.
Of course, to request any repositories in the dist-git, one needs to be a Fedora packager.
What to do
Packages: Follow the Package Review Process for Contributors.
Modules: TBD (either filing a ticket somewhere, or using the fedrepo-req tool)
Step 2: build it
Overview
This step is about submitting a module build to the Fedora infrastructure. The resulting binaries will not be included in any release in this step. Anyone who is a Fedora packager should be able to build modules they own. There is no review or approval at this point.
What to do
Use the fedpkg module-build command inside your local copy of the module dist-git repository.
Step 3: add it to the release
Overview
In order to make a module available to the end user, it needs to be released. Technically, this means including the module in a compose.
No review is done at this point, as all the software that is being added already passed the Package Review Process.
What to do
Currently, adding a module is done by submitting a PR to the pagure.io/pungi-fedora repository to include your module in the compose. This is defined in the variants-fedora.xml file. Search for the "<modules>" element.
In the near future, the process will change to be a bit more pleasant experience. New modules will be added as updates through Bodhi.
Step 4: set / change the default
Overview
Setting or changing a default stream or a default installation profile of a module is in most cases similar to changing a major version of a package. An exception to this is setting a default stream of a new module which does not replace any packages in the base. Setting or changing the default stream requires a Fedora Change request when, and is only allowed in between Fedora releases.
What to do
Submit an issue to Fedora Releng in pagure.io/releng. You also need to submit a Fedora Change
To check the current defaults, have a look at the fedora module defaults repository.