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

MIT

Informations sur l'Auteur

Ce rôle a été créé par Ali Muhammad.

À propos du projet

Installs/Uninstalls 'nodejs'. A JavaScript runtime environment.

Installer
ansible-galaxy install darkwizard242.nodejs
Licence
mit
Téléchargements
4k
Propriétaire
Senior DevOps/CloudOps Engineer. Dedicated to Automating everything I come across. Love to work on and learn new technologies/tools everyday!