Skip to content

afaundez/nodenv-cookbook

Repository files navigation

Chef cookbook Travis

Nodenv Cookbook

Chef resource for nodenv installs, configuration and management of node versions.

Cookbook

cookbook 'nodenv', '~> 1.0.3'

Resources

You can choose whether a user or a system install (or both). Check test recipes for working examples.

Install

User

nodenv_user 'user'
Property Type Default Details
:git_revision String HEAD choose a revision
:git_url String git://github.com/nodenv/nodenv.git a valid git url
:nodenv_root String :user's home a directory that must be writable by :user
:owner String must be and existing user, acts as name property
:group String must be and existing group.
:user String Deprecated, use :owner property

System-wide

nodenv_system 'system'
Property Type Default Details
:git_revision String HEAD choose a revision
:git_url String git://github.com/nodenv/nodenv.git a valid git url
:nodenv_root String /usr/local/nodenv

Commands

Commands without user property will assume system-wide installation.

Install

Install a node version for user/system nodenv.

nodenv_install '8.2.1' do
  user 'user'
end

nodenv_install '9.5.0'
Property Type Default Details
:version String must be a valid node version, acts as name property
:user String root must be an existing user

Global

Set a global node version for user/system-wide nodenv.

nodenv_global '8.2.1' do
  user 'user'
end

nodenv_global '9.5.0'
Property Type Default Details
:version String must be installed node versions, acts as name property
:user String root must be an existing user

Testing

Check Test Kitchen.

  • dokken: KITCHEN_LOCAL_YAML=kitchen.dokken.yml kitchen test
  • vagrant/virtualbox: kitchen test

Development

Check kitchen converge docs.

Acknowledgements

Based in ruby_rbenv.