Getting started
Initial configuration
By default git is used as VCS. This can be changed via the
etckeeper__vcs
variable through Ansible inventory.
The role is designed with etckeeper being already installed on
a host in mind. This can be done for example via Debian Preseeding or LXC
template installing and pre-configuring etckeeper; the role will
keep the already existing configuration without any changes if the variables
are not overwritten through the Ansible inventory. Any changes in the
/etc/
directory will be automatically committed by Ansible local facts
before Ansible role execution.
Example inventory
The debops.etckeeper
role is part of the default DebOps playbook and run on
all hosts which are part of the [debops_all_hosts]
group. To use this role
with DebOps it's therefore enough to add your host to the mentioned host group
(which most likely it is already):
[debops_all_hosts]
hostname
Example playbook
Here's an example playbook that uses the debops.etckeeper
role:
---
- name: Put /etc under version control using etckeeper
collections: [ 'debops.debops', 'debops.roles01',
'debops.roles02', 'debops.roles03' ]
hosts: [ 'debops_all_hosts', 'debops_service_etckeeper' ]
become: True
environment: '{{ inventory__environment | d({})
| combine(inventory__group_environment | d({}))
| combine(inventory__host_environment | d({})) }}'
roles:
- role: apt_preferences
tags: [ 'role::apt_preferences', 'skip::apt_preferences' ]
apt_preferences__dependent_list:
- '{{ etckeeper__apt_preferences__dependent_list }}'
- role: etckeeper
tags: [ 'role::etckeeper', 'skip::etckeeper' ]