origen 0.56.0 → 0.57.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/config/version.rb +1 -1
- data/lib/origen.rb +3 -0
- data/lib/origen/application/lsf_manager.rb +8 -8
- data/lib/origen/application/workspace_manager.rb +1 -1
- data/lib/origen/log.rb +5 -2
- data/lib/origen/regression_manager.rb +15 -8
- data/lib/origen/revision_control/git.rb +1 -0
- data/origen_app_generators/origen_app_generators.gemspec +3 -3
- metadata +3 -4
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 21b7b219ea6b020ff55496a1c3103e1abb49080162ae22c7e923cf09573b2909
|
4
|
+
data.tar.gz: 2e0fdba7223ee3fa33f272f88ff9ccdea39ba54d630eb8e28c99d5bfc73c6563
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: bb7fcc388d925a782a33120045527f627e5c7c31fcbfe351f0ef32c8368824c2d94c473f818e68a5e1948cd321dd8cd130d288d348ce141875678b03d11ee693
|
7
|
+
data.tar.gz: 187445f738cc7873c920f29e4c55eb480d67d8ab1be5fbc143e592d6cc855ecb8a27f2c835efbb53ce304faa123e432fedd8ba51b3205df1fe414f3f1482ad8c
|
data/config/version.rb
CHANGED
data/lib/origen.rb
CHANGED
@@ -252,8 +252,9 @@ module Origen
|
|
252
252
|
end
|
253
253
|
|
254
254
|
# Build the log file from the completed jobs
|
255
|
-
def build_log(
|
256
|
-
|
255
|
+
def build_log(options = {})
|
256
|
+
log_method = options[:log_file] ? options[:log_file] : :info
|
257
|
+
Origen.log.send(log_method, '*' * 70)
|
257
258
|
completed_jobs.each do |job|
|
258
259
|
File.open(log_file(job[:id])) do |f|
|
259
260
|
last_line_blank = false
|
@@ -291,12 +292,12 @@ module Origen
|
|
291
292
|
stats.failed_files += Regexp.last_match[1].to_i
|
292
293
|
elsif line =~ /ERROR!/
|
293
294
|
stats.errors += 1
|
294
|
-
Origen.log.send :relog, line
|
295
|
+
Origen.log.send :relog, line, options
|
295
296
|
else
|
296
297
|
# Compress multiple blank lines
|
297
298
|
if line =~ /^\s*$/ || line =~ /.*\|\|\s*$/
|
298
299
|
unless last_line_blank
|
299
|
-
Origen.log.
|
300
|
+
Origen.log.send(log_method, nil)
|
300
301
|
last_line_blank = true
|
301
302
|
end
|
302
303
|
else
|
@@ -305,8 +306,7 @@ module Origen
|
|
305
306
|
line =~ /Insecure world writable dir/ ||
|
306
307
|
line =~ /To save all of/
|
307
308
|
line.strip!
|
308
|
-
|
309
|
-
Origen.log.send :relog, line
|
309
|
+
Origen.log.send :relog, line, options
|
310
310
|
last_line_blank = false
|
311
311
|
end
|
312
312
|
end
|
@@ -319,7 +319,7 @@ module Origen
|
|
319
319
|
end
|
320
320
|
end
|
321
321
|
end
|
322
|
-
Origen.log.
|
322
|
+
Origen.log.send(log_method, '*' * 70)
|
323
323
|
stats.print_summary
|
324
324
|
end
|
325
325
|
|
@@ -409,7 +409,7 @@ module Origen
|
|
409
409
|
end
|
410
410
|
|
411
411
|
str = "#{action} #{cmd}".strip
|
412
|
-
str.sub('origen ', '') if str =~ /^origen /
|
412
|
+
str.sub!('origen ', '') if str =~ /^origen /
|
413
413
|
|
414
414
|
# Append the --exec_remote switch to all Origen commands, this allows command
|
415
415
|
# processing to be altered based on whether it is running locally or
|
@@ -114,7 +114,7 @@ module Origen
|
|
114
114
|
fail "Sorry but #{path} already exists!"
|
115
115
|
end
|
116
116
|
FileUtils.rm_rf(path.to_s) if File.exist?(path.to_s)
|
117
|
-
rc = RevisionControl.new remote: options[:rc_url], local: path.to_s
|
117
|
+
rc = RevisionControl.new options.merge(remote: options[:rc_url], local: path.to_s)
|
118
118
|
rc.build
|
119
119
|
end
|
120
120
|
|
data/lib/origen/log.rb
CHANGED
@@ -274,6 +274,7 @@ module Origen
|
|
274
274
|
else
|
275
275
|
msg = format_msg(method.to_s.upcase, msg)
|
276
276
|
end
|
277
|
+
console.info msg if options[:verbose]
|
277
278
|
@custom_logs[method.to_sym].info(msg)
|
278
279
|
end
|
279
280
|
|
@@ -364,8 +365,10 @@ module Origen
|
|
364
365
|
end
|
365
366
|
end
|
366
367
|
|
367
|
-
def relog(msg)
|
368
|
-
if
|
368
|
+
def relog(msg, options = {})
|
369
|
+
if options[:log_file]
|
370
|
+
send options[:log_file], msg.sub(/.*\|\|\s*/, ''), options
|
371
|
+
elsif msg =~ /^\[(\w+)\] .*/
|
369
372
|
method = Regexp.last_match(1).downcase
|
370
373
|
if respond_to?(method)
|
371
374
|
send method, msg.sub(/.*\|\|\s*/, '')
|
@@ -27,6 +27,7 @@ module Origen
|
|
27
27
|
# @param [Hash] options Options to customize the run instance
|
28
28
|
# @option options [Array] :target String Array of target names on which to run regression
|
29
29
|
# @option options [Boolean] :build_reference (true) Build reference workspace automatically
|
30
|
+
# @option options [Symbol] :build_method (:init) whether to use a git init or git clone method to build the workspace
|
30
31
|
# @option options [Boolean] :send_email (false) Send results email when regression complete
|
31
32
|
# @option options [Boolean] :email_all_developers (false) If sending email, whether to email all developers or just user
|
32
33
|
# @option options [Boolean] :report_results (false) Whether to report results inline to console
|
@@ -35,6 +36,7 @@ module Origen
|
|
35
36
|
def run(options = {})
|
36
37
|
options = {
|
37
38
|
build_reference: true,
|
39
|
+
build_method: :init,
|
38
40
|
send_email: false,
|
39
41
|
email_all_developers: false,
|
40
42
|
report_results: false,
|
@@ -46,7 +48,7 @@ module Origen
|
|
46
48
|
Origen.lsf.clear_all
|
47
49
|
yield options
|
48
50
|
wait_for_completion(options) if options[:uses_lsf]
|
49
|
-
save_and_delete_output
|
51
|
+
save_and_delete_output(options)
|
50
52
|
else
|
51
53
|
if options[:build_reference]
|
52
54
|
@reference_tag = version_to_tag(options[:version] || get_version(options))
|
@@ -58,7 +60,8 @@ module Origen
|
|
58
60
|
disable_origen_version_check do
|
59
61
|
Dir.chdir reference_origen_root do
|
60
62
|
Bundler.with_clean_env do
|
61
|
-
|
63
|
+
# Origen 0.40.0 started using origen-owned binstubs
|
64
|
+
system 'rm -rf lbin' if Gem::Version.new(Origen.version) < Gem::Version.new('0.40.0')
|
62
65
|
# If regression is run using a service account, we need to setup the path/bundler manually
|
63
66
|
# The regression manager needs to be passed a --service_account option when initiated.
|
64
67
|
if options[:service_account]
|
@@ -125,7 +128,7 @@ module Origen
|
|
125
128
|
end
|
126
129
|
|
127
130
|
def summarize_results(options = {})
|
128
|
-
Origen.lsf.build_log
|
131
|
+
Origen.lsf.build_log(options)
|
129
132
|
stats = Origen.app.stats
|
130
133
|
if options[:report_results]
|
131
134
|
puts "Regression results: \n"
|
@@ -144,12 +147,16 @@ module Origen
|
|
144
147
|
|
145
148
|
# Saves all generated output (to the reference dir) and then
|
146
149
|
# deletes the output directory to save space
|
147
|
-
def save_and_delete_output
|
148
|
-
Origen.lsf.build_log
|
150
|
+
def save_and_delete_output(options = {})
|
151
|
+
Origen.lsf.build_log(options)
|
149
152
|
Origen.log.flush
|
150
153
|
Dir.chdir reference_origen_root do
|
151
154
|
Bundler.with_clean_env do
|
152
|
-
|
155
|
+
if options[:log_file]
|
156
|
+
system "bundle exec origen save all -f log/#{options[:log_file]}.txt"
|
157
|
+
else
|
158
|
+
system 'bundle exec origen save all'
|
159
|
+
end
|
153
160
|
end
|
154
161
|
end
|
155
162
|
FileUtils.rm_rf "#{reference_origen_root}/output"
|
@@ -214,7 +221,7 @@ module Origen
|
|
214
221
|
# Build the new reference workspace now.
|
215
222
|
unless File.exist?(@reference_workspace)
|
216
223
|
highlight { Origen.log.info 'Building reference workspace...' }
|
217
|
-
ws.build(@reference_workspace)
|
224
|
+
ws.build(@reference_workspace, options)
|
218
225
|
end
|
219
226
|
ws.set_reference_workspace(@reference_workspace)
|
220
227
|
else
|
@@ -229,7 +236,7 @@ module Origen
|
|
229
236
|
end
|
230
237
|
unless File.exist?(@reference_workspace)
|
231
238
|
highlight { Origen.log.info 'Building reference workspace...' }
|
232
|
-
ws.build(@reference_workspace)
|
239
|
+
ws.build(@reference_workspace, options)
|
233
240
|
end
|
234
241
|
ws.set_reference_workspace(@reference_workspace)
|
235
242
|
end
|
@@ -8,16 +8,16 @@ Gem::Specification.new do |s|
|
|
8
8
|
s.required_rubygems_version = Gem::Requirement.new(">= 1.8.11".freeze) if s.respond_to? :required_rubygems_version=
|
9
9
|
s.require_paths = ["lib".freeze]
|
10
10
|
s.authors = ["Stephen McGinty".freeze]
|
11
|
-
s.date = "2020-05-
|
11
|
+
s.date = "2020-05-26"
|
12
12
|
s.email = ["stephen.f.mcginty@gmail.com".freeze]
|
13
13
|
s.files = ["bin/boot.rb".freeze, "config/application.rb".freeze, "config/boot.rb".freeze, "config/commands.rb".freeze, "config/shared_commands.rb".freeze, "config/version.rb".freeze, "lib/origen_app_generators.rb".freeze, "lib/origen_app_generators/application.rb".freeze, "lib/origen_app_generators/base.rb".freeze, "lib/origen_app_generators/empty_application.rb".freeze, "lib/origen_app_generators/empty_plugin.rb".freeze, "lib/origen_app_generators/new.rb".freeze, "lib/origen_app_generators/new_app_tests.rb".freeze, "lib/origen_app_generators/origen_infrastructure/app_generator_plugin.rb".freeze, "lib/origen_app_generators/plugin.rb".freeze, "lib/origen_app_generators/test_engineering/common.rb".freeze, "lib/origen_app_generators/test_engineering/stand_alone_application.rb".freeze, "lib/origen_app_generators/test_engineering/test_block.rb".freeze, "templates/app_generators".freeze, "templates/app_generators/application".freeze, "templates/app_generators/application/.gitignore".freeze, "templates/app_generators/application/.irbrc".freeze, "templates/app_generators/application/.rspec".freeze, "templates/app_generators/application/.travis.yml".freeze, "templates/app_generators/application/Gemfile".freeze, "templates/app_generators/application/Rakefile".freeze, "templates/app_generators/application/app".freeze, "templates/app_generators/application/app/blocks".freeze, "templates/app_generators/application/app/blocks/top_level.rb".freeze, "templates/app_generators/application/app/lib".freeze, "templates/app_generators/application/app/lib/module.rb".freeze, "templates/app_generators/application/app/templates".freeze, "templates/app_generators/application/app/templates/web".freeze, "templates/app_generators/application/app/templates/web/index.md.erb".freeze, "templates/app_generators/application/app/templates/web/layouts".freeze, "templates/app_generators/application/app/templates/web/layouts/_basic.html.erb".freeze, "templates/app_generators/application/app/templates/web/partials".freeze, "templates/app_generators/application/app/templates/web/partials/_navbar.html.erb".freeze, "templates/app_generators/application/app/templates/web/release_notes.md.erb".freeze, "templates/app_generators/application/config".freeze, "templates/app_generators/application/config/application.rb".freeze, "templates/app_generators/application/config/boot.rb".freeze, "templates/app_generators/application/config/commands.rb".freeze, "templates/app_generators/application/config/maillist_dev.txt".freeze, "templates/app_generators/application/config/maillist_prod.txt".freeze, "templates/app_generators/application/config/version.rb".freeze, "templates/app_generators/application/doc".freeze, "templates/app_generators/application/doc/history".freeze, "templates/app_generators/application/dot_keep".freeze, "templates/app_generators/application/origen_core_session".freeze, "templates/app_generators/application/spec".freeze, "templates/app_generators/application/spec/spec_helper.rb".freeze, "templates/app_generators/application/target".freeze, "templates/app_generators/application/target/debug.rb".freeze, "templates/app_generators/application/target/default.rb".freeze, "templates/app_generators/application/target/production.rb".freeze, "templates/app_generators/new".freeze, "templates/app_generators/new/generator.rb".freeze, "templates/app_generators/new/info.md.erb".freeze, "templates/app_generators/origen_infrastructure".freeze, "templates/app_generators/origen_infrastructure/app_generator_plugin".freeze, "templates/app_generators/origen_infrastructure/app_generator_plugin/app".freeze, "templates/app_generators/origen_infrastructure/app_generator_plugin/app/lib".freeze, "templates/app_generators/origen_infrastructure/app_generator_plugin/app/lib/application.rb".freeze, "templates/app_generators/origen_infrastructure/app_generator_plugin/app/lib/base.rb".freeze, "templates/app_generators/origen_infrastructure/app_generator_plugin/app/lib/module.rb".freeze, "templates/app_generators/origen_infrastructure/app_generator_plugin/app/lib/plugin.rb".freeze, "templates/app_generators/origen_infrastructure/app_generator_plugin/config".freeze, "templates/app_generators/origen_infrastructure/app_generator_plugin/config/load_generators.rb".freeze, "templates/app_generators/plugin".freeze, "templates/app_generators/plugin/Gemfile".freeze, "templates/app_generators/plugin/Rakefile".freeze, "templates/app_generators/plugin/app".freeze, "templates/app_generators/plugin/app/templates".freeze, "templates/app_generators/plugin/app/templates/web".freeze, "templates/app_generators/plugin/app/templates/web/index.md.erb".freeze, "templates/app_generators/plugin/app/templates/web/partials".freeze, "templates/app_generators/plugin/app/templates/web/partials/_navbar_external.html.erb".freeze, "templates/app_generators/plugin/app/templates/web/partials/_navbar_internal.html.erb".freeze, "templates/app_generators/plugin/config".freeze, "templates/app_generators/plugin/config/boot.rb".freeze, "templates/app_generators/plugin/gemspec.rb".freeze, "templates/app_generators/test_engineering".freeze, "templates/app_generators/test_engineering/environment".freeze, "templates/app_generators/test_engineering/environment/j750.rb".freeze, "templates/app_generators/test_engineering/environment/uflex.rb".freeze, "templates/app_generators/test_engineering/environment/v93k.rb".freeze, "templates/app_generators/test_engineering/stand_alone_application".freeze, "templates/app_generators/test_engineering/stand_alone_application/.keep".freeze, "templates/app_generators/test_engineering/test_block".freeze, "templates/app_generators/test_engineering/test_block/.keep".freeze]
|
14
14
|
s.homepage = "http://origen-sdk.org/origen_app_generators".freeze
|
15
15
|
s.licenses = ["MIT".freeze]
|
16
16
|
s.required_ruby_version = Gem::Requirement.new(">= 1.9.3".freeze)
|
17
|
-
s.rubygems_version = "
|
17
|
+
s.rubygems_version = "3.0.3".freeze
|
18
18
|
s.summary = "Origen application generators".freeze
|
19
19
|
|
20
|
-
s.installed_by_version = "
|
20
|
+
s.installed_by_version = "3.0.3" if s.respond_to? :installed_by_version
|
21
21
|
|
22
22
|
if s.respond_to? :specification_version then
|
23
23
|
s.specification_version = 4
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: origen
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.
|
4
|
+
version: 0.57.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Stephen McGinty
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2020-05-
|
11
|
+
date: 2020-05-26 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: activesupport
|
@@ -749,8 +749,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
749
749
|
- !ruby/object:Gem::Version
|
750
750
|
version: 1.8.11
|
751
751
|
requirements: []
|
752
|
-
|
753
|
-
rubygems_version: 2.7.7
|
752
|
+
rubygems_version: 3.0.3
|
754
753
|
signing_key:
|
755
754
|
specification_version: 4
|
756
755
|
summary: The Semiconductor Developer's Kit
|