-
Notifications
You must be signed in to change notification settings - Fork 8
Workflow
- Partir d'un environnement sans surcharge de configuration Drupal
- Création d'une branche locale qui suit la branche 8.x-1.x :
git checkout -b NOM_BRANCHE --track origin/8.x-1.x
- Développement, si besoin export de configuration :
drush config:export
/!\ Pensez à faire un squash commit avant de pousser votre PR/!\
- Commit :
git commit
- Récupération des derniers commits si nécessaire :
git pull --rebase
- Résolution des conflits :
git add FICHIER_EN_CONFLIT
git rebase --continue
- Lancement script d'update :
./scripts/update.sh
- le script va :
- mettre à jour les sources avec un
composer install
- lancer les update de base de données
- importer la configuration
- mettre à jour les sources avec un
- le script va :
- Vérification que ce qui a été fait fonctionne toujours
- Si KO, correction
- Si OK, push :
git push origin NOM_BRANCHE
- Création d'une pull request pour revue de code et test par quelqu'un d'autre
- Si KO, corriger
- Si OK, merger en utilisant l'option rebase. Si merge avec rebase impossible car conflit, au choix :
- Rebase local avec merge via l'interface de Github :
git checkout NOM_BRANCHE
git pull --rebase
git push -f origin NOM_BRANCHE
- merge avec rebase via l'interface de Github
- Merge en local :
git checkout NOM_BRANCHE
git pull --rebase
git push -f origin NOM_BRANCHE
git checkout 8.x-1.x
git pull --rebase
git merge NOM_BRANCHE
- Désactiver la protection de push sur la 8.x-1.x
git push origin 8.x-1.x
- Remettre la protection de push sur la 8.x-1.x
- Rebase local avec merge via l'interface de Github :
- Supprimer la branche NOM_BRANCHE une fois mergée.
- Fermer issue et/ou pull request.
Deux fichiers yaml sont présent pour la CI, l'un s’exécutant à la création de la PR (pr.yml) et l'autre au merge de la pr (deploy.yml).
Une fois la PR créée, la CI Github, va exécuter sur une Ubuntu, la vérification des Coding Standard Drupal, sur les modules Custom du projet.
Une fois la PR Validé par un administrateur du projet, la CI Github, va exécuter sur une Ubuntu, une deploy sur le site develop. Pour cela il va merger de la branche 8.x-1.x vers la branche develop du repository "Upstream"
Nous sommes passés de Features à Config split, Config ignore, Config installer.
Attention : lors de l'utilisation de drush config:export
pour exporter les changement, les paramètres de Config ignore sont ignorés. Merci de faire attention et dé vérifier vos modifications de code avant de commiter.