Skip to content

Instantly share code, notes, and snippets.

@thommay
Created May 3, 2011 11:16
Show Gist options
  • Select an option

  • Save thommay/953178 to your computer and use it in GitHub Desktop.

Select an option

Save thommay/953178 to your computer and use it in GitHub Desktop.
define :npm, :user => "node", :home => "/srv/node" do
file File.join(params[:home], ".npmrc") do
content <<-EOH
root = #{params[:home]}/.node_libraries
binroot = #{params[:home]}/bin
manroot = #{params[:home]}/share/man
EOH
owner params[:user]
group params[:user]
end
srcdir = File.join(params[:home], "src")
directory srcdir do
recursive true
owner params[:user]
group params[:user]
end
git File.join(srcdir, "npm") do
repository "http://github.com/isaacs/npm.git"
action :checkout
user params[:user]
group params[:user]
depth 5
notifies :run, "execute[install-node]", :immediately
revision "v0.2.15"
end
execute "install-node" do
command "node cli.js install npm"
cwd File.join(srcdir, "npm")
environment ({"HOME" => params[:home], "PATH" => "#{File.join(params[:home], "bin")}:/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin"})
user params[:user]
group params[:user]
action :nothing
end
end
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment