76 lines
1.6 KiB
YAML
76 lines
1.6 KiB
YAML
|
---
|
||
|
|
||
|
- name: "{{ repository_path }} is versioned with git"
|
||
|
command: "git init ."
|
||
|
args:
|
||
|
chdir: "{{ repository_path }}"
|
||
|
creates: "{{ repository_path }}/.git/"
|
||
|
warn: false
|
||
|
register: git_init
|
||
|
tags:
|
||
|
- etc-git
|
||
|
|
||
|
- name: Git user.email is configured
|
||
|
git_config:
|
||
|
name: user.email
|
||
|
repo: "{{ repository_path }}"
|
||
|
scope: local
|
||
|
value: "root@{{ inventory_hostname }}.{{ general_technical_realm }}"
|
||
|
tags:
|
||
|
- etc-git
|
||
|
|
||
|
- name: "{{ repository_path }}/.git is restricted to root"
|
||
|
file:
|
||
|
path: "{{ repository_path }}/.git"
|
||
|
owner: root
|
||
|
mode: "0700"
|
||
|
state: directory
|
||
|
tags:
|
||
|
- etc-git
|
||
|
|
||
|
- name: "{{ repository_path }}/.gitignore is present"
|
||
|
file:
|
||
|
path: "{{ repository_path }}/.gitignore"
|
||
|
owner: root
|
||
|
mode: "0600"
|
||
|
tags:
|
||
|
- etc-git
|
||
|
|
||
|
- name: "Some entries MUST be in the {{ repository_path }}/.gitignore file"
|
||
|
lineinfile:
|
||
|
dest: "{{ repository_path }}/.gitignore"
|
||
|
line: "{{ item }}"
|
||
|
loop: "{{ gitignore_items | default([]) }}"
|
||
|
tags:
|
||
|
- etc-git
|
||
|
|
||
|
- name: Set vim as default editor
|
||
|
git_config:
|
||
|
name: core.editor
|
||
|
scope: global
|
||
|
value: vim
|
||
|
tags:
|
||
|
- etc-git
|
||
|
|
||
|
- name: "does {{ repository_path }}/ have any commit?"
|
||
|
command: "git log"
|
||
|
args:
|
||
|
chdir: "{{ repository_path }}"
|
||
|
warn: false
|
||
|
changed_when: false
|
||
|
failed_when: false
|
||
|
register: git_log
|
||
|
check_mode: false
|
||
|
tags:
|
||
|
- etc-git
|
||
|
|
||
|
- name: initial commit is present?
|
||
|
shell: "git add -A . && git commit -m \"Initial commit via Ansible\""
|
||
|
args:
|
||
|
chdir: "{{ repository_path }}"
|
||
|
warn: false
|
||
|
register: git_commit
|
||
|
when: git_log.rc != 0 or (git_init is defined and git_init is changed)
|
||
|
tags:
|
||
|
- etc-git
|