marverix.nodejs

Ansible Rolle: Node.js

Build-Status Ansible Qualitätsbewertung Ansible Rolle Lizenz: ISC

Ansible Rolle, die auf Linux Node.js, npm installiert und optional eine grundlegende npm-Konfiguration durchführt.

Funktionen

  • ✔️ Installation von Node.js
    • Sie können die zu installierende Version festlegen
    • Überprüfen, ob die neueste Version von npm installiert ist
  • ✔️ npm Konfiguration
    • Globale Registry für einen Benutzer festlegen
    • Präfix für einen Benutzer festlegen
    • Standard-Scope für einen Benutzer festlegen
    • Scopes für einen Benutzer konfigurieren
  • ✔️ Installation globaler npm Pakete, die Sie wünschen
  • ✔️ Sicherstellen, dass das nodejs Alias verfügbar ist
  • ✔️ Getestet mit Molecule Verify

Unterstützte Plattformen

  • ✔️ Ubuntu 16.04 (Xenial)
  • ✔️ Ubuntu 18.04 (Bionic)
  • ✔️ Ubuntu 20.04 (Focal)
  • ✔️ CentOS 7
  • ✔️ CentOS 8

Anforderungen

Keine

Rollenvariablen

Variable Beschreibung Standardwert
nodejs_version Version von Node.js, die installiert werden soll 14
nodejs_npm_install_globally Liste von npm Paketen, die global installiert werden sollen []
nodejs_npm_config Liste der npm Konfigurationen - Siehe im Abschnitt Wie man npm konfiguriert []

Wie man npm konfiguriert

nodejs_npm_config muss ein Array von Objekten sein. So sollte jedes Objekt aussehen:

Eigenschaft Beschreibung Pflichtfeld
user Benutzer (eine npm-Konfiguration pro Benutzer) Ja
prefix npm-Präfix Nein
registry npm Registry URL Nein
scopes Liste der Scopes. Jeder Scope muss name (ohne @) und registry haben. Siehe die Beispiel-Playbooks unten. Nein
default_scope Standard-Scope Nein

Abhängigkeiten

Keine

Beispiel-Playbook

  1. Das einfachste

    ---
    - hosts: all
      roles:
        - marverix.nodejs
    
  2. Installieren Sie global mocha und eslint

    ---
    - hosts: all
      roles:
        - role: marverix.nodejs
          vars:
            nodejs_npm_install_globally:
              - mocha
              - eslint
    
  3. Setzen Sie die npm Registry für den Benutzer root, legen Sie Präfix fest, konfigurieren Sie Scopes und setzen Sie den Standard-Scope:

    ---
    - hosts: all
      roles:
        - role: marverix.nodejs
          vars:
            nodejs_npm_config:
              - user: root
                prefix: /home/root/.node
                registry: https://nexus.example.org/repository/npm/
                scopes:
                  - name: example-int
                    registry: https://nexus.example.org/repository/npm-int/
                  - name: example2-int
                    registry: https://nexus.example2.org/repository/npm-int/
                default_scope: example-int
    

    Übrigens: Hier ist ein guter Blogbeitrag, wie man Nexus als seine npm Registry einrichtet: https://blog.sonatype.com/using-nexus-3-as-your-repository-part-2-npm-packages

Lizenz

ISC

Über das Projekt

Ansible role that installs Node.js and configures npm

Installieren
ansible-galaxy install marverix.nodejs
GitHub Repository
Lizenz
isc
Downloads
189
Besitzer
Everyday normal Software Engineer