mortar-api-ruby 0.8.13 → 0.8.14
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/lib/mortar/api/config.rb +24 -0
- data/lib/mortar/api/jobs.rb +26 -3
- data/lib/mortar/api/version.rb +1 -1
- data/spec/mortar/api/jobs_spec.rb +0 -6
- metadata +4 -3
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: fb6a24c8f83ea9599f206a9100940077974c3fc6
|
4
|
+
data.tar.gz: b043bee58be3f2821eaa8acb75c53d821beacf5b
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: ef66294ba994c132b69d0f5d35864f90cdf31229610aa74832f3e3ec80de3023d5e9df1cdccf3603371c55bb3b690c35e6ff3663976a33418c4f2a3ba32bff29
|
7
|
+
data.tar.gz: 30b0bce9edae9d38ffa7ea87e7f8110bd18aaccca947881b04653a7077b784fcd87bb171a246c4ef7823b55f618dfafcd34709235fb1e172696d6982e0e16d9b
|
data/lib/mortar/api/config.rb
CHANGED
@@ -31,6 +31,17 @@ module Mortar
|
|
31
31
|
)
|
32
32
|
end
|
33
33
|
|
34
|
+
# PUT /vX/user_config
|
35
|
+
def put_user_config_vars(config_vars)
|
36
|
+
request(
|
37
|
+
:expects => 200,
|
38
|
+
:idempotent => true,
|
39
|
+
:method => :put,
|
40
|
+
:path => versioned_path("/user_config"),
|
41
|
+
:body => json_encode(config_vars)
|
42
|
+
)
|
43
|
+
end
|
44
|
+
|
34
45
|
# GET /vX/config/:project_name
|
35
46
|
def get_config_vars(project_name)
|
36
47
|
request(
|
@@ -52,5 +63,18 @@ module Mortar
|
|
52
63
|
:body => json_encode(body)
|
53
64
|
)
|
54
65
|
end
|
66
|
+
|
67
|
+
# DELETE /vX/user_config
|
68
|
+
def delete_user_config_var(config_var)
|
69
|
+
body = {'key' => config_var}
|
70
|
+
request(
|
71
|
+
:expects => 200,
|
72
|
+
:idempotent => true,
|
73
|
+
:method => :delete,
|
74
|
+
:path => versioned_path("/user_config"),
|
75
|
+
:body => json_encode(body)
|
76
|
+
)
|
77
|
+
end
|
78
|
+
|
55
79
|
end
|
56
80
|
end
|
data/lib/mortar/api/jobs.rb
CHANGED
@@ -76,14 +76,16 @@ module Mortar
|
|
76
76
|
|
77
77
|
CLUSTER_BACKEND__EMR_HADOOP_1 = "EMR_HADOOP_1"
|
78
78
|
CLUSTER_BACKEND__EMR_HADOOP_2 = "EMR_HADOOP_2"
|
79
|
+
CLUSTER_BACKEND__EMR_SPARK_JOBSERVER = "EMR_SPARK_JOBSERVER"
|
79
80
|
CLUSTER_BACKEND__ALL = "ALL"
|
80
81
|
|
81
82
|
JOB_TYPE_ALL = 'all'
|
82
83
|
JOB_TYPE_PIG = 'pig'
|
83
84
|
JOB_TYPE_LUIGI = 'luigi'
|
84
85
|
JOB_TYPE_SPARK = 'spark'
|
86
|
+
JOB_TYPE_SPARK_ON_JOBSERVER = 'spark-on-jobserver'
|
85
87
|
end
|
86
|
-
|
88
|
+
|
87
89
|
|
88
90
|
# POST /vX/jobs
|
89
91
|
def post_pig_job_existing_cluster(project_name, script_name, git_ref, cluster_id, options={})
|
@@ -133,7 +135,6 @@ module Mortar
|
|
133
135
|
"git_ref" => git_ref,
|
134
136
|
"cluster_size" => cluster_size,
|
135
137
|
"cluster_type" => cluster_type,
|
136
|
-
"cluster_backend" => Jobs::CLUSTER_BACKEND__EMR_HADOOP_1,
|
137
138
|
"parameters" => parameters,
|
138
139
|
"notify_on_job_finish" => notify_on_job_finish,
|
139
140
|
"job_type" => Jobs::JOB_TYPE_PIG,
|
@@ -190,7 +191,6 @@ module Mortar
|
|
190
191
|
"git_ref" => git_ref,
|
191
192
|
"cluster_size" => cluster_size,
|
192
193
|
"cluster_type" => cluster_type,
|
193
|
-
"cluster_backend" => Jobs::CLUSTER_BACKEND__EMR_HADOOP_2,
|
194
194
|
"script_arguments" => script_arguments,
|
195
195
|
"job_type" => Jobs::JOB_TYPE_SPARK,
|
196
196
|
"use_spot_instances" => use_spot_instances,
|
@@ -230,6 +230,29 @@ module Mortar
|
|
230
230
|
:body => json_encode(body))
|
231
231
|
end
|
232
232
|
|
233
|
+
def post_spark_job_on_jobserver(project_name, class_name, git_ref, cluster_id, options={})
|
234
|
+
script_arguments = options[:script_arguments] || ''
|
235
|
+
|
236
|
+
body = { "project_name" => project_name,
|
237
|
+
"git_ref" => git_ref,
|
238
|
+
"cluster_id" => cluster_id,
|
239
|
+
"script_arguments" => script_arguments,
|
240
|
+
"job_type" => Jobs::JOB_TYPE_SPARK_ON_JOBSERVER,
|
241
|
+
"sparkclass_name" => class_name
|
242
|
+
}
|
243
|
+
|
244
|
+
unless options[:clustersize].nil?
|
245
|
+
body['cluster_size'] = options[:clustersize]
|
246
|
+
end
|
247
|
+
|
248
|
+
request(
|
249
|
+
:expects => 200,
|
250
|
+
:method => :post,
|
251
|
+
:path => versioned_path("/jobs"),
|
252
|
+
:body => json_encode(body)
|
253
|
+
)
|
254
|
+
end
|
255
|
+
|
233
256
|
# GET /vX/jobs
|
234
257
|
def get_jobs(skip, limit, job_type=Jobs::JOB_TYPE_PIG)
|
235
258
|
request(
|
data/lib/mortar/api/version.rb
CHANGED
@@ -106,7 +106,6 @@ describe Mortar::API do
|
|
106
106
|
"git_ref" => git_ref,
|
107
107
|
"cluster_size" => cluster_size,
|
108
108
|
"cluster_type" => cluster_type,
|
109
|
-
"cluster_backend" => Mortar::API::Jobs::CLUSTER_BACKEND__EMR_HADOOP_1,
|
110
109
|
"parameters" => {},
|
111
110
|
"notify_on_job_finish" => true,
|
112
111
|
"job_type" => "pig",
|
@@ -134,7 +133,6 @@ describe Mortar::API do
|
|
134
133
|
"git_ref" => git_ref,
|
135
134
|
"cluster_size" => cluster_size,
|
136
135
|
"cluster_type" => cluster_type,
|
137
|
-
"cluster_backend" => Mortar::API::Jobs::CLUSTER_BACKEND__EMR_HADOOP_1,
|
138
136
|
"parameters" => {},
|
139
137
|
"notify_on_job_finish" => true,
|
140
138
|
"job_type" => "pig",
|
@@ -164,7 +162,6 @@ describe Mortar::API do
|
|
164
162
|
"git_ref" => git_ref,
|
165
163
|
"cluster_size" => cluster_size,
|
166
164
|
"cluster_type" => cluster_type,
|
167
|
-
"cluster_backend" => Mortar::API::Jobs::CLUSTER_BACKEND__EMR_HADOOP_1,
|
168
165
|
"parameters" => {},
|
169
166
|
"notify_on_job_finish" => false,
|
170
167
|
"job_type" => "pig",
|
@@ -199,7 +196,6 @@ describe Mortar::API do
|
|
199
196
|
"git_ref" => git_ref,
|
200
197
|
"cluster_size" => cluster_size,
|
201
198
|
"cluster_type" => cluster_type,
|
202
|
-
"cluster_backend" => Mortar::API::Jobs::CLUSTER_BACKEND__EMR_HADOOP_1,
|
203
199
|
"parameters" => {},
|
204
200
|
"notify_on_job_finish" => true,
|
205
201
|
"job_type" => "pig",
|
@@ -229,7 +225,6 @@ describe Mortar::API do
|
|
229
225
|
"git_ref" => git_ref,
|
230
226
|
"cluster_size" => cluster_size,
|
231
227
|
"cluster_type" => cluster_type,
|
232
|
-
"cluster_backend" => Mortar::API::Jobs::CLUSTER_BACKEND__EMR_HADOOP_1,
|
233
228
|
"parameters" => {},
|
234
229
|
"notify_on_job_finish" => true,
|
235
230
|
"job_type" => "pig",
|
@@ -303,7 +298,6 @@ describe Mortar::API do
|
|
303
298
|
"git_ref" => git_ref,
|
304
299
|
"cluster_size" => cluster_size,
|
305
300
|
"cluster_type" => cluster_type,
|
306
|
-
"cluster_backend" => Mortar::API::Jobs::CLUSTER_BACKEND__EMR_HADOOP_2,
|
307
301
|
"script_arguments" => "",
|
308
302
|
"job_type" => "spark",
|
309
303
|
"use_spot_instances" => false,
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: mortar-api-ruby
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.8.
|
4
|
+
version: 0.8.14
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Mortar Data
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date:
|
11
|
+
date: 2016-03-11 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: excon
|
@@ -144,7 +144,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
144
144
|
version: '0'
|
145
145
|
requirements: []
|
146
146
|
rubyforge_project:
|
147
|
-
rubygems_version: 2.4.
|
147
|
+
rubygems_version: 2.4.8
|
148
148
|
signing_key:
|
149
149
|
specification_version: 4
|
150
150
|
summary: Client for Mortar API
|
@@ -164,3 +164,4 @@ test_files:
|
|
164
164
|
- spec/mortar/api_spec.rb
|
165
165
|
- spec/spec.opts
|
166
166
|
- spec/spec_helper.rb
|
167
|
+
has_rdoc:
|