b1dc0d62a0
Improve the linking of binary resources so the content is in .rodata and the object contains a read-only flagged GNU-stack note. This causes GNU ld to not mark the stack executable in the final binary. Resolves #55 |
||
---|---|---|
example-scripts | ||
src | ||
test | ||
CMakeLists.txt | ||
COPYING | ||
docker-build-centos.sh | ||
docker-build-debian.sh | ||
laminar.conf | ||
laminar.service | ||
README.md | ||
UserManual.md |
Laminar CI
Laminar (http://laminar.ohwg.net) is a lightweight and modular Continuous Integration service for Linux. It is self-hosted and developer-friendly, eschewing a configuration UI in favor of simple version-controllable configuration files and scripts.
Laminar encourages the use of existing GNU/Linux tools such as bash
and cron
instead of reinventing them.
Although the status and progress front-end is very user-friendly, administering a Laminar instance requires writing shell scripts and manually editing configuration files. That being said, there is nothing esoteric here and the guide should be straightforward for anyone with even very basic Linux server administration experience.
See the website and the documentation for more information.
Building from source
First install development packages for capnproto (git)
, rapidjson
, websocketpp
, sqlite
and boost-filesystem
from your distribution's repository or other source. Then:
git clone https://github.com/ohwgiles/laminar.git
cd laminar
cmake -DCMAKE_BUILD_TYPE=Release -DCMAKE_INSTALL_PREFIX=/
make -j4
sudo make install
make install
includes a systemd unit file. If you intend to use it, consider creating a new user laminar
or modifying the user specified in the unit file.