nodejs

Ansible Роль: Node.js

Статус сборки Оценка качества Ansible Роль Ansible Лицензия: ISC

Роль Ansible, которая устанавливает на Linux Node.js, npm и при необходимости выполняет базовую настройку npm.

Особенности

  • ✔️ Установка Node.js
    • Можно определить, какая версия должна быть установлена
    • Проверка, что установлена самая новая версия npm
  • ✔️ Настройка npm
    • Установка глобального реестра для пользователя
    • Установка префикса для пользователя
    • Установка значения по умолчанию для области видимости пользователя
    • Настройка областей видимости для пользователя
  • ✔️ Установка глобальных пакетов npm, которые вы хотите
  • ✔️ Проверка доступности псевдонима nodejs
  • ✔️ Протестировано с помощью Molecule Verify

Поддерживаемые платформы

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

Требования

Отсутствуют

Переменные роли

Переменная Описание Значение по умолчанию
nodejs_version Версия Node.js для установки 14
nodejs_npm_install_globally Список пакетов npm, которые должны быть установлены глобально []
nodejs_npm_config Список конфигураций npm - см. раздел Как настроить npm []

Как настроить npm

nodejs_npm_config должен быть массивом объектов. Вот как должен выглядеть каждый объект:

Свойство Описание Обязательное
user Пользователь (одна настройка npm для пользователя) Да
prefix Префикс npm Нет
registry URL реестра npm Нет
scopes Список областей видимости. Каждая область должна иметь name (без @) и registry. Смотрите примеры ниже. Нет
default_scope Область по умолчанию Нет

Зависимости

Отсутствуют

Пример плейбука

  1. Самый простой вариант

    ---
    - hosts: all
      roles:
        - marverix.nodejs
    
  2. Установка глобально mocha и eslint

    ---
    - hosts: all
      roles:
        - role: marverix.nodejs
          vars:
            nodejs_npm_install_globally:
              - mocha
              - eslint
    
  3. Установка реестра npm для пользователя root, установка префикса, настройка областей видимости и установка области по умолчанию:

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

    Кстати: Вот хороший пост в блоге о том, как настроить Nexus в качестве вашего реестра npm: https://blog.sonatype.com/using-nexus-3-as-your-repository-part-2-npm-packages

Лицензия

ISC

О проекте

Ansible role that installs Node.js and configures npm

Установить
ansible-galaxy install marverix/ansible-role-nodejs
Лицензия
isc
Загрузки
175
Владелец
Everyday normal Software Engineer