darkwizard242.nodejs
Rôle Ansible : nodejs
Rôle pour installer (par défaut) le paquet nodejs ou désinstaller (si passé en variable) sur des systèmes basés sur Debian et sur des systèmes basés sur EL. nodejs est un environnement d'exécution pour JavaScript. npm et npx sont également installés dans le cadre de ce rôle. La version par défaut installée est 18.x
de NodeJS sauf si une autre version spécifique est explicitement demandée, car la source du dépôt est basée sur celle-ci.
Exigences
Aucune.
Variables du Rôle
Les variables disponibles sont listées ci-dessous (situées dans defaults/main.yml
):
Liste des Variables :
nodejs_app: nodejs
nodejs_app_desired_state: present
nodejs_version: 18.x
# Basé sur la famille Debian
nodejs_debian_pre_reqs:
- apt-transport-https
- gnupg
nodejs_debian_pre_reqs_desired_state: present
nodejs_repo_debian_gpg_key: https://deb.nodesource.com/gpgkey/nodesource.gpg.key
nodejs_repo_debian: "deb https://deb.nodesource.com/node_{{ nodejs_version }} {{ ansible_lsb['codename'] }} main"
nodejs_repo_debian_filename: "{{ nodejs_app }}"
nodejs_repo_debian_desired_state: present
# Basé sur la famille EL
nodejs_repo_el: "https://rpm.nodesource.com/pub_{{ nodejs_version }}/el/{{ ansible_distribution_major_version }}/$basearch"
nodejs_repo_el_name: nodesource
nodejs_repo_el_description: Dépôt Node.js pour la famille EL
nodejs_repo_el_gpgkey: https://rpm.nodesource.com/pub/el/NODESOURCE-GPG-SIGNING-KEY-EL
nodejs_repo_el_gpgcheck: yes
nodejs_repo_el_enabled: yes
nodejs_repo_el_filename: "{{ nodejs_app }}"
nodejs_repo_el_desired_state: present
Tableau des Variables :
Variable | Description |
---|---|
nodejs_app | Nom du paquet d'application nodejs à installer, c'est-à-dire nodejs . |
nodejs_app_desired_state | État du paquet nodejs_app. Que ce soit pour installer, vérifier si disponible ou désinstaller (c'est-à-dire valeurs du module ansible apt : present , latest , ou absent ). |
nodejs_version | Version de NodeJS à installer. |
nodejs_debian_pre_reqs | NodeJS recommande l'installation de ces deux paquets sur les systèmes de la famille Debian, et ils sont donc considérés comme des prérequis. |
nodejs_debian_pre_reqs_desired_state | État souhaité pour les applications prérequises de NodeJS sur les systèmes de la famille Debian. |
nodejs_repo_debian_gpg_key | Clé GPG de NodeJS nécessaire sur les systèmes de la famille Debian. |
nodejs_repo_debian | URL du dépôt NodeJS pour les systèmes de la famille Debian. Utilise des faits tels que ansible_lsb['codename'] . |
nodejs_repo_debian_filename | Nom du fichier de dépôt qui sera stocké dans /etc/apt/sources.list.d/ sur les systèmes basés sur Debian. |
nodejs_repo_debian_desired_state | present indique la création du fichier de dépôt s'il n'existe pas sur les systèmes basés sur Debian. L'alternative est absent (non recommandé car cela empêchera l'installation du paquet nodejs). |
nodejs_repo_el | URL de base du dépôt pour NodeJS sur les systèmes basés sur EL. Utilise le fait ansible_distribution_major_version pour définir la version appropriée du système EL. |
nodejs_repo_el_name | Nom du dépôt pour NodeJS sur les systèmes basés sur EL. |
nodejs_repo_el_description | Description à ajouter dans le fichier de dépôt EL pour NodeJS. |
nodejs_repo_el_gpgkey | Clé GPG de NodeJS nécessaire sur les systèmes de la famille EL. |
nodejs_repo_el_gpgcheck | Booléen indiquant s'il faut effectuer une vérification GPG contre NodeJS sur les systèmes de la famille EL. |
nodejs_repo_el_enabled | Booléen pour indiquer que le dépôt NodeJS est activé sur les systèmes basés sur EL. |
nodejs_repo_el_filename | Nom du fichier de dépôt qui sera stocké dans /yum/sources.list.d/nodejs.repo sur les systèmes basés sur EL. |
nodejs_repo_el_desired_state | present indique la création du fichier de dépôt s'il n'existe pas sur les systèmes basés sur EL. L'alternative est absent (non recommandé car cela empêchera l'installation du paquet nodejs). |
Dépendances
Aucune.
Exemple de Playbook
Pour le comportement par défaut du rôle (c'est-à-dire l'installation du paquet nodejs) dans les playbooks ansible.
- hosts: servers
roles:
- darkwizard242.nodejs
Pour personnaliser le comportement du rôle (c'est-à-dire installer la version 12.x de nodejs en exemple) dans les playbooks ansible.
- hosts: servers
roles:
- darkwizard242.nodejs
vars:
nodejs_version: 14.x
Pour personnaliser le comportement du rôle (c'est-à-dire désinstaller le paquet nodejs) dans les playbooks ansible.
- hosts: servers
roles:
- darkwizard242.nodejs
vars:
nodejs_apps_desired_state: absent
Licence
Informations sur l'Auteur
Ce rôle a été créé par Ali Muhammad.
Installs/Uninstalls 'nodejs'. A JavaScript runtime environment.
ansible-galaxy install darkwizard242.nodejs