On 12/14/20 12:02 AM, Kevin Fenzi wrote:
Greetings everyone. I thought I would share some recent changes to
koji (The Fedora buildsystem):
* All s390x, x86_64, and ppc64le builders have been upgraded to Fedora33
* aarch64 and armv7 builder should be upgraded soon.
* I have enabled bootstrap mode for all builds. In this mode koji uses
the builder tools to construct a 'bootstrap' repo from the target os
tools, which it then uses to create the src.rpm and do the build.
For now this is needed for epel7/8 builds after builders moved to f33
due to rpm changing to default to sqlite rpm db. It will likely be
needed for many other things moving forward and allows easier landing of
new features while keeping other branches working as expected.
\o/
I doubt many people realize the enormity of this landmark.
When I started working on rpm back in 2007, landing new features to rpm
meant looking 5+ years in the horizon to have said feature running on a
released RHEL running in the builder so people could start trying it out
on rawhide, which meant that by then it was far, far too late to address
any of the inevitable design flaws you get when doing something for the
first time. And with rpm the format longetivity means that you only
really get one shot at anything, so testing and feedback in the early
stages of development is absolutely critical. The impossibility of this
all meant that for years time, rpm efforts were directed to things that
have a shorter term benefit.
The first huge leap towards sanity was moving Fedora builders to run on
Fedora several years ago, which cut several years away from that cycle.
That things like file triggers and rich dependencies started appearing
around that time is no coincidence. And from the early swap until now,
the gap has shrunk from multi-year to something like one, which is all
awesome but still missing that critical early phase.
Thanks to the recent advancements in mock (the bootstrap mode) and now
last but not least koji utilizing it, we finally have a situation where
we can actually develop rawhide on rawhide. And for rpm this means we
can try out new features in rawhide during the development cycle,
address unforeseen flaws in new features in the alpha-beta stage as
deity always intended, and if all goes wrong, just back out and try
again next release. Almost like with normal software. Rather than live
with the ever increasing weight of past mistakes because its already out
there in released versions and forever unchangeable.
For me this is a career-long dream come true. THANK YOU for everybody in
the involved in making it happen, one step at a time, over the years!
- Panu -
_______________________________________________
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