nodejs
Ansible Роль: Node.js
Роль 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 |
Область по умолчанию | Нет |
Зависимости
Отсутствуют
Пример плейбука
Самый простой вариант
--- - hosts: all roles: - marverix.nodejs
Установка глобально
mocha
иeslint
--- - hosts: all roles: - role: marverix.nodejs vars: nodejs_npm_install_globally: - mocha - eslint
Установка реестра
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