Merge pull request #216 from nicot/master

Add random hostname option
This commit is contained in:
Dmitry Vasilets
2014-09-04 18:17:55 +02:00
5 changed files with 23 additions and 10 deletions

View File

@@ -35,13 +35,13 @@ module VagrantPlugins
end
# build domain name
# avoids `domain about to create is already taken`
# random_hostname option avoids
# `domain about to create is already taken`
# parsable and sortable by epoch time
# @example
# development-centos-6-chef-11_1404488971_3b7a569e2fd7c554b852
# @return [String] libvirt domain name
def build_domain_name(env)
postfix = "#{Time.now.utc.to_i}_#{SecureRandom.hex(10)}"
config = env[:machine].provider_config
domain_name =
if config.default_prefix.nil?
@@ -49,8 +49,11 @@ module VagrantPlugins
else
config.default_prefix.to_s
end
domain_name << '_'
domain_name << env[:machine].name.to_s
domain_name.gsub!(/[^-a-z0-9_]/i, '')
domain_name << "_#{postfix}"
domain_name << "_#{Time.now.utc.to_i}_#{SecureRandom.hex(10)}" if config.random_hostname
domain_name
end
end
@@ -58,4 +61,3 @@ module VagrantPlugins
end
end
end

View File

@@ -40,6 +40,9 @@ module VagrantPlugins
# be stored.
attr_accessor :storage_pool_name
# Turn on to prevent hostname conflicts
attr_accessor :random_hostname
# Libvirt default network
attr_accessor :management_network_name
attr_accessor :management_network_address
@@ -70,6 +73,7 @@ module VagrantPlugins
@password = UNSET_VALUE
@id_ssh_key_file = UNSET_VALUE
@storage_pool_name = UNSET_VALUE
@random_hostname = UNSET_VALUE
@management_network_name = UNSET_VALUE
@management_network_address = UNSET_VALUE
@@ -182,6 +186,7 @@ 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
@random_hostname = false if @random_hostname == 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