305 lines
8.7 KiB
ReStructuredText
305 lines
8.7 KiB
ReStructuredText
Koji 1.20.0 Release notes
|
|
=========================
|
|
|
|
Announcement: We're going to drop python 2 support for hub and web in
|
|
koji 1.22. Please, prepare yourself for deploying python 3 versions of
|
|
these. Both are already supported and this is the next step in
|
|
retiring python 2 codebase.
|
|
|
|
All changes can be found at `pagure <https://pagure.io/koji/roadmap/1.20/>`_.
|
|
Most important changes are listed here.
|
|
|
|
Migrating from Koji 1.19
|
|
------------------------
|
|
|
|
For details on migrating see :doc:`../migrations/migrating_to_1.20`
|
|
|
|
Security Fixes
|
|
--------------
|
|
None
|
|
|
|
Client Changes
|
|
--------------
|
|
**Add basic zchunk support for dist-repo**
|
|
|
|
| PR: https://pagure.io/koji/pull-request/1743
|
|
|
|
Fixes: https://pagure.io/koji/issue/1198
|
|
|
|
The ``dist-repo`` supports new options ``--zck``, which enables createrepo's
|
|
zchunk generation, and ``--zck-dict-dir``, which indicates the directory
|
|
the builder that contains zchunk dictionaries to use.
|
|
|
|
**Add repo waiting options to the build command**
|
|
|
|
| PR: https://pagure.io/koji/pull-request/1626
|
|
| PR: https://pagure.io/koji/pull-request/1889
|
|
|
|
New options ``--wait-build`` and ``--wait-repo`` for the ``build`` command
|
|
cause the build to wait for a repo regeneration.
|
|
This is similar to using ``wait-repo`` + ``build`` in succession, except
|
|
that the repo monitoring is handled in the build task itself.
|
|
|
|
**Remove title option for livemedia-creator**
|
|
|
|
| PR: https://pagure.io/koji/pull-request/1781
|
|
|
|
livemedia-creator dropped ``--title`` option, so we are.
|
|
|
|
**Add --disabled option to list-hosts command**
|
|
|
|
| PR: https://pagure.io/koji/pull-request/1738
|
|
|
|
This option is simply an alias for the existing ``--not-enabled`` option.
|
|
|
|
**Unify return values for permission denied**
|
|
|
|
| PR: https://pagure.io/koji/pull-request/1785
|
|
|
|
Some places were using ``print`` + ``return 1``, some `parser.error` calls.
|
|
Let's unify it to ``parser.error``.
|
|
|
|
Library Changes
|
|
---------------
|
|
**Raise error when we have not configuration**
|
|
|
|
| PR: https://pagure.io/koji/pull-request/1767
|
|
| PR: https://pagure.io/koji/pull-request/1787
|
|
|
|
Previously, Koji would proceed with only the coded defaults,
|
|
which is no longer sensible.
|
|
|
|
**Sanity check on remotely opened RPMs**
|
|
|
|
| PR: https://pagure.io/koji/pull-request/1829
|
|
|
|
Sometimes RPMs are not downloaded correctly into buildroot and it results in
|
|
weird errors. A simple check was added to detect corruption of downloaded files.
|
|
|
|
**Include profile name in parsed config options**
|
|
|
|
| PR: https://pagure.io/koji/pull-request/1525
|
|
|
|
Fix behaviour to be in line with docs examples.
|
|
|
|
**Make rpm import optional in koji/__init__.py**
|
|
|
|
| PR: https://pagure.io/koji/pull-request/1773
|
|
| PR: https://pagure.io/koji/pull-request/1795
|
|
|
|
``koji/__init__.py`` is being used more and more often in virtualenv. As rpm is
|
|
always the pain here and most users don't need those specific functions, we can
|
|
make it optional (and require only on spec level). Distribution via PyPi will be
|
|
less painful.
|
|
|
|
|
|
API Changes
|
|
-----------
|
|
|
|
**Default krb_princs value changed to True in getUser**
|
|
|
|
| PR: https://pagure.io/koji/pull-request/1872
|
|
|
|
This argument was added in PR #1648, with a default value of ``False``. It is
|
|
used to control whether the ``krb_principals`` field is included in the result of
|
|
``getUser``.
|
|
|
|
**Drop buildMap API call**
|
|
|
|
| PR: https://pagure.io/koji/pull-request/1755
|
|
|
|
It was designed for GC, but it is not used anymore.
|
|
|
|
**New addArchiveType API call**
|
|
|
|
| PR: https://pagure.io/koji/pull-request/1149
|
|
|
|
Adds a new hub method for inserting new archivetype records.
|
|
|
|
**Raise GenericError on existing build reservation in in CGInitBuild**
|
|
|
|
| PR: https://pagure.io/koji/pull-request/1893
|
|
|
|
Previously a database exception was propagated. Now, it is raising a more informative
|
|
exception.
|
|
|
|
|
|
Web UI Changes
|
|
--------------
|
|
**Browsable api**
|
|
|
|
| PR: https://pagure.io/koji/pull-request/1821
|
|
|
|
The web ui now offers API introspection similar to the ``koji list-api`` command.
|
|
|
|
**Cluster health info page**
|
|
|
|
| PR: https://pagure.io/koji/pull-request/1551
|
|
|
|
New web page showing current usage of build cluster.
|
|
|
|
**Show build link(s) on buildContainer task page**
|
|
|
|
| PR: https://pagure.io/koji/pull-request/284
|
|
|
|
This is a temporary solution to the problem of connecting the builds and tasks
|
|
generated by the
|
|
`containerbuild plugin <https://github.com/containerbuildsystem/koji-containerbuild>`.
|
|
|
|
**Human-friendly file sizes in taskinfo page**
|
|
|
|
| PR: https://pagure.io/koji/pull-request/1820
|
|
|
|
|
|
Builder Changes
|
|
---------------
|
|
|
|
**Provide for passing credentials to SRPMfromSCM**
|
|
|
|
| PR: https://pagure.io/koji/pull-request/1640
|
|
|
|
Builder's conf can now contain ``scm_credentials_dir`` option, where can be
|
|
stored authentication certificates or other data for use inside the mock when
|
|
building SRPMs for fetching data from authenticated SCMs.
|
|
|
|
**Log kernel version used for buildroot**
|
|
|
|
| PR: https://pagure.io/koji/pull-request/821
|
|
| PR: https://pagure.io/koji/pull-request/1850
|
|
|
|
**Use --update for dist-repos if possible**
|
|
|
|
| PR: https://pagure.io/koji/pull-request/1037
|
|
|
|
Improves speed of new distrepos.
|
|
|
|
**Don't send notifications in case of deleted tag**
|
|
|
|
| PR: https://pagure.io/koji/pull-request/1380
|
|
|
|
In some cases (sidetags) tag can be deleted before untag notifications are sent,
|
|
so don't send them if tag is already deleted.
|
|
|
|
**Check existence of maven symlink**
|
|
|
|
| PR: https://pagure.io/koji/pull-request/1742
|
|
|
|
In recent Fedora's maven is alternatives symlink. Original check now failed even
|
|
if maven was installed.
|
|
|
|
|
|
System Changes
|
|
--------------
|
|
|
|
**QueryProcessor: fix countOnly for group sql**
|
|
|
|
| PR: https://pagure.io/koji/pull-request/1845
|
|
|
|
WebUI returned an error on Users tab after multiple kerberos realms per user
|
|
were introduced.
|
|
|
|
**Limit distRepo tasks per tag**
|
|
|
|
| PR: https://pagure.io/koji/pull-request/1869
|
|
| PR: https://pagure.io/koji/pull-request/1912
|
|
|
|
Introduces ``distrepo.cancel_others`` extra flag for tags. If enabled, new
|
|
distRepo task will cancel previous non-finished ones leaving only new one.
|
|
|
|
**Fix CGRefundBuild to release build properly**
|
|
| PR: https://pagure.io/koji/pull-request/1853
|
|
|
|
Fixes for refunding failed/cancelled build.
|
|
|
|
**Use BulkInsertProcessor for hub mass inserts**
|
|
|
|
| PR: https://pagure.io/koji/pull-request/1714
|
|
| PR: https://pagure.io/koji/pull-request/1847
|
|
|
|
Speed up mass inserts.
|
|
|
|
**Use comma delimiter for allowed_methods**
|
|
|
|
| PR: https://pagure.io/koji/pull-request/1745
|
|
|
|
The ``allowed_methods`` configuration option for the ``save_failed_tree`` plugin
|
|
now expects comma-separated values, as the example config indicates.
|
|
|
|
**Fix issue with listing users and old versions of Postgres**
|
|
|
|
| PR: https://pagure.io/koji/pull-request/1751
|
|
|
|
Utilities Changes
|
|
-----------------
|
|
**Add koji-gc/kojira/koji-shadow to setup.py**
|
|
|
|
| PR: https://pagure.io/koji/pull-request/1428
|
|
|
|
Koji utilities are now installlable from PyPi.
|
|
|
|
Garbage Collector
|
|
.................
|
|
**Speedup untagging/moving to trashcan**
|
|
|
|
| PR: https://pagure.io/koji/pull-request/1873
|
|
|
|
Rewrite of how koji-gc handles untagging. Multicalls are used now and some
|
|
speedup of related API calls is also included.
|
|
|
|
DB Sweeper
|
|
..........
|
|
**New options to clean database**
|
|
|
|
| PR: https://pagure.io/koji/pull-request/1824
|
|
|
|
Last release introduced new tool ``koji-sweep-db`` which is used to clean the
|
|
database. Few new options were added now like cleaning scratch builds, CG
|
|
reservations, notification tasks or unused buildroots.
|
|
|
|
Note, that these new features are more technical preview. You need to use
|
|
``--force`` flag to run them for a good reason. They can a) take insane time to
|
|
finish b) remove data you never wanted to delete. Always test these commands in
|
|
safe environment, before running them in production.
|
|
|
|
Cleaning sessions and reservations are still safe and they are primary goals of
|
|
the script.
|
|
|
|
Kojikamid
|
|
.........
|
|
**A few fixes for kojikamid**
|
|
|
|
| PR: https://pagure.io/koji/pull-request/1837
|
|
|
|
kojikamid (the daemon that runs in VMs) needs a few updates to be consistent
|
|
with changes to the the Koji data model, and Python 3 compatibility.
|
|
|
|
Documentation Changes
|
|
---------------------
|
|
Lot of documentation was added in last release in API and also in docs pages.
|
|
|
|
|
|
**Documentation**
|
|
|
|
| PR: https://pagure.io/koji/pull-request/1716
|
|
| PR: https://pagure.io/koji/pull-request/1794
|
|
| PR: https://pagure.io/koji/pull-request/1801
|
|
| PR: https://pagure.io/koji/pull-request/1802
|
|
| PR: https://pagure.io/koji/pull-request/1803
|
|
| PR: https://pagure.io/koji/pull-request/1804
|
|
| PR: https://pagure.io/koji/pull-request/1805
|
|
| PR: https://pagure.io/koji/pull-request/1806
|
|
| PR: https://pagure.io/koji/pull-request/1817
|
|
| PR: https://pagure.io/koji/pull-request/1823
|
|
| PR: https://pagure.io/koji/pull-request/1875
|
|
| PR: https://pagure.io/koji/pull-request/1917
|
|
|
|
**API**
|
|
|
|
| PR: https://pagure.io/koji/pull-request/1799
|
|
| PR: https://pagure.io/koji/pull-request/1832
|
|
| PR: https://pagure.io/koji/pull-request/1868
|
|
|
|
**CLI**
|
|
|
|
| PR: https://pagure.io/koji/pull-request/1775
|
|
| PR: https://pagure.io/koji/pull-request/1918
|