Debusine: a CI platform for Debian-based distributions
Debusine is a modern cloud-powered Continuous Integration (CI) platform to run many packaging and distribution related workflows for the Debian ecosystem. It can be used to automate everything from the package build up to the generation of installer/disk/cloud/container images, including all the intermediary quality assurance checks. It is very versatile and easy to extend to cater to custom requirements.
To cope with the scale (dozens of thousands of packages), and with the breadth of supported CPU architectures of a Linux distribution, Debusine manages the scheduling and distribution of individual tasks to distributed worker machines, including cloud workers on demand.
If you are new to Debusine, you will want to read Introduction to Debusine first.
Note
The documentation is structured by following the Diátaxis principles: tutorials and explanation are mainly useful to discover and learn, howtos and reference are more useful when you are familiar with Debusine already and you have some specific action to perform or goal to achieve.
Tutorials
Explanations
Todo
Add new explanation pages to cover:
architecture (server, worker, client)
How-to guides
- Set up debusine-client
- Create an API token
- Upload to Debusine using dput-ng
- Tasks for administrators
- Set up a Debusine server
- Set up a Debusine worker
- Set up a Debusine signing worker
- Set up Incus for Debusine Task Execution
- Add a new worker
- Add a new user
- Configure and manage a worker
- Enable logins with GitLab accounts
- Enable notifications for work requests
- Set up APT mirroring
- Generate signing keys
- Configure an HSM for use with Debusine
- Add a new Cloud Worker Pool
- Contribute to Debusine
- Contribute a new workflow
Reference
- Building blocks
- Deployment
- Miscellaneous
- Command line tools
- Python client API
- Debusine internals
- Reference for Debusine contributors
- Development blueprints
- Permission management
- Permission predicates
- UI views
- Uploading packages
- Task configuration
- Build instructions
- Transitioning to scoped URLs
- Debian pipeline
- Detecting regressions
- URL redesign
- URL redesign for /-/user
- Dynamic cloud compute scaling
- Workspaces for experiments
- Roles and permissions on groups
- Workflow
debdiff
- Refactoring page titles
- Generating repository indexes
- Release history
- 0.11.1 (2025-05-04)
- 0.11.0 (2025-04-15)
- 0.10.0 (2025-04-02)
- 0.9.1 (2025-03-24)
- 0.9.0 (2025-02-25)
- 0.8.1 (2025-01-13)
- 0.8.0 (2024-12-26)
- 0.7.2 (2024-11-13)
- 0.7.1 (2024-11-12)
- 0.7.0 (2024-11-12)
- 0.6.0 (2024-10-10)
- 0.5.0 (2024-09-03)
- 0.4.1 (2024-06-28)
- 0.4.0 (2024-06-24)
- 0.3.2 (2024-06-03)
- 0.3.1 (2024-05-28)
- 0.3.0 (2024-05-23)
- 0.2.1 (2024-03-07)
- 0.2.0 (2024-02-29)
- 0.1.0 (2022-09-09)
- Sponsors
Todo
Add new reference pages to cover:
debusine-server configuration file
debusine-worker configuration file