ansible-node-playbook
Pour créer un playbook Ansible qui supprime Node.js s'il existe, puis le réinstalle sur une machine Debian 12 ARM64, vous pouvez suivre les étapes suivantes :
- Vérifier si Node.js est installé : Utilisez le module
stat
pour vérifier si Node.js est installé. - Supprimer Node.js : Si Node.js est installé, utilisez le module
apt
pour le supprimer. - Installer Node.js : Utilisez le module
apt
pour installer Node.js.
Voici un exemple de playbook Ansible pour accomplir cette tâche :
---
- name: Supprimer et réinstaller Node.js sur Debian 12 ARM64
hosts: all
become: yes
tasks:
- name: Vérifier si Node.js est installé
stat:
path: /usr/bin/node
register: node_installed
- name: Supprimer Node.js s'il est installé
apt:
name: "{{ item }}"
state: absent
purge: yes
with_items:
- nodejs
- npm
when: node_installed.stat.exists
- name: Ajouter le dépôt NodeSource pour Node.js 18.x (LTS)
apt_repository:
repo: "deb [signed-by=/usr/share/keyrings/nodesource.gpg] https://deb.nodesource.com/node_18.x nodistro main"
state: present
filename: nodesource
update_cache: yes
when: ansible_architecture == "aarch64"
- name: Importer la clé GPG de NodeSource
apt_key:
url: https://deb.nodesource.com/gpgkey/nodesource.gpg.key
state: present
when: ansible_architecture == "aarch64"
- name: Installer Node.js et npm
apt:
name:
- nodejs
state: present
update_cache: yes
- name: Vérifier la version de Node.js installée
command: node -v
register: node_version
changed_when: false
- name: Afficher la version de Node.js installée
debug:
msg: "Node.js version {{ node_version.stdout }} installée avec succès."
Explication du playbook :
-
Vérifier si Node.js est installé : Le module
stat
vérifie si le binaire Node.js (/usr/bin/node
) existe. Le résultat est enregistré dans la variablenode_installed
. -
Supprimer Node.js : Si Node.js est installé (
node_installed.stat.exists
esttrue
), le moduleapt
est utilisé pour supprimer Node.js et npm. -
Ajouter le dépôt NodeSource : Le dépôt NodeSource est ajouté pour installer Node.js 18.x (LTS). Ce dépôt est spécifique à l'architecture ARM64 (
aarch64
). -
Importer la clé GPG de NodeSource : La clé GPG de NodeSource est importée pour vérifier les paquets.
-
Installer Node.js : Le module
apt
est utilisé pour installer Node.js. -
Vérifier la version de Node.js : La commande
node -v
est exécutée pour vérifier la version installée, et le résultat est affiché avec le moduledebug
.
Exécution du playbook :
Pour exécuter ce playbook, sauvegardez-le dans un fichier, par exemple nodejs.yml
, puis exécutez-le avec la commande suivante :
ansible-playbook -i inventory nodejs.yml
Remplacez inventory
par votre fichier d'inventaire Ansible.
Remarque :
- Ce playbook est conçu pour Debian 12 ARM64. Si vous utilisez une autre distribution ou architecture, vous devrez peut-être ajuster les étapes d'installation.
- Assurez-vous que les hôtes cibles sont correctement configurés dans votre fichier d'inventaire Ansible.