vagrant-libvirt 0.0.26 → 0.0.27
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/README.md +21 -7
- data/lib/vagrant-libvirt/action/create_domain.rb +24 -14
- data/lib/vagrant-libvirt/action/create_networks.rb +12 -9
- data/lib/vagrant-libvirt/action/destroy_domain.rb +17 -1
- data/lib/vagrant-libvirt/action/handle_box_image.rb +1 -5
- data/lib/vagrant-libvirt/action/read_ssh_info.rb +3 -1
- data/lib/vagrant-libvirt/action/read_state.rb +9 -2
- data/lib/vagrant-libvirt/action/remove_libvirt_image.rb +20 -0
- data/lib/vagrant-libvirt/action/set_name_of_domain.rb +1 -1
- data/lib/vagrant-libvirt/action.rb +8 -7
- data/lib/vagrant-libvirt/config.rb +2 -1
- data/lib/vagrant-libvirt/plugin.rb +5 -1
- data/lib/vagrant-libvirt/templates/private_network.xml.erb +7 -0
- data/lib/vagrant-libvirt/version.rb +1 -1
- data/tools/create_box.sh +5 -1
- data/vagrant-libvirt.gemspec +1 -3
- metadata +6 -19
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: c633bc158ce861be39e58bc78d855adacc3b4b81
|
4
|
+
data.tar.gz: 85417be2e4286096a08c3b64a79c1e23619cfa3e
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: c8bdb50440ec7ad74d3cebd4dfcc0f78e41ec61c545ad59635f909f2e10b5201e77d42853e03529c9caff75b46cb56f3603c5f4421d2df172989948215c92464
|
7
|
+
data.tar.gz: 74b16894928781624bda71679ae7b92d403241536d67074e046c517f55813fe793d70447f8debaf7a3887e599d99d57b282d432a21a922db546de878f4f5d0d8
|
data/README.md
CHANGED
@@ -46,7 +46,7 @@ missing development libraries for libxslt, libxml2 and libvirt.
|
|
46
46
|
|
47
47
|
In Ubuntu, Debian, ...
|
48
48
|
```
|
49
|
-
$ sudo apt-get install libxslt-dev libxml2-dev libvirt-dev
|
49
|
+
$ sudo apt-get install libxslt-dev libxml2-dev libvirt-dev zlib1g-dev
|
50
50
|
```
|
51
51
|
|
52
52
|
In RedHat, Centos, Fedora, ...
|
@@ -64,6 +64,8 @@ a `config.vm.provider` block. So first, add Libvirt box using any name you
|
|
64
64
|
want. This is just an example of Libvirt CentOS 6.4 box available:
|
65
65
|
|
66
66
|
```
|
67
|
+
vagrant box add centos64 http://citozin.com/fedora21.box
|
68
|
+
# or
|
67
69
|
vagrant box add centos64 http://citozin.com/centos64.box
|
68
70
|
```
|
69
71
|
|
@@ -121,7 +123,7 @@ Although it should work without any configuration for most people, this provider
|
|
121
123
|
* `connect_via_ssh` - If use ssh tunnel to connect to Libvirt.
|
122
124
|
* `username` - Username and password to access Libvirt.
|
123
125
|
* `password` - Password to access Libvirt.
|
124
|
-
* `id_ssh_key_file` - If not nil, uses this ssh private key to access Libvirt. Default is $HOME/.ssh/id_rsa. Prepends $HOME/.ssh/ if no directory.
|
126
|
+
* `id_ssh_key_file` - If not nil, uses this ssh private key to access Libvirt. Default is $HOME/.ssh/id_rsa. Prepends $HOME/.ssh/ if no directory.
|
125
127
|
* `socket` - Path to the libvirt unix socket (eg: /var/run/libvirt/libvirt-sock)
|
126
128
|
* `uri` - For advanced usage. Directly specifies what libvirt connection URI vagrant-libvirt should use. Overrides all other connection configuration options.
|
127
129
|
|
@@ -152,7 +154,7 @@ end
|
|
152
154
|
* `initrd` - To specify the initramfs/initrd to use for the guest. Equivalent to qemu `-initrd`.
|
153
155
|
* `random_hostname` - To create a domain name with extra information on the end to prevent hostname conflicts.
|
154
156
|
* `cmd_line` - Arguments passed on to the guest kernel initramfs or initrd to use. Equivalent to qemu `-append`.
|
155
|
-
* `graphics_type` - Sets the protocol used to expose the guest display. Defaults to `vnc`. Possible values are "sdl", "curses", "none", "gtk", or "
|
157
|
+
* `graphics_type` - Sets the protocol used to expose the guest display. Defaults to `vnc`. Possible values are "sdl", "curses", "none", "gtk", "vnc" or "spice".
|
156
158
|
* `graphics_port` - Sets the port for the display protocol to bind to. Defaults to 5900.
|
157
159
|
* `graphics_ip` - Sets the IP for the display protocol to bind to. Defaults to "127.0.0.0.1".
|
158
160
|
* `graphics_passwd` - Sets the password for the display protocol. Working for vnc and spice. by default working without passsword.
|
@@ -238,8 +240,18 @@ starts with 'libvirt__' string. Here is a list of those options:
|
|
238
240
|
network 'default' is used.
|
239
241
|
* `:libvirt__netmask` - Used only together with `:ip` option. Default is
|
240
242
|
'255.255.255.0'.
|
243
|
+
* `:libvirt__host_ip` - Adress to use for the host (not guest).
|
244
|
+
Default is first possible address (after network address).
|
241
245
|
* `:libvirt__dhcp_enabled` - If DHCP will offer addresses, or not. Used only
|
242
246
|
when creating new network. Default is true.
|
247
|
+
* `:libvirt__dhcp_start` - First address given out via DHCP.
|
248
|
+
Default is third address in range (after network name and gateway).
|
249
|
+
* `:libvirt__dhcp_stop` - Last address given out via DHCP.
|
250
|
+
Default is last possible address in range (before broadcast address).
|
251
|
+
* `:libvirt__dhcp_bootp_file` - The file to be used for the boot image.
|
252
|
+
Used only when dhcp is enabled.
|
253
|
+
* `:libvirt__dhcp_bootp_server` - The server that runs the DHCP server.
|
254
|
+
Used only when dhcp is enabled.By default is the same host that runs the DHCP server.
|
243
255
|
* `:libvirt__adapter` - Number specifiyng sequence number of interface.
|
244
256
|
* `:libvirt__forward_mode` - Specify one of `veryisolated`, `none`, `nat` or `route` options.
|
245
257
|
This option is used only when creating new network. Mode `none` will create
|
@@ -298,6 +310,7 @@ You can create and attach additional disks to a VM via `libvirt.storage :file`.
|
|
298
310
|
* `type` - Type of disk image to create. Defaults to *qcow2*.
|
299
311
|
* `bus` - Type of bus to connect device to. Defaults to *virtio*.
|
300
312
|
* `cache` - Cache mode to use, e.g. `none`, `writeback`, `writethrough` (see the [libvirt documentation for possible values](http://libvirt.org/formatdomain.html#elementsDisks) or [here](https://www.suse.com/documentation/sles11/book_kvm/data/sect1_chapter_book_kvm.html) for a fuller explanation). Defaults to *default*.
|
313
|
+
* `allow_existing` - Set to true if you want to allow the VM to use a pre-existing disk. This is useful for sharing disks between VMs, e.g. in order to simulate shared SAN storage. Shared disks removed only manualy.If not exists - will created. If exists - using existed.
|
301
314
|
|
302
315
|
The following example creates two additional disks.
|
303
316
|
|
@@ -385,12 +398,13 @@ The box is a tarball containing:
|
|
385
398
|
* `Vagrantfile` that does default settings for the provider-specific configuration for this provider.
|
386
399
|
|
387
400
|
## Create Box
|
388
|
-
|
401
|
+
To create a vagrant-libvirt box from a qcow2 image, run `create_box.sh` (located in the tools directory):
|
389
402
|
|
390
|
-
|
403
|
+
```$ create_box.sh ubuntu14.qcow2```
|
391
404
|
|
392
|
-
|
393
|
-
|
405
|
+
You can also create a box by using [Packer](https://packer.io). Packer templates for use with vagrant-libvirt are available at https://github.com/jakobadam/packer-qemu-templates. After cloning that project you can build a vagrant-libvirt box by running:
|
406
|
+
|
407
|
+
``` ~/packer-qemu-templates/ubuntu$ packer build ubuntu-14.04-server-amd64-vagrant.json```
|
394
408
|
|
395
409
|
## Development
|
396
410
|
|
@@ -84,19 +84,23 @@ module VagrantPlugins
|
|
84
84
|
|
85
85
|
disk[:absolute_path] = storage_prefix + disk[:path]
|
86
86
|
|
87
|
-
|
88
|
-
|
89
|
-
|
90
|
-
|
91
|
-
|
92
|
-
|
93
|
-
|
94
|
-
|
95
|
-
|
96
|
-
|
97
|
-
|
98
|
-
|
99
|
-
|
87
|
+
if env[:libvirt_compute].volumes.all.select {|x| x.name == disk[:name] }.empty?
|
88
|
+
# make the disk. equivalent to:
|
89
|
+
# qemu-img create -f qcow2 <path> 5g
|
90
|
+
begin
|
91
|
+
env[:libvirt_compute].volumes.create(
|
92
|
+
name: disk[:name],
|
93
|
+
format_type: disk[:type],
|
94
|
+
path: disk[:absolute_path],
|
95
|
+
capacity: disk[:size],
|
96
|
+
#:allocation => ?,
|
97
|
+
pool_name: @storage_pool_name)
|
98
|
+
rescue Fog::Errors::Error => e
|
99
|
+
raise Errors::FogDomainVolumeCreateError,
|
100
|
+
error_message: e.message
|
101
|
+
end
|
102
|
+
else
|
103
|
+
disk[:preexisting] = true
|
100
104
|
end
|
101
105
|
end
|
102
106
|
|
@@ -123,16 +127,22 @@ module VagrantPlugins
|
|
123
127
|
if @disks.length > 0
|
124
128
|
env[:ui].info(" -- Disks: #{_disks_print(@disks)}")
|
125
129
|
end
|
130
|
+
|
126
131
|
@disks.each do |disk|
|
127
|
-
|
132
|
+
msg = " -- Disk(#{disk[:device]}): #{disk[:absolute_path]}"
|
133
|
+
msg += " (shared. Remove only manualy)" if disk[:allow_existing]
|
134
|
+
msg += " Not created - using existed." if disk[:preexisting]
|
135
|
+
env[:ui].info(msg)
|
128
136
|
end
|
129
137
|
|
130
138
|
if @cdroms.length > 0
|
131
139
|
env[:ui].info(" -- CDROMS: #{_cdroms_print(@cdroms)}")
|
132
140
|
end
|
141
|
+
|
133
142
|
@cdroms.each do |cdrom|
|
134
143
|
env[:ui].info(" -- CDROM(#{cdrom[:dev]}): #{cdrom[:path]}")
|
135
144
|
end
|
145
|
+
|
136
146
|
env[:ui].info(" -- Command line : #{@cmd_line}")
|
137
147
|
|
138
148
|
# Create libvirt domain.
|
@@ -44,7 +44,8 @@ module VagrantPlugins
|
|
44
44
|
# Get a list of all (active and inactive) libvirt networks. This
|
45
45
|
# list is used throughout this class and should be easier to
|
46
46
|
# process than libvirt API calls.
|
47
|
-
@available_networks = libvirt_networks(
|
47
|
+
@available_networks = libvirt_networks(
|
48
|
+
env[:libvirt_compute].client)
|
48
49
|
|
49
50
|
# Prepare a hash describing network for this specific interface.
|
50
51
|
@interface_network = {
|
@@ -56,7 +57,7 @@ module VagrantPlugins
|
|
56
57
|
created: false,
|
57
58
|
active: false,
|
58
59
|
autostart: false,
|
59
|
-
libvirt_network: nil
|
60
|
+
libvirt_network: nil
|
60
61
|
}
|
61
62
|
|
62
63
|
if @options[:ip]
|
@@ -121,7 +122,8 @@ module VagrantPlugins
|
|
121
122
|
# Set IP address of network (actually bridge). It will be used as
|
122
123
|
# gateway address for machines connected to this network.
|
123
124
|
net = IPAddr.new(net_address)
|
124
|
-
|
125
|
+
# Default to first address (after network name)
|
126
|
+
@interface_network[:ip_address] = @options[:host_ip].nil? ? net.to_range.begin.succ : IPAddr.new(@options[:host_ip])
|
125
127
|
|
126
128
|
# Is there an available network matching to configured ip
|
127
129
|
# address?
|
@@ -235,16 +237,17 @@ module VagrantPlugins
|
|
235
237
|
network_address << "#{@interface_network[:netmask]}"
|
236
238
|
net = IPAddr.new(network_address)
|
237
239
|
|
238
|
-
# First is address of network, second is gateway.
|
239
|
-
#
|
240
|
-
# addresses after network address.
|
240
|
+
# First is address of network, second is gateway (by default).
|
241
|
+
# So start the range two addresses after network address by default.
|
241
242
|
# TODO: Detect if this IP is not set on the interface.
|
242
|
-
start_address = net.to_range.begin.succ
|
243
|
+
start_address = @options[:dhcp_start] || net.to_range.begin.succ
|
243
244
|
|
244
|
-
# Stop address must not be broadcast.
|
245
|
-
stop_address = net.to_range.end & IPAddr.new('255.255.255.254')
|
245
|
+
# Default to last possible address. (Stop address must not be broadcast address.)
|
246
|
+
stop_address = @options[:dhcp_stop] || (net.to_range.end & IPAddr.new('255.255.255.254'))
|
246
247
|
|
247
248
|
@network_dhcp_enabled = true
|
249
|
+
@network_dhcp_bootp_file = @options[:dhcp_bootp_file]
|
250
|
+
@network_dhcp_bootp_server = @options[:dhcp_bootp_server]
|
248
251
|
@network_range_start = start_address
|
249
252
|
@network_range_stop = stop_address
|
250
253
|
else
|
@@ -28,7 +28,23 @@ module VagrantPlugins
|
|
28
28
|
end
|
29
29
|
|
30
30
|
domain = env[:libvirt_compute].servers.get(env[:machine].id.to_s)
|
31
|
-
|
31
|
+
|
32
|
+
if env[:machine].provider_config.disks.empty?
|
33
|
+
# if using default configuration of disks
|
34
|
+
domain.destroy(destroy_volumes: true)
|
35
|
+
else
|
36
|
+
domain.destroy(destroy_volumes: false)
|
37
|
+
|
38
|
+
env[:machine].provider_config.disks.each do |disk|
|
39
|
+
next if disk[:allow_existing] # shared disks remove only manualy or ???
|
40
|
+
diskname = libvirt_domain.name + "-" + disk[:device] + ".raw"
|
41
|
+
# diskname is uniq
|
42
|
+
env[:libvirt_compute].volumes.all.select{|x| x.name == diskname }.first.destroy
|
43
|
+
end
|
44
|
+
|
45
|
+
#remove root storage
|
46
|
+
env[:libvirt_compute].volumes.all.select{|x| x.name == libvirt_domain.name + ".img" }.first.destroy
|
47
|
+
end
|
32
48
|
|
33
49
|
@app.call(env)
|
34
50
|
end
|
@@ -34,7 +34,9 @@ module VagrantPlugins
|
|
34
34
|
ip_address = nil
|
35
35
|
domain.wait_for(2) {
|
36
36
|
addresses.each_pair do |type, ip|
|
37
|
-
|
37
|
+
# Multiple leases are separated with a newline, return only
|
38
|
+
# the most recent address
|
39
|
+
ip_address = ip[0].split("\n").first if ip[0] != nil
|
38
40
|
end
|
39
41
|
ip_address != nil
|
40
42
|
}
|
@@ -27,10 +27,17 @@ module VagrantPlugins
|
|
27
27
|
end
|
28
28
|
# Find the machine
|
29
29
|
begin
|
30
|
+
# Wait for libvirt to shutdown the domain
|
31
|
+
while libvirt.servers.get(machine.id).state.to_sym == :'shutting-down' do
|
32
|
+
@logger.info('Waiting on the machine to shut down...')
|
33
|
+
sleep 1
|
34
|
+
end
|
35
|
+
|
30
36
|
server = libvirt.servers.get(machine.id)
|
31
|
-
|
37
|
+
|
38
|
+
if server.nil? || server.state.to_sym == :terminated
|
32
39
|
# The machine can't be found
|
33
|
-
@logger.info('Machine
|
40
|
+
@logger.info('Machine terminated, assuming it got destroyed.')
|
34
41
|
machine.id = nil
|
35
42
|
return :not_created
|
36
43
|
end
|
@@ -0,0 +1,20 @@
|
|
1
|
+
require 'log4r'
|
2
|
+
|
3
|
+
module VagrantPlugins
|
4
|
+
module ProviderLibvirt
|
5
|
+
module Action
|
6
|
+
class RemoveLibvirtImage
|
7
|
+
def initialize(app, env)
|
8
|
+
@logger = Log4r::Logger.new("vagrant_libvirt::action::remove_libvirt_image")
|
9
|
+
@app = app
|
10
|
+
end
|
11
|
+
|
12
|
+
def call(env)
|
13
|
+
env[:ui].info("Vagrant-libvirt plugin removed box only from you LOCAL ~/.vagrant/boxes directory")
|
14
|
+
env[:ui].info("From libvirt storage pool you have to delete image manualy(virsh, virt-manager or by any other tool)")
|
15
|
+
@app.call(env)
|
16
|
+
end
|
17
|
+
end
|
18
|
+
end
|
19
|
+
end
|
20
|
+
end
|
@@ -8,6 +8,13 @@ module VagrantPlugins
|
|
8
8
|
include Vagrant::Action::Builtin
|
9
9
|
@logger = Log4r::Logger.new('vagrant_libvirt::action')
|
10
10
|
|
11
|
+
# remove image from libvirt storage pool
|
12
|
+
def self.remove_libvirt_image
|
13
|
+
Vagrant::Action::Builder.new.tap do |b|
|
14
|
+
b.use RemoveLibvirtImage
|
15
|
+
end
|
16
|
+
end
|
17
|
+
|
11
18
|
# This action is called to bring the box up from nothing.
|
12
19
|
def self.action_up
|
13
20
|
Vagrant::Action::Builder.new.tap do |b|
|
@@ -27,7 +34,6 @@ module VagrantPlugins
|
|
27
34
|
b2.use CreateNetworks
|
28
35
|
b2.use CreateNetworkInterfaces
|
29
36
|
|
30
|
-
|
31
37
|
b2.use PrepareNFSValidIds
|
32
38
|
b2.use SyncedFolderCleanup
|
33
39
|
b2.use SyncedFolders
|
@@ -38,9 +44,6 @@ module VagrantPlugins
|
|
38
44
|
b2.use StartDomain
|
39
45
|
b2.use WaitTillUp
|
40
46
|
|
41
|
-
|
42
|
-
|
43
|
-
|
44
47
|
b2.use ForwardPorts
|
45
48
|
|
46
49
|
b2.use PrepareNFSSettings
|
@@ -83,7 +86,6 @@ module VagrantPlugins
|
|
83
86
|
b3.use SyncedFolderCleanup
|
84
87
|
b3.use SyncedFolders
|
85
88
|
|
86
|
-
|
87
89
|
# Start it..
|
88
90
|
b3.use StartDomain
|
89
91
|
|
@@ -91,11 +93,9 @@ module VagrantPlugins
|
|
91
93
|
# so wait for dhcp lease and store IP into machines data_dir.
|
92
94
|
b3.use WaitTillUp
|
93
95
|
|
94
|
-
|
95
96
|
b3.use ForwardPorts
|
96
97
|
b3.use PrepareNFSSettings
|
97
98
|
b3.use ShareFolders
|
98
|
-
|
99
99
|
end
|
100
100
|
end
|
101
101
|
end
|
@@ -331,6 +331,7 @@ module VagrantPlugins
|
|
331
331
|
autoload :HaltDomain, action_root.join('halt_domain')
|
332
332
|
autoload :HandleBoxImage, action_root.join('handle_box_image')
|
333
333
|
autoload :HandleStoragePool, action_root.join('handle_storage_pool')
|
334
|
+
autoload :RemoveLibvirtImage, action_root.join('remove_libvirt_image')
|
334
335
|
autoload :IsCreated, action_root.join('is_created')
|
335
336
|
autoload :IsRunning, action_root.join('is_running')
|
336
337
|
autoload :IsSuspended, action_root.join('is_suspended')
|
@@ -200,6 +200,7 @@ module VagrantPlugins
|
|
200
200
|
:path => options[:path],
|
201
201
|
:bus => options[:bus],
|
202
202
|
:cache => options[:cache] || 'default',
|
203
|
+
:allow_existing => options[:allow_existing],
|
203
204
|
}
|
204
205
|
|
205
206
|
@disks << disk # append
|
@@ -286,7 +287,7 @@ module VagrantPlugins
|
|
286
287
|
@graphics_type = 'vnc' if @graphics_type == UNSET_VALUE
|
287
288
|
@graphics_autoport = 'yes' if @graphics_port == UNSET_VALUE
|
288
289
|
@graphics_autoport = 'no' if @graphics_port != UNSET_VALUE
|
289
|
-
if (@graphics_type != 'vnc' && @
|
290
|
+
if (@graphics_type != 'vnc' && @graphics_type != 'spice') ||
|
290
291
|
@graphics_passwd == UNSET_VALUE
|
291
292
|
@graphics_passwd = nil
|
292
293
|
end
|
@@ -32,6 +32,11 @@ module VagrantPlugins
|
|
32
32
|
Provider
|
33
33
|
end
|
34
34
|
|
35
|
+
action_hook(:remove_libvirt_image) do |hook|
|
36
|
+
hook.after Vagrant::Action::Builtin::BoxRemove, Action.remove_libvirt_image
|
37
|
+
end
|
38
|
+
|
39
|
+
|
35
40
|
guest_capability('linux', 'mount_p9_shared_folder') do
|
36
41
|
require_relative 'cap/mount_p9'
|
37
42
|
Cap::MountP9
|
@@ -88,4 +93,3 @@ module VagrantPlugins
|
|
88
93
|
end
|
89
94
|
end
|
90
95
|
end
|
91
|
-
|
@@ -15,6 +15,13 @@
|
|
15
15
|
<% if @network_dhcp_enabled %>
|
16
16
|
<dhcp>
|
17
17
|
<range start="<%= @network_range_start %>" end="<%= @network_range_stop %>" />
|
18
|
+
<% if @network_dhcp_bootp_file %>
|
19
|
+
<% if @network_dhcp_bootp_server %>
|
20
|
+
<bootp file="<%= @network_dhcp_bootp_file %>" server="<%= @network_dhcp_bootp_server %>" />
|
21
|
+
<% else %>
|
22
|
+
<bootp file="<%= @network_dhcp_bootp_file %>" />
|
23
|
+
<% end %>
|
24
|
+
<% end %>
|
18
25
|
</dhcp>
|
19
26
|
<% end %>
|
20
27
|
</ip>
|
data/tools/create_box.sh
CHANGED
@@ -3,7 +3,7 @@
|
|
3
3
|
|
4
4
|
error() {
|
5
5
|
local msg="${1}"
|
6
|
-
echo "==> ${msg}"
|
6
|
+
echo "==> ERROR: ${msg}"
|
7
7
|
exit 1
|
8
8
|
}
|
9
9
|
|
@@ -70,6 +70,10 @@ if [[ -n $(backing "$IMG") ]]; then
|
|
70
70
|
cp "$IMG" "$TMP_IMG"
|
71
71
|
rebase "$TMP_IMG"
|
72
72
|
else
|
73
|
+
if fuser -s "$IMG"; then
|
74
|
+
error "Image '$IMG_BASENAME' is used by another process"
|
75
|
+
fi
|
76
|
+
|
73
77
|
# move the image to get a speed-up and use less space on disk
|
74
78
|
trap 'mv "$TMP_IMG" "$IMG"; rm -rf "$TMP_DIR"' EXIT
|
75
79
|
mv "$IMG" "$TMP_IMG"
|
data/vagrant-libvirt.gemspec
CHANGED
@@ -20,10 +20,8 @@ Gem::Specification.new do |gem|
|
|
20
20
|
gem.add_development_dependency "rspec-expectations", "~> 2.12.1"
|
21
21
|
gem.add_development_dependency "rspec-mocks", "~> 2.12.1"
|
22
22
|
|
23
|
-
gem.add_runtime_dependency 'fog', '~> 1
|
24
|
-
gem.add_runtime_dependency 'ruby-libvirt', '~> 0.4'
|
23
|
+
gem.add_runtime_dependency 'fog-libvirt', '~> 0.0.1'
|
25
24
|
gem.add_runtime_dependency 'nokogiri', '~> 1.6.0'
|
26
25
|
|
27
26
|
gem.add_development_dependency 'rake'
|
28
27
|
end
|
29
|
-
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: vagrant-libvirt
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.0.
|
4
|
+
version: 0.0.27
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Lukas Stanek
|
@@ -10,7 +10,7 @@ authors:
|
|
10
10
|
autorequire:
|
11
11
|
bindir: bin
|
12
12
|
cert_chain: []
|
13
|
-
date: 2015-
|
13
|
+
date: 2015-05-10 00:00:00.000000000 Z
|
14
14
|
dependencies:
|
15
15
|
- !ruby/object:Gem::Dependency
|
16
16
|
name: rspec-core
|
@@ -55,33 +55,19 @@ dependencies:
|
|
55
55
|
- !ruby/object:Gem::Version
|
56
56
|
version: 2.12.1
|
57
57
|
- !ruby/object:Gem::Dependency
|
58
|
-
name: fog
|
58
|
+
name: fog-libvirt
|
59
59
|
requirement: !ruby/object:Gem::Requirement
|
60
60
|
requirements:
|
61
61
|
- - "~>"
|
62
62
|
- !ruby/object:Gem::Version
|
63
|
-
version:
|
63
|
+
version: 0.0.1
|
64
64
|
type: :runtime
|
65
65
|
prerelease: false
|
66
66
|
version_requirements: !ruby/object:Gem::Requirement
|
67
67
|
requirements:
|
68
68
|
- - "~>"
|
69
69
|
- !ruby/object:Gem::Version
|
70
|
-
version:
|
71
|
-
- !ruby/object:Gem::Dependency
|
72
|
-
name: ruby-libvirt
|
73
|
-
requirement: !ruby/object:Gem::Requirement
|
74
|
-
requirements:
|
75
|
-
- - "~>"
|
76
|
-
- !ruby/object:Gem::Version
|
77
|
-
version: '0.4'
|
78
|
-
type: :runtime
|
79
|
-
prerelease: false
|
80
|
-
version_requirements: !ruby/object:Gem::Requirement
|
81
|
-
requirements:
|
82
|
-
- - "~>"
|
83
|
-
- !ruby/object:Gem::Version
|
84
|
-
version: '0.4'
|
70
|
+
version: 0.0.1
|
85
71
|
- !ruby/object:Gem::Dependency
|
86
72
|
name: nokogiri
|
87
73
|
requirement: !ruby/object:Gem::Requirement
|
@@ -154,6 +140,7 @@ files:
|
|
154
140
|
- lib/vagrant-libvirt/action/read_mac_addresses.rb
|
155
141
|
- lib/vagrant-libvirt/action/read_ssh_info.rb
|
156
142
|
- lib/vagrant-libvirt/action/read_state.rb
|
143
|
+
- lib/vagrant-libvirt/action/remove_libvirt_image.rb
|
157
144
|
- lib/vagrant-libvirt/action/resume_domain.rb
|
158
145
|
- lib/vagrant-libvirt/action/set_name_of_domain.rb
|
159
146
|
- lib/vagrant-libvirt/action/share_folders.rb
|