fog-kubevirt 1.2.3 → 1.2.4
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/lib/fog/kubevirt/compute/models/servers.rb +9 -0
- data/lib/fog/kubevirt/compute/models/vm_base.rb +4 -4
- data/lib/fog/kubevirt/compute/models/vm_parser.rb +4 -4
- data/lib/fog/kubevirt/compute/models/vms.rb +9 -0
- data/lib/fog/kubevirt/compute/models/volume.rb +6 -6
- data/lib/fog/kubevirt/compute/requests/get_vm.rb +13 -1
- data/lib/fog/kubevirt/compute/requests/list_volumes.rb +1 -1
- data/lib/fog/kubevirt/version.rb +1 -1
- metadata +2 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: e1f90a753f99bae70fdb0f9ef3a560b939a25472
|
4
|
+
data.tar.gz: 693cd23e1eb336c338fcbe2440f7de92a9e2cce3
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: fca88f74721f9ff8d272a522fb44edb4366c6763ec510c9f20e01bf9c309c5d6a34885b9e8fa26d19d8afa84539f565ad04d89da36a9b07bb227d5bda7c03858
|
7
|
+
data.tar.gz: '068448c16b963a7c9df4814733cb80ccd03494ce007a2c4c78c1b963b99fc483cf112cb4494e32ae9d3676829720857b6f857e1fa64155e83bbf14bb38e2cef2'
|
@@ -21,6 +21,15 @@ module Fog
|
|
21
21
|
new service.get_server(id)
|
22
22
|
end
|
23
23
|
|
24
|
+
def new(attributes = {})
|
25
|
+
server = super
|
26
|
+
server.disks = [] unless server.disks
|
27
|
+
server.volumes = [] unless server.volumes
|
28
|
+
server.interfaces = [] unless server.interfaces
|
29
|
+
server.networks = [] unless server.networks
|
30
|
+
server
|
31
|
+
end
|
32
|
+
|
24
33
|
def bootstrap(new_attributes = {})
|
25
34
|
server = create(new_attributes)
|
26
35
|
server.wait_for { stopped? }
|
@@ -17,11 +17,11 @@ module Fog
|
|
17
17
|
attribute :annotations, :aliases => 'metadata_annotations'
|
18
18
|
attribute :cpu_cores, :aliases => 'spec_cpu_cores'
|
19
19
|
attribute :memory, :aliases => 'spec_memory'
|
20
|
-
attribute :disks, :aliases => 'spec_disks'
|
21
|
-
attribute :volumes, :aliases => 'spec_volumes'
|
20
|
+
attribute :disks, :aliases => 'spec_disks'
|
21
|
+
attribute :volumes, :aliases => 'spec_volumes'
|
22
22
|
attribute :status, :aliases => 'spec_running'
|
23
|
-
attribute :interfaces, :aliases => 'spec_interfaces'
|
24
|
-
attribute :networks, :aliases => 'spec_networks'
|
23
|
+
attribute :interfaces, :aliases => 'spec_interfaces'
|
24
|
+
attribute :networks, :aliases => 'spec_networks'
|
25
25
|
attribute :machine_type, :aliases => 'spec_machine_type'
|
26
26
|
end
|
27
27
|
|
@@ -13,7 +13,7 @@ module Fog
|
|
13
13
|
# @param object [Hash] A hash with raw interfaces data.
|
14
14
|
#
|
15
15
|
def parse_interfaces(object, object_status, networks)
|
16
|
-
return
|
16
|
+
return [] if object.nil?
|
17
17
|
nics = []
|
18
18
|
object.each do |iface|
|
19
19
|
nic = VmNic.new
|
@@ -42,7 +42,7 @@ module Fog
|
|
42
42
|
# @param object [Hash] A hash with raw networks data.
|
43
43
|
#
|
44
44
|
def parse_networks(object)
|
45
|
-
return
|
45
|
+
return [] if object.nil?
|
46
46
|
networks = []
|
47
47
|
object.each do |net|
|
48
48
|
network = VmData::VmNetwork.new
|
@@ -65,7 +65,7 @@ module Fog
|
|
65
65
|
# @param object [Hash] A hash with raw disks data.
|
66
66
|
#
|
67
67
|
def parse_disks(object)
|
68
|
-
return
|
68
|
+
return [] if object.nil?
|
69
69
|
disks = []
|
70
70
|
object.each do |d|
|
71
71
|
disk = VmData::VmDisk.new
|
@@ -100,7 +100,7 @@ module Fog
|
|
100
100
|
# @param disks [Array] the disks of the vm associated to the volumes
|
101
101
|
#
|
102
102
|
def parse_volumes(object, disks)
|
103
|
-
return
|
103
|
+
return [] if object.nil?
|
104
104
|
volumes = []
|
105
105
|
object.each do |v|
|
106
106
|
volume = Volume.new
|
@@ -23,6 +23,15 @@ module Fog
|
|
23
23
|
load vms
|
24
24
|
end
|
25
25
|
|
26
|
+
def new(attributes = {})
|
27
|
+
vm = super
|
28
|
+
vm.disks = [] unless vm.disks
|
29
|
+
vm.volumes = [] unless vm.volumes
|
30
|
+
vm.interfaces = [] unless vm.interfaces
|
31
|
+
vm.networks = [] unless vm.networks
|
32
|
+
vm
|
33
|
+
end
|
34
|
+
|
26
35
|
def get(name)
|
27
36
|
new service.get_vm(name)
|
28
37
|
end
|
@@ -26,6 +26,12 @@ module Fog
|
|
26
26
|
# holds the pvc entity if its type is persistentVolumeClaim
|
27
27
|
attribute :pvc
|
28
28
|
|
29
|
+
# the capacity of the volume, when supported
|
30
|
+
attribute :capacity
|
31
|
+
|
32
|
+
# the storage class used for the volume, i.e. when type is persistentVolumeClaim
|
33
|
+
attribute :storage_class
|
34
|
+
|
29
35
|
# Hash that holds volume type specific configurations, used for adding volume for a vm
|
30
36
|
# The set of config properties may change from type to type, see documentation for the supported
|
31
37
|
# keys of each volume type:
|
@@ -44,12 +50,6 @@ module Fog
|
|
44
50
|
def persisted?
|
45
51
|
!name.nil?
|
46
52
|
end
|
47
|
-
|
48
|
-
def self.parse(object, disk)
|
49
|
-
volume = parse_object(object)
|
50
|
-
volume[:boot_order] = object[:bootOrder]
|
51
|
-
volume
|
52
|
-
end
|
53
53
|
end
|
54
54
|
end
|
55
55
|
end
|
@@ -10,12 +10,24 @@ module Fog
|
|
10
10
|
|
11
11
|
def populate_pvcs_for_vm(vm)
|
12
12
|
vm[:volumes].each do |vol|
|
13
|
+
set_volume_pvc_attributes(vol)
|
14
|
+
end
|
15
|
+
end
|
16
|
+
|
17
|
+
def set_volume_pvc_attributes(volume, pvc = nil)
|
18
|
+
return unless volume.type == 'persistentVolumeClaim'
|
19
|
+
if pvc.nil?
|
13
20
|
begin
|
14
|
-
|
21
|
+
pvc = pvcs.get(volume.info)
|
15
22
|
rescue
|
16
23
|
# there is an option that the PVC does not exist
|
24
|
+
return
|
17
25
|
end
|
18
26
|
end
|
27
|
+
|
28
|
+
volume.pvc = pvc
|
29
|
+
volume.capacity = pvc&.requests[:storage]
|
30
|
+
volume.storage_class = pvc.storage_class
|
19
31
|
end
|
20
32
|
|
21
33
|
def get_raw_vm(name)
|
data/lib/fog/kubevirt/version.rb
CHANGED
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: fog-kubevirt
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 1.2.
|
4
|
+
version: 1.2.4
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Piotr Kliczewski
|
@@ -14,7 +14,7 @@ authors:
|
|
14
14
|
autorequire:
|
15
15
|
bindir: bin
|
16
16
|
cert_chain: []
|
17
|
-
date: 2019-04-
|
17
|
+
date: 2019-04-18 00:00:00.000000000 Z
|
18
18
|
dependencies:
|
19
19
|
- !ruby/object:Gem::Dependency
|
20
20
|
name: minitest
|