Méthode simple pour mettre à jour un site Jekyll avec rsync

Lettres de presse

Vous le savez peut-être, ce site est un site statique généré par un logiciel appelé Jekyll. Cela permet entre autres de gérer les contenus via des fichiers textes écris dans le langage Markdown.

L’opération de génération du site se fait sur ma machine perso et non sur le serveur. L’inconvénient de cette méthode est qu’à chaque nouvelle mise à jour il faut envoyer une nouvelle version du site en ligne, là où, sur Wordpress par exemple, les mises à jour sont effectives immédiatement, au prix de l’utilisation d’une base de données installée sur le serveur.

Pour me simplifier la vie et m’éviter de passer via un logiciel de FTP par exemple ou même d’envoyer l’intégralité du site quand ce n’est pas forcément nécessaire j’ai trouvé utile de tirer parti de la commande rsync.

La commande rsync sert à copier des fichiers de façon intelligente. La commande que j’utiliste va mettre à jour les fichiers qui ont été modifiés et envoyer les nouveaux fichiers depuis ma ordinateur de travail vers le serveur qui héberge le site, le tout via le protocole SSH

Une fois la mise à jour faite sur le site, pour ajouter un article par exemple, je lance la commande suivante depuis le dossier racine du projet du site :

rsync -v -rz --checksum --delete _site/ root@000.000.000.000:/srv/sites/monsite/www/_site -p -o -g --chown=www-data:www-data

Pour encore plus de facilité j’ai créé un script sous la forme d’un petit fichier envoyer-mise-a-jour.sh placé directement dans la racine de mon projet. Il me suffit de la lancer dès que je souhaite mettre à jour mon site.


source : garron.me
Crédit photo : Etienne Girardet on Unsplash