Enables setting of MAC address on management interface as per #426

This commit is contained in:
Tim Hughes 2015-09-14 17:37:19 +01:00
parent 4a8b88fc87
commit e904fd8941
3 changed files with 11 additions and 2 deletions

View File

@ -39,6 +39,7 @@ module VagrantPlugins
@disk_bus = config.disk_bus
@nested = config.nested
@memory_size = config.memory.to_i * 1024
@management_network_mac = config.management_network_mac
@domain_volume_cache = config.volume_cache
@kernel = config.kernel
@cmd_line = config.cmd_line
@ -74,7 +75,7 @@ module VagrantPlugins
# Get path to domain image from the storage pool selected if we have a box.
if env[:machine].box
actual_volumes =
actual_volumes =
env[:machine].provider.driver.connection.volumes.all.select do |x|
x.pool_name == @storage_pool_name
end
@ -135,6 +136,7 @@ module VagrantPlugins
env[:ui].info(" -- Domain type: #{@domain_type}")
env[:ui].info(" -- Cpus: #{@cpus}")
env[:ui].info(" -- Memory: #{@memory_size / 1024}M")
env[:ui].info(" -- Management MAC: #{@management_network_mac}")
env[:ui].info(" -- Loader: #{@loader}")
if env[:machine].box
env[:ui].info(" -- Base box: #{env[:machine].box.name}")

View File

@ -47,6 +47,7 @@ module VagrantPlugins
attr_accessor :management_network_name
attr_accessor :management_network_address
attr_accessor :management_network_mode
attr_accessor :management_network_mac
# Default host prefix (alternative to use project folder name)
attr_accessor :default_prefix
@ -112,6 +113,7 @@ module VagrantPlugins
@machine_virtual_size = UNSET_VALUE
@disk_bus = UNSET_VALUE
@nic_model_type = UNSET_VALUE
@management_network_mac = UNSET_VALUE
@nested = UNSET_VALUE
@volume_cache = UNSET_VALUE
@kernel = UNSET_VALUE

View File

@ -10,7 +10,8 @@ module VagrantPlugins
def configured_networks(env, logger)
management_network_name = env[:machine].provider_config.management_network_name
management_network_address = env[:machine].provider_config.management_network_address
management_network_mode = env[:machine].provider_config.management_network_mode
management_network_mode = env[:machine].provider_config.management_network_mode
management_network_mac = env[:machine].provider_config.management_network_mac
logger.info "Using #{management_network_name} at #{management_network_address} as the management network #{management_network_mode} is the mode"
begin
@ -37,6 +38,10 @@ module VagrantPlugins
forward_mode: management_network_mode,
}
unless management_network_mac.nil?
management_network_options[:mac] = management_network_mac
end
# add management network to list of networks to check
networks = [ management_network_options ]