--- - name: Install etckeeper dnf: name={{ item }} state=present with_items: - git - etckeeper when: ansible_distribution == 'Fedora' - name: Install etckeeper apt: name={{ item }} state=present with_items: - git - etckeeper when: ansible_distribution == 'Debian' or ansible_distribution == 'Ubuntu' - block: - set_fact: highlevel_package_manager='dnf' - set_fact: lowlevel_package_manager='rpm' when: ansible_distribution == 'Fedora' - block: - set_fact: highlevel_package_manager='apt' - set_fact: lowlevel_package_manager='dpkg' when: ansible_distribution == 'Debian' or ansible_distribution == 'Ubuntu' - name: "etckeeper: Configure" template: src=etckeeper.conf.j2 dest=/etc/etckeeper/etckeeper.conf - file: path=/etc/.bzr state=absent - name: "etckeeper: Initialize" command: etckeeper init creates=/etc/.git/ - name: "check git user.name" command: git config user.name args: chdir: /etc warn: off register: name_configured ignore_errors: True changed_when: False - name: "configure git user.name" command: git config user.name "{{etckeeper_user_name}}" args: chdir: /etc warn: off when: name_configured.stdout != "{{etckeeper_user_name}}" - name: "check git user.email" command: git config user.email args: chdir: /etc warn: off register: email_configured ignore_errors: True changed_when: False - name: "configure git user.email" command: git config user.email "{{etckeeper_user_email}}" args: chdir: /etc warn: off when: email_configured.stdout != "{{etckeeper_user_email}}" - name: enable etckeeper commit mails template: src=post-commit-mail.j2 dest=/etc/.git/hooks/post-commit mode=0755 when: etckeeper_mailto is defined