Home

Timotheus Pokorra edited this page Jun 18, 2015 · 14 revisions

LightBuildServer

LightBuildServer for building rpm and deb packages, using linux containers. It can also be used for any other repetitive task, which can be started from a shell script.

LightBuildServer is developed as Open Source software under the LGPL v2.1 or later.

This is still work in progress! see below for missing features.

Please join the [discussion on the mailing list](Discussion on Mailinglist)!

Goals

The goal is to have a light weight build server, that can be easily installed on any Linux operating system, and allows people to quickly build packages for all supported Linux distributions.

This project will be kept simple, by using linux containers (lxc) or alternatively Docker for building on various Linux distributions, and using Github (or any other git repo server) for managing the package sources.

The goal is to have a simpler version of the OpenBuildService, which is quite complex to setup, and does not like uptodate debian package conventions, etc.

Not the goal

The goal is not to create a replacement for the openSUSE Build Service: This project aims towards people compiling their own packages on their own instance of the LightBuildServer.

Implementation

The web interface and the server itself are being implemented in Python3. The main reason for this is that LXC has some Python3 bindings...

The server is configured via config files, where users and projects get defined, and also will store build queues and states in files. This makes it very easy to install and to maintain and to backup.

The generated packages are delivered from the server directly, via apt or yum repositories.

We are using LXC and/or Docker to build the packages. We are mounting network shares to reduce the amount of downloading required packages.

We are focusing on Ubuntu as the hosting operating system. We also work on packages for Fedora. We currently support the building of packages for Ubuntu, Debian, CentOS (5 and 6) and Fedora (Fedora 20, 21, 22 and Rawhide), and hopefully soon for OpenSUSE as well.

Still missing

The following features are planned, but currently not implemented yet:

There are more non-critical features on the issues list: https://github.com/SolidCharity/LightBuildServer/issues?state=open

Help and contributions are definitely welcome!

More documentation

Discussion of topics: