We use ansible to manage the servers running the systems and services for Thunix. Ansible consists of a "playbook" of YAML files, that declare the state of the system.
The first step is to clone the repo used to manage the environment:
git clone git@ttm.sh:thunix/ansible.git
(You will need a tidegit account for this, and a key loaded into your account there)
From there, the typical github-type workflow is used:
* Create a local branch, to track your issue's changes.
Hourly, a job runs that pulls the latest version of the repo, and the runs ansible-playbook against the playbook. A sudoer can manually run this job, if desired, and it's located at /etc/cron.hourly/ansible-pull.