ajout du playbook upgrade_nuage_instance
[lhc/ansible.git] / tasks / update_nextcloud.yml
diff --git a/tasks/update_nextcloud.yml b/tasks/update_nextcloud.yml
new file mode 100644 (file)
index 0000000..e541c37
--- /dev/null
@@ -0,0 +1,67 @@
+---
+- name: stop webserver service
+  become: true
+  ansible.builtin.service:
+    name: "{{ nextcloud_websrv }}"
+    state: stopped
+  
+- name: update nextcloud root dir symbolic link
+  become: true
+  ansible.builtin.file:
+    src: "{{ nextcloud_source }}"
+    dest: "{{ nextcloud_webroot }}/nextcloud"
+    owner: nextcloud
+    group: nextcloud
+    state: link
+    follow: false
+
+- name: update nextcloud common app dir symbolic link
+  become: true
+  ansible.builtin.file:
+    src: "{{ nextcloud_common }}"
+    dest: "{{ nextcloud_webroot }}/common"
+    owner: nextcloud
+    group: nextcloud
+    state: link
+    follow: false
+
+- name: start webserver service
+  become: true
+  ansible.builtin.service:
+    name: "{{ nextcloud_websrv }}"
+    state: started
+
+- name: Run nextcloud upgrade script
+  become_user: "{{ nextcloud_websrv_user }}"
+  become: true
+  command: ./console upgrade
+  args:
+    chdir: "{{ nextcloud_webroot }}"
+  register: nc_upgrade_result
+
+- name: display upgrade result
+  debug:
+    var: nc_upgrade_result.stdout_lines
+
+- block:
+  - name: wait for nextcloud maintenance mode to become false
+    become_user: "{{ nextcloud_websrv_user }}"
+    become: true
+    command: ./console status
+    args:
+      chdir: "{{ nextcloud_webroot }}"
+    register: result
+    until: "'maintenance: false' in result.stdout"
+    retries: 15
+    delay: 20
+  rescue:
+  - name: deactivate maintenance mode manually
+    become_user: "{{ nextcloud_websrv_user }}"
+    become: true
+    command: ./console maintenance:mode --off
+    args:
+          chdir: "{{ nextcloud_webroot }}"
+    register: rescue
+  - name: display rescue
+    debug:
+      var: rescue.stdout_lines
\ No newline at end of file