Releases: fedora-infra/koschei
1.9.0
New features
- Copr plugin (#113)
- Takes a user supplied copr project from which packages are taken
- Packages in selected collection (likely rawhide) will be rebuilt against
the packages from user's copr - Such rebuilds are done in autogenerated coprs
- Add "Which packages may have been broken by given update" view (#19)
- Add flag to bypass package dependency resolution (#114)
- All fedmsg functionality converted to a plugin
- Koji capacity checking rework (#118)
- Initial attempt at Python 3 porting
- Allow excluding architectures by arch_override (#124)
- Compatibility with PostgreSQL bi-directional replication (BDR)
- RPM build requires are now cached using dogpile, can be configured to use
various caching backends
Bugfixes
- No longer needs a hack to use non default koji authentication method
- Fix adding packes via admin CLI
Other
- Try to reduce unneeded updates of package table
- Don't use DDL in cleanup
- A lot of refactoring
Upgrading from 1.8.2
- Pkgdb cache configuration key was moved to centralized caching section.
If you changed it from default, you'll need to move thepkgdb.cache
section
tocaching.plugin.pkgdb.users
section. (dots denote dictionary nesting
level). - Plugin directory structure was refactored, if you did manual changes to
plugins, you'll need to adjust them - Fedmsg watcher service was converted to plugin. If you want to use it, you'll
need to enable it inplugins
config section - Fedmsg publisher and watcher were merged into single plugin "fedmsg".
- Fedmsg publishing needs to be explicitly enabled in fedmsg-publisher.enabled
- Database migration
- Run
alembic -c /usr/share/koschei/alembic.ini upgrade head
while the
backend services and httpd are stopped
- Run
1.8.2
1.8.1
Bugfixes
- Watcher error when registering real builds
Other
- Force reload of cached CSS after version upgrades (by having dummy query arg)
Upgrading from 1.8
- Just upgrade the package and restart services. No migrations this time
1.8
New features
- Store and display past changes in dependency resolution state and problems (#111)
Bugfixes
- Buildroot problems are properly deleted when no longer relevant
Other
koschei-admin cleanup
task optimization- Internal name of collections can be changed with
koschei-admin edit-collection --new-name
Upgrading from 1.7.2
- Database migration
- Run
alembic -c /usr/share/koschei/alembic.ini upgrade head
while the
backend services and httpd are stopped
- Run
1.7.2
New features
- Collections can be grouped into collections groups
- Unified view can display collection groups or arbitrary subset of collections
- Secondary mode is now per-collection
- Automated tag/target/comps setup of primary Koji collections in secondary mode
Bugfixes
- Consider dependency changes computed against older build if new one is unresolved (#100)
- Blocked packages are not counted towards group count
- Fixed scheduling based on manual priority
- Don't crash on imported builds
- Fixed package editing
Other
- Empty collection columns are now hidden from "All collections" view
- Added collection detail view
- Packages can be sorted by states in any collection in unified view (#108)
- Decoupled Koji target and dest tag
- DB schema refactoring - package table was split
- Test code cleanup
- Frontpage endpoint is now configurable
Upgrading from 1.7.1
koschei-admin create-collection
oredit-collection
now takes--target
argument instead of--target-tag
and--build-tag
. It represents the koji
build target and the tags are determined automatically from koji. This may
require updating your scripts.- If you were running in secondary mode, you need to use
koschei-admin edit-collection
to switch your collections to secondary mode. - Database migration
- Run
alembic -c /usr/share/koschei/alembic.ini upgrade head
while the
backend services and httpd are stopped
- Run
1.7.1
New features
- Unified view for packages across all collections
Improvements
- Resolution now uses repos of single arch only
- Simplified repository caching - now relies on libsolv cache files instead of
in-memory cache of sacks => should be more reliable and consume less memory - Various small UI improvements
- Few more DB constraints (#97)
- Manual priority should not be affected by priority coefficient (#103)
- "Add packages" view now can add packages into individual collections
Bugfixes
- Resolution should now work for builds done in side tags (#98)
koschei-admin edit-group --content-from-file --append
doesn't fail if all
packages are already present- Unhashable RowProxy error in resolver dependency cache
Other
- Updated integration test
Upgrading from 1.7
repo_url
in koji configuration is no longer necessary. It will be
constructed from koji topurl.- You should scrub repodata cache (
/var/cache/koschei/repodata/*
) - Database migration
- Run
alembic -c /usr/share/koschei/alembic.ini upgrade head
while the
backend services and httpd are stopped
- Run
1.7
New features
- Delegation of authentization to httpd
- Enables support of more authentication methods (i.e. kerberos)
- Bugzilla FTBFS report filling was generalized to support multiple collections
- Admin script can import group contents, which can be used to automatically
define groups from scripts - Added
create-group
andedit-group
admin commands
Improvements
- Links to other applications are now more configurable and flexible
- Added multiple database constraints
- Cached repos can be processed with dnf repoquery
Bugfixes
- Watcher not registering real builds of packages with no prior build
- Polling registering too old real builds
- Fixed missing repo_id of real builds
- Pkgdb plugin throwing
TypeError
when branch not configured or no data
returned from pkgdb - Fixed tests failing on non-x86_64 arches
Other
- Vagrantfile added
Upgrading from 1.6.1
- Reconfigure authentization:
-
Old
openid
configuration section was removed -
New
auth
configuration section of config-frontend was added. See the
documentation in/usr/share/koschei/config.cfg
. -
Configure httpd's authentication in
/etc/httpd/config.d/koschei.conf
.
Example snippet for Fedora OpenID provider (needsmod_auth_openid
installed):<Location /login> Require valid-user AuthType OpenID AuthOpenIDSingleIdP https://id.fedoraproject.org/ AuthOpenIDServerName https://apps.fedoraproject.org AuthOpenIDTrustRoot https://apps.fedoraproject.org/koschei/ AuthOpenIDUseCookie off </Location>
-
- Reconfigure bugzilla template and collection to get FTBFS bugreport functionality
"bugreport"
key was updated to include more keys in the template,
see the default configuration for the documentation and example- Collections gained two new fields -
bugzilla_product
and
bugzilla_version
. They need to be set in order for bugreporting to be
available. They can be set viakoschei-admin edit-collection
.
- If you altered some of the application links, you'll need to chnage them to
new, more general format. See default configuration for documentation and
examples - Database migration
- Run
alembic -c /usr/share/koschei/alembic.ini upgrade head
while the
backend services and httpd are stopped - Some of the old existing build data may not comply with new constraints.
You'll need to manually sanitize those.
- Run
1.6.1
Bugfix release. Fixes bug in receiving real builds via fedmsg watcher.
1.6
New features
- Decoupled frontend and backend
- Separate subpackages
- Separate configuration
- Frontend no longer uses koji or fedmsg
- Frontend and backend can be deployed on separate machine
- Split out Fedora specific parts
Improvements
- Using tito for release process
- Automatically cancel builds running for too long
- Running all tests during RPM build (including postgres ones)
- Tests for frontend
- Refactoring of configuration handling (deferred loading, split files)
- Other refactorings
- Documentation for all configuration options
Bugfixes
- Fix compatibility with current version of koji client
Upgrading from 1.5
-
Components were split into subpackages. List of components:
- admin
- koschei-admin script and database migrations
- backend
- backend services. Recommended to run on machine that has recent
versions of libsolv+hawkey stack installed, i.e. on Fedora
- backend services. Recommended to run on machine that has recent
- backend-fedora
- Fedora specific bits of backend - fedmsg watcher service,
fedmsg_publisher plugin, pkgdb plugin
- Fedora specific bits of backend - fedmsg watcher service,
- frontend
- WSGI frontend. Doesn't use fedmsg, koji or depsolver anymore, can be
therefore deployed on less bleeding-edge configurations, such as RHEL 7
- WSGI frontend. Doesn't use fedmsg, koji or depsolver anymore, can be
- frontend-fedora
- Fedora-specific bits for frontend. Currently only pkgdb plugin.
- admin
-
Configuration split - there are separate configuration files for components:
- /etc/koschei/config-backend.cfg
- /etc/koschei/config-frontend.cfg
- /etc/koschei/config-admin.cfg - used by koschei-admin and also alembic migrations
During the upgrade, the central configuration file /etc/koschei/config.cfg
needs to be split into those three. The configuration format and options
didn't change from previous release. Therefore the upgrade can be done by
copying the former config.cfg file to the 3 locations above and removing
configuration options that are irrelevant for each given component. -
Plugins are now turned off by default and have to be explicitly enabled in
plugin
section of the configuration. For example"plugins": ["pkgdb"]
. -
Database migration
- run
alembic -c /usr/share/koschei/alembic.ini upgrade head
while the
services and httpd are stopped
- run
1.5
New features:
- Support for tracking multiple package collections
- Can be used to track multiple Fedora releases
- Currently an experimental feature, that required rewrite of large
portion of code. Due to that, we'll wait for some time before enabling it
in production instance.
- repo_regen plugin for deployments in secondary mode
- Used to regenerate and track koji repos when having it's own private koji
for building
- Used to regenerate and track koji repos when having it's own private koji
Improvements and bugfixes:
- Compact representation of dependencies
- Using postgres arrays and zlib compression
- Should reduce the database size significantly (necessary to scale to multiple collections)
- User<->Package relation now stored in dogpile.cache instead of main database
- More efficient polling for new builds
- Fixing ORM errors on stale rows when deleting builds
- Bugfixes in secondary mode
- Bugfixes in repo_cache