Utiliser Deployer pour la mise en production d'applications Symfony >= 3

Deployer est un outil pour le déploiement d'applications PHP. Sa documentation est claire et complète.

Par contre, quand on lance dep init, il manque certains choix parmi ceux proposés. Notamment, le choix "Symfony" est en fait paramétré pour le déploiement d'applications Symfony2 ! En parcourant le code sur le dépôt Github de Deployer, j'ai vu qu'il y avait d'autres recettes, notamment pour Symfony4.

Il suffit donc, lors du dep init, de choisir l'option par défaut (Common ou quelque chose du genre). Ensuite, dans le fichier deploy.php, il suffit de remplacer la ligne du require par require 'recipe/symfony4.php';

Je recommande aussi de commenter les lignes set('shared... si vous respectez la structure par défaut des applications Symfony4 ou 5.

J'ai du aussi ajouter une ligne set('env', [ 'APP_ENV' => 'prod', ]); car la recette pour Symfony4 part du principe que le paramètre est plutôt SYMFONY_ENV;

Enfin, pour le déploiement du front, j'ai aussi ajouté une tâche spécifique :

task('front', '
yarn install;
yarn encore production');

Enfin, j'ai inséré cette tâche juste avant le 'deploy:unlock'

Et voilà !