cookbook 'nodejs', '= 2.4.4'
nodejs
(67) Versions
2.4.4
-
-
10.2.0
-
10.1.22
-
10.1.21
-
10.1.20
-
10.1.19
-
10.1.18
-
10.1.17
-
10.1.16
-
10.1.15
-
10.1.14
-
10.1.13
-
10.1.12
-
10.1.11
-
10.1.10
-
10.1.9
-
10.1.8
-
10.1.7
-
10.1.6
-
10.1.5
-
10.1.4
-
10.1.3
-
10.1.2
-
10.1.1
-
10.1.0
-
10.0.1
-
10.0.0
-
9.0.2
-
9.0.1
-
9.0.0
-
8.0.0
-
7.3.3
-
7.3.2
-
7.3.1
-
7.3.0
-
7.2.0
-
7.1.0
-
7.0.1
-
7.0.0
-
6.0.0
-
5.0.0
-
4.0.0
-
3.0.0
-
2.4.4
-
2.4.2
-
2.4.0
-
2.3.2
-
2.3.0
-
2.2.0
-
2.1.0
-
2.0.0
-
1.3.0
-
1.1.2
-
1.1.1
-
1.1.0
-
1.0.4
-
1.0.2
-
1.0.1
-
0.6.11
-
0.6.8
-
0.6.5
-
0.6.0
-
0.5.1
-
0.5.0
-
0.4.1
-
0.4.0
-
0.2.0
-
0.1.1
Follow271
- 10.2.0
- 10.1.22
- 10.1.21
- 10.1.20
- 10.1.19
- 10.1.18
- 10.1.17
- 10.1.16
- 10.1.15
- 10.1.14
- 10.1.13
- 10.1.12
- 10.1.11
- 10.1.10
- 10.1.9
- 10.1.8
- 10.1.7
- 10.1.6
- 10.1.5
- 10.1.4
- 10.1.3
- 10.1.2
- 10.1.1
- 10.1.0
- 10.0.1
- 10.0.0
- 9.0.2
- 9.0.1
- 9.0.0
- 8.0.0
- 7.3.3
- 7.3.2
- 7.3.1
- 7.3.0
- 7.2.0
- 7.1.0
- 7.0.1
- 7.0.0
- 6.0.0
- 5.0.0
- 4.0.0
- 3.0.0
- 2.4.4
- 2.4.2
- 2.4.0
- 2.3.2
- 2.3.0
- 2.2.0
- 2.1.0
- 2.0.0
- 1.3.0
- 1.1.2
- 1.1.1
- 1.1.0
- 1.0.4
- 1.0.2
- 1.0.1
- 0.6.11
- 0.6.8
- 0.6.5
- 0.6.0
- 0.5.1
- 0.5.0
- 0.4.1
- 0.4.0
- 0.2.0
- 0.1.1
Installs/Configures node.js
cookbook 'nodejs', '= 2.4.4', :supermarket
knife supermarket install nodejs
knife supermarket download nodejs
nodejs-cookbook
DESCRIPTION
Installs node.js/io.js and manage npm
USAGE
Include the nodejs recipe to install node on your system based on the default installation method:
chef
include_recipe "nodejs"
Engine
You can select different engine by setting node['nodejs']['engine']
node['nodejs']['engine'] => 'node' # default
node['nodejs']['engine'] => 'iojs'
You can also use recipes nodejs::nodejs
or nodejs::iojs
.
Install methods
Package
Install node from packages:
node['nodejs']['install_method'] = 'package' # Not necessary because it's the default include_recipe "nodejs" # Or include_recipe "nodejs::nodejs_from_package"
Note that only apt (Ubuntu, Debian) appears to have up to date packages available.
Centos, RHEL, etc are non-functional (try nodejs_from_binary
for those).
Binary
Install node from official prebuilt binaries:
```chef
node['nodejs']['install_method'] = 'binary'
include_recipe "nodejs"
Or
include_recipe "nodejs::nodejs_from_binary"
```
Source
Install node from sources:
```chef
node['nodejs']['install_method'] = 'source'
include_recipe "nodejs"
Or
include_recipe "nodejs::nodejs_from_source"
```
NPM
Npm is included in nodejs installs by default.
By default, we are using it and call it embedded
.
Adding recipe nodejs::npm
assure you to have npm installed and let you choose install method with node['nodejs']['npm']['install_method']
chef
include_recipe "nodejs::npm"
Warning: This recipe will include the nodejs
recipe, which by default includes nodejs::nodejs_from_package
if you did not set node['nodejs']['install_method']
.
LWRP
nodejs_npm
nodejs_npm
let you install npm packages from various sources:
* npm registry:
* name: attribute :package
* version: attribute :version
(optionnal)
* url: attribute :url
* for git use git://{your_repo}
* from a json (packages.json by default): attribute :json
* use true
for default
* use a String
to specify json file
Packages can be installed globally (by default) or in a directory (by using attribute :path
)
You can specify an NPM_TOKEN
environment variable for accessing NPM private modules by using attribute :npm_token
You can append more specific options to npm command with attribute :options
array :
* use an array of options (w/ dash), they will be added to npm call.
* ex: ['--production','--force']
or ['--force-latest']
This LWRP attempts to use vanilla npm as much as possible (no custom wrapper).
Packages
nodejs_npm "express" nodejs_npm "async" do version "0.6.2" end nodejs_npm "request" do url "github mikeal/request" end nodejs_npm "grunt" do path "/home/random/grunt" json true user "random" end nodejs_npm "my_private_module" do path "/home/random/myproject" # The root path to your project, containing a package.json file json true npm_token "12345-abcde-e5d4c3b2a1" user "random" options ['--production'] # Only install dependencies. Skip devDependencies end
[Working Examples](test/cookbooks/nodejs_test/recipes/npm.rb)
Or add packages via attributes (which accept the same attributes as the LWRP above):
"nodejs": { "npm_packages": [ { "name": "express" }, { "name": "async", "version": "0.6.2" }, { "name": "request", "url": "github mikeal/request" } { "name": "grunt", "path": "/home/random/grunt", "json": true, "user": "random" } ] }
AUTHORS
- Marius Ducea (marius@promethost.com)
- Nathan L Smith (nlloyds@gmail.com)
- Guilhem Lettron (guilhem@lettron.fr)
- Barthelemy Vessemont (bvessemont@gmail.com)
Dependent cookbooks
yum-epel >= 0.0.0 |
build-essential >= 0.0.0 |
ark >= 0.0.0 |
apt >= 0.0.0 |
homebrew >= 0.0.0 |
Contingent cookbooks
2.4.4
- Use HTTPS prefix URLs for node download #98
- Update NPM symlink when installing from source #105
- Add support for NPM private modules #107
v2.4.2
- Fix check version
- Support iojs package install
v2.4.0
- Move
npm_packages
to his own recipe - Fix different race conditions when using direct recipe call
- Fix npm recipe
v2.3.2
- Fix package recipe
v2.3.0
- Support io.js. Use node['nodejs']['engine'].
- Add MacOS support via homebrew
v2.2.0
- Add node['nodejs']['keyserver']
- Update arm checksum
- Fix
npm_packages
JSON
v2.1.0
- Use official nodesource repository
- Add node['nodejs']['npm_packages'] to install npm package with
default
recipe
v2.0.0
- Travis integration
- Gems updated
- Rewrite cookbook dependencies
- Added complete test-kitchen integration : Rake, rubocop, foodcritic, vagrant, bats testing ...
- Added NodeJS
install_method
option (sources, bins or packages) - Added NPM
install_method
option (sources or packages) - NPM version can now be chosen independently from nodejs' embedded version
- Added a
nodejs_npm
LWRP to manage, install and resolve NPM packages
v1.3.0
- update default versions to the latest: node - v0.10.15 and npm - v1.3.5
- default to package installation of nodejs on smartos (@wanelo-pair)
- Add Raspberry pi support (@robertkowalski)
v1.2.0
- implement installation from package on RedHat - (@vaskas)
v1.1.3:
- update default version of node to 0.10.13 - and npm - v1.3.4 ([@jodosha][])
v1.1.2:
- update default version of node to 0.10.2 - (@bakins)
- fully migrated to test-kitchen 1.alpha and vagrant 1.1.x/berkshelf 1.3.1
v1.1.1:
- update default versions to the latest: node - v0.10.0 and npm - v1.2.14
-
make_thread
is now a real attribute - (@ChrisLundquist)
v1.1.0:
- rewrite the package install; remove rpm support since there are no longer any packages available anywhere
- add support to install
legacy_packages
from ubuntu repo as well as the latest 0.10.x branch (this is default).
v1.0.4:
- add support for binary installation method (@JulesAU)
v1.0.3:
- unreleased
v1.0.2:
- add smartos support for package install (@sax)
- support to compile with all processors available (default 2 if unknown) - (@ChrisLundquist)
- moved to
platform_family
syntax - ensure npm recipe honours the 'source' or 'package' setting - (@markbirbeck)
- updated the default versions to the latest stable node/npm
v1.0.1:
- fixed bug that prevented overwritting the node/npm versions (moved the
src_url
s as local variables instead of attributes) - (@johannesbecker) - updated the default versions to the latest node/npm
v1.0.0:
- added packages installation support (@smith)
Foodcritic Metric
2.4.4 passed this metric
2.4.4 passed this metric