--- - hosts: all name: deploiement etckeeper tags: yaml vars: root_user: root root_group: wheel tasks: - name: install etckeeper ansible.builtin.package: state: latest name: - git - etckeeper - template: src=etckeeper_{{ ansible_os_family }}.conf dest=/etc/etckeeper/etckeeper.conf owner={{ root_user }} group={{ root_group }} mode=0644 - name: deploy a bunch of files tags: bash copy: src: "{{ item.src }}" dest: "{{ item.dest }}" mode: "{{ item.mode }}" owner: "{{ item.owner | default( root_user ) }}" loop: - { src: "f1", dest: "/etc/f1", mode: "0600", } - { src: "f2", dest: "/etc/T2", mode: "0660" } - { src: "f3", dest: "/tmp/", mode: "0600", owner: "nobody" } - name: warn user lineinfile: path: /etc/motd regexp: "^This server configuration is under etckeeper control." line: > This server configuration is under etckeeper control. Be sure you commit any changes made to files in /etc before loggin off. The one who break the rule will owe a beer to the team.