fog-proxmox 0.6.0 → 0.7.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/Gemfile.lock +13 -9
- data/docs/compute.md +17 -17
- data/docs/identity.md +6 -6
- data/examples/compute.rb +1 -1
- data/examples/identity.rb +1 -1
- data/fog-proxmox.gemspec +4 -4
- data/lib/fog/compute/proxmox.rb +2 -2
- data/lib/fog/compute/proxmox/models/disk.rb +2 -2
- data/lib/fog/compute/proxmox/models/disks.rb +3 -3
- data/lib/fog/compute/proxmox/models/interface.rb +2 -2
- data/lib/fog/compute/proxmox/models/interfaces.rb +4 -4
- data/lib/fog/compute/proxmox/models/node.rb +6 -6
- data/lib/fog/compute/proxmox/models/nodes.rb +3 -3
- data/lib/fog/compute/proxmox/models/server.rb +6 -6
- data/lib/fog/compute/proxmox/models/server_config.rb +8 -8
- data/lib/fog/compute/proxmox/models/servers.rb +3 -3
- data/lib/fog/compute/proxmox/models/snapshot.rb +3 -3
- data/lib/fog/compute/proxmox/models/snapshots.rb +3 -3
- data/lib/fog/compute/proxmox/models/storage.rb +3 -3
- data/lib/fog/compute/proxmox/models/storages.rb +3 -3
- data/lib/fog/compute/proxmox/models/task.rb +2 -2
- data/lib/fog/compute/proxmox/models/tasks.rb +3 -3
- data/lib/fog/compute/proxmox/models/volume.rb +2 -2
- data/lib/fog/compute/proxmox/models/volumes.rb +3 -3
- data/lib/fog/compute/proxmox/requests/action_server.rb +2 -2
- data/lib/fog/compute/proxmox/requests/clone_server.rb +2 -2
- data/lib/fog/compute/proxmox/requests/create_backup.rb +2 -2
- data/lib/fog/compute/proxmox/requests/create_server.rb +2 -2
- data/lib/fog/compute/proxmox/requests/create_snapshot.rb +2 -2
- data/lib/fog/compute/proxmox/requests/create_spice.rb +2 -2
- data/lib/fog/compute/proxmox/requests/create_term.rb +2 -2
- data/lib/fog/compute/proxmox/requests/create_vnc.rb +2 -2
- data/lib/fog/compute/proxmox/requests/delete_server.rb +2 -2
- data/lib/fog/compute/proxmox/requests/delete_snapshot.rb +2 -2
- data/lib/fog/compute/proxmox/requests/delete_volume.rb +2 -2
- data/lib/fog/compute/proxmox/requests/get_node_statistics.rb +2 -2
- data/lib/fog/compute/proxmox/requests/get_server_config.rb +2 -2
- data/lib/fog/compute/proxmox/requests/get_server_status.rb +2 -2
- data/lib/fog/compute/proxmox/requests/get_snapshot_config.rb +2 -2
- data/lib/fog/compute/proxmox/requests/get_task.rb +2 -2
- data/lib/fog/compute/proxmox/requests/get_vnc.rb +2 -2
- data/lib/fog/compute/proxmox/requests/get_volume.rb +2 -2
- data/lib/fog/compute/proxmox/requests/list_nodes.rb +2 -2
- data/lib/fog/compute/proxmox/requests/list_servers.rb +2 -2
- data/lib/fog/compute/proxmox/requests/list_snapshots.rb +2 -2
- data/lib/fog/compute/proxmox/requests/list_storages.rb +2 -2
- data/lib/fog/compute/proxmox/requests/list_tasks.rb +2 -2
- data/lib/fog/compute/proxmox/requests/list_volumes.rb +2 -2
- data/lib/fog/compute/proxmox/requests/log_task.rb +2 -2
- data/lib/fog/compute/proxmox/requests/migrate_server.rb +2 -2
- data/lib/fog/compute/proxmox/requests/move_disk.rb +2 -2
- data/lib/fog/compute/proxmox/requests/move_volume.rb +2 -2
- data/lib/fog/compute/proxmox/requests/next_vmid.rb +2 -2
- data/lib/fog/compute/proxmox/requests/resize_container.rb +2 -2
- data/lib/fog/compute/proxmox/requests/resize_server.rb +2 -2
- data/lib/fog/compute/proxmox/requests/rollback_snapshot.rb +2 -2
- data/lib/fog/compute/proxmox/requests/status_task.rb +2 -2
- data/lib/fog/compute/proxmox/requests/stop_task.rb +2 -2
- data/lib/fog/compute/proxmox/requests/template_server.rb +2 -2
- data/lib/fog/compute/proxmox/requests/update_server.rb +2 -2
- data/lib/fog/compute/proxmox/requests/update_snapshot.rb +2 -2
- data/lib/fog/identity/proxmox.rb +2 -2
- data/lib/fog/identity/proxmox/models/domain.rb +3 -3
- data/lib/fog/identity/proxmox/models/domain_type.rb +2 -2
- data/lib/fog/identity/proxmox/models/domains.rb +3 -3
- data/lib/fog/identity/proxmox/models/group.rb +2 -2
- data/lib/fog/identity/proxmox/models/groups.rb +3 -3
- data/lib/fog/identity/proxmox/models/permission.rb +2 -2
- data/lib/fog/identity/proxmox/models/permissions.rb +3 -3
- data/lib/fog/identity/proxmox/models/pool.rb +2 -2
- data/lib/fog/identity/proxmox/models/pools.rb +3 -3
- data/lib/fog/identity/proxmox/models/principal.rb +2 -2
- data/lib/fog/identity/proxmox/models/role.rb +2 -2
- data/lib/fog/identity/proxmox/models/roles.rb +3 -3
- data/lib/fog/identity/proxmox/models/user.rb +2 -2
- data/lib/fog/identity/proxmox/models/users.rb +3 -3
- data/lib/fog/identity/proxmox/requests/change_password.rb +2 -2
- data/lib/fog/identity/proxmox/requests/check_permissions.rb +2 -2
- data/lib/fog/identity/proxmox/requests/create_domain.rb +2 -2
- data/lib/fog/identity/proxmox/requests/create_group.rb +2 -2
- data/lib/fog/identity/proxmox/requests/create_pool.rb +2 -2
- data/lib/fog/identity/proxmox/requests/create_role.rb +2 -2
- data/lib/fog/identity/proxmox/requests/create_user.rb +2 -2
- data/lib/fog/identity/proxmox/requests/delete_domain.rb +2 -2
- data/lib/fog/identity/proxmox/requests/delete_group.rb +2 -2
- data/lib/fog/identity/proxmox/requests/delete_pool.rb +2 -2
- data/lib/fog/identity/proxmox/requests/delete_role.rb +2 -2
- data/lib/fog/identity/proxmox/requests/delete_user.rb +2 -2
- data/lib/fog/identity/proxmox/requests/get_domain.rb +2 -2
- data/lib/fog/identity/proxmox/requests/get_group.rb +2 -2
- data/lib/fog/identity/proxmox/requests/get_pool.rb +2 -2
- data/lib/fog/identity/proxmox/requests/get_role.rb +2 -2
- data/lib/fog/identity/proxmox/requests/get_user.rb +2 -2
- data/lib/fog/identity/proxmox/requests/list_domains.rb +2 -2
- data/lib/fog/identity/proxmox/requests/list_groups.rb +2 -2
- data/lib/fog/identity/proxmox/requests/list_permissions.rb +2 -2
- data/lib/fog/identity/proxmox/requests/list_pools.rb +2 -2
- data/lib/fog/identity/proxmox/requests/list_roles.rb +2 -2
- data/lib/fog/identity/proxmox/requests/list_users.rb +2 -2
- data/lib/fog/identity/proxmox/requests/read_version.rb +2 -2
- data/lib/fog/identity/proxmox/requests/update_domain.rb +2 -2
- data/lib/fog/identity/proxmox/requests/update_group.rb +2 -2
- data/lib/fog/identity/proxmox/requests/update_permissions.rb +2 -2
- data/lib/fog/identity/proxmox/requests/update_pool.rb +2 -2
- data/lib/fog/identity/proxmox/requests/update_role.rb +2 -2
- data/lib/fog/identity/proxmox/requests/update_user.rb +2 -2
- data/lib/fog/network/proxmox.rb +2 -2
- data/lib/fog/network/proxmox/models/network.rb +2 -2
- data/lib/fog/network/proxmox/models/networks.rb +3 -3
- data/lib/fog/network/proxmox/models/node.rb +3 -3
- data/lib/fog/network/proxmox/models/nodes.rb +3 -3
- data/lib/fog/network/proxmox/requests/create_network.rb +2 -2
- data/lib/fog/network/proxmox/requests/delete_network.rb +2 -2
- data/lib/fog/network/proxmox/requests/get_network.rb +2 -2
- data/lib/fog/network/proxmox/requests/get_node.rb +2 -2
- data/lib/fog/network/proxmox/requests/list_networks.rb +2 -2
- data/lib/fog/network/proxmox/requests/list_nodes.rb +2 -2
- data/lib/fog/network/proxmox/requests/power_node.rb +2 -2
- data/lib/fog/network/proxmox/requests/update_network.rb +2 -2
- data/lib/fog/proxmox.rb +4 -17
- data/lib/fog/proxmox/core.rb +1 -1
- data/lib/fog/proxmox/helpers/controller_helper.rb +5 -6
- data/lib/fog/proxmox/version.rb +1 -1
- data/lib/fog/storage/proxmox.rb +2 -2
- data/spec/compute_spec.rb +2 -2
- data/spec/helpers/controller_helper_spec.rb +17 -2
- data/spec/identity_spec.rb +3 -3
- data/spec/network_spec.rb +2 -2
- data/spec/spec_helper.rb +1 -0
- metadata +10 -10
@@ -22,8 +22,8 @@ require 'fog/proxmox/helpers/nic_helper'
|
|
22
22
|
require 'fog/proxmox/helpers/controller_helper'
|
23
23
|
|
24
24
|
module Fog
|
25
|
-
module
|
26
|
-
class
|
25
|
+
module Proxmox
|
26
|
+
class Compute
|
27
27
|
# ServerConfig model
|
28
28
|
class ServerConfig < Fog::Model
|
29
29
|
identity :vmid
|
@@ -113,22 +113,22 @@ module Fog
|
|
113
113
|
|
114
114
|
def initialize_interfaces(new_attributes)
|
115
115
|
nets = Fog::Proxmox::NicHelper.collect_nics(new_attributes)
|
116
|
-
attributes[:interfaces] = Fog::Compute::
|
116
|
+
attributes[:interfaces] = Fog::Proxmox::Compute::Interfaces.new
|
117
117
|
nets.each do |key, value|
|
118
118
|
nic_hash = {
|
119
119
|
id: key.to_s,
|
120
120
|
model: Fog::Proxmox::NicHelper.extract_nic_id(value),
|
121
121
|
mac: Fog::Proxmox::NicHelper.extract_mac_address(value)
|
122
122
|
}
|
123
|
-
names = Fog::Compute::
|
123
|
+
names = Fog::Proxmox::Compute::Interface.attributes.reject { |attribute| [:id, :mac, :model].include? attribute }
|
124
124
|
names.each { |name| nic_hash.store(name.to_sym, Fog::Proxmox::ControllerHelper.extract(name, value)) }
|
125
|
-
attributes[:interfaces] << Fog::Compute::
|
125
|
+
attributes[:interfaces] << Fog::Proxmox::Compute::Interface.new(nic_hash)
|
126
126
|
end
|
127
127
|
end
|
128
128
|
|
129
129
|
def initialize_disks(new_attributes)
|
130
130
|
controllers = Fog::Proxmox::ControllerHelper.collect_controllers(new_attributes)
|
131
|
-
attributes[:disks] = Fog::Compute::
|
131
|
+
attributes[:disks] = Fog::Proxmox::Compute::Disks.new
|
132
132
|
controllers.each do |key, value|
|
133
133
|
storage, volid, size = Fog::Proxmox::DiskHelper.extract_storage_volid_size(value)
|
134
134
|
disk_hash = {
|
@@ -137,9 +137,9 @@ module Fog
|
|
137
137
|
volid: volid,
|
138
138
|
storage: storage
|
139
139
|
}
|
140
|
-
names = Fog::Compute::
|
140
|
+
names = Fog::Proxmox::Compute::Disk.attributes.reject { |attribute| [:id, :size, :storage, :volid].include? attribute }
|
141
141
|
names.each { |name| disk_hash.store(name.to_sym, Fog::Proxmox::ControllerHelper.extract(name, value)) }
|
142
|
-
attributes[:disks] << Fog::Compute::
|
142
|
+
attributes[:disks] << Fog::Proxmox::Compute::Disk.new(disk_hash)
|
143
143
|
end
|
144
144
|
end
|
145
145
|
end
|
@@ -20,11 +20,11 @@
|
|
20
20
|
require 'fog/compute/proxmox/models/server'
|
21
21
|
|
22
22
|
module Fog
|
23
|
-
module
|
24
|
-
class
|
23
|
+
module Proxmox
|
24
|
+
class Compute
|
25
25
|
# Servers Collection
|
26
26
|
class Servers < Fog::Collection
|
27
|
-
model Fog::Compute::
|
27
|
+
model Fog::Proxmox::Compute::Server
|
28
28
|
attribute :node_id
|
29
29
|
attribute :type
|
30
30
|
|
@@ -26,8 +26,8 @@
|
|
26
26
|
# along with Fog::Proxmox. If not, see <http://www.gnu.org/licenses/>.
|
27
27
|
|
28
28
|
module Fog
|
29
|
-
module
|
30
|
-
class
|
29
|
+
module Proxmox
|
30
|
+
class Compute
|
31
31
|
# class Snapshot model
|
32
32
|
class Snapshot < Fog::Model
|
33
33
|
identity :name
|
@@ -76,7 +76,7 @@ module Fog
|
|
76
76
|
private
|
77
77
|
|
78
78
|
def server
|
79
|
-
Fog::Compute::
|
79
|
+
Fog::Proxmox::Compute::Server.new(service: service, node_id: node_id, type: server_type, vmid: server_id)
|
80
80
|
end
|
81
81
|
end
|
82
82
|
end
|
@@ -20,11 +20,11 @@
|
|
20
20
|
require 'fog/compute/proxmox/models/snapshot'
|
21
21
|
|
22
22
|
module Fog
|
23
|
-
module
|
24
|
-
class
|
23
|
+
module Proxmox
|
24
|
+
class Compute
|
25
25
|
# class Snapshots Collection of snapshots
|
26
26
|
class Snapshots < Fog::Collection
|
27
|
-
model Fog::Compute::
|
27
|
+
model Fog::Proxmox::Compute::Snapshot
|
28
28
|
attribute :server_id
|
29
29
|
attribute :server_type
|
30
30
|
attribute :node_id
|
@@ -27,8 +27,8 @@
|
|
27
27
|
# frozen_string_literal: true
|
28
28
|
|
29
29
|
module Fog
|
30
|
-
module
|
31
|
-
class
|
30
|
+
module Proxmox
|
31
|
+
class Compute
|
32
32
|
# class Storage model
|
33
33
|
class Storage < Fog::Model
|
34
34
|
identity :storage
|
@@ -57,7 +57,7 @@ module Fog
|
|
57
57
|
private
|
58
58
|
|
59
59
|
def initialize_volumes
|
60
|
-
attributes[:volumes] = Fog::Compute::
|
60
|
+
attributes[:volumes] = Fog::Proxmox::Compute::Volumes.new(service: service, node_id: node_id, storage_id: identity)
|
61
61
|
end
|
62
62
|
end
|
63
63
|
end
|
@@ -20,11 +20,11 @@
|
|
20
20
|
require 'fog/compute/proxmox/models/storage'
|
21
21
|
|
22
22
|
module Fog
|
23
|
-
module
|
24
|
-
class
|
23
|
+
module Proxmox
|
24
|
+
class Compute
|
25
25
|
# class Storages Collection of storages
|
26
26
|
class Storages < Fog::Collection
|
27
|
-
model Fog::Compute::
|
27
|
+
model Fog::Proxmox::Compute::Storage
|
28
28
|
attribute :node_id
|
29
29
|
|
30
30
|
def new(new_attributes = {})
|
@@ -20,11 +20,11 @@
|
|
20
20
|
require 'fog/compute/proxmox/models/task'
|
21
21
|
|
22
22
|
module Fog
|
23
|
-
module
|
24
|
-
class
|
23
|
+
module Proxmox
|
24
|
+
class Compute
|
25
25
|
# class Tasks Collection of node
|
26
26
|
class Tasks < Fog::Collection
|
27
|
-
model Fog::Compute::
|
27
|
+
model Fog::Proxmox::Compute::Task
|
28
28
|
attribute :node_id
|
29
29
|
|
30
30
|
def new(new_attributes = {})
|
@@ -20,11 +20,11 @@
|
|
20
20
|
require 'fog/compute/proxmox/models/volume'
|
21
21
|
|
22
22
|
module Fog
|
23
|
-
module
|
24
|
-
class
|
23
|
+
module Proxmox
|
24
|
+
class Compute
|
25
25
|
# class Volumes Collection of volumes
|
26
26
|
class Volumes < Fog::Collection
|
27
|
-
model Fog::Compute::
|
27
|
+
model Fog::Proxmox::Compute::Volume
|
28
28
|
attribute :node_id
|
29
29
|
attribute :storage_id
|
30
30
|
|
@@ -18,8 +18,8 @@
|
|
18
18
|
# along with Fog::Proxmox. If not, see <http://www.gnu.org/licenses/>.
|
19
19
|
|
20
20
|
module Fog
|
21
|
-
module
|
22
|
-
class
|
21
|
+
module Proxmox
|
22
|
+
class Compute
|
23
23
|
# class Real action_server request
|
24
24
|
class Real
|
25
25
|
def action_server(path_params, body_params)
|
@@ -18,8 +18,8 @@
|
|
18
18
|
# along with Fog::Proxmox. If not, see <http://www.gnu.org/licenses/>.
|
19
19
|
|
20
20
|
module Fog
|
21
|
-
module
|
22
|
-
class
|
21
|
+
module Proxmox
|
22
|
+
class Compute
|
23
23
|
# class Real clone_server request
|
24
24
|
class Real
|
25
25
|
def clone_server(path_params, body_params)
|
@@ -18,8 +18,8 @@
|
|
18
18
|
# along with Fog::Proxmox. If not, see <http://www.gnu.org/licenses/>.
|
19
19
|
|
20
20
|
module Fog
|
21
|
-
module
|
22
|
-
class
|
21
|
+
module Proxmox
|
22
|
+
class Compute
|
23
23
|
# class Real create_backup request
|
24
24
|
class Real
|
25
25
|
def create_backup(path_params, body_params)
|
@@ -18,8 +18,8 @@
|
|
18
18
|
# along with Fog::Proxmox. If not, see <http://www.gnu.org/licenses/>.
|
19
19
|
|
20
20
|
module Fog
|
21
|
-
module
|
22
|
-
class
|
21
|
+
module Proxmox
|
22
|
+
class Compute
|
23
23
|
# class Real create_server request
|
24
24
|
class Real
|
25
25
|
def create_server(path_params, body_params)
|
@@ -18,8 +18,8 @@
|
|
18
18
|
# along with Fog::Proxmox. If not, see <http://www.gnu.org/licenses/>.
|
19
19
|
|
20
20
|
module Fog
|
21
|
-
module
|
22
|
-
class
|
21
|
+
module Proxmox
|
22
|
+
class Compute
|
23
23
|
# class Real create_snapshot request
|
24
24
|
class Real
|
25
25
|
def create_snapshot(path_params, body_params)
|
@@ -18,8 +18,8 @@
|
|
18
18
|
# along with Fog::Proxmox. If not, see <http://www.gnu.org/licenses/>.
|
19
19
|
|
20
20
|
module Fog
|
21
|
-
module
|
22
|
-
class
|
21
|
+
module Proxmox
|
22
|
+
class Compute
|
23
23
|
# class Real create_spice request
|
24
24
|
class Real
|
25
25
|
def create_spice(path_params, body_params)
|
@@ -18,8 +18,8 @@
|
|
18
18
|
# along with Fog::Proxmox. If not, see <http://www.gnu.org/licenses/>.
|
19
19
|
|
20
20
|
module Fog
|
21
|
-
module
|
22
|
-
class
|
21
|
+
module Proxmox
|
22
|
+
class Compute
|
23
23
|
# class Real delete_snapshot request
|
24
24
|
class Real
|
25
25
|
def delete_snapshot(path_params, query_params)
|
@@ -18,8 +18,8 @@
|
|
18
18
|
# along with Fog::Proxmox. If not, see <http://www.gnu.org/licenses/>.
|
19
19
|
|
20
20
|
module Fog
|
21
|
-
module
|
22
|
-
class
|
21
|
+
module Proxmox
|
22
|
+
class Compute
|
23
23
|
# class Real delete_volume request
|
24
24
|
class Real
|
25
25
|
def delete_volume(node, storage, volume)
|
@@ -18,8 +18,8 @@
|
|
18
18
|
# along with Fog::Proxmox. If not, see <http://www.gnu.org/licenses/>.
|
19
19
|
|
20
20
|
module Fog
|
21
|
-
module
|
22
|
-
class
|
21
|
+
module Proxmox
|
22
|
+
class Compute
|
23
23
|
# class Real get_snapshot_config request
|
24
24
|
class Real
|
25
25
|
def get_snapshot_config(path_params)
|