traduction de uptade_nuageinstance en français master
authorrominique <romain.legoff@heureux-cyclage.org>
Thu, 10 Oct 2024 14:12:28 +0000 (16:12 +0200)
committerrominique <romain.legoff@heureux-cyclage.org>
Thu, 10 Oct 2024 14:12:28 +0000 (16:12 +0200)
création du nouveau dossier common app à la fin  de la mise à jour pour bénéficier des applications à jours au lieu d'utiliser celle de la version n-1

MAJ_instance_nuage.yml [new file with mode: 0644]
update_nuage_instance.yml [deleted file]

diff --git a/MAJ_instance_nuage.yml b/MAJ_instance_nuage.yml
new file mode 100644 (file)
index 0000000..64e11e5
--- /dev/null
@@ -0,0 +1,117 @@
+---
+# commande pour lancer le playbook: ansible-playbook MAJ_instance_nuage.yml
+# ATTENTION pour l'instance "test-nuage" il faut lancer la commande ci-dessous pour lancer le playbook:
+# ansible-playbook MAJ_instance_nuage.yml --extra-vars "test_nuage=true"
+
+- name: Promp pour définir les variables
+  hosts: ligatures
+  vars_prompt:
+
+    - name: nouvelle_version
+      prompt: 'Nouvelle version nextcloud à télécharger?(ex: 27.1.8)'
+      private: false
+      default: "28.0.6"
+
+    - name: TLD
+      prompt: 'TLD du site à mettre à jour?(ex: org)'
+      private: false
+      default: "org"
+
+    - name: DOMAIN
+      prompt: 'Domaine du site à mettre à jour?(ex: heureux-cyclage)'
+      private: false
+      default: "heureux-cyclage"
+
+    - name: SIGLE
+      prompt: 'Sigle du site à mettre à jour?(ex: lhc)'
+      private: false
+      default: "lhc"
+
+  pre_tasks:
+
+    - name: Vérif si la source nextcloud est téléchargée
+      become: true
+      ansible.builtin.stat:
+        path: "{{ nextcloud_source }}"
+      register: new_nextcloud_source
+
+    - name: Vérif' si le dossier common app est créé
+      become: true
+      ansible.builtin.stat:
+        path: "{{ nextcloud_common }}"
+      register: new_nextcloud_common
+
+    - name: specific test-nuage tasks
+      ansible.builtin.set_fact:
+        nextcloud_webroot: "/home/sites/data/{{ TLD }}/{{ DOMAIN }}/test-nuage"
+        nextcloud_websrv_user: site_lhc_test-nuage
+        nextcloud_php_user: php_lhc_test_nuage
+      when: test_nuage is defined
+
+    - name: Obtenir l'ancienne version  # noqa : command-instead-of-module
+      become_user: "{{ nextcloud_php_user }}"
+      become: true
+      ansible.builtin.command: '{{ nextcloud_webroot }}/console status --output=json'
+      register: result
+
+    - name: Enregistrer l'ancienne version
+      ansible.builtin.set_fact:
+        ancienne_version: "{{ tmp.versionstring }}"
+      vars:
+        tmp: "{{ result.stdout | from_json }}"
+
+  tasks:
+
+    - name: Include download_nextcloud_source tasks
+      ansible.builtin.include_tasks: tasks/download_nextcloud_source.yml
+      when: not new_nextcloud_source.stat.exists
+      vars:
+        ansible_become: true
+        become_user: nextcloud
+
+# on met à jour une instance uniquement si test-nuage a préalablement été mis à jour dans cette version
+
+    - name: fail si test-nuage n'a pas été mis à jour avec cette version
+      ansible.builtin.fail:
+        msg: 'il faut déjà mettre à jour test-nuage avec cette version'
+      when: not new_nextcloud_common.stat.exists and test_nuage is not defined
+
+    - name: Include backup tasks
+      ansible.builtin.include_tasks: tasks/backup_nextcloud.yml
+
+    - name: block upgrade
+      block:
+
+        - name: Include update tasks
+          ansible.builtin.include_tasks: tasks/update_nextcloud.yml
+
+        - name: Display upgrade result
+          ansible.builtin.debug:
+            msg: "Le nuage de {{ DOMAIN }} a été mis à jour avec la nouvelle version {{ nouvelle_version }}"
+
+      always: 
+
+        - name: Demande si besoin de restaurer la version précédente
+          ansible.builtin.pause:
+            prompt: 'Voulez-vous restaurer la version precedente?(oui/non)'
+            echo: true
+          register: restore_promp
+
+        - name: Definir la variable restore
+          ansible.builtin.set_fact:
+            restore: "{{ restore_promp.user_input | default(non) }}"
+
+        - name: Include restore tasks si restore = oui
+          ansible.builtin.include_tasks: tasks/restore_nextcloud.yml
+          when: restore == 'oui'
+          
+    - name: Création du dossier common de la nouvelle version en utilisant les apps de l'instance test-nuage
+      become: true
+      ansible.builtin.copy:
+        src: "/home/sites/data/org/heureux-cyclage/test-nuage/apps/"
+        dest: "{{ nextcloud_common_files_path }}/nextcloud-{{ nouvelle_version }}"
+        remote_src: true # because the copy is from remote host to remote host
+        mode: '754' # or 'u=rwx,g=rx,o=r'
+        owner: nextcloud
+        group: nextcloud
+      when: not new_nextcloud_common.stat.exists and test_nuage is defined
\ No newline at end of file
diff --git a/update_nuage_instance.yml b/update_nuage_instance.yml
deleted file mode 100644 (file)
index 5c0aa56..0000000
+++ /dev/null
@@ -1,117 +0,0 @@
----
-# commande pour lancer le playbook: ansible-playbook update_nuage_instance.yml
-# ATTENTION pour l'instance "test-nuage" il faut lancer la commande ci-dessous pour lancer le playbook:
-# ansible-playbook update_nuage_instance.yml --extra-vars "test_nuage=true"
-
-- name: Promp pour définir les variables
-  hosts: ligatures
-  vars_prompt:
-
-    - name: nouvelle_version
-      prompt: 'Nouvelle version nextcloud à télécharger?(ex: 27.1.8)'
-      private: false
-      default: "28.0.6"
-
-    - name: TLD
-      prompt: 'TLD du site à mettre à jour?(ex: org)'
-      private: false
-      default: "org"
-
-    - name: DOMAIN
-      prompt: 'Domaine du site à mettre à jour?(ex: heureux-cyclage)'
-      private: false
-      default: "heureux-cyclage"
-
-    - name: SIGLE
-      prompt: 'Sigle du site à mettre à jour?(ex: lhc)'
-      private: false
-      default: "lhc"
-
-  pre_tasks:
-
-    - name: Vérif si la source nextcloud est téléchargée
-      become: true
-      ansible.builtin.stat:
-        path: "{{ nextcloud_source }}"
-      register: new_nextcloud_source
-
-    - name: Vérif' si le dossier common app est créé
-      become: true
-      ansible.builtin.stat:
-        path: "{{ nextcloud_common }}"
-      register: new_nextcloud_common
-
-    - name: specific test-nuage tasks
-      ansible.builtin.set_fact:
-        nextcloud_webroot: "/home/sites/data/{{ TLD }}/{{ DOMAIN }}/test-nuage"
-        nextcloud_websrv_user: site_lhc_test-nuage
-        nextcloud_php_user: php_lhc_test_nuage
-      when: test_nuage is defined
-
-    - name: Obtenir l'ancienne version  # noqa : command-instead-of-module
-      become_user: "{{ nextcloud_php_user }}"
-      become: true
-      ansible.builtin.command: '{{ nextcloud_webroot }}/console status --output=json'
-      register: result
-
-    - name: Enregistrer l'ancienne version
-      ansible.builtin.set_fact:
-        ancienne_version: "{{ tmp.versionstring }}"
-      vars:
-        tmp: "{{ result.stdout | from_json }}"
-
-  tasks:
-
-    - name: Include download_nextcloud_source tasks
-      ansible.builtin.include_tasks: tasks/download_nextcloud_source.yml
-      when: not new_nextcloud_source.stat.exists
-      vars:
-        ansible_become: true
-        become_user: nextcloud
-
-# on met à jour une instance uniquement si test-nuage a préalablement été mis à jour dans cette version
-
-    - name: fail si test-nuage n'a pas été mis à jour avec cette version
-      ansible.builtin.fail:
-        msg: 'il faut déjà mettre à jour test-nuage avec cette version'
-      when: not new_nextcloud_common.stat.exists and test_nuage is not defined
-
-    - name: Création du dossier common de la nouvelle version en utilisant les apps de l'instance test-nuage
-      become: true
-      ansible.builtin.copy:
-        src: "/home/sites/data/org/heureux-cyclage/test-nuage/apps/"
-        dest: "{{ nextcloud_common_files_path }}/nextcloud-{{ nouvelle_version }}"
-        remote_src: true # because the copy is from remote host to remote host
-        mode: '754' # or 'u=rwx,g=rx,o=r'
-        owner: nextcloud
-        group: nextcloud
-      when: not new_nextcloud_common.stat.exists and test_nuage is defined
-
-    - name: Include backup tasks
-      ansible.builtin.include_tasks: tasks/backup_nextcloud.yml
-
-    - name: block upgrade
-      block:
-
-        - name: Include update tasks
-          ansible.builtin.include_tasks: tasks/update_nextcloud.yml
-
-        - name: Display upgrade result
-          ansible.builtin.debug:
-            msg: "Le nuage de {{ DOMAIN }} a été mis à jour avec la nouvelle version {{ nouvelle_version }}"
-
-      always: 
-
-        - name: Demande si besoin de restaurer la version précédente
-          ansible.builtin.pause:
-            prompt: 'Voulez-vous restaurer la version precedente?(oui/non)'
-            echo: true
-          register: restore_promp
-
-        - name: Definir la variable restore
-          ansible.builtin.set_fact:
-            restore: "{{ restore_promp.user_input | default(non) }}"
-
-        - name: Include restore tasks si restore = oui
-          ansible.builtin.include_tasks: tasks/restore_nextcloud.yml
-          when: restore == 'oui'
\ No newline at end of file