Notification Drone avec Gotify

Gotify est un serveur de notification en Go. Il permet de lui envoyer via une API du json avec une simple requête curl ou depuis du code . Il propose une interface web pour créer des applications qui génère une token nécessaire à l’envoi des messages mais surtout une application android . Ainsi on pourra recevoir sur son téléphone des alertes et notifications envoyées par ses scripts et programmes. Drone L’idée est ici de l’utiliser pour l’ajouter dans un pipeline Drone afin d’être notifié du statut d’un déploiement.

4 minutes to read

Build Push Deploy

Sous ce titre, l’idée est de présenter un workflow de construction d’une image docker, sa publication et son déploiement depuis un simple git push grâce à Drone . Pour cela je vais utiliser un vieux projet en php toujours en vie : phpsysinfo Contexte Lorsqu’on souhaite utiliser Docker plusieurs étapes sont nécessaires avant d’arriver à la publication finale. Ecrire un Dockerfile Construire une image La publier sur un registre (le plus souvent le hub docker ) Ecrire un docker-compose pour l’instancier sur son serveur.

5 minutes to read

Drone 1

Cet article présente succintement la nouvelle version de Drone 1 et les changements de configuration. Pour rappel Drone est un outil d’intégration et de déploiement continu. Tout d’abord l’interface web a bien évoluée, elle est très clair et agréable. Un pipeline peut maintenant être relancé depuis l’interface et le lien view source permet de pointer vers le commit qui l’a déclenché. la syntaxe du fichier pipeline .drone.yml a changé, elle se présente maintenant sous cette forme :

2 minutes to read

Docker Multi Stage Builds

Le multi-stage builds est une fonctionnalité très intéressante présente dans Docker depuis la release 17.05. Elle permet de décrire dans un dockerfile 2 images l’une à la suite de l’autre. La première image ne sert qu’à constuire les données nécessaires à l’utilisation de la deuxième. Par exemple pour un programme en golang on aura besoin que la première image possède le compilateur go, git, et diverses bibliothèques qui permettront de générer le binaire executable.

2 minutes to read

déploiement continu avec drone sur ARM64

Cet article est une mise à jour du déploiement continu avec drone . Cette fois-ci l’idée est d’utiliser des serveurs en ARM64 disponible chez sacleway . J’utilise toujours une infra docker swarm comme présenté dans cet article auto-hébergement hybride mais à cause de certaines spécifités de l’ARM64 je vais repartir de zéro. Scaleway J’utilise des serveurs baremetal ARM64-2GB car pour le même prix qu’un VPS on a ici un quad core physique ce qui est bien plus efficace qu’une VM à mon sens.

12 minutes to read

un plugin drone pour telegram

Voici la suite de notre déploiement continu avec drone . Maintenant que tout fonctionne, on souhaite pouvoir lancer un git push et aller boire son café pépère pendant que drone build et déploie en production. Cependant il serait bien d’être alerté de la réussite ou pas de l’opération. Drone propose divers plugins pour cela, dont un pour Telegram . Les plugins Slack ou Hipchat sont sans doute plus connus pour informer une team via une notification, mais personnellement j’ai une préférence pour Telegram qui propose un excellent client desktop en plus des smartphones.

2 minutes to read

déploiement continu avec drone

Suite de l’article sur l’auto hébergement hybride , voici une présentation de l’outil de déploiement continu drone.io idéal pour déployer dans une infrastructure docker. Je vais prendre comme exemple de déploiement mon blog qui utilise hugo un serveur de blog statique (pas de sgbd) en Golang. Outre les avantages de go (un binaire statique, rapide, léger), il permet d’écrire ses pages au format makdown. La première partie avec un déploiement manuel puis celle automatisée avec drone.

9 minutes to read