How to configure your Fedora development system to access the Fedora staging infrastructure

This is a brief summary describing how to configure your Fedora development system to access the Fedora staging infrastructure instances of Kerberos, dist-git, Koji, Taskotron, etc. This information was gleaned and extrapolated from various sources including Fedora Modularity Developer Notes and How To Build A Module In Staging.

Kerberos

Make sure that you have Kerberos credentials for the staging realm, STG.FEDORAPROJECT.ORG .  You may need to create a Fedora infra ticket to get your production Fedora Account System (FAS) credentials copied to staging FAS.

fedpkg and dist-git

$ sudo dnf install fedpkg-stage

This installs the fedpkg-stage command along with the staging configuration file /etc/rpkg/fedpkg-stage.conf. fedpkg-stage is identical to the regular fedpkg command, except it uses the staging configuration file–which is equivalent to running fedpkg -C /etc/rpkg/fedpkg-stage.conf ....

Koji

An alternate configuration file is needed to access staging Koji. You may not need to prepare one yourself once BugZilla 1422892 is resolved. Otherwise, use this:

$ sudo mkdir /etc/koji
$ sudo cp /etc/koji.conf /etc/koji/stg-config
$ sudo sed -i 's/\.fedoraproject\.org/\.stg\.fedoraproject\.org/' /etc/koji/stg-config
$ sudo sed -i -e '/^krb_rdns/d' -e '$ a anon_retry = true' /etc/koji/stg-config

You can now access staging Koji using koji -c /etc/koji/stg-config ....

Taskotron

Taskotron’s configuration file needs adjustments to communicate with the staging environment. Unfortunately, the runtask command does not currently have an option to specify an alternate configuration file. Thus, you have to modify /etc/taskotron/taskotron.yaml each time you want to switch between production and staging. The following will help:

$ sudo cp /etc/taskotron/taskotron.yaml /etc/taskotron/taskotron.prod.yaml
$ sudo cp /etc/taskotron/taskotron.prod.yaml /etc/taskotron/taskotron.stg.yaml
$ sudo vi /etc/taskotron/taskotron.stg.yaml
# Set the following in /etc/taskotron/taskotron.stg.yaml:
#   koji_url: https://koji.stg.fedoraproject.org/kojihub
#   pkg_url: https://kojipkgs.stg.fedoraproject.org/packages
$ sudo cp /etc/taskotron/taskotron.stg.yaml /etc/taskotron/taskotron.yaml