1fedpkg(1) rpm-packager fedpkg(1)
2
3
4
6 fedpkg - RPM Packaging utility
7
9 fedpkg [ global_options ] command [ command_options ] [ command_argu‐
10 ments ]
11 fedpkg help
12 fedpkg command --help
13
15 fedpkg is a script to interact with the RPM Packaging system.
16
17 Global Options
18 --config CONFIG, -C CONFIG
19 Specify a config file to use
20 --dry-run Perform a dry run.
21 --release RELEASE Override the discovered release, e.g. f25,
22 which has to match the remote branch name
23 created in package repository. Particularly,
24 use rawhide/main branch to build RPMs for
25 rawhide.
26 --name NAME Override repository name. Use --namespace
27 option to change namespace. If not
28 specified, name is discovered from Git push
29 URL or Git URL (last part of path with .git
30 extension removed) or from Name macro in
31 spec file, in that order.
32 --namespace NAMESPACE
33 The package repository namespace. If
34 omitted, default to rpms if namespace is
35 enabled.
36 --user USER Override the discovered user name
37 --password PASSWORD Password for Koji login
38 --runas RUNAS Run Koji commands as a different user
39 --path PATH Define the directory to work in (defaults to
40 cwd)
41 --verbose, -v Run with verbose debug output
42 --debug, -d Run with debug output
43 -q Run quietly only displaying errors
44 --user-config USER_CONFIG
45 Specify a user config file to use
46
48 fedpkg build [-h] [--arches [ARCHES ...]] [--md5] [--nowait] [--target
49 TARGET] [--background] [--fail-fast] [--skip-remote-rules-validation]
50 [--skip-nvr-check] [--custom-user-metadata CUSTOM_USER_METADATA]
51 [--skip-tag] [--scratch] [--srpm [SRPM]] [--srpm-mock]
52 Request build
53
54 fedpkg chain-build [-h] [--arches [ARCHES ...]] [--md5] [--nowait]
55 [--target TARGET] [--background] [--fail-fast] [--skip-remote-rules-
56 validation] [--skip-nvr-check] [--custom-user-metadata CUS‐
57 TOM_USER_METADATA] package [package ...]
58 Build current package in order with other packages
59
60 fedpkg ci [-h] [-m MESSAGE] [--with-changelog] [-c] [--raw] [-t] [-F
61 FILE] [-p] [-s] [files ...]
62 Alias for commit
63
64 fedpkg clean [-h] [--dry-run] [-x]
65 Remove untracked files
66
67 fedpkg clog [-h] [--raw]
68 Make a clog file containing top changelog entry
69
70 fedpkg clone [-h] [--branches] [--branch BRANCH] [--anonymous] [--depth
71 DEPTH] repo [clone_target] ...
72 Clone and checkout a repository
73
74 fedpkg co [-h] [--branches] [--branch BRANCH] [--anonymous] [--depth
75 DEPTH] repo [clone_target] ...
76 Alias for clone
77
78 fedpkg commit [-h] [-m MESSAGE] [--with-changelog] [-c] [--raw] [-t]
79 [-F FILE] [-p] [-s] [files ...]
80 Commit changes
81
82 fedpkg compile [-h] [--builddir BUILDDIR] [--buildrootdir BUILDROOTDIR]
83 [--arch ARCH] [--define DEFINE] [--short-circuit] [--nocheck] ...
84 Local test rpmbuild compile
85
86 fedpkg container-build [-h] [--target TARGET] [--nowait] [--background]
87 [--build-release BUILD_RELEASE] [--isolated] [--koji-parent-build
88 KOJI_PARENT_BUILD] [--scratch] [--arches [ARCHES ...]] [--repo-url URL
89 [URL ...]] [--signing-intent SIGNING_INTENT] [--skip-remote-rules-vali‐
90 dation] [--skip-build] [--compose-id COMPOSE_ID [COMPOSE_ID ...]]
91 [--replace-dependency PKG_MANAGER:NAME:VERSION[:NEW_NAME] [PKG_MAN‐
92 AGER:NAME:VERSION[:NEW_NAME] ...]]
93 Build a container
94
95 fedpkg container-build-setup [-h] (--get-autorebuild | --set-autore‐
96 build {true,false})
97 set options for container-build
98
99 fedpkg copr-build [-h] [--config CONFIG] [--nowait] project
100 Build package in Copr
101
102 fedpkg diff [-h] [--cached] [files ...]
103 Show changes between commits, commit and working tree, etc
104
105 fedpkg disable-monitoring [-h]
106 Disable monitoring of the current repository
107
108 fedpkg flatpak-build [-h] [--target TARGET] [--nowait] [--background]
109 [--build-release BUILD_RELEASE] [--isolated] [--koji-parent-build
110 KOJI_PARENT_BUILD] [--scratch] [--arches [ARCHES ...]] [--repo-url URL
111 [URL ...]] [--signing-intent SIGNING_INTENT] [--skip-remote-rules-vali‐
112 dation] [--skip-build]
113 Build a Flatpak
114
115 fedpkg fork [-h]
116 Create a new fork of the current repository
117
118 fedpkg gimmespec [-h]
119 Print the spec file name
120
121 fedpkg gitbuildhash [-h] build
122 Print the git hash used to build the provided n-v-r
123
124 fedpkg giturl [-h]
125 Print the git url for building
126
127 fedpkg help [-h]
128 Show usage
129
130 fedpkg import [-h] [--skip-diffs] [--offline] srpm
131 Import srpm content into a module
132
133 fedpkg install [-h] [--builddir BUILDDIR] [--buildrootdir BUILDROOTDIR]
134 [--arch ARCH] [--define DEFINE] [--short-circuit] [--nocheck] ...
135 Local test rpmbuild install
136
137 fedpkg lint [-h] [--info] [--rpmlintconf RPMLINTCONF]
138 Run rpmlint against local spec and build output if present.
139
140 fedpkg list-side-tags [-h] [--mine | --user TAG_OWNER | --base-tag
141 BASE_TAG]
142 List existing side-tags
143
144 fedpkg local [-h] [--builddir BUILDDIR] [--buildrootdir BUILDROOTDIR]
145 [--arch ARCH] [--define DEFINE] [--md5] [--with BCOND_WITH] [--without
146 BCOND_WITHOUT] ...
147 Local test rpmbuild binary
148
149 fedpkg mock-config [-h] [--target TARGET] [--arch ARCH]
150 Generate a mock config
151
152 fedpkg mockbuild [-h] [--root CONFIG] [--md5] [--no-clean] [--no-
153 cleanup-after] [--no-clean-all] [--with BCOND_WITH] [--without
154 BCOND_WITHOUT] [--shell] [--enablerepo ENABLEREPO] [--disablerepo DIS‐
155 ABLEREPO] [--enable-network] [--srpm-mock] [--use-koji-mock-config |
156 --use-local-mock-config] ...
157 Local test build using mock
158
159 fedpkg module-build [-h] [--watch] [--buildrequires name:stream] [--re‐
160 quires name:stream] [--optional key=value] [--file [FILE_PATH]] [--srpm
161 SRPMS] [--scratch] [scm_url] [branch]
162 Build a module using MBS
163
164 fedpkg module-build-cancel [-h] build_id
165 Cancel an MBS module build
166
167 fedpkg module-build-info [-h] build_id
168 Show information of an MBS module build
169
170 fedpkg module-build-local [-h] [--file [FILE_PATH]] [--srpm SRPMS]
171 [--stream [STREAM]] [--skip-tests] [--add-local-build N:S:V] [-s N:S]
172 [--offline] [-r PATH]
173 Build a module locally using the mbs-manager command
174
175 fedpkg module-build-watch [-h] build_id [build_id ...]
176 Watch an MBS build
177
178 fedpkg module-overview [-h] [--unfinished] [--limit LIMIT] [--owner
179 FAS_ID | --mine]
180 Shows an overview of MBS builds
181
182 fedpkg module-scratch-build [-h] [--watch] [--buildrequires
183 name:stream] [--requires name:stream] [--optional key=value] [--file
184 [FILE_PATH]] [--srpm SRPMS] [scm_url] [branch]
185 Build a scratch module using MBS
186
187 fedpkg new [-h]
188 Diff against last tag
189
190 fedpkg new-sources [-h] [--offline] files [files ...]
191 Upload source files
192
193 fedpkg override [-h] {create,extend} ...
194 Manage buildroot overrides
195
196 fedpkg patch [-h] [--rediff] suffix
197 Create and add a gendiff patch file
198
199 fedpkg pre-push-check [-h] [ref]
200 Check whether the eventual "git push" command could proceed
201
202 fedpkg prep [-h] [--builddir BUILDDIR] [--buildrootdir BUILDROOTDIR]
203 [--arch ARCH] [--define DEFINE] ...
204 Local test rpmbuild prep
205
206 fedpkg pull [-h] [--rebase] [--no-rebase]
207 Pull changes from the remote repository and update the working
208 copy.
209
210 fedpkg push [-h] [--force] [--no-verify]
211 Push changes to remote repository
212
213 fedpkg releases-info [-h] [-e | -f | -j]
214 Print Fedora or EPEL current active releases
215
216 fedpkg remote [-h] {add} ...
217 Operations with tracked repositories ('remotes'). This is an ex‐
218 perimental interface.
219
220 fedpkg remove-side-tag [-h] TAG
221 Remove a side tag (without merging packages)
222
223 fedpkg request-branch [-h] [--repo NAME] [--namespace {rpms,con‐
224 tainer,modules,flatpaks}] [--sl [SL ...]] [--no-git-branch] [--no-auto-
225 module] [--all-releases] [branch]
226 Request a new dist-git branch
227
228 fedpkg request-repo [-h] [--namespace {rpms,container,modules,flat‐
229 paks}] [--description DESCRIPTION] [--monitor {no-monitoring,monitor‐
230 ing,monitoring-with-scratch}] [--upstreamurl UPSTREAMURL] [--summary
231 SUMMARY] [--exception] [--no-initial-commit] name [bug]
232 Request a new dist-git repository
233
234 fedpkg request-side-tag [-h] [--base-tag BASE_TAG] [--suffix SUFFIX]
235 Create a new side tag
236
237 fedpkg request-tests-repo [-h] [--bug BUG] name description
238 Request a new tests dist-git repository
239
240 fedpkg retire [-h] reason
241 Retire a package/module
242
243 fedpkg scratch-build [-h] [--arches [ARCHES ...]] [--md5] [--nowait]
244 [--target TARGET] [--background] [--fail-fast] [--skip-remote-rules-
245 validation] [--skip-nvr-check] [--custom-user-metadata CUS‐
246 TOM_USER_METADATA] [--srpm [SRPM]] [--srpm-mock]
247 Request scratch build
248
249 fedpkg set-distgit-token [-h] token
250 Updates the fedpkg.distgit API token in ~/.con‐
251 fig/rpkg/fedpkg.conf file.
252
253 Tokens are of length 64 and contain only uppercase
254 and numerical values.
255
256 fedpkg set-pagure-token [-h] token
257 Updates the fedpkg.pagure API token in ~/.con‐
258 fig/rpkg/fedpkg.conf file.
259
260 Tokens are of length 64 and contain only uppercase
261 and numerical values.
262
263 fedpkg sources [-h] [--outdir OUTDIR] [--force]
264 Download source files
265
266 Create a source rpm
267 Create a source rpm
268
269 fedpkg switch-branch [-h] [-l] [--fetch] [branch]
270 Work with branches
271
272 fedpkg tag [-h] [-f] [-m MESSAGE] [-c] [--raw] [-F FILE] [-l] [-d]
273 [tag]
274 Management of git tags
275
276 fedpkg unused-patches [-h]
277 Print list of patches not referenced by name in the specfile
278
279 fedpkg update [-h] [--type {bugfix,security,enhancement,newpackage}]
280 [--request {testing,stable}] [--bugs BUGS [BUGS ...]] [--notes NOTES]
281 [--disable-autokarma] [--stable-karma KARMA] [--unstable-karma KARMA]
282 [--not-close-bugs] [--no-require-bugs] [--no-require-testcases] [--sug‐
283 gest-reboot | --suggest-logout]
284 Submit last build as update
285
286 fedpkg upload [-h] [--offline] files [files ...]
287 Upload source files
288
289 fedpkg verify-files [-h] [--builddir BUILDDIR] [--buildrootdir BUILD‐
290 ROOTDIR] [--arch ARCH] [--define DEFINE] ...
291 Locally verify %%files section
292
293 fedpkg verrel [-h]
294 Print the name-version-release.
295
297 fedpkg build
298 usage: fedpkg build [-h] [--arches [ARCHES ...]] [--md5] [--nowait]
299 [--target TARGET] [--background] [--fail-fast]
300 [--skip-remote-rules-validation]
301 [--skip-nvr-check]
302 [--custom-user-metadata CUSTOM_USER_METADATA]
303 [--skip-tag] [--scratch] [--srpm [SRPM]]
304 [--srpm-mock]
305
306 This command requests a build of the package in the build
307 system. By
308 default it discovers the target to build for based on branch data,
309 and
310 uses the latest commit as the build source.
311
312 fedpkg is also able to submit multiple builds to Koji at
313 once from stream
314 branch based on a local config, which is inside the
315 repository. The config file
316 is named package.cfg in INI format. For example,
317
318 [koji]
319 targets = rawhide fedora epel7
320
321 You only need to put Fedora releases and EPEL in option
322 targets and fedpkg will
323 convert it to proper Koji build target for submitting
324 builds. Beside regular
325 release names, option targets accepts two shortcut names
326 as well, fedora and
327 epel, as you can see in the above example. Name fedora
328 stands for current
329 active Fedora releases, and epel stands for the active
330 EPEL releases, which are
331 el6 and epel7 currently.
332
333 Note that the config file is a branch specific file. That
334 means you could
335 create package.cfg for each stream branch separately to
336 indicate on which
337 targets to build the package for a particular stream.
338
339 options:
340 -h, --help show this help message and exit
341 --arches [ARCHES ...]
342 Build for specific arches
343 --md5 Use md5 checksums (for older rpm hosts)
344 --nowait Don't wait on build
345 --target TARGET Define build target to build into
346 --background Run the build at a low priority
347 --fail-fast Fail the build immediately if any arch fails
348 --skip-remote-rules-validation
349 Don't check if there's a valid gating.yaml
350 file in the repo, where you can define
351 additional policies for Greenwave gating.
352 --skip-nvr-check Submit build to buildsystem without check if
353 NVR was already built. NVR is constructed
354 locally and may be different from NVR
355 constructed during build on builder.
356 --custom-user-metadata CUSTOM_USER_METADATA
357 Provide a JSON string of custom metadata to
358 be deserialized and stored under the build's
359 extra.custom_user_metadata field
360 --skip-tag Do not attempt to tag package
361 --scratch Perform a scratch build
362 --srpm [SRPM] Build from an srpm. If no srpm is provided
363 with this option an srpm will be generated
364 from current module content.
365 --srpm-mock Build from an srpm. Source rpm will be
366 generated in 'mock' instead of 'rpmbuild'.
367
368
369 fedpkg chain-build
370 usage: fedpkg chain-build [-h] [--arches [ARCHES ...]] [--md5]
371 [--nowait] [--target TARGET]
372 [--background] [--fail-fast]
373 [--skip-remote-rules-validation]
374 [--skip-nvr-check]
375 [--custom-user-metadata CUSTOM_USER_META‐
376 DATA]
377 package [package ...]
378
379 Build current package in order with other packages.
380
381 example: fedpkg chain-build libwidget libgizmo
382
383 The current package is added to the end of the CHAIN list.
384 Colons (:) can be used in the CHAIN parameter to define groups of
385 packages. Packages in any single group will be built in parallel
386 and all packages in a group must build successfully and populate
387 the repository before the next group will begin building.
388
389 For example:
390
391 fedpkg chain-build libwidget libaselib : libgizmo :
392
393 will cause libwidget and libaselib to be built in parallel, followed
394 by libgizmo and then the current directory package. If no groups are
395 defined, packages will be built sequentially.
396
397 positional arguments:
398 package List the packages and order you want to
399 build in
400
401 options:
402 -h, --help show this help message and exit
403 --arches [ARCHES ...]
404 Build for specific arches
405 --md5 Use md5 checksums (for older rpm hosts)
406 --nowait Don't wait on build
407 --target TARGET Define build target to build into
408 --background Run the build at a low priority
409 --fail-fast Fail the build immediately if any arch fails
410 --skip-remote-rules-validation
411 Don't check if there's a valid gating.yaml
412 file in the repo, where you can define
413 additional policies for Greenwave gating.
414 --skip-nvr-check Submit build to buildsystem without check if
415 NVR was already built. NVR is constructed
416 locally and may be different from NVR
417 constructed during build on builder.
418 --custom-user-metadata CUSTOM_USER_METADATA
419 Provide a JSON string of custom metadata to
420 be deserialized and stored under the build's
421 extra.custom_user_metadata field
422
423
424 fedpkg ci
425 usage: fedpkg ci [-h] [-m MESSAGE] [--with-changelog] [-c] [--raw]
426 [-t] [-F FILE] [-p] [-s]
427 [files ...]
428
429 Alias for commit.
430
431 positional arguments:
432 files Optional list of specific files to commit
433
434 options:
435 -h, --help show this help message and exit
436 -m MESSAGE, --message MESSAGE
437 Use the given <msg> as the commit message
438 summary
439 --with-changelog Get the last changelog from SPEC as commit
440 message content. This option must be used
441 with -m together.
442 -c, --clog Generate the commit message from the
443 Changelog section
444 --raw Make the clog raw
445 -t, --tag Create a tag for this commit
446 -F FILE, --file FILE Take the commit message from the given file
447 -p, --push Commit and push as one action
448 -s, --signoff Include a signed-off-by
449
450
451 fedpkg clean
452 usage: fedpkg clean [-h] [--dry-run] [-x]
453
454 This command can be used to clean up your working directory. By
455 default it will follow .gitignore rules. Patterns listed in
456 .git/info/exclude won'tbe removed either.
457
458 options:
459 -h, --help show this help message and exit
460 --dry-run, -n Perform a dry-run
461 -x Do not follow .gitignore and .git/info/exclude
462 rules
463
464
465 fedpkg clog
466 usage: fedpkg clog [-h] [--raw]
467
468 This will create a file named "clog" that contains the latest rpm
469 changelog entry. The leading "- " text will be stripped.
470
471 options:
472 -h, --help show this help message and exit
473 --raw Generate a more "raw" clog without twiddling the
474 contents
475
476
477 fedpkg clone
478 usage: fedpkg clone [-h] [--branches] [--branch BRANCH]
479 [--anonymous] [--depth DEPTH]
480 repo [clone_target] ...
481
482 This command will clone the named repository from the configured
483 repository base URL. By default it will also checkout the master
484 branch for your working copy.
485
486 positional arguments:
487 repo Name of the repository to clone. It should
488 not be a Git URL. Should be 'namespace/repo-
489 name' in case of namespaced dist-git.
490 Otherwise, just 'repo-name'. Namespace
491 examples are 'rpms', 'container', 'modules',
492 'flatpaks'. Default namespace 'rpms' can be
493 ignored.
494 clone_target Directory in which to clone the repository
495 extra_args Custom arguments that are passed to the 'git
496 clone'. Use '--' to separate them from other
497 arguments.
498
499 options:
500 -h, --help show this help message and exit
501 --branches, -B Do an old style checkout with subdirs for
502 branches
503 --branch BRANCH, -b BRANCH
504 Check out a specific branch
505 --anonymous, -a Check out a module anonymously
506 --depth DEPTH Create a shallow clone with a history
507 truncated to the specified number of commits
508
509
510 fedpkg co
511 usage: fedpkg co [-h] [--branches] [--branch BRANCH] [--anonymous]
512 [--depth DEPTH]
513 repo [clone_target] ...
514
515 Alias for clone.
516
517 positional arguments:
518 repo Name of the repository to clone. It should
519 not be a Git URL. Should be 'namespace/repo-
520 name' in case of namespaced dist-git.
521 Otherwise, just 'repo-name'. Namespace
522 examples are 'rpms', 'container', 'modules',
523 'flatpaks'. Default namespace 'rpms' can be
524 ignored.
525 clone_target Directory in which to clone the repository
526 extra_args Custom arguments that are passed to the 'git
527 clone'. Use '--' to separate them from other
528 arguments.
529
530 options:
531 -h, --help show this help message and exit
532 --branches, -B Do an old style checkout with subdirs for
533 branches
534 --branch BRANCH, -b BRANCH
535 Check out a specific branch
536 --anonymous, -a Check out a module anonymously
537 --depth DEPTH Create a shallow clone with a history
538 truncated to the specified number of commits
539
540
541 fedpkg commit
542 usage: fedpkg commit [-h] [-m MESSAGE] [--with-changelog] [-c]
543 [--raw] [-t] [-F FILE] [-p] [-s]
544 [files ...]
545
546 This invokes a git commit. All tracked files with changes will be
547 committed unless a specific file list is provided. $EDITOR will be
548 used to generate a changelog message unless one is given to the
549 command. A push can be done at the same time.
550
551 positional arguments:
552 files Optional list of specific files to commit
553
554 options:
555 -h, --help show this help message and exit
556 -m MESSAGE, --message MESSAGE
557 Use the given <msg> as the commit message
558 summary
559 --with-changelog Get the last changelog from SPEC as commit
560 message content. This option must be used
561 with -m together.
562 -c, --clog Generate the commit message from the
563 Changelog section
564 --raw Make the clog raw
565 -t, --tag Create a tag for this commit
566 -F FILE, --file FILE Take the commit message from the given file
567 -p, --push Commit and push as one action
568 -s, --signoff Include a signed-off-by
569
570
571 fedpkg compile
572 usage: fedpkg compile [-h] [--builddir BUILDDIR]
573 [--buildrootdir BUILDROOTDIR] [--arch ARCH]
574 [--define DEFINE] [--short-circuit]
575 [--nocheck]
576 ...
577
578 This command calls rpmbuild to compile the source. By default the
579 prep and configure stages will be done as well, unless the short-
580 circuit option is used.
581
582 positional arguments:
583 extra_args Custom arguments that are passed to the
584 'rpmbuild'. Use '--' to separate them from
585 other arguments.
586
587 options:
588 -h, --help show this help message and exit
589 --builddir BUILDDIR Define an alternate builddir
590 --buildrootdir BUILDROOTDIR
591 Define an alternate buildrootdir
592 --arch ARCH Prep for a specific arch
593 --define DEFINE Pass custom macros to rpmbuild, may specify
594 multiple times
595 --short-circuit short-circuit compile
596 --nocheck nocheck compile
597
598
599 fedpkg container-build
600 usage: fedpkg container-build [-h] [--target TARGET] [--nowait]
601 [--background]
602 [--build-release BUILD_RELEASE]
603 [--isolated]
604 [--koji-parent-build KOJI_PARENT_BUILD]
605 [--scratch] [--arches [ARCHES ...]]
606 [--repo-url URL [URL ...]]
607 [--signing-intent SIGNING_INTENT]
608 [--skip-remote-rules-validation]
609 [--skip-build]
610 [--compose-id COMPOSE_ID [COMPOSE_ID
611 ...]]
612 [--replace-dependency PKG_MAN‐
613 AGER:NAME:VERSION[:NEW_NAME]
614 [PKG_MANAGER:NAME:VERSION[:NEW_NAME]
615 ...]]
616
617 Build a container
618
619 options:
620 -h, --help show this help message and exit
621 --target TARGET Override the default target
622 --nowait Don't wait on build
623 --background Run the build at a lower priority
624 --build-release BUILD_RELEASE
625 Specify a release value for this build's NVR
626 --isolated Do not update floating tags in the registry.
627 You must use the --build-release argument
628 --koji-parent-build KOJI_PARENT_BUILD
629 Specify a Koji NVR for the parent container
630 image. This will override the "FROM" value
631 in your Dockerfile.
632 --scratch Scratch build
633 --arches [ARCHES ...]
634 Limit a scratch or a isolated build to an
635 arch. May have multiple arches.
636 --repo-url URL [URL ...]
637 URLs of yum repo files
638 --signing-intent SIGNING_INTENT
639 Signing intent of the ODCS composes. If
640 specified, this must be one of the signing
641 intent names configured on the OSBS server.
642 If unspecified, the server will use the
643 signing intent of the compose_ids you
644 specify, or the server's
645 default_signing_intent. To view the full
646 list of possible names, see
647 atomic_reactor.config in osbs-build.log.
648 --skip-remote-rules-validation
649 Don't check if there's a valid gating.yaml
650 file in the repo
651 --skip-build Don't create build, but just modify settings
652 for autorebuilds
653 --compose-id COMPOSE_ID [COMPOSE_ID ...]
654 Existing ODCS composes to use (specify
655 integers). OSBS will not generate new ODCS
656 composes. Cannot be used with --signing-
657 intent.
658 --replace-dependency PKG_MANAGER:NAME:VERSION[:NEW_NAME] [PKG_MAN‐
659 AGER:NAME:VERSION[:NEW_NAME] ...]
660 Cachito dependency replacement
661
662
663 fedpkg container-build-setup
664 usage: fedpkg container-build-setup [-h]
665 (--get-autorebuild | --set-au‐
666 torebuild {true,false})
667
668 set options for container-build.
669
670 options:
671 -h, --help show this help message and exit
672 --get-autorebuild Get autorebuild value
673 --set-autorebuild {true,false}
674 Turn autorebuilds on/off
675
676
677 fedpkg copr-build
678 usage: fedpkg copr-build [-h] [--config CONFIG] [--nowait] project
679
680 Build package in Copr.
681
682 Note: you need to have set up correct api key. For more information
683 see API KEY section of copr-cli(1) man page.
684
685 positional arguments:
686 project Name of the project in format USER/PROJECT
687
688 options:
689 -h, --help show this help message and exit
690 --config CONFIG Path to an alternative Copr configuration file
691 --nowait Don't wait on build
692
693
694 fedpkg diff
695 usage: fedpkg diff [-h] [--cached] [files ...]
696
697 Use git diff to show changes that have been made to tracked files.
698 By default cached changes (changes that have been git added) will
699 not be shown.
700
701 positional arguments:
702 files Optionally diff specific files
703
704 options:
705 -h, --help show this help message and exit
706 --cached View staged changes
707
708
709 fedpkg disable-monitoring
710 usage: fedpkg disable-monitoring [-h]
711
712 Disable monitoring of the current repository
713
714 No arguments are needed.
715 Before the operation, you need to generate a pagure.io API token at:
716 https://src.fedoraproject.org/settings/token/new
717
718 ACL required:
719 "Modify an existing project"
720
721 Update your token with the following command:
722 fedpkg set-distgit-token <api_key_here>
723
724 Command saves token to fedpkg config file:
725 ~/.config/rpkg/fedpkg.conf
726
727 For example:
728 [fedpkg.distgit]
729 token = <api_key_here>
730
731 options:
732 -h, --help show this help message and exit
733
734
735 fedpkg flatpak-build
736 usage: fedpkg flatpak-build [-h] [--target TARGET] [--nowait]
737 [--background]
738 [--build-release BUILD_RELEASE]
739 [--isolated]
740 [--koji-parent-build KOJI_PARENT_BUILD]
741 [--scratch] [--arches [ARCHES ...]]
742 [--repo-url URL [URL ...]]
743 [--signing-intent SIGNING_INTENT]
744 [--skip-remote-rules-validation]
745 [--skip-build]
746
747 Build a Flatpak
748
749 options:
750 -h, --help show this help message and exit
751 --target TARGET Override the default target
752 --nowait Don't wait on build
753 --background Run the build at a lower priority
754 --build-release BUILD_RELEASE
755 Specify a release value for this build's NVR
756 --isolated Do not update floating tags in the registry.
757 You must use the --build-release argument
758 --koji-parent-build KOJI_PARENT_BUILD
759 Specify a Koji NVR for the parent container
760 image. This will override the "FROM" value
761 in your Dockerfile.
762 --scratch Scratch build
763 --arches [ARCHES ...]
764 Limit a scratch or a isolated build to an
765 arch. May have multiple arches.
766 --repo-url URL [URL ...]
767 URLs of yum repo files
768 --signing-intent SIGNING_INTENT
769 Signing intent of the ODCS composes. If
770 specified, this must be one of the signing
771 intent names configured on the OSBS server.
772 If unspecified, the server will use the
773 signing intent of the compose_ids you
774 specify, or the server's
775 default_signing_intent. To view the full
776 list of possible names, see
777 atomic_reactor.config in osbs-build.log.
778 --skip-remote-rules-validation
779 Don't check if there's a valid gating.yaml
780 file in the repo
781 --skip-build Don't create build, but just modify settings
782 for autorebuilds
783
784
785 fedpkg fork
786 usage: fedpkg fork [-h]
787
788 Create a new fork of the current repository
789
790 Before the operation, you need to generate a pagure.io API token at:
791 https://src.fedoraproject.org/settings/token/new
792
793 ACL required:
794 "Fork a project"
795
796 Update your token with the following command:
797 fedpkg set-distgit-token <api_key_here>
798
799 Command saves token to fedpkg config file:
800 ~/.config/rpkg/fedpkg.conf
801
802 For example:
803 [fedpkg.distgit]
804 token = <api_key_here>
805
806 Below is a basic example of the command to fork a current repository:
807
808 fedpkg fork
809
810 Operation requires username (FAS_ID). by default, current logged
811 username is taken. It could be overridden by reusing an argument:
812
813 fedpkg --user FAS_ID fork
814
815 options:
816 -h, --help show this help message and exit
817
818
819 fedpkg gimmespec
820 usage: fedpkg gimmespec [-h]
821
822 Print the spec file name.
823
824 options:
825 -h, --help show this help message and exit
826
827
828 fedpkg gitbuildhash
829 usage: fedpkg gitbuildhash [-h] build
830
831 This will show you the commit hash string used to build the provided
832 build n-v-r
833
834 positional arguments:
835 build name-version-release of the build to query.
836
837 options:
838 -h, --help show this help message and exit
839
840
841 fedpkg giturl
842 usage: fedpkg giturl [-h]
843
844 This will show you which git URL would be used in a build command.
845 It uses the git hashsum of the HEAD of the current branch (which may
846 not be pushed).
847
848 options:
849 -h, --help show this help message and exit
850
851
852 fedpkg help
853 usage: fedpkg help [-h]
854
855 Show usage.
856
857 options:
858 -h, --help show this help message and exit
859
860
861 fedpkg import
862 usage: fedpkg import [-h] [--skip-diffs] [--offline] srpm
863
864 This will extract sources, patches, and the spec file from an srpm
865 and update the current module accordingly. It will import to the
866 current branch by default.
867
868 positional arguments:
869 srpm Source rpm to import
870
871 options:
872 -h, --help show this help message and exit
873 --skip-diffs Don't show diffs when import srpms
874 --offline Do not upload files into lookaside cache
875
876
877 fedpkg install
878 usage: fedpkg install [-h] [--builddir BUILDDIR]
879 [--buildrootdir BUILDROOTDIR] [--arch ARCH]
880 [--define DEFINE] [--short-circuit]
881 [--nocheck]
882 ...
883
884 This will call rpmbuild to run the install section. All leading
885 sections will be processed as well, unless the short-circuit option
886 is used.
887
888 positional arguments:
889 extra_args Custom arguments that are passed to the
890 'rpmbuild'. Use '--' to separate them from
891 other arguments.
892
893 options:
894 -h, --help show this help message and exit
895 --builddir BUILDDIR Define an alternate builddir
896 --buildrootdir BUILDROOTDIR
897 Define an alternate buildrootdir
898 --arch ARCH Prep for a specific arch
899 --define DEFINE Pass custom macros to rpmbuild, may specify
900 multiple times
901 --short-circuit short-circuit install
902 --nocheck nocheck install
903
904
905 fedpkg lint
906 usage: fedpkg lint [-h] [--info] [--rpmlintconf RPMLINTCONF]
907
908 Rpmlint can be configured using the --rpmlintconf/-r option or by
909 setting a <pkgname>.rpmlintrc file in the working directory
910
911 options:
912 -h, --help show this help message and exit
913 --info, -i Display explanations for reported messages
914 --rpmlintconf RPMLINTCONF, -r RPMLINTCONF
915 Use a specific configuration file for
916 rpmlint
917
918
919 fedpkg list-side-tags
920 usage: fedpkg list-side-tags [-h]
921 [--mine | --user TAG_OWNER | --base-tag
922 BASE_TAG]
923
924 List existing side-tags.
925
926 options:
927 -h, --help show this help message and exit
928 --mine List only my side tags
929 --user TAG_OWNER List side tags created by this user
930 --base-tag BASE_TAG List only tags based on this base
931
932
933 fedpkg local
934 usage: fedpkg local [-h] [--builddir BUILDDIR]
935 [--buildrootdir BUILDROOTDIR] [--arch ARCH]
936 [--define DEFINE] [--md5] [--with BCOND_WITH]
937 [--without BCOND_WITHOUT]
938 ...
939
940 Locally test run of rpmbuild producing binary RPMs. The rpmbuild
941 output will be logged into a file named
942 .build-%{version}-%{release}.log
943
944 positional arguments:
945 extra_args Custom arguments that are passed to the
946 'rpmbuild'. Use '--' to separate them from
947 other arguments.
948
949 options:
950 -h, --help show this help message and exit
951 --builddir BUILDDIR Define an alternate builddir
952 --buildrootdir BUILDROOTDIR
953 Define an alternate buildrootdir
954 --arch ARCH Prep for a specific arch
955 --define DEFINE Pass custom macros to rpmbuild, may specify
956 multiple times
957 --md5 Use md5 checksums (for older rpm hosts)
958 --with BCOND_WITH Enable configure option (bcond) for the
959 build
960 --without BCOND_WITHOUT
961 Disable configure option (bcond) for the
962 build
963
964
965 fedpkg mock-config
966 usage: fedpkg mock-config [-h] [--target TARGET] [--arch ARCH]
967
968 This will generate a mock config based on the buildsystem target
969
970 options:
971 -h, --help show this help message and exit
972 --target TARGET Override target used for config
973 --arch ARCH Override local arch
974
975
976 fedpkg mockbuild
977 usage: fedpkg mockbuild [-h] [--root CONFIG] [--md5] [--no-clean]
978 [--no-cleanup-after] [--no-clean-all]
979 [--with BCOND_WITH]
980 [--without BCOND_WITHOUT] [--shell]
981 [--enablerepo ENABLEREPO]
982 [--disablerepo DISABLEREPO]
983 [--enable-network] [--srpm-mock]
984 [--use-koji-mock-config | --use-local-mock-
985 config]
986 ...
987
988 This will use the mock utility to build the package for the
989 distribution detected from branch information. This can be
990 overridden using the global --release option. Your user must be in
991 the local "mock" group.
992
993 positional arguments:
994 extra_args Custom arguments that are passed to the
995 'mock'. Use '--' to separate them from other
996 arguments.
997
998 options:
999 -h, --help show this help message and exit
1000 --root CONFIG, --mock-config CONFIG
1001 Override mock configuration (like mock -r)
1002 --md5 Use md5 checksums (for older rpm hosts)
1003 --no-clean, -n Do not clean chroot before building package
1004 --no-cleanup-after Do not clean chroot after building (if
1005 automatic cleanup is enabled
1006 --no-clean-all, -N Alias for both --no-clean and --no-cleanup-
1007 after
1008 --with BCOND_WITH Enable configure option (bcond) for the
1009 build
1010 --without BCOND_WITHOUT
1011 Disable configure option (bcond) for the
1012 build
1013 --shell Run commands interactively within chroot.
1014 Before going into chroot, mockbuild needs to
1015 run with --no-cleanup-after in advanced.
1016 --enablerepo ENABLEREPO
1017 Pass enablerepo option to yum/dnf (may be
1018 used more than once)
1019 --disablerepo DISABLEREPO
1020 Pass disablerepo option to yum/dnf (may be
1021 used more than once)
1022 --enable-network Enable networking
1023 --srpm-mock Generate source rpm with 'mock' and then run
1024 'mockbuild' using this source rpm
1025 --use-koji-mock-config
1026 Download Mock configuration from Kojihub,
1027 instead of using the local Mock
1028 configuration in mock-core-configs.rpm.
1029 --use-local-mock-config
1030 Enforce use of local Mock configuration.
1031
1032 If config file for mock isn't found in the /etc/mock directory, a
1033 temporary config directory for mock is created and populated with a
1034 config file created with mock-config.
1035
1036
1037 fedpkg module-build
1038 usage: fedpkg module-build [-h] [--watch]
1039 [--buildrequires name:stream]
1040 [--requires name:stream]
1041 [--optional key=value]
1042 [--file [FILE_PATH]] [--srpm SRPMS]
1043 [--scratch]
1044 [scm_url] [branch]
1045
1046 Build a module using MBS
1047
1048 positional arguments:
1049 scm_url The module's SCM URL. This defaults to the
1050 current repo.
1051 branch The module's SCM branch. This defaults to
1052 the current checked-out branch.
1053
1054 options:
1055 -h, --help show this help message and exit
1056 --watch, -w Watch the module build
1057 --buildrequires name:stream
1058 Buildrequires to override in the form of
1059 "name:stream"
1060 --requires name:stream
1061 Requires to override in the form of
1062 "name:stream"
1063 --optional key=value MBS optional arguments in the form of
1064 "key=value". For example: 'fedpkg module-
1065 build --optional
1066 "reuse_components_from=<NSVC>"'. More
1067 description including list of available
1068 arguments here: https://pagure.io/fm-
1069 orchestrator/
1070 --file [FILE_PATH] The modulemd yaml file for module scratch
1071 build.
1072 --srpm SRPMS Include one or more srpms for module scratch
1073 build.
1074 --scratch Perform a scratch build
1075
1076
1077 fedpkg module-build-cancel
1078 usage: fedpkg module-build-cancel [-h] build_id
1079
1080 Cancel an MBS module build
1081
1082 positional arguments:
1083 build_id The ID of the module build to cancel
1084
1085 options:
1086 -h, --help show this help message and exit
1087
1088
1089 fedpkg module-build-info
1090 usage: fedpkg module-build-info [-h] build_id
1091
1092 Show information of an MBS module build
1093
1094 positional arguments:
1095 build_id The ID of the module build
1096
1097 options:
1098 -h, --help show this help message and exit
1099
1100
1101 fedpkg module-build-local
1102 usage: fedpkg module-build-local [-h] [--file [FILE_PATH]]
1103 [--srpm SRPMS] [--stream [STREAM]]
1104 [--skip-tests]
1105 [--add-local-build N:S:V] [-s N:S]
1106 [--offline] [-r PATH]
1107
1108 Build a module locally using the mbs-manager command
1109
1110 options:
1111 -h, --help show this help message and exit
1112 --file [FILE_PATH] The module's modulemd yaml file. If not
1113 specified, a yaml file with the same
1114 basename as the name of the repository will
1115 be used.
1116 --srpm SRPMS Include one or more srpms for module build.
1117 --stream [STREAM] The module's stream/SCM branch. This
1118 defaults to the current checked-out branch.
1119 --skip-tests Adds a macro for skipping the check section
1120 --add-local-build N:S:V
1121 Import previously finished local module
1122 builds into MBS in the format of name:stream
1123 or name:stream:version
1124 -s N:S, --set-default-stream N:S
1125 Set the default stream for given module
1126 dependency in case there are multiple
1127 streams to choose from.
1128 --offline Builds module offline without any external
1129 infrastructure
1130 -r PATH, --repository PATH
1131 Full path to .repo file defining the base
1132 module repository to use when --offline is
1133 used.
1134
1135
1136 fedpkg module-build-watch
1137 usage: fedpkg module-build-watch [-h] build_id [build_id ...]
1138
1139 Watch an MBS build
1140
1141 positional arguments:
1142 build_id The ID of the module build to watch
1143
1144 options:
1145 -h, --help show this help message and exit
1146
1147
1148 fedpkg module-overview
1149 usage: fedpkg module-overview [-h] [--unfinished] [--limit LIMIT]
1150 [--owner FAS_ID | --mine]
1151
1152 Shows an overview of MBS builds
1153
1154 options:
1155 -h, --help show this help message and exit
1156 --unfinished Show unfinished module builds
1157 --limit LIMIT The number of most recent module builds to display
1158 --owner FAS_ID List only items of that owner
1159 --mine Use current Kerberos name or username
1160
1161
1162 fedpkg module-scratch-build
1163 usage: fedpkg module-scratch-build [-h] [--watch]
1164 [--buildrequires name:stream]
1165 [--requires name:stream]
1166 [--optional key=value]
1167 [--file [FILE_PATH]]
1168 [--srpm SRPMS]
1169 [scm_url] [branch]
1170
1171 Build a scratch module using MBS
1172
1173 positional arguments:
1174 scm_url The module's SCM URL. This defaults to the
1175 current repo.
1176 branch The module's SCM branch. This defaults to
1177 the current checked-out branch.
1178
1179 options:
1180 -h, --help show this help message and exit
1181 --watch, -w Watch the module build
1182 --buildrequires name:stream
1183 Buildrequires to override in the form of
1184 "name:stream"
1185 --requires name:stream
1186 Requires to override in the form of
1187 "name:stream"
1188 --optional key=value MBS optional arguments in the form of
1189 "key=value". For example: 'fedpkg module-
1190 build --optional
1191 "reuse_components_from=<NSVC>"'. More
1192 description including list of available
1193 arguments here: https://pagure.io/fm-
1194 orchestrator/
1195 --file [FILE_PATH] The modulemd yaml file for module scratch
1196 build.
1197 --srpm SRPMS Include one or more srpms for module scratch
1198 build.
1199
1200
1201 fedpkg new
1202 usage: fedpkg new [-h]
1203
1204 This will use git to show a diff of all the changes (even
1205 uncommitted changes) since the last git tag was applied.
1206
1207 options:
1208 -h, --help show this help message and exit
1209
1210
1211 fedpkg new-sources
1212 usage: fedpkg new-sources [-h] [--offline] files [files ...]
1213
1214 This will upload new source file(s) to lookaside cache, and all file
1215 names listed in sources file will be replaced. .gitignore will be
1216 also updated with new uploaded file(s). Please remember to commit
1217 them.
1218
1219 positional arguments:
1220 files
1221
1222 options:
1223 -h, --help show this help message and exit
1224 --offline Do all the steps except uploading into lookaside cache
1225
1226
1227 fedpkg override
1228 usage: fedpkg override [-h] {create,extend} ...
1229
1230 Manage buildroot overrides.
1231
1232 options:
1233 -h, --help show this help message and exit
1234
1235 subcommands:
1236 Commands on override
1237
1238 {create,extend}
1239 create Create buildroot override from build
1240 extend Extend buildroot override expiration
1241
1242
1243 fedpkg patch
1244 usage: fedpkg patch [-h] [--rediff] suffix
1245
1246 Create and add a gendiff patch file.
1247
1248 positional arguments:
1249 suffix Look for files with this suffix to diff
1250
1251 options:
1252 -h, --help show this help message and exit
1253 --rediff Recreate gendiff file retaining comments Saves old
1254 patch file with a suffix of ~
1255
1256 Patch file will be named: package-version-suffix.patch and the file
1257 will be added to the repo index
1258
1259
1260 fedpkg pre-push-check
1261 usage: fedpkg pre-push-check [-h] [ref]
1262
1263 Performs few checks of the repository before pushing changes.
1264 "git push" command itself is not part of this check.
1265
1266 Checks include:
1267 * parse specfile for source files and verifies it is noted also
1268 in the 'sources' file.
1269
1270 * verifies, that all source files from 'sources' file were uploaded
1271 to the lookaside cache.
1272
1273 Checks can be performed manually by executing 'pre-push-check' com‐
1274 mand.
1275 But originally, it is designed to be executed automatically right be‐
1276 fore
1277 'git push' command is started. Every time the 'git push' command
1278 is executed, the 'pre-push' hook script runs first.
1279
1280 Path: <repository_directory>/.git/hooks/pre-push
1281
1282 This hook script is created after a new repository is cloned. Previ‐
1283 ously
1284 created repositories don't contain this hook script.
1285
1286 To disable these checks, remove the hook script.
1287
1288 positional arguments:
1289 ref Reference to the commit that will be checkedAccepts
1290 hash or reference for example 'refs/heads/f37'
1291
1292 options:
1293 -h, --help show this help message and exit
1294
1295
1296 fedpkg prep
1297 usage: fedpkg prep [-h] [--builddir BUILDDIR]
1298 [--buildrootdir BUILDROOTDIR] [--arch ARCH]
1299 [--define DEFINE]
1300 ...
1301
1302 Use rpmbuild to "prep" the sources (unpack the source archive(s) and
1303 apply any patches.)
1304
1305 positional arguments:
1306 extra_args Custom arguments that are passed to the
1307 'rpmbuild'. Use '--' to separate them from
1308 other arguments.
1309
1310 options:
1311 -h, --help show this help message and exit
1312 --builddir BUILDDIR Define an alternate builddir
1313 --buildrootdir BUILDROOTDIR
1314 Define an alternate buildrootdir
1315 --arch ARCH Prep for a specific arch
1316 --define DEFINE Pass custom macros to rpmbuild, may specify
1317 multiple times
1318
1319
1320 fedpkg pull
1321 usage: fedpkg pull [-h] [--rebase] [--no-rebase]
1322
1323 This command uses git to fetch remote changes and apply them to the
1324 current working copy. A rebase option is available which can be used
1325 to avoid merges.
1326
1327 options:
1328 -h, --help show this help message and exit
1329 --rebase Rebase the locally committed changes on top of the
1330 remote changes after fetching. This can avoid a merge
1331 commit, but does rewrite local history.
1332 --no-rebase Do not rebase, overriding .git settings to the
1333 contrary
1334
1335 See git pull --help for more details
1336
1337
1338 fedpkg push
1339 usage: fedpkg push [-h] [--force] [--no-verify]
1340
1341 Push changes to remote repository.
1342
1343 options:
1344 -h, --help show this help message and exit
1345 --force, -f Force push
1346 --no-verify Bypass the pre-push hook script. No check of the
1347 branch will prevent the push.
1348
1349
1350 fedpkg releases-info
1351 usage: fedpkg releases-info [-h] [-e | -f | -j]
1352
1353 Print Fedora or EPEL current active releases
1354
1355 options:
1356 -h, --help show this help message and exit
1357 -e, --epel Only show EPEL releases.
1358 -f, --fedora Only show Fedora active releases.
1359 -j, --join Show all releases in one line separated by a space.
1360
1361
1362 fedpkg remote
1363 usage: fedpkg remote [-h] {add} ...
1364
1365 Operations with tracked repositories ('remotes'). This is an
1366 experimental interface.
1367
1368 options:
1369 -h, --help show this help message and exit
1370
1371 subcommands:
1372 Operations with tracked repositories ('remotes'). This is an
1373 experimental interface. Please note that some or all current
1374 functionality is subject to change. Without parameters list of
1375 remotes will be shown.
1376
1377 {add}
1378
1379
1380 fedpkg remove-side-tag
1381 usage: fedpkg remove-side-tag [-h] TAG
1382
1383 Remove a side tag (without merging packages).
1384
1385 positional arguments:
1386 TAG name of tag to be deleted
1387
1388 options:
1389 -h, --help show this help message and exit
1390
1391
1392 fedpkg request-branch
1393 usage: fedpkg request-branch [-h] [--repo NAME]
1394 [--namespace {rpms,container,mod‐
1395 ules,flatpaks}]
1396 [--sl [SL ...]] [--no-git-branch]
1397 [--no-auto-module] [--all-releases]
1398 [branch]
1399
1400 Request a new dist-git branch
1401
1402 Please refer to the help of the request-repo command to see what has
1403 to be done before requesting a dist-git branch.
1404
1405 Branch name could be one of current active Fedora and EPEL releases.
1406 Use
1407 command ``fedpkg releases-info`` to get release names that can be
1408 used to request
1409 a branch.
1410
1411 Below are various examples of requesting a dist-git branch.
1412
1413 Request a branch inside a cloned package repository:
1414
1415 fedpkg request-branch f27
1416
1417 Request a branch outside package repository, which could apply to
1418 cases of
1419 requested repository has not been approved and created, or just not
1420 change
1421 directory to package repository:
1422
1423 fedpkg request-branch --repo foo f27
1424
1425 Request a branch with service level tied to the branch. In this case
1426 branch
1427 argument has to be before --sl argument, because --sl allows multiple
1428 values.
1429
1430 fedpkg request-branch branch_name --sl bug_fixes:2020-06-01
1431 rawhide:2019-12-01
1432
1433 positional arguments:
1434 branch The branch to request.
1435
1436 options:
1437 -h, --help show this help message and exit
1438 --repo NAME Repository name the new branch is requested
1439 for.
1440 --namespace {rpms,container,modules,flatpaks}
1441 Repository name the new branch is requested
1442 for.
1443 --sl [SL ...] The service levels (SLs) tied to the branch.
1444 This must be in the format of
1445 "sl_name:2020-12-01". This is only for non-
1446 release branches. You may provide more than
1447 one by separating each SL with a space. When
1448 the argument is used, branch argument has to
1449 be placed before --sl.
1450 --no-git-branch Don't create the branch in git but still
1451 create it in PDC
1452 --no-auto-module If requesting an rpm arbitrary branch, do
1453 not also request a new matching module. See
1454 https://pagure.io/fedrepo_req/issue/129
1455 --all-releases Make a new branch request for every active
1456 Fedora release
1457
1458
1459 fedpkg request-repo
1460 usage: fedpkg request-repo [-h]
1461 [--namespace {rpms,container,modules,flat‐
1462 paks}]
1463 [--description DESCRIPTION]
1464 [--monitor {no-monitoring,monitoring,moni‐
1465 toring-with-scratch}]
1466 [--upstreamurl UPSTREAMURL]
1467 [--summary SUMMARY] [--exception]
1468 [--no-initial-commit]
1469 name [bug]
1470
1471 Request a new dist-git repository
1472
1473 Before the operation, you need to generate a pagure.io API token at:
1474 https://pagure.io/settings/token/new
1475
1476 ACL required:
1477 "Create a new ticket"
1478
1479 Update your token with the following command:
1480 fedpkg set-pagure-token <api_key_here>
1481
1482 Command saves token to fedpkg config file:
1483 ~/.config/rpkg/fedpkg.conf
1484
1485 For example:
1486 [fedpkg.pagure]
1487 token = <api_key_here>
1488
1489 Below is a basic example of the command to request a dist-git reposi‐
1490 tory for
1491 the package foo:
1492
1493 fedpkg request-repo foo 1234
1494
1495 Another example to request a module foo:
1496
1497 fedpkg request-repo --namespace modules foo
1498
1499 positional arguments:
1500 name Repository name to request.
1501 bug Bugzilla bug ID of the package review
1502 request. Not required for requesting a
1503 module repository
1504
1505 options:
1506 -h, --help show this help message and exit
1507 --namespace {rpms,container,modules,flatpaks}
1508 Namespace of repository. If omitted, default
1509 to rpms.
1510 --description DESCRIPTION, -d DESCRIPTION
1511 The repo's description in dist-git
1512 --monitor {no-monitoring,monitoring,monitoring-with-scratch}, -m
1513 {no-monitoring,monitoring,monitoring-with-scratch}
1514 The Anitya monitoring type for the repo
1515 --upstreamurl UPSTREAMURL, -u UPSTREAMURL
1516 The upstream URL of the project
1517 --summary SUMMARY, -s SUMMARY
1518 Override the package's summary from the
1519 Bugzilla bug
1520 --exception The package is an exception to the regular
1521 package review process (specifically, it
1522 does not require a Bugzilla bug)
1523 --no-initial-commit Do not include an initial commit in the
1524 repository.
1525
1526
1527 fedpkg request-side-tag
1528 usage: fedpkg request-side-tag [-h] [--base-tag BASE_TAG]
1529 [--suffix SUFFIX]
1530
1531 Create a new side tag.
1532
1533 options:
1534 -h, --help show this help message and exit
1535 --base-tag BASE_TAG name of base tag
1536 --suffix SUFFIX A suffix to be appended to the side tag name.
1537 The suffix must be allowed in Koji
1538 configuration.
1539
1540
1541 fedpkg request-tests-repo
1542 usage: fedpkg request-tests-repo [-h] [--bug BUG] name description
1543
1544 Request a new dist-git repository in tests shared namespace
1545
1546 https://src.fedoraproject.org/projects/tests/*
1547
1548 For more information about tests shared namespace see
1549
1550 https://fedoraproject.org/wiki/CI/Share_Test_Code
1551
1552 Please refer to the request-repo command to see what has to be done
1553 before
1554 requesting a repository in the tests namespace.
1555
1556 Below is a basic example of the command to request a dist-git reposi‐
1557 tory for
1558 the space tests/foo:
1559
1560 fedpkg request-tests-repo foo "Description of the repository"
1561
1562 Note that the space name needs to reflect the intent of the tests and
1563 will
1564 undergo a manual review.
1565
1566 positional arguments:
1567 name Repository name to request.
1568 description Description of the tests repository
1569
1570 options:
1571 -h, --help show this help message and exit
1572 --bug BUG Bugzilla bug ID of the package review request.
1573
1574
1575 fedpkg retire
1576 usage: fedpkg retire [-h] reason
1577
1578 This command will remove all files from the repo, leave a
1579 dead.package file for rpms or dead.module file for modules, and push
1580 the changes.
1581
1582 positional arguments:
1583 reason Reason for retiring the package/module
1584
1585 options:
1586 -h, --help show this help message and exit
1587
1588
1589 fedpkg scratch-build
1590 usage: fedpkg scratch-build [-h] [--arches [ARCHES ...]] [--md5]
1591 [--nowait] [--target TARGET]
1592 [--background] [--fail-fast]
1593 [--skip-remote-rules-validation]
1594 [--skip-nvr-check]
1595 [--custom-user-metadata CUSTOM_USER_META‐
1596 DATA]
1597 [--srpm [SRPM]] [--srpm-mock]
1598
1599 This command will request a scratch build of the package. Without
1600 providing an srpm, it will attempt to build the latest commit, which
1601 must have been pushed. By default all appropriate arches will be
1602 built.
1603
1604 options:
1605 -h, --help show this help message and exit
1606 --arches [ARCHES ...]
1607 Build for specific arches
1608 --md5 Use md5 checksums (for older rpm hosts)
1609 --nowait Don't wait on build
1610 --target TARGET Define build target to build into
1611 --background Run the build at a low priority
1612 --fail-fast Fail the build immediately if any arch fails
1613 --skip-remote-rules-validation
1614 Don't check if there's a valid gating.yaml
1615 file in the repo, where you can define
1616 additional policies for Greenwave gating.
1617 --skip-nvr-check Submit build to buildsystem without check if
1618 NVR was already built. NVR is constructed
1619 locally and may be different from NVR
1620 constructed during build on builder.
1621 --custom-user-metadata CUSTOM_USER_METADATA
1622 Provide a JSON string of custom metadata to
1623 be deserialized and stored under the build's
1624 extra.custom_user_metadata field
1625 --srpm [SRPM] Build from an srpm. If no srpm is provided
1626 with this option an srpm will be generated
1627 from the current module content.
1628 --srpm-mock Build from an srpm. Source rpm will be
1629 generated in 'mock' instead of 'rpmbuild'.
1630
1631
1632 fedpkg set-distgit-token
1633 usage: fedpkg set-distgit-token [-h] token
1634
1635 Updates the fedpkg.distgit API token in ~/.config/rpkg/fedpkg.conf
1636 file. Tokens are of length 64 and contain only uppercase and
1637 numerical values.
1638
1639 positional arguments:
1640 token The new API token. Can be generated at:
1641 https://src.fedoraproject.org/settings/token/new
1642
1643 options:
1644 -h, --help show this help message and exit
1645
1646
1647 fedpkg set-pagure-token
1648 usage: fedpkg set-pagure-token [-h] token
1649
1650 Updates the fedpkg.pagure API token in ~/.config/rpkg/fedpkg.conf
1651 file. Tokens are of length 64 and contain only uppercase and
1652 numerical values.
1653
1654 positional arguments:
1655 token The new API token. Can be generated at:
1656 https://pagure.io/settings/token/new
1657
1658 options:
1659 -h, --help show this help message and exit
1660
1661
1662 fedpkg sources
1663 usage: fedpkg sources [-h] [--outdir OUTDIR] [--force]
1664
1665 Download source files
1666
1667 options:
1668 -h, --help show this help message and exit
1669 --outdir OUTDIR Directory to download files into (defaults to
1670 pwd)
1671 --force Download all sources, even if unused or otherwise
1672 excluded by default.
1673
1674
1675 fedpkg srpm
1676 usage: Create a source rpm
1677
1678 This command wraps "rpmbuild -bs", roughly equivalent to:
1679
1680 rpmbuild -bs mypackage.spec --define "_topdir ." --de‐
1681 fine "_sourcedir ." --define "_srcrpmdir ." --define "dist
1682 .el8"
1683
1684 To include files in the SRPM, the files must be in the current
1685 working directory (this depends on the package layout used),
1686 and you must reference each file with SourceXXXX: or PatchXXXX:
1687 directives in your .spec file.
1688
1689 positional arguments:
1690 extra_args Custom arguments that are passed to the
1691 'rpmbuild'. Use '--' to separate them from
1692 other arguments.
1693
1694 options:
1695 -h, --help show this help message and exit
1696 --builddir BUILDDIR Define an alternate builddir
1697 --buildrootdir BUILDROOTDIR
1698 Define an alternate buildrootdir
1699 --arch ARCH Prep for a specific arch
1700 --define DEFINE Pass custom macros to rpmbuild, may specify
1701 multiple times
1702 --md5 Use md5 checksums (for older rpm hosts)
1703 --srpm-mock Create source rpm in 'mock' instead of
1704 'rpmbuild'
1705 --no-clean, -n Only for --srpm-mock: Do not clean chroot
1706 before building package
1707 --no-cleanup-after Only for --srpm-mock: Do not clean chroot
1708 after building if automatic cleanup is
1709 enabled
1710 --no-clean-all, -N Only for --srpm-mock: Alias for both --no-
1711 clean and --no-cleanup-after
1712
1713
1714 fedpkg switch-branch
1715 usage: fedpkg switch-branch [-h] [-l] [--fetch] [branch]
1716
1717 This command can switch to a local git branch. If provided with a
1718 remote branch name that does not have a local match it will create
1719 one. It can also be used to list the existing local and remote
1720 branches.
1721
1722 positional arguments:
1723 branch Branch name to switch to
1724
1725 options:
1726 -h, --help show this help message and exit
1727 -l, --list List both remote-tracking branches and local branches
1728 --fetch Fetch new data from remote before switch
1729
1730
1731 fedpkg tag
1732 usage: fedpkg tag [-h] [-f] [-m MESSAGE] [-c] [--raw] [-F FILE] [-l]
1733 [-d]
1734 [tag]
1735
1736 This command uses git to create, list, or delete tags.
1737
1738 positional arguments:
1739 tag Name of the tag
1740
1741 options:
1742 -h, --help show this help message and exit
1743 -f, --force Force the creation of the tag
1744 -m MESSAGE, --message MESSAGE
1745 Use the given <msg> as the tag message
1746 -c, --clog Generate the tag message from the spec
1747 changelog section
1748 --raw Make the clog raw
1749 -F FILE, --file FILE Take the tag message from the given file
1750 -l, --list List all tags with a given pattern, or all
1751 if not pattern is given
1752 -d, --delete Delete a tag
1753
1754
1755 fedpkg unused-patches
1756 usage: fedpkg unused-patches [-h]
1757
1758 Print list of patches not referenced by name in the specfile.
1759
1760 options:
1761 -h, --help show this help message and exit
1762
1763
1764 fedpkg update
1765 usage: fedpkg update [-h]
1766 [--type {bugfix,security,enhancement,newpack‐
1767 age}]
1768 [--request {testing,stable}]
1769 [--bugs BUGS [BUGS ...]] [--notes NOTES]
1770 [--disable-autokarma] [--stable-karma KARMA]
1771 [--unstable-karma KARMA] [--not-close-bugs]
1772 [--no-require-bugs] [--no-require-testcases]
1773 [--suggest-reboot | --suggest-logout]
1774
1775 This will create a bodhi update request for the current package n-v-
1776 r.
1777
1778 There are two ways to specify update details. Without any argument
1779 from command
1780 line, either update type or notes is omitted, a template editor will
1781 be shown
1782 and let you edit the detail information interactively.
1783
1784 Alternatively, you could specify argument from command line to create
1785 an update
1786 directly, for example:
1787
1788 fedpkg update --type bugfix --notes 'Rebuilt' --bugs 1000 1002
1789
1790 When all lines in template editor are commented out or deleted, the
1791 creation
1792 process is aborted. If the template keeps unchanged, fedpkg continues
1793 on creating
1794 update. That gives user a chance to confirm the auto-generated notes
1795 from
1796 change log if option --notes is omitted.
1797
1798 options:
1799 -h, --help show this help message and exit
1800 --type {bugfix,security,enhancement,newpackage}
1801 Update type. Template editor will be shown
1802 if type is omitted.
1803 --request {testing,stable}
1804 Requested repository.
1805 --bugs BUGS [BUGS ...]
1806 Bug numbers. If omitted, bug numbers will be
1807 extracted from change logs.
1808 --notes NOTES Update description. Multiple lines of notes
1809 could be specified. If omitted, template
1810 editor will be shown.
1811 --disable-autokarma Karma automatism is enabled by default. Use
1812 this option to disable that.
1813 --stable-karma KARMA Stable karma. Default is 3.
1814 --unstable-karma KARMA
1815 Unstable karma. Default is -3.
1816 --not-close-bugs By default, update will be created by
1817 enabling to close bugs automatically. If
1818 this is what you do not want, use this
1819 option to disable the default behavior.
1820 --no-require-bugs Disables the requirement that all of the
1821 bugs in your update have been confirmed by
1822 testers. Default is True.
1823 --no-require-testcases
1824 Disables the requirement that this update
1825 passes all test cases before reaching
1826 stable. Default is True.
1827 --suggest-reboot Suggest user to reboot after update. Default
1828 is False.
1829 --suggest-logout Suggest user to logout after update. Default
1830 is False.
1831
1832
1833 fedpkg upload
1834 usage: fedpkg upload [-h] [--offline] files [files ...]
1835
1836 This command will upload new source file(s) to lookaside cache.
1837 Source file names are appended to sources file, and .gitignore will
1838 be also updated with new uploaded file(s). Please remember to commit
1839 them.
1840
1841 positional arguments:
1842 files
1843
1844 options:
1845 -h, --help show this help message and exit
1846 --offline Do all the steps except uploading into lookaside cache
1847
1848
1849 fedpkg verify-files
1850 usage: fedpkg verify-files [-h] [--builddir BUILDDIR]
1851 [--buildrootdir BUILDROOTDIR]
1852 [--arch ARCH] [--define DEFINE]
1853 ...
1854
1855 Locally run 'rpmbuild -bl' to verify the spec file's %files
1856 sections. This requires a successful run of 'fedpkg install' in
1857 advance.
1858
1859 positional arguments:
1860 extra_args Custom arguments that are passed to the
1861 'rpmbuild'. Use '--' to separate them from
1862 other arguments.
1863
1864 options:
1865 -h, --help show this help message and exit
1866 --builddir BUILDDIR Define an alternate builddir
1867 --buildrootdir BUILDROOTDIR
1868 Define an alternate buildrootdir
1869 --arch ARCH Prep for a specific arch
1870 --define DEFINE Pass custom macros to rpmbuild, may specify
1871 multiple times
1872
1873
1874 fedpkg verrel
1875 usage: fedpkg verrel [-h]
1876
1877 Print the name-version-release.
1878
1879 options:
1880 -h, --help show this help message and exit
1881
1882
1884 https://pagure.io/fedpkg/
1885
1886
1887
1888 2023-07-19 fedpkg(1)