From 3d4ed5aa2ab5bb88ea0b53e710b9cd7485692458 Mon Sep 17 00:00:00 2001 From: neingeist Date: Sat, 17 Sep 2016 19:42:10 +0200 Subject: [PATCH] set git user.{name,email} --- README.md | 10 ++++++++++ defaults/main.yml | 2 ++ tasks/etckeeper.yml | 34 ++++++++++++++++++++++++++++++++++ 3 files changed, 46 insertions(+) diff --git a/README.md b/README.md index b381fe0..1171851 100644 --- a/README.md +++ b/README.md @@ -23,3 +23,13 @@ roles: etckeeper_avoid_autocommits: true, etckeeper_mailto: root } ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + +The role sets "root " as the default user/email in +etckeeper's git config. To change that set these options: + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +roles: + - { role: etckeeper, tags: ['system', 'etckeeper'], + etckeeper_user_name: "Charlie Root", + etckeeper_user_email: "charlie@corp.com" } +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ diff --git a/defaults/main.yml b/defaults/main.yml index bb6511a..a958897 100644 --- a/defaults/main.yml +++ b/defaults/main.yml @@ -1,2 +1,4 @@ --- etckeeper_avoid_autocommits: false +etckeeper_user_name: "root" +etckeeper_user_email: "root@{{ ansible_fqdn}}" diff --git a/tasks/etckeeper.yml b/tasks/etckeeper.yml index 48245eb..83013d6 100644 --- a/tasks/etckeeper.yml +++ b/tasks/etckeeper.yml @@ -30,6 +30,40 @@ - 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