87 lines
1.7 KiB
YAML
87 lines
1.7 KiB
YAML
---
|
|
- name: install rsync
|
|
package:
|
|
name: rsync
|
|
state: installed
|
|
|
|
- name: create mirror group
|
|
group:
|
|
name: mirror
|
|
gid: 1001
|
|
|
|
- name: create mirror user
|
|
user:
|
|
name: mirror
|
|
comment: Service Mirror
|
|
createhome: false
|
|
group: mirror
|
|
home: /var/empty
|
|
shell: /sbin/nologin
|
|
uid: 1001
|
|
|
|
- name: create data directory
|
|
file:
|
|
path: /export/mirrors
|
|
state: directory
|
|
mode: 0755
|
|
owner: root
|
|
group: root
|
|
|
|
- name: create data directory link
|
|
file:
|
|
path: /srv/mirrors
|
|
state: link
|
|
src: /export/mirrors
|
|
owner: root
|
|
group: root
|
|
|
|
- name: create config directory
|
|
file:
|
|
path: /etc/sync-mirrors
|
|
state: directory
|
|
mode: 0755
|
|
owner: root
|
|
group: root
|
|
|
|
- name: create runtime and log directories
|
|
file:
|
|
path: "{{ item }}"
|
|
state: directory
|
|
mode: 0755
|
|
owner: mirror
|
|
group: mirror
|
|
with_items:
|
|
- /var/run/sync-mirrors
|
|
- /var/log/sync-mirrors
|
|
|
|
- name: configure tmpfiles to create runtime directory on boot
|
|
copy:
|
|
dest: /usr/lib/tmpfiles.d/sync-mirrors.conf
|
|
content: "d /run/sync-mirrors 0755 mirror mirror\n"
|
|
mode: 0644
|
|
owner: root
|
|
group: root
|
|
|
|
- name: copy mirroring script
|
|
copy:
|
|
dest: /usr/local/bin/sync-mirrors
|
|
src: sync-mirrors
|
|
mode: 0755
|
|
owner: root
|
|
group: root
|
|
|
|
- name: create mirror cron job
|
|
cron:
|
|
name: sync-mirrors
|
|
hour: "0,6,12,18"
|
|
minute: 0
|
|
job: /usr/local/bin/sync-mirrors
|
|
user: mirror
|
|
|
|
- name: create log rotate cron job for sync-mirrors
|
|
cron:
|
|
name: sync-mirrors-logs
|
|
hour: 5
|
|
minute: 10
|
|
job: "find /var/log/sync-mirrors/ -xdev -type f -mtime +30 -name '*.log' -execdir rm {} \\+"
|
|
user: mirror
|