darkwizard242.nodejs

Ansible Rolle: nodejs

Rolle zur Installation (standardmäßig) des nodejs Pakets oder zur Deinstallation (wenn als Variable übergeben) auf Debian und EL basierten Systemen. nodejs ist eine JavaScript-Laufzeitumgebung. npm & npx werden ebenfalls als Teil dieser Rolle installiert. Die Standardversion ist auf die Installation der Version 18.x von NodeJS eingestellt, es sei denn, es wird ausdrücklich angegeben, dass eine andere spezifische Version installiert werden soll.

Anforderungen

Keine.

Rollenvariablen

Verfügbare Variablen sind unten aufgeführt (in defaults/main.yml gespeichert):

Variablenliste:

nodejs_app: nodejs
nodejs_app_desired_state: present
nodejs_version: 18.x

# Debian-Familie basierend
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

# EL-Familie basierend
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: Node.js EL Family Repo
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

Variablenübersicht:

Variable Beschreibung
nodejs_app Name des nodejs Anwendungs-Pakets, das installiert werden soll, d.h. nodejs
nodejs_app_desired_state Zustand des nodejs_app Pakets. Ob installiert, überprüft, ob verfügbar oder deinstalliert werden soll (z.B. Werte des Ansible Apt-Moduls: present, latest oder absent)
nodejs_version Version von NodeJS, die installiert werden soll.
nodejs_debian_pre_reqs NodeJS empfiehlt die Installation dieser beiden Pakete auf Debian-Familien-Systemen und sie gelten als Voraussetzungen.
nodejs_debian_pre_reqs_desired_state Gewünschter Zustand für NodeJS-Voraussetzungsanwendungen auf Debian-Familien-Systemen.
nodejs_repo_debian_gpg_key NodeJS GPG-Schlüssel, der auf Debian-Familien-Systemen benötigt wird.
nodejs_repo_debian NodeJS Repo-URL für Debian-Familien-Systeme. Verwendet Fakten wie ansible_lsb['codename'].
nodejs_repo_debain_filename Name der Repository-Datei, die unter /etc/apt/sources.list.d/ auf Debian-basierten Systemen gespeichert wird.
nodejs_repo_debian_desired_state present zeigt an, dass die Repository-Datei erstellt wird, wenn sie nicht existiert. Alternativ ist absent (nicht empfohlen, da dies die Installation des nodejs Pakets verhindert).
nodejs_repo_el Repository baseurl für NodeJS auf EL-basierten Systemen. Verwendet die ansible_distribution_major_version, um die entsprechende Version des EL-Systems festzulegen.
nodejs_repo_el_name Repository-Name für NodeJS auf EL-basierten Systemen.
nodejs_repo_el_description Beschreibung, die in die EL-basierte Repository-Datei für NodeJS aufgenommen werden soll.
nodejs_repo_el_gpgkey NodeJS GPG-Schlüssel, der auf EL-Familien-Systemen benötigt wird.
nodejs_repo_el_gpgcheck Boolean für die Durchführung einer GPG-Prüfung gegen NodeJS auf EL-basierten Systemen.
nodejs_repo_el_enabled Boolean, um das NodeJS-Repository auf EL-basierten Systemen zu aktivieren.
nodejs_repo_el_filename Name der Repository-Datei, die unter /yum/sources.list.d/nodejs.repo auf EL-basierten Systemen gespeichert wird.
nodejs_repo_el_desired_state present zeigt an, dass die Repository-Datei erstellt wird, wenn sie nicht existiert. Alternativ ist absent (nicht empfohlen, da dies die Installation des nodejs Pakets verhindert).

Abhängigkeiten

Keine

Beispiel-Playbook

Für das Standardverhalten der Rolle (d.h. Installation des nodejs Pakets) in Ansible-Playbooks.

- hosts: servers
  roles:
    - darkwizard242.nodejs

Für die Anpassung des Verhaltens der Rolle (z.B. Installation der Version 12.x von nodejs als Beispiel) in Ansible-Playbooks.

- hosts: servers
  roles:
    - darkwizard242.nodejs
  vars:
    nodejs_version: 14.x

Für die Anpassung des Verhaltens der Rolle (z.B. Deinstallation des nodejs Pakets) in Ansible-Playbooks.

- hosts: servers
  roles:
    - darkwizard242.nodejs
  vars:
    nodejs_apps_desired_state: absent

Lizenz

MIT

Autor Informationen

Diese Rolle wurde von Ali Muhammad erstellt.

Über das Projekt

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

Installieren
ansible-galaxy install darkwizard242.nodejs
GitHub Repository
Lizenz
mit
Downloads
4k
Besitzer
Senior DevOps/CloudOps Engineer. Dedicated to Automating everything I come across. Love to work on and learn new technologies/tools everyday!