Chef cookbook for setting up NVM from creationix's github repository.
Built to run on Linux distributions. Tested on Ubuntu 12.04.
Depends on the git cookbook.
Install nvm and node.js version 0.10.5.
# install nvm
include_recipe 'nvm'
# install node.js v0.10.5
nvm_install 'v0.10.5' do
from_source false
alias_as_default true
action :create
endFor more usage examples, have a look to the recipes in test/cookbooks/nvm_test/recipes/.
node['nvm']['directory']- directory where nvm is cloned, default '/usr/local/src/nvm'node['nvm']['repository']- url of the git repository, default 'git://github.com/creationix/nvm.git'node['nvm']['reference']- reference in the repository, default 'master'node['nvm']['source']- command to source nvm script file, default 'source /etc/profile.d/nvm.sh'node['nvm']['install_deps_to_build_from_source']- if true install the dependencies to compile node, otherwise not, default true
Install a node.js version from source or binaries
create(default)
version- node.js version, default to the name attributefrom_source- install from source if true, default to falsealias_as_default- alias the current version as the default version, default true
user_install- install nvm for a particular user, default falseuser- user to install nvm as, no defaultgroup- group to install nvm as, defaults to useruser_nome- home directory of user for user install if it is a non standard home directory, default /home/$usernvm_directory-
Install from binary
nvm_install '0.10.5' do
from_source false
alias_as_default true
action :create
endInstall from source
nvm_install '0.10.5' do
from_source true
alias_as_default true
action :create
endInstall as user
nvm_install '0.10.5' do
user 'myuser'
group 'mygroup'
from_source false
alias_as_default true
action :create
endMultiple user installs
nvm_install 'nvm for userone' do
version '0.10.5'
user 'userone'
group 'userone'
from_source false
alias_as_default true
action :create
endnvm_install 'nvm for usertwo' do
version '0.10.5'
user 'usertwo'
group 'usertwo'
from_source false
alias_as_default true
action :create
endNonstandard user home user install
nvm_install '0.10.5' do
user 'usertwo'
group 'usertwo'
user_home '/opt/usertwo'
from_source false
alias_as_default true
action :create
endUse by default the given node.js version
create(default)
version- node.js version, default to the name attribute
Use by default node.js version 0.10.0
nvm_alias_default '0.10.0' do
action :create
endYou will need to do a couple of things to be up to speed to hack on this cookbook. Everything is explained here have a look.
bundle exec rake cookbook:full_testAuthor: Rémy Loubradou
Copyright 2013 HipSnip Limited
Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.