Config Files

Timotheus Pokorra edited this page Jan 9, 2016 · 12 revisions

There are 3 types of config files currently:

  • lbs config file
  • project config file
  • package config file

Table of Contents

lbs config file

This file lives in the root directory of your LightBuildServer installation. There is a config-sample.yml that you need to copy and rename to config.yml. See also config-sample.yml

You can configure the following options:

  • EmailFromAddress: notification emails about finished jobs are sent from this address.
  • DeleteLogAfterDays: The build logs are deleted after this number of days (only when a new build has run)
  • KeepMinimumLogs: the minimum number of logs that are kept, even if they are older than DeleteLogAfterDays
  • LBSUrl: the url of your LightBuildServer

define users and their projects

You can create several users, which have the username in the top node, below Users.

Each user has this attributes:

  • Password: this gives permission to run builds
  • GitURL: this should point to the git home of the user, eg. at Github. But it also can point to a local path, where your git repository is located.
  • EmailToAddress: when a job of the user finishes, a notification email will be sent to this address

For the user, you can configure projects. They will automatically be resolved using the GitURL, the username, the project name and the package name: <GitURL>/<username>/lbs-<projectname>/tree/<packagename>

  • Distros: this list determines for which distributions the package should be built
  • ExcludeDistros: TODO

define build machines

You also define containers that are used as build machines. You have to specify a name for the container, and an IP address. See the example for a reasonable notation for the name and the IP address range.

project config file

see for example: lbs-mono config.yml and a more elaborate config.yml

For each distribution, you can specify which repositories are to be included before the packages are being built. For example you can include EPEL for Fedora/CentOS, or any other repository you like.

You can specify the keys that should be installed, so that the packages can be installed from these repositories.

Please note there is a slightly different syntax for yum based and apt-get based Linux distributions.

For CentOS, you can specify which repository should be enabled (especially useful for remi...).

package config file

see for example: monodevelop config.yml or OpenPetra Demo config.yml

Here you specify which file or files should be downloaded before the built is being started.

You can either have several urls separated by comma, or you can give each download a name which is used to for the filename where the download is stored. This is useful eg. for Sourceforge, where it is difficult to calculate the filename from the download url.

You can’t perform that action at this time.
You signed in with another tab or window. Reload to refresh your session. You signed out in another tab or window. Reload to refresh your session.
Press h to open a hovercard with more details.