EPEL 9 Next setup

Outline

fedpkg-minimal bootstrap

  • koji tag-build epel9-next-override fedpkg-minimal-1.2.0-4.el8 build โœ“
  • fedpkg --release epel9-next build from rawhide checkout build โœ“
  • koji tag-build epel9-next-override fedpkg-minimal-1.2.0-4.el9.next โœ“
  • koji untag-build epel9-next-override fedpkg-minimal-1.2.0-4.el8 โœ“
  • request epel9-next branch for fedpkg-minimal (co-maintainer request) (optional)

release package

https://dl.fedoraproject.org/pub/epel/RPM-GPG-KEY-EPEL-9

koji tags

# main, base, and override tags
koji add-tag epel9
koji add-tag --arches "aarch64 ppc64le s390x x86_64" epel9-base
# no rhel9 repo yet
#koji add-external-repo --mode bare --tag epel9-base rhel9-base \
#    'https://infrastructure.fedoraproject.org/repo/rhel/rhel9/$arch/'
koji add-tag --parent epel9 epel9-override

# build tag
koji add-tag --arches "aarch64 ppc64le s390x x86_64" epel9-build
koji add-tag-inheritance --priority 10 epel9-build epel9-override
koji add-tag-inheritance --priority 20 epel9-build epel9-base
koji add-group epel9-build build
koji add-group-pkg epel9-build build \
    redhat-release \
    bash bzip2 coreutils cpio diffutils epel-release epel-rpm-macros \
    fedpkg-minimal findutils gawk glibc-minimal-langpack grep gzip info make \
    patch redhat-rpm-config rpm-build sed shadow-utils tar unzip util-linux \
    which xz
koji add-group epel9-build srpm-build
koji add-group-pkg epel9-build srpm-build \
    redhat-release \
    bash epel-release epel-rpm-macros fedpkg-minimal glibc-minimal-langpack \
    gnupg2 redhat-rpm-config rpm-build shadow-utils
koji regen-repo epel9-build

# other tags
koji add-tag --parent epel9                 epel9-pending
koji add-tag --parent epel9                 epel9-testing
koji add-tag --parent epel9                 epel9-testing-candidate
koji add-tag --parent epel9-testing         epel9-testing-pending
koji add-tag --parent epel9-testing-pending epel9-signing-pending

# targets
#koji add-target epel9           epel9-build epel9-testing-candidate
#koji add-target epel9-candidate epel9-build epel9-testing-candidate
# main, base, and override tags
koji add-tag epel9-next
koji add-tag --parent epel9 --arches "aarch64 ppc64le s390x x86_64" epel9-next-base
koji add-external-repo --mode bare --tag epel9-next-base c9s-buildroot \
    'https://infrastructure.fedoraproject.org/repo/centos/centos-9-stream/$arch/'
koji add-tag --parent epel9-next epel9-next-override

# build tag
koji add-tag --arches "aarch64 ppc64le s390x x86_64" epel9-next-build
koji add-tag-inheritance --priority 10 epel9-next-build epel9-next-override
koji add-tag-inheritance --priority 20 epel9-next-build epel9-next-base
koji edit-tag --extra rpm.macro.dist=.el9.next epel9-next-build
koji add-group epel9-next-build build
koji add-group-pkg epel9-next-build build \
    centos-stream-release \
    bash bzip2 coreutils cpio diffutils epel-release epel-rpm-macros \
    fedpkg-minimal findutils gawk glibc-minimal-langpack grep gzip info make \
    patch redhat-rpm-config rpm-build sed shadow-utils tar unzip util-linux \
    which xz
koji add-group epel9-next-build srpm-build
koji add-group-pkg epel9-next-build srpm-build \
    centos-stream-release \
    bash epel-release epel-rpm-macros fedpkg-minimal glibc-minimal-langpack \
    gnupg2 redhat-rpm-config rpm-build shadow-utils
koji regen-repo epel9-next-build

# other tags
koji add-tag --parent epel9-next                 epel9-next-pending
koji add-tag --parent epel9-next                 epel9-next-testing
koji add-tag --parent epel9-next                 epel9-next-testing-candidate
koji add-tag --parent epel9-next-testing         epel9-next-testing-pending
koji add-tag --parent epel9-next-testing-pending epel9-next-signing-pending

# targets
koji add-target epel9-next           epel9-next-build epel9-next-testing-candidate
koji add-target epel9-next-candidate epel9-next-build epel9-next-testing-candidate

Koji build groups

$ koji list-groups epel8-build
  build  [epel8-build]
    bash: None, mandatory  [epel8-build]
    bzip2: None, mandatory  [epel8-build]
    coreutils: None, mandatory  [epel8-build]
    cpio: None, mandatory  [epel8-build]
    diffutils: None, mandatory  [epel8-build]
    epel-release: None, mandatory  [epel8-build]
    epel-rpm-macros: None, mandatory  [epel8-build]
    fedpkg-minimal: None, mandatory  [epel8-build]
    findutils: None, mandatory  [epel8-build]
    gawk: None, mandatory  [epel8-build]
    gcc: None, mandatory  [epel8-build]
    gcc-c++: None, mandatory  [epel8-build]
    grep: None, mandatory  [epel8-build]
    gzip: None, mandatory  [epel8-build]
    info: None, mandatory  [epel8-build]
    make: None, mandatory  [epel8-build]
    patch: None, mandatory  [epel8-build]
    redhat-release: None, mandatory  [epel8-build]
    redhat-release-everything: None, mandatory  [epel8-build]
    redhat-release-server: None, mandatory  [epel8-build]
    redhat-rpm-config: None, mandatory  [epel8-build]
    rpm-build: None, mandatory  [epel8-build]
    sed: None, mandatory  [epel8-build]
    shadow-utils: None, mandatory  [epel8-build]
    tar: None, mandatory  [epel8-build]
    unzip: None, mandatory  [epel8-build]
    util-linux: None, mandatory  [epel8-build]
    util-linux-ng: None, mandatory  [epel8-build]
    which: None, mandatory  [epel8-build]
    xz: None, mandatory  [epel8-build]
  srpm-build  [epel8-build]
    bash: None, mandatory  [epel8-build]
    epel-release: None, mandatory  [epel8-build]
    epel-rpm-macros: None, mandatory  [epel8-build]
    fedpkg-minimal: None, mandatory  [epel8-build]
    git: None, mandatory  [epel8-build]
    gnupg: None, mandatory  [epel8-build]
    make: None, mandatory  [epel8-build]
    redhat-release: None, mandatory  [epel8-build]
    redhat-release-everything: None, mandatory  [epel8-build]
    redhat-release-server: None, mandatory  [epel8-build]
    redhat-rpm-config: None, mandatory  [epel8-build]
    rpm-build: None, mandatory  [epel8-build]
    shadow-utils: None, mandatory  [epel8-build]
  • The above is for epel8/rhel8. Build options have changed with rhel8. Below is suggested groups
  • build
    • bash
    • bzip2
    • centos-stream-release
    • coreutils
    • cpio
    • diffutils
    • epel-release
    • epel-rpm-macros
    • fedpkg-minimal
    • findutils
    • gawk
    • glibc-minimal-langpack
    • grep
    • gzip
    • info
    • make
    • patch
    • redhat-rpm-config
    • rpm-build
    • sed
    • shadow-utils
    • tar
    • unzip
    • util-linux
    • which
    • xz
  • srpm-build
    • bash
    • centos-stream-release
    • fedpkg-minimal
    • glibc-minimal-langpack
    • gnupg2
    • redhat-rpm-config
    • rpm-build
    • shadow-utils

PDC

https://pdc.fedoraproject.org/rest_api/v1/product-versions/#tab_create
https://pagure.io/releng/blob/main/f/scripts/pdc/create-product-release.py

EPEL 8 Reference