fog-gridscale 0.1.2

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.
Files changed (209) hide show
  1. checksums.yaml +7 -0
  2. data/.gitignore +9 -0
  3. data/.ruby-gemset +0 -0
  4. data/.ruby-version +0 -0
  5. data/.travis.yml +5 -0
  6. data/CHANGELOG.md +14 -0
  7. data/CONTRIBUTING.md +21 -0
  8. data/CONTRIBUTORS.md +2 -0
  9. data/Gemfile +6 -0
  10. data/LICENSE.md +21 -0
  11. data/README.md +87 -0
  12. data/Rakefile +10 -0
  13. data/bin/console +14 -0
  14. data/bin/setup +8 -0
  15. data/fog-gridscale.gemspec +41 -0
  16. data/lib/fog/bin/gridscale.rb +29 -0
  17. data/lib/fog/compute/gridscale.rb +325 -0
  18. data/lib/fog/compute/gridscale/models/access_key.rb +28 -0
  19. data/lib/fog/compute/gridscale/models/access_keys.rb +27 -0
  20. data/lib/fog/compute/gridscale/models/bucket.rb +15 -0
  21. data/lib/fog/compute/gridscale/models/buckets.rb +27 -0
  22. data/lib/fog/compute/gridscale/models/cas.rb +51 -0
  23. data/lib/fog/compute/gridscale/models/cass.rb +27 -0
  24. data/lib/fog/compute/gridscale/models/deleted_ip.rb +30 -0
  25. data/lib/fog/compute/gridscale/models/deleted_ips.rb +18 -0
  26. data/lib/fog/compute/gridscale/models/deleted_isoimage.rb +32 -0
  27. data/lib/fog/compute/gridscale/models/deleted_isoimages.rb +18 -0
  28. data/lib/fog/compute/gridscale/models/deleted_network.rb +29 -0
  29. data/lib/fog/compute/gridscale/models/deleted_networks.rb +18 -0
  30. data/lib/fog/compute/gridscale/models/deleted_server.rb +47 -0
  31. data/lib/fog/compute/gridscale/models/deleted_servers.rb +20 -0
  32. data/lib/fog/compute/gridscale/models/deleted_snapshot.rb +32 -0
  33. data/lib/fog/compute/gridscale/models/deleted_snapshots.rb +18 -0
  34. data/lib/fog/compute/gridscale/models/deleted_storage.rb +30 -0
  35. data/lib/fog/compute/gridscale/models/deleted_storages.rb +18 -0
  36. data/lib/fog/compute/gridscale/models/deleted_template.rb +33 -0
  37. data/lib/fog/compute/gridscale/models/deleted_templates.rb +19 -0
  38. data/lib/fog/compute/gridscale/models/firewall.rb +46 -0
  39. data/lib/fog/compute/gridscale/models/firewalls.rb +27 -0
  40. data/lib/fog/compute/gridscale/models/interface.rb +44 -0
  41. data/lib/fog/compute/gridscale/models/interfaces.rb +25 -0
  42. data/lib/fog/compute/gridscale/models/ip.rb +72 -0
  43. data/lib/fog/compute/gridscale/models/ips.rb +26 -0
  44. data/lib/fog/compute/gridscale/models/isoimage.rb +68 -0
  45. data/lib/fog/compute/gridscale/models/isoimages.rb +25 -0
  46. data/lib/fog/compute/gridscale/models/loadbalancer.rb +64 -0
  47. data/lib/fog/compute/gridscale/models/loadbalancers.rb +26 -0
  48. data/lib/fog/compute/gridscale/models/location.rb +18 -0
  49. data/lib/fog/compute/gridscale/models/locations.rb +26 -0
  50. data/lib/fog/compute/gridscale/models/marketplace_template.rb +71 -0
  51. data/lib/fog/compute/gridscale/models/marketplace_templates.rb +27 -0
  52. data/lib/fog/compute/gridscale/models/network.rb +73 -0
  53. data/lib/fog/compute/gridscale/models/networks.rb +25 -0
  54. data/lib/fog/compute/gridscale/models/paas_security_zone.rb +65 -0
  55. data/lib/fog/compute/gridscale/models/paas_security_zones.rb +26 -0
  56. data/lib/fog/compute/gridscale/models/paas_service.rb +62 -0
  57. data/lib/fog/compute/gridscale/models/paas_services.rb +25 -0
  58. data/lib/fog/compute/gridscale/models/paging_collection.rb +42 -0
  59. data/lib/fog/compute/gridscale/models/request.rb +16 -0
  60. data/lib/fog/compute/gridscale/models/requests.rb +19 -0
  61. data/lib/fog/compute/gridscale/models/server.rb +168 -0
  62. data/lib/fog/compute/gridscale/models/server_relation_ip.rb +49 -0
  63. data/lib/fog/compute/gridscale/models/server_relation_ips.rb +27 -0
  64. data/lib/fog/compute/gridscale/models/server_relation_isoimage.rb +47 -0
  65. data/lib/fog/compute/gridscale/models/server_relation_isoimages.rb +27 -0
  66. data/lib/fog/compute/gridscale/models/server_relation_network.rb +58 -0
  67. data/lib/fog/compute/gridscale/models/server_relation_networks.rb +28 -0
  68. data/lib/fog/compute/gridscale/models/server_relation_storage.rb +53 -0
  69. data/lib/fog/compute/gridscale/models/server_relation_storages.rb +27 -0
  70. data/lib/fog/compute/gridscale/models/servers.rb +27 -0
  71. data/lib/fog/compute/gridscale/models/snapshot.rb +56 -0
  72. data/lib/fog/compute/gridscale/models/snapshot_schedule.rb +50 -0
  73. data/lib/fog/compute/gridscale/models/snapshot_schedules.rb +25 -0
  74. data/lib/fog/compute/gridscale/models/snapshots.rb +25 -0
  75. data/lib/fog/compute/gridscale/models/sshkey.rb +49 -0
  76. data/lib/fog/compute/gridscale/models/sshkeys.rb +25 -0
  77. data/lib/fog/compute/gridscale/models/storage.rb +78 -0
  78. data/lib/fog/compute/gridscale/models/storages.rb +25 -0
  79. data/lib/fog/compute/gridscale/models/template.rb +67 -0
  80. data/lib/fog/compute/gridscale/models/templates.rb +25 -0
  81. data/lib/fog/compute/gridscale/requests/access_key_create.rb +19 -0
  82. data/lib/fog/compute/gridscale/requests/access_key_delete.rb +20 -0
  83. data/lib/fog/compute/gridscale/requests/access_key_get.rb +17 -0
  84. data/lib/fog/compute/gridscale/requests/access_keys_get.rb +19 -0
  85. data/lib/fog/compute/gridscale/requests/bucket_get.rb +18 -0
  86. data/lib/fog/compute/gridscale/requests/buckets_get.rb +18 -0
  87. data/lib/fog/compute/gridscale/requests/cas_actions_get.rb +17 -0
  88. data/lib/fog/compute/gridscale/requests/cas_create.rb +42 -0
  89. data/lib/fog/compute/gridscale/requests/cas_delete.rb +20 -0
  90. data/lib/fog/compute/gridscale/requests/cas_events_get.rb +17 -0
  91. data/lib/fog/compute/gridscale/requests/cas_get.rb +17 -0
  92. data/lib/fog/compute/gridscale/requests/cas_update.rb +23 -0
  93. data/lib/fog/compute/gridscale/requests/cass_get.rb +18 -0
  94. data/lib/fog/compute/gridscale/requests/deleted_ips_get.rb +18 -0
  95. data/lib/fog/compute/gridscale/requests/deleted_isoimages_get.rb +18 -0
  96. data/lib/fog/compute/gridscale/requests/deleted_networks_get.rb +18 -0
  97. data/lib/fog/compute/gridscale/requests/deleted_servers_get.rb +18 -0
  98. data/lib/fog/compute/gridscale/requests/deleted_snapshots_get.rb +18 -0
  99. data/lib/fog/compute/gridscale/requests/deleted_storages_get.rb +18 -0
  100. data/lib/fog/compute/gridscale/requests/deleted_templates_get.rb +18 -0
  101. data/lib/fog/compute/gridscale/requests/firewall_create.rb +31 -0
  102. data/lib/fog/compute/gridscale/requests/firewall_delete.rb +20 -0
  103. data/lib/fog/compute/gridscale/requests/firewall_events_get.rb +17 -0
  104. data/lib/fog/compute/gridscale/requests/firewall_get.rb +17 -0
  105. data/lib/fog/compute/gridscale/requests/firewall_update.rb +24 -0
  106. data/lib/fog/compute/gridscale/requests/firewalls_get.rb +18 -0
  107. data/lib/fog/compute/gridscale/requests/ip_create.rb +46 -0
  108. data/lib/fog/compute/gridscale/requests/ip_delete.rb +20 -0
  109. data/lib/fog/compute/gridscale/requests/ip_events_get.rb +17 -0
  110. data/lib/fog/compute/gridscale/requests/ip_get.rb +17 -0
  111. data/lib/fog/compute/gridscale/requests/ip_update.rb +24 -0
  112. data/lib/fog/compute/gridscale/requests/ips_get.rb +19 -0
  113. data/lib/fog/compute/gridscale/requests/isoimage_create.rb +37 -0
  114. data/lib/fog/compute/gridscale/requests/isoimage_delete.rb +20 -0
  115. data/lib/fog/compute/gridscale/requests/isoimage_events_get.rb +17 -0
  116. data/lib/fog/compute/gridscale/requests/isoimage_get.rb +17 -0
  117. data/lib/fog/compute/gridscale/requests/isoimage_update.rb +24 -0
  118. data/lib/fog/compute/gridscale/requests/isoimages_get.rb +18 -0
  119. data/lib/fog/compute/gridscale/requests/load_balancer_create.rb +40 -0
  120. data/lib/fog/compute/gridscale/requests/load_balancer_delete.rb +20 -0
  121. data/lib/fog/compute/gridscale/requests/load_balancer_events_get.rb +17 -0
  122. data/lib/fog/compute/gridscale/requests/load_balancer_get.rb +17 -0
  123. data/lib/fog/compute/gridscale/requests/load_balancer_update.rb +24 -0
  124. data/lib/fog/compute/gridscale/requests/load_balancers_get.rb +18 -0
  125. data/lib/fog/compute/gridscale/requests/location_get.rb +17 -0
  126. data/lib/fog/compute/gridscale/requests/locations_get.rb +18 -0
  127. data/lib/fog/compute/gridscale/requests/marketplace_template_create.rb +47 -0
  128. data/lib/fog/compute/gridscale/requests/marketplace_template_delete.rb +20 -0
  129. data/lib/fog/compute/gridscale/requests/marketplace_template_events_get.rb +17 -0
  130. data/lib/fog/compute/gridscale/requests/marketplace_template_get.rb +17 -0
  131. data/lib/fog/compute/gridscale/requests/marketplace_template_update.rb +24 -0
  132. data/lib/fog/compute/gridscale/requests/marketplace_templates_get.rb +17 -0
  133. data/lib/fog/compute/gridscale/requests/network_create.rb +41 -0
  134. data/lib/fog/compute/gridscale/requests/network_delete.rb +21 -0
  135. data/lib/fog/compute/gridscale/requests/network_events_get.rb +17 -0
  136. data/lib/fog/compute/gridscale/requests/network_get.rb +17 -0
  137. data/lib/fog/compute/gridscale/requests/network_update.rb +24 -0
  138. data/lib/fog/compute/gridscale/requests/networks_get.rb +18 -0
  139. data/lib/fog/compute/gridscale/requests/paas_security_zone_create.rb +36 -0
  140. data/lib/fog/compute/gridscale/requests/paas_security_zone_delete.rb +20 -0
  141. data/lib/fog/compute/gridscale/requests/paas_security_zone_get.rb +17 -0
  142. data/lib/fog/compute/gridscale/requests/paas_security_zone_update.rb +25 -0
  143. data/lib/fog/compute/gridscale/requests/paas_security_zones_get.rb +18 -0
  144. data/lib/fog/compute/gridscale/requests/paas_service_create.rb +30 -0
  145. data/lib/fog/compute/gridscale/requests/paas_service_delete.rb +20 -0
  146. data/lib/fog/compute/gridscale/requests/paas_service_get.rb +17 -0
  147. data/lib/fog/compute/gridscale/requests/paas_service_update.rb +25 -0
  148. data/lib/fog/compute/gridscale/requests/paas_services_get.rb +18 -0
  149. data/lib/fog/compute/gridscale/requests/request_get.rb +17 -0
  150. data/lib/fog/compute/gridscale/requests/server_create.rb +114 -0
  151. data/lib/fog/compute/gridscale/requests/server_delete.rb +20 -0
  152. data/lib/fog/compute/gridscale/requests/server_events_get.rb +17 -0
  153. data/lib/fog/compute/gridscale/requests/server_get.rb +17 -0
  154. data/lib/fog/compute/gridscale/requests/server_power_get.rb +17 -0
  155. data/lib/fog/compute/gridscale/requests/server_power_off.rb +25 -0
  156. data/lib/fog/compute/gridscale/requests/server_power_on.rb +25 -0
  157. data/lib/fog/compute/gridscale/requests/server_relation_ip_create.rb +32 -0
  158. data/lib/fog/compute/gridscale/requests/server_relation_ip_delete.rb +22 -0
  159. data/lib/fog/compute/gridscale/requests/server_relation_ip_get.rb +19 -0
  160. data/lib/fog/compute/gridscale/requests/server_relation_ips_get.rb +19 -0
  161. data/lib/fog/compute/gridscale/requests/server_relation_isoimage_create.rb +30 -0
  162. data/lib/fog/compute/gridscale/requests/server_relation_isoimage_delete.rb +22 -0
  163. data/lib/fog/compute/gridscale/requests/server_relation_isoimage_get.rb +19 -0
  164. data/lib/fog/compute/gridscale/requests/server_relation_isoimage_update.rb +23 -0
  165. data/lib/fog/compute/gridscale/requests/server_relation_isoimages_get.rb +19 -0
  166. data/lib/fog/compute/gridscale/requests/server_relation_network_create.rb +31 -0
  167. data/lib/fog/compute/gridscale/requests/server_relation_network_delete.rb +24 -0
  168. data/lib/fog/compute/gridscale/requests/server_relation_network_get.rb +19 -0
  169. data/lib/fog/compute/gridscale/requests/server_relation_network_update.rb +23 -0
  170. data/lib/fog/compute/gridscale/requests/server_relation_networks_get.rb +21 -0
  171. data/lib/fog/compute/gridscale/requests/server_relation_storage_create.rb +31 -0
  172. data/lib/fog/compute/gridscale/requests/server_relation_storage_delete.rb +24 -0
  173. data/lib/fog/compute/gridscale/requests/server_relation_storage_get.rb +22 -0
  174. data/lib/fog/compute/gridscale/requests/server_relation_storage_update.rb +23 -0
  175. data/lib/fog/compute/gridscale/requests/server_relation_storages_get.rb +21 -0
  176. data/lib/fog/compute/gridscale/requests/server_shutdown.rb +20 -0
  177. data/lib/fog/compute/gridscale/requests/server_update.rb +24 -0
  178. data/lib/fog/compute/gridscale/requests/servers_get.rb +18 -0
  179. data/lib/fog/compute/gridscale/requests/snapshot_create.rb +29 -0
  180. data/lib/fog/compute/gridscale/requests/snapshot_delete.rb +24 -0
  181. data/lib/fog/compute/gridscale/requests/snapshot_get.rb +19 -0
  182. data/lib/fog/compute/gridscale/requests/snapshot_schedule_create.rb +30 -0
  183. data/lib/fog/compute/gridscale/requests/snapshot_schedule_delete.rb +24 -0
  184. data/lib/fog/compute/gridscale/requests/snapshot_schedule_get.rb +19 -0
  185. data/lib/fog/compute/gridscale/requests/snapshot_schedule_update.rb +24 -0
  186. data/lib/fog/compute/gridscale/requests/snapshot_schedules_get.rb +19 -0
  187. data/lib/fog/compute/gridscale/requests/snapshot_update.rb +23 -0
  188. data/lib/fog/compute/gridscale/requests/snapshots_get.rb +18 -0
  189. data/lib/fog/compute/gridscale/requests/sshkey_create.rb +33 -0
  190. data/lib/fog/compute/gridscale/requests/sshkey_delete.rb +20 -0
  191. data/lib/fog/compute/gridscale/requests/sshkey_get.rb +17 -0
  192. data/lib/fog/compute/gridscale/requests/sshkey_update.rb +23 -0
  193. data/lib/fog/compute/gridscale/requests/sshkeys_get.rb +19 -0
  194. data/lib/fog/compute/gridscale/requests/storage_create.rb +44 -0
  195. data/lib/fog/compute/gridscale/requests/storage_delete.rb +20 -0
  196. data/lib/fog/compute/gridscale/requests/storage_events_get.rb +17 -0
  197. data/lib/fog/compute/gridscale/requests/storage_get.rb +17 -0
  198. data/lib/fog/compute/gridscale/requests/storage_update.rb +24 -0
  199. data/lib/fog/compute/gridscale/requests/storages_get.rb +18 -0
  200. data/lib/fog/compute/gridscale/requests/template_create.rb +31 -0
  201. data/lib/fog/compute/gridscale/requests/template_delete.rb +20 -0
  202. data/lib/fog/compute/gridscale/requests/template_events_get.rb +17 -0
  203. data/lib/fog/compute/gridscale/requests/template_get.rb +17 -0
  204. data/lib/fog/compute/gridscale/requests/template_update.rb +24 -0
  205. data/lib/fog/compute/gridscale/requests/templates_get.rb +19 -0
  206. data/lib/fog/gridscale.rb +15 -0
  207. data/lib/fog/gridscale/service.rb +51 -0
  208. data/lib/fog/gridscale/version.rb +5 -0
  209. metadata +322 -0
@@ -0,0 +1,23 @@
1
+ module Fog
2
+ module Compute
3
+ class Gridscale
4
+ class Real
5
+
6
+ def cas_update(cas_uuid, payload)
7
+ encoded_body = Fog::JSON.encode(payload)
8
+
9
+ request(
10
+ :expects => [202],
11
+ :headers => {
12
+ 'Content-Type' => "application/json; charset=UTF-8",
13
+ },
14
+ :method => 'PATCH',
15
+ :path => "/objects/cas/tasks/#{cas_uuid}",
16
+ :body => encoded_body,
17
+ )
18
+ end
19
+
20
+ end
21
+ end
22
+ end
23
+ end
@@ -0,0 +1,18 @@
1
+ module Fog
2
+ module Compute
3
+ class Gridscale
4
+ class Real
5
+
6
+ def cass_get(filters={})
7
+ request(
8
+ :expects => [200],
9
+ :method => 'GET',
10
+ :path => "objects/cas/tasks",
11
+ :query => filters
12
+ )
13
+ end
14
+
15
+ end
16
+ end
17
+ end
18
+ end
@@ -0,0 +1,18 @@
1
+ module Fog
2
+ module Compute
3
+ class Gridscale
4
+ class Real
5
+
6
+ def deleted_ips_get(filters={})
7
+ request(
8
+ :expects => [200],
9
+ :method => 'GET',
10
+ :path => "objects/deleted/ips",
11
+ :query => filters
12
+ )
13
+ end
14
+
15
+ end
16
+ end
17
+ end
18
+ end
@@ -0,0 +1,18 @@
1
+ module Fog
2
+ module Compute
3
+ class Gridscale
4
+ class Real
5
+
6
+ def deleted_isoimages_get(filters={})
7
+ request(
8
+ :expects => [200],
9
+ :method => 'GET',
10
+ :path => "objects/deleted/isoimages",
11
+ :query => filters
12
+ )
13
+ end
14
+
15
+ end
16
+ end
17
+ end
18
+ end
@@ -0,0 +1,18 @@
1
+ module Fog
2
+ module Compute
3
+ class Gridscale
4
+ class Real
5
+
6
+ def deleted_networks_get(filters={})
7
+ request(
8
+ :expects => [200],
9
+ :method => 'GET',
10
+ :path => "objects/deleted/networks",
11
+ :query => filters
12
+ )
13
+ end
14
+
15
+ end
16
+ end
17
+ end
18
+ end
@@ -0,0 +1,18 @@
1
+ module Fog
2
+ module Compute
3
+ class Gridscale
4
+ class Real
5
+
6
+ def deleted_servers_get(filters={})
7
+ request(
8
+ :expects => [200],
9
+ :method => 'GET',
10
+ :path => "objects/deleted/servers",
11
+ :query => filters
12
+ )
13
+ end
14
+
15
+ end
16
+ end
17
+ end
18
+ end
@@ -0,0 +1,18 @@
1
+ module Fog
2
+ module Compute
3
+ class Gridscale
4
+ class Real
5
+
6
+ def deleted_snapshots_get(filters={})
7
+ request(
8
+ :expects => [200],
9
+ :method => 'GET',
10
+ :path => "objects/deleted/snapshots",
11
+ :query => filters
12
+ )
13
+ end
14
+
15
+ end
16
+ end
17
+ end
18
+ end
@@ -0,0 +1,18 @@
1
+ module Fog
2
+ module Compute
3
+ class Gridscale
4
+ class Real
5
+
6
+ def deleted_storages_get(filters={})
7
+ request(
8
+ :expects => [200],
9
+ :method => 'GET',
10
+ :path => "objects/deleted/storages",
11
+ :query => filters
12
+ )
13
+ end
14
+
15
+ end
16
+ end
17
+ end
18
+ end
@@ -0,0 +1,18 @@
1
+ module Fog
2
+ module Compute
3
+ class Gridscale
4
+ class Real
5
+
6
+ def deleted_templates_get(filters={})
7
+ request(
8
+ :expects => [200],
9
+ :method => 'GET',
10
+ :path => "objects/deleted/templates",
11
+ :query => filters
12
+ )
13
+ end
14
+
15
+ end
16
+ end
17
+ end
18
+ end
@@ -0,0 +1,31 @@
1
+ module Fog
2
+ module Compute
3
+ class Gridscale
4
+ class Real
5
+
6
+ def firewall_create(name, rules, options ={})
7
+
8
+ create_options ={
9
+ :name => name,
10
+ :rules => rules
11
+ }
12
+
13
+ create_options[:labels] = options[:labels] || []
14
+
15
+ encoded_body = Fog::JSON.encode(create_options)
16
+
17
+ request(
18
+ :expects => [202],
19
+ :headers => {
20
+ 'Content-Type' => "application/json; charset=UTF-8",
21
+ },
22
+ :method => 'POST',
23
+ :path => '/objects/firewalls',
24
+ :body => encoded_body,
25
+ )
26
+ end
27
+
28
+ end
29
+ end
30
+ end
31
+ end
@@ -0,0 +1,20 @@
1
+ module Fog
2
+ module Compute
3
+ class Gridscale
4
+ class Real
5
+
6
+ def firewall_delete(firewall_uuid)
7
+ request(
8
+ :expects => [204],
9
+ :headers => {
10
+ 'Content-Type' => "application/json; charset=UTF-8",
11
+ },
12
+ :method => 'DELETE',
13
+ :path => "/objects/firewalls/#{firewall_uuid}",
14
+ )
15
+ end
16
+
17
+ end
18
+ end
19
+ end
20
+ end
@@ -0,0 +1,17 @@
1
+ module Fog
2
+ module Compute
3
+ class Gridscale
4
+ class Real
5
+
6
+ def firewall_events_get(firewall_uuid)
7
+ request(
8
+ :expects => [200],
9
+ :method => 'GET',
10
+ :path => "/objects/firewalls/#{firewall_uuid}/events"
11
+ )
12
+ end
13
+
14
+ end
15
+ end
16
+ end
17
+ end
@@ -0,0 +1,17 @@
1
+ module Fog
2
+ module Compute
3
+ class Gridscale
4
+ class Real
5
+
6
+ def firewall_get(firewall_uuid)
7
+ request(
8
+ :expects => [200],
9
+ :method => 'GET',
10
+ :path => "/objects/firewalls/#{firewall_uuid}"
11
+ )
12
+ end
13
+
14
+ end
15
+ end
16
+ end
17
+ end
@@ -0,0 +1,24 @@
1
+ module Fog
2
+ module Compute
3
+ class Gridscale
4
+ class Real
5
+
6
+ def firewall_update(firewall_uuid, payload)
7
+
8
+ encoded_body = Fog::JSON.encode(payload)
9
+
10
+ request(
11
+ :expects => [204],
12
+ :headers => {
13
+ 'Content-Type' => "application/json; charset=UTF-8",
14
+ },
15
+ :method => 'PATCH',
16
+ :path => "/objects/firewalls/#{firewall_uuid}",
17
+ :body => encoded_body,
18
+ )
19
+ end
20
+
21
+ end
22
+ end
23
+ end
24
+ end
@@ -0,0 +1,18 @@
1
+ module Fog
2
+ module Compute
3
+ class Gridscale
4
+ class Real
5
+
6
+ def firewalls_get(filters={})
7
+ request(
8
+ :expects => [200],
9
+ :method => 'GET',
10
+ :path => "/objects/firewalls",
11
+ :query => filters
12
+ )
13
+ end
14
+
15
+ end
16
+ end
17
+ end
18
+ end
@@ -0,0 +1,46 @@
1
+ module Fog
2
+ module Compute
3
+ class Gridscale
4
+ class Real
5
+
6
+ def ip_create(family, options ={})
7
+
8
+ create_options = {
9
+ :family => family,
10
+ }
11
+ create_options[:labels] = options[:labels] || []
12
+
13
+ if options[:name]
14
+ create_options[:name] = options[:name]
15
+ end
16
+
17
+ if options[:failover]
18
+ create_options[:failover] = options[:failover]
19
+ end
20
+
21
+ if options[:reverse_dns]
22
+ create_options[:reverse_dns] = options[:reverse_dns]
23
+ end
24
+
25
+ if options[:location_uuid]
26
+ create_options[:location_uuid] = options[:location_uuid]
27
+ else
28
+ create_options[:location_uuid] = '45ed677b-3702-4b36-be2a-a2eab9827950'
29
+ end
30
+ encoded_body = Fog::JSON.encode(create_options)
31
+
32
+ request(
33
+ :expects => [202],
34
+ :headers => {
35
+ 'Content-Type' => "application/json; charset=UTF-8",
36
+ },
37
+ :method => 'POST',
38
+ :path => '/objects/ips',
39
+ :body => encoded_body,
40
+ )
41
+ end
42
+
43
+ end
44
+ end
45
+ end
46
+ end
@@ -0,0 +1,20 @@
1
+ module Fog
2
+ module Compute
3
+ class Gridscale
4
+ class Real
5
+
6
+ def ip_delete(ip_uuid)
7
+ request(
8
+ :expects => [204],
9
+ :headers => {
10
+ 'Content-Type' => "application/json; charset=UTF-8",
11
+ },
12
+ :method => 'DELETE',
13
+ :path => "/objects/ips/#{ip_uuid}",
14
+ )
15
+ end
16
+
17
+ end
18
+ end
19
+ end
20
+ end
@@ -0,0 +1,17 @@
1
+ module Fog
2
+ module Compute
3
+ class Gridscale
4
+ class Real
5
+
6
+ def ip_events_get(ip_uuid)
7
+ request(
8
+ :expects => [200],
9
+ :method => 'GET',
10
+ :path => "/objects/ips/#{ip_uuid}/events"
11
+ )
12
+ end
13
+
14
+ end
15
+ end
16
+ end
17
+ end
@@ -0,0 +1,17 @@
1
+ module Fog
2
+ module Compute
3
+ class Gridscale
4
+ class Real
5
+
6
+ def ip_get(ip_uuid)
7
+ request(
8
+ :expects => [200],
9
+ :method => 'GET',
10
+ :path => "/objects/ips/#{ip_uuid}"
11
+ )
12
+ end
13
+
14
+ end
15
+ end
16
+ end
17
+ end
@@ -0,0 +1,24 @@
1
+ module Fog
2
+ module Compute
3
+ class Gridscale
4
+ class Real
5
+
6
+ def ip_update(ip_uuid, payload)
7
+
8
+ encoded_body = Fog::JSON.encode(payload)
9
+
10
+ request(
11
+ :expects => [204],
12
+ :headers => {
13
+ 'Content-Type' => "application/json; charset=UTF-8",
14
+ },
15
+ :method => 'PATCH',
16
+ :path => "/objects/ips/#{ip_uuid}",
17
+ :body => encoded_body,
18
+ )
19
+ end
20
+
21
+ end
22
+ end
23
+ end
24
+ end