Move packages installation to default

Use attribute node['nodejs']['npm_packages']
Use Hash to provision resource
Rubocop fixes
Esse commit está contido em:
Guilhem Lettron
2014-08-20 00:39:23 +02:00
commit f68d39c912
3 arquivos alterados com 22 adições e 16 exclusões
+11
Ver Arquivo
@@ -71,3 +71,14 @@ suites:
nodejs:
npm:
install_method: source
- name: npm_packages
run_list: recipe[nodejs]
attributes:
nodejs:
npm_packages:
- name: express
- name: socket.io
version: 1.0.4
- name: express
action: uninstall
+11
Ver Arquivo
@@ -20,3 +20,14 @@
include_recipe 'nodejs::nodejs'
include_recipe 'nodejs::npm'
node['nodejs']['npm_packages'].each do |pkg|
f = nodejs_npm pkg['name'] do
action :nothing
end
pkg.reject { |k, _v| k == 'name' || k == 'action' }.each do |key, value|
f.send(key, value)
end
action = pkg.key?('action') ? pkg['action'] : :install
f.action(action)
end if node['nodejs'].key?('npm_packages')
-16
Ver Arquivo
@@ -1,16 +0,0 @@
#
# Author:: Paul Bonaud (paul@bonaud.fr)
# Cookbook Name:: nodejs
# Recipe:: packages
#
# This recipe gives you the ability to install node packages
# via chef configuration
#
if node['nodejs'].has_key?('node_packages')
node['nodejs']['node_packages'].each do |node_pkg|
nodejs_npm node_pkg['name'] do
version node_pkg['version'] if node_pkg.has_key?('version')
end if node_pkg.has_key?('name')
end
end