rbbt-util 5.5.10 → 5.5.11

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,15 +1,15 @@
1
1
  ---
2
2
  !binary "U0hBMQ==":
3
3
  metadata.gz: !binary |-
4
- NzRhMzNhNDZhYTY2ZDIzNGU4MGNhMzQ4YjBlZmEyMjI2ZjU3OGI3Yw==
4
+ NDE0NzQ4YmI0Y2EzMmY4NDVjMWE4YTIwYTdlMTllMTc1YzFjY2M3ZQ==
5
5
  data.tar.gz: !binary |-
6
- MWYyN2IwZGMzMmQ5MWZlZjc2M2MxOGFiMGIwOGI2MTUwZTAwYzIxNg==
6
+ OWIzNDFlMDBjYjMxMDM5OGM1ZjA1NzIwZWNmZGQyZmU5ZjVhZjhhOA==
7
7
  !binary "U0hBNTEy":
8
8
  metadata.gz: !binary |-
9
- N2ZmOGRmMTdmNzBlZDgxNmZmNmExMDk2ZjU3YWZhMDgzYTNlY2Y0Mjc1OWYx
10
- NjRjYWI1NjE4MTM1Y2U1ZjMzOTZhMzFjODc1OTEyYmMyN2I5NmI4YTRmNzFm
11
- NDMyZjQwZDNmMTFhMzNiYzkzZmU3OWNlNDU3NmEzMWFkYjQ5ZGU=
9
+ YjNiNWExNzE2ZmVjNTRlM2I1MjBlZTM3NjAyZGMwNWQyOGY0MGViMTQ3NWIz
10
+ ZmUwNTllNzNlNWFhMjE0YWQxZjQxZjc3MTg0MDlhMDZjMThmNmEyNDNmMjg2
11
+ ODYyMTFiMjE5ZGMyZWRhMjg1ZWFmZjZhMTk0YTZlOWNiY2YxNjQ=
12
12
  data.tar.gz: !binary |-
13
- OTcwOTZkOWU1NDlhM2U0YjY2ZGIxNGY2MjJiOWZlN2Y5ZmMyZjRiMjU0MjE3
14
- NTMwN2FlNjVlODgxMTFkNjJhZDNkNzcyN2Y3MDQ3ZDNkNGIwOTc5ZGZhMDQz
15
- ZTNmNDI1OGQwMzFiMmZmMjUzZWU5MzUwMGU1ZGMzMzI4YTgyYzM=
13
+ NzFmNGQ2ZjdiMzEyY2UzZmQ0NjhmYjJjMDAxNTg5NDYwYTJiNTUyZDFhODYw
14
+ ZTI2MjFlMmI2YzA5NWQ1ZjNiODgzZmY2ODkyZGNiNmRjZWFhM2JlNDlhZWRh
15
+ YmE5MzBiMDcyZjJlNTc2MmQ3NWE3YjAzMGNlYWExYjZlOTIzMTU=
data/lib/rbbt/workflow.rb CHANGED
@@ -5,6 +5,14 @@ require 'rbbt/workflow/accessor'
5
5
 
6
6
  module Workflow
7
7
 
8
+ class << self
9
+ attr_accessor :autoinstall
10
+
11
+ def autoinstall
12
+ @autoload ||= ENV["RBBT_WORKFLOW_AUTOINSTALL"] == "true"
13
+ end
14
+ end
15
+
8
16
  def self.resolve_locals(inputs)
9
17
  inputs.each do |name, value|
10
18
  if value =~ /^local:(.*?):(.*)/ or
@@ -78,9 +86,13 @@ module Workflow
78
86
  end
79
87
  end
80
88
 
81
- return false if filename.nil? or not File.exists? filename
82
- load_workflow_file filename
89
+ if filename and File.exists? filename
90
+ load_workflow_file filename
91
+ else
92
+ return false
93
+ end
83
94
  end
95
+
84
96
  def self.require_workflow(wf_name)
85
97
 
86
98
  # Already loaded
@@ -105,10 +117,12 @@ module Workflow
105
117
  # Load locally
106
118
 
107
119
  Log.info{"Loading workflow #{wf_name}"}
108
- require_local_workflow(wf_name) || require_local_workflow(Misc.snake_case(wf_name)) || raise("Workflow not found or could not be loaded: #{ wf_name }")
120
+ require_local_workflow(wf_name) or
121
+ require_local_workflow(Misc.snake_case(wf_name)) or
122
+ (Workflow.autoinstall and `rbbt install workflow #{Misc.snake_case(wf_name)}` and require_local_workflow(Misc.snake_case(wf_name))) or
123
+ raise("Workflow not found or could not be loaded: #{ wf_name }")
109
124
  end
110
125
 
111
-
112
126
  attr_accessor :description
113
127
  attr_accessor :libdir, :workdir
114
128
  attr_accessor :helpers, :tasks
@@ -0,0 +1,26 @@
1
+ #!/usr/bin/env ruby
2
+
3
+ require 'rbbt-util'
4
+ require 'rbbt/workflow'
5
+
6
+ workflow = ARGV[0]
7
+ repo = ARGV[1]
8
+
9
+ raise "No workflow specified" if workflow.nil?
10
+
11
+ workflow_dir = Rbbt.etc.workflow_dir.exists? ? Rbbt.etc.workflow_dir.read.strip : Rbbt.workflows
12
+
13
+ FileUtils.mkdir_p workflow_dir unless File.exists? workflow_dir
14
+
15
+ Misc.in_dir(workflow_dir) do
16
+ if File.exists? workflow
17
+ `(cd #{ workflow }; git pull)`
18
+ else
19
+ if repo.nil?
20
+ repo_base_url = Rbbt.etc.workflow_repo.exists? ? Rbbt.etc.workflow_repo.read.strip : 'git@github.com:Rbbt-Workflows/'
21
+ repo = File.join(repo_base_url, Misc.snake_case(workflow) + '.git')
22
+ end
23
+ Log.warn "Cloning #{ repo }"
24
+ `git clone "#{repo}"`
25
+ end
26
+ end
@@ -1,6 +1,5 @@
1
1
  #!/usr/bin/env ruby
2
2
 
3
-
4
3
  require 'rbbt/util/simpleopt'
5
4
  require 'rbbt/workflow'
6
5
  require 'rbbt/workflow/usage'
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: rbbt-util
3
3
  version: !ruby/object:Gem::Version
4
- version: 5.5.10
4
+ version: 5.5.11
5
5
  platform: ruby
6
6
  authors:
7
7
  - Miguel Vazquez
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2013-10-30 00:00:00.000000000 Z
11
+ date: 2013-10-31 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: rake
@@ -150,6 +150,7 @@ files:
150
150
  - share/rbbt_commands/conf/web_user/add
151
151
  - share/rbbt_commands/conf/web_user/list
152
152
  - share/rbbt_commands/conf/web_user/remove
153
+ - share/rbbt_commands/install/workflow
153
154
  - share/rbbt_commands/study/task
154
155
  - share/rbbt_commands/tsv/attach
155
156
  - share/rbbt_commands/tsv/change_id