run_tasks 1.2.1 → 1.2.3

Sign up to get free protection for your applications and to get access to all the features.
Files changed (3) hide show
  1. checksums.yaml +4 -4
  2. data/src/run.rb +51 -26
  3. metadata +1 -1
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 45a86048efcfa998d52d5c0cff8237a55a4db1b4b82be85a6ab0b41f618f2d1d
4
- data.tar.gz: 155a3b0a0ed7debe9fcc8568ae807fd73bf1d0f2aede895e043dd97260a9715a
3
+ metadata.gz: 55d34286c7c424f5bb48204f7b237e7ae844f1a1dd3829cd2b75191597ba5b79
4
+ data.tar.gz: 5801a9e3917159b46a0cb3ff1990e7457d818171ebc54a8203597af60e1b9a74
5
5
  SHA512:
6
- metadata.gz: 3db0e2e90e322daeb1837634c800d9f50d4596e7a5a61f81151e00fbd6a00dea880d69158396d7820b05adbaf857293b00efcd37c403719cc2f4991e990f86bf
7
- data.tar.gz: 6f1b584fe3da87009116380fd90e6234ed10c977fd337d2d1a1f24135e28a32e1a73774b6a744c7de7dc38f9c662914c29dbd94d7a2af63562502b95584886af
6
+ metadata.gz: 55de0b11daec5bbbee761655371805af0ee927a5fb39a79156f8de4db643f87eb9770822401d4907e35d6b192156484715ddfffb10f8a195fd6b31909fe4f6bc
7
+ data.tar.gz: 3850279419812cc7b24b5db29b90cf99f00e5a60d07f90dac4e5d05e2cc56926a30630c21082b197b2a85688f36e2180a4a794db80f6aaa7bc2e1852ee863d7a
data/src/run.rb CHANGED
@@ -7,9 +7,16 @@ require "readline"
7
7
  require "rubygems"
8
8
  require "securerandom"
9
9
 
10
- GEM = Gem::Specification::load("#{__dir__}/../run.gemspec")
11
- VERSION = GEM.version
12
- HOMEPAGE = GEM.homepage
10
+ ##########################################################################################
11
+
12
+ GEMSPEC_PATH = "#{__dir__}/../run_tasks.gemspec"
13
+ GEM = if File.exist?(GEMSPEC_PATH)
14
+ Gem::Specification::load(GEMSPEC_PATH) # Development.
15
+ else
16
+ Gem::Specification::find_by_name("run_tasks") rescue nil # Production.
17
+ end
18
+ VERSION = GEM&.version
19
+ HOMEPAGE = GEM&.homepage
13
20
 
14
21
  ##########################################################################################
15
22
 
@@ -62,11 +69,15 @@ end
62
69
  # Define a task.
63
70
  def task(name, help = "", &block)
64
71
  if !name.is_a?(Symbol)
65
- puts "first task parameter must be a symbol"
72
+ puts
73
+ puts "First task parameter must be a symbol".red
74
+ puts
66
75
  exit 6
67
76
  end
68
77
  if !help.is_a?(String)
69
- puts "second task parameter must be a string"
78
+ puts
79
+ puts "Second task parameter must be a string".red
80
+ puts
70
81
  exit 6
71
82
  end
72
83
  @tasks.store(name, { :help => help, :block => block })
@@ -102,8 +113,10 @@ def require_remote(uri)
102
113
  end
103
114
  eval File.read(cache_path)
104
115
  rescue => error
116
+ puts
105
117
  puts "Unable to load #{uri}:".red
106
118
  puts "#{error.class}: #{error.message}".red
119
+ puts
107
120
  exit 8
108
121
  end
109
122
 
@@ -117,14 +130,18 @@ end
117
130
  RUNFILE = "Runfile.rb"
118
131
 
119
132
  if !File.exists?(RUNFILE)
120
- puts "#{RUNFILE} does not exist"
133
+ puts
134
+ puts "#{RUNFILE} does not exist".red
135
+ puts
121
136
  exit 7
122
137
  end
123
138
 
124
139
  begin
125
140
  require "./#{RUNFILE}"
126
141
  rescue SyntaxError
142
+ puts
127
143
  puts "The Runfile contains a syntax error.".red
144
+ puts
128
145
  exit 5
129
146
  end
130
147
 
@@ -133,7 +150,11 @@ end
133
150
  # Show the help screen if there is no provided task, or if it's explicitly requested.
134
151
  if ARGV.size == 0 || (ARGV.size == 1 && ARGV[0] == "help")
135
152
  puts
136
- puts " Run v#{VERSION}".bright_blue
153
+ if VERSION
154
+ puts " Run v#{VERSION}".bright_blue
155
+ else
156
+ puts " Run".bright_blue
157
+ end
137
158
  puts
138
159
  # Compute the max task names size.
139
160
  max_size = @tasks.keys.reduce(0) do |max, name|
@@ -148,32 +169,36 @@ if ARGV.size == 0 || (ARGV.size == 1 && ARGV[0] == "help")
148
169
  end
149
170
 
150
171
  # Verify the latest release version.
151
- Thread.new do
152
- contents = URI.parse("#{HOMEPAGE}/master/run.gemspec")
153
- .open
154
- .read
155
- version = /^\s*s.version\s*=\s*"(.+?)"\s*$/.match(contents)
156
- if !version.nil?
157
- next if File.exists?("/tmp/run_dismiss_#{version}")
158
- current = VERSION.split "."
159
- latest = version[1].split "."
160
- if current[0].to_i < latest[0].to_i ||
161
- current[1].to_i < latest[1].to_i ||
162
- current[2].to_i < latest[2].to_i
163
- puts "New ".cyan + version[1].yellow + " version released!".cyan
164
- puts
165
- puts "You can upgrade with:".cyan + "gem update run_tasks".yellow
166
- puts
167
- File.write "/tmp/run_dismiss_#{version}", ""
172
+ if VERSION && HOMEPAGE
173
+ Thread.new do
174
+ contents = URI.parse("#{HOMEPAGE}/master/run.gemspec")
175
+ .open
176
+ .read
177
+ version = /^\s*s.version\s*=\s*"(.+?)"\s*$/.match(contents)
178
+ if !version.nil?
179
+ next if File.exists?("/tmp/run_dismiss_#{version}")
180
+ current = VERSION.split "."
181
+ latest = version[1].split "."
182
+ if current[0].to_i < latest[0].to_i ||
183
+ current[1].to_i < latest[1].to_i ||
184
+ current[2].to_i < latest[2].to_i
185
+ puts "New ".cyan + version[1].yellow + " version released!".cyan
186
+ puts
187
+ puts "You can upgrade with:".cyan + "gem update run_tasks".yellow
188
+ puts
189
+ File.write "/tmp/run_dismiss_#{version}", ""
190
+ end
168
191
  end
192
+ rescue
169
193
  end
170
- rescue
171
194
  end
172
195
 
173
196
  # Run the requested task.
174
197
  name = ARGV[0].to_sym
175
198
  if !@tasks.include?(name)
176
- puts "Unknown '#{name}' task"
199
+ puts
200
+ puts "Unknown '#{name}' task".red
201
+ puts
177
202
  exit 2
178
203
  end
179
204
  begin
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: run_tasks
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.2.1
4
+ version: 1.2.3
5
5
  platform: ruby
6
6
  authors:
7
7
  - Aurélien Delogu