Vérifications de pré-déploiement Git pour éviter de deployer avec des modifications locales

Publié le 05/01/2021 • Mis à jour le 05/01/2021


English language detected! 🇬🇧

  We noticed that your browser is using English. Do you want to read this post in this language?

Read the english version 🇬🇧 Close

Dans ce bout de code nous allons voir comment mettre en place des vérifications de pré-déploiement Git pour éviter de déployer avec des modifications locales qui n'ont pas été poussées. C'est quelque chose qui m'ait arrivé dans le passé quand je vais trop vite. Je lance mes tests ; tout est OK localement puis je déploie. À part que j'ai oublié de commiter un fichier ou de pousser (oui, j'aurais dû attendre que la build de la CI passe !). J'ai donc ajouté ces deux commandes Git à mon Makefile pour empêcher ceci. La première vérifie s'il y a des fichiers modifiés ou ajoutés, et la deuxième vérifie si tout a bien été poussé sur la branche principale.


## —— Deploy & Prod 🚀 —————————————————————————————————————————————————————————
deploy: ## Full no-downtime deployment with EasyDeploy (with pre-deploy Git hooks)
	test -z "`git status --porcelain`"                 # Prevent deploy if there are modified or added files
	test -z "`git diff --stat --cached origin/master`" # Prevent deploy if there is something to push on master
	$(SYMFONY) deploy -v                               # Deploy with EasyDeploy

 Plus sur Stackoverflow   Lire la doc  Snippet aléatoire