Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/hashworks/aur-ci
WIP: CI system for the Arch Linux User Repository (AUR)
https://github.com/hashworks/aur-ci
Last synced: about 1 month ago
JSON representation
WIP: CI system for the Arch Linux User Repository (AUR)
- Host: GitHub
- URL: https://github.com/hashworks/aur-ci
- Owner: hashworks
- Created: 2021-03-25T16:40:00.000Z (almost 4 years ago)
- Default Branch: master
- Last Pushed: 2021-04-18T18:47:47.000Z (over 3 years ago)
- Last Synced: 2024-10-19T22:48:46.560Z (2 months ago)
- Language: Go
- Size: 90.8 KB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# Continuous Integration System for the Arch Linux User Repository (AUR)
WIP. Basic idea is to provide a system that automatically creates virtual machines to build new AUR packages/modifications and report back the result / log. Created packages won't be provided to the public.
This project was created as a Master Project for my studies at the [Leipzig University of Applied Sciences](https://www.htwk-leipzig.de/en/htwk-leipzig/).
## aur-watcher
Monitors the AUR for package modifications and reports them to the controller.
## controller
Retrieves package information from the AUR after reports from the aur-watcher, including a full git commit log. The latest commit is added to a build queue.
If the build queue size exceeds a certain threshold one or multiple VMs are created as workers. To accomplish this the [Hetzner Cloud API](https://docs.hetzner.cloud/) is used. If VMs are no longer needed the controller will remove them as well.
In the future the controller will also provide a web frontend and send out notifications about failed builds to maintainers.
## worker
Workers register themselves at the controller and request a work task from the package build queue. The package is build in a Docker container using the [`archlinux/archlinux:base-devel`](https://hub.docker.com/_/archlinux) Image. The result / build log is send back to the controller.