Method: Beaker::HostPrebuiltSteps#proxy_config

Defined in:
lib/beaker/host_prebuilt_steps.rb

#proxy_config(host, opts) ⇒ Object

On ubuntu, debian, or cumulus host or hosts: alter apt configuration to use the internal Puppet Labs proxy APT_CFG proxy. On solaris-11 host or hosts: alter pkg to point to the internal Puppet Labs proxy IPS_PKG_REPO.

Do nothing for other platform host or hosts.

Parameters:

  • host (Host, Array<Host>)

    One or more hosts to act upon

  • opts (Hash{Symbol=>String})

    Options to alter execution.

Options Hash (opts):



228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
# File 'lib/beaker/host_prebuilt_steps.rb', line 228

def proxy_config( host, opts )
  logger = opts[:logger]
  block_on host do |host|
    case
    when host['platform'] =~ /ubuntu|debian|cumulus/
      host.exec(Command.new("if test -f /etc/apt/apt.conf; then mv /etc/apt/apt.conf /etc/apt/apt.conf.bk; fi"))
      copy_file_to_remote(host, '/etc/apt/apt.conf', APT_CFG)
      apt_get_update(host)
    when host['platform'] =~ /solaris-11/
      host.exec(Command.new("/usr/bin/pkg unset-publisher solaris || :"))
      host.exec(Command.new("/usr/bin/pkg set-publisher -g %s solaris" % IPS_PKG_REPO))
    else
      logger.debug "#{host}: repo proxy configuration not modified"
    end
  end
rescue => e
  report_and_raise(logger, e, "proxy_config")
end