La lecture de ce billet du blog d'eleven labs m'a donné l'idée de le décliner sur le développement à base de code d'infrastructure (Ansible, Terraform, Puppet, Pulumi, Crossplane ...). Pourquoi ? Parce que je vois trop souvent mis de côté au nom de l'agilité, de la rapidité et de la simplicité de mise en œuvre tout un ensemble de bonnes pratiques. Dans un premier temps, je vais définir ce qu'est une dette technique, puis énumérer les différents types de dettes, et pour en finir certaines causes.
76 articles tagués avec « infra as code »
Voir tous les tagsAqua un outil DevOps pour les installer tous
A l'image d'asdf, aqua est un nouvel outil
permettant d'installer de très nombreux outils. Pa exemple, vous travaillez pour
un client qui utilise Kubernetes
1.27 et Terraform
1.5.0. Ensuite, on vous
met sur un nouveau projet client qui lui utilise Kubernetes
1.25 et
Terraform
1.3.6. Si vous ne gérez pas vos versions correctement cela peut vite
tourner au drame avec des incompatibilités ou du code non pris en charge au
moment de la livraison de celui-ci.
Test d'Ansible LightSpeed
Annoncé il y a quelques mois lors de l'AnsibleFest 2023 et il y a quelques jours lors du Red Hat Summit, Ansible LightSpeed est disponible via une Technical Preview.
Pour rappel, ce projet se nommait auparavant le projet «Wisdom», visant à doter la plate-forme Ansible d’une capacité de traitement intelligent du langage naturel, en faisant appel à IBM Watson Code Assistant.
Génerer des operateurs Kubernetes avec Ansible
Pour déployer une application au sein d'un cluster Kubernetes, on peut le faire de manière classique avec des fichiers de configuration YAML ou un gestionnaire de packages comme Helm. Il existe un troisième moyen qui est de créer un opérateur Kubernetes. Voyons dans un premier temps ce qu'est un opérateur Kubernetes.
Générer des playbooks Ansible avec ChatGPT
Et voilà après deux semaines de tests, j'ai fini par livrer mon package python permettant de générer des taches ansible assisté par ChatGPT. Je l'ai appelé ansible-aisnippet.
ChatGPT peut il m'assister ? - Partie 2
Dans le précédent billet, nous avons pu voir que chatGPT n'est pas si magique que cela. En effet, il ne suit pas forcément les bonnes pratiques et surtout ne propose pas toujours les solutions adaptées. La plus grosse difficulté est de trouver quelles informations lui fournir pour qu'il produise du contenu proche d'une solution acceptable.
ChatGPT peut il m'assister partie 1 ?
Par nature le DSL Ansible n'est pas un langage de programmation, mais permet plutôt de décrire le résultat souhaité. Le code se trouve en fait dans les modules qui eux sont écrits en Python. Alors est-il possible de demander de l'aide à une Intelligence Artificielle comme celle de ChatGPT ?
Utiliser correctement les modules Ansible shell et command
Même si les modules
Ansiblecommand
et shell
sont fortement déconseillés, il est des cas où il est
impossible de s'en passer, Voyons donc comment les utiliser correctement .
Ansible et les assertions
Au début du lancement de l'exécution d'un playbook Ansible, il peut parfois
être nécessaire de réaliser des contrôles de conformité avant d'exécuter
d'autres actions. Un des premiers contrôles est de vérifier la conformité des
variables transmis. C'est là qu'interviennent les modules assert
et
validate_argument_spec
.
Mon extension vscode de snippets Ansible
Suite à l'annonce du projet Wisdom de Redhat, je me suis fait la réflexion que pour le moment une simple extension vscode de snippets avec des phrases en langage naturel apporterait presque le même résultat.