]> git.phdru.name Git - ansible.git/blobdiff - playbooks/debian/roles/dehydrated/tasks/main.yml
Rename `install-dehydrated` -> `dehydrated`
[ansible.git] / playbooks / debian / roles / dehydrated / tasks / main.yml
diff --git a/playbooks/debian/roles/dehydrated/tasks/main.yml b/playbooks/debian/roles/dehydrated/tasks/main.yml
new file mode 100644 (file)
index 0000000..d43ef8a
--- /dev/null
@@ -0,0 +1,54 @@
+- name: Test if dehydrated is already cloned
+  local_action:
+    module: stat
+    path: /usr/local/src/LetsEncrypt/dehydrated/.git/config
+  register: dehydrated
+
+- name: Install git
+  local_action:
+    module: apt
+    autoclean: yes
+    autoremove: yes
+    install_recommends: no
+    name: git
+    purge: yes
+    state: latest
+    update_cache: yes
+  when: not dehydrated.stat.exists
+
+- name: Prepare to clone dehydrated
+  local_action:
+    module: file
+    path: /usr/local/src/LetsEncrypt
+    state: directory
+  when: not dehydrated.stat.exists
+
+- name: Clone dehydrated
+  local_action:
+    module: git
+    repo: https://github.com/lukas2511/dehydrated.git
+    dest: /usr/local/src/LetsEncrypt/dehydrated
+  when: not dehydrated.stat.exists
+
+- name: Prepare the server to syncronize dehydrated
+  become: true
+  file:
+    path: /usr/local/src/LetsEncrypt
+    state: directory
+    owner: root
+    group: staff
+    mode: "ug+rwx,o+rx,g+s"
+
+- name: Syncronize dehydrated to the server
+  synchronize:
+    src: /usr/local/src/LetsEncrypt/dehydrated
+    dest: /usr/local/src/LetsEncrypt
+
+- name: Configure dehydrated weekly run
+  become: true
+  copy:
+    src: dehydrated
+    dest: /etc/cron.weekly
+    owner: root
+    group: root
+    mode: '0700'