corrections du scenario nuage
[lhc/ansible.git] / creation_nouveau_site.yml
index cd2f0f2..becb28f 100644 (file)
@@ -2,22 +2,20 @@
 # attention - Par défaut ce scipt se lancer vers ligatures
 
 - name: Promp pour définir les variables du nouveau ite
-  hosts: vm_debian11 # test avec un nom de vm
+  hosts: ligatures
   become: true # toutes les tâches seront pas défaut éxécuter en tant que root
 
   vars:
 #    config_nginx: true  à l'avenir on pourrait demander à l'utilisateur de choisir si il veut configurer nginx
-    php_version: 8.0
-    postgres_version: 15
-    nouvelle_version: 27.1.6 # nextcloud
-    ancienne_version: 27.1.5 # nextcloud
+    # nouvelle_version: 27.1.7 # nextcloud
+    # ancienne_version: 27.1.6 # nextcloud
 
   vars_prompt:
 
     - name: SITE
-      prompt: 'quel type de site?(ex: nuage, www, wiki, paheko)'
+      prompt: 'quel type de site?(ex: nuage, www, wiki, paheko ou gestion)'
       private: false
-      default: "paheko"
+      default: "nuage"
 
     - name: TLD
       prompt: 'TLD du site à mettre à jour?(ex: org)'
@@ -59,7 +57,7 @@
     - name: Vérifier le sigle n'est pas déjà utilisé
       ansible.builtin.lineinfile:
         dest: /etc/passwd
-        search_string: "site_{{ SIGLE }}"
+        search_string: "site_{{ SIGLE }}_{{ SITE }}"
         state: absent
       check_mode: true
       changed_when: false
     - name: Inclure la configuration d'un site web basique
       ansible.builtin.include_tasks: tasks/config_www.yml
 
+    - name: Inclure la configuration nginx
+      ansible.builtin.include_tasks: tasks/config_nginx.yml
+      vars:
+        template_site: "{{ SITE }}"
+      when: besoin_https == 'non'
+
+# scenario pre-install nginx sans ssl
+# test installed=false or needupgrade:true
+# test installed=true et needupgrade:false
+# puis certbot à la fin
+# puis template nginx ssl pour test manuel
+
     - name: Bloc permettant de générer les certificats SSL
       when: besoin_https == 'oui'
       block:
@@ -81,8 +91,9 @@
 
         - name: Générer un certififat avec certbot # noqa : command-instead-of-module
           become: true
-          ansible.builtin.command: 'certbot certonly -nginx -d {{ SITE }}.{{ DOMAIN }}.{{ TLD }}'
+          ansible.builtin.command: 'certbot certonly -n --nginx -d {{ SITE }}.{{ DOMAIN }}.{{ TLD }}'
           register: certbot_log
+          ignore_errors: true
           changed_when: false
 
         - name: Afficher les logs certbot
             var: certbot_log
           when: certbot_log is defined
 
+        - name: Activer la conf ssl dans nginx
+          ansible.builtin.set_fact:
+            ssl_ready: true
+          when: certbot_log is defined
 
-    - name: Inclure la configuration nginx
-      ansible.builtin.include_tasks: tasks/config_nginx.yml
-      vars:
-        template_site: "{{ SITE }}"
+        - name: Inclure la configuration nginx avec ssl
+          ansible.builtin.include_tasks: tasks/config_nginx.yml
+          vars:
+            template_site: "{{ SITE }}"
 
     - name: Inclure la configuration d'un pool PHP
       ansible.builtin.include_tasks: tasks/config_pool_php.yml
-      when: config_php == 'oui' or SITE == 'paheko' or SITE == 'nuage'
+      when: config_php == 'oui' or SITE == 'paheko' or SITE == 'gestion' or SITE == 'nuage'
 
     - name: Inclure la configuration nextcloud si besoin
       ansible.builtin.include_tasks: tasks/config_nuage.yml
 
     - name: Inclure la configuration paheko si besoin
       ansible.builtin.include_tasks: tasks/config_paheko.yml
-      when: SITE == 'paheko'
-
-      # MAJ borgmatic conf
-## Mettre à jour la conf de borgmatic pour intégrer les dossiers du nouveau nuage dans 'source_directories'
+      when: SITE == 'paheko' or SITE == 'gestion'
 
-    # vim /etc/borgmatic/config.yaml
+    - name: Inclure le configuration du backup
+      ansible.builtin.include_tasks: tasks/config_backup.yml
 
-    # - /home/sites/data/${TLD}/${DOMAIN}/${SITE}/config
-    # - /home/sites/data/${TLD}/${DOMAIN}/${SITE}/data
\ No newline at end of file
+# SFTP key