30 août 2018

- BY

Kablamo

STABILITÉ TECHNIQUE INTÉGRÉE AU SYSTÈME DE PLUGINATION DE KOMBUSTION

STABILITÉ TECHNIQUE INTÉGRÉE AU SYSTÈME DE PLUGINATION DE KOMBUSTION

Kombustion est un outil CloudFormation qui utilise des plugins pour prétraiter les modèles. Il permet aux équipes DevOps de réutiliser les bonnes pratiques CloudFormation et de standardiser les modèles de déploiement.

Kombustion est un outil CloudFormation qui utilise des plugins pour prétraiter les modèles. Il permet aux équipes DevOps de réutiliser les bonnes pratiques CloudFormation et de standardiser les schémas de déploiement.

L'objectif de Kombustion (https://kombustion.io/) est d'améliorer CloudFormation en lui apportant une solution fiable. À partir des modèles CloudFormation natifs, Kombustion utilise des plugins pour effectuer des transformations de prétraitement fiables hors ligne.

Lorsque vous utilisez un plugin dans votre modèle, Kombustion s'appuie sur la formule suivante pour garantir la stabilité du modèle généré :

(SourceTemplate, Plugins) => Generated Template

Avec un même SourceTemplate et les mêmes Plugins, vous obtiendrez toujours le même Generated Template.

Pour bénéficier de cette stabilité, vous devez versionner les fichiers kombustion.yaml, kombustion.lock et .kombustion. Ces fichiers et dossiers sont créés lors de l'initialisation de Kombustion et de l'installation d'un plugin.

Il est recommandé que les plugins soient des fonctions pures, sans effets de bord. Autrement dit, avec les mêmes entrées, ils produiront toujours la même sortie.

Kombustion s'efforce d'éviter toute dépendance excessive en offrant la possibilité de « s'en extraire » grâce à la commande kombustion generate. Cette commande enregistre le modèle après son traitement par les plugins. Avec le modèle généré, vous pouvez utiliser l'interface de ligne de commande AWS (AWS CLI) pour effectuer une mise à jour (upsert).

Cependant, cela n'est pas nécessaire, car Kombustion intègre une fonction d'upsert, avec des codes de sortie soigneusement sélectionnés (voir https://kombustion.io/api/cli/#exit-codes) pour faciliter l'intégration continue.

En général, lors d'un appel à upsert, si les modifications demandées (par exemple : Créer une pile ou Mettre à jour une pile) ne sont pas correctement appliquées, une erreur est renvoyée.

Lors de l'appel à Supprimer la pile, si la pile n'est pas entièrement supprimée, une erreur est renvoyée.

De plus, Kombustion affiche les journaux d'événements de la pile directement dans votre journal d'intégration continue, vous fournissant ainsi toutes les informations nécessaires au débogage d'une opération d'insertion ou de suppression ayant échoué.

Sans aucun plugin, Kombustion peut insérer ou mettre à jour un modèle CloudFormation. Vous pouvez donc l'utiliser dès maintenant avec vos modèles existants et ajouter des plugins ultérieurement.

Téléchargez Kombustion sur kombustion.io.

Suivez notre guide pour créer votre premier plugin.

KombustionAWSCloud Formation