The utility for building of AlmaLinux distributions (repos, ISO images).
5395af416c
New `buildinstall.metadata` file is created once the buildinstall phase is done. This file contains: - list of lorax command line arguments. - list of RPMs installed in the buildinstall buildroot. - list of RPMs installed in the resulting boot.iso. This file is checked in the next compose run to find out if the result of buildinstall phase from the previous compose can be reused. Following is checked: - lorax commandline arguments are the same (except of expected differences). - The NVRAs of RPMs in the runroot_tag are the same as the ones installed in the old buildinstall buildroot. - The NVRAs of RPMs installed in the boot.iso are the same as the ones in package sets in the current compose. By its implementation, this reuse strategy is used only if pungi_buildinstall Koji plugin is used. Signed-off-by: Jan Kaluza <jkaluza@redhat.com> Add tests for buildinstall reuse and buildinstall_allow_reuse option. Signed-off-by: Jan Kaluza <jkaluza@redhat.com> |
||
---|---|---|
contrib/yum-dnf-compare | ||
doc | ||
pungi | ||
pungi_utils | ||
share | ||
tests | ||
.gitignore | ||
AUTHORS | ||
COPYING | ||
git-changelog | ||
GPL | ||
Makefile | ||
MANIFEST.in | ||
pungi.spec | ||
README.md | ||
setup.py | ||
TODO | ||
tox.ini |
Pungi
Pungi is a distribution compose tool.
Composes are release snapshots that contain release deliverables such as:
- installation trees
- RPMs
- repodata
- comps
- (bootable) ISOs
- kickstart trees
- anaconda images
- images for PXE boot
Tool overview
Pungi consists of multiple separate executables backed by a common library.
The main entry-point is the pungi-koji
script. It loads the compose
configuration and kicks off the process. Composing itself is done in phases.
Each phase is responsible for generating some artifacts on disk and updating
the compose
object that is threaded through all the phases.
Pungi itself does not actually do that much. Most of the actual work is delegated to separate executables. Pungi just makes sure that all the commands are invoked in the appropriate order and with correct arguments. It also moves the artifacts to correct locations.
Links
- Documentation: https://docs.pagure.org/pungi/
- Upstream GIT: https://pagure.io/pungi/
- Issue tracker: https://pagure.io/pungi/issues
- Questions can be asked on #fedora-releng IRC channel on FreeNode