marverix.nodejs
Ansibleロール: Node.js
LinuxにNode.jsとnpmをインストールするAnsibleロールで、オプションとして基本的な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 |
npmレジストリのURL | いいえ |
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
ユーザー
root
のためにnpm
レジストリを設定し、接頭辞、スコープの設定、デフォルトスコープを設定:--- - 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.nodejs
ライセンス
isc
ダウンロード
189
所有者
Everyday normal Software Engineer