marverix.nodejs

Rôle Ansible : Node.js

État de la construction Score de qualité Ansible Rôle Ansible Licence : ISC

Rôle Ansible qui installe sur Linux Node.js, npm et effectue éventuellement une configuration de base de npm.

Fonctionnalités

  • ✔️ Installation de Node.js
    • Vous pouvez définir quelle version doit être installée
    • Vérification que la version la plus récente de npm est installée
  • ✔️ Configuration de npm
    • Définir le registre global pour un utilisateur
    • Définir le préfixe pour un utilisateur
    • Définir la portée par défaut pour un utilisateur
    • Configurer les portées pour un utilisateur
  • ✔️ Installation des paquets npm que vous souhaitez de manière globale
  • ✔️ S'assurer que l'alias nodejs est disponible
  • ✔️ Testé avec Molecule Verify

Plateformes supportées

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

Exigences

Aucune

Variables du rôle

Variable Description Valeur par défaut
nodejs_version Version de Node.js à installer 14
nodejs_npm_install_globally Liste des paquets npm à installer globalement []
nodejs_npm_config Liste des configurations npm - Voir la section Comment configurer npm []

Comment configurer npm

nodejs_npm_config doit être un tableau d'objets. Voici à quoi devrait ressembler chaque objet :

Propriété Description Requis
user Utilisateur (une configuration npm par utilisateur) Oui
prefix Préfixe npm Non
registry URL du registre npm Non
scopes Liste des portées. Chaque portée doit avoir name (sans @) et registry. Regardez les exemples de playbook ci-dessous. Non
default_scope Portée par défaut Non

Dépendances

Aucune

Exemple de Playbook

  1. Le plus simple

    ---
    - hosts: all
      roles:
        - marverix.nodejs
    
  2. Installer globalement mocha et eslint

    ---
    - hosts: all
      roles:
        - role: marverix.nodejs
          vars:
            nodejs_npm_install_globally:
              - mocha
              - eslint
    
  3. Définir le registre npm pour l'utilisateur root, définir le préfixe, configurer les portées et définir la portée par défaut :

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

    Au fait : Voici un bon article de blog sur la façon de configurer Nexus comme votre registre npm : https://blog.sonatype.com/using-nexus-3-as-your-repository-part-2-npm-packages

Licence

ISC

À propos du projet

Ansible role that installs Node.js and configures npm

Installer
ansible-galaxy install marverix.nodejs
Licence
isc
Téléchargements
189
Propriétaire
Everyday normal Software Engineer