class Kitchen::Provisioner::Ansible::Os
Attributes
Public Class Methods
Source
# File lib/kitchen/provisioner/ansible/os.rb, line 41 def self.make(platform, config) return nil if platform == '' case platform when 'debian', 'ubuntu' return Debian.new(platform, config) when 'redhat', 'centos' return Redhat.new(platform, config) when 'fedora' return Fedora.new(platform, config) when 'amazon' return Amazon.new(platform, config) when 'suse', 'opensuse', 'sles' return Suse.new(platform, config) when 'darwin', 'mac', 'macos', 'macosx' return Darwin.new(platform, config) when 'alpine' return Alpine.new(platform, config) when 'openbsd' return Openbsd.new(platform, config) when 'freebsd' return Freebsd.new(platform, config) end nil end
Source
# File lib/kitchen/provisioner/ansible/os.rb, line 36 def initialize(name, config) @config = config @name = name end
Public Instance Methods
Source
# File lib/kitchen/provisioner/ansible/os.rb, line 77 def sudo(script) @config[:sudo] ? "#{@config[:sudo_command]} #{script}" : script end
Taken from github.com/test-kitchen/test-kitchen/blob/master/lib/kitchen/provisioner/base.rb
Source
# File lib/kitchen/provisioner/ansible/os.rb, line 69 def sudo_env(pm) s = @config[:https_proxy] ? "https_proxy=#{@config[:https_proxy]}" : nil p = @config[:http_proxy] ? "http_proxy=#{@config[:http_proxy]}" : nil n = @config[:no_proxy] ? "no_proxy=#{@config[:no_proxy]}" : nil p || s ? "#{sudo('env')} #{p} #{s} #{n} #{pm}" : "#{sudo(pm)}" end
Helpers