Packaging for RHEL / CentOS

The packaging/rpm directory contains RPM packaging of temBoard agent from released tarball on PyPI or from a snapshot.

Requirements

Package building requires Docker and Docker Compose for isolation. For uploading, you need to have yum-labs project aside temboard-agent clone. Override yum-labs directory using YUM_LABS environment variable.

Building and uploading

The all target builds packages for every supported distributions and put them in upload directory. push target effectively upload RPMs to Dalibo Labs YUM repository. Once you have setup your host for building, just run:

The script builds the temboard agent version as defined in setup.py. If the source tarball does not exists in dist/, the script fetches it from PyPI. You can override the version built with VERSION environment variable.

$ make all push

The packages are stored in dist/ at the root of the project.

Building a snapshot

Just create the tarball with setup.py sdist.

$ python setup.py sdist
$ make -C packaging/rpm/ all

Development

The RPM spec file supports building a package for RHEL / CentOS version 7 and 8. To do so, it uses tests on the version, provided by the %{rhel} macro.

First, run docker container for interactive usage:

$ docker-compose run --rm centos7 /bin/bash

If you get no output just after the run, type ENTER or CTRL+L to redraw.

Top source directory is mounted as /workspace/. Just call /workspace/packaging/rpm/build.sh to build the RPM package.

Once you quit the shell, the container is destroyed.