mortar-api-ruby 0.7.2 → 0.7.3
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/lib/mortar/api/jobs.rb +3 -1
- data/lib/mortar/api/version.rb +1 -1
- data/spec/mortar/api/jobs_spec.rb +9 -2
- metadata +92 -61
- checksums.yaml +0 -7
data/lib/mortar/api/jobs.rb
CHANGED
@@ -89,6 +89,7 @@ module Mortar
|
|
89
89
|
def post_job_new_cluster(project_name, script_name, git_ref, cluster_size, options={})
|
90
90
|
cluster_type = options[:cluster_type].nil? ? Jobs::CLUSTER_TYPE__PERSISTENT : options[:cluster_type]
|
91
91
|
notify_on_job_finish = options[:notify_on_job_finish].nil? ? true : options[:notify_on_job_finish]
|
92
|
+
use_spot_instances = options[:use_spot_instances].nil? ? false : options[:use_spot_instances]
|
92
93
|
parameters = options[:parameters] || {}
|
93
94
|
is_control_script = options[:is_control_script] || false
|
94
95
|
|
@@ -97,7 +98,8 @@ module Mortar
|
|
97
98
|
"cluster_size" => cluster_size,
|
98
99
|
"cluster_type" => cluster_type,
|
99
100
|
"parameters" => parameters,
|
100
|
-
"notify_on_job_finish" => notify_on_job_finish
|
101
|
+
"notify_on_job_finish" => notify_on_job_finish,
|
102
|
+
"use_spot_instances" => use_spot_instances
|
101
103
|
}
|
102
104
|
if is_control_script
|
103
105
|
body["controlscript_name"] = script_name
|
data/lib/mortar/api/version.rb
CHANGED
@@ -64,6 +64,7 @@ describe Mortar::API do
|
|
64
64
|
"cluster_type" => cluster_type,
|
65
65
|
"parameters" => {},
|
66
66
|
"notify_on_job_finish" => true,
|
67
|
+
"use_spot_instances" => false,
|
67
68
|
"pigscript_name" => pigscript_name
|
68
69
|
})
|
69
70
|
Excon.stub({:method => :post, :path => "/v2/jobs", :body => body}) do |params|
|
@@ -86,6 +87,7 @@ describe Mortar::API do
|
|
86
87
|
"cluster_type" => cluster_type,
|
87
88
|
"parameters" => {},
|
88
89
|
"notify_on_job_finish" => true,
|
90
|
+
"use_spot_instances" => false,
|
89
91
|
"pigscript_name" => pigscript_name
|
90
92
|
})
|
91
93
|
Excon.stub({:method => :post, :path => "/v2/jobs", :body => body}) do |params|
|
@@ -95,7 +97,7 @@ describe Mortar::API do
|
|
95
97
|
response.body['job_id'].should == job_id
|
96
98
|
end
|
97
99
|
|
98
|
-
it "accepts notify_on_job_finish
|
100
|
+
it "accepts non-default params for notify_on_job_finish and use_spot_instances" do
|
99
101
|
job_id = "7b93e4d3ab034188a0c2be418d3d24ed"
|
100
102
|
project_name = "my_project"
|
101
103
|
pigscript_name = "my_pigscript"
|
@@ -108,12 +110,15 @@ describe Mortar::API do
|
|
108
110
|
"cluster_type" => cluster_type,
|
109
111
|
"parameters" => {},
|
110
112
|
"notify_on_job_finish" => false,
|
113
|
+
"use_spot_instances" => true,
|
111
114
|
"pigscript_name" => pigscript_name,
|
112
115
|
})
|
113
116
|
Excon.stub({:method => :post, :path => "/v2/jobs", :body => body}) do |params|
|
114
117
|
{:body => Mortar::API::OkJson.encode({'job_id' => job_id}), :status => 200}
|
115
118
|
end
|
116
|
-
response = @api.post_job_new_cluster(project_name, pigscript_name, git_ref, cluster_size,
|
119
|
+
response = @api.post_job_new_cluster(project_name, pigscript_name, git_ref, cluster_size,
|
120
|
+
:cluster_type => cluster_type, :notify_on_job_finish => false,
|
121
|
+
:use_spot_instances => true)
|
117
122
|
response.body['job_id'].should == job_id
|
118
123
|
end
|
119
124
|
|
@@ -130,6 +135,7 @@ describe Mortar::API do
|
|
130
135
|
"cluster_type" => cluster_type,
|
131
136
|
"parameters" => {},
|
132
137
|
"notify_on_job_finish" => true,
|
138
|
+
"use_spot_instances" => false,
|
133
139
|
"pigscript_name" => pigscript_name
|
134
140
|
})
|
135
141
|
Excon.stub({:method => :post, :path => "/v2/jobs", :body => body}) do |params|
|
@@ -152,6 +158,7 @@ describe Mortar::API do
|
|
152
158
|
"cluster_type" => cluster_type,
|
153
159
|
"parameters" => {},
|
154
160
|
"notify_on_job_finish" => true,
|
161
|
+
"use_spot_instances" => false,
|
155
162
|
"pigscript_name" => pigscript_name,
|
156
163
|
})
|
157
164
|
Excon.stub({:method => :post, :path => "/v2/jobs", :body => body}) do |params|
|
metadata
CHANGED
@@ -1,70 +1,102 @@
|
|
1
|
-
--- !ruby/object:Gem::Specification
|
1
|
+
--- !ruby/object:Gem::Specification
|
2
2
|
name: mortar-api-ruby
|
3
|
-
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.7.
|
3
|
+
version: !ruby/object:Gem::Version
|
4
|
+
version: 0.7.3
|
5
|
+
prerelease:
|
5
6
|
platform: ruby
|
6
|
-
authors:
|
7
|
+
authors:
|
7
8
|
- Mortar Data
|
8
9
|
autorequire:
|
9
10
|
bindir: bin
|
10
11
|
cert_chain: []
|
11
|
-
|
12
|
-
|
13
|
-
|
14
|
-
- !ruby/object:Gem::Dependency
|
12
|
+
date: 2013-11-21 00:00:00.000000000 Z
|
13
|
+
dependencies:
|
14
|
+
- !ruby/object:Gem::Dependency
|
15
15
|
name: excon
|
16
|
-
|
17
|
-
|
18
|
-
requirements:
|
16
|
+
requirement: !ruby/object:Gem::Requirement
|
17
|
+
none: false
|
18
|
+
requirements:
|
19
19
|
- - ~>
|
20
|
-
- !ruby/object:Gem::Version
|
21
|
-
version:
|
20
|
+
- !ruby/object:Gem::Version
|
21
|
+
version: '0.28'
|
22
22
|
type: :runtime
|
23
|
-
version_requirements: *id001
|
24
|
-
- !ruby/object:Gem::Dependency
|
25
|
-
name: gem-release
|
26
23
|
prerelease: false
|
27
|
-
|
28
|
-
|
29
|
-
|
30
|
-
|
31
|
-
- !ruby/object:Gem::Version
|
32
|
-
version:
|
24
|
+
version_requirements: !ruby/object:Gem::Requirement
|
25
|
+
none: false
|
26
|
+
requirements:
|
27
|
+
- - ~>
|
28
|
+
- !ruby/object:Gem::Version
|
29
|
+
version: '0.28'
|
30
|
+
- !ruby/object:Gem::Dependency
|
31
|
+
name: gem-release
|
32
|
+
requirement: !ruby/object:Gem::Requirement
|
33
|
+
none: false
|
34
|
+
requirements:
|
35
|
+
- - ! '>='
|
36
|
+
- !ruby/object:Gem::Version
|
37
|
+
version: '0'
|
33
38
|
type: :development
|
34
|
-
version_requirements: *id002
|
35
|
-
- !ruby/object:Gem::Dependency
|
36
|
-
name: rake
|
37
39
|
prerelease: false
|
38
|
-
|
39
|
-
|
40
|
-
|
40
|
+
version_requirements: !ruby/object:Gem::Requirement
|
41
|
+
none: false
|
42
|
+
requirements:
|
43
|
+
- - ! '>='
|
44
|
+
- !ruby/object:Gem::Version
|
45
|
+
version: '0'
|
46
|
+
- !ruby/object:Gem::Dependency
|
47
|
+
name: rake
|
48
|
+
requirement: !ruby/object:Gem::Requirement
|
49
|
+
none: false
|
50
|
+
requirements:
|
51
|
+
- - ! '>='
|
52
|
+
- !ruby/object:Gem::Version
|
53
|
+
version: '0'
|
41
54
|
type: :development
|
42
|
-
version_requirements: *id004
|
43
|
-
- !ruby/object:Gem::Dependency
|
44
|
-
name: rr
|
45
55
|
prerelease: false
|
46
|
-
|
47
|
-
|
48
|
-
|
56
|
+
version_requirements: !ruby/object:Gem::Requirement
|
57
|
+
none: false
|
58
|
+
requirements:
|
59
|
+
- - ! '>='
|
60
|
+
- !ruby/object:Gem::Version
|
61
|
+
version: '0'
|
62
|
+
- !ruby/object:Gem::Dependency
|
63
|
+
name: rr
|
64
|
+
requirement: !ruby/object:Gem::Requirement
|
65
|
+
none: false
|
66
|
+
requirements:
|
67
|
+
- - ! '>='
|
68
|
+
- !ruby/object:Gem::Version
|
69
|
+
version: '0'
|
49
70
|
type: :development
|
50
|
-
version_requirements: *id005
|
51
|
-
- !ruby/object:Gem::Dependency
|
52
|
-
name: rspec
|
53
71
|
prerelease: false
|
54
|
-
|
55
|
-
|
56
|
-
|
72
|
+
version_requirements: !ruby/object:Gem::Requirement
|
73
|
+
none: false
|
74
|
+
requirements:
|
75
|
+
- - ! '>='
|
76
|
+
- !ruby/object:Gem::Version
|
77
|
+
version: '0'
|
78
|
+
- !ruby/object:Gem::Dependency
|
79
|
+
name: rspec
|
80
|
+
requirement: !ruby/object:Gem::Requirement
|
81
|
+
none: false
|
82
|
+
requirements:
|
83
|
+
- - ! '>='
|
84
|
+
- !ruby/object:Gem::Version
|
85
|
+
version: '0'
|
57
86
|
type: :development
|
58
|
-
|
87
|
+
prerelease: false
|
88
|
+
version_requirements: !ruby/object:Gem::Requirement
|
89
|
+
none: false
|
90
|
+
requirements:
|
91
|
+
- - ! '>='
|
92
|
+
- !ruby/object:Gem::Version
|
93
|
+
version: '0'
|
59
94
|
description: Client for Mortar API.
|
60
95
|
email: support@mortardata.com
|
61
96
|
executables: []
|
62
|
-
|
63
97
|
extensions: []
|
64
|
-
|
65
98
|
extra_rdoc_files: []
|
66
|
-
|
67
|
-
files:
|
99
|
+
files:
|
68
100
|
- .gitignore
|
69
101
|
- .rvmrc
|
70
102
|
- .travis.yml
|
@@ -109,30 +141,29 @@ files:
|
|
109
141
|
- spec/spec_helper.rb
|
110
142
|
homepage: http://mortardata.com/
|
111
143
|
licenses: []
|
112
|
-
|
113
|
-
metadata: {}
|
114
|
-
|
115
144
|
post_install_message:
|
116
145
|
rdoc_options: []
|
117
|
-
|
118
|
-
require_paths:
|
146
|
+
require_paths:
|
119
147
|
- lib
|
120
|
-
required_ruby_version: !ruby/object:Gem::Requirement
|
121
|
-
|
122
|
-
|
123
|
-
|
148
|
+
required_ruby_version: !ruby/object:Gem::Requirement
|
149
|
+
none: false
|
150
|
+
requirements:
|
151
|
+
- - ! '>='
|
152
|
+
- !ruby/object:Gem::Version
|
124
153
|
version: 1.8.7
|
125
|
-
required_rubygems_version: !ruby/object:Gem::Requirement
|
126
|
-
|
127
|
-
|
154
|
+
required_rubygems_version: !ruby/object:Gem::Requirement
|
155
|
+
none: false
|
156
|
+
requirements:
|
157
|
+
- - ! '>='
|
158
|
+
- !ruby/object:Gem::Version
|
159
|
+
version: '0'
|
128
160
|
requirements: []
|
129
|
-
|
130
161
|
rubyforge_project:
|
131
|
-
rubygems_version:
|
162
|
+
rubygems_version: 1.8.23
|
132
163
|
signing_key:
|
133
|
-
specification_version:
|
164
|
+
specification_version: 3
|
134
165
|
summary: Client for Mortar API
|
135
|
-
test_files:
|
166
|
+
test_files:
|
136
167
|
- spec/mortar/api/basicauth_spec.rb
|
137
168
|
- spec/mortar/api/clusters_spec.rb
|
138
169
|
- spec/mortar/api/config_spec.rb
|
checksums.yaml
DELETED
@@ -1,7 +0,0 @@
|
|
1
|
-
---
|
2
|
-
SHA512:
|
3
|
-
metadata.gz: 4525ef704b578ddd8edd6de533ef486e0100383248d5b5e6f55ca4854e2a091b57a787dd97953d52730550c17341d030dd539d11c0b34b9db9d981c4db53243b
|
4
|
-
data.tar.gz: d30f1cfe5a4e200d2861e42090c7a7859f5b1dbe9df17092e87fb2e18dea6cde1612ade120a59a3bad3f903781682b9931ac3d86c299cf0537815247d9b7f393
|
5
|
-
SHA1:
|
6
|
-
metadata.gz: f38e4d28d14224f510e03d7f97fbd309c6bace2b
|
7
|
-
data.tar.gz: 980083455d0b6ab69e8244e9d87e23fea6dd299c
|