AlmaLinux modifications of the Fedora pungi package (autopatch config, helper scripts)
- Python 94.3%
- Shell 5.7%
|
|
||
|---|---|---|
| .forgejo/workflows | ||
| docs | ||
| files | ||
| scripts | ||
| src/autopatch_pungi | ||
| tests | ||
| .gitignore | ||
| config.yaml | ||
| pipeline.yaml | ||
| pyproject.toml | ||
| README.md | ||
| requirements-dev.txt | ||
| requirements.txt | ||
autopatch/pungi
AlmaLinux modifications for the Fedora pungi package.
- Code changes live on the patch-queue branches
alma/<Version>of almalinux/pungi: the upstream tagpungi-<Version>plus one commit per patch. - Spec changes live in
config.yamland are applied with autopatch-tool. files/changelog-alma.txtkeeps the AlmaLinux changelog history, which is merged into the Fedora changelog by date.
Helper scripts
scripts/local-build.sh <package-dir> <9|10> <out-dir>builds a dist-git style directory in an AlmaLinux container with the repositories ALBS uses for pungi.scripts/compare-spec.sh <spec-a> <spec-b> <9|10>compares the dependencies and metadata of two specs; exit status 0 means equivalent, 1 different (the diff is printed), 2 a spec could not be evaluated.
Scratch output goes to .work/, which is ignored by git.
Pipeline
autopatch-pungi (in src/autopatch_pungi/) keeps rpms/pungi in sync with the
Fedora package. The design is in the almalinux/pungi repository,
docs/superpowers/specs/2026-09-29-pungi-autopatch-design.md.
python3 -m venv --system-site-packages .venv
.venv/bin/pip install -r requirements-dev.txt -e .
.venv/bin/autopatch-pungi --dry-run run # everything, nothing is pushed
.venv/bin/autopatch-pungi --dry-run watch-upstream
In dry-run mode the forge calls (issues, PRs) are written to
.work/pipeline/forge.jsonl, and the package lands in .work/pipeline/package/.
The sync workflow runs daily, on manual dispatch, and on pushes to main. It needs:
- a Forgejo runner registered for this repository with the label
host, running in host mode withgit,python3, andpodmaninstalled; - the secret
BOT_TOKEN: an API token of the service user with write access toautopatch/pungiissues, thealma/*branches ofalmalinux/pungi, andrpms/pungi.
Settings are in pipeline.yaml; every field can be overridden with an environment
variable AUTOPATCH_<FIELD>.