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 CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: ce07b11ece3f3d314e4a4b9a9bb68bfed3f408dc
4
- data.tar.gz: 780dd68ebaeabd6e8ae84ef72a25ad1a6537f872
3
+ metadata.gz: fb6a24c8f83ea9599f206a9100940077974c3fc6
4
+ data.tar.gz: b043bee58be3f2821eaa8acb75c53d821beacf5b
5
5
  SHA512:
6
- metadata.gz: 37771cff058052941e5154e1252e5ebb6cc972601f41cfa2a70e8a365673d9dbb02ec1ada93dd3d7dfdbe0b6c05ed84928e431fb0d3167523404e0f9f29408e8
7
- data.tar.gz: d64cd64a05cfd25a9a45398ead285b3c0eec636d6fcad4994daafbbf550ee74a736d6450591f2add3e745748185a67fe0229e2b7b7b75f33b7db9b6ebe60b868
6
+ metadata.gz: ef66294ba994c132b69d0f5d35864f90cdf31229610aa74832f3e3ec80de3023d5e9df1cdccf3603371c55bb3b690c35e6ff3663976a33418c4f2a3ba32bff29
7
+ data.tar.gz: 30b0bce9edae9d38ffa7ea87e7f8110bd18aaccca947881b04653a7077b784fcd87bb171a246c4ef7823b55f618dfafcd34709235fb1e172696d6982e0e16d9b
@@ -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
@@ -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(
@@ -18,7 +18,7 @@ module Mortar
18
18
  class API
19
19
  # client version
20
20
  # see http://semver.org/
21
- VERSION = "0.8.13"
21
+ VERSION = "0.8.14"
22
22
 
23
23
  SERVER_API_VERSION = "2"
24
24
  end
@@ -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.13
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: 2015-05-20 00:00:00.000000000 Z
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.6
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: