diff --git a/.gitignore b/.gitignore deleted file mode 100644 index 29443501ba49311aaee113a9a327b696a5d9470a..0000000000000000000000000000000000000000 --- a/.gitignore +++ /dev/null @@ -1,2 +0,0 @@ -/script.sh -/bdoh-*.tar.bz2 diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index 928dcd50b479fcbda2589badf4652b3efadbfcde..8dd8b7376e8b86fc06487a04ddf475ff952e1d3d 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 6337814c8ba23b57c6e4411636c2dbfa15e3ed86..0000000000000000000000000000000000000000 --- 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 185f27819cebd581ba51b077b6ccc57027baa2a7..8429fd5690c5bea24c444602b78f53ad6236204b 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 0000000000000000000000000000000000000000..b805fce571abe8a664c11a89308a36fb440a6a67 --- /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 Binary files a/work/OpenBDOH_rapport.odt and /dev/null differ diff --git a/work/ansible_commandes_importantes.md b/work/ansible_commandes_importantes.md deleted file mode 100644 index e69de29bb2d1d6434b8b29ae775ad8c2e48c5391..0000000000000000000000000000000000000000 diff --git a/work/deployer_commandes_importantes.md b/work/deployer_commandes_importantes.md deleted file mode 100644 index 3d1b132232fb2d87c2253bc0bde200a90c44dfc8..0000000000000000000000000000000000000000 --- 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 a8ea0b2696c1b64e63369d850563c01a5f954974..0000000000000000000000000000000000000000 --- 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 3b921eb48f365ae793da775ff014db8be5a72074..0000000000000000000000000000000000000000 --- 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 d3d17fa38b0132c287a30a8cbc5391de30368baf..0000000000000000000000000000000000000000 --- 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 fe165af49c314be619ba7290dbfdfab2359cb92a..0000000000000000000000000000000000000000 --- 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 a8ea0b2696c1b64e63369d850563c01a5f954974..0000000000000000000000000000000000000000 --- 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 3a4b1812ad6de6fadc7129edfa41bbe10e3641e9..0000000000000000000000000000000000000000 --- 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