arvados-cli 0.1.20140813140640 → 0.1.20140813163950
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/bin/arv-run-pipeline-instance +40 -17
- 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: b37b987ad9590136675ca8f33824071d47695fb7
|
4
|
+
data.tar.gz: af38929fb8566e70449a85eeb6a897a4ae0f9b74
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: fbae3de1461375f0efbdf8cbf38de5170c4e33e408cd883d9f6ae524de567b39c05bd3993a37b93ac090d942212f909d11bbe7cc342547ea872205638e4a38ba
|
7
|
+
data.tar.gz: dcaafc1451a75704bc13835aa131419a7741f14e9e41d07c52e6467d99645ee8cfaf20ea74f9868acb0d96514a82fc53e9a1b955c26b6c2e869a3c31f6937afc
|
@@ -285,6 +285,16 @@ class PipelineInstance
|
|
285
285
|
def [](x)
|
286
286
|
@pi[x]
|
287
287
|
end
|
288
|
+
|
289
|
+
def log_stderr(msg)
|
290
|
+
$arv.log.create log: {
|
291
|
+
event_type: 'stderr',
|
292
|
+
object_uuid: self[:uuid],
|
293
|
+
owner_uuid: self[:owner_uuid],
|
294
|
+
properties: {"text" => msg},
|
295
|
+
}
|
296
|
+
end
|
297
|
+
|
288
298
|
protected
|
289
299
|
def initialize(j)
|
290
300
|
@attributes_to_update = {}
|
@@ -345,19 +355,7 @@ class JobCache
|
|
345
355
|
end
|
346
356
|
msg += "Job submission was: #{body.to_json}"
|
347
357
|
|
348
|
-
|
349
|
-
:body_object => {
|
350
|
-
:log => {
|
351
|
-
:object_uuid => pipeline[:uuid],
|
352
|
-
:event_type => 'stderr',
|
353
|
-
:owner_uuid => pipeline[:owner_uuid],
|
354
|
-
:properties => {"text" => msg}
|
355
|
-
}
|
356
|
-
},
|
357
|
-
:authenticated => false,
|
358
|
-
:headers => {
|
359
|
-
authorization: 'OAuth2 '+ENV['ARVADOS_API_TOKEN']
|
360
|
-
})
|
358
|
+
pipeline.log_stderr(msg)
|
361
359
|
nil
|
362
360
|
end
|
363
361
|
end
|
@@ -380,10 +378,6 @@ class WhRunPipelineInstance
|
|
380
378
|
if template.match /[^-0-9a-z]/
|
381
379
|
# Doesn't look like a uuid -- use it as a filename.
|
382
380
|
@template = JSON.parse File.read(template), :symbolize_names => true
|
383
|
-
if !@template[:components]
|
384
|
-
abort ("#{$0}: Template loaded from #{template} " +
|
385
|
-
"does not have a \"components\" key")
|
386
|
-
end
|
387
381
|
else
|
388
382
|
result = $client.execute(:api_method => $arvados.pipeline_templates.get,
|
389
383
|
:parameters => {
|
@@ -422,8 +416,25 @@ class WhRunPipelineInstance
|
|
422
416
|
end
|
423
417
|
end
|
424
418
|
|
419
|
+
if not @template[:components].is_a?(Hash)
|
420
|
+
abort "\n#{Time.now} -- pipeline_template #{@template[:uuid]}\nSyntax error: Template missing \"components\" hash"
|
421
|
+
end
|
425
422
|
@components = @template[:components].dup
|
426
423
|
|
424
|
+
bad_components = @components.each_pair.select do |cname, cspec|
|
425
|
+
not cspec.is_a?(Hash)
|
426
|
+
end
|
427
|
+
if bad_components.any?
|
428
|
+
abort "\n#{Time.now} -- pipeline_template #{@template[:uuid]}\nSyntax error: Components not specified with hashes: #{bad_components.map(&:first).join(', ')}"
|
429
|
+
end
|
430
|
+
|
431
|
+
bad_components = @components.each_pair.select do |cname, cspec|
|
432
|
+
not cspec[:script_parameters].is_a?(Hash)
|
433
|
+
end
|
434
|
+
if bad_components.any?
|
435
|
+
abort "\n#{Time.now} -- pipeline_template #{@template[:uuid]}\nSyntax error: Components missing \"script_parameters\" hashes: #{bad_components.map(&:first).join(', ')}"
|
436
|
+
end
|
437
|
+
|
427
438
|
errors = []
|
428
439
|
@components.each do |componentname, component|
|
429
440
|
component[:script_parameters].each do |parametername, parameter|
|
@@ -711,6 +722,18 @@ class WhRunPipelineInstance
|
|
711
722
|
end
|
712
723
|
end
|
713
724
|
end
|
725
|
+
|
726
|
+
def abort(msg)
|
727
|
+
if @instance
|
728
|
+
if ["New", "Ready", "RunningOnClient",
|
729
|
+
"RunningOnServer"].include?(@instance[:state])
|
730
|
+
@instance[:state] = "Failed"
|
731
|
+
@instance.save
|
732
|
+
end
|
733
|
+
@instance.log_stderr(msg)
|
734
|
+
end
|
735
|
+
Kernel::abort(msg)
|
736
|
+
end
|
714
737
|
end
|
715
738
|
|
716
739
|
runner = WhRunPipelineInstance.new($options)
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: arvados-cli
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.1.
|
4
|
+
version: 0.1.20140813163950
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Arvados Authors
|
@@ -166,7 +166,7 @@ dependencies:
|
|
166
166
|
- - "<"
|
167
167
|
- !ruby/object:Gem::Version
|
168
168
|
version: 1.0.0
|
169
|
-
description: This is the Arvados SDK CLI gem, git revision
|
169
|
+
description: This is the Arvados SDK CLI gem, git revision 7482410350df49dbddab05448b167bf61f14d71e
|
170
170
|
email: gem-dev@curoverse.com
|
171
171
|
executables:
|
172
172
|
- arv
|