Rename default network to management network. Closes #126.

The use of the term default makes discussing this network confusing.
This network must exist and be configured a certain way in order for vagrant
to manage a VMs configuration, so lets call it the management network instead.
This commit is contained in:
Brian Pitts
2014-01-17 18:44:10 -06:00
parent 2377b6b235
commit c323468d73
6 changed files with 31 additions and 31 deletions

View File

@@ -99,8 +99,8 @@ This provider exposes quite a few provider-specific configuration options:
* `password` - Password to access Libvirt.
* `id_ssh_key_file` - The id ssh key file name to access Libvirt (eg: id_dsa or id_rsa or ... in the user .ssh directory)
* `storage_pool_name` - Libvirt storage pool name, where box image and instance snapshots will be stored.
* `default_network_name` - Libvirt default network name. If not specified the default network name is 'vagrant-libvirt'.
* `default_network_address` - Libvirt default network address. Must include the address and subnet mask. If not specified the default is '192.168.121.0/24'.
* `management_network_name` - Name of libvirt network to which all VMs will be connected. If not specified the default is 'vagrant-libvirt'.
* `management_network_address` - Address of network to which all VMs will be connected. Must include the address and subnet mask. If not specified the default is '192.168.121.0/24'.
### Domain Specific Options

View File

@@ -16,7 +16,7 @@ module VagrantPlugins
def initialize(app, env)
@logger = Log4r::Logger.new('vagrant_libvirt::action::create_network_interfaces')
@default_network_name = env[:machine].provider_config.default_network_name
@management_network_name = env[:machine].provider_config.management_network_name
@app = app
end
@@ -161,13 +161,13 @@ module VagrantPlugins
end
end
# the default network always gets attached to slot 0
# the management network always gets attached to slot 0
# because the first network is of type forwarded_port.
# this is confusing.
# TODO only iterate over networks of type private_network
# and prepend the default network to that list
@logger.debug "Did not find network so using default of #{@default_network_name}"
return @default_network_name
# and prepend the management network to that list
@logger.debug "Did not find network so using default of #{@management_network_name}"
return @management_network_name
end
end
end

View File

@@ -28,35 +28,35 @@ module VagrantPlugins
def call(env)
default_network_name = env[:machine].provider_config.default_network_name
default_network_address = env[:machine].provider_config.default_network_address
@logger.info "Using #{default_network_name} at #{default_network_address} as the default network"
management_network_name = env[:machine].provider_config.management_network_name
management_network_address = env[:machine].provider_config.management_network_address
@logger.info "Using #{management_network_name} at #{management_network_address} as the management network"
begin
default_network_ip = IPAddr.new(default_network_address)
management_network_ip = IPAddr.new(management_network_address)
rescue ArgumentError
raise Errors::DefaultNetworkError,
error_message: "#{default_network_address} is not a valid IP address"
raise Errors::ManagementNetworkError,
error_message: "#{management_network_address} is not a valid IP address"
end
# capture address into $1 and mask into $2
default_network_ip.inspect =~ /IPv4:(.*)\/(.*)>/
management_network_ip.inspect =~ /IPv4:(.*)\/(.*)>/
if $2 == '255.255.255.255'
raise Errors::DefaultNetworkError,
error_message: "#{default_network_address} does not include both an address and subnet mask"
raise Errors::ManagementNetworkError,
error_message: "#{management_network_address} does not include both an address and subnet mask"
end
default_network_options = {
network_name: default_network_name,
management_network_options = {
network_name: management_network_name,
ip: $1,
netmask: $2,
dhcp_enabled: true,
forward_mode: 'nat',
}
# add default network to list of networks to check
networks = [ default_network_options ]
# add management network to list of networks to check
networks = [ management_network_options ]
env[:machine].config.vm.networks.each do |type, original_options|
# There are two other types public network and port forwarding,
@@ -146,7 +146,7 @@ module VagrantPlugins
# Throw an error if dhcp setting for an existing network does not
# match what was configured in the vagrantfile
# since we always enable dhcp for the default network
# since we always enable dhcp for the management network
# this ensures we wont start a vm vagrant cant reach
def verify_dhcp
unless @options[:dhcp_enabled] == @interface_network[:dhcp_enabled]

View File

@@ -26,8 +26,8 @@ module VagrantPlugins
attr_accessor :storage_pool_name
# Libvirt default network
attr_accessor :default_network_name
attr_accessor :default_network_address
attr_accessor :management_network_name
attr_accessor :management_network_address
# Domain specific settings used while creating new domain.
attr_accessor :memory
@@ -45,8 +45,8 @@ module VagrantPlugins
@password = UNSET_VALUE
@id_ssh_key_file = UNSET_VALUE
@storage_pool_name = UNSET_VALUE
@default_network_name = UNSET_VALUE
@default_network_address = UNSET_VALUE
@management_network_name = UNSET_VALUE
@management_network_address = UNSET_VALUE
# Domain specific settings.
@memory = UNSET_VALUE
@@ -65,8 +65,8 @@ module VagrantPlugins
@password = nil if @password == UNSET_VALUE
@id_ssh_key_file = 'id_rsa' if @id_ssh_key_file == UNSET_VALUE
@storage_pool_name = 'default' if @storage_pool_name == UNSET_VALUE
@default_network_name = 'vagrant-libvirt' if @default_network_name == UNSET_VALUE
@default_network_address = '192.168.121.0/24' if @default_network_address == UNSET_VALUE
@management_network_name = 'vagrant-libvirt' if @management_network_name == UNSET_VALUE
@management_network_address = '192.168.121.0/24' if @management_network_address == UNSET_VALUE
# Domain specific settings.
@memory = 512 if @memory == UNSET_VALUE

View File

@@ -69,8 +69,8 @@ module VagrantPlugins
end
# Network exceptions
class DefaultNetworkError < VagrantLibvirtError
error_key(:default_network_error)
class ManagementNetworkError < VagrantLibvirtError
error_key(:management_network_error)
end
class NetworkNameAndAddressMismatch < VagrantLibvirtError

View File

@@ -101,8 +101,8 @@ en:
Error while attaching new device to domain. %{error_message}
no_ip_address_error: |-
No IP address found.
default_network_error: |-
Error in specification of default network: %{error_message}.
management_network_error: |-
Error in specification of management network: %{error_message}.
network_name_and_address_mismatch: |-
Address %{ip_address} does not match with network name %{network_name}.
Please fix your configuration and run vagrant again.