fog 1.32.0 → 1.33.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/CHANGELOG.md +59 -0
- data/Gemfile +1 -0
- data/Rakefile +4 -4
- data/fog.gemspec +3 -2
- data/lib/fog/linode/requests/compute/avail_datacenters.rb +8 -7
- data/lib/fog/openstack.rb +1 -0
- data/lib/fog/openstack/compute.rb +7 -1
- data/lib/fog/openstack/core.rb +28 -54
- data/lib/fog/openstack/identity.rb +1 -0
- data/lib/fog/openstack/identity_v3.rb +10 -9
- data/lib/fog/openstack/models/baremetal/chassis.rb +3 -14
- data/lib/fog/openstack/models/baremetal/chassis_collection.rb +5 -5
- data/lib/fog/openstack/models/baremetal/driver.rb +2 -8
- data/lib/fog/openstack/models/baremetal/drivers.rb +3 -5
- data/lib/fog/openstack/models/baremetal/node.rb +3 -14
- data/lib/fog/openstack/models/baremetal/nodes.rb +4 -4
- data/lib/fog/openstack/models/baremetal/port.rb +3 -14
- data/lib/fog/openstack/models/baremetal/ports.rb +4 -4
- data/lib/fog/openstack/models/collection.rb +45 -0
- data/lib/fog/openstack/models/compute/address.rb +2 -2
- data/lib/fog/openstack/models/compute/addresses.rb +3 -5
- data/lib/fog/openstack/models/compute/aggregate.rb +2 -8
- data/lib/fog/openstack/models/compute/aggregates.rb +3 -5
- data/lib/fog/openstack/models/compute/availability_zone.rb +14 -0
- data/lib/fog/openstack/models/compute/availability_zones.rb +22 -0
- data/lib/fog/openstack/models/compute/flavor.rb +2 -8
- data/lib/fog/openstack/models/compute/flavors.rb +6 -6
- data/lib/fog/openstack/models/compute/host.rb +1 -1
- data/lib/fog/openstack/models/compute/hosts.rb +4 -6
- data/lib/fog/openstack/models/compute/image.rb +2 -8
- data/lib/fog/openstack/models/compute/images.rb +4 -6
- data/lib/fog/openstack/models/compute/key_pair.rb +2 -2
- data/lib/fog/openstack/models/compute/key_pairs.rb +3 -4
- data/lib/fog/openstack/models/compute/metadata.rb +3 -2
- data/lib/fog/openstack/models/compute/metadatum.rb +2 -2
- data/lib/fog/openstack/models/compute/network.rb +2 -2
- data/lib/fog/openstack/models/compute/networks.rb +3 -2
- data/lib/fog/openstack/models/compute/security_group.rb +2 -2
- data/lib/fog/openstack/models/compute/security_group_rule.rb +2 -2
- data/lib/fog/openstack/models/compute/security_group_rules.rb +2 -2
- data/lib/fog/openstack/models/compute/security_groups.rb +3 -5
- data/lib/fog/openstack/models/compute/server.rb +20 -1
- data/lib/fog/openstack/models/compute/servers.rb +9 -5
- data/lib/fog/openstack/models/compute/service.rb +2 -8
- data/lib/fog/openstack/models/compute/services.rb +4 -4
- data/lib/fog/openstack/models/compute/snapshot.rb +2 -8
- data/lib/fog/openstack/models/compute/snapshots.rb +5 -5
- data/lib/fog/openstack/models/compute/tenant.rb +2 -2
- data/lib/fog/openstack/models/compute/tenants.rb +3 -4
- data/lib/fog/openstack/models/compute/volume.rb +2 -8
- data/lib/fog/openstack/models/compute/volumes.rb +5 -5
- data/lib/fog/openstack/models/identity_v2/ec2_credential.rb +3 -9
- data/lib/fog/openstack/models/identity_v2/ec2_credentials.rb +3 -5
- data/lib/fog/openstack/models/identity_v2/role.rb +3 -3
- data/lib/fog/openstack/models/identity_v2/roles.rb +3 -5
- data/lib/fog/openstack/models/identity_v2/tenant.rb +5 -9
- data/lib/fog/openstack/models/identity_v2/tenants.rb +3 -5
- data/lib/fog/openstack/models/identity_v2/user.rb +2 -8
- data/lib/fog/openstack/models/identity_v2/users.rb +3 -5
- data/lib/fog/openstack/models/identity_v3/domain.rb +5 -9
- data/lib/fog/openstack/models/identity_v3/domains.rb +3 -5
- data/lib/fog/openstack/models/identity_v3/endpoint.rb +5 -9
- data/lib/fog/openstack/models/identity_v3/endpoints.rb +3 -5
- data/lib/fog/openstack/models/identity_v3/group.rb +5 -9
- data/lib/fog/openstack/models/identity_v3/groups.rb +3 -5
- data/lib/fog/openstack/models/identity_v3/os_credential.rb +3 -3
- data/lib/fog/openstack/models/identity_v3/os_credentials.rb +3 -5
- data/lib/fog/openstack/models/identity_v3/policies.rb +3 -5
- data/lib/fog/openstack/models/identity_v3/policy.rb +5 -9
- data/lib/fog/openstack/models/identity_v3/project.rb +5 -8
- data/lib/fog/openstack/models/identity_v3/projects.rb +21 -10
- data/lib/fog/openstack/models/identity_v3/role.rb +3 -8
- data/lib/fog/openstack/models/identity_v3/role_assignment.rb +3 -3
- data/lib/fog/openstack/models/identity_v3/role_assignments.rb +3 -5
- data/lib/fog/openstack/models/identity_v3/roles.rb +3 -5
- data/lib/fog/openstack/models/identity_v3/service.rb +3 -3
- data/lib/fog/openstack/models/identity_v3/services.rb +3 -5
- data/lib/fog/openstack/models/identity_v3/token.rb +3 -3
- data/lib/fog/openstack/models/identity_v3/tokens.rb +3 -3
- data/lib/fog/openstack/models/identity_v3/user.rb +3 -9
- data/lib/fog/openstack/models/identity_v3/users.rb +3 -5
- data/lib/fog/openstack/models/image/image.rb +2 -13
- data/lib/fog/openstack/models/image/images.rb +5 -5
- data/lib/fog/openstack/models/metering/resource.rb +2 -7
- data/lib/fog/openstack/models/metering/resources.rb +3 -3
- data/lib/fog/openstack/models/model.rb +44 -0
- data/lib/fog/openstack/models/network/floating_ip.rb +2 -7
- data/lib/fog/openstack/models/network/floating_ips.rb +3 -5
- data/lib/fog/openstack/models/network/lb_health_monitor.rb +2 -12
- data/lib/fog/openstack/models/network/lb_health_monitors.rb +3 -5
- data/lib/fog/openstack/models/network/lb_member.rb +2 -12
- data/lib/fog/openstack/models/network/lb_members.rb +3 -5
- data/lib/fog/openstack/models/network/lb_pool.rb +2 -12
- data/lib/fog/openstack/models/network/lb_pools.rb +3 -5
- data/lib/fog/openstack/models/network/lb_vip.rb +2 -12
- data/lib/fog/openstack/models/network/lb_vips.rb +3 -5
- data/lib/fog/openstack/models/network/network.rb +2 -12
- data/lib/fog/openstack/models/network/networks.rb +3 -5
- data/lib/fog/openstack/models/network/port.rb +2 -13
- data/lib/fog/openstack/models/network/ports.rb +3 -5
- data/lib/fog/openstack/models/network/router.rb +2 -13
- data/lib/fog/openstack/models/network/routers.rb +3 -5
- data/lib/fog/openstack/models/network/security_group.rb +2 -2
- data/lib/fog/openstack/models/network/security_group_rule.rb +2 -2
- data/lib/fog/openstack/models/network/security_group_rules.rb +3 -5
- data/lib/fog/openstack/models/network/security_groups.rb +3 -5
- data/lib/fog/openstack/models/network/subnet.rb +3 -14
- data/lib/fog/openstack/models/network/subnets.rb +3 -5
- data/lib/fog/openstack/models/orchestration/event.rb +2 -2
- data/lib/fog/openstack/models/orchestration/events.rb +5 -7
- data/lib/fog/openstack/models/orchestration/resource.rb +2 -2
- data/lib/fog/openstack/models/orchestration/resource_schemas.rb +2 -2
- data/lib/fog/openstack/models/orchestration/resources.rb +3 -5
- data/lib/fog/openstack/models/orchestration/stack.rb +3 -7
- data/lib/fog/openstack/models/orchestration/stacks.rb +5 -5
- data/lib/fog/openstack/models/orchestration/template.rb +2 -2
- data/lib/fog/openstack/models/orchestration/templates.rb +1 -1
- data/lib/fog/openstack/models/planning/plan.rb +2 -13
- data/lib/fog/openstack/models/planning/plans.rb +3 -5
- data/lib/fog/openstack/models/planning/role.rb +2 -8
- data/lib/fog/openstack/models/planning/roles.rb +3 -6
- data/lib/fog/openstack/models/storage/directories.rb +4 -6
- data/lib/fog/openstack/models/storage/directory.rb +2 -2
- data/lib/fog/openstack/models/storage/file.rb +15 -2
- data/lib/fog/openstack/models/storage/files.rb +7 -8
- data/lib/fog/openstack/models/volume/availability_zone.rb +13 -0
- data/lib/fog/openstack/models/volume/availability_zones.rb +17 -0
- data/lib/fog/openstack/models/volume/transfer.rb +36 -0
- data/lib/fog/openstack/models/volume/transfers.rb +38 -0
- data/lib/fog/openstack/models/volume/volume.rb +9 -8
- data/lib/fog/openstack/models/volume/volume_type.rb +2 -8
- data/lib/fog/openstack/models/volume/volume_types.rb +3 -6
- data/lib/fog/openstack/models/volume/volumes.rb +5 -6
- data/lib/fog/openstack/requests/compute/list_servers.rb +8 -5
- data/lib/fog/openstack/requests/compute/list_servers_detail.rb +9 -6
- data/lib/fog/openstack/requests/compute/list_zones.rb +6 -5
- data/lib/fog/openstack/requests/compute/list_zones_detailed.rb +55 -0
- data/lib/fog/openstack/requests/compute/shelve_offload_server.rb +24 -0
- data/lib/fog/openstack/requests/compute/shelve_server.rb +24 -0
- data/lib/fog/openstack/requests/compute/unshelve_server.rb +24 -0
- data/lib/fog/openstack/requests/identity_v3/get_project.rb +2 -2
- data/lib/fog/openstack/requests/network/create_subnet.rb +1 -1
- data/lib/fog/openstack/requests/network/update_subnet.rb +8 -7
- data/lib/fog/openstack/requests/volume/accept_transfer.rb +24 -0
- data/lib/fog/openstack/requests/volume/create_transfer.rb +27 -0
- data/lib/fog/openstack/requests/volume/delete_transfer.rb +17 -0
- data/lib/fog/openstack/requests/volume/extend_volume.rb +25 -0
- data/lib/fog/openstack/requests/volume/get_transfer_details.rb +17 -0
- data/lib/fog/openstack/requests/volume/list_transfers.rb +18 -0
- data/lib/fog/openstack/requests/volume/list_transfers_detailed.rb +18 -0
- data/lib/fog/openstack/requests/volume/list_zones.rb +32 -0
- data/lib/fog/openstack/storage.rb +3 -1
- data/lib/fog/openstack/volume.rb +16 -0
- data/lib/fog/rackspace/examples/compute_v2/create_network.rb +1 -1
- data/lib/fog/vcloud_director/generators/compute/edge_gateway_service_configuration.rb +31 -30
- data/lib/fog/vcloud_director/models/compute/task.rb +2 -2
- data/lib/fog/version.rb +1 -1
- data/lib/fog/vsphere/compute.rb +1 -0
- data/lib/fog/vsphere/requests/compute/get_resource_pool.rb +1 -1
- data/lib/fog/vsphere/requests/compute/get_virtual_machine.rb +4 -3
- data/lib/fog/vsphere/requests/compute/list_clusters.rb +1 -1
- data/lib/fog/vsphere/requests/compute/list_vm_interfaces.rb +2 -2
- data/lib/fog/vsphere/requests/compute/vm_clone.rb +101 -30
- data/lib/fog/vsphere/requests/compute/vm_execute.rb +47 -0
- data/lib/tasks/changelog_task.rb +1 -0
- data/spec/fog/openstack/identity_v3/{idv3.yml → common_setup.yml} +0 -0
- data/spec/fog/openstack/identity_v3/idv3_project_hier_crud_list.yml +1394 -0
- data/spec/fog/openstack/identity_v3_spec.rb +255 -196
- data/spec/fog/openstack/network/common_setup.yml +131 -0
- data/spec/fog/openstack/network/subnets_crud.yml +140 -0
- data/spec/fog/openstack/network_spec.rb +43 -0
- data/spec/fog/openstack/shared_context.rb +98 -0
- data/spec/fog/openstack/volume/{volume_common_setup.yml → common_setup.yml} +0 -0
- data/spec/fog/openstack/volume/volume_extend.yml +762 -0
- data/spec/fog/openstack/volume/volume_transfer_and_accept.yml +1078 -0
- data/spec/fog/openstack/volume/volume_transfer_and_delete.yml +695 -0
- data/spec/fog/openstack/volume_spec.rb +232 -67
- data/tests/openstack/models/storage/file_tests.rb +26 -0
- data/tests/openstack/requests/compute/availability_zone_tests.rb +18 -0
- data/tests/openstack/requests/compute/server_tests.rb +12 -0
- data/tests/openstack/requests/network/subnet_tests.rb +2 -2
- data/tests/openstack/requests/volume/availability_zone_tests.rb +13 -0
- data/tests/vcloud_director/requests/compute/edge_gateway_tests.rb +2 -2
- metadata +61 -26
- data/lib/fog/dynect.rb +0 -1
- data/lib/fog/dynect/core.rb +0 -26
- data/lib/fog/dynect/dns.rb +0 -157
- data/lib/fog/dynect/models/dns/record.rb +0 -67
- data/lib/fog/dynect/models/dns/records.rb +0 -48
- data/lib/fog/dynect/models/dns/zone.rb +0 -56
- data/lib/fog/dynect/models/dns/zones.rb +0 -25
- data/lib/fog/dynect/requests/dns/delete_record.rb +0 -55
- data/lib/fog/dynect/requests/dns/delete_zone.rb +0 -41
- data/lib/fog/dynect/requests/dns/get_all_records.rb +0 -56
- data/lib/fog/dynect/requests/dns/get_node_list.rb +0 -55
- data/lib/fog/dynect/requests/dns/get_record.rb +0 -83
- data/lib/fog/dynect/requests/dns/get_zone.rb +0 -57
- data/lib/fog/dynect/requests/dns/post_record.rb +0 -71
- data/lib/fog/dynect/requests/dns/post_session.rb +0 -43
- data/lib/fog/dynect/requests/dns/post_zone.rb +0 -70
- data/lib/fog/dynect/requests/dns/put_record.rb +0 -76
- data/lib/fog/dynect/requests/dns/put_zone.rb +0 -76
- data/tests/dynect/requests/dns/dns_tests.rb +0 -258
|
@@ -1,10 +1,10 @@
|
|
|
1
|
-
require 'fog/
|
|
1
|
+
require 'fog/openstack/models/collection'
|
|
2
2
|
require 'fog/openstack/models/compute/image'
|
|
3
3
|
|
|
4
4
|
module Fog
|
|
5
5
|
module Compute
|
|
6
6
|
class OpenStack
|
|
7
|
-
class Images < Fog::Collection
|
|
7
|
+
class Images < Fog::OpenStack::Collection
|
|
8
8
|
attribute :filters
|
|
9
9
|
|
|
10
10
|
model Fog::Compute::OpenStack::Image
|
|
@@ -18,16 +18,14 @@ module Fog
|
|
|
18
18
|
|
|
19
19
|
def all(filters_arg = filters)
|
|
20
20
|
filters = filters_arg
|
|
21
|
-
data = service.list_images_detail(filters)
|
|
22
|
-
images =
|
|
21
|
+
data = service.list_images_detail(filters)
|
|
22
|
+
images = load_response(data, 'images')
|
|
23
23
|
if server
|
|
24
24
|
self.replace(self.select {|image| image.server_id == server.id})
|
|
25
25
|
end
|
|
26
26
|
images
|
|
27
27
|
end
|
|
28
28
|
|
|
29
|
-
alias_method :summary, :all
|
|
30
|
-
|
|
31
29
|
def get(image_id)
|
|
32
30
|
data = service.get_image_details(image_id).body['image']
|
|
33
31
|
new(data)
|
|
@@ -1,10 +1,10 @@
|
|
|
1
|
-
require 'fog/
|
|
1
|
+
require 'fog/openstack/models/collection'
|
|
2
2
|
require 'fog/openstack/models/compute/key_pair'
|
|
3
3
|
|
|
4
4
|
module Fog
|
|
5
5
|
module Compute
|
|
6
6
|
class OpenStack
|
|
7
|
-
class KeyPairs < Fog::Collection
|
|
7
|
+
class KeyPairs < Fog::OpenStack::Collection
|
|
8
8
|
model Fog::Compute::OpenStack::KeyPair
|
|
9
9
|
|
|
10
10
|
def all(options = {})
|
|
@@ -12,11 +12,10 @@ module Fog
|
|
|
12
12
|
service.list_key_pairs(options).body['keypairs'].each do |kp|
|
|
13
13
|
items = items + kp.values
|
|
14
14
|
end
|
|
15
|
+
# TODO convert to load_response?
|
|
15
16
|
load(items)
|
|
16
17
|
end
|
|
17
18
|
|
|
18
|
-
alias_method :summary, :all
|
|
19
|
-
|
|
20
19
|
def get(key_pair_name)
|
|
21
20
|
if key_pair_name
|
|
22
21
|
self.all.select {|kp| kp.name == key_pair_name}.first
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
require 'fog/
|
|
1
|
+
require 'fog/openstack/models/collection'
|
|
2
2
|
require 'fog/openstack/models/meta_parent'
|
|
3
3
|
require 'fog/openstack/models/compute/metadatum'
|
|
4
4
|
require 'fog/openstack/models/compute/image'
|
|
@@ -7,7 +7,7 @@ require 'fog/openstack/models/compute/server'
|
|
|
7
7
|
module Fog
|
|
8
8
|
module Compute
|
|
9
9
|
class OpenStack
|
|
10
|
-
class Metadata < Fog::Collection
|
|
10
|
+
class Metadata < Fog::OpenStack::Collection
|
|
11
11
|
model Fog::Compute::OpenStack::Metadatum
|
|
12
12
|
|
|
13
13
|
include Fog::Compute::OpenStack::MetaParent
|
|
@@ -17,6 +17,7 @@ module Fog
|
|
|
17
17
|
metadata = service.list_metadata(collection_name, @parent.id).body['metadata']
|
|
18
18
|
metas = []
|
|
19
19
|
metadata.each_pair {|k,v| metas << {"key" => k, "value" => v} } unless metadata.nil?
|
|
20
|
+
# TODO convert to load_response?
|
|
20
21
|
load(metas)
|
|
21
22
|
end
|
|
22
23
|
|
|
@@ -1,10 +1,10 @@
|
|
|
1
|
-
require 'fog/
|
|
1
|
+
require 'fog/openstack/models/model'
|
|
2
2
|
require 'fog/openstack/models/meta_parent'
|
|
3
3
|
|
|
4
4
|
module Fog
|
|
5
5
|
module Compute
|
|
6
6
|
class OpenStack
|
|
7
|
-
class Metadatum < Fog::Model
|
|
7
|
+
class Metadatum < Fog::OpenStack::Model
|
|
8
8
|
include Fog::Compute::OpenStack::MetaParent
|
|
9
9
|
|
|
10
10
|
identity :key
|
|
@@ -1,10 +1,10 @@
|
|
|
1
|
-
require 'fog/
|
|
1
|
+
require 'fog/openstack/models/collection'
|
|
2
2
|
require 'fog/openstack/models/compute/network'
|
|
3
3
|
|
|
4
4
|
module Fog
|
|
5
5
|
module Compute
|
|
6
6
|
class OpenStack
|
|
7
|
-
class Networks < Fog::Collection
|
|
7
|
+
class Networks < Fog::OpenStack::Collection
|
|
8
8
|
model Fog::Compute::OpenStack::Network
|
|
9
9
|
|
|
10
10
|
attribute :server
|
|
@@ -21,6 +21,7 @@ module Fog
|
|
|
21
21
|
}
|
|
22
22
|
end
|
|
23
23
|
|
|
24
|
+
# TODO convert to load_response?
|
|
24
25
|
load(networks)
|
|
25
26
|
end
|
|
26
27
|
end # class Networks
|
|
@@ -1,10 +1,10 @@
|
|
|
1
|
-
require 'fog/
|
|
1
|
+
require 'fog/openstack/models/collection'
|
|
2
2
|
require 'fog/openstack/models/compute/security_group_rule'
|
|
3
3
|
|
|
4
4
|
module Fog
|
|
5
5
|
module Compute
|
|
6
6
|
class OpenStack
|
|
7
|
-
class SecurityGroupRules < Fog::Collection
|
|
7
|
+
class SecurityGroupRules < Fog::OpenStack::Collection
|
|
8
8
|
model Fog::Compute::OpenStack::SecurityGroupRule
|
|
9
9
|
|
|
10
10
|
def get(security_group_rule_id)
|
|
@@ -1,18 +1,16 @@
|
|
|
1
|
-
require 'fog/
|
|
1
|
+
require 'fog/openstack/models/collection'
|
|
2
2
|
require 'fog/openstack/models/compute/security_group'
|
|
3
3
|
|
|
4
4
|
module Fog
|
|
5
5
|
module Compute
|
|
6
6
|
class OpenStack
|
|
7
|
-
class SecurityGroups < Fog::Collection
|
|
7
|
+
class SecurityGroups < Fog::OpenStack::Collection
|
|
8
8
|
model Fog::Compute::OpenStack::SecurityGroup
|
|
9
9
|
|
|
10
10
|
def all(options = {})
|
|
11
|
-
|
|
11
|
+
load_response(service.list_security_groups(options), 'security_groups')
|
|
12
12
|
end
|
|
13
13
|
|
|
14
|
-
alias_method :summary, :all
|
|
15
|
-
|
|
16
14
|
def get(security_group_id)
|
|
17
15
|
if security_group_id
|
|
18
16
|
new(service.get_security_group(security_group_id).body['security_group'])
|
|
@@ -52,6 +52,10 @@ module Fog
|
|
|
52
52
|
attr_writer :image_ref, :flavor_ref, :nics, :os_scheduler_hints
|
|
53
53
|
attr_accessor :block_device_mapping, :block_device_mapping_v2
|
|
54
54
|
|
|
55
|
+
# In some cases it's handy to be able to store the project for the record, e.g. swift doesn't contain project info
|
|
56
|
+
# in the result, so we can track it in this attribute based on what project was used in the request
|
|
57
|
+
attr_accessor :project
|
|
58
|
+
|
|
55
59
|
def initialize(attributes={})
|
|
56
60
|
# Old 'connection' is renamed as service and should be used instead
|
|
57
61
|
prepare_service_value(attributes)
|
|
@@ -84,7 +88,7 @@ module Fog
|
|
|
84
88
|
end
|
|
85
89
|
|
|
86
90
|
def user_data=(ascii_userdata)
|
|
87
|
-
self.user_data_encoded = [ascii_userdata].pack('m')
|
|
91
|
+
self.user_data_encoded = [ascii_userdata].pack('m') if ascii_userdata
|
|
88
92
|
end
|
|
89
93
|
|
|
90
94
|
def destroy
|
|
@@ -253,6 +257,21 @@ module Fog
|
|
|
253
257
|
end
|
|
254
258
|
end
|
|
255
259
|
|
|
260
|
+
def shelve
|
|
261
|
+
requires :id
|
|
262
|
+
service.shelve_server(id)
|
|
263
|
+
end
|
|
264
|
+
|
|
265
|
+
def unshelve
|
|
266
|
+
requires :id
|
|
267
|
+
service.unshelve_server(id)
|
|
268
|
+
end
|
|
269
|
+
|
|
270
|
+
def shelve_offload
|
|
271
|
+
requires :id
|
|
272
|
+
service.shelve_offload_server(id)
|
|
273
|
+
end
|
|
274
|
+
|
|
256
275
|
def create_image(name, metadata={})
|
|
257
276
|
requires :id
|
|
258
277
|
service.create_image(id, name, metadata)
|
|
@@ -1,10 +1,10 @@
|
|
|
1
|
-
require 'fog/
|
|
1
|
+
require 'fog/openstack/models/collection'
|
|
2
2
|
require 'fog/openstack/models/compute/server'
|
|
3
3
|
|
|
4
4
|
module Fog
|
|
5
5
|
module Compute
|
|
6
6
|
class OpenStack
|
|
7
|
-
class Servers < Fog::Collection
|
|
7
|
+
class Servers < Fog::OpenStack::Collection
|
|
8
8
|
attribute :filters
|
|
9
9
|
|
|
10
10
|
model Fog::Compute::OpenStack::Server
|
|
@@ -16,11 +16,15 @@ module Fog
|
|
|
16
16
|
|
|
17
17
|
def all(filters_arg = filters)
|
|
18
18
|
filters = filters_arg
|
|
19
|
-
data = service.list_servers_detail(filters)
|
|
20
|
-
|
|
19
|
+
data = service.list_servers_detail(filters)
|
|
20
|
+
load_response(data, 'servers')
|
|
21
21
|
end
|
|
22
22
|
|
|
23
|
-
|
|
23
|
+
def summary(filters_arg = filters)
|
|
24
|
+
filters = filters_arg
|
|
25
|
+
data = service.list_servers(filters)
|
|
26
|
+
load_response(data, 'servers')
|
|
27
|
+
end
|
|
24
28
|
|
|
25
29
|
# Creates a new server and populates ssh keys
|
|
26
30
|
# @return [Fog::Compute::OpenStack::Server]
|
|
@@ -1,9 +1,9 @@
|
|
|
1
|
-
require 'fog/
|
|
1
|
+
require 'fog/openstack/models/model'
|
|
2
2
|
|
|
3
3
|
module Fog
|
|
4
4
|
module Compute
|
|
5
5
|
class OpenStack
|
|
6
|
-
class Service < Fog::Model
|
|
6
|
+
class Service < Fog::OpenStack::Model
|
|
7
7
|
identity :id
|
|
8
8
|
|
|
9
9
|
attribute :binary
|
|
@@ -16,12 +16,6 @@ module Fog
|
|
|
16
16
|
#detailed
|
|
17
17
|
attribute :disabled_reason
|
|
18
18
|
|
|
19
|
-
def initialize(attributes)
|
|
20
|
-
# Old 'connection' is renamed as service and should be used instead
|
|
21
|
-
prepare_service_value(attributes)
|
|
22
|
-
super
|
|
23
|
-
end
|
|
24
|
-
|
|
25
19
|
def enable
|
|
26
20
|
requires :binary, :host
|
|
27
21
|
service.enable_service(self.host, self.binary)
|
|
@@ -1,21 +1,21 @@
|
|
|
1
|
-
require 'fog/
|
|
1
|
+
require 'fog/openstack/models/collection'
|
|
2
2
|
require 'fog/openstack/models/compute/service'
|
|
3
3
|
|
|
4
4
|
module Fog
|
|
5
5
|
module Compute
|
|
6
6
|
class OpenStack
|
|
7
|
-
class Services < Fog::Collection
|
|
7
|
+
class Services < Fog::OpenStack::Collection
|
|
8
8
|
model Fog::Compute::OpenStack::Service
|
|
9
9
|
|
|
10
10
|
def all(options = {})
|
|
11
|
-
|
|
11
|
+
load_response(service.list_services(options), 'services')
|
|
12
12
|
end
|
|
13
13
|
|
|
14
14
|
alias_method :summary, :all
|
|
15
15
|
|
|
16
16
|
def details(options = {})
|
|
17
17
|
Fog::Logger.deprecation('Calling OpenStack[:compute].services.details is deprecated, use .services.all')
|
|
18
|
-
|
|
18
|
+
all(options)
|
|
19
19
|
end
|
|
20
20
|
end
|
|
21
21
|
end
|
|
@@ -1,10 +1,10 @@
|
|
|
1
|
-
require 'fog/
|
|
1
|
+
require 'fog/openstack/models/model'
|
|
2
2
|
require 'fog/openstack/models/compute/metadata'
|
|
3
3
|
|
|
4
4
|
module Fog
|
|
5
5
|
module Compute
|
|
6
6
|
class OpenStack
|
|
7
|
-
class Snapshot < Fog::Model
|
|
7
|
+
class Snapshot < Fog::OpenStack::Model
|
|
8
8
|
identity :id
|
|
9
9
|
|
|
10
10
|
attribute :name, :aliases => 'displayName'
|
|
@@ -14,12 +14,6 @@ module Fog
|
|
|
14
14
|
attribute :size
|
|
15
15
|
attribute :created_at, :aliases => 'createdAt'
|
|
16
16
|
|
|
17
|
-
def initialize(attributes)
|
|
18
|
-
# Old 'connection' is renamed as service and should be used instead
|
|
19
|
-
prepare_service_value(attributes)
|
|
20
|
-
super
|
|
21
|
-
end
|
|
22
|
-
|
|
23
17
|
def save(force=false)
|
|
24
18
|
requires :volume_id, :name, :description
|
|
25
19
|
data = service.create_volume_snapshot(volume_id, name, description, force)
|
|
@@ -1,10 +1,10 @@
|
|
|
1
|
-
require 'fog/
|
|
1
|
+
require 'fog/openstack/models/collection'
|
|
2
2
|
require 'fog/openstack/models/compute/snapshot'
|
|
3
3
|
|
|
4
4
|
module Fog
|
|
5
5
|
module Compute
|
|
6
6
|
class OpenStack
|
|
7
|
-
class Snapshots < Fog::Collection
|
|
7
|
+
class Snapshots < Fog::OpenStack::Collection
|
|
8
8
|
model Fog::Compute::OpenStack::Snapshot
|
|
9
9
|
|
|
10
10
|
def all(options = {})
|
|
@@ -14,14 +14,14 @@ module Fog
|
|
|
14
14
|
else
|
|
15
15
|
Fog::Logger.deprecation('Calling OpenStack[:compute].snapshots.all(false) is deprecated, use .snapshots.summary')
|
|
16
16
|
end
|
|
17
|
-
|
|
17
|
+
load_response(service.list_snapshots(options), 'snapshots')
|
|
18
18
|
else
|
|
19
|
-
|
|
19
|
+
load_response(service.list_snapshots_detail(options), 'snapshots')
|
|
20
20
|
end
|
|
21
21
|
end
|
|
22
22
|
|
|
23
23
|
def summary(options = {})
|
|
24
|
-
|
|
24
|
+
load_response(service.list_snapshots(options), 'snapshots')
|
|
25
25
|
end
|
|
26
26
|
|
|
27
27
|
def get(snapshot_id)
|
|
@@ -1,14 +1,14 @@
|
|
|
1
|
-
require 'fog/
|
|
1
|
+
require 'fog/openstack/models/collection'
|
|
2
2
|
require 'fog/openstack/models/compute/tenant'
|
|
3
3
|
|
|
4
4
|
module Fog
|
|
5
5
|
module Compute
|
|
6
6
|
class OpenStack
|
|
7
|
-
class Tenants < Fog::Collection
|
|
7
|
+
class Tenants < Fog::OpenStack::Collection
|
|
8
8
|
model Fog::Compute::OpenStack::Tenant
|
|
9
9
|
|
|
10
10
|
def all
|
|
11
|
-
|
|
11
|
+
load_response(service.list_tenants, 'tenants')
|
|
12
12
|
end
|
|
13
13
|
|
|
14
14
|
def usages(start_date = nil, end_date = nil, details = false)
|
|
@@ -18,7 +18,6 @@ module Fog
|
|
|
18
18
|
def get(id)
|
|
19
19
|
self.find {|tenant| tenant.id == id}
|
|
20
20
|
end
|
|
21
|
-
alias_method :find_by_id, :get
|
|
22
21
|
|
|
23
22
|
end # class Tenants
|
|
24
23
|
end # class OpenStack
|
|
@@ -1,10 +1,10 @@
|
|
|
1
|
-
require 'fog/
|
|
1
|
+
require 'fog/openstack/models/model'
|
|
2
2
|
require 'fog/openstack/models/compute/metadata'
|
|
3
3
|
|
|
4
4
|
module Fog
|
|
5
5
|
module Compute
|
|
6
6
|
class OpenStack
|
|
7
|
-
class Volume < Fog::Model
|
|
7
|
+
class Volume < Fog::OpenStack::Model
|
|
8
8
|
identity :id
|
|
9
9
|
|
|
10
10
|
attribute :name, :aliases => 'displayName'
|
|
@@ -17,12 +17,6 @@ module Fog
|
|
|
17
17
|
attribute :created_at, :aliases => 'createdAt'
|
|
18
18
|
attribute :attachments
|
|
19
19
|
|
|
20
|
-
def initialize(attributes)
|
|
21
|
-
# Old 'connection' is renamed as service and should be used instead
|
|
22
|
-
prepare_service_value(attributes)
|
|
23
|
-
super
|
|
24
|
-
end
|
|
25
|
-
|
|
26
20
|
def save
|
|
27
21
|
requires :name, :description, :size
|
|
28
22
|
data = service.create_volume(name, description, size, attributes)
|