npm – Manage node.js packages with npm

Synopsis

  • Manage node.js packages with Node Package Manager (npm)

Requirements

The below requirements are needed on the host that executes this module.

  • npm installed in bin path (recommended /usr/local/bin)

Parameters

Parameter Choices/Defaults Comments
executable
-
The executable location for npm.
This is useful if you are using a version manager, such as nvm
global
boolean
    Choices:
  • no ←
  • yes
Install the node.js library globally
ignore_scripts
boolean
added in 1.8
    Choices:
  • no ←
  • yes
Use the --ignore-scripts flag when installing.
name
-
The name of a node.js library to install
path
-
The base path where to install the node.js libraries
production
boolean
    Choices:
  • no ←
  • yes
Install dependencies in production mode, excluding devDependencies
registry
-
added in 1.6
The registry to install modules from.
state
-
    Choices:
  • present ←
  • absent
  • latest
The state of the node.js library
version
-
The version to be installed

Examples

- name: Install "coffee-script" node.js package.
  npm:
    name: coffee-script
    path: /app/location

- name: Install "coffee-script" node.js package on version 1.6.1.
  npm:
    name: coffee-script
    version: '1.6.1'
    path: /app/location

- name: Install "coffee-script" node.js package globally.
  npm:
    name: coffee-script
    global: yes

- name: Remove the globally package "coffee-script".
  npm:
    name: coffee-script
    global: yes
    state: absent

- name: Install "coffee-script" node.js package from custom registry.
  npm:
    name: coffee-script
    registry: 'http://registry.mysite.com'

- name: Install packages based on package.json.
  npm:
    path: /app/location

- name: Update packages based on package.json to their latest version.
  npm:
    path: /app/location
    state: latest

- name: Install packages based on package.json using the npm installed with nvm v0.10.1.
  npm:
    path: /app/location
    executable: /opt/nvm/v0.10.1/bin/npm
    state: present

Status

Authors

  • Chris Hoffman (@chrishoffman)

Hint

If you notice any issues in this documentation you can edit this document to improve it.