Dans cet article, nous verrons ce qui a été mis en place pour le site http://www.bdx.io (une conférence pour les développeurs qui se tiendra sur Bordeaux en octobre ;-)) afin d’automatiser le déploiement d’un site statique, hébergé chez github, optimisé pour le web (pré-processing css, minification et concaténation, optimisation des images etc…) et ce, via un simple commit Git.
Le principe de fonctionnement s’apparente un peu au fonctionnement d’heroku, à ceci près :
- Qu’il est déclenché automatiquement lors de l’apparition de nouveaux commits sur une branche de votre choix
- Qu’un processus d’optimisation des ressources statiques est appliqué en amont du déploiement
A travers cet article nous parlerons :
- De Github pages pour l’hébergement des ressources statiques du site
- De Yeoman qui nous servira à générer une ossature « clef en main » pour un site web optimisé
- D’un petit script sh maison permettant de pusher notre site web optimisé sur une branche de notre repository git
- D’un build Jenkins déclenché chez Cloudbees qui exécute un script Grunt pour optimiser votre site Web
- De hooks Git pour déclencher automatiquement ce job Jenkins, sans avoir à poller votre repository Git