#1308 Add documentation on how to bootstrap packages with Koji
Opened by eclipseo. Modified
eclipseo/packaging-committee bootstrap_doc  into  master

Download 1308.patch

Following the changes in 1.33.0:

https://docs.pagure.org/koji/release_notes/release_notes_1.33/#plugins

s/cam/can/, s/packagse/package/

Thanks!

releng#11254 doesn't fully explain how to use the feature, and we shouldn't force contributors to dig in the releng archives for this info.
I don't have a voting power here, but I'd like to see this section in the docs.


There's a TIP: a few lines above which says

     You can temporarily enable bootstrapping by commit,
     which changes `+%bcond_with bootstrap+` to `+%bcond_without bootstrap+`
     and later reverting the commit to do final build.

It would be nice to a) adjust the tip text and b) for absolute clarity, reiterate in the == Using bootstrapping with Koji section that the method does not require touching bcond in the spec or committing/reverting anything.

That's not accurate; %bcond bootstrap 0 only checks if _with_bootstrap is defined and doesn't look at the value. E.g. rpmbuild --define '_with_bootstrap 0' ... would continue as if the bootstrap option was enabled.

Please, remove this and leave --remove-rpm-macro as the only option.

rebased onto 0e681dfc9f248340afdd3c4f1306a3bf182c6c9b

rebased onto b55052d92444980df8947fbbdac2e4d00507e5bc

I updated the text as specified.

rebased onto a405a74508272c17e3408ab52b3f90705559af08

rebased onto 0670ca3d04af69b20829cfce3740976ced013fde

I just tried following these instructions, and I found that that a (scratch) build issued immediately after koji edit-sidetag --rpm-macro _with_bootstrap=1 f41-build-side-91021 was still a non-bootstrap build. I tried again ten or twenty minutes later, and it worked just fine. So if I am not confused or mistaken, it takes some time for the RPM macro to take effect in the side tag. I wonder if there is any way to know when it is ready (other than firing off builds and hoping for the best).

s/unboostrapped/unbootstrapped/

  1. koji edit-sidetag --rpm-macro _with_bootstrap=1 f41-build-side-91021
  2. koji wait-repo f41-build-side-91021

The only downside is that you cannot tell koji wait-repo what you are waiting for (unlike with builds), so it waits for a first regen-repo after the command. If a regen-repo happened between 1) and 2), you are needlessly waiting for a second regen-repo to happen.

Note that this is already documented at https://docs.fedoraproject.org/en-US/package-maintainers/Package_Update_Guide/#_using_macros_in_a_side_tag

Note that this is already documented at https://docs.fedoraproject.org/en-US/package-maintainers/Package_Update_Guide/#_using_macros_in_a_side_tag

The only macro allowed is _with_bootstrap though, all others are forbidden for common people.

Ping? It's challenging pulling together how to properly do this from the disparate sources..

Sorry, it looks like this PR has fallen through the cracks.

That said, I don't think the packaging guidelines is the correct place for this. They're for how packages should be done, not how they can be built. IMO the documentation for Package Maintainers would be more appropriate - other HOWTO style docs are already there.

I hope that most people are using mock these days and in that case, this can enabled by mock --with=bootstrap option. No need to change .spec file

Metadata