mirror-env/mirror/main.yml

59 lines
1.5 KiB
YAML

---
# https://wiki.csclub.uwaterloo.ca/Mirror
#
# may want to split this into multiple files
#
# right now we will just take configs from mirror
# later we will edit them as required
#
# user should running this as root:root
# so unsure if need to set owner:group for files/dirs
#
# unsure that hosts does
- hosts: 127.0.0.1
tasks:
- name: install dependencies
apt:
pkg:
- zfsutils-linux
- rsync
- nginx
- proftpd
state: latest
update_cache: true
state: started
- name: create zfs mountpoint
file:
path: /mirror/root/.cscmirror
state: directory
owner: root
group: root
mode: 0777
recurse: yes
- name: create and mount zpool
# double check this works (and produces the correct result)
# may be better to use the /dev/disk/by-id/... instead
commmand: zpool create -f -m /mirror/root/.cscmirror cscmirror raidz2 /dev/vdc /dev/vdd /dev/vde /dev/vdf
# may need to mount it (also check that it will automount on boot)
# zfs mount -a
- name: enable and start rsync daemon
systemd:
name: rsync
enabled: true
state: started
- name: add rsync config
template:
src: rsync/rsyncd.conf.j2
dest: /etc/rsyncd.conf
owner: root
group: root
mode: 0644
template:
src: rsync/rsyncd-filter.conf.j2
dest: /etc/rsyncd-filter.conf
owner: root
group: root
mode: 0644
notify: restart rsync