Running directly from repo

You can run Jerrybuild directly from a git clone of the repository:

git clone git@github.com:fboender/jerrybuild.git

cd jerrybuild/

python3 ./jerrybuild.py example/jerrybuild.cfg

# Run the example webhook
curl http://127.0.0.1:5281/hook/example

This is mostly useful for evaluating Jerrybuild. If you're satisfied that Jerrybuild suits your needs, you should do a real install.

System installation

The follow commands install Jerrybuild for production usage.

Create user and directory structure

Create a user:

# Debian / Ubuntu
sudo adduser --system --group --home /var/lib/jerrybuild --disabled-password --disabled-login jerrybuild

# Centos
sudo adduser --system --home-dir /var/lib/jerrybuild --password '!!' jerrybuild

Create the required directory structure:

sudo mkdir -p /etc/jerrybuild/jobs.d /var/lib/jerrybuild/status/jobs/_all

sudo chown -R jerrybuild:jerrybuild /etc/jerrybuild/ /var/lib/jerrybuild/

sudo chmod 750 /etc/jerrybuild/ /var/lib/jerrybuild/

Now we should install Jerrybuild itself. You've got the choice between using pip to install Jerrybuild, or install it using the standalone binary x86-64.

Install Jerrybuild

Install with pip

If you don't have Pip yet, check the Pip installation instructions. Also note that on some systems, it's called pip while on other systems, it's called pip3. Just make sure you're using a Python v3 pip.

# Some systems
sudo pip install jerrybuild

# Other systems
sudo pip3 install jerrybuild

Standalone binary

With the standalone binary, first download a binary release from the Releases Github page. Then install it:

sudo tar -xvf jerrybuild-*-bin64.tar.gz --strip-components=1 -C /usr/local/

Configure jerrybuild

Next configure Jerrybuild and install the systemd service file so it starts at boot time:

sudo cp /usr/local/lib/jerrybuild/jerrybuild.cfg.dist /etc/jerrybuild//jerrybuild.cfg

sudo cp /usr/local/lib/jerrybuild/jerrybuild.service.dist /etc/systemd/system/jerrybuild.service

sudo systemctl enable jerrybuild

sudo systemctl daemon-reload

You can now start Jerrybuild:

sudo systemctl start jerrybuild

Check the logs to see if everything starter properly:

sudo journalctl -u jerrybuild

You can now start creating jobs! Check the tutorial for how to do that.

It is highly recommended to run Jerrybuild behind a webserver that can provide SSL and authentication. See the Cookbook for information on how to do that.