fog 0.0.77 → 0.0.78
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.
- data/Gemfile.lock +2 -2
- data/fog.gemspec +59 -48
- data/lib/fog.rb +2 -1
- data/lib/fog/aws/models/ec2/snapshot.rb +3 -1
- data/lib/fog/aws/models/ec2/volume.rb +4 -2
- data/lib/fog/aws/s3.rb +1 -1
- data/lib/fog/deprecation.rb +14 -0
- data/lib/fog/terremark.rb +7 -220
- data/lib/fog/terremark/bin.rb +24 -14
- data/lib/fog/terremark/ecloud.rb +51 -0
- data/lib/fog/terremark/models/shared/address.rb +29 -0
- data/lib/fog/terremark/models/shared/addresses.rb +49 -0
- data/lib/fog/terremark/models/shared/network.rb +30 -0
- data/lib/fog/terremark/models/shared/networks.rb +52 -0
- data/lib/fog/terremark/models/shared/server.rb +57 -0
- data/lib/fog/terremark/models/shared/servers.rb +55 -0
- data/lib/fog/terremark/models/shared/task.rb +43 -0
- data/lib/fog/terremark/models/shared/tasks.rb +58 -0
- data/lib/fog/terremark/parser.rb +18 -0
- data/lib/fog/terremark/parsers/shared/get_catalog.rb +46 -0
- data/lib/fog/terremark/parsers/shared/get_catalog_item.rb +46 -0
- data/lib/fog/terremark/parsers/shared/get_internet_services.rb +60 -0
- data/lib/fog/terremark/parsers/{get_node_services.rb → shared/get_node_services.rb} +10 -11
- data/lib/fog/terremark/parsers/shared/get_organization.rb +47 -0
- data/lib/fog/terremark/parsers/shared/get_organizations.rb +27 -0
- data/lib/fog/terremark/parsers/shared/get_public_ips.rb +30 -0
- data/lib/fog/terremark/parsers/shared/get_tasks_list.rb +52 -0
- data/lib/fog/terremark/parsers/shared/get_vapp_template.rb +46 -0
- data/lib/fog/terremark/parsers/shared/get_vdc.rb +108 -0
- data/lib/fog/terremark/parsers/shared/instantiate_vapp_template.rb +41 -0
- data/lib/fog/terremark/parsers/shared/internet_service.rb +65 -0
- data/lib/fog/terremark/parsers/shared/network.rb +51 -0
- data/lib/fog/terremark/parsers/shared/node_service.rb +32 -0
- data/lib/fog/terremark/parsers/shared/public_ip.rb +26 -0
- data/lib/fog/terremark/parsers/shared/task.rb +40 -0
- data/lib/fog/terremark/parsers/shared/vapp.rb +47 -0
- data/lib/fog/terremark/requests/shared/add_internet_service.rb +63 -0
- data/lib/fog/terremark/requests/shared/add_node_service.rb +63 -0
- data/lib/fog/terremark/requests/shared/create_internet_service.rb +63 -0
- data/lib/fog/terremark/requests/shared/delete_internet_service.rb +42 -0
- data/lib/fog/terremark/requests/shared/delete_node_service.rb +42 -0
- data/lib/fog/terremark/requests/shared/delete_public_ip.rb +30 -0
- data/lib/fog/terremark/requests/shared/delete_vapp.rb +42 -0
- data/lib/fog/terremark/requests/shared/deploy_vapp.rb +43 -0
- data/lib/fog/terremark/requests/shared/get_catalog.rb +40 -0
- data/lib/fog/terremark/requests/shared/get_catalog_item.rb +43 -0
- data/lib/fog/terremark/requests/shared/get_internet_services.rb +43 -0
- data/lib/fog/terremark/requests/shared/get_network.rb +37 -0
- data/lib/fog/terremark/requests/shared/get_node_services.rb +38 -0
- data/lib/fog/terremark/requests/shared/get_organization.rb +42 -0
- data/lib/fog/terremark/requests/shared/get_organizations.rb +39 -0
- data/lib/fog/terremark/requests/shared/get_public_ip.rb +41 -0
- data/lib/fog/terremark/requests/shared/get_public_ips.rb +41 -0
- data/lib/fog/terremark/requests/shared/get_task.rb +47 -0
- data/lib/fog/terremark/requests/shared/get_tasks_list.rb +40 -0
- data/lib/fog/terremark/requests/shared/get_vapp.rb +50 -0
- data/lib/fog/terremark/requests/shared/get_vapp_template.rb +43 -0
- data/lib/fog/terremark/requests/shared/get_vdc.rb +43 -0
- data/lib/fog/terremark/requests/shared/instantiate_vapp_template.rb +79 -0
- data/lib/fog/terremark/requests/shared/power_off.rb +43 -0
- data/lib/fog/terremark/requests/shared/power_on.rb +43 -0
- data/lib/fog/terremark/requests/shared/reset.rb +43 -0
- data/lib/fog/terremark/requests/shared/shutdown.rb +43 -0
- data/lib/fog/terremark/shared.rb +139 -0
- data/lib/fog/terremark/vcloud.rb +98 -0
- metadata +60 -49
- data/lib/fog/terremark/models/server.rb +0 -56
- data/lib/fog/terremark/models/servers.rb +0 -53
- data/lib/fog/terremark/models/task.rb +0 -41
- data/lib/fog/terremark/models/tasks.rb +0 -56
- data/lib/fog/terremark/parsers/get_catalog.rb +0 -44
- data/lib/fog/terremark/parsers/get_catalog_item.rb +0 -44
- data/lib/fog/terremark/parsers/get_internet_services.rb +0 -58
- data/lib/fog/terremark/parsers/get_organization.rb +0 -45
- data/lib/fog/terremark/parsers/get_organizations.rb +0 -26
- data/lib/fog/terremark/parsers/get_public_ips.rb +0 -28
- data/lib/fog/terremark/parsers/get_tasks_list.rb +0 -50
- data/lib/fog/terremark/parsers/get_vapp_template.rb +0 -44
- data/lib/fog/terremark/parsers/get_vdc.rb +0 -106
- data/lib/fog/terremark/parsers/instantiate_vapp_template.rb +0 -39
- data/lib/fog/terremark/parsers/internet_service.rb +0 -63
- data/lib/fog/terremark/parsers/node_service.rb +0 -30
- data/lib/fog/terremark/parsers/public_ip.rb +0 -24
- data/lib/fog/terremark/parsers/task.rb +0 -38
- data/lib/fog/terremark/parsers/vapp.rb +0 -45
- data/lib/fog/terremark/requests/add_internet_service.rb +0 -61
- data/lib/fog/terremark/requests/add_node_service.rb +0 -61
- data/lib/fog/terremark/requests/create_internet_service.rb +0 -61
- data/lib/fog/terremark/requests/delete_internet_service.rb +0 -40
- data/lib/fog/terremark/requests/delete_node_service.rb +0 -40
- data/lib/fog/terremark/requests/delete_public_ip.rb +0 -28
- data/lib/fog/terremark/requests/delete_vapp.rb +0 -40
- data/lib/fog/terremark/requests/deploy_vapp.rb +0 -41
- data/lib/fog/terremark/requests/get_catalog.rb +0 -38
- data/lib/fog/terremark/requests/get_catalog_item.rb +0 -41
- data/lib/fog/terremark/requests/get_internet_services.rb +0 -41
- data/lib/fog/terremark/requests/get_node_services.rb +0 -36
- data/lib/fog/terremark/requests/get_organization.rb +0 -40
- data/lib/fog/terremark/requests/get_organizations.rb +0 -37
- data/lib/fog/terremark/requests/get_public_ip.rb +0 -35
- data/lib/fog/terremark/requests/get_public_ips.rb +0 -35
- data/lib/fog/terremark/requests/get_task.rb +0 -45
- data/lib/fog/terremark/requests/get_tasks_list.rb +0 -38
- data/lib/fog/terremark/requests/get_vapp.rb +0 -48
- data/lib/fog/terremark/requests/get_vapp_template.rb +0 -41
- data/lib/fog/terremark/requests/get_vdc.rb +0 -41
- data/lib/fog/terremark/requests/instantiate_vapp_template.rb +0 -77
- data/lib/fog/terremark/requests/power_off.rb +0 -41
- data/lib/fog/terremark/requests/power_on.rb +0 -41
- data/lib/fog/terremark/requests/reset.rb +0 -41
- data/lib/fog/terremark/requests/shutdown.rb +0 -41
|
@@ -1,77 +0,0 @@
|
|
|
1
|
-
module Fog
|
|
2
|
-
module Terremark
|
|
3
|
-
class Real
|
|
4
|
-
|
|
5
|
-
# Instatiate a vapp template
|
|
6
|
-
#
|
|
7
|
-
# ==== Parameters
|
|
8
|
-
# * name<~String>: Name of the resulting vapp .. must start with letter, up to 15 chars alphanumeric.
|
|
9
|
-
# * options<~Hash>:
|
|
10
|
-
# * cpus<~Integer>: Number of cpus in [1, 2, 4, 8], defaults to 1
|
|
11
|
-
# * memory<~Integer>: Amount of memory either 512 or a multiple of 1024, defaults to 512
|
|
12
|
-
# * vapp_template<~String>: id of the vapp template to be instantiated
|
|
13
|
-
# ==== Returns
|
|
14
|
-
# * response<~Excon::Response>:
|
|
15
|
-
# * body<~Hash>:
|
|
16
|
-
# * 'Links;<~Array> (e.g. up to vdc)
|
|
17
|
-
# * 'href'<~String> Link to the resulting vapp
|
|
18
|
-
# * 'name'<~String> - name of item
|
|
19
|
-
# * 'type'<~String> - type of item
|
|
20
|
-
# * 'status'<~String> - 0(pending) --> 2(off) -->4(on)
|
|
21
|
-
def instantiate_vapp_template(name, vapp_template, options = {})
|
|
22
|
-
unless name.length < 15
|
|
23
|
-
raise ArgumentError.new('Name must be fewer than 15 characters')
|
|
24
|
-
end
|
|
25
|
-
options['cpus'] ||= 1
|
|
26
|
-
options['memory'] ||= 512
|
|
27
|
-
options['network_id'] ||= default_network_id
|
|
28
|
-
options['vdc_id'] ||= default_vdc_id
|
|
29
|
-
|
|
30
|
-
data = <<-DATA
|
|
31
|
-
<?xml version="1.0" encoding="UTF-8"?>
|
|
32
|
-
<InstantiateVAppTemplateParams name="#{name}" xmlns="http://www.vmware.com/vcloud/v0.8" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.vmware.com/vcloud/v0.8 http://services.vcloudexpress.terremark.com/api/v0.8/ns/vcloud.xsd">
|
|
33
|
-
<VAppTemplate href="#{@scheme}://#{@host}/#{@path}/vAppTemplate/#{vapp_template}" />
|
|
34
|
-
<InstantiationParams xmlns:vmw="http://www.vmware.com/schema/ovf">
|
|
35
|
-
<ProductSection xmlns:ovf="http://schemas.dmtf.org/ovf/envelope/1" xmlns:q1="http://www.vmware.com/vcloud/v0.8"/>
|
|
36
|
-
<VirtualHardwareSection xmlns:q1="http://www.vmware.com/vcloud/v0.8">
|
|
37
|
-
<Item xmlns="http://schemas.dmtf.org/ovf/envelope/1">
|
|
38
|
-
<InstanceID xmlns="http://schemas.dmtf.org/wbem/wscim/1/cim-schema/2/CIM_ResourceAllocationSettingData">1</InstanceID>
|
|
39
|
-
<ResourceType xmlns="http://schemas.dmtf.org/wbem/wscim/1/cim-schema/2/CIM_ResourceAllocationSettingData">3</ResourceType>
|
|
40
|
-
<VirtualQuantity xmlns="http://schemas.dmtf.org/wbem/wscim/1/cim-schema/2/CIM_ResourceAllocationSettingData">#{options['cpus']}</VirtualQuantity>
|
|
41
|
-
</Item>
|
|
42
|
-
<Item xmlns="http://schemas.dmtf.org/ovf/envelope/1">
|
|
43
|
-
<InstanceID xmlns="http://schemas.dmtf.org/wbem/wscim/1/cim-schema/2/CIM_ResourceAllocationSettingData">2</InstanceID>
|
|
44
|
-
<ResourceType xmlns="http://schemas.dmtf.org/wbem/wscim/1/cim-schema/2/CIM_ResourceAllocationSettingData">4</ResourceType>
|
|
45
|
-
<VirtualQuantity xmlns="http://schemas.dmtf.org/wbem/wscim/1/cim-schema/2/CIM_ResourceAllocationSettingData">#{options['memory']}</VirtualQuantity>
|
|
46
|
-
</Item>
|
|
47
|
-
</VirtualHardwareSection>
|
|
48
|
-
<NetworkConfigSection>
|
|
49
|
-
<NetworkConfig>
|
|
50
|
-
<NetworkAssociation href="#{@scheme}://#{@host}/#{@path}/network/#{options['network_id']}"/>
|
|
51
|
-
</NetworkConfig>
|
|
52
|
-
</NetworkConfigSection>
|
|
53
|
-
</InstantiationParams>
|
|
54
|
-
</InstantiateVAppTemplateParams>
|
|
55
|
-
DATA
|
|
56
|
-
|
|
57
|
-
request(
|
|
58
|
-
:body => data,
|
|
59
|
-
:expects => 200,
|
|
60
|
-
:headers => { 'Content-Type' => 'application/vnd.vmware.vcloud.instantiateVAppTemplateParams+xml' },
|
|
61
|
-
:method => 'POST',
|
|
62
|
-
:parser => Fog::Parsers::Terremark::InstantiateVappTemplate.new,
|
|
63
|
-
:path => "vdc/#{options['vdc_id']}/action/instantiatevAppTemplate"
|
|
64
|
-
)
|
|
65
|
-
end
|
|
66
|
-
|
|
67
|
-
end
|
|
68
|
-
|
|
69
|
-
class Mock
|
|
70
|
-
|
|
71
|
-
def instatiate_vapp_template(vapp_template_id)
|
|
72
|
-
raise MockNotImplemented.new("Contributions welcome!")
|
|
73
|
-
end
|
|
74
|
-
|
|
75
|
-
end
|
|
76
|
-
end
|
|
77
|
-
end
|
|
@@ -1,41 +0,0 @@
|
|
|
1
|
-
module Fog
|
|
2
|
-
module Terremark
|
|
3
|
-
class Real
|
|
4
|
-
|
|
5
|
-
# Power off a vapp
|
|
6
|
-
#
|
|
7
|
-
# ==== Parameters
|
|
8
|
-
# * vapp_id<~Integer> - Id of vapp to power off
|
|
9
|
-
#
|
|
10
|
-
# ==== Returns
|
|
11
|
-
# * response<~Excon::Response>:
|
|
12
|
-
# * body<~Hash>:
|
|
13
|
-
# * 'endTime'<~String> - endTime of task
|
|
14
|
-
# * 'href'<~String> - link to task
|
|
15
|
-
# * 'startTime'<~String> - startTime of task
|
|
16
|
-
# * 'status'<~String> - status of task
|
|
17
|
-
# * 'type'<~String> - type of task
|
|
18
|
-
# * 'Owner'<~String> -
|
|
19
|
-
# * 'href'<~String> - href of owner
|
|
20
|
-
# * 'name'<~String> - name of owner
|
|
21
|
-
# * 'type'<~String> - type of owner
|
|
22
|
-
def power_off(vapp_id)
|
|
23
|
-
request(
|
|
24
|
-
:expects => 202,
|
|
25
|
-
:method => 'POST',
|
|
26
|
-
:parser => Fog::Parsers::Terremark::Task.new,
|
|
27
|
-
:path => "vApp/#{vapp_id}/power/action/powerOff"
|
|
28
|
-
)
|
|
29
|
-
end
|
|
30
|
-
|
|
31
|
-
end
|
|
32
|
-
|
|
33
|
-
class Mock
|
|
34
|
-
|
|
35
|
-
def power_off(vapp_id)
|
|
36
|
-
raise MockNotImplemented.new("Contributions welcome!")
|
|
37
|
-
end
|
|
38
|
-
|
|
39
|
-
end
|
|
40
|
-
end
|
|
41
|
-
end
|
|
@@ -1,41 +0,0 @@
|
|
|
1
|
-
module Fog
|
|
2
|
-
module Terremark
|
|
3
|
-
class Real
|
|
4
|
-
|
|
5
|
-
# Power on a vapp
|
|
6
|
-
#
|
|
7
|
-
# ==== Parameters
|
|
8
|
-
# * vapp_id<~Integer> - Id of vapp to power on
|
|
9
|
-
#
|
|
10
|
-
# ==== Returns
|
|
11
|
-
# * response<~Excon::Response>:
|
|
12
|
-
# * body<~Hash>:
|
|
13
|
-
# * 'endTime'<~String> - endTime of task
|
|
14
|
-
# * 'href'<~String> - link to task
|
|
15
|
-
# * 'startTime'<~String> - startTime of task
|
|
16
|
-
# * 'status'<~String> - status of task
|
|
17
|
-
# * 'type'<~String> - type of task
|
|
18
|
-
# * 'Owner'<~String> -
|
|
19
|
-
# * 'href'<~String> - href of owner
|
|
20
|
-
# * 'name'<~String> - name of owner
|
|
21
|
-
# * 'type'<~String> - type of owner
|
|
22
|
-
def power_on(vapp_id)
|
|
23
|
-
request(
|
|
24
|
-
:expects => 202,
|
|
25
|
-
:method => 'POST',
|
|
26
|
-
:parser => Fog::Parsers::Terremark::Task.new,
|
|
27
|
-
:path => "vApp/#{vapp_id}/power/action/powerOn"
|
|
28
|
-
)
|
|
29
|
-
end
|
|
30
|
-
|
|
31
|
-
end
|
|
32
|
-
|
|
33
|
-
class Mock
|
|
34
|
-
|
|
35
|
-
def power_on(vapp_id)
|
|
36
|
-
raise MockNotImplemented.new("Contributions welcome!")
|
|
37
|
-
end
|
|
38
|
-
|
|
39
|
-
end
|
|
40
|
-
end
|
|
41
|
-
end
|
|
@@ -1,41 +0,0 @@
|
|
|
1
|
-
module Fog
|
|
2
|
-
module Terremark
|
|
3
|
-
class Real
|
|
4
|
-
|
|
5
|
-
# Reset a vapp
|
|
6
|
-
#
|
|
7
|
-
# ==== Parameters
|
|
8
|
-
# * vapp_id<~Integer> - Id of vapp to reset
|
|
9
|
-
#
|
|
10
|
-
# ==== Returns
|
|
11
|
-
# * response<~Excon::Response>:
|
|
12
|
-
# * body<~Hash>:
|
|
13
|
-
# * 'endTime'<~String> - endTime of task
|
|
14
|
-
# * 'href'<~String> - link to task
|
|
15
|
-
# * 'startTime'<~String> - startTime of task
|
|
16
|
-
# * 'status'<~String> - status of task
|
|
17
|
-
# * 'type'<~String> - type of task
|
|
18
|
-
# * 'Owner'<~String> -
|
|
19
|
-
# * 'href'<~String> - href of owner
|
|
20
|
-
# * 'name'<~String> - name of owner
|
|
21
|
-
# * 'type'<~String> - type of owner
|
|
22
|
-
def reset(vapp_id)
|
|
23
|
-
request(
|
|
24
|
-
:expects => 202,
|
|
25
|
-
:method => 'POST',
|
|
26
|
-
:parser => Fog::Parsers::Terremark::Task.new,
|
|
27
|
-
:path => "vApp/#{vapp_id}/power/action/reset"
|
|
28
|
-
)
|
|
29
|
-
end
|
|
30
|
-
|
|
31
|
-
end
|
|
32
|
-
|
|
33
|
-
class Mock
|
|
34
|
-
|
|
35
|
-
def reset(vapp_id)
|
|
36
|
-
raise MockNotImplemented.new("Contributions welcome!")
|
|
37
|
-
end
|
|
38
|
-
|
|
39
|
-
end
|
|
40
|
-
end
|
|
41
|
-
end
|
|
@@ -1,41 +0,0 @@
|
|
|
1
|
-
module Fog
|
|
2
|
-
module Terremark
|
|
3
|
-
class Real
|
|
4
|
-
|
|
5
|
-
# Shutdown a vapp
|
|
6
|
-
#
|
|
7
|
-
# ==== Parameters
|
|
8
|
-
# * vapp_id<~Integer> - Id of vapp to shutdown
|
|
9
|
-
#
|
|
10
|
-
# ==== Returns
|
|
11
|
-
# * response<~Excon::Response>:
|
|
12
|
-
# * body<~Hash>:
|
|
13
|
-
# * 'endTime'<~String> - endTime of task
|
|
14
|
-
# * 'href'<~String> - link to task
|
|
15
|
-
# * 'startTime'<~String> - startTime of task
|
|
16
|
-
# * 'status'<~String> - status of task
|
|
17
|
-
# * 'type'<~String> - type of task
|
|
18
|
-
# * 'Owner'<~String> -
|
|
19
|
-
# * 'href'<~String> - href of owner
|
|
20
|
-
# * 'name'<~String> - name of owner
|
|
21
|
-
# * 'type'<~String> - type of owner
|
|
22
|
-
def shutdown(vapp_id)
|
|
23
|
-
request(
|
|
24
|
-
:expects => 204,
|
|
25
|
-
:method => 'POST',
|
|
26
|
-
:parser => Fog::Parsers::Terremark::Task.new,
|
|
27
|
-
:path => "vApp/#{vapp_id}/power/action/shutdown"
|
|
28
|
-
)
|
|
29
|
-
end
|
|
30
|
-
|
|
31
|
-
end
|
|
32
|
-
|
|
33
|
-
class Mock
|
|
34
|
-
|
|
35
|
-
def shutdown(vapp_id)
|
|
36
|
-
raise MockNotImplemented.new("Contributions welcome!")
|
|
37
|
-
end
|
|
38
|
-
|
|
39
|
-
end
|
|
40
|
-
end
|
|
41
|
-
end
|