lib/vagrant/config/ssh.rb in vagrant-0.8.10 vs lib/vagrant/config/ssh.rb in vagrant-0.9.0

- old
+ new

@@ -1,38 +1,53 @@ module Vagrant - class Config + module Config class SSHConfig < Base - configures :ssh - attr_accessor :username + attr_accessor :password attr_accessor :host - attr_accessor :forwarded_port_key - attr_accessor :forwarded_port_destination + attr_accessor :port + attr_accessor :guest_port attr_accessor :max_tries attr_accessor :timeout - attr_writer :private_key_path + attr_accessor :private_key_path attr_accessor :forward_agent attr_accessor :forward_x11 attr_accessor :shell - attr_accessor :port def initialize - @shell = "bash" - @port = nil - @forward_agent = false - @forward_x11 = false + @shell = "bash" + @forward_agent = false + @forward_x11 = false end - def private_key_path - File.expand_path(@private_key_path, env.root_path) + def forwarded_port_key=(value) + raise Errors::DeprecationError, :message => <<-MESSAGE +`config.ssh.forwarded_port_key` is now gone. You must now use +`config.ssh.guest_port` which is expected to be the port on the +guest that SSH is listening on. Vagrant will automatically scan +the forwarded ports to look for a forwarded port from this port +and use it. + MESSAGE end - def validate(errors) - [:username, :host, :forwarded_port_key, :max_tries, :timeout, :private_key_path].each do |field| + def forwarded_port_destination=(value) + raise Errors::DeprecationError, :message => <<-MESSAGE +`config.ssh.forwarded_port_destination` is now gone. You must now use +`config.ssh.guest_port` which is expected to be the port on the +guest that SSH is listening on. Vagrant will automatically scan +the forwarded ports to look for a forwarded port from this port +and use it. + MESSAGE + end + + def validate(env, errors) + [:username, :host, :max_tries, :timeout].each do |field| errors.add(I18n.t("vagrant.config.common.error_empty", :field => field)) if !instance_variable_get("@#{field}".to_sym) end - errors.add(I18n.t("vagrant.config.ssh.private_key_missing", :path => private_key_path)) if !File.file?(private_key_path) + if private_key_path && !File.file?(private_key_path) + errors.add(I18n.t("vagrant.config.ssh.private_key_missing", :path => private_key_path)) + end end end end end