Re: What is the most time consuming task for you as packager?

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

 



Jonathan Wakely <jwakely@xxxxxxxxxxxxxxxxx> writes:

> On 15/12/20 23:46 +0100, Miro Hrončok wrote:
>>On 12/15/20 11:29 PM, Miroslav Suchý wrote:
>>>I am looking for challenges for upcoming year - what I and my team should enhance. I have some ideas, but I want to hear
>>>yours.
>>
>>Thanks for doing this!
>>
>>>What you - as Fedora packager - find most time consuming on packaging?
>>
>>Coordination and communication ;)
>>
>>>Where you will welcome more simplicity or automation?
>>
>>In testing an impact of a change. E.g. a simple "upgrade to newer 
>>version" change might be a problem if it breaks other packages. I 
>>usually spin up a copr repo and try to rebuild every dependent package 
>
> ^ This.
>
> The individual steps of doing a single package are insignificant
> compared to the days or WEEKS it takes for a systemwide change that
> requires rebuilding hundreds of dependencies. I know not many of us
> actually have this problem, but for those who do, it's very, very time
> consuming.
>
> Since we're apparently not allowed to use a side tag to do a test
> rebuild for this kind of thing, I end up doing it locally on my own
> machines. Copr is another option, but I don't think it would be any
> quicker or simpler.
>
> What I'd really like would be a "test mass rebuild" process, where a
> prospective package is uploaded and everything that depends on it is
> automatically rebuilt (ideally after creating the dependency graph so
> each individual package doesn't get rebuilt until its dependencies are
> finished building).
>
> Creating the dependency graph by hand is fairly tedious, but maybe I'm
> missing an automated way. The point of creating that graph is to avoid
> wasting time and power doing and redoing builds that will fail until
> something else has been built (which is the problem with mock's
> --chain command, if I understand correctly).
>
> Once I have that graph, I use Make to control the process, because it
> handles the dependency graph, as well as parallelism, and not
> rebuilding things unnecessarily.

Assuming that you have all packages that you care about checked out in a
directory, you can use Jens Petersen's fbrnch to build them in the
correct order: https://github.com/juhp/fbrnch#parallel-building
But, that only works if there are no dependency loops in your packages,
which is more or less guaranteed in a non-trivial subset set of all
Fedora packages.

Iirc there was also the idea to leverage Zuul for doing these kinds of
automated tests, but I am not sure how feasible that actually is. Even
in openSUSE Tumbleweed, which is developed in OBS, automated rebuilds
are disabled and only a small set of all packages is rebuild in a
staging area before being other packages are merged into the distro. And
that's for the simple reason, that OBS does not have enough workers to
support this (and OBS has more workers than we do, while Tumbleweed has
less packages than Fedora).

>
>>in it. However, there are time consuming challenges with this:
>>
>>1) False failures. Sometimes, the copr build fails for random reason 
>>(Koji repo is not available, etc.). I need to read the logs and figure 
>>it out, resubmit the build.
>>
>>2) Unrelated failures. Many packages FTBFS for unrelated reasons. I 
>>need to spin up another (control) copr and rebuild all failures there 
>>as well to make sure it's indeed unrelated.
>
> Yes, that's a real pain. Can we just add everything to Koschei instead
> of having it opt-in?

Yes please, Koschei should be opt-out, not opt-in.

Attachment: signature.asc
Description: PGP signature

_______________________________________________
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