fedrepo_req contains a command-line (CLI) tools developed in Python that provides an easy way to submit ticket requests for things such as:
For help, you may watch a video tutorial, or read the documentation below.
fedrepo-req - a command to request new src.fedoraproject.org repositories:
Usage: fedrepo-req [OPTIONS] REPO [BRANCH] Request new repositories on src.fedoraproject.org. Examples: fedrepo-req nethack -t 12345 fedrepo-req nethack epel7 -t 12345 fedrepo-req nethack lts -t 12345 --sl security_fixes:2022-01-01 --sl bug_fixes:2022-01-01 Options: -d, --description TEXT The package's description. -m, --monitor [no-monitoring|monitoring|monitoring-with-scratch] Monitoring type for the package. -n, --namespace [rpms|container|modules|test-modules] The repo's namespace. -s, --summary TEXT Override the package's summary from the ticket. -t, --ticket TEXT The package request's ticket number. -u, --upstreamurl TEXT The package's upstream URL. --sl TEXT The SLs tied to the branch. This must be in the format of "sl_name:2017-12-25" --help Show this message and exit.
Below is an example when requesting the "python" repository with the default
"f27" branch and default SL. The -t
represents the Bugzilla ticket number
for the package review:
$ fedrepo-req python -t 1234
Below is an example when requesting the "python" repository with the "2.7"
branch and two SLs. The -t
represents the Bugzilla ticket number for the
package review:
$ fedrepo-req python 2.7 --sl security_fixes:2020-01-01 --sl bug_fixes:2020-01-01 -t 1234
fedrepo-req-branch - a command to request new src.fedoraproject.org branch entries in PDC:
Usage: fedrepo-req-branch [OPTIONS] REPO BRANCH Request new branches on src.fedoraproject.org repositories. This adds an entry in PDC, which is required to build your package, but doesn't touch git. You must still manually create your branch in git. Examples: fedrepo-req-branch nethack epel7 fedrepo-req-branch nethack lts --sl security_fixes:2022-01-01 --sl bug_fixes:2022-01-01 Options: -n, --namespace [rpms|container|modules|test-modules] The repo's namespace. --sl TEXT The SLs tied to the branch. This must be in the format of "sl_name:2017-12-25" --help Show this message and exit.
Below is an example of requesting the "2.7" branch for the "python" package:
$ fedrepo-req-branch python 2.7 --sl security_fixes:2020-01-01 --sl bug_fixes:2020-01-01
The default configuration is located at /etc/fedrepo_req/config.ini
. For more
information on this, please view the "Default Configuration" section below.
To get started, you'll need to get a Pagure API key to be able to create
new tickets on the "releng/fedora-scm-requests" repo and add it to ~/.config/fedrepo_req/config.ini
.
To do this:
~/.config/fedrepo_req/config.ini
[app] pagure_api_token = <api_key_here>
If you are using the fedrepo-req-admin tool, you'll need to get a Pagure API
key to create projects/repos and add it to ~/.config/fedrepo_req/config.ini
.
To do this:
pagure-admin
~/.config/fedrepo_req/config.ini
[admin] pagure_api_token = <api_key_here>
Additionally, you'll need an API key on the "releng/fedora-scm-requests" repo to comment and close tickets. To do this:
~/.config/fedrepo_req/config.ini
[admin] pagure_ticket_api_token = <api_key_here>
Additionally, you'll need an API token to make modifications in PDC. To do this:
[admin] pdc_api_token = <api_key_here>
Lastly, since the admin tool uses git, you'll need to trust the remote git server's SSH key. To do this, run:
ssh-keyscan pkgs.fedoraproject.org >> ~/.ssh/known_hosts
The default configuration is located at /etc/fedrepo_req/config.ini
. This
sets the values for:
releng/fedora-scm-requests
repository. This defaults to https://pagure.io
.https://src.fedoraproject.org
.https://pdc.fedoraproject.org
.