Sha256: 141992324a0363ae75fdb9c3ec787478c5a564c68b916c636cc83d3997771492

Contents?: true

Size: 1.7 KB

Versions: 4

Compression:

Stored size: 1.7 KB

Contents

require_relative "base"

module VagrantPlugins
  module Ansible
    module Config
      class Host < Base

        attr_accessor :ask_become_pass
        attr_accessor :ask_vault_pass
        attr_accessor :force_remote_user
        attr_accessor :host_key_checking
        attr_accessor :raw_ssh_args

        #
        # Deprecated options
        #
        alias :ask_sudo_pass :ask_become_pass
        def ask_sudo_pass=(value)
          show_deprecation_warning 'ask_sudo_pass', 'ask_become_pass'
          @ask_become_pass = value
        end

        def initialize
          super

          @ask_become_pass     = false
          @ask_vault_pass      = false
          @force_remote_user   = true
          @host_key_checking   = false
          @raw_ssh_args        = UNSET_VALUE
        end

        def finalize!
          super

          @ask_become_pass     = false if @ask_become_pass   != true
          @ask_vault_pass      = false if @ask_vault_pass    != true
          @force_remote_user   = true  if @force_remote_user != false
          @host_key_checking   = false if @host_key_checking != true
          @raw_ssh_args        = nil   if @raw_ssh_args      == UNSET_VALUE
        end

        def validate(machine)
          super

          if raw_ssh_args
            if raw_ssh_args.kind_of?(String)
              @raw_ssh_args = [raw_ssh_args]
            elsif !raw_ssh_args.kind_of?(Array)
              @errors << I18n.t(
                "vagrant.provisioners.ansible.errors.raw_ssh_args_invalid",
                type:  raw_ssh_args.class.to_s,
                value: raw_ssh_args.to_s)
            end
          end

          { "ansible remote provisioner" => @errors }
        end

      end
    end
  end
end

Version data entries

4 entries across 4 versions & 2 rubygems

Version Path
vagrant-unbundled-2.0.1.0 plugins/provisioners/ansible/config/host.rb
vagrant-aws-mkubenka-0.7.2.pre.22 vendor/bundle/ruby/2.3.0/bundler/gems/vagrant-f3fdbf414272/plugins/provisioners/ansible/config/host.rb
vagrant-aws-mkubenka-0.7.2.pre.16 vendor/bundle/ruby/2.3.0/bundler/gems/vagrant-1ee58c40e3f5/plugins/provisioners/ansible/config/host.rb
vagrant-unbundled-2.0.0.1 plugins/provisioners/ansible/config/host.rb