X-Git-Url: https://git.openstreetmap.org/chef.git/blobdiff_plain/7b9ec4b60ee39614d1d083d7220e76b07d2b275f..1df3edbee59a60ca0bd7005124c12e99205fd2d1:/cookbooks/nodejs/providers/package.rb diff --git a/cookbooks/nodejs/providers/package.rb b/cookbooks/nodejs/providers/package.rb index f726df310..3a3304063 100644 --- a/cookbooks/nodejs/providers/package.rb +++ b/cookbooks/nodejs/providers/package.rb @@ -23,11 +23,11 @@ require "json" include Chef::Mixin::ShellOut def load_current_resource - @packages = JSON.parse(shell_out("npm list --global --json").stdout)["dependencies"] + @packages = JSON.parse(shell_out("npm list --global --json").stdout)["dependencies"] || {} @current_resource = Chef::Resource::NodejsPackage.new(new_resource.name) @current_resource.package_name(new_resource.package_name) - if package = @packages[@current_resource.package_name] + if (package = @packages[@current_resource.package_name]) @current_resource.version(package["version"]) end @current_resource @@ -40,7 +40,7 @@ action :install do package_name = new_resource.package_name end - unless @packages.include?(new_resource.package_name) + if !@packages.include?(new_resource.package_name) shell_out!("npm install --global #{package_name}") new_resource.updated_by_last_action(true) else