pipe_fitter 0.1.4 → 0.1.5
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/exe/pipe_fitter +2 -2
- data/lib/pipe_fitter/data_pipeline_client.rb +3 -3
- data/lib/pipe_fitter/pipeline.rb +27 -4
- data/lib/pipe_fitter/version.rb +1 -1
- metadata +2 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: a1625059a89f5ae2b482da2c099fde222833c824
|
4
|
+
data.tar.gz: 338ea0ab87e4ac6e98156d7591f2185ea3c21014
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 2fd6a9e9b5c3c2fa96b7f732369c3b7ae70f8088f88de8897b88b9527c12daf35ba65562920fd71462ab826f324b9be60f33709b8e42574d59d97bf83c32c3ec
|
7
|
+
data.tar.gz: 062c50ae98dd45eba4ce2363f43b2ea0302fa2e26441cf48f9864de3c9d9c83e56adab1cf201f51e4a7eb9ba900ee1cf48846bd149ce2631a9d486fa9d601cf3
|
data/exe/pipe_fitter
CHANGED
@@ -36,11 +36,11 @@ module PipeFitter
|
|
36
36
|
|
37
37
|
desc "activate", "Activate pipeline"
|
38
38
|
option :pipeline_id, type: :string, required: true, aliases: "i"
|
39
|
-
option :
|
39
|
+
option :parameter_file, type: :string, required: false, aliases: "p"
|
40
40
|
option :start_timestamp, type: :string, required: false, aliases: "t"
|
41
41
|
def activate
|
42
42
|
t = options[:start_timestamp] ? Time.parse(options[:start_timestamp]) : nil
|
43
|
-
puts client.activate(options[:pipeline_id], options[:
|
43
|
+
puts client.activate(options[:pipeline_id], options[:parameter_file], t)
|
44
44
|
end
|
45
45
|
|
46
46
|
private
|
@@ -39,9 +39,9 @@ module PipeFitter
|
|
39
39
|
[res.pipeline_id, put_definition(res.pipeline_id, pipeline)]
|
40
40
|
end
|
41
41
|
|
42
|
-
def activate(pipeline_id,
|
43
|
-
p = Pipeline.
|
44
|
-
exec(:activate_pipeline, p.activate_opts(
|
42
|
+
def activate(pipeline_id, parameter_file, start_timestamp)
|
43
|
+
p = parameter_file ? Pipeline.load_yaml(parameter_file) : Pipeline.new
|
44
|
+
exec(:activate_pipeline, p.activate_opts(pipeline_id, start_timestamp)).to_h
|
45
45
|
end
|
46
46
|
|
47
47
|
private
|
data/lib/pipe_fitter/pipeline.rb
CHANGED
@@ -21,7 +21,8 @@ module PipeFitter
|
|
21
21
|
PipelineDescription.new(yml["pipeline_description"]))
|
22
22
|
end
|
23
23
|
|
24
|
-
def initialize(pipeline_objects, parameter_objects
|
24
|
+
def initialize(pipeline_objects = nil, parameter_objects = nil,
|
25
|
+
parameter_values = nil, pipeline_description = nil)
|
25
26
|
@pipeline_objects = pipeline_objects
|
26
27
|
@parameter_objects = parameter_objects
|
27
28
|
@parameter_values = parameter_values
|
@@ -41,6 +42,10 @@ module PipeFitter
|
|
41
42
|
}.to_yaml
|
42
43
|
end
|
43
44
|
|
45
|
+
def create_opts
|
46
|
+
@pipeline_description.to_api_opts
|
47
|
+
end
|
48
|
+
|
44
49
|
def put_definition_opts(pipeline_id)
|
45
50
|
{
|
46
51
|
pipeline_id: pipeline_id,
|
@@ -58,6 +63,15 @@ module PipeFitter
|
|
58
63
|
{ pipeline_id: pipeline_id, tag_keys: @pipeline_description.tag_keys }
|
59
64
|
end
|
60
65
|
|
66
|
+
def activate_opts(pipeline_id, start_timestamp)
|
67
|
+
opts = {
|
68
|
+
pipeline_id: pipeline_id,
|
69
|
+
start_timestamp: start_timestamp,
|
70
|
+
}
|
71
|
+
opts.merge!(parameter_values: @parameter_values.to_api_opts) if @parameter_values
|
72
|
+
opts
|
73
|
+
end
|
74
|
+
|
61
75
|
def diff(other, format = nil)
|
62
76
|
Diffy::Diff.new(self.to_yaml, other.to_yaml).to_s(format)
|
63
77
|
end
|
@@ -103,7 +117,6 @@ module PipeFitter
|
|
103
117
|
if base.key?(key)
|
104
118
|
base[key] = [base[key]] unless base[key].is_a?(Array)
|
105
119
|
base[key] << value
|
106
|
-
base[key].sort!
|
107
120
|
else
|
108
121
|
base[key] = value
|
109
122
|
end
|
@@ -193,9 +206,19 @@ module PipeFitter
|
|
193
206
|
new(objs)
|
194
207
|
end
|
195
208
|
|
209
|
+
DESCRIPTION_KEYS = %i(name description tags uniqueId).freeze
|
210
|
+
|
196
211
|
def to_objs
|
197
|
-
|
198
|
-
|
212
|
+
stringify_keys(@objs.select { |k, _| DESCRIPTION_KEYS.include?(k) })
|
213
|
+
end
|
214
|
+
|
215
|
+
def to_api_opts
|
216
|
+
@objs.select { |k, _| DESCRIPTION_KEYS.include?(k) }.tap do |obj|
|
217
|
+
obj[:unique_id] = obj.delete(:uniqueId)
|
218
|
+
obj[:tags] = obj[:tags].map do |tag|
|
219
|
+
tag.map { |k, v| { key: k, value: v } }
|
220
|
+
end.flatten
|
221
|
+
end
|
199
222
|
end
|
200
223
|
|
201
224
|
def tags
|
data/lib/pipe_fitter/version.rb
CHANGED
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: pipe_fitter
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.1.
|
4
|
+
version: 0.1.5
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- masa21kik
|
8
8
|
autorequire:
|
9
9
|
bindir: exe
|
10
10
|
cert_chain: []
|
11
|
-
date: 2016-06-
|
11
|
+
date: 2016-06-14 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: aws-sdk
|