2012-11-07 05:28:44 +00:00
|
|
|
require "vagrant"
|
|
|
|
|
|
|
|
module VagrantPlugins
|
|
|
|
module Kernel_V2
|
|
|
|
class VagrantConfig < Vagrant.plugin("2", :config)
|
|
|
|
attr_accessor :host
|
2018-01-15 15:23:47 +00:00
|
|
|
attr_accessor :sensitive
|
2013-04-03 23:18:37 +00:00
|
|
|
|
2014-01-08 03:11:08 +00:00
|
|
|
def initialize
|
|
|
|
@host = UNSET_VALUE
|
2018-01-15 15:23:47 +00:00
|
|
|
@sensitive = UNSET_VALUE
|
2014-01-08 03:11:08 +00:00
|
|
|
end
|
|
|
|
|
|
|
|
def finalize!
|
2014-02-05 23:35:37 +00:00
|
|
|
@host = :detect if @host == UNSET_VALUE
|
2014-01-08 03:11:08 +00:00
|
|
|
@host = @host.to_sym if @host
|
2018-01-15 15:23:47 +00:00
|
|
|
@sensitive = nil if @sensitive == UNSET_VALUE
|
|
|
|
|
|
|
|
if @sensitive.is_a?(Array) || @sensitive.is_a?(String)
|
|
|
|
Array(@sensitive).each do |value|
|
|
|
|
Vagrant::Util::CredentialScrubber.sensitive(value.to_s)
|
|
|
|
end
|
|
|
|
end
|
|
|
|
end
|
|
|
|
|
|
|
|
def validate(machine)
|
|
|
|
errors = _detected_errors
|
|
|
|
|
|
|
|
if @sensitive && (!@sensitive.is_a?(Array) && !@sensitive.is_a?(String))
|
|
|
|
errors << I18n.t("vagrant.config.root.sensitive_bad_type")
|
|
|
|
end
|
|
|
|
{"vagrant" => errors}
|
2014-01-08 03:11:08 +00:00
|
|
|
end
|
|
|
|
|
2013-04-03 23:18:37 +00:00
|
|
|
def to_s
|
|
|
|
"Vagrant"
|
|
|
|
end
|
2012-11-07 05:28:44 +00:00
|
|
|
end
|
|
|
|
end
|
|
|
|
end
|