Fireq has Github integration and can deploy, run predefined CI checks (like flake8, nosetests e2e tests, etc.), backup databases for according instance, generate base containers, etc. More details.
Fireq is built around command line interface ./fire -h, it uses mustache templates in tpl directory to generate straightforward bash scripts. Mustache gives ability to use includes and override just few files as needed, for example the main directory is tpl/superdesk and it contains a lot of files, but to adjust Liveblog deployment it needs override few of them so no duplication needed. It proved already that it's pretty flexible and works pretty well.
Fireq uses LXC for CI and deployment.
Web application is built with aiohttp and it's wrapper around fireq.cli and handles Github webhooks and CI Dashbord.
Repository contains tree main branches:
masterwith codeinitfiles to override behavior of according instance (details)filesis separate branch for auto-generated install files
To test install scripts:
./fire gen-files
# superdesk
./fire lxc-init sd
cat files/superdesk/install | ./fire lxc-ssh sdDetails in according issue: SDESK-146.