Terraform va donc nous servir à déployer les conteneurs LXC dans Proxmox VE. Toutefois, je ne souhaite pas utiliser les paquets Ubuntu de Terraform car je veux pouvoir être libre d’utiliser la version de Terraform que je souhaite. Pour cela je vais utiliser l’outil nommé asdf https://asdf-vm.com/
asdf est un gestionnaire de versions universel qui permet de gérer plusieurs versions de différents outils de développement. Voici une présentation détaillée :
- Principaux avantages :
- Gestion de multiples langages/outils dans un seul outil
- Configuration par projet possible
- Compatible avec de nombreux plugins
- Installation de base :
deployer@ubuntu-deploy:~$ sudo apt install git unzip
Reading package lists... Done
Building dependency tree... Done
Reading state information... Done
(...)
deployer@ubuntu-deploy:~$ git clone https://github.com/asdf-vm/asdf.git ~/.asdf --branch v0.14.1
Cloning into '/home/deployer/.asdf'...
remote: Enumerating objects: 8797, done.
remote: Counting objects: 100% (1904/1904), done.
remote: Compressing objects: 100% (343/343), done.
remote: Total 8797 (delta 1659), reused 1642 (delta 1557), pack-reused 6893 (from 1)
Receiving objects: 100% (8797/8797), 3.23 MiB | 23.63 MiB/s, done.
Resolving deltas: 100% (5281/5281), done.
deployer@ubuntu-deploy:~$ echo '. $HOME/.asdf/asdf.sh' >> ~/.bashrc
deployer@ubuntu-deploy:~$ echo '. $HOME/.asdf/completions/asdf.bash' >> ~/.bashrc
deployer@ubuntu-deploy:~$ source ~/.bashrc
deployer@ubuntu-deploy:~$ asdf --version
v0.14.1-c5116dc
- Les commandes essentielles d’asdf sont les suivantes :
# Lister les plugins disponibles
asdf plugin list all
# Installer le plugin terraform
asdf plugin add terraform
# Installer une version spécifique
asdf install terraform 1.9.7
# ou pour installer via asdf la dernière version de Terraform
asdf install terraform latest
# Définir une version globale
asdf global terraform latest
# Définir une version locale (par projet)
asdf local terraform 1.x.y
# Lister les versions installées
asdf list terraform
- Installation de Terraform via asdf. Tapez les commandes suivantes :
deployer@ubuntu-deploy:~$ asdf plugin add terraform
deployer@ubuntu-deploy:~$ asdf install terraform 1.9.8 # ou latest
Downloading terraform version 1.x.y from
(...)
unzip: command not found
deployer@ubuntu-deploy:~$ sudo apt install unzip
(...)
deployer@ubuntu-deploy:~$ asdf install terraform 1.9.8
Downloading terraform version 1.9.7 from https://releases.hashicorp.com/terraform/1.9.7/terraform_1.9.7_linux_amd64.zip
Skipping verifying signatures and checksums either because gpg is not installed or explicitly skipped with ASDF_HASHICORP_SKIP_VERIFY
Cleaning terraform previous binaries
Creating terraform bin directory
Extracting terraform archive
deployer@ubuntu-deploy:~$ asdf global terraform 1.9.8
deployer@ubuntu-deploy:~$ terraform --version
Terraform v1.9.8
on linux_amd64
La dernière version actuelle de Terraform est désormais installée !