mirror of
https://github.com/vagrant-libvirt/vagrant-libvirt.git
synced 2025-02-25 18:55:27 -06:00
parent
5f7841ffff
commit
d5ba63d413
@ -81,6 +81,7 @@ module VagrantPlugins
|
||||
|
||||
# Storage
|
||||
@storage_pool_name = config.storage_pool_name
|
||||
@snapshot_pool_name = config.snapshot_pool_name
|
||||
@disks = config.disks
|
||||
@cdroms = config.cdroms
|
||||
|
||||
@ -119,9 +120,15 @@ module VagrantPlugins
|
||||
|
||||
# Get path to domain image from the storage pool selected if we have a box.
|
||||
if env[:machine].config.vm.box
|
||||
if @snapshot_pool_name != 'default'
|
||||
pool_name = @snapshot_pool_name
|
||||
else
|
||||
pool_name = @storage_pool_name
|
||||
end
|
||||
@logger.debug "Search for volume in pool: #{pool_name}"
|
||||
actual_volumes =
|
||||
env[:machine].provider.driver.connection.volumes.all.select do |x|
|
||||
x.pool_name == @storage_pool_name
|
||||
x.pool_name == pool_name
|
||||
end
|
||||
domain_volume = ProviderLibvirt::Util::Collection.find_matching(
|
||||
actual_volumes, "#{@name}.img"
|
||||
|
@ -71,9 +71,15 @@ module VagrantPlugins
|
||||
Nokogiri::XML::Node::SaveOptions::NO_EMPTY_TAGS |
|
||||
Nokogiri::XML::Node::SaveOptions::FORMAT
|
||||
)
|
||||
if config.snapshot_pool_name != 'default'
|
||||
pool_name = config.snapshot_pool_name
|
||||
else
|
||||
pool_name = config.storage_pool_name
|
||||
end
|
||||
@logger.debug "Using pool #{pool_name} for base box snapshot"
|
||||
domain_volume = env[:machine].provider.driver.connection.volumes.create(
|
||||
xml: xml,
|
||||
pool_name: config.storage_pool_name
|
||||
pool_name: pool_name
|
||||
)
|
||||
rescue Fog::Errors::Error => e
|
||||
raise Errors::FogDomainVolumeCreateError,
|
||||
|
@ -42,6 +42,9 @@ module VagrantPlugins
|
||||
attr_accessor :storage_pool_name
|
||||
attr_accessor :storage_pool_path
|
||||
|
||||
# Libvirt storage pool where the base image snapshot shall be stored
|
||||
attr_accessor :snapshot_pool_name
|
||||
|
||||
# Turn on to prevent hostname conflicts
|
||||
attr_accessor :random_hostname
|
||||
|
||||
@ -170,6 +173,7 @@ module VagrantPlugins
|
||||
@password = UNSET_VALUE
|
||||
@id_ssh_key_file = UNSET_VALUE
|
||||
@storage_pool_name = UNSET_VALUE
|
||||
@snapshot_pool_name = UNSET_VALUE
|
||||
@random_hostname = UNSET_VALUE
|
||||
@management_network_device = UNSET_VALUE
|
||||
@management_network_name = UNSET_VALUE
|
||||
@ -638,6 +642,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
|
||||
@snapshot_pool_name = 'default' if @snapshot_pool_name == UNSET_VALUE
|
||||
@storage_pool_path = nil if @storage_pool_path == UNSET_VALUE
|
||||
@random_hostname = false if @random_hostname == UNSET_VALUE
|
||||
@management_network_device = 'virbr0' if @management_network_device == UNSET_VALUE
|
||||
|
Loading…
Reference in New Issue
Block a user