forked from evolix/ansible-roles
68 lines
1.5 KiB
YAML
68 lines
1.5 KiB
YAML
---
|
|
|
|
- name: Git is installed (Debian)
|
|
apt:
|
|
name: git
|
|
state: present
|
|
tags:
|
|
- etc-git
|
|
|
|
- include: repository.yml
|
|
vars:
|
|
repository_path: "/etc"
|
|
gitignore_items:
|
|
- "aliases.db"
|
|
- "*.swp"
|
|
- "postfix/sa-blacklist.access"
|
|
- "postfix/*.db"
|
|
- "postfix/spamd.cidr"
|
|
- "evobackup/.keep-*"
|
|
- "letsencrypt/.certbot.lock"
|
|
|
|
- name: verify /usr/share/scripts presence
|
|
stat:
|
|
path: /usr/share/scripts
|
|
register: _usr_share_scripts
|
|
|
|
- include: repository.yml
|
|
vars:
|
|
repository_path: "/usr/share/scripts"
|
|
gitignore_items: []
|
|
when:
|
|
- _usr_share_scripts.stat.isdir
|
|
- ansible_distribution_major_version is version('10', '>=')
|
|
|
|
- name: Check if cron is installed
|
|
shell: "dpkg -l cron 2> /dev/null | grep -q -E '^(i|h)i'"
|
|
failed_when: False
|
|
changed_when: False
|
|
check_mode: no
|
|
register: is_cron_installed
|
|
|
|
- name: Optimize script is installed in monthly crontab
|
|
copy:
|
|
src: optimize-etc-git
|
|
dest: /etc/cron.monthly/optimize-etc-git
|
|
mode: "0750"
|
|
force: no
|
|
when: is_cron_installed.rc == 0
|
|
tags:
|
|
- etc-git
|
|
|
|
- name: Cron job for /etc/.git status is installed
|
|
template:
|
|
src: etc-git-status.j2
|
|
dest: /etc/cron.d/etc-git-status
|
|
mode: "0644"
|
|
when: is_cron_installed.rc == 0 and etc_git_monitor_status
|
|
tags:
|
|
- etc-git
|
|
|
|
- name: Cron job for /etc/.git status is removed
|
|
file:
|
|
dest: /etc/cron.d/etc-git-status
|
|
state: absent
|
|
when: is_cron_installed.rc == 0 and not etc_git_monitor_status
|
|
tags:
|
|
- etc-git
|