marverix.nodejs

Rola Ansible: Node.js

Status budowy Ocena jakości Ansible Rola Ansible Licencja: ISC

Rola Ansible, która instaluje na systemie Linux Node.js, npm i opcjonalnie wykonuje podstawową konfigurację npm.

Funkcje

  • ✔️ Instalacja Node.js
    • Możesz zdefiniować, która wersja ma być zainstalowana
    • Podwójna kontrola, czy najnowsza wersja npm jest zainstalowana
  • ✔️ Konfiguracja npm
    • Ustawienie globalnego rejestru dla użytkownika
    • Ustawienie prefiksu dla użytkownika
    • Ustawienie domyślnego zakresu dla użytkownika
    • Konfiguracja zakresów dla użytkownika
  • ✔️ Instalacja globalnych pakietów npm, które chcesz
  • ✔️ Zapewnienie, że alias nodejs jest dostępny
  • ✔️ Testowane z Molecule Verify

Obsługiwane platformy

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

Wymagania

Brak

Zmienne roli

Zmienna Opis Wartość domyślna
nodejs_version Wersja Node.js do zainstalowania 14
nodejs_npm_install_globally Lista pakietów npm, które powinny być zainstalowane globalnie []
nodejs_npm_config Lista konfiguracji npm - Zobacz sekcję Jak skonfigurować npm []

Jak skonfigurować npm

nodejs_npm_config musi być tablicą obiektów. Oto jak każdy obiekt powinien wyglądać:

Właściwość Opis Wymagane
user Użytkownik (jedna konfiguracja npm na użytkownika) Tak
prefix Prefiks npm Nie
registry URL rejestru npm Nie
scopes Lista zakresów. Każdy zakres musi mieć name (bez @) i registry. Zobacz przykłady playbooków poniżej. Nie
default_scope Domyślny zakres Nie

Zależności

Brak

Przykład playbooka

  1. Najprostszy

    ---
    - hosts: all
      roles:
        - marverix.nodejs
    
  2. Instalacja globalna mocha i eslint

    ---
    - hosts: all
      roles:
        - role: marverix.nodejs
          vars:
            nodejs_npm_install_globally:
              - mocha
              - eslint
    
  3. Ustawienie rejestru npm dla użytkownika root, ustawienie prefiksu, konfiguracja zakresów i ustawienie domyślnego zakresu:

    ---
    - 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
    

    BTW: Oto dobry blog o tym, jak skonfigurować Nexus jako swój rejestr npm: https://blog.sonatype.com/using-nexus-3-as-your-repository-part-2-npm-packages

Licencja

ISC

O projekcie

Ansible role that installs Node.js and configures npm

Zainstaluj
ansible-galaxy install marverix.nodejs
Licencja
isc
Pobrania
189
Właściciel
Everyday normal Software Engineer