A dev environment for the mirror.
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 
 
mirror-env/roles/mirror/tasks/main.yml

135 lines
3.3 KiB

- name: install python3-pip
apt:
name: python3-pip
state: present
update_cache: yes
- name: install weir (for zfssync)
pip:
name: weir
executable: pip3
- name: copy cron job
copy:
src: "{{ role_path }}/templates/cron/csc-mirror"
dest: /etc/cron.d/csc-mirror
owner: root
group: root
mode: "0644"
- name: copy zfssync python script
copy:
src: "{{ role_path }}/templates/zfssync.py"
dest: /usr/local/bin/zfssync.py
owner: root
group: root
mode: "0755"
- name: restart and enable cron
systemd:
name: cron
state: restarted
enabled: yes
- name: copy files for /home/mirror
copy:
src: "{{ role_path }}/templates/mirror/"
dest: /home/mirror
owner: mirror
group: mirror
mode: preserve
- name: copy files for /mirror/root
copy:
src: "{{ role_path }}/templates/root/root/"
dest: /mirror/root
owner: root
group: csc-mirror
mode: preserve
- name: create merlin subdirectories
file:
path: "/mirror/merlin/{{ item.file }}"
owner: "{{ item.owner }}"
group: "{{ item.owner }}"
mode: "0755"
state: directory
loop:
- { file: dev, owner: root }
- { file: bin, owner: root }
- { file: run, owner: mirror }
- name: copy arthur and busybox into merlin
copy:
src: "{{ role_path }}/templates/root/merlin/{{ item.file }}"
dest: "/mirror/merlin/{{ item.dest }}"
owner: root
group: root
mode: "0755"
loop:
- { file: "arthur", dest: "arthur" }
- { file: "busybox", dest: "bin/busybox" }
- name: create symlinks from busybox and arthur
# noqa deprecated-command-syntax
# need chdir to create relative symlinks
command:
cmd: "ln -s {{ item.src }} {{ item.dest }}"
chdir: "/mirror/merlin/bin"
creates: "/mirror/merlin/bin/{{ item.dest }}"
warn: no
loop:
- { src: busybox, dest: cd }
- { src: busybox, dest: cp }
- { src: busybox, dest: ln }
- { src: busybox, dest: ls }
- { src: busybox, dest: rm }
- { src: busybox, dest: sh }
- { src: busybox, dest: sleep }
- { src: ../arthur, dest: arthur }
# https://tldp.org/LDP/lfs/LFS-BOOK-6.1.1-HTML/chapter06/devices.html
- name: create special files
# /dev/(random|urandom) normally has "-m 0444"
# donno why mirror has writable random and urandom
command:
cmd: "mknod -m 0666 /mirror/merlin/dev/{{ item.file }} c 1 {{ item.type }}"
creates: "/mirror/merlin/dev/{{ item.file }}"
loop:
- { type: "3", file: "null" }
- { type: "8", file: "random" }
- { type: "9", file: "urandom" }
- name: create first merlin.sock symlink
# noqa deprecated-command-syntax
# need chdir to create relative symlinks
command:
cmd: "ln -s run/merlin.sock merlin.sock"
chdir: "/mirror/merlin"
creates: "/mirror/merlin/merlin.sock"
warn: no
- name: create second merlin.sock symlink
file:
src: "/mirror/merlin/merlin.sock"
dest: "/home/mirror/merlin/merlin.sock"
owner: root
group: root
state: link
follow: no
force: yes
- name: copy merlin.service
copy:
src: "{{ role_path }}/templates/mirror/merlin/merlin.service"
dest: "/etc/systemd/system/merlin.service"
owner: root
group: root
mode: "0644"
# - name: start merlin.service
# # merlin is disabled on mirror
# systemd:
# name: merlin
# state: started
# # enabled: yes