Method: Unix::Pkg#puppet_agent_dev_package_info

Defined in:
lib/beaker/host/unix/pkg.rb

#puppet_agent_dev_package_info(puppet_collection = nil, puppet_agent_version = nil, opts = {}) ⇒ String

Note:

Solaris does require some options to be set. See #solaris_puppet_agent_dev_package_info for more details

Gets the path & file name for the puppet agent dev package on Unix

Parameters:

  • puppet_collection (String) (defaults to: nil)

    Name of the puppet collection to use

  • puppet_agent_version (String) (defaults to: nil)

    Version of puppet agent to get

  • opts (Hash{Symbol=>String}) (defaults to: {})

    Options hash to provide extra values

Returns:

  • (String, String)

    Path to the directory and filename of the package, respectively

Raises:

  • (ArgumentError)

    If one of the two required parameters (puppet_collection, puppet_agent_version) is either not passed or set to nil



377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
# File 'lib/beaker/host/unix/pkg.rb', line 377

def puppet_agent_dev_package_info( puppet_collection = nil, puppet_agent_version = nil, opts = {} )
  error_message = "Must provide %s argument to get puppet agent dev package information"
  raise ArgumentError, error_message % "puppet_collection" unless puppet_collection
  raise ArgumentError, error_message % "puppet_agent_version" unless puppet_agent_version

  variant, version, arch, codename = self['platform'].to_array
  case variant
  when /^(solaris)$/
    release_path_end, release_file = solaris_puppet_agent_dev_package_info(
      puppet_collection, puppet_agent_version, opts )
  when /^(sles|aix)$/
    arch = 'ppc' if variant == 'aix' && arch == 'power'
    release_path_end = "#{variant}/#{version}/#{puppet_collection}/#{arch}"
    release_file = "puppet-agent-#{puppet_agent_version}-1.#{variant}#{version}.#{arch}.rpm"
  else
    msg = "puppet_agent dev package info unknown for platform '#{self['platform']}'"
    raise ArgumentError, msg
  end
  return release_path_end, release_file
end