J’utilise énormément la partie « CI » de Gitlab pour déployer automatiquement les sites et applications web que je gère.
Lors d’une formation sur le sujet, nous avons avec mon stagiaire mis en place une condition à l’exécution d’une tâche (job). Le but était de ne lancer la tache gulp en charge de générer les fichiers CSS et javascript uniquement si un des fichiers sources (sass ou js) était modifié, et non plus à chaque déploiement.
Voici la définition de la tâche en question dans le fichier .gitlab-ci.yaml
prod_generate_assets:
image: node:10.15.2
script:
- npm install -g gulp
- npm install --silent
- gulp build
rules:
- if: $CI_COMMIT_BRANCH == "master" && $CI_PIPELINE_SOURCE != "schedule"
changes:
- web/themes/mon_theme/src/assets/css/**/*.scss
- web/themes/mon_theme/src/assets/js/**/*.js
stage : postdeploy
Ainsi avec la directive changes, cette tâche ne sera lancée que si un fichier *.scss ou *.js est modifié dans un des thèmes du dossier custom.
Un petit bonjour à Adrien, si tu tombes sur ces lignes !
Ajouter un commentaire