        ![Blue and white line art of woman at desktop with the Drupal logo on the computer monitor in front of her](/sites/default/files/styles/blog_hero_image_mobile/public/media/image/2022-08/Option%2002.png?itok=h9sKqeWt) 

 

 

 Image

        ![Dries Buytaert Headshot](/sites/default/files/styles/post_content_attribution_headshot/public/media/image/2024-09/Employee%20Headshot_Dries%20Buytaert_Gray_WEB.png?h=ba226ffe&itok=eze7g_Ik) 

 

 

 

 [Dries Buytaert](/index%2Ephp/people/contributors/dries-buytaert) Co-Founder, Executive Chairman Acquia

 

 

 

 

 



# Le flux de travail de déploiement Drupal de Dries Buytaert

 septembre 9, 2022 1 lecture d'une minute

 [Share this blog post on LinkedIn

 ](https://www.linkedin.com/sharing/share-offsite/?url=https://www.acquia.com/index%2ephp/fr/markdownify/node/38616) [Share this blog post on Twitter

 ](<https://twitter.com/intent/tweet?text=Le flux de travail de déploiement Drupal de Dries Buytaert&url=https://www.acquia.com/index%2ephp/fr/markdownify/node/38616&via=acquia>) [Share this blog post via Email

 ](<mailto:?subject=Le flux de travail de déploiement Drupal de Dries Buytaert&body=https://www.acquia.com/index%2ephp/fr/markdownify/node/38616>) 

 

 Dries Buytaert, co-fondateur de Drupal et de la société technologique Acquia, explique son workflow de déploiement pour le logiciel open source. 

        ![Blue and white line art of woman at desktop with the Drupal logo on the computer monitor in front of her](/sites/default/files/styles/blog_hero_image_mobile/public/media/image/2022-08/Option%2002.png?itok=h9sKqeWt) 

 

 

Je voulais décrire le workflow de développement et de déploiement que j'utilise sur[ dri.es](https://dri.es/) , mon site personnel.

Mon site utilise[ Drupal](https://www.drupal.org/) (évidemment) et fonctionne sur[ Nuage Acquia](https://www.acquia.com/products/drupal-cloud/cloud-platform) (bien sûr), mais il s'agit en grande partie d'une pratique exemplaire pour toute application Web.

Je gère le code et la configuration de mon site Web dans[ Gite](https://en.wikipedia.org/wiki/Git) . Chaque fois que je valide une modification dans mon référentiel Git, je passe par les étapes suivantes :

1. Je crée un environnement intermédiaire pour tester mon code avant de le déployer en production. C'est un environnement de staging complet : non seulement PHP, MySQL et Nginx, mais aussi Varnish, Memcache, etc.
2. Je consulte mon dépôt Git. Mon référentiel Git héberge uniquement mes fichiers personnalisés. C'est une bonne pratique de ne pas valider le noyau Drupal ou les modules Drupal tiers dans votre référentiel Git.
3. je cours[ Renifleur de code PHP](https://github.com/squizlabs/PHP_CodeSniffer) pour m'assurer que mon code est conforme à mes règles de style de codage. Je spécifie mes règles de style de codage dans` phpcs.xml` et utilise` phpcs` pour m'assurer que mon code y adhère. Sinon,` phpcbf` essaie de réparer mon code automatiquement. J'aime mon code bien rangé.
4. je cours[ PHP Stan](https://phpstan.org/) , un outil d'analyse de code statique pour PHP, qui analyse ma base de code à la recherche de bogues. Il trouvera du code mort, des problèmes de conversion de type, des arguments de fonction incorrects, des indications de type manquantes, des appels de fonction inconnus, et bien plus encore. PHPStan est un outil fantastique.
5. je cours[ Unité PHP](https://phpunit.de/) , un framework de test PHP, pour s'assurer que mes tests unitaires réussissent.
6. je cours[ audit de sécurité phpcs](https://github.com/FloeDesignTechnologies/phpcs-security-audit) , un outil d'analyse de code statique pour PHP. Il scanne mon code PHP pour les vulnérabilités de sécurité et les faiblesses de sécurité.
7. je cours[ ESLint](https://eslint.org/) , un outil d'analyse de code statique pour JavaScript. Il analyse mon code JavaScript à la recherche de vulnérabilités et de faiblesses en matière de sécurité.
8. je cours[ nodejs-scan](https://github.com/ajinabraham/njsscan) pour trouver des modèles de code non sécurisés dans mes applications Node.js. Je n'utilise pas Node.js pour le moment.
9. je cours aussi[ SemgrepName](https://semgrep.dev/) , un outil d'analyse de code statique pour une variété de langages de programmation.
10. je cours[ Recteur](https://www.drupal.org/project/rector) pour m'assurer que je n'utilise pas[ code Drupal obsolète](https://www.drupal.org/list-changes/drupal) . Lorsque je le ferai, Rector essaiera de mettre à jour par programme tout code obsolète qu'il trouve.
11. Comme mon référentiel Git ne contient que des fichiers personnalisés, j'utilise[ Compositeur](https://getcomposer.org/) pour télécharger et installer la dernière version de Drupal et de tous les modules et composants tiers.
12. je cours` drush pm:sécurité` .[Drush](https://www.drush.org/) est un outil spécifique à Drupal, et le` pm:sécurité` l'option vérifie que j'ai[ aucune dépendance non sécurisée installée](https://github.com/drupal-composer/drupal-security-advisories) .

Tout cela peut sembler beaucoup de travail à mettre en place, et cela peut l'être. Pour les clients et partenaires Acquia,[ Acquia CodeStudio](https://youtu.be/f8llAAcj4U8) automatise toutes les étapes ci-dessus. Acquia Code Studio est un CI/CD entièrement géré basé sur[ Gitlab](https://gitlab.com/) , avec des étapes spécifiques optimisées pour Drupal. En plus de 20 ans de travail sur Drupal, c'est mon meilleur[ opérations Web](https://en.wikipedia.org/wiki/Web_operations) flux de travail encore. Cela ne pourrait pas être plus facile.

Image

 ![Screenshot of Acquia Code Studio that shows its automated tests feature](/sites/default/files/styles/wysiwyg_full_no_crop_/public/media/image/2022-08/Screen%20Shot%202022-08-11%20at%202.51.23%20PM.png?itok=0-VuJNBo)

 



A screenshot of Acquia Code Studio that shows its automated tests featureAcquia Code Studio s'occupe également d'automatiser les mises à jour des dépendances. Code Studio vérifie régulièrement si Drupal ou l'une de ses dépendances a une nouvelle version disponible. S'il y a une nouvelle version, elle exécutera toutes les étapes ci-dessus. Lorsque *tout* des outils ci-dessus, Acquia Code Studio peut déployer un nouveau code en production en un seul clic.

Image

 ![Screenshot of Acquia Code Studio that shows its automated update feature](/sites/default/files/styles/wysiwyg_full_no_crop_/public/media/image/2022-08/Screen%20Shot%202022-08-11%20at%202.55.07%20PM.png?itok=M_OguqgZ)

 



A screenshot of Acquia Code Studio that shows its automated update featureJe l'aime!

—

*Cet article a été initialement publié[ ici](https://dri.es/my-drupal-deployment-workflow) . Pour en savoir plus sur Drupal et Acquia,[ visitez cette page](https://www.acquia.com/drupal) .*



 

 Image

        ![Dries Buytaert Headshot](/sites/default/files/styles/post_content_attribution_headshot/public/media/image/2024-09/Employee%20Headshot_Dries%20Buytaert_Gray_WEB.png?h=ba226ffe&itok=eze7g_Ik) 

 

 

 

 [Dries Buytaert](/index%2Ephp/people/contributors/dries-buytaert) Co-Founder, Executive Chairman Acquia

 

Dries Buytaert is the original creator and project lead for Drupal and co-founder of Acquia. A noted expert in open source, he holds a PhD in computer science and engineering and has been honored as a Young Global Leader by the World Economic Forum.

 

 

 

 

 [Share this blog post on LinkedIn

 ](https://www.linkedin.com/sharing/share-offsite/?url=https://www.acquia.com/index%2ephp/fr/markdownify/node/38616) [Share this blog post on Twitter

 ](<https://twitter.com/intent/tweet?text=Le flux de travail de déploiement Drupal de Dries Buytaert&url=https://www.acquia.com/index%2ephp/fr/markdownify/node/38616&via=acquia>) [Share this blog post via Email

 ](<mailto:?subject=Le flux de travail de déploiement Drupal de Dries Buytaert&body=https://www.acquia.com/index%2ephp/fr/markdownify/node/38616>)