The Koji Build System
  • Python 94.1%
  • Jinja 3.1%
  • PLpgSQL 2%
  • Makefile 0.3%
  • CSS 0.1%
Find a file
Tomas Kopecek c6a40e3060
All checks were successful
/ flake8 (push) Successful in 12s
/ bandit (push) Successful in 15s
/ tests (fedora-43@sha256:cf1ef55da0d7dd9251b79263c4d1e2350d4291fcd6dc54a1e751d3fe2cf4614d) (push) Successful in 52s
/ tests (fedora-44@sha256:5e1187ee4536674e08961cbe6b1b84dfc9df15a513dee328365909be5a0d5ed8) (push) Successful in 52s
/ tests (centos-10@sha256:1f53b2b040e449b0cfce526f1a221e6dbd6648506270220ea333728a6b52a90b) (push) Successful in 1m32s
/ tests (fedora-rawhide@sha256:5e1187ee4536674e08961cbe6b1b84dfc9df15a513dee328365909be5a0d5ed8) (push) Successful in 48s
/ tests (centos-9@sha256:c5fe30a62d4b62b46acdf764bf1f7293e9fa4287972ec6a86ccb43209646dc32) (push) Successful in 2m29s
Merge pull request 'named cursors for message plugin' (#4669) from mikem/koji:message-plugin-alt-2-followup into master
Reviewed-on: #4669
Reviewed-by: Tomas Kopecek <tkopecek@redhat.com>
2026-10-15 14:05:51 +00:00
.forgejo/workflows Move images to forgejo's registry 2026-07-17 14:36:04 +00:00
builder feat(arch): Permit setting mock's bootstrap_forcearch 2026-10-08 16:04:00 +00:00
cli feat(arch): Permit setting mock's bootstrap_forcearch 2026-10-08 16:04:00 +00:00
devtools better filtering of builtins in check_api 2026-08-17 13:20:12 -04:00
docs draft_used policy test 2026-10-08 15:39:16 +00:00
koji work around py2 syntax error for now 2026-10-15 14:05:51 +00:00
kojihub adjust time import and fix typo 2026-10-08 16:05:04 +00:00
plugins rename the class for clarity 2026-10-15 14:05:51 +00:00
schemas fix schema upgrade script 2026-10-15 14:05:51 +00:00
tests more tests for coverage 2026-10-15 14:05:51 +00:00
util remove more pagure links 2026-10-02 11:21:11 -04:00
vm update koji docs links 2026-10-02 10:43:57 -04:00
www remove more pagure links 2026-10-02 11:21:11 -04:00
.bandit.yaml fix bandit B704 2025-05-07 14:07:04 +02:00
.coveragerc Fix coveragerc after moving hub code 2023-04-04 12:58:43 +02:00
.coveragerc3 more coverage filters 2024-07-18 14:22:43 +02:00
.editorconfig Unit tests, fixes, and cleanup 2025-05-07 14:07:03 +02:00
.flake8 flake8: Ignore .tox 2020-09-08 16:20:19 +02:00
.gitignore update .gitignore 2022-10-07 14:54:21 +02:00
.readthedocs.yaml .readthedocs.yaml 2026-10-01 14:40:25 -04:00
Authors one last email test typo 2007-02-20 23:26:53 -05:00
COPYING update copyright 2014-10-28 23:54:21 -04:00
koji.next.md Rest of references 2026-09-29 07:47:42 +00:00
koji.spec Rest of references 2026-09-29 07:47:42 +00:00
LGPL Initial code drop 2007-02-14 11:25:01 -05:00
Makefile make clean - more files 2024-08-15 11:53:40 +02:00
README.md fix refs to "Pagure" 2026-10-02 12:57:27 -04:00
requirements.txt add jinja2 in requirements.txt 2025-07-07 09:52:09 +00:00
runtests sort imports for other scripts 2019-12-12 11:00:58 +00:00
setup.py setup.py: make gssapi dep optional (#4628) 2026-10-15 14:05:15 +00:00
test-requirements.txt setup.py: make gssapi dep optional (#4628) 2026-10-15 14:05:15 +00:00
tox.ini fix bandit B704 2025-05-07 14:07:04 +02:00

koji - RPM building and tracking system

Koji is an RPM-based build system. The Fedora Project uses Koji for their build system, as do several other projects.

Koji's goal is to provide a flexible, secure, and reproducible way to build software.

Key features:

  • New buildroot for each build
  • Robust XML-RPC APIs for easy integration with other tools
  • Web interface with SSL and Kerberos authentication
  • Thin, portable command line client
  • Users can create local buildroots
  • Buildroot contents are tracked in the database
  • Versioned data

Communicate

Bugs/RFEs

If you have found a bug or would like to request a new feature, please report an issue in Forgejo.

Download

The koji source code can be downloaded with git via:

git clone https://forge.fedoraproject.org/koji/koji.git

You may browse code at https://forge.fedoraproject.org/koji/koji

Archived releases can be found at https://forge.fedoraproject.org/koji/koji/releases

Documentation

See: https://koji.readthedocs.io/en/latest/index.html

  • Mock: The tool Koji uses to generate buildroots
  • Yum - RPM package manager
  • DNF / DNF5 - Next-gen RPM package manager
  • Pungi: Use Pungi to "compose" Koji builds into highly customizable Yum/DNF repositories.
  • Koji Tools: Various utilities for Koji
  • Kojiji: Koji Java Interface
  • txkoji: Async interface to Koji, using Twisted
  • koji-hs: Koji Haskell Interface