apcera 0.1.1

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 (71) hide show
  1. checksums.yaml +7 -0
  2. data/apcera.gemspec +31 -0
  3. data/lib/apcera/api/default_api.rb +128 -0
  4. data/lib/apcera/api/instances_api.rb +280 -0
  5. data/lib/apcera/api/jobs_api.rb +1428 -0
  6. data/lib/apcera/api/logs_api.rb +120 -0
  7. data/lib/apcera/api/metrics_api.rb +280 -0
  8. data/lib/apcera/api/packages_api.rb +541 -0
  9. data/lib/apcera/api/providers_api.rb +175 -0
  10. data/lib/apcera/api/rules_api.rb +228 -0
  11. data/lib/apcera/api/services_and_bindings_api.rb +278 -0
  12. data/lib/apcera/api/staging_pipelines_api.rb +281 -0
  13. data/lib/apcera/api/utilities_api.rb +327 -0
  14. data/lib/apcera/api_client.rb +294 -0
  15. data/lib/apcera/api_error.rb +24 -0
  16. data/lib/apcera/configuration.rb +173 -0
  17. data/lib/apcera/models/apc_version_object.rb +37 -0
  18. data/lib/apcera/models/api_error.rb +143 -0
  19. data/lib/apcera/models/audit_log_item.rb +117 -0
  20. data/lib/apcera/models/audit_log_item_old.rb +85 -0
  21. data/lib/apcera/models/base_object.rb +96 -0
  22. data/lib/apcera/models/binding.rb +137 -0
  23. data/lib/apcera/models/create_docker_job_request.rb +197 -0
  24. data/lib/apcera/models/create_docker_job_response.rb +37 -0
  25. data/lib/apcera/models/dependency.rb +53 -0
  26. data/lib/apcera/models/dependency_resolve.rb +45 -0
  27. data/lib/apcera/models/docker_origin.rb +63 -0
  28. data/lib/apcera/models/drain.rb +61 -0
  29. data/lib/apcera/models/drain_config.rb +53 -0
  30. data/lib/apcera/models/file_listing.rb +45 -0
  31. data/lib/apcera/models/info.rb +53 -0
  32. data/lib/apcera/models/instance_manager.rb +105 -0
  33. data/lib/apcera/models/instance_state.rb +117 -0
  34. data/lib/apcera/models/instances.rb +109 -0
  35. data/lib/apcera/models/job.rb +243 -0
  36. data/lib/apcera/models/job_health.rb +63 -0
  37. data/lib/apcera/models/job_preferences.rb +37 -0
  38. data/lib/apcera/models/log.rb +53 -0
  39. data/lib/apcera/models/metric_series.rb +49 -0
  40. data/lib/apcera/models/metric_series_hash.rb +29 -0
  41. data/lib/apcera/models/metrics.rb +49 -0
  42. data/lib/apcera/models/namespace.rb +37 -0
  43. data/lib/apcera/models/package.rb +183 -0
  44. data/lib/apcera/models/package_depends_request.rb +47 -0
  45. data/lib/apcera/models/package_info.rb +69 -0
  46. data/lib/apcera/models/package_resource.rb +61 -0
  47. data/lib/apcera/models/policy_error.rb +63 -0
  48. data/lib/apcera/models/port.rb +55 -0
  49. data/lib/apcera/models/process.rb +37 -0
  50. data/lib/apcera/models/process_object.rb +115 -0
  51. data/lib/apcera/models/provide.rb +53 -0
  52. data/lib/apcera/models/provider.rb +85 -0
  53. data/lib/apcera/models/resource.rb +69 -0
  54. data/lib/apcera/models/restart_config.rb +53 -0
  55. data/lib/apcera/models/rollout_config.rb +69 -0
  56. data/lib/apcera/models/route.rb +53 -0
  57. data/lib/apcera/models/rule.rb +101 -0
  58. data/lib/apcera/models/runtime.rb +47 -0
  59. data/lib/apcera/models/semi_pipe_rule.rb +101 -0
  60. data/lib/apcera/models/semi_pipe_rule_action.rb +37 -0
  61. data/lib/apcera/models/stager_job.rb +37 -0
  62. data/lib/apcera/models/staging_pipeline.rb +103 -0
  63. data/lib/apcera/models/sub_task.rb +61 -0
  64. data/lib/apcera/models/task.rb +87 -0
  65. data/lib/apcera/models/task_event.rb +113 -0
  66. data/lib/apcera/models/task_progress.rb +45 -0
  67. data/lib/apcera/models/unbind_parameter_object.rb +53 -0
  68. data/lib/apcera/models/unlink_parameter_object.rb +53 -0
  69. data/lib/apcera/version.rb +3 -0
  70. data/lib/apcera.rb +90 -0
  71. metadata +293 -0
checksums.yaml ADDED
@@ -0,0 +1,7 @@
1
+ ---
2
+ SHA1:
3
+ metadata.gz: 3a579516160db9ae512619f98c785dd2ca369843
4
+ data.tar.gz: a074f6b0e160609cceb2ee16e2317f538c0a54d6
5
+ SHA512:
6
+ metadata.gz: 942b850696a2ef0db3443f98db246342406ace7449625536a8a3b99cc1889b71b8d7d2bb7d7094c083a7a84b00e61e5ddb2c91b4c5ebf60107382bc832b6d5b9
7
+ data.tar.gz: ac3fdbbd1abf46a29cf3d81894e96e7e1f111b138edba80137aab04895b376d3cdd60415e7ba826f9dd85ba453e6c06038fa46dc348df7186b9be481c0007b0a
data/apcera.gemspec ADDED
@@ -0,0 +1,31 @@
1
+ # -*- encoding: utf-8 -*-
2
+ $:.push File.expand_path("../lib", __FILE__)
3
+ require "apcera/version"
4
+
5
+ Gem::Specification.new do |s|
6
+ s.name = "apcera"
7
+ s.version = Apcera::VERSION
8
+ s.platform = Gem::Platform::RUBY
9
+ s.authors = ["Jamie Smith"]
10
+ s.email = ["rubygems@jamieandamy.com"]
11
+ s.homepage = "http://apcera.com"
12
+ s.summary = %q{Unofficial wrapper for the Apcera REST APIs}
13
+ s.description = %q{Unofficial wrapper for the Apcera REST API}
14
+ s.license = "Apache-2.0"
15
+
16
+ s.add_runtime_dependency 'typhoeus', '~> 0.2', '>= 0.2.1'
17
+ s.add_runtime_dependency 'json', '~> 1.4', '>= 1.4.6'
18
+
19
+ s.add_development_dependency 'rspec', '~> 3.2', '>= 3.2.0'
20
+ s.add_development_dependency 'vcr', '~> 2.9', '>= 2.9.3'
21
+ s.add_development_dependency 'webmock', '~> 1.6', '>= 1.6.2'
22
+ s.add_development_dependency 'autotest', '~> 4.4', '>= 4.4.6'
23
+ s.add_development_dependency 'autotest-rails-pure', '~> 4.1', '>= 4.1.2'
24
+ s.add_development_dependency 'autotest-growl', '~> 0.2', '>= 0.2.16'
25
+ s.add_development_dependency 'autotest-fsevent', '~> 0.2', '>= 0.2.10'
26
+
27
+ s.files = `find *`.split("\n").uniq.sort.select{|f| !f.empty? }
28
+ s.test_files = `find spec/*`.split("\n")
29
+ s.executables = []
30
+ s.require_paths = ["lib"]
31
+ end
@@ -0,0 +1,128 @@
1
+ require "uri"
2
+
3
+ module Apcera
4
+ class DefaultApi
5
+ attr_accessor :api_client
6
+
7
+ def initialize(api_client = nil)
8
+ @api_client = api_client || Configuration.api_client
9
+ end
10
+
11
+ # Returns audit log items for the cluster.
12
+ # Returns a list audit log items. You can optionally filter the list by start time, end time, FQN, or event type.
13
+ # @param [Hash] opts the optional parameters
14
+ # @option opts [Float] :start_time UNIX timestamp. If specified, only events that occurred on or after the specified time are returned in the response.
15
+ # @option opts [Float] :end_time UNIX timestamp. If specified, only events that occurred on or before the specified time are returned in the response.
16
+ # @option opts [String] :fqn If specified, only events on the resource specified by `fqn` are returned in the response. You can also specify an FQN segment, which may include wildcards for the resource type. For example:\n * `*::/` returns all audit logs for all resource types.\n * `job::/` returns all audit logs for Job resource types. \n * `job::/apcera` returns all audit logs for Job resource types in the `/apcera` namespace and its sub-namespaces. \n * `*::/apcera` returns all audit logs for all resource types in the `/apcera` namespace its sub-namespaces.
17
+ # @option opts [String] :event_type If specified, only events of the specified type are returned in the response.
18
+ # @option opts [String] :authorization
19
+ # @return [Array<AuditLogItem>]
20
+ def audit_get(opts = {})
21
+
22
+ if Configuration.debugging
23
+ Configuration.logger.debug "Calling API: DefaultApi#audit_get ..."
24
+ end
25
+
26
+
27
+ # resource path
28
+ path = "/audit".sub('{format}','json')
29
+
30
+ # query parameters
31
+ query_params = {}
32
+ query_params[:'start_time'] = opts[:'start_time'] if opts[:'start_time']
33
+ query_params[:'end_time'] = opts[:'end_time'] if opts[:'end_time']
34
+ query_params[:'fqn'] = opts[:'fqn'] if opts[:'fqn']
35
+ query_params[:'event_type'] = opts[:'event_type'] if opts[:'event_type']
36
+
37
+ # header parameters
38
+ header_params = {}
39
+
40
+ # HTTP header 'Accept' (if needed)
41
+ _header_accept = []
42
+ _header_accept_result = @api_client.select_header_accept(_header_accept) and header_params['Accept'] = _header_accept_result
43
+
44
+ # HTTP header 'Content-Type'
45
+ _header_content_type = []
46
+ header_params['Content-Type'] = @api_client.select_header_content_type(_header_content_type)
47
+ header_params[:'authorization'] = opts[:'authorization'] if opts[:'authorization']
48
+
49
+ # form parameters
50
+ form_params = {}
51
+
52
+ # http body (model)
53
+ post_body = nil
54
+
55
+
56
+ auth_names = ['authorization']
57
+ result = @api_client.call_api(:GET, path,
58
+ :header_params => header_params,
59
+ :query_params => query_params,
60
+ :form_params => form_params,
61
+ :body => post_body,
62
+ :auth_names => auth_names,
63
+ :return_type => 'Array<AuditLogItem>')
64
+ if Configuration.debugging
65
+ Configuration.logger.debug "API called: DefaultApi#audit_get. Result: #{result.inspect}"
66
+ end
67
+ return result
68
+ end
69
+
70
+ # Deletes a task.
71
+ # Cancels the specified task.
72
+ # @param uuid UUID of the task delete.
73
+ # @param [Hash] opts the optional parameters
74
+ # @option opts [String] :authorization
75
+ # @return [nil]
76
+ def tasks_uuid_delete(uuid, opts = {})
77
+
78
+ if Configuration.debugging
79
+ Configuration.logger.debug "Calling API: DefaultApi#tasks_uuid_delete ..."
80
+ end
81
+
82
+
83
+ # verify the required parameter 'uuid' is set
84
+ fail "Missing the required parameter 'uuid' when calling tasks_uuid_delete" if uuid.nil?
85
+
86
+ # resource path
87
+ path = "/tasks/{uuid}".sub('{format}','json').sub('{' + 'uuid' + '}', uuid.to_s)
88
+
89
+ # query parameters
90
+ query_params = {}
91
+
92
+ # header parameters
93
+ header_params = {}
94
+
95
+ # HTTP header 'Accept' (if needed)
96
+ _header_accept = []
97
+ _header_accept_result = @api_client.select_header_accept(_header_accept) and header_params['Accept'] = _header_accept_result
98
+
99
+ # HTTP header 'Content-Type'
100
+ _header_content_type = []
101
+ header_params['Content-Type'] = @api_client.select_header_content_type(_header_content_type)
102
+ header_params[:'authorization'] = opts[:'authorization'] if opts[:'authorization']
103
+
104
+ # form parameters
105
+ form_params = {}
106
+
107
+ # http body (model)
108
+ post_body = nil
109
+
110
+
111
+ auth_names = ['authorization']
112
+ @api_client.call_api(:DELETE, path,
113
+ :header_params => header_params,
114
+ :query_params => query_params,
115
+ :form_params => form_params,
116
+ :body => post_body,
117
+ :auth_names => auth_names)
118
+ if Configuration.debugging
119
+ Configuration.logger.debug "API called: DefaultApi#tasks_uuid_delete"
120
+ end
121
+ return nil
122
+ end
123
+ end
124
+ end
125
+
126
+
127
+
128
+
@@ -0,0 +1,280 @@
1
+ require "uri"
2
+
3
+ module Apcera
4
+ class InstancesApi
5
+ attr_accessor :api_client
6
+
7
+ def initialize(api_client = nil)
8
+ @api_client = api_client || Configuration.api_client
9
+ end
10
+
11
+ # Returns a list of instance managers.
12
+ # Returns a list of instance managers.
13
+ # @param [Hash] opts the optional parameters
14
+ # @option opts [String] :authorization
15
+ # @return [Array<InstanceManager>]
16
+ def instance_managers_get(opts = {})
17
+
18
+ if Configuration.debugging
19
+ Configuration.logger.debug "Calling API: InstancesApi#instance_managers_get ..."
20
+ end
21
+
22
+
23
+ # resource path
24
+ path = "/instance_managers".sub('{format}','json')
25
+
26
+ # query parameters
27
+ query_params = {}
28
+
29
+ # header parameters
30
+ header_params = {}
31
+
32
+ # HTTP header 'Accept' (if needed)
33
+ _header_accept = []
34
+ _header_accept_result = @api_client.select_header_accept(_header_accept) and header_params['Accept'] = _header_accept_result
35
+
36
+ # HTTP header 'Content-Type'
37
+ _header_content_type = []
38
+ header_params['Content-Type'] = @api_client.select_header_content_type(_header_content_type)
39
+ header_params[:'authorization'] = opts[:'authorization'] if opts[:'authorization']
40
+
41
+ # form parameters
42
+ form_params = {}
43
+
44
+ # http body (model)
45
+ post_body = nil
46
+
47
+
48
+ auth_names = ['authorization']
49
+ result = @api_client.call_api(:GET, path,
50
+ :header_params => header_params,
51
+ :query_params => query_params,
52
+ :form_params => form_params,
53
+ :body => post_body,
54
+ :auth_names => auth_names,
55
+ :return_type => 'Array<InstanceManager>')
56
+ if Configuration.debugging
57
+ Configuration.logger.debug "API called: InstancesApi#instance_managers_get. Result: #{result.inspect}"
58
+ end
59
+ return result
60
+ end
61
+
62
+ # Returns details for the specified instance manager.
63
+ # Returns details for the specified instance manager.
64
+ # @param uuid UUID of the instance manager to retrieve details for.
65
+ # @param [Hash] opts the optional parameters
66
+ # @option opts [String] :authorization
67
+ # @return [InstanceManager]
68
+ def instance_managers_uuid_get(uuid, opts = {})
69
+
70
+ if Configuration.debugging
71
+ Configuration.logger.debug "Calling API: InstancesApi#instance_managers_uuid_get ..."
72
+ end
73
+
74
+
75
+ # verify the required parameter 'uuid' is set
76
+ fail "Missing the required parameter 'uuid' when calling instance_managers_uuid_get" if uuid.nil?
77
+
78
+ # resource path
79
+ path = "/instance_managers/{uuid}".sub('{format}','json').sub('{' + 'uuid' + '}', uuid.to_s)
80
+
81
+ # query parameters
82
+ query_params = {}
83
+
84
+ # header parameters
85
+ header_params = {}
86
+
87
+ # HTTP header 'Accept' (if needed)
88
+ _header_accept = []
89
+ _header_accept_result = @api_client.select_header_accept(_header_accept) and header_params['Accept'] = _header_accept_result
90
+
91
+ # HTTP header 'Content-Type'
92
+ _header_content_type = []
93
+ header_params['Content-Type'] = @api_client.select_header_content_type(_header_content_type)
94
+ header_params[:'authorization'] = opts[:'authorization'] if opts[:'authorization']
95
+
96
+ # form parameters
97
+ form_params = {}
98
+
99
+ # http body (model)
100
+ post_body = nil
101
+
102
+
103
+ auth_names = ['authorization']
104
+ result = @api_client.call_api(:GET, path,
105
+ :header_params => header_params,
106
+ :query_params => query_params,
107
+ :form_params => form_params,
108
+ :body => post_body,
109
+ :auth_names => auth_names,
110
+ :return_type => 'InstanceManager')
111
+ if Configuration.debugging
112
+ Configuration.logger.debug "API called: InstancesApi#instance_managers_uuid_get. Result: #{result.inspect}"
113
+ end
114
+ return result
115
+ end
116
+
117
+ # Returns a list of instances managed by the specified instance manager.
118
+ # Returns a list of instances managed by the specified instance manager.
119
+ # @param uuid UUID of the instance manager whose instances should be retrieved.
120
+ # @param [Hash] opts the optional parameters
121
+ # @option opts [String] :authorization
122
+ # @return [Array<Instances>]
123
+ def instance_managers_uuid_instances_get(uuid, opts = {})
124
+
125
+ if Configuration.debugging
126
+ Configuration.logger.debug "Calling API: InstancesApi#instance_managers_uuid_instances_get ..."
127
+ end
128
+
129
+
130
+ # verify the required parameter 'uuid' is set
131
+ fail "Missing the required parameter 'uuid' when calling instance_managers_uuid_instances_get" if uuid.nil?
132
+
133
+ # resource path
134
+ path = "/instance_managers/{uuid}/instances".sub('{format}','json').sub('{' + 'uuid' + '}', uuid.to_s)
135
+
136
+ # query parameters
137
+ query_params = {}
138
+
139
+ # header parameters
140
+ header_params = {}
141
+
142
+ # HTTP header 'Accept' (if needed)
143
+ _header_accept = []
144
+ _header_accept_result = @api_client.select_header_accept(_header_accept) and header_params['Accept'] = _header_accept_result
145
+
146
+ # HTTP header 'Content-Type'
147
+ _header_content_type = []
148
+ header_params['Content-Type'] = @api_client.select_header_content_type(_header_content_type)
149
+ header_params[:'authorization'] = opts[:'authorization'] if opts[:'authorization']
150
+
151
+ # form parameters
152
+ form_params = {}
153
+
154
+ # http body (model)
155
+ post_body = nil
156
+
157
+
158
+ auth_names = ['authorization']
159
+ result = @api_client.call_api(:GET, path,
160
+ :header_params => header_params,
161
+ :query_params => query_params,
162
+ :form_params => form_params,
163
+ :body => post_body,
164
+ :auth_names => auth_names,
165
+ :return_type => 'Array<Instances>')
166
+ if Configuration.debugging
167
+ Configuration.logger.debug "API called: InstancesApi#instance_managers_uuid_instances_get. Result: #{result.inspect}"
168
+ end
169
+ return result
170
+ end
171
+
172
+ # Creates a snapshot of a capsule.
173
+ #
174
+ # @param uuid UUID of the job from which to create the capsule.
175
+ # @param [Hash] opts the optional parameters
176
+ # @option opts [String] :authorization
177
+ # @return [nil]
178
+ def instances_uuid_snapshot_post(uuid, opts = {})
179
+
180
+ if Configuration.debugging
181
+ Configuration.logger.debug "Calling API: InstancesApi#instances_uuid_snapshot_post ..."
182
+ end
183
+
184
+
185
+ # verify the required parameter 'uuid' is set
186
+ fail "Missing the required parameter 'uuid' when calling instances_uuid_snapshot_post" if uuid.nil?
187
+
188
+ # resource path
189
+ path = "/instances/{uuid}/snapshot".sub('{format}','json').sub('{' + 'uuid' + '}', uuid.to_s)
190
+
191
+ # query parameters
192
+ query_params = {}
193
+
194
+ # header parameters
195
+ header_params = {}
196
+
197
+ # HTTP header 'Accept' (if needed)
198
+ _header_accept = []
199
+ _header_accept_result = @api_client.select_header_accept(_header_accept) and header_params['Accept'] = _header_accept_result
200
+
201
+ # HTTP header 'Content-Type'
202
+ _header_content_type = []
203
+ header_params['Content-Type'] = @api_client.select_header_content_type(_header_content_type)
204
+ header_params[:'authorization'] = opts[:'authorization'] if opts[:'authorization']
205
+
206
+ # form parameters
207
+ form_params = {}
208
+
209
+ # http body (model)
210
+ post_body = nil
211
+
212
+
213
+ auth_names = ['authorization']
214
+ @api_client.call_api(:POST, path,
215
+ :header_params => header_params,
216
+ :query_params => query_params,
217
+ :form_params => form_params,
218
+ :body => post_body,
219
+ :auth_names => auth_names)
220
+ if Configuration.debugging
221
+ Configuration.logger.debug "API called: InstancesApi#instances_uuid_snapshot_post"
222
+ end
223
+ return nil
224
+ end
225
+
226
+ # Lists all tags on all instance managers in the cluster.
227
+ # Lists all tags on all instance managers in the cluster. Requires `read` privileges on the `cluster` realm.
228
+ # @param [Hash] opts the optional parameters
229
+ # @option opts [String] :authorization
230
+ # @return [nil]
231
+ def tags_get(opts = {})
232
+
233
+ if Configuration.debugging
234
+ Configuration.logger.debug "Calling API: InstancesApi#tags_get ..."
235
+ end
236
+
237
+
238
+ # resource path
239
+ path = "/tags".sub('{format}','json')
240
+
241
+ # query parameters
242
+ query_params = {}
243
+
244
+ # header parameters
245
+ header_params = {}
246
+
247
+ # HTTP header 'Accept' (if needed)
248
+ _header_accept = []
249
+ _header_accept_result = @api_client.select_header_accept(_header_accept) and header_params['Accept'] = _header_accept_result
250
+
251
+ # HTTP header 'Content-Type'
252
+ _header_content_type = []
253
+ header_params['Content-Type'] = @api_client.select_header_content_type(_header_content_type)
254
+ header_params[:'authorization'] = opts[:'authorization'] if opts[:'authorization']
255
+
256
+ # form parameters
257
+ form_params = {}
258
+
259
+ # http body (model)
260
+ post_body = nil
261
+
262
+
263
+ auth_names = ['authorization']
264
+ @api_client.call_api(:GET, path,
265
+ :header_params => header_params,
266
+ :query_params => query_params,
267
+ :form_params => form_params,
268
+ :body => post_body,
269
+ :auth_names => auth_names)
270
+ if Configuration.debugging
271
+ Configuration.logger.debug "API called: InstancesApi#tags_get"
272
+ end
273
+ return nil
274
+ end
275
+ end
276
+ end
277
+
278
+
279
+
280
+