Aqua 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.
Installation
L’installation d’aqua se fait en deux temps. En premier, il faut télécharger l’installateur et l’exécuter :
Ensuite, il faut modifier le PATH en ajoutant ces deux lignes dans votre
fichier .zshrc
ou .bashrc
:
On vérifie qu’il est bien installé :
Recherche des outils disponibles
Avant d’installer les outils, quels sont ceux disponibles ? Cela se fait avec la
commande list
:
Actuellement 1227 outils sont disponibles ! Pour rechercher un outil, il faudra
ajouter la commande grep
derrière :
Installation des outils
Il existe deux façons d’installer les outils locaux et globale.
Installation locale
Création du fichier de configuration
Pour installer les outils localement, c’est-à-dire dans un dossier précis, il
faut créer un fichier de configuration aqua.yml
avec la commande init
:
Ajout des outils
Pour ajouter un outil, on utilise la commande generate
suivi de l’option de
-i
:
Sélectionner un ou plusieurs outils. Normalement dans le fichier de configuration, vous devriez voir apparaître dans la section packages les outils que vous avez sélectionnés.
Pour changer de version d’un outil, il faut modifier ce fichier de
configuration. Sinon ajouter l’option -s
à la commande précédente :
Pour le moment les outils ne sont pas installés. Pour lancer l’installation, il
faut utiliser la commande install
:
Installation globale
Il est possible d’installer des outils de manière générale, c’est-à-dire accessible quel que soit le dossier où on se trouve.
Le principe est le même sauf que le fichier de configuration doit être créé
dans le répertoire ~/.config/aquaproj-aqua
:
On va initialiser le fichier de config :
On installe les outils comme lors de l’installation locale, sans quitter le dossier.
Plus loin
aqua
est assez complet. Il regorge de fonctionnalités comme :
- la gestion des
policies
. Cespolicies
permettent de restreindre l’installation et l’exécution de packages. L’objectif principal de ces politiques est d’améliorer la sécurité en empêchant l’exécution d’outils malveillants. - l’intégration de renovate
- la création d’image docker contenant des outils.
Par contre, tout cela fera l’objet de prochains billets.