Class: PoiseJavascript::Resources::NodePackage::Provider

Inherits:
Chef::Provider::Package
  • Object
show all
Includes:
JavascriptCommandMixin
Defined in:
lib/poise_javascript/resources/node_package.rb

Overview

The default provider for the node_package resource.

See Also:

Since:

  • 1.0.0

Instance Method Summary collapse

Instance Method Details

#install_package(name, version) Also known as: upgrade_package

This method returns an undefined value.

Install package(s) using npm.

Parameters:

  • name (String, Array<String>)

    Name(s) of package(s).

  • version (String, Array<String>)

    Version(s) of package(s).

Since:

  • 1.0.0



166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
# File 'lib/poise_javascript/resources/node_package.rb', line 166

def install_package(name, version)
  args = []
  # Set --unsafe-perm unless the property is nil.
  unless new_resource.unsafe_perm.nil?
    args << '--unsafe-perm'
    args << new_resource.unsafe_perm.to_s
  end
  # Build up the actual package install args.
  if new_resource.source
    args << new_resource.source
  else
    Array(name).zip(Array(version)) do |pkg_name, pkg_ver|
      args << "#{pkg_name}@#{pkg_ver}"
    end
  end
  npm_shell_out!('install', args, parse_json: false)
end

#remove_package(name, version)

This method returns an undefined value.

Uninstall package(s) using npm.

Parameters:

  • name (String, Array<String>)

    Name(s) of package(s).

  • version (String, Array<String>)

    Version(s) of package(s).

Since:

  • 1.0.0



192
193
194
# File 'lib/poise_javascript/resources/node_package.rb', line 192

def remove_package(name, version)
  npm_shell_out!('uninstall', [name].flatten, parse_json: false)
end