Highlights from 2022-04-05 release¶
Kerberos/GSSAPI authentication for API and copr-cli¶
Newly, when working with the Fedora Copr instance, users
don’t have to install the
~/.config/copr token. It is enough
to take a Fedora Kerberos ticket, and
copr-cli starts working:
$ fkinit # optionally with "-u username" Enter your password and OTP concatenated. (Ignore that the prompt is for only the token) Enter OTP Token Value: <your password> $ copr whoami your_username
If you have Kerberos ticket, you can also use this authentication method in WebUI by clicking on the
gssapi-login link (negotiate needs to be allowed for the
.fedorainfracloud.org domain in the browser).
For other Copr instances, a simplified configuration referring the Copr
frontpage is still needed. For more info see
man copr-cli, the
Copr-cli re-tries connections with Copr Frontend¶
When there’s some temporary Copr Frontend server (Web-UI & API) issue, and thus copr-cli fails to communicate over API - it newly doesn’t give up immediately but re-tries (3x with several seconds delay between the attempts). The number of attempts can be specified using the python3-copr API, too (by default set to one attempt).
Large queue improvements¶
Lately, there have been multiple concurrent mass rebuilds pushing
Copr to its limits. When reaching tens of thousands builds in the queue,
several problems started to appear. Newly we significantly optimized
the backend part of the build system so it should handle large queues
promptly and thus successfully delegate the tasks to the builders. Also
Backend <=> Frontend protocol was optimized for large queues.
On several places in the web-UI we differentiated the background tasks from the normal tasks. Background jobs have lower priority and if they are being processed, it means there’s enough resources to handle normal jobs and still take some background jobs.
We fixed a bug in our DistGit cleanup script that garbage-collected some of the temporarily imported sources too early, this caused build failures before, PR#2078.