Emmanuel Bouthenot пре 7 година
родитељ
комит
d25989ba51

+ 10 - 0
roles/rsyncserver/defaults/main.yml

@@ -0,0 +1,10 @@
+#
+# Default variables for rsync daemon
+#
+
+with_rsyncd: False
+rsyncd_uid: backup
+rsyncd_gid: backup
+rsyncd_max_connections: 10
+
+# vim: ft=ansible

+ 1 - 0
roles/rsyncserver/handlers/main.yml

@@ -0,0 +1 @@
+- include: 'rsyncd.yml'

+ 6 - 0
roles/rsyncserver/handlers/rsyncd.yml

@@ -0,0 +1,6 @@
+- name: 'Restart Rsync Daemon'
+  service:
+    name: 'rsync'
+    state: 'restarted'
+
+# vim: ft=ansible

+ 5 - 0
roles/rsyncserver/tasks/main.yml

@@ -0,0 +1,5 @@
+- include: 'rsyncd.yml'
+  tags: [rsync]
+  when: with_rsyncd
+
+# vim: ft=ansible

+ 31 - 0
roles/rsyncserver/tasks/rsyncd.yml

@@ -0,0 +1,31 @@
+- name: 'Install Rsync daemon related packages'
+  apt:
+    pkg: '{{ item }}'
+    state: 'installed'
+  with_items:
+    - 'rsync'
+
+- name: 'Create Rsync daemon configuration directory'
+  file:
+    path: '/etc/rsync.d'
+    owner: 'root'
+    group: 'root'
+    mode: 0755
+    state: 'directory'
+
+- name: 'Install Rsync daemon configuration'
+  template:
+    src: 'templates/rsyncd.conf.j2'
+    dest: '/etc/rsyncd.conf'
+    owner: 'root'
+    group: 'root'
+    mode: 0644
+  notify:
+    - 'Restart Rsync Daemon'
+
+- name: 'Ensure Rsync daemon is running'
+  service:
+    name: 'rsync'
+    state: 'started'
+
+# vim: ft=ansible

+ 12 - 0
roles/rsyncserver/templates/rsyncd.conf.j2

@@ -0,0 +1,12 @@
+{% if ansible_prolog -%}
+{% from 'templates/ansible/prolog.j2' import prolog with context %}
+{{ prolog() }}
+{% endif -%}
+uid = {{ rsyncd_uid }}
+gid = {{ rsyncd_gid }}
+use chroot = yes
+max connections = {{ rsyncd_max_connections }}
+log file = /var/log/rsyncd.log
+
+&include /etc/rsync.d
+