Re: bootstrapping without .spec modification

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Sat, Jan 30, 2021 at 12:03:21PM -0800, Kevin Fenzi wrote:
> On Fri, Jan 29, 2021 at 03:49:28PM +0100, Miro Hrončok wrote:
> > 
> > Currently a Koji task says:
> > 
> > Source: git+https://src.fedoraproject.org/rpms/python3.9.git#563b4f4b59a9f81095acfe30899fdc4b040c1b9b
> > Build Target: f34-rebuild
> > Options:
> >   fail_fast = True
> >   wait_builds =
> > 
> > Example taken from https://koji.fedoraproject.org/koji/taskinfo?taskID=60654655
> > 
> > With this feature, it would say:
> > 
> > Source: git+https://src.fedoraproject.org/rpms/python3.9.git#563b4f4b59a9f81095acfe30899fdc4b040c1b9b
> > Build Target: f34-rebuild
> > Options:
> >   fail_fast = True
> >   wait_builds =
> > Macro overrides:
> >   _with_bootstrap: 1
> > 
> > And when reproducing, you'd just run the same command, e.g.
> > 
> > $ koji build f34-rebuild --fail-fast --macro '_with_bootstrap 1' 'git+https://src.fedoraproject.org/rpms/python3.9.git#563b4f4b59a9f81095acfe30899fdc4b040c1b9b'
> > 
> > The Koji web interface could even display the command.
> > 
> > That's very much as reproduce as now.
> 
> So, koji already can set macros per tag.
> For example, eln sig uses this: 
> 
> ➜  ~ koji taginfo eln-build
> Tag: eln-build [22493]
> Arches: i686 x86_64 aarch64 ppc64le s390x
> Groups: appliance-build, build, livecd-build, livemedia-build, srpm-build
> Tag options:
>   mock.new_chroot : 0          [f34]
>   mock.package_manager : 'dnf' [f34]
>   rpm.macro.dist : ('%{!?distprefix0:%{?distprefix}}%{expand:%{lua:for i=0,9999 do '
>  'print("%{?distprefix" .. i .."}") '
>  'end}}.eln%{eln}%{?with_bootstrap:~bootstrap}')
>   rpm.macro.eln : 108
>   rpm.macro.rhel : 9
> This tag is a buildroot for one or more targets
> Current repo: repo#2902927: 2021-01-30 19:46:56.747509+00:00
> Targets that build from this tag:
>   eln-rebuild
>   eln
>   eln-candidate
> Inheritance:
>   0    .... eln [22492]
>   5    .... f34-build [27045]
> 
> We had a request to enable this for side-tags: 
> 
> https://pagure.io/fedora-infrastructure/issue/9048

That'd be great.

> what was passed in for the build so if you just had the src.rpm you
> could figure out what was going on?

Yeah, I think we should consider the creation of record so this can be
reviewed after the fact as a requirement for enablement.

> but didn't want to due to how this could be used. 
> 
> My thought was to try and ask koji developers to add some kind of
> 'non-mergable' bit on side-tags. So, if you want to use a side tag to
> play around with/test something you could, but if you adjusted things
> beyond some whitelist, the side-tag would not be mergable back into
> rawhide, and we could allow _with_bootstrap. 

I think those worries are overblown. When a packager has the rights to
build an rpm (in a side-tag or not), they also have the right to
commit whatever they want to the spec file. That packager also already
has the ability to influence the build by tagging things into the
side-tag. This type of modification does not require modification of
the spec file. There isn't any fundamental difference in influencing
the build through macros compared to the other ways. We just need to
record what was set, similarly to the list of rpms that is pulled into
the buildroot.

Zbyszek
_______________________________________________
devel mailing list -- devel@xxxxxxxxxxxxxxxxxxxxxxx
To unsubscribe send an email to devel-leave@xxxxxxxxxxxxxxxxxxxxxxx
Fedora Code of Conduct: https://docs.fedoraproject.org/en-US/project/code-of-conduct/
List Guidelines: https://fedoraproject.org/wiki/Mailing_list_guidelines
List Archives: https://lists.fedoraproject.org/archives/list/devel@xxxxxxxxxxxxxxxxxxxxxxx




[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Index of Archives]     [Fedora Announce]     [Fedora Users]     [Fedora Kernel]     [Fedora Testing]     [Fedora Formulas]     [Fedora PHP Devel]     [Kernel Development]     [Fedora Legacy]     [Fedora Maintainers]     [Fedora Desktop]     [PAM]     [Red Hat Development]     [Gimp]     [Yosemite News]

  Powered by Linux