From 8e0fb8aa408fdab1dce161f82bcebf9e5445c8d2 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Guillaume=20Perr=C3=A9al?= <guillaume.perreal@inrae.fr>
Date: Fri, 26 Nov 2021 16:04:50 +0100
Subject: [PATCH] =?UTF-8?q?D=C3=A9place=20la=20documentation=20d'installat?=
 =?UTF-8?q?ion=20dans=20un=20sous-r=C3=A9pertoire.?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

---
 .gitignore                                    |   2 -
 .gitlab-ci.yml                                |   1 +
 INSTALL_Ansible_Deployer.md                   |  97 ---
 README.md                                     |   2 +-
 .dockerignore => doc/.dockerignore            |   0
 .editorconfig => doc/.editorconfig            |   0
 doc/.gitignore                                |   3 +
 {files => doc/files}/local_pg_dump            |   0
 .../guide_installation_OpenBDOH.md            |   0
 {test => doc/test}/Dockerfile                 |   0
 {test => doc/test}/run.sh                     |   0
 work/OpenBDOH_rapport.odt                     | Bin 20673 -> 0 bytes
 work/ansible_commandes_importantes.md         |   0
 work/deployer_commandes_importantes.md        |  48 --
 work/import_fichiers.sh                       |   8 -
 work/liste_commandes_ansible.md               | 228 ------
 work/liste_commandes_deployer.md              | 756 ------------------
 work/liste_etapes_ansible_openbdoh.txt        |  88 --
 work/liste_fichiers_configuration.md          |   8 -
 work/tri_liste_commandes_ansible.md           | 229 ------
 20 files changed, 5 insertions(+), 1465 deletions(-)
 delete mode 100644 .gitignore
 delete mode 100644 INSTALL_Ansible_Deployer.md
 rename .dockerignore => doc/.dockerignore (100%)
 rename .editorconfig => doc/.editorconfig (100%)
 create mode 100644 doc/.gitignore
 rename {files => doc/files}/local_pg_dump (100%)
 rename guide_installation_OpenBDOH.md => doc/guide_installation_OpenBDOH.md (100%)
 rename {test => doc/test}/Dockerfile (100%)
 rename {test => doc/test}/run.sh (100%)
 delete mode 100644 work/OpenBDOH_rapport.odt
 delete mode 100644 work/ansible_commandes_importantes.md
 delete mode 100644 work/deployer_commandes_importantes.md
 delete mode 100644 work/import_fichiers.sh
 delete mode 100644 work/liste_commandes_ansible.md
 delete mode 100644 work/liste_commandes_deployer.md
 delete mode 100644 work/liste_etapes_ansible_openbdoh.txt
 delete mode 100644 work/liste_fichiers_configuration.md
 delete mode 100644 work/tri_liste_commandes_ansible.md

diff --git a/.gitignore b/.gitignore
deleted file mode 100644
index 29443501b..000000000
--- a/.gitignore
+++ /dev/null
@@ -1,2 +0,0 @@
-/script.sh
-/bdoh-*.tar.bz2
diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml
index 928dcd50b..8dd8b7376 100644
--- a/.gitlab-ci.yml
+++ b/.gitlab-ci.yml
@@ -26,6 +26,7 @@ test-run:
     BDOH_VERSION: v4.0.2
     BDOH_HOST: docker
   before_script:
+    - cd doc
     - apk add -U bash sed jq curl tar bzip2
     # Télécharge une archive de BDOH
     - |
diff --git a/INSTALL_Ansible_Deployer.md b/INSTALL_Ansible_Deployer.md
deleted file mode 100644
index 6337814c8..000000000
--- a/INSTALL_Ansible_Deployer.md
+++ /dev/null
@@ -1,97 +0,0 @@
-OpenBDOH - Base de Données des Observatoires Hydrologiques
-======================================================
-
-# Guide d'installation
-
-## Prérequis:
-* (Une paire de clefs SSH ).
-* Un poste administrateur noté A.
-* Un poste cible, destiné à devenir serveur BDOH, noté S.
-* S doit fonctionner sous un des systèmes d'exploitation suivants: Debian (Buster, Stretch), Ubuntu (Xenial, Bionic, Focal).
-* Les fichiers détaillant la liste des paquets PHP nécessaires sont détaillés selon la distribution dans les fichiers correspondants situés dans ansible/group_vars; étendre la compatibilité requiert de générer une liste semblable de paquets PHP.
-* Un accès ssh root à S depuis A, si besoin voici la marche à suivre:
-* Un service DNS fonctionnel, de telle sorte que S est accessible par son nom de domaine.
-* Un service habilité à délivrer des certificats SSL.
-
-## Préparation de S:
-* Installer python s'il n'est pas présent sur S:
-	* `sudo apt install -y python`
-* Ajouter le dépôt postgresql:
-	* `sudo apt -y install vim bash-completion wget`
-	* `wget --quiet -O - https://www.postgresql.org/media/keys/ACCC4CF8.asc | sudo apt-key add -`
-	* `echo "deb http://apt.postgresql.org/pub/repos/apt/ `lsb_release -cs`-pgdg main" |sudo tee  /etc/apt/sources.list.d/pgdg.list`
-	* `sudo apt update puis sudo apt full-upgrade`
-* Installer les paquets realtifs à Postgresql suivants:
-	* postgresql, postgresql-client, postgresql-1x et postgresql-client-1x (selon la dernière version), postgresql-client-common, postgresql-common, python3-psycopg2.
-	* En cas d'erreur due à /etc/postgresql/ vide:
-		* purger tous les paquets concernés: `sudo apt remove --purge postgresql*` .
-		* réinitialiser les locales: `dpkg-reconfigure locales`.
-		* recommencer l'installation comme ci-dessus.
-
-## Partie Ansible:
-* Installer le serveur Ansible OpenBDOH sur A:
-	* Dans un répertoire de travail, cloner le dépôt Ansible dédié à OpenBDOH:
-		* par HTTPS: `git clone --branch OpenBDOH --single-branch https://gitlab.irstea.fr/pole-is/ansible.git` .
-		* par SSH: `git clone --branch OpenBDOH --single-branch git@gitlab-ssh.irstea.fr:pole-is/ansible.git` .
-* Créer un fichier de configuration hôte: dans ansible/host_vars/, créer un fichier <nom_de_domaine_de_S>.yml .
-Dans ce fichier, copier le contenu du fichier vm-bdoh-tst. Ce fichier contient des informations de configuration propres à BDOH.
-* Déterminer la qualité de serveur de qualification ou de production de S.
-* Ajouter S à l'inventaire Ansible: dans ansible/inv/qualif/00-hosts (ansible/inv/prod/00-hosts dans le cas d'un serveur de production), ajouter le nom de domaine de S dans les catégories [bdoh] et [qualif]\ ([prod] dans le cas d'un serveur de production) .
-* Gestion des certificats SSL:
-	* ajouter les fichiers <nom_de_domaine_de_S>.crt/etc dans ansible/files/ssl/certs/, et les certificats intermédiaires délivrés par le service dédié dans ansible/files/ssl/intermediates/ .
-	* modifier les options de configuration relatives aux certificats SSL:
-		* dans ansible/group_vars/phpapp/vars.yml : changer "ssl: false" en "ssl: true".
-		* dans ansible/roles/phpapp/templates/apache2/vhost-ssl.conf.j2 : changer "SSLEngine off" en "SSLEngine on", et renseigner les chemins d'accès des fichiers certificats.
-* Lancer le script ansible/scripts/update_known_hosts.sh, permettant de vérifier l'inventaire.
-* Lancer le playbook ansible sur S: `./phpapp.yml -i inv/qualif (ou prod respectivement) -l "<nom_de_domaine_de_S>" -D (-e "ssl_paths=files/ssl/certs/" en cas d'erreur "ssl_paths undefined")`.
-* Détail des options:
-	* -i inv/<prod ou qualif selon le serveur> : permet de choisir la partie de l'inventaire où se trouve le serveur à configurer.
-	* -l "<nom_de_domaine_de_S>" : permet de cibler précisément le serveur à configurer et de n'appliquer la configuration que sur celui-ci.
-	* -D : permet de montrer pour chaque étape les changements opérés; il est possible d'ajouter l'option -v (-vv, ou -vvv) afin d'obtenir plus d'indications sur le processus.
-	* -e "ssl_paths=files/ssl/certs/" : permet de redéfinir la variable "ssl_paths" en cas d'erreur "ssl_path undefined".
-* Si besoin installer depuis S les paquets suivants:
-	* en cas d'erreur NodeJs: les paquets apt nodejs et npm.
-	* en cas d'erreur postgresql: le paquet apt python-pip, puis les paquets pip ipaddress et pyscopg2.
-
-## Partie déploiement de d'OpenBDOH
-
-### Configuration de la base de données:
-* Installer postgis (version 2.5 ou supérieur):
-	* sur S, installer les paquets suivants: postgis, postgresql-1x-postgis-2.5 et postgresql-1x-postgis-2.5-scripts, selon les versions de postgresql et de postgis désirées.
-* Effectuer le paramétrage initial de la base de données:
-	* sur S, se connecter à l'invite de commande Postgresql: `sudo -u postgres psql`.
-	* activer l'extension Postgis: `CREATE EXTENSION postgis;`
-	* créer un utilisateur devops: `CREATE USER devops;`
-	* donner à l'utilisateur devops le statut de superuser: `ALTER ROLE devops SUPERUSER;`
-
-### Apache2:
-* Sur S, dans le dossier de configuration /etc/apache2/sites-available/, créer un fichier de configuration <nom_de_domaine_de_S>.conf.
-* Remplir ce fichier sur le modèle du fichier vm-bdoh-tst fourni en exemple. 
-
-### Deployer:
-* Installer un OpenBDOH de référence sur A:
-	*  Dans un répertoire de travail, cloner le dépôt de l'application OpenBDOH:
-		* par HTTPS: `git clone --branch OpenBDOH --single-branch https://gitlab.irstea.fr/pole-is/bdoh.git` .
-		* par SSH: `git clone --branch OpenBDOH --single-branch git@gitlab-ssh.irstea.fr:pole-is/bdoh.git` .
-* Ajouter S à la liste des hôtes:
-	* sur A, dans /bdoh/.deploy/hosts.yml, ajouter un paragraphe au nom de S, sur le modèle de vm-bdoh-tst. Ce fichier définit l'environnement et la branche de BDOH à déployer sur S.
-	* sur A, dans /bdoh/.deploy/known_hosts, ajouter la clef publique de S afin de permettre son authentification lors du déploiement: `ssh-keyscan <nom_de_domaine_de_S> >>.deploy/known_hosts` .
-* Installation du service bdoh-job-worker:
-	* sur S, dans /etc/systemd/system/, copier le fichier bdoh-job-worker.service d'exemple.
-	* configurer les droits d'accès au service nouvellement créé: `sudo chown root:root bdoh-job-worker.service` .
-	* activer le service: `sudo systemctl enable bdoh-job-worker.service` .
-* Lancement du déploiement d'OpenBDOH avec Deployer:
-	* sur A, dans /bdoh/, lancer la commande de déploiement: `vendor/bin/dep deploy <nom_de_domaine_de_S> `.
-* En cas d'erreur sur les droits d'accès de yarn:
-	* sur S, reconfigurer les droits d'accès: `sudo chmod u+x /home/devops/.config` .
-	* dans /var/www/bdoh/ relancer l'installation de yarn: `yarn install –pure-lockfile` .
-* Paramétrage de la base de données:
-	* sur S, dans l'invite de commande psql, créer une nouvelle base de données:
-		* `CREATE TABLE bdoh;`
-	* dans /var/www/bdoh/shared/app/config/, remplir le fichier de configuration parameters.yml selon le modèle fourni en prenant en compte les noms, mot de passe, et versions de votre base de données créée précédemment.
-	* dans l'invite de commande psql, paramétrer les chemins d'accès: `ALTER ROLE devops SET search_path = bdoh,"$user",public;`
-	* dans l'invite de commande psql, paramétrer l'accès au schéma (namespace) valide: `ALTER SCHEMA bdoh owner to bdoh; ALTER SCHEMA temp owner to bdoh; ALTER TABLE migration_versions SET SCHEMA bdoh;`
-	* dans /var/www/bdoh/current/, lancer la migration: `app/console doctrine:migrations:migrate -n` .
-	* dans /var/www/bdoh/current/, vider le cache: `app/console cache:clear` .
-	* dans /var/www/bdoh/current/, vérifier la structure de la base de données: `app/console doctrine:schema:validate`
-* En cas de réussite, OpenBDOH est donc prêt à être utilisé.
\ No newline at end of file
diff --git a/README.md b/README.md
index 185f27819..8429fd569 100644
--- a/README.md
+++ b/README.md
@@ -5,4 +5,4 @@ Ce projet a pour vocation d'ouvrir l'application BDOH aux acteurs extérieurs à
 
 ## Installation
 
-Consulter [le guide d'installation](guide_installation_OpenBDOH.md).
+Consulter [le guide d'installation](doc/guide_installation_OpenBDOH.md).
diff --git a/.dockerignore b/doc/.dockerignore
similarity index 100%
rename from .dockerignore
rename to doc/.dockerignore
diff --git a/.editorconfig b/doc/.editorconfig
similarity index 100%
rename from .editorconfig
rename to doc/.editorconfig
diff --git a/doc/.gitignore b/doc/.gitignore
new file mode 100644
index 000000000..b805fce57
--- /dev/null
+++ b/doc/.gitignore
@@ -0,0 +1,3 @@
+script.sh
+*.odt
+*.pdf
diff --git a/files/local_pg_dump b/doc/files/local_pg_dump
similarity index 100%
rename from files/local_pg_dump
rename to doc/files/local_pg_dump
diff --git a/guide_installation_OpenBDOH.md b/doc/guide_installation_OpenBDOH.md
similarity index 100%
rename from guide_installation_OpenBDOH.md
rename to doc/guide_installation_OpenBDOH.md
diff --git a/test/Dockerfile b/doc/test/Dockerfile
similarity index 100%
rename from test/Dockerfile
rename to doc/test/Dockerfile
diff --git a/test/run.sh b/doc/test/run.sh
similarity index 100%
rename from test/run.sh
rename to doc/test/run.sh
diff --git a/work/OpenBDOH_rapport.odt b/work/OpenBDOH_rapport.odt
deleted file mode 100644
index 986f8a834efd6e1856542a66aacc81b5b3e574c5..0000000000000000000000000000000000000000
GIT binary patch
literal 0
HcmV?d00001

literal 20673
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
IsvY0`3v<Y6+yDRo

diff --git a/work/ansible_commandes_importantes.md b/work/ansible_commandes_importantes.md
deleted file mode 100644
index e69de29bb..000000000
diff --git a/work/deployer_commandes_importantes.md b/work/deployer_commandes_importantes.md
deleted file mode 100644
index 3d1b13223..000000000
--- a/work/deployer_commandes_importantes.md
+++ /dev/null
@@ -1,48 +0,0 @@
-Deployer commandes importantes
-==============================
-
-➤ Executing task deploy:prepare
->  if [ ! -d /var/www/bdoh ]; then mkdir -p /var/www/bdoh; fi
->  cd /var/www/bdoh && if [ ! -d .dep ]; then mkdir .dep; fi
-➤ Executing task deploy:update_code
->  cd /var/www/bdoh && (/usr/bin/git clone -b develop --recursive  --reference /var/www/bdoh --dissociate git@gitlab-ssh.irstea.fr:pole-is/bdoh.git  /var/www/bdoh 2>&1)
->  cd /var/www/bdoh && (/usr/bin/git clone -b develop --recursive  git@gitlab-ssh.irstea.fr:pole-is/bdoh.git /var/www/bdoh 2>&1)
-➤ Executing task deploy:create_cache_dir
->  if [ -d "/var/www/bdoh/app/cache" ]; then rm -rf /var/www/bdoh/app/cache; fi
->  mkdir -p /var/www/bdoh/app/cache
->  chmod -R g+w /var/www/bdoh/app/cache
-➤ Executing task deploy:vendors
-> /usr/bin/php /usr/local/bin/composer install --verbose --prefer-dist --no-progress --no-interaction --no-dev --optimize-autoloader --no-suggest
-➤ Executing task deploy:assets:install
-> /usr/bin/php /usr/local/bin/composer install-assets --no-interaction
-➤ Executing task frontend:vendors
-> node_modules/.bin/yarn install --pure-lockfile
-➤ Executing task frontend:generate
->  node_modules/.bin/yarn run encore production
-➤ Executing task deploy:cache:clear
->  /usr/bin/php app/console cache:clear --no-interaction --env=prod --no-debug --no-warmup
-➤ Executing task deploy:cache:warmup
->  /usr/bin/php app/console cache:warmup --no-interaction --env=prod --no-debug
-➤ Executing task deploy:writable
->  mkdir -p app/cache app/logs app/imports app/exports web/css/themes web/uploads/.
->  setfacl -L -R -m u:"www-data":rwX -m u:`whoami`:rwX app/cache
->  setfacl -dL -R -m u:"www-data":rwX -m u:`whoami`:rwX app/cache
->  setfacl -L -R -m u:"www-data":rwX -m u:`whoami`:rwX app/imports
->  setfacl -dL -R -m u:"www-data":rwX -m u:`whoami`:rwX app/imports
->  setfacl -L -R -m u:"www-data":rwX -m u:`whoami`:rwX app/exports
->  setfacl -dL -R -m u:"www-data":rwX -m u:`whoami`:rwX app/exports
->  setfacl -L -R -m u:"www-data":rwX -m u:`whoami`:rwX web/css/themes
->  setfacl -dL -R -m u:"www-data":rwX -m u:`whoami`:rwX web/css/themes
-➤ Executing task apache2:stop
->  sudo systemctl stop apache2.service
-➤ Executing task job-worker:stop
->  sudo systemctl stop bdoh-job-worker.service
-➤ Executing task database:migrate
->  /usr/bin/php /var/www/bdoh/app/console doctrine:migrations:migrate --no-interaction --env=prod --no-debug --allow-no-migration --write-sql
-> cat doctrine_migration_*.sql | psql
-➤ Executing task job-worker:refresh
->  sudo systemctl daemon-reload
-➤ Executing task job-worker:start
->  sudo systemctl start bdoh-job-worker.service
-➤ Executing task apache2:start
->  sudo systemctl start apache2.service
\ No newline at end of file
diff --git a/work/import_fichiers.sh b/work/import_fichiers.sh
deleted file mode 100644
index a8ea0b269..000000000
--- a/work/import_fichiers.sh
+++ /dev/null
@@ -1,8 +0,0 @@
-/home/devops/.pgpass
-/etc/apache2/sites-available/000-catch-all.conf
-/etc/apache2/conf-available/security.conf
-/etc/apache2/mods-available/ssl.conf
-/etc/apache2/sites-available/<domaine>.conf
-/etc/php/7.1/mods-available/owasp-security.ini
-/home/devops/.config/composer/auth.json
-/etc/logrotate.d/bdoh
diff --git a/work/liste_commandes_ansible.md b/work/liste_commandes_ansible.md
deleted file mode 100644
index 3b921eb48..000000000
--- a/work/liste_commandes_ansible.md
+++ /dev/null
@@ -1,228 +0,0 @@
-Liste détaillée des commandes exécutées par Ansible
-===================================================
-
-# TASK [Common] ****************************************************************
-
-TASK [common : Package cleanup] ************************************************ DISPENSABLE
-sudo apt update
-sudo apt autoclean
-sudo apt autoremove
-TASK [common : Configure timezone Europe/Paris] ******************************** DISPENSABLE
-sudo echo "Europe/Paris" >> /etc/timezone
-sudo chmod 0444 /etc/timezone
-TASK [common : Configure default locale: fr_FR.UTF-8] ************************** DISPENSABLE
-apt install locales
-dpkg-reconfigure locales (interactive)
-TASK [common : Configure generated locales] ************************************ DISPENSABLE
-locale-gen --purge fr_FR.UTF-8
-TASK [common : Install common tools] ******************************************* DISPENSABLE
-sudo apt install curl ncurses-bin ncurses-term vim bash
-TASK [common : Set up MOTD] **************************************************** DISPENSABLE
-cp ansible/roles/common/templates/login/motd.j2 /etc/motd
-TASK [common : Set up shell prompt] ******************************************** DISPENSABLE
-"remplir /etc/profile.d/prompt.sh sur le modèle de ansible/roles/common/templates/login/prompt.sh.j2"
-TASK [common : Set up global bashrc] ******************************************* DISPENSABLE
-mv ansible/roles/common/files/login/bash.bashrc /etc/bash.bashrc
-TASK [common : Set up vim] ***************************************************** DISPENSABLE
-mv ansible/roles/common/files/login/vimrc.local /etc/vim/vimrc.local
-TASK [common : Install/update VMware guest tools] ****************************** DISPENSABLE
-sudo apt install open-vm-tools
-TASK [common : (Un)install time-syncing packages] ****************************** DISPENSABLE
-"installation et configuration de NTP"
-TASK [common : Install packages: cron] ***************************************** IMPORTANT
-sudo apt install apt-transport-https
-sudo apt install cron
-TASK [common : Enable and start services: cron] ******************************** IMPORTANT
-sudo systemctl enable cron.service
-sudo systemctl start cron.service
-TASK [common : Install authorized_keys for root] ******************************* IMPORTANT
-"installation de la clef ssh de root"
-TASK [common : Install SSH keys of known hosts] ******************************** INUTILE
-"installation des clefs publiques des serveurs"
-TASK [common : Install unattended upgrades] ************************************ DISPENSABLE
-sudo apt install unattended-upgrades needrestart
-TASK [common : Configure unattended upgrades] ********************************** DISPENSABLE
-"configuration de unattended-upgrades"
-TASK [common : Enable unattended upgrade timers] ******************************* DISPENSABLE
-"configuration des timers de unattended-upgrades"
-
-# TASK [PostgreSQL-server] *****************************************************
-
-TASK [postgresql-server : Install packages: postgresql, postgresql-client, libpq-dev, python3-psycopg2] *** IMPORTANT
-sudo apt install postgresql postgresql-client libpq-dev python3-psycopg2
-TACHE: installation de postgis ************************************************* IMPORTANT
-sudo apt install postgis postgresql-postgis-2.5 postgresql-postgis-2.5-scripts
-TASK [postgresql-server : Enable and start services: postgresql] *************** IMPORTANT
-sudo systemctl enable postgresql
-sudo systemctl start postgresql
-TASK [postgresql-server : Fetch postgresql version] **************************** INUTILE
-"vérifier la version de postgresql"
-TASK [postgresql-server : Set md5 policy for local connections] **************** IMPORTANT
-"activer md5 pour toutes les connexions locales dans /etc/postgresql/11/main/pg_hba.conf"
-TASK [postgresql-server : Set peer policy for postgres's connections] ********** IMPORTANT
-"activer peer pour toutes les connexions locales de postgres"
-TASK [postgresql-server : Create devops superuser] ***************************** IMPORTANT
-CREATE USER devops;
-ALTER ROLE devops SUPERUSER;
-TASK [postgresql-server : Set peer policy for devops's connections] ************ IMPORTANT
-"activer peer pour toutes les connexions locales de devops"
-TASK [postgresql-server : Install the daily database dump script] ************** IMPORTANT
-"installer le script ansible/roles/postgresql-server/files/local_pg_dump dans /etc/cron.daily/local_pg_dump"
-TASK [postgresql-server : Create user 'bdoh'] ********************************** IMPORTANT
-CREATE USER bdoh;
-TASK [postgresql-server : Setting 'bdoh' password] ***************************** IMPORTANT
-ALTER USER devops WITH PASSWORD 'WTvRR7UWsb3SH2oLlSMD';
-TASK [postgresql-server : Select database owner] ******************************* IMPORTANT
-ALTER DATABASE postgres OWNER TO devops;
-TASK [postgresql-server : Create database 'bdoh'] ****************************** IMPORTANT
-CREATE DATABASE bdoh;
-TASK [postgresql-server : Grant permissions on database 'bdoh' to bdoh] ******** IMPORTANT
-"donner les autorisations CONNECT et TEMPORARY à bdoh sur la base bdoh"
-GRANT CONNECT,TEMPORARY ON database bdoh TO bdoh;
-REVOKE GRANT OPTION FOR CONNECT,TEMPORARY ON database bdoh FROM bdoh;
-TASK [postgresql-server : Create schema 'bdoh.bdoh'] *************************** IMPORTANT
-CREATE SCHEMA bdoh.bdoh;
-TASK [postgresql-server : Grant permissions on schema 'bdoh.bdoh' to bdoh] ***** IMPORTANT
-GRANT USAGE,CREATE ON schema bdoh TO bdoh;
-REVOKE GRANT OPTION FOR USAGE,CREATE ON schema bdoh FROM bdoh;
-TACHE: paramétrer le search space ********************************************** IMPORTANT
-ALTER DATABASE bdoh SET search_path = "bdoh", "$user", public;
-TACHE : créer l'extension PostGIS ********************************************** IMPORTANT
-CREATE EXTENSION postgis;
-
-# TASK [PHP-App] ***************************************************************
-
-TASK [phpapp : Generate the deploy key pair] *********************************** INUTILE
-"création de la clef de déploiement automatique"
-TASK [phpapp : Read the deploy key pair] *************************************** INUTILE
-"lecture de la clef de déploiment automatique"
-TASK [phpapp : Create the devops group] **************************************** IMPORTANT
-sudo adduser devops
-sudo groupadd -g 1001 devops
-TASK [phpapp : Create the devops user] ***************************************** DISPENSABLE
-sudo useradd -u 1001 devops
-sudo usermod -a -G devops,www-data,sudo devops
-TASK [phpapp : Grant password-less sudo to devops] ***************************** DISPENSABLE
-sudo echo "devops ALL = (ALL) NOPASSWD: ALL" >> /etc/sudoers.d/devops
-TASK [phpapp : Install devops tools] ******************************************* DISPENSABLE
-sudo apt install acl git htop unzip
-TASK [phpapp : Install authorized_keys of devops] ****************************** INUTILE
-"installer la clef devops dans authorized_keys"
-TASK [phpapp : Remove local .bashrc] ******************************************* DISPENSABLE
-rm /home/devops/.bashrc
-TASK [phpapp : Setup environment variables] ************************************ IMPORTANT
-"exporter les variables PGDATABASE PGHOST PGPORT PGUSER dans /home/devops/.profile"
-echo "export PGDATABASE=bdoh \n export PGHOST=/run/postgresql \n export PGPORT=5432 \n export PGUSER=devops \n export APP_ENV=prod \n export SYMFONY_ENV=prod" > /home/devops/.profile ;
-sudo chmod 0600 /home/devops/.profile
-TASK [phpapp : Setup PSQLRC] *************************************************** IMPORTANT
-rm /home/devops/.psqlrc
-TASK [phpapp : Configure ~devops/.pgpass for bdoh] ***************************** IMPORTANT
-"créer et configurer /home/devops/.pgpass"
-echo "/run/postgresql:5432:bdoh:bdoh:WTvRR7UWsb3SH2oLlSMD" > /home/devops/.pgpass
-chown devops:devops /home/devops/.pgpass
-chmod 0400 /home/devops/.pgpass
-TASK [phpapp : Setup /var/www/bdoh] ************** IMPORTANT
-mkdir /var/www/bdoh
-chown devops:www-data /var/www/bdoh
-chmod 2755 /var/www/bdoh
-TASK [phpapp : Install PostgreSQL client] ************** IMPORTANT
-sudo apt install postgresql-client
-TASK [phpapp : Query PostgreSQL about version] ************** INUTILE
-"extraire et enregistrer la version de PostgreSQL"
-TASK [phpapp : Extract the PostgreSQL server version] ************** INUTILE
-"extraire et enregistrer la version du serveur PostgreSQL"
-TASK [phpapp : Install packages: apache2] ************** IMPORTANT
-sudo apt install apache2
-TASK [phpapp : Enable and start services: apache2] ************** IMPORTANT
-sudo systemctl enable apache2
-sudo systemctl start apache2
-TASK [phpapp : Enable/disable SSL module] ************** IMPORTANT
-"Activer le module SSL d'Apache2"
-sudo a2enmod ssl
-TASK [phpapp : (Un)install mod_rpaf package] ************** INUTILE
-"Installer ou désinstaller mod_rpaf"
-TASK [phpapp : Enable/disable rpaf module] ************** IMPORTANT
-"Désactiver le module rpaf"
-sudo a2dismod libapache2-mod-rpaf
-TASK [phpapp : Disable sensible modules] ************** IMPORTANT
-"Désactiver les modules cgid et status"
-sudo a2dismod cgid
-sudo a2dismod status
-TASK [phpapp : Disable sensible configuration] ************** IMPORTANT
-sudo /usr/sbin/a2disconf serve-cgi-bin || true
-TASK [phpapp : Disable default site] ************** IMPORTANT
-sudo /usr/sbin/a2dissite 000-default
-TASK [phpapp : Configure catch-all site] ************** IMPORTANT
-"configurer /etc/apache2/sites-available/000-catch-all.conf sur le modèle de /roles/phpapp/templates/apache2/vhost-catch-all.conf.j2"
-sudo chmod 644 /etc/apache2/sites-available/000-catch-all.conf
-sudo chown root:root /etc/apache2/sites-available/000-catch-all.conf
-TASK [phpapp : Enable catch-all site] ************** IMPORTANT
-sudo /usr/sbin/a2ensite 000-catch-all
-TASK [phpapp : Enable modules] ************** IMPORTANT
-"activer les modules alias authz_core deflate dir env expires headers log_config mime negotiation rewrite setenvif unique_id"
-sudo a2enmod alias authz_core deflate dir env expires headers log_config mime negotiation rewrite setenvif unique_id
-TASK [phpapp : Configure security] ************** IMPORTANT
-"ajouter les options nécessaires à /etc/apache2/conf-available/security.conf"
-TASK [phpapp : Configure SSL security] *****************************************
-"ajouter les options nécessaires à /etc/apache2/mods-available/ssl.conf"
-TASK [phpapp : Enable security configuration] ************** IMPORTANT
-sudo /usr/sbin/a2enconf security.conf
-TASK [phpapp : Install http://vm-bdoh-tst/ configuration] ************** IMPORTANT
-"remplir /etc/apache2/sites-available/vm-bdoh-tst.conf selon le modèle ansible/roles/phpapp/apache2/vhost.conf.j2"
-TASK [phpapp : Enable http://vm-bdoh-tst/ configuration] ************** IMPORTANT
-sudo /usr/sbin/a2ensite vm-bdoh-tst.conf
-systemctl restart apache2
-TASK [phpapp : Install the APT key from https://packages.sury.org/] ************** IMPORTANT
-"ajouter le dépot deb.sury.org"
-sudo apt-get -y install apt-transport-https lsb-release ca-certificates curl
-sudo wget -O /etc/apt/trusted.gpg.d/php.gpg https://packages.sury.org/php/apt.gpg
-sudo sh -c 'echo "deb https://packages.sury.org/php/ $(lsb_release -sc) main" > /etc/apt/sources.list.d/php.list'
-sudo apt-get update
-TASK [phpapp : Install apt-transport-https] ************** IMPORTANT
-sudo apt install apt-transport-https
-TASK [phpapp : Configure APT repository: php] ************** INUTILE
-"inscrire deb https://packages.sury.org/php/ buster main dans php"
-TASK [phpapp : Remove unwanted PHP versions] ************** INUTILE
-"désinstaller les versions de PHP inutiles"
-TASK [phpapp : Remove configuration of unwanted PHP versions] ************** INUTILE
-"retirer la configuration des versions PHP inutiles"
-TASK [phpapp : Install required packages] ************** IMPORTANT
-sudo apt install php 7.1 php7.1-apcu php7.1-apcu-bc php7.1-common php7.1-gd php7.1-intl php7.1-json php7.1-mbstring php7.1-pgsql php7.1-pgsql php7.1-common php7.1-sodium php7.1-xml php7.1-xml php7.1-zip
-TASK [phpapp : Remove unwanted packages] ************** INUTILE
-"supprimer les packages installés en trop"
-TASK [phpapp : List available extensions] ************** INUTILE
-"lister les extensions disponibles"
-TASK [phpapp : Enable required extensions] ************** IMPORTANT
-sudo /usr/sbin/phpenmod -v 7.1 apcu apcu-bc ctype gd hash iconv intl json mbstring pdo pdo-pgsql pgsql posix sodium tokenizer xml xsl zip pdo readline
-TASK [phpapp : Disable unwanted extensions] ************** INUTILE
-"désactiver les extensions installées en trop"
-TASK [phpapp : Install security configuration] ************** IMPORTANT
-cp ansible/roles/phpapp/files/php/owasp-security.ini /etc/php/7.1/mods-available/owasp-security.ini
-chmod 644 /etc/php/7.1/mods-available/owasp-security.ini
-TASK [phpapp : Enable security configuration] ************** IMPORTANT
-sudo /usr/sbin/phpenmod -v 7.1 owasp-security
-TASK [phpapp : Configure the default timezone] ************** DISPENSABLE
-"régler la timezone dans /etc/php/7.1/cli/php.ini et /etc/php/7.1/php_sapi/php.ini"
-TASK [phpapp : Remove locally installed composer binary and cache] ************** INUTILE
-"supprimer /home/devops/.composer et /home/devops/bin/composer"
-TASK [phpapp : Install the PHAR for 1.10.20] ************** IMPORTANT
-wget http://getcomposer.org/download/1.10.20/composer.phar -P /usr/local/bin/composer
-curl -sS https://getcomposer.org/installer | sudo php -- --install-dir=/usr/local/bin --filename=composer --version=1.10.20
-TASK [phpapp : Create Composer configuration directory] ************** IMPORTANT
-install -d -m 0700 -o devops -g devops /home/devops/.config/composer
-TASK [phpapp : Setup Composer authentication] ************** IMPORTANT
-"configurer /home/devops/.config/composer/auth.json sur le modèle de ansible/roles/phpapp/templates/auth.json.j2 avec le mode 0600"
-TASK [phpapp : Install the APT key from https://deb.nodesource.com/] ************** IMPORTANT
-curl -fsSL https://deb.nodesource.com/gpgkey/nodesource.gpg.key | gpg --dearmor | sudo tee /usr/share/keyrings/nodesource.gpg >/dev/null
-gpg --no-default-keyring --keyring /usr/share/keyrings/nodesource.gpg --list-keys
-TASK [phpapp : Install apt-transport-https] ************** IMPORTANT
-sudo apt install apt-transport-https
-TASK [phpapp : Configure APT repository: nodesource] ************** INUTILE
-"déclarer le repository"
-TASK [phpapp : Install NodeJS packages] ************** IMPORTANT
-sudo apt install nodejs
-apt install npm
-TASK [phpapp : Install the Yarn package manager] ************** IMPORTANT
-npm install --global --production yarn 
-TASK [phpapp : Install the configuration file for logrotate] ************** IMPORTANT
-"écrire  /etc/logrotate.d/bdoh en mode 0644 sur le modèle de ansible/roles/phpapp/templates/logrotate.j2"
\ No newline at end of file
diff --git a/work/liste_commandes_deployer.md b/work/liste_commandes_deployer.md
deleted file mode 100644
index d3d17fa38..000000000
--- a/work/liste_commandes_deployer.md
+++ /dev/null
@@ -1,756 +0,0 @@
-✈︎ Deploying develop on ly-bdoh-tst.lyon.irstea.priv
-• done on [ly-bdoh-tst.lyon.irstea.priv]
-➤ Executing task deploy:prepare
->  echo $0
-< bash
->  if [ ! -d /var/www/bdoh ]; then mkdir -p /var/www/bdoh; fi
->  if [ ! -L /var/www/bdoh/current ] && [ -d /var/www/bdoh/current ]; then echo 'true'; fi
->  cd /var/www/bdoh && if [ ! -d .dep ]; then mkdir .dep; fi
->  cd /var/www/bdoh && if [ ! -d releases ]; then mkdir releases; fi
->  cd /var/www/bdoh && if [ ! -d shared ]; then mkdir shared; fi
-• done on [ly-bdoh-tst.lyon.irstea.priv]
-✔ Ok [146ms]
-➤ Executing task deploy:lock
->  if [ -f /var/www/bdoh/.dep/deploy.lock ]; then echo 'true'; fi
->  touch /var/www/bdoh/.dep/deploy.lock
-• done on [ly-bdoh-tst.lyon.irstea.priv]
-✔ Ok [96ms]
-➤ Executing task deploy:release
->  cd /var/www/bdoh && (if [ -h release ]; then echo 'true'; fi)
->  cd /var/www/bdoh && (if [ -d releases ] && [ "$(ls -A releases)" ]; then echo 'true'; fi)
-< true
->  cd /var/www/bdoh && (cd releases && ls -t -1 -d */)
-< 12/
-< 11/
-< 0/
-< 10/
-< 9/
-< 8/
->  cd /var/www/bdoh && (if [ -f .dep/releases ]; then echo 'true'; fi)
-< true
->  cd /var/www/bdoh && (tail -n 15 .dep/releases)
-< 20210325113130,1
-< 20210325114439,1
-< 20210325115310,1
-< 20210330143751,1
-< 20210414162236,2
-< 20210506090031,3
-< 20210531144457,4
-< 20210706111605,5
-< 20210729105625,6
-< 20210729154254,7
-< 20210803110002,8
-< 20210803171131,9
-< 20210804121125,10
-< 20210804140104,11
-< 20210913164859,12
->  cd /var/www/bdoh && (if [ -d /var/www/bdoh/releases/13 ]; then echo 'true'; fi)
->  cd /var/www/bdoh && (date +"%Y%m%d%H%M%S")
-< 20210913165448
->  cd /var/www/bdoh && (echo '20210913165448,13' >> .dep/releases)
->  cd /var/www/bdoh && (mkdir /var/www/bdoh/releases/13)
->  cd /var/www/bdoh && (if [[ $(man ln 2>&1 || ln -h 2>&1 || ln --help 2>&1) =~ '--relative' ]]; then echo 'true'; fi)
-< true
->  cd /var/www/bdoh && (ln -nfs --relative /var/www/bdoh/releases/13 /var/www/bdoh/release)
-• done on [ly-bdoh-tst.lyon.irstea.priv]
-✔ Ok [470ms]
-➤ Executing task deploy:update_code
->  command -v 'git' || which 'git' || type -p 'git'
-< /usr/bin/git
->  cd /var/www/bdoh && (if [ -h /var/www/bdoh/release ]; then echo 'true'; fi)
-< true
->  cd /var/www/bdoh && (readlink /var/www/bdoh/release)
-< releases/13
->  cd /var/www/bdoh && (/usr/bin/git clone -b develop --recursive  --reference /var/www/bdoh/releases/12 --dissociate git@gitlab-ssh.irstea.fr:pole-is/bdoh.git  /var/www/bdoh/releases/13 2>&1)
-< Clonage dans '/var/www/bdoh/releases/13'...
-< fatal: le dépôt de référence '/var/www/bdoh/releases/12' n'est pas un dépôt local.
->  cd /var/www/bdoh && (/usr/bin/git clone -b develop --recursive  git@gitlab-ssh.irstea.fr:pole-is/bdoh.git /var/www/bdoh/releases/13 2>&1)
-< Clonage dans '/var/www/bdoh/releases/13'...
-• done on [ly-bdoh-tst.lyon.irstea.priv]
-✔ Ok [8s 782ms]
-➤ Executing task deploy:clear_paths
->   rm -rf /var/www/bdoh/releases/13/web/app_*.php
->   rm -rf /var/www/bdoh/releases/13/web/config.php
->   rm -rf /var/www/bdoh/releases/13/dev
->   rm -rf /var/www/bdoh/releases/13/staging
->   rm -rf /var/www/bdoh/releases/13/.[a-z]*
->   rm -rf /var/www/bdoh/releases/13/docker-*
-• done on [ly-bdoh-tst.lyon.irstea.priv]
-✔ Ok [239ms]
-➤ Executing task deploy:create_cache_dir
->  if [ -d "/var/www/bdoh/releases/13/app/cache" ]; then rm -rf /var/www/bdoh/releases/13/app/cache; fi
->  mkdir -p /var/www/bdoh/releases/13/app/cache
->  chmod -R g+w /var/www/bdoh/releases/13/app/cache
-• done on [ly-bdoh-tst.lyon.irstea.priv]
-✔ Ok [105ms]
-➤ Executing task deploy:shared
->  if [ -d /var/www/bdoh/shared/app/logs ]; then echo 'true'; fi
-< true
->  rm -rf /var/www/bdoh/releases/13/app/logs
->  mkdir -p `dirname /var/www/bdoh/releases/13/app/logs`
->  ln -nfs --relative /var/www/bdoh/shared/app/logs /var/www/bdoh/releases/13/app/logs
->  if [ -d /var/www/bdoh/shared/web/uploads ]; then echo 'true'; fi
-< true
->  rm -rf /var/www/bdoh/releases/13/web/uploads
->  mkdir -p `dirname /var/www/bdoh/releases/13/web/uploads`
->  ln -nfs --relative /var/www/bdoh/shared/web/uploads /var/www/bdoh/releases/13/web/uploads
->  if [ -d /var/www/bdoh/shared/app/config ]; then echo 'true'; fi
-< true
->  if [ -f /var/www/bdoh/shared/app/config/parameters.yml ]; then echo 'true'; fi
-< true
->  if [ -f $(echo /var/www/bdoh/releases/13/app/config/parameters.yml) ]; then rm -rf /var/www/bdoh/releases/13/app/config/parameters.yml; fi
->  if [ ! -d $(echo /var/www/bdoh/releases/13/app/config) ]; then mkdir -p /var/www/bdoh/releases/13/app/config;fi
->  touch /var/www/bdoh/shared/app/config/parameters.yml
->  ln -nfs --relative /var/www/bdoh/shared/app/config/parameters.yml /var/www/bdoh/releases/13/app/config/parameters.yml
-• done on [ly-bdoh-tst.lyon.irstea.priv]
-✔ Ok [463ms]
-➤ Executing task deploy:assets
->  find /var/www/bdoh/releases/13/web/css /var/www/bdoh/releases/13/web/images /var/www/bdoh/releases/13/web/js -exec touch -t 202109131654.58 {} ';' &> /dev/null || true
-• done on [ly-bdoh-tst.lyon.irstea.priv]
-✔ Ok [92ms]
-➤ Executing task deploy:copy_dirs
-• done on [ly-bdoh-tst.lyon.irstea.priv]
-✔ Ok [1ms]
-➤ Executing task deploy:vendors
->  if hash unzip 2>/dev/null; then echo 'true'; fi
-< true
->  if hash composer 2>/dev/null; then echo 'true'; fi
-< true
->  command -v 'composer' || which 'composer' || type -p 'composer'
-< /usr/local/bin/composer
->  command -v 'php' || which 'php' || type -p 'php'
-< /usr/bin/php
->  cd /var/www/bdoh/releases/13 && /usr/bin/php /usr/local/bin/composer install --verbose --prefer-dist --no-progress --no-interaction --no-dev --optimize-autoloader --no-suggest
-< > pre-install-cmd: @force-permissions
-< > force-permissions: `which sudo 2>/dev/null || true` chown -R `id -u`:`id -g` app vendor || true
-< chown: cannot access 'vendor': No such file or directory
-< Loading composer repositories with package information
-< Installing dependencies from lock file
-< Warning: The lock file is not up to date with the latest changes in composer.json. You may be getting outdated dependencies. It is recommended that you run `composer update` or `composer update <package name>`.
-< Dependency resolution completed in 0.000 seconds
-< Analyzed 148 packages to resolve dependencies
-< Analyzed 495 rules to resolve dependencies
-< Package operations: 101 installs, 0 updates, 0 removals
-< Installs: cocur/slugify:v2.5, doctrine/collections:1.6.7, doctrine/lexer:1.0.2, doctrine/inflector:1.3.1, doctrine/cache:v1.7.0, doctrine/annotations:1.11.1, doctrine/common:v2.8.1, symfony/doctrine-bridge:v2.8.52, doctrine/doctrine-cache-bundle:1.3.5, symfony/translation:v2.8.52, symfony/templating:v2.8.52, symfony/stopwatch:v3.0.9, symfony/security:v2.8.52, symfony/security-acl:v3.0.4, symfony/property-access:v2.8.52, symfony/polyfill-util:v1.20.0, symfony/http-foundation:v2.8.52, symfony/event-dispatcher:v2.8.52, psr/log:1.1.3, symfony/debug:v2.8.52, symfony/http-kernel:v2.8.52, symfony/routing:v2.8.52, symfony/finder:v2.8.52, symfony/filesystem:v3.0.9, symfony/dependency-injection:v2.8.52, symfony/config:v2.8.52, symfony/class-loader:v3.0.9, symfony/asset:v2.8.52, symfony/framework-bundle:v2.8.52, symfony/console:v2.8.52, jdorn/sql-formatter:v1.2.17, doctrine/dbal:v2.6.3, doctrine/doctrine-bundle:1.10.3, doctrine/data-fixtures:1.3.3, doctrine/doctrine-fixtures-bundle:v2.4.1, symfony/yaml:v2.8.52, zendframework/zend-eventmanager:3.2.1, zendframework/zend-code:2.6.3, ocramius/proxy-manager:1.0.2, doctrine/migrations:v1.5.0, doctrine/doctrine-migrations-bundle:v1.3.2, gregwar/captcha:v1.0.11, gregwar/captcha-bundle:v1.0.11, ralouphie/getallheaders:3.0.3, psr/http-message:1.0.1, guzzlehttp/psr7:1.8.2, guzzlehttp/promises:1.4.1, guzzlehttp/guzzle:6.5.5, incenteev/composer-parameter-handler:v2.1.4, jms/cg:1.2.0, symfony/process:v3.4.46, jms/metadata:1.7.0, jms/aop-bundle:1.3.0, jms/di-extra-bundle:1.8.2, jms/job-queue-bundle:1.4.2, symfony/security-bundle:v2.8.52, phpoption/phpoption:1.7.5, jms/parser-lib:1.0.0, jms/security-extra-bundle:1.6.1, phpcollection/phpcollection:0.5.0, doctrine/instantiator:1.4.0, jms/serializer:1.14.1, knplabs/knp-menu:2.6.0, knplabs/knp-menu-bundle:2.1.3, opis/json-schema:1.1.0, oyejorge/less.php:v1.7.0.3, pagerfanta/pagerfanta:v1.1.0, symfony/mime:v4.4.16, psr/container:1.0.0, symfony/service-contracts:v1.1.9, symfony/polyfill-php73:v1.20.0, symfony/http-client-contracts:v1.1.10, symfony/http-client:v4.4.16, sensiolabs/security-checker:v6.0.3, sensio/distribution-bundle:v5.0.25, sensio/framework-extra-bundle:v3.0.29, twig/twig:v1.43.1, symfony/twig-bridge:v2.8.52, symfony/twig-bundle:v2.8.52, symfony/options-resolver:v2.8.52, symfony/intl:v3.2.14, symfony/form:v2.8.52, twig/extensions:v1.5.4, symfony/validator:v2.8.52, sonata-project/datagrid-bundle:2.4.0, sonata-project/core-bundle:3.5.1, sonata-project/cache:2.0.1, sonata-project/block-bundle:3.13.0, sonata-project/exporter:1.11.1, symfony/expression-language:v3.1.10, sonata-project/admin-bundle:3.23.0, doctrine/orm:v2.5.14, sonata-project/doctrine-orm-admin-bundle:3.1.7, monolog/monolog:1.25.5, symfony/monolog-bridge:v3.2.14, symfony/monolog-bundle:v2.12.1, symfony/serializer:v2.8.52, swiftmailer/swiftmailer:v5.4.12, symfony/swiftmailer-bundle:v2.6.7, willdurand/js-translation-bundle:2.6.6, willdurand/negotiation:v2.3.1
-<   - Installing cocur/slugify (v2.5):
-< Loading from cache
-<  Extracting archive
-<   - Installing doctrine/collections (1.6.7):
-< Loading from cache
-<  Extracting archive
-<   - Installing doctrine/lexer (1.0.2):
-< Loading from cache
-<  Extracting archive
-<   - Installing doctrine/inflector (1.3.1):
-< Loading from cache
-<  Extracting archive
-<   - Installing doctrine/cache (v1.7.0):
-< Loading from cache
-<  Extracting archive
-<   - Installing doctrine/annotations (1.11.1):
-< Loading from cache
-<  Extracting archive
-<   - Installing doctrine/common (v2.8.1):
-< Loading from cache
-<  Extracting archive
-<   - Installing symfony/doctrine-bridge (v2.8.52):
-< Loading from cache
-<  Extracting archive
-<   - Installing doctrine/doctrine-cache-bundle (1.3.5):
-< Loading from cache
-<  Extracting archive
-<   - Installing symfony/translation (v2.8.52):
-< Loading from cache
-<  Extracting archive
-<   - Installing symfony/templating (v2.8.52):
-< Loading from cache
-<  Extracting archive
-<   - Installing symfony/stopwatch (v3.0.9):
-< Loading from cache
-<  Extracting archive
-<   - Installing symfony/security (v2.8.52):
-< Loading from cache
-<  Extracting archive
-<   - Installing symfony/security-acl (v3.0.4):
-< Loading from cache
-<  Extracting archive
-<   - Installing symfony/property-access (v2.8.52):
-< Loading from cache
-<  Extracting archive
-<   - Installing symfony/polyfill-util (v1.20.0):
-< Loading from cache
-<  Extracting archive
-<   - Installing symfony/http-foundation (v2.8.52):
-< Loading from cache
-<  Extracting archive
-<   - Installing symfony/event-dispatcher (v2.8.52):
-< Loading from cache
-<  Extracting archive
-<   - Installing psr/log (1.1.3):
-< Loading from cache
-<  Extracting archive
-<   - Installing symfony/debug (v2.8.52):
-< Loading from cache
-<  Extracting archive
-<   - Installing symfony/http-kernel (v2.8.52):
-< Loading from cache
-<  Extracting archive
-<   - Installing symfony/routing (v2.8.52):
-< Loading from cache
-<  Extracting archive
-<   - Installing symfony/finder (v2.8.52):
-< Loading from cache
-<  Extracting archive
-<   - Installing symfony/filesystem (v3.0.9):
-< Loading from cache
-<  Extracting archive
-<   - Installing symfony/dependency-injection (v2.8.52):
-< Loading from cache
-<  Extracting archive
-<   - Installing symfony/config (v2.8.52):
-< Loading from cache
-<  Extracting archive
-<   - Installing symfony/class-loader (v3.0.9):
-< Loading from cache
-<  Extracting archive
-<   - Installing symfony/asset (v2.8.52):
-< Loading from cache
-<  Extracting archive
-<   - Installing symfony/framework-bundle (v2.8.52):
-< Loading from cache
-<  Extracting archive
-<   - Installing symfony/console (v2.8.52):
-< Loading from cache
-<  Extracting archive
-<   - Installing jdorn/sql-formatter (v1.2.17):
-< Loading from cache
-<  Extracting archive
-<   - Installing doctrine/dbal (v2.6.3):
-< Loading from cache
-<  Extracting archive
-<   - Installing doctrine/doctrine-bundle (1.10.3):
-< Loading from cache
-<  Extracting archive
-<   - Installing doctrine/data-fixtures (1.3.3):
-< Loading from cache
-<  Extracting archive
-<   - Installing doctrine/doctrine-fixtures-bundle (v2.4.1):
-< Loading from cache
-<  Extracting archive
-<   - Installing symfony/yaml (v2.8.52):
-< Loading from cache
-<  Extracting archive
-<   - Installing zendframework/zend-eventmanager (3.2.1):
-< Loading from cache
-<  Extracting archive
-<   - Installing zendframework/zend-code (2.6.3):
-< Loading from cache
-<  Extracting archive
-<   - Installing ocramius/proxy-manager (1.0.2):
-< Loading from cache
-<  Extracting archive
-<   - Installing doctrine/migrations (v1.5.0):
-< Loading from cache
-<  Extracting archive
-<   - Installing doctrine/doctrine-migrations-bundle (v1.3.2):
-< Loading from cache
-<  Extracting archive
-<   - Installing gregwar/captcha (v1.0.11):
-< Loading from cache
-<  Extracting archive
-<   - Installing gregwar/captcha-bundle (v1.0.11):
-< Loading from cache
-<  Extracting archive
-<   - Installing ralouphie/getallheaders (3.0.3):
-< Loading from cache
-<  Extracting archive
-<   - Installing psr/http-message (1.0.1):
-< Loading from cache
-<  Extracting archive
-<   - Installing guzzlehttp/psr7 (1.8.2):
-< Loading from cache
-<  Extracting archive
-<   - Installing guzzlehttp/promises (1.4.1):
-< Loading from cache
-<  Extracting archive
-<   - Installing guzzlehttp/guzzle (6.5.5):
-< Loading from cache
-<  Extracting archive
-<   - Installing incenteev/composer-parameter-handler (v2.1.4):
-< Loading from cache
-<  Extracting archive
-<   - Installing jms/cg (1.2.0):
-< Loading from cache
-<  Extracting archive
-<   - Installing symfony/process (v3.4.46):
-< Loading from cache
-<  Extracting archive
-<   - Installing jms/metadata (1.7.0):
-< Loading from cache
-<  Extracting archive
-<   - Installing jms/aop-bundle (1.3.0):
-< Loading from cache
-<  Extracting archive
-<   - Installing jms/di-extra-bundle (1.8.2):
-< Loading from cache
-<  Extracting archive
-<   - Installing jms/job-queue-bundle (1.4.2):
-< Loading from cache
-<  Extracting archive
-<   - Installing symfony/security-bundle (v2.8.52):
-< Loading from cache
-<  Extracting archive
-<   - Installing phpoption/phpoption (1.7.5):
-< Loading from cache
-<  Extracting archive
-<   - Installing jms/parser-lib (1.0.0):
-< Loading from cache
-<  Extracting archive
-<   - Installing jms/security-extra-bundle (1.6.1):
-< Loading from cache
-<  Extracting archive
-<   - Installing phpcollection/phpcollection (0.5.0):
-< Loading from cache
-<  Extracting archive
-<   - Installing doctrine/instantiator (1.4.0):
-< Loading from cache
-<  Extracting archive
-<   - Installing jms/serializer (1.14.1):
-< Loading from cache
-<  Extracting archive
-<   - Installing knplabs/knp-menu (2.6.0):
-< Loading from cache
-<  Extracting archive
-<   - Installing knplabs/knp-menu-bundle (2.1.3):
-< Loading from cache
-<  Extracting archive
-<   - Installing opis/json-schema (1.1.0):
-< Loading from cache
-<  Extracting archive
-<   - Installing oyejorge/less.php (v1.7.0.3):
-< Loading from cache
-<  Extracting archive
-<   - Installing pagerfanta/pagerfanta (v1.1.0):
-< Loading from cache
-<  Extracting archive
-<   - Installing symfony/mime (v4.4.16):
-< Loading from cache
-<  Extracting archive
-<   - Installing psr/container (1.0.0):
-< Loading from cache
-<  Extracting archive
-<   - Installing symfony/service-contracts (v1.1.9):
-< Loading from cache
-<  Extracting archive
-<   - Installing symfony/polyfill-php73 (v1.20.0):
-< Loading from cache
-<  Extracting archive
-<   - Installing symfony/http-client-contracts (v1.1.10):
-< Loading from cache
-<  Extracting archive
-<   - Installing symfony/http-client (v4.4.16):
-< Loading from cache
-<  Extracting archive
-<   - Installing sensiolabs/security-checker (v6.0.3):
-< Loading from cache
-<  Extracting archive
-<   - Installing sensio/distribution-bundle (v5.0.25):
-< Loading from cache
-<  Extracting archive
-<   - Installing sensio/framework-extra-bundle (v3.0.29):
-< Loading from cache
-<  Extracting archive
-<   - Installing twig/twig (v1.43.1):
-< Loading from cache
-<  Extracting archive
-<   - Installing symfony/twig-bridge (v2.8.52):
-< Loading from cache
-<  Extracting archive
-<   - Installing symfony/twig-bundle (v2.8.52):
-< Loading from cache
-<  Extracting archive
-<   - Installing symfony/options-resolver (v2.8.52):
-< Loading from cache
-<  Extracting archive
-<   - Installing symfony/intl (v3.2.14):
-< Loading from cache
-<  Extracting archive
-<   - Installing symfony/form (v2.8.52):
-< Loading from cache
-<  Extracting archive
-<   - Installing twig/extensions (v1.5.4):
-< Loading from cache
-<  Extracting archive
-<   - Installing symfony/validator (v2.8.52):
-< Loading from cache
-<  Extracting archive
-<   - Installing sonata-project/datagrid-bundle (2.4.0):
-< Loading from cache
-<  Extracting archive
-<   - Installing sonata-project/core-bundle (3.5.1):
-< Loading from cache
-<  Extracting archive
-<   - Installing sonata-project/cache (2.0.1):
-< Loading from cache
-<  Extracting archive
-<   - Installing sonata-project/block-bundle (3.13.0):
-< Loading from cache
-<  Extracting archive
-<   - Installing sonata-project/exporter (1.11.1):
-< Loading from cache
-<  Extracting archive
-<   - Installing symfony/expression-language (v3.1.10):
-< Loading from cache
-<  Extracting archive
-<   - Installing sonata-project/admin-bundle (3.23.0):
-< Loading from cache
-<  Extracting archive
-<   - Installing doctrine/orm (v2.5.14):
-< Loading from cache
-<  Extracting archive
-<   - Installing sonata-project/doctrine-orm-admin-bundle (3.1.7):
-< Loading from cache
-<  Extracting archive
-<   - Installing monolog/monolog (1.25.5):
-< Loading from cache
-<  Extracting archive
-<   - Installing symfony/monolog-bridge (v3.2.14):
-< Loading from cache
-<  Extracting archive
-<   - Installing symfony/monolog-bundle (v2.12.1):
-< Loading from cache
-<  Extracting archive
-<   - Installing symfony/serializer (v2.8.52):
-< Loading from cache
-<  Extracting archive
-<   - Installing swiftmailer/swiftmailer (v5.4.12):
-< Loading from cache
-<  Extracting archive
-<   - Installing symfony/swiftmailer-bundle (v2.6.7): Loading from cache
-<  Extracting archive
-<   - Installing willdurand/js-translation-bundle (2.6.6): Loading from cache
-<  Extracting archive
-<   - Installing willdurand/negotiation (v2.3.1): Loading from cache
-<  Extracting archive
-< Package doctrine/doctrine-cache-bundle is abandoned, you should avoid using it. No replacement was suggested.
-< Package zendframework/zend-eventmanager is abandoned, you should avoid using it. Use laminas/laminas-eventmanager instead.
-< Package zendframework/zend-code is abandoned, you should avoid using it. Use laminas/laminas-code instead.
-< Package oyejorge/less.php is abandoned, you should avoid using it. No replacement was suggested.
-< Package sensiolabs/security-checker is abandoned, you should avoid using it. Use https://github.com/fabpot/local-php-security-checker instead.
-< Package sensio/distribution-bundle is abandoned, you should avoid using it. No replacement was suggested.
-< Package twig/extensions is abandoned, you should avoid using it. No replacement was suggested.
-< Package sonata-project/core-bundle is abandoned, you should avoid using it. No replacement was suggested.
-< Generating optimized autoload files
-< Deprecation Notice: Class Sensio\Bundle\FrameworkExtraBundle\Tests\DependencyInjection\AddParamConverterPassTest located in ./vendor/sensio/framework-extra-bundle/Tests/DependencyInjection/Compiler/AddParamConverterPassTest.php does not comply with psr-4 autoloading standard. It will not autoload anymore in Composer v2.0. in phar:///usr/local/bin/composer/src/Composer/Autoload/ClassMapGenerator.php:201
-< Stack trace:
-<  phar:///usr/local/bin/composer/src/Composer/Autoload/ClassMapGenerator.php:116
-<  phar:///usr/local/bin/composer/src/Composer/Autoload/AutoloadGenerator.php:378
-<  phar:///usr/local/bin/composer/src/Composer/Autoload/AutoloadGenerator.php:341
-<  phar:///usr/local/bin/composer/src/Composer/Autoload/AutoloadGenerator.php:264
-<  phar:///usr/local/bin/composer/src/Composer/Installer.php:307
-<  phar:///usr/local/bin/composer/src/Composer/Command/InstallCommand.php:122
-<  phar:///usr/local/bin/composer/vendor/symfony/console/Command/Command.php:245
-<  phar:///usr/local/bin/composer/vendor/symfony/console/Application.php:835
-<  phar:///usr/local/bin/composer/vendor/symfony/console/Application.php:185
-<  phar:///usr/local/bin/composer/src/Composer/Console/Application.php:281
-<  phar:///usr/local/bin/composer/vendor/symfony/console/Application.php:117
-<  phar:///usr/local/bin/composer/src/Composer/Console/Application.php:113
-<  phar:///usr/local/bin/composer/bin/composer:61
-<  /usr/local/bin/composer:24
-< Deprecation Notice: Class Sensio\Bundle\FrameworkExtraBundle\Tests\DependencyInjection\AddExpressionLanguageProvidersPassTest located in ./vendor/sensio/framework-extra-bundle/Tests/DependencyInjection/Compiler/AddExpressionLanguageProvidersPassTest.php does not comply with psr-4 autoloading standard. It will not autoload anymore in Composer v2.0. in phar:///usr/local/bin/composer/src/Composer/Autoload/ClassMapGenerator.php:201
-< Stack trace:
-<  phar:///usr/local/bin/composer/src/Composer/Autoload/ClassMapGenerator.php:116
-<  phar:///usr/local/bin/composer/src/Composer/Autoload/AutoloadGenerator.php:378
-<  phar:///usr/local/bin/composer/src/Composer/Autoload/AutoloadGenerator.php:341
-<  phar:///usr/local/bin/composer/src/Composer/Autoload/AutoloadGenerator.php:264
-<  phar:///usr/local/bin/composer/src/Composer/Installer.php:307
-<  phar:///usr/local/bin/composer/src/Composer/Command/InstallCommand.php:122
-<  phar:///usr/local/bin/composer/vendor/symfony/console/Command/Command.php:245
-<  phar:///usr/local/bin/composer/vendor/symfony/console/Application.php:835
-<  phar:///usr/local/bin/composer/vendor/symfony/console/Application.php:185
-<  phar:///usr/local/bin/composer/src/Composer/Console/Application.php:281
-<  phar:///usr/local/bin/composer/vendor/symfony/console/Application.php:117
-<  phar:///usr/local/bin/composer/src/Composer/Console/Application.php:113
-<  phar:///usr/local/bin/composer/bin/composer:61
-<  /usr/local/bin/composer:24
-< Deprecation Notice: Class Knp\Bundle\MenuBundle\Tests\EventListener\MenuPassTest located in ./vendor/knplabs/knp-menu-bundle/Tests/EventListener/VoterInitializerListenerTest.php does not comply with psr-4 autoloading standard. It will not autoload anymore in Composer v2.0. in phar:///usr/local/bin/composer/src/Composer/Autoload/ClassMapGenerator.php:201
-< Stack trace:
-<  phar:///usr/local/bin/composer/src/Composer/Autoload/ClassMapGenerator.php:116
-<  phar:///usr/local/bin/composer/src/Composer/Autoload/AutoloadGenerator.php:378
-<  phar:///usr/local/bin/composer/src/Composer/Autoload/AutoloadGenerator.php:341
-<  phar:///usr/local/bin/composer/src/Composer/Autoload/AutoloadGenerator.php:264
-<  phar:///usr/local/bin/composer/src/Composer/Installer.php:307
-<  phar:///usr/local/bin/composer/src/Composer/Command/InstallCommand.php:122
-<  phar:///usr/local/bin/composer/vendor/symfony/console/Command/Command.php:245
-<  phar:///usr/local/bin/composer/vendor/symfony/console/Application.php:835
-<  phar:///usr/local/bin/composer/vendor/symfony/console/Application.php:185
-<  phar:///usr/local/bin/composer/src/Composer/Console/Application.php:281
-<  phar:///usr/local/bin/composer/vendor/symfony/console/Application.php:117
-<  phar:///usr/local/bin/composer/src/Composer/Console/Application.php:113
-<  phar:///usr/local/bin/composer/bin/composer:61
-<  /usr/local/bin/composer:24
-< Deprecation Notice: Class JMS\SecurityExtraBundle\Tests\Mapping\Driver\FooService located in ./vendor/jms/security-extra-bundle/Tests/Metadata/Driver/Fixtures/services.php does not comply with psr-4 autoloading standard. It will not autoload anymore in Composer v2.0. in phar:///usr/local/bin/composer/src/Composer/Autoload/ClassMapGenerator.php:201
-< Stack trace:
-<  phar:///usr/local/bin/composer/src/Composer/Autoload/ClassMapGenerator.php:116
-<  phar:///usr/local/bin/composer/src/Composer/Autoload/AutoloadGenerator.php:378
-<  phar:///usr/local/bin/composer/src/Composer/Autoload/AutoloadGenerator.php:341
-<  phar:///usr/local/bin/composer/src/Composer/Autoload/AutoloadGenerator.php:264
-<  phar:///usr/local/bin/composer/src/Composer/Installer.php:307
-<  phar:///usr/local/bin/composer/src/Composer/Command/InstallCommand.php:122
-<  phar:///usr/local/bin/composer/vendor/symfony/console/Command/Command.php:245
-<  phar:///usr/local/bin/composer/vendor/symfony/console/Application.php:835
-<  phar:///usr/local/bin/composer/vendor/symfony/console/Application.php:185
-<  phar:///usr/local/bin/composer/src/Composer/Console/Application.php:281
-<  phar:///usr/local/bin/composer/vendor/symfony/console/Application.php:117
-<  phar:///usr/local/bin/composer/src/Composer/Console/Application.php:113
-<  phar:///usr/local/bin/composer/bin/composer:61
-<  /usr/local/bin/composer:24
-< Deprecation Notice: Class JMS\SecurityExtraBundle\Tests\Mapping\Driver\FooSecureService located in ./vendor/jms/security-extra-bundle/Tests/Metadata/Driver/Fixtures/services.php does not comply with psr-4 autoloading standard. It will not autoload anymore in Composer v2.0. in phar:///usr/local/bin/composer/src/Composer/Autoload/ClassMapGenerator.php:201
-< Stack trace:
-<  phar:///usr/local/bin/composer/src/Composer/Autoload/ClassMapGenerator.php:116
-<  phar:///usr/local/bin/composer/src/Composer/Autoload/AutoloadGenerator.php:378
-<  phar:///usr/local/bin/composer/src/Composer/Autoload/AutoloadGenerator.php:341
-<  phar:///usr/local/bin/composer/src/Composer/Autoload/AutoloadGenerator.php:264
-<  phar:///usr/local/bin/composer/src/Composer/Installer.php:307
-<  phar:///usr/local/bin/composer/src/Composer/Command/InstallCommand.php:122
-<  phar:///usr/local/bin/composer/vendor/symfony/console/Command/Command.php:245
-<  phar:///usr/local/bin/composer/vendor/symfony/console/Application.php:835
-<  phar:///usr/local/bin/composer/vendor/symfony/console/Application.php:185
-<  phar:///usr/local/bin/composer/src/Composer/Console/Application.php:281
-<  phar:///usr/local/bin/composer/vendor/symfony/console/Application.php:117
-<  phar:///usr/local/bin/composer/src/Composer/Console/Application.php:113
-<  phar:///usr/local/bin/composer/bin/composer:61
-<  /usr/local/bin/composer:24
-< Deprecation Notice: Class JMS\SecurityExtraBundle\Tests\Mapping\Driver\FooMultipleSecureService located in ./vendor/jms/security-extra-bundle/Tests/Metadata/Driver/Fixtures/services.php does not comply with psr-4 autoloading standard. It will not autoload anymore in Composer v2.0. in phar:///usr/local/bin/composer/src/Composer/Autoload/ClassMapGenerator.php:201
-< Stack trace:
-<  phar:///usr/local/bin/composer/src/Composer/Autoload/ClassMapGenerator.php:116
-<  phar:///usr/local/bin/composer/src/Composer/Autoload/AutoloadGenerator.php:378
-<  phar:///usr/local/bin/composer/src/Composer/Autoload/AutoloadGenerator.php:341
-<  phar:///usr/local/bin/composer/src/Composer/Autoload/AutoloadGenerator.php:264
-<  phar:///usr/local/bin/composer/src/Composer/Installer.php:307
-<  phar:///usr/local/bin/composer/src/Composer/Command/InstallCommand.php:122
-<  phar:///usr/local/bin/composer/vendor/symfony/console/Command/Command.php:245
-<  phar:///usr/local/bin/composer/vendor/symfony/console/Application.php:835
-<  phar:///usr/local/bin/composer/vendor/symfony/console/Application.php:185
-<  phar:///usr/local/bin/composer/src/Composer/Console/Application.php:281
-<  phar:///usr/local/bin/composer/vendor/symfony/console/Application.php:117
-<  phar:///usr/local/bin/composer/src/Composer/Console/Application.php:113
-<  phar:///usr/local/bin/composer/bin/composer:61
-<  /usr/local/bin/composer:24
-< Deprecation Notice: Class JMS\SecurityExtraBundle\Tests\Mapping\Driver\FooInterface located in ./vendor/jms/security-extra-bundle/Tests/Metadata/Driver/Fixtures/services.php does not comply with psr-4 autoloading standard. It will not autoload anymore in Composer v2.0. in phar:///usr/local/bin/composer/src/Composer/Autoload/ClassMapGenerator.php:201
-< Stack trace:
-<  phar:///usr/local/bin/composer/src/Composer/Autoload/ClassMapGenerator.php:116
-<  phar:///usr/local/bin/composer/src/Composer/Autoload/AutoloadGenerator.php:378
-<  phar:///usr/local/bin/composer/src/Composer/Autoload/AutoloadGenerator.php:341
-<  phar:///usr/local/bin/composer/src/Composer/Autoload/AutoloadGenerator.php:264
-<  phar:///usr/local/bin/composer/src/Composer/Installer.php:307
-<  phar:///usr/local/bin/composer/src/Composer/Command/InstallCommand.php:122
-<  phar:///usr/local/bin/composer/vendor/symfony/console/Command/Command.php:245
-<  phar:///usr/local/bin/composer/vendor/symfony/console/Application.php:835
-<  phar:///usr/local/bin/composer/vendor/symfony/console/Application.php:185
-<  phar:///usr/local/bin/composer/src/Composer/Console/Application.php:281
-<  phar:///usr/local/bin/composer/vendor/symfony/console/Application.php:117
-<  phar:///usr/local/bin/composer/src/Composer/Console/Application.php:113
-<  phar:///usr/local/bin/composer/bin/composer:61
-<  /usr/local/bin/composer:24
-< Deprecation Notice: Class JMS\SecurityExtraBundle\Tests\Mapping\Driver\AnnotationDriverTest located in ./vendor/jms/security-extra-bundle/Tests/Metadata/Driver/AnnotationDriverTest.php does not comply with psr-4 autoloading standard. It will not autoload anymore in Composer v2.0. in phar:///usr/local/bin/composer/src/Composer/Autoload/ClassMapGenerator.php:201
-< Stack trace:
-<  phar:///usr/local/bin/composer/src/Composer/Autoload/ClassMapGenerator.php:116
-<  phar:///usr/local/bin/composer/src/Composer/Autoload/AutoloadGenerator.php:378
-<  phar:///usr/local/bin/composer/src/Composer/Autoload/AutoloadGenerator.php:341
-<  phar:///usr/local/bin/composer/src/Composer/Autoload/AutoloadGenerator.php:264
-<  phar:///usr/local/bin/composer/src/Composer/Installer.php:307
-<  phar:///usr/local/bin/composer/src/Composer/Command/InstallCommand.php:122
-<  phar:///usr/local/bin/composer/vendor/symfony/console/Command/Command.php:245
-<  phar:///usr/local/bin/composer/vendor/symfony/console/Application.php:835
-<  phar:///usr/local/bin/composer/vendor/symfony/console/Application.php:185
-<  phar:///usr/local/bin/composer/src/Composer/Console/Application.php:281
-<  phar:///usr/local/bin/composer/vendor/symfony/console/Application.php:117
-<  phar:///usr/local/bin/composer/src/Composer/Console/Application.php:113
-<  phar:///usr/local/bin/composer/bin/composer:61
-<  /usr/local/bin/composer:24
-< Deprecation Notice: Class JMS\DiExtraBundle\Tests\Fixture\NonEmptyDirectory\SubDir2\Service1 located in ./vendor/jms/di-extra-bundle/Tests/Fixture/NonEmptyDirectory/SubDir2/Service3.php does not comply with psr-4 autoloading standard. It will not autoload anymore in Composer v2.0. in phar:///usr/local/bin/composer/src/Composer/Autoload/ClassMapGenerator.php:201
-< Stack trace:
-<  phar:///usr/local/bin/composer/src/Composer/Autoload/ClassMapGenerator.php:116
-<  phar:///usr/local/bin/composer/src/Composer/Autoload/AutoloadGenerator.php:378
-<  phar:///usr/local/bin/composer/src/Composer/Autoload/AutoloadGenerator.php:341
-<  phar:///usr/local/bin/composer/src/Composer/Autoload/AutoloadGenerator.php:264
-<  phar:///usr/local/bin/composer/src/Composer/Installer.php:307
-<  phar:///usr/local/bin/composer/src/Composer/Command/InstallCommand.php:122
-<  phar:///usr/local/bin/composer/vendor/symfony/console/Command/Command.php:245
-<  phar:///usr/local/bin/composer/vendor/symfony/console/Application.php:835
-<  phar:///usr/local/bin/composer/vendor/symfony/console/Application.php:185
-<  phar:///usr/local/bin/composer/src/Composer/Console/Application.php:281
-<  phar:///usr/local/bin/composer/vendor/symfony/console/Application.php:117
-<  phar:///usr/local/bin/composer/src/Composer/Console/Application.php:113
-<  phar:///usr/local/bin/composer/bin/composer:61
-<  /usr/local/bin/composer:24
-< Deprecation Notice: Class Doctrine\Bundle\MigrationsBundle\Tests\DependencyInjection\DoctrineCommandTest located in ./vendor/doctrine/doctrine-migrations-bundle/Tests/Command/DoctrineCommandTest.php does not comply with psr-4 autoloading standard. It will not autoload anymore in Composer v2.0. in phar:///usr/local/bin/composer/src/Composer/Autoload/ClassMapGenerator.php:201
-< Stack trace:
-<  phar:///usr/local/bin/composer/src/Composer/Autoload/ClassMapGenerator.php:116
-<  phar:///usr/local/bin/composer/src/Composer/Autoload/AutoloadGenerator.php:378
-<  phar:///usr/local/bin/composer/src/Composer/Autoload/AutoloadGenerator.php:341
-<  phar:///usr/local/bin/composer/src/Composer/Autoload/AutoloadGenerator.php:264
-<  phar:///usr/local/bin/composer/src/Composer/Installer.php:307
-<  phar:///usr/local/bin/composer/src/Composer/Command/InstallCommand.php:122
-<  phar:///usr/local/bin/composer/vendor/symfony/console/Command/Command.php:245
-<  phar:///usr/local/bin/composer/vendor/symfony/console/Application.php:835
-<  phar:///usr/local/bin/composer/vendor/symfony/console/Application.php:185
-<  phar:///usr/local/bin/composer/src/Composer/Console/Application.php:281
-<  phar:///usr/local/bin/composer/vendor/symfony/console/Application.php:117
-<  phar:///usr/local/bin/composer/src/Composer/Console/Application.php:113
-<  phar:///usr/local/bin/composer/bin/composer:61
-<  /usr/local/bin/composer:24
-< Deprecation Notice: Class Bazinga\Bundle\JsTranslationBundle\Tests\AppKernel located in ./vendor/willdurand/js-translation-bundle/Tests/Fixtures/app/AppKernel.php does not comply with psr-4 autoloading standard. It will not autoload anymore in Composer v2.0. in phar:///usr/local/bin/composer/src/Composer/Autoload/ClassMapGenerator.php:201
-< Stack trace:
-<  phar:///usr/local/bin/composer/src/Composer/Autoload/ClassMapGenerator.php:116
-<  phar:///usr/local/bin/composer/src/Composer/Autoload/AutoloadGenerator.php:378
-<  phar:///usr/local/bin/composer/src/Composer/Autoload/AutoloadGenerator.php:341
-<  phar:///usr/local/bin/composer/src/Composer/Autoload/AutoloadGenerator.php:264
-<  phar:///usr/local/bin/composer/src/Composer/Installer.php:307
-<  phar:///usr/local/bin/composer/src/Composer/Command/InstallCommand.php:122
-<  phar:///usr/local/bin/composer/vendor/symfony/console/Command/Command.php:245
-<  phar:///usr/local/bin/composer/vendor/symfony/console/Application.php:835
-<  phar:///usr/local/bin/composer/vendor/symfony/console/Application.php:185
-<  phar:///usr/local/bin/composer/src/Composer/Console/Application.php:281
-<  phar:///usr/local/bin/composer/vendor/symfony/console/Application.php:117
-<  phar:///usr/local/bin/composer/src/Composer/Console/Application.php:113
-<  phar:///usr/local/bin/composer/bin/composer:61
-<  /usr/local/bin/composer:24
-< 12 packages you are using are looking for funding.
-< Use the `composer fund` command to find out more!
-< > post-install-cmd: @symfony-scripts
-< > symfony-scripts: `which sudo 2>/dev/null || true` rm -rf app/cache/${SYMFONY_ENV:-dev} || true
-< > symfony-scripts: Sensio\Bundle\DistributionBundle\Composer\ScriptHandler::buildBootstrap
-< Updating the "app/config/parameters.yml" file
-< > symfony-scripts: Incenteev\ParameterHandler\ScriptHandler::buildParameters
-< > symfony-scripts: @php app/console cache:warmup
-<  // Warming up the cache for the prod environment with debug false
-<  [OK] Cache for the "prod" environment (debug=false) was successfully warmed.
-• done on [ly-bdoh-tst.lyon.irstea.priv]
-✔ Ok [7s 627ms]
-➤ Executing task deploy:assets:install
->  cd /var/www/bdoh/releases/13 && (/usr/bin/php /usr/local/bin/composer install-assets --no-interaction)
-< > @php app/console asset:install -n --symlink --relative
-<  Trying to install assets as relative symbolic links.
-<  --- ---------------------------- ------------------ 
-<       Bundle                       Method / Error    
-<  --- ---------------------------- ------------------ 
-<   ✔   FrameworkBundle              relative symlink  
-<   ✔   BazingaJsTranslationBundle   relative symlink  
-<   ✔   JMSJobQueueBundle            relative symlink  
-<   ✔   SonataCoreBundle             relative symlink  
-<   ✔   SonataAdminBundle            relative symlink  
-<  --- ---------------------------- ------------------ 
-<  [OK] All assets were successfully installed.
-< > @php app/console bazinga:js-translation:dump -n src/Irstea/BdohInternationalisationBundle/Resources/assets --merge-domains --format=json
-< Installing translation files in src/Irstea/BdohInternationalisationBundle/Resources/assets directory
-• done on [ly-bdoh-tst.lyon.irstea.priv]
-✔ Ok [519ms]
-➤ Executing task frontend:vendors
->  cd /var/www/bdoh/releases/13 && (yarn install --pure-lockfile)
-< yarn install v1.22.10
-< [1/4] Resolving packages...
-< [2/4] Fetching packages...
-< info fsevents@1.1.2: The platform "linux" is incompatible with this module.
-< info "fsevents@1.1.2" is an optional dependency and failed compatibility check. Excluding it from installation.
-< [3/4] Linking dependencies...
-< warning " > less-loader@4.0.5" has unmet peer dependency "webpack@^2.0.0 || ^3.0.0".
-< [4/4] Building fresh packages...
-< Done in 6.46s.
-• done on [ly-bdoh-tst.lyon.irstea.priv]
-✔ Ok [6s 717ms]
-➤ Executing task frontend:generate
->  cd /var/www/bdoh/releases/13 && (yarn run encore production)
-< yarn run v1.22.10
-< $ /var/www/bdoh/releases/13/node_modules/.bin/encore production
-< Running webpack ...
-<  DONE  Compiled successfully in 49308ms4:56:03 PM
-<  I  83 files written to web/assets
-< Done in 50.17s.
-• done on [ly-bdoh-tst.lyon.irstea.priv]
-✔ Ok [50s 432ms]
-➤ Executing task deploy:assetic:dump
-• done on [ly-bdoh-tst.lyon.irstea.priv]
-✔ Ok [0ms]
-➤ Executing task deploy:cache:clear
->  /usr/bin/php /var/www/bdoh/releases/13/app/console cache:clear --no-interaction --env=prod --no-debug --no-warmup
-<  // Clearing the cache for the prod environment with debug false
-<  [OK] Cache for the "prod" environment (debug=false) was successfully cleared.
-• done on [ly-bdoh-tst.lyon.irstea.priv]
-✔ Ok [1s 543ms]
-➤ Executing task deploy:cache:warmup
->  /usr/bin/php /var/www/bdoh/releases/13/app/console cache:warmup --no-interaction --env=prod --no-debug
-<  // Warming up the cache for the prod environment with debug false
-<  [OK] Cache for the "prod" environment (debug=false) was successfully warmed.
-• done on [ly-bdoh-tst.lyon.irstea.priv]
-✔ Ok [3s 417ms]
-➤ Executing task deploy:writable
->  cd /var/www/bdoh/releases/13 && (mkdir -p app/cache app/logs app/imports app/exports web/css/themes web/uploads/.)
->  cd /var/www/bdoh/releases/13 && (chmod 2>&1; true)
-< chmod: opérande manquant
-< Saisissez « chmod --help » pour plus d'informations.
->  cd /var/www/bdoh/releases/13 && (if hash setfacl 2>/dev/null; then echo 'true'; fi)
-< true
->  cd /var/www/bdoh/releases/13 && (getfacl -p app/cache | grep "^user:www-data:.*w" | wc -l)
->  cd /var/www/bdoh/releases/13 && (setfacl -L -R -m u:"www-data":rwX -m u:`whoami`:rwX app/cache)
->  cd /var/www/bdoh/releases/13 && (setfacl -dL -R -m u:"www-data":rwX -m u:`whoami`:rwX app/cache)
->  cd /var/www/bdoh/releases/13 && (getfacl -p app/logs | grep "^user:www-data:.*w" | wc -l)
-< 1
->  cd /var/www/bdoh/releases/13 && (getfacl -p app/imports | grep "^user:www-data:.*w" | wc -l)
->  cd /var/www/bdoh/releases/13 && (setfacl -L -R -m u:"www-data":rwX -m u:`whoami`:rwX app/imports)
->  cd /var/www/bdoh/releases/13 && (setfacl -dL -R -m u:"www-data":rwX -m u:`whoami`:rwX app/imports)
->  cd /var/www/bdoh/releases/13 && (getfacl -p app/exports | grep "^user:www-data:.*w" | wc -l)
->  cd /var/www/bdoh/releases/13 && (setfacl -L -R -m u:"www-data":rwX -m u:`whoami`:rwX app/exports)
->  cd /var/www/bdoh/releases/13 && (setfacl -dL -R -m u:"www-data":rwX -m u:`whoami`:rwX app/exports)
->  cd /var/www/bdoh/releases/13 && (getfacl -p web/css/themes | grep "^user:www-data:.*w" | wc -l)
->  cd /var/www/bdoh/releases/13 && (setfacl -L -R -m u:"www-data":rwX -m u:`whoami`:rwX web/css/themes)
->  cd /var/www/bdoh/releases/13 && (setfacl -dL -R -m u:"www-data":rwX -m u:`whoami`:rwX web/css/themes)
->  cd /var/www/bdoh/releases/13 && (getfacl -p web/uploads/. | grep "^user:www-data:.*w" | wc -l)
-< 1
-• done on [ly-bdoh-tst.lyon.irstea.priv]
-✔ Ok [606ms]
-➤ Executing task apache2:stop
->  cd /var/www/bdoh/releases/13 && (sudo systemctl stop apache2.service)
-• done on [ly-bdoh-tst.lyon.irstea.priv]
-✔ Ok [925ms]
-➤ Executing task job-worker:stop
->  cd /var/www/bdoh/releases/13 && (sudo systemctl stop bdoh-job-worker.service)
-• done on [ly-bdoh-tst.lyon.irstea.priv]
-✔ Ok [93ms]
-➤ Executing task database:migrate
->  /usr/bin/php /var/www/bdoh/releases/13/app/console doctrine:migrations:migrate --no-interaction --env=prod --no-debug --allow-no-migration
-<                                                        
-<                     BDOH Migrations
-< No migrations to execute.
-• done on [ly-bdoh-tst.lyon.irstea.priv]
-✔ Ok [238ms]
-➤ Executing task deploy:symlink
->  if [[ $(man mv 2>&1 || mv -h 2>&1 || mv --help 2>&1) =~ '--no-target-directory' ]]; then echo 'true'; fi
-< true
->  mv -T /var/www/bdoh/release /var/www/bdoh/current
-• done on [ly-bdoh-tst.lyon.irstea.priv]
-✔ Ok [140ms]
-➤ Executing task job-worker:refresh
->  cd /var/www/bdoh/releases/13 && (sudo systemctl daemon-reload)
-• done on [ly-bdoh-tst.lyon.irstea.priv]
-✔ Ok [192ms]
-➤ Executing task job-worker:start
->  cd /var/www/bdoh/releases/13 && (sudo systemctl start bdoh-job-worker.service)
-• done on [ly-bdoh-tst.lyon.irstea.priv]
-✔ Ok [63ms]
-➤ Executing task apache2:start
->  cd /var/www/bdoh/releases/13 && (sudo systemctl start apache2.service)
-• done on [ly-bdoh-tst.lyon.irstea.priv]
-✔ Ok [141ms]
-➤ Executing task deploy:unlock
->  rm -f /var/www/bdoh/.dep/deploy.lock
-• done on [ly-bdoh-tst.lyon.irstea.priv]
-✔ Ok [46ms]
-➤ Executing task cleanup
->   rm -rf /var/www/bdoh/releases/8
->  cd /var/www/bdoh && if [ -e release ]; then  rm release; fi
->  cd /var/www/bdoh && if [ -h release ]; then  rm release; fi
-• done on [ly-bdoh-tst.lyon.irstea.priv]
-✔ Ok [5s 53ms]
-Successfully deployed!
diff --git a/work/liste_etapes_ansible_openbdoh.txt b/work/liste_etapes_ansible_openbdoh.txt
deleted file mode 100644
index fe165af49..000000000
--- a/work/liste_etapes_ansible_openbdoh.txt
+++ /dev/null
@@ -1,88 +0,0 @@
-TASK [Gathering Facts] *********************************************************
-TASK [common : Package cleanup] ************************************************
-TASK [common : Configure timezone Europe/Paris] ********************************
-TASK [common : Configure default locale: fr_FR.UTF-8] **************************
-TASK [common : Configure generated locales] ************************************
-TASK [common : Install common tools] *******************************************
-TASK [common : Set up MOTD] ****************************************************
-TASK [common : Set up shell prompt] ********************************************
-TASK [common : Set up global bashrc] *******************************************
-TASK [common : Set up vim] *****************************************************
-TASK [common : Install/update VMware guest tools] ******************************
-TASK [common : (Un)install time-syncing packages] ******************************
-TASK [common : Install packages: cron] *****************************************
-TASK [common : Enable and start services: cron] ********************************
-TASK [common : Install authorized_keys for root] *******************************
-TASK [common : Install SSH keys of known hosts] ********************************
-TASK [common : Install unattended upgrades] ************************************
-TASK [common : Configure unattended upgrades] **********************************
-TASK [common : Enable unattended upgrade timers] *******************************
-TASK [postgresql-server : Install packages: postgresql, postgresql-client, libpq-dev, python3-psycopg2] ***
-TASK [postgresql-server : Enable and start services: postgresql] ***************
-TASK [postgresql-server : Fetch postgresql version] ****************************
-TASK [postgresql-server : Set md5 policy for local connections] ****************
-TASK [postgresql-server : Set peer policy for postgres's connections] **********
-TASK [postgresql-server : Create devops superuser] *****************************
-TASK [postgresql-server : Set peer policy for devops's connections] ************
-TASK [postgresql-server : Install the daily database dump script] **************
-TASK [postgresql-server : Create user 'bdoh'] **********************************
-TASK [postgresql-server : Setting 'bdoh' password] *****************************
-TASK [postgresql-server : Select database owner] *******************************
-TASK [postgresql-server : Create database 'bdoh'] ******************************
-TASK [postgresql-server : Grant permissions on database 'bdoh' to bdoh] ********
-TASK [postgresql-server : Create schema 'bdoh.bdoh'] ***************************
-TASK [postgresql-server : Grant permissions on schema 'bdoh.bdoh' to bdoh] *****
-TASK [phpapp : Generate the deploy key pair] ***********************************
-TASK [phpapp : Read the deploy key pair] ***************************************
-TASK [phpapp : Create the devops group] ****************************************
-TASK [phpapp : Create the devops user] *****************************************
-TASK [phpapp : Grant password-less sudo to devops] *****************************
-TASK [phpapp : Install devops tools] *******************************************
-TASK [phpapp : Install authorized_keys of devops] ******************************
-TASK [phpapp : Remove local .bashrc] *******************************************
-TASK [phpapp : Setup environment variables] ************************************
-TASK [phpapp : Setup PSQLRC] ***************************************************
-TASK [phpapp : Configure ~devops/.pgpass for bdoh] *****************************
-TASK [phpapp : Setup /var/www/bdoh] ********************************************
-TASK [phpapp : Install PostgreSQL client] **************************************
-TASK [phpapp : Query PostgreSQL about version] *********************************
-TASK [phpapp : Extract the PostgreSQL server version] **************************
-TASK [phpapp : Install packages: apache2] **************************************
-TASK [phpapp : Enable and start services: apache2] *****************************
-TASK [phpapp : Enable/disable SSL module] **************************************
-TASK [phpapp : (Un)install mod_rpaf package] ***********************************
-TASK [phpapp : Enable/disable rpaf module] *************************************
-TASK [phpapp : Disable sensible modules] ***************************************
-TASK [phpapp : Disable sensible configuration] *********************************
-TASK [phpapp : Disable default site] *******************************************
-TASK [phpapp : Configure catch-all site] ***************************************
-TASK [phpapp : Enable catch-all site] ******************************************
-TASK [phpapp : Enable modules] *************************************************
-TASK [phpapp : Configure security] *********************************************
-TASK [phpapp : Configure SSL security] *****************************************
-TASK [phpapp : Enable security configuration] **********************************
-TASK [phpapp : Install http://vm-bdoh-tst/ configuration] **********************
-TASK [phpapp : Enable http://vm-bdoh-tst/ configuration] ***********************
-TASK [phpapp : Install the APT key from https://packages.sury.org/php/apt.gpg] ***
-TASK [phpapp : Install apt-transport-https] ************************************
-TASK [phpapp : Configure APT repository: php] **********************************
-TASK [phpapp : Remove unwanted PHP versions] ***********************************
-TASK [phpapp : Remove configuration of unwanted PHP versions] ******************
-TASK [phpapp : Install required packages] **************************************
-TASK [phpapp : Remove unwanted packages] ***************************************
-TASK [phpapp : List available extensions] **************************************
-TASK [phpapp : Enable required extensions] *************************************
-TASK [phpapp : Disable unwanted extensions] ************************************
-TASK [phpapp : Install security configuration] *********************************
-TASK [phpapp : Enable security configuration] **********************************
-TASK [phpapp : Configure the default timezone] *********************************
-TASK [phpapp : Remove locally installed composer binary and cache] *************
-TASK [phpapp : Install the PHAR for 1.10.20] ***********************************
-TASK [phpapp : Create Composer configuration directory] ************************
-TASK [phpapp : Setup Composer authentication] **********************************
-TASK [phpapp : Install the APT key from https://deb.nodesource.com/gpgkey/nodesource.gpg.key] ***
-TASK [phpapp : Install apt-transport-https] ************************************
-TASK [phpapp : Configure APT repository: nodesource] ***************************
-TASK [phpapp : Install NodeJS packages] ****************************************
-TASK [phpapp : Install the Yarn package manager] *******************************
-TASK [phpapp : Install the configuration file for logrotate] *******************
diff --git a/work/liste_fichiers_configuration.md b/work/liste_fichiers_configuration.md
deleted file mode 100644
index a8ea0b269..000000000
--- a/work/liste_fichiers_configuration.md
+++ /dev/null
@@ -1,8 +0,0 @@
-/home/devops/.pgpass
-/etc/apache2/sites-available/000-catch-all.conf
-/etc/apache2/conf-available/security.conf
-/etc/apache2/mods-available/ssl.conf
-/etc/apache2/sites-available/<domaine>.conf
-/etc/php/7.1/mods-available/owasp-security.ini
-/home/devops/.config/composer/auth.json
-/etc/logrotate.d/bdoh
diff --git a/work/tri_liste_commandes_ansible.md b/work/tri_liste_commandes_ansible.md
deleted file mode 100644
index 3a4b1812a..000000000
--- a/work/tri_liste_commandes_ansible.md
+++ /dev/null
@@ -1,229 +0,0 @@
-Liste détaillée des commandes exécutées par Ansible
-===================================================
-
-# TASK [Common] ****************************************************************
-
-TASK [common : Package cleanup] ************************************************ DISPENSABLE
-sudo apt update
-sudo apt autoclean
-sudo apt autoremove
-TASK [common : Configure timezone Europe/Paris] ******************************** DISPENSABLE
-sudo echo "Europe/Paris" >> /etc/timezone
-sudo chmod 0444 /etc/timezone
-TASK [common : Configure default locale: fr_FR.UTF-8] ************************** DISPENSABLE
-apt install locales
-dpkg-reconfigure locales (interactive)
-TASK [common : Configure generated locales] ************************************ DISPENSABLE
-locale-gen --purge fr_FR.UTF-8
-TASK [common : Install common tools] ******************************************* DISPENSABLE
-sudo apt install curl ncurses-bin ncurses-term vim bash
-TASK [common : Set up MOTD] **************************************************** DISPENSABLE
-cp ansible/roles/common/templates/login/motd.j2 /etc/motd
-TASK [common : Set up shell prompt] ******************************************** DISPENSABLE
-"remplir /etc/profile.d/prompt.sh sur le modèle de ansible/roles/common/templates/login/prompt.sh.j2"
-TASK [common : Set up global bashrc] ******************************************* DISPENSABLE
-mv ansible/roles/common/files/login/bash.bashrc /etc/bash.bashrc
-TASK [common : Set up vim] ***************************************************** DISPENSABLE
-mv ansible/roles/common/files/login/vimrc.local /etc/vim/vimrc.local
-TASK [common : Install/update VMware guest tools] ****************************** DISPENSABLE
-sudo apt install open-vm-tools
-TASK [common : (Un)install time-syncing packages] ****************************** DISPENSABLE
-"installation et configuration de NTP"
-TASK [common : Install packages: cron] ***************************************** IMPORTANT
-sudo apt install apt-transport-https
-sudo apt install cron
-TASK [common : Enable and start services: cron] ******************************** IMPORTANT
-sudo systemctl enable cron.service
-sudo systemctl start cron.service
-TASK [common : Install authorized_keys for root] ******************************* INUTILE
-"installation de la clef ssh de root"
-TASK [common : Install SSH keys of known hosts] ******************************** INUTILE
-"installation des clefs publiques des serveurs"
-TASK [common : Install unattended upgrades] ************************************ DISPENSABLE
-sudo apt install unattended-upgrades needrestart
-TASK [common : Configure unattended upgrades] ********************************** DISPENSABLE
-"configuration de unattended-upgrades"
-TASK [common : Enable unattended upgrade timers] ******************************* DISPENSABLE
-"configuration des timers de unattended-upgrades"
-
-# TASK [PostgreSQL-server] *****************************************************
-
-TASK [postgresql-server : Install packages: postgresql, postgresql-client, libpq-dev, python3-psycopg2] *** IMPORTANT
-sudo apt install postgresql postgresql-client libpq-dev python3-psycopg2
-TACHE: installation de postgis ************************************************* IMPORTANT
-sudo apt install postgis postgresql-postgis-2.5 postgresql-postgis-2.5-scripts
-TASK [postgresql-server : Enable and start services: postgresql] *************** IMPORTANT
-sudo systemctl enable postgresql
-sudo systemctl start postgresql
-TASK [postgresql-server : Fetch postgresql version] **************************** INUTILE
-"vérifier la version de postgresql"
-TASK [postgresql-server : Set md5 policy for local connections] **************** IMPORTANT
-"activer md5 pour toutes les connexions locales dans /etc/postgresql/11/main/pg_hba.conf"
-TASK [postgresql-server : Set peer policy for postgres's connections] ********** IMPORTANT
-"activer peer pour toutes les connexions locales de postgres"
-TASK [postgresql-server : Create devops superuser] ***************************** IMPORTANT
-CREATE USER devops;
-ALTER ROLE devops SUPERUSER;
-TASK [postgresql-server : Set peer policy for devops's connections] ************ IMPORTANT
-"activer peer pour toutes les connexions locales de devops"
-TASK [postgresql-server : Install the daily database dump script] ************** IMPORTANT
-"installer le script ansible/roles/postgresql-server/files/local_pg_dump dans /etc/cron.daily/local_pg_dump"
-sudo chmod 0555 /etc/cron.daily/local_pg_dump;
-TASK [postgresql-server : Create user 'bdoh'] ********************************** IMPORTANT
-CREATE USER bdoh;
-TASK [postgresql-server : Setting 'bdoh' password] ***************************** IMPORTANT
-ALTER USER devops WITH PASSWORD 'devopsmdp';
-TASK [postgresql-server : Select database owner] ******************************* IMPORTANT
-ALTER DATABASE postgres OWNER TO devops;
-TASK [postgresql-server : Create database 'bdoh'] ****************************** IMPORTANT
-CREATE DATABASE bdoh;
-TASK [postgresql-server : Grant permissions on database 'bdoh' to bdoh] ******** IMPORTANT
-"donner les autorisations CONNECT et TEMPORARY à bdoh sur la base bdoh"
-GRANT CONNECT,TEMPORARY ON database bdoh TO bdoh;
-REVOKE GRANT OPTION FOR CONNECT,TEMPORARY ON database bdoh FROM bdoh;
-TASK [postgresql-server : Create schema 'bdoh.bdoh'] *************************** IMPORTANT
-CREATE SCHEMA bdoh.bdoh;
-TASK [postgresql-server : Grant permissions on schema 'bdoh.bdoh' to bdoh] ***** IMPORTANT
-GRANT USAGE,CREATE ON schema bdoh TO bdoh;
-REVOKE GRANT OPTION FOR USAGE,CREATE ON schema bdoh FROM bdoh;
-TACHE: paramétrer le search space ********************************************** IMPORTANT
-ALTER DATABASE bdoh SET search_path = "bdoh", "$user", public;
-TACHE : créer l'extension PostGIS ********************************************** IMPORTANT
-CREATE EXTENSION postgis;
-
-# TASK [PHP-App] ***************************************************************
-
-TASK [phpapp : Generate the deploy key pair] *********************************** INUTILE
-"création de la clef de déploiement automatique"
-TASK [phpapp : Read the deploy key pair] *************************************** INUTILE
-"lecture de la clef de déploiment automatique"
-TASK [phpapp : Create the devops group] **************************************** IMPORTANT
-sudo adduser devops
-sudo groupadd -g 1001 devops
-TASK [phpapp : Create the devops user] ***************************************** IMPORTANT
-sudo useradd -u 1001 devops
-sudo usermod -a -G devops,www-data,sudo devops
-TASK [phpapp : Grant password-less sudo to devops] ***************************** DISPENSABLE
-sudo echo "devops ALL = (ALL) NOPASSWD: ALL" >> /etc/sudoers.d/devops
-TASK [phpapp : Install devops tools] ******************************************* DISPENSABLE
-sudo apt install acl git htop unzip
-TASK [phpapp : Install authorized_keys of devops] ****************************** INUTILE
-"installer la clef devops dans authorized_keys"
-TASK [phpapp : Remove local .bashrc] ******************************************* DISPENSABLE
-rm /home/devops/.bashrc
-TASK [phpapp : Setup environment variables] ************************************ IMPORTANT
-"exporter les variables PGDATABASE PGHOST PGPORT PGUSER dans /home/devops/.profile"
-echo "export PGDATABASE=bdoh \n export PGHOST=/run/postgresql \n export PGPORT=5432 \n export PGUSER=devops \n export APP_ENV=prod \n export SYMFONY_ENV=prod" > /home/devops/.profile ;
-sudo chmod 0600 /home/devops/.profile
-TASK [phpapp : Setup PSQLRC] *************************************************** IMPORTANT
-rm /home/devops/.psqlrc
-TASK [phpapp : Configure ~devops/.pgpass for bdoh] ***************************** IMPORTANT
-"créer et configurer /home/devops/.pgpass"
-echo "/run/postgresql:5432:bdoh:bdoh:devopsmdp" > /home/devops/.pgpass
-chown devops:devops /home/devops/.pgpass
-chmod 0400 /home/devops/.pgpass
-TASK [phpapp : Setup /var/www/bdoh] ************** IMPORTANT
-mkdir /var/www/bdoh
-chown devops:www-data /var/www/bdoh
-chmod 2755 /var/www/bdoh
-TASK [phpapp : Install PostgreSQL client] ************** IMPORTANT
-sudo apt install postgresql-client
-TASK [phpapp : Query PostgreSQL about version] ************** INUTILE
-"extraire et enregistrer la version de PostgreSQL"
-TASK [phpapp : Extract the PostgreSQL server version] ************** INUTILE
-"extraire et enregistrer la version du serveur PostgreSQL"
-TASK [phpapp : Install packages: apache2] ************** IMPORTANT
-sudo apt install apache2
-TASK [phpapp : Enable and start services: apache2] ************** IMPORTANT
-sudo systemctl enable apache2
-sudo systemctl start apache2
-TASK [phpapp : Enable/disable SSL module] ************** IMPORTANT
-"Activer le module SSL d'Apache2"
-sudo a2enmod ssl
-TASK [phpapp : (Un)install mod_rpaf package] ************** INUTILE
-"Installer ou désinstaller mod_rpaf"
-TASK [phpapp : Enable/disable rpaf module] ************** IMPORTANT
-"Désactiver le module rpaf"
-sudo a2dismod libapache2-mod-rpaf
-TASK [phpapp : Disable sensible modules] ************** IMPORTANT
-"Désactiver les modules cgid et status"
-sudo a2dismod cgid
-sudo a2dismod status
-TASK [phpapp : Disable sensible configuration] ************** IMPORTANT
-sudo /usr/sbin/a2disconf serve-cgi-bin || true
-TASK [phpapp : Disable default site] ************** IMPORTANT
-sudo /usr/sbin/a2dissite 000-default
-TASK [phpapp : Configure catch-all site] ************** IMPORTANT
-"configurer /etc/apache2/sites-available/000-catch-all.conf sur le modèle de /roles/phpapp/templates/apache2/vhost-catch-all.conf.j2"
-sudo chmod 644 /etc/apache2/sites-available/000-catch-all.conf
-sudo chown root:root /etc/apache2/sites-available/000-catch-all.conf
-TASK [phpapp : Enable catch-all site] ************** IMPORTANT
-sudo /usr/sbin/a2ensite 000-catch-all
-TASK [phpapp : Enable modules] ************** IMPORTANT
-"activer les modules alias authz_core deflate dir env expires headers log_config mime negotiation rewrite setenvif unique_id"
-sudo a2enmod alias authz_core deflate dir env expires headers log_config mime negotiation rewrite setenvif unique_id
-TASK [phpapp : Configure security] ************** IMPORTANT
-"ajouter les options nécessaires à /etc/apache2/conf-available/security.conf"
-TASK [phpapp : Configure SSL security] *****************************************
-"ajouter les options nécessaires à /etc/apache2/mods-available/ssl.conf"
-TASK [phpapp : Enable security configuration] ************** IMPORTANT
-sudo /usr/sbin/a2enconf security.conf
-TASK [phpapp : Install http://vm-bdoh-tst/ configuration] ************** IMPORTANT
-"remplir /etc/apache2/sites-available/vm-bdoh-tst.conf selon le modèle ansible/roles/phpapp/apache2/vhost.conf.j2"
-TASK [phpapp : Enable http://vm-bdoh-tst/ configuration] ************** IMPORTANT
-sudo /usr/sbin/a2ensite vm-bdoh-tst.conf
-systemctl restart apache2
-TASK [phpapp : Install the APT key from https://packages.sury.org/] ************** IMPORTANT
-"ajouter le dépot deb.sury.org"
-sudo apt-get -y install apt-transport-https lsb-release ca-certificates curl
-sudo wget -O /etc/apt/trusted.gpg.d/php.gpg https://packages.sury.org/php/apt.gpg
-sudo sh -c 'echo "deb https://packages.sury.org/php/ $(lsb_release -sc) main" > /etc/apt/sources.list.d/php.list'
-sudo apt-get update
-TASK [phpapp : Install apt-transport-https] ************** IMPORTANT
-sudo apt install apt-transport-https
-TASK [phpapp : Configure APT repository: php] ************** INUTILE
-"inscrire deb https://packages.sury.org/php/ buster main dans php"
-TASK [phpapp : Remove unwanted PHP versions] ************** INUTILE
-"désinstaller les versions de PHP inutiles"
-TASK [phpapp : Remove configuration of unwanted PHP versions] ************** INUTILE
-"retirer la configuration des versions PHP inutiles"
-TASK [phpapp : Install required packages] ************** IMPORTANT
-sudo apt install php 7.1 php7.1-apcu php7.1-apcu-bc php7.1-common php7.1-gd php7.1-intl php7.1-json php7.1-mbstring php7.1-pgsql php7.1-pgsql php7.1-common php7.1-sodium php7.1-xml php7.1-xml php7.1-zip
-TASK [phpapp : Remove unwanted packages] ************** INUTILE
-"supprimer les packages installés en trop"
-TASK [phpapp : List available extensions] ************** INUTILE
-"lister les extensions disponibles"
-TASK [phpapp : Enable required extensions] ************** IMPORTANT
-sudo /usr/sbin/phpenmod -v 7.1 apcu apcu-bc ctype gd hash iconv intl json mbstring pdo pdo-pgsql pgsql posix sodium tokenizer xml xsl zip pdo readline
-TASK [phpapp : Disable unwanted extensions] ************** INUTILE
-"désactiver les extensions installées en trop"
-TASK [phpapp : Install security configuration] ************** IMPORTANT
-cp ansible/roles/phpapp/files/php/owasp-security.ini /etc/php/7.1/mods-available/owasp-security.ini
-chmod 644 /etc/php/7.1/mods-available/owasp-security.ini
-TASK [phpapp : Enable security configuration] ************** IMPORTANT
-sudo /usr/sbin/phpenmod -v 7.1 owasp-security
-TASK [phpapp : Configure the default timezone] ************** DISPENSABLE
-"régler la timezone dans /etc/php/7.1/cli/php.ini et /etc/php/7.1/php_sapi/php.ini"
-TASK [phpapp : Remove locally installed composer binary and cache] ************** INUTILE
-"supprimer /home/devops/.composer et /home/devops/bin/composer"
-TASK [phpapp : Install the PHAR for 1.10.20] ************** IMPORTANT
-wget http://getcomposer.org/download/1.10.20/composer.phar -P /usr/local/bin/composer
-curl -sS https://getcomposer.org/installer | sudo php -- --install-dir=/usr/local/bin --filename=composer --version=1.10.20
-TASK [phpapp : Create Composer configuration directory] ************** IMPORTANT
-install -d -m 0700 -o devops -g devops /home/devops/.config/composer
-TASK [phpapp : Setup Composer authentication] ************** IMPORTANT
-"configurer /home/devops/.config/composer/auth.json sur le modèle de ansible/roles/phpapp/templates/auth.json.j2 avec le mode 0600"
-TASK [phpapp : Install the APT key from https://deb.nodesource.com/] ************** IMPORTANT
-curl -fsSL https://deb.nodesource.com/gpgkey/nodesource.gpg.key | gpg --dearmor | sudo tee /usr/share/keyrings/nodesource.gpg >/dev/null
-gpg --no-default-keyring --keyring /usr/share/keyrings/nodesource.gpg --list-keys
-TASK [phpapp : Install apt-transport-https] ************** IMPORTANT
-sudo apt install apt-transport-https
-TASK [phpapp : Configure APT repository: nodesource] ************** INUTILE
-"déclarer le repository"
-TASK [phpapp : Install NodeJS packages] ************** IMPORTANT
-sudo apt install nodejs
-apt install npm
-TASK [phpapp : Install the Yarn package manager] ************** IMPORTANT
-npm install --global --production yarn 
-TASK [phpapp : Install the configuration file for logrotate] ************** IMPORTANT
-"écrire  /etc/logrotate.d/bdoh en mode 0644 sur le modèle de ansible/roles/phpapp/templates/logrotate.j2"
\ No newline at end of file
-- 
GitLab