autoproj 2.10.1 → 2.13.0
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/.rubocop.yml +5 -8
- data/.travis.yml +5 -3
- data/autoproj.gemspec +7 -6
- data/bin/alog +1 -0
- data/bin/autoproj +1 -1
- data/bin/autoproj_bootstrap +149 -86
- data/bin/autoproj_bootstrap.in +9 -7
- data/bin/autoproj_install +148 -82
- data/bin/autoproj_install.in +8 -3
- data/lib/autoproj.rb +3 -0
- data/lib/autoproj/aruba_minitest.rb +15 -0
- data/lib/autoproj/autobuild_extensions/dsl.rb +61 -27
- data/lib/autoproj/base.rb +35 -6
- data/lib/autoproj/cli/base.rb +1 -1
- data/lib/autoproj/cli/build.rb +9 -3
- data/lib/autoproj/cli/cache.rb +79 -7
- data/lib/autoproj/cli/doc.rb +4 -18
- data/lib/autoproj/cli/inspection_tool.rb +5 -6
- data/lib/autoproj/cli/main.rb +41 -18
- data/lib/autoproj/cli/main_doc.rb +86 -0
- data/lib/autoproj/cli/main_plugin.rb +3 -0
- data/lib/autoproj/cli/main_test.rb +15 -0
- data/lib/autoproj/cli/show.rb +12 -18
- data/lib/autoproj/cli/status.rb +15 -9
- data/lib/autoproj/cli/test.rb +13 -84
- data/lib/autoproj/cli/update.rb +77 -19
- data/lib/autoproj/cli/utility.rb +136 -0
- data/lib/autoproj/configuration.rb +28 -4
- data/lib/autoproj/default.osdeps +18 -0
- data/lib/autoproj/installation_manifest.rb +7 -5
- data/lib/autoproj/manifest.rb +15 -21
- data/lib/autoproj/ops/build.rb +23 -27
- data/lib/autoproj/ops/cache.rb +151 -33
- data/lib/autoproj/ops/cached_env.rb +2 -2
- data/lib/autoproj/ops/import.rb +146 -80
- data/lib/autoproj/ops/install.rb +140 -79
- data/lib/autoproj/ops/phase_reporting.rb +49 -0
- data/lib/autoproj/ops/snapshot.rb +2 -1
- data/lib/autoproj/ops/tools.rb +2 -2
- data/lib/autoproj/os_package_installer.rb +19 -11
- data/lib/autoproj/package_definition.rb +29 -10
- data/lib/autoproj/package_managers/apt_dpkg_manager.rb +49 -28
- data/lib/autoproj/package_managers/bundler_manager.rb +257 -87
- data/lib/autoproj/package_managers/homebrew_manager.rb +2 -2
- data/lib/autoproj/package_managers/shell_script_manager.rb +44 -24
- data/lib/autoproj/package_manifest.rb +49 -34
- data/lib/autoproj/package_set.rb +48 -29
- data/lib/autoproj/repository_managers/apt.rb +0 -1
- data/lib/autoproj/test.rb +29 -10
- data/lib/autoproj/variable_expansion.rb +3 -1
- data/lib/autoproj/vcs_definition.rb +30 -15
- data/lib/autoproj/version.rb +1 -1
- data/lib/autoproj/workspace.rb +55 -13
- metadata +32 -28
data/bin/autoproj_bootstrap.in
CHANGED
@@ -13,12 +13,14 @@ require 'autoproj/ops/install'
|
|
13
13
|
ENV.delete('BUNDLE_GEMFILE')
|
14
14
|
ENV.delete('RUBYLIB')
|
15
15
|
ops = Autoproj::Ops::Install.new(Dir.pwd)
|
16
|
+
|
17
|
+
existing_config = File.join(Dir.pwd, '.autoproj', 'config.yml')
|
18
|
+
if File.file?(existing_config)
|
19
|
+
puts "Found existing configuration, using it as seed"
|
20
|
+
puts "use --no-seed-config to avoid this behavior"
|
21
|
+
ops.add_seed_config(existing_config)
|
22
|
+
end
|
16
23
|
bootstrap_options = ops.parse_options(ARGV)
|
17
24
|
ops.stage1
|
18
|
-
|
19
|
-
|
20
|
-
end
|
21
|
-
if !ops.run_autoproj 'bootstrap', *bootstrap_options
|
22
|
-
exit 1
|
23
|
-
end
|
24
|
-
|
25
|
+
ops.call_stage2 unless ops.skip_stage2?
|
26
|
+
exit 1 unless ops.run_autoproj('bootstrap', *bootstrap_options)
|
data/bin/autoproj_install
CHANGED
@@ -8,10 +8,13 @@ elsif ENV['AUTOPROJ_CURRENT_ROOT'] && (ENV['AUTOPROJ_CURRENT_ROOT'] != Dir.pwd)
|
|
8
8
|
exit 1
|
9
9
|
end
|
10
10
|
|
11
|
+
# frozen_string_literal: true
|
12
|
+
|
11
13
|
require 'pathname'
|
12
14
|
require 'optparse'
|
13
15
|
require 'fileutils'
|
14
16
|
require 'yaml'
|
17
|
+
require 'English'
|
15
18
|
|
16
19
|
module Autoproj
|
17
20
|
module Ops
|
@@ -23,6 +26,36 @@ module Autoproj
|
|
23
26
|
class Install
|
24
27
|
class UnexpectedBinstub < RuntimeError; end
|
25
28
|
|
29
|
+
RUBYLIB_REINIT = <<~RUBY
|
30
|
+
if defined?(Bundler)
|
31
|
+
if Bundler.respond_to?(:with_unbundled_env)
|
32
|
+
Bundler.with_unbundled_env do
|
33
|
+
exec(Hash['RUBYLIB' => nil], $0, *ARGV)
|
34
|
+
end
|
35
|
+
else
|
36
|
+
Bundler.with_clean_env do
|
37
|
+
exec(Hash['RUBYLIB' => nil], $0, *ARGV)
|
38
|
+
end
|
39
|
+
end
|
40
|
+
elsif ENV['RUBYLIB']
|
41
|
+
exec(Hash['RUBYLIB' => nil], $0, *ARGV)
|
42
|
+
end
|
43
|
+
RUBY
|
44
|
+
|
45
|
+
WITHOUT_BUNDLER = <<~RUBY
|
46
|
+
if defined?(Bundler)
|
47
|
+
if Bundler.respond_to?(:with_unbundled_env)
|
48
|
+
Bundler.with_unbundled_env do
|
49
|
+
exec($0, *ARGV)
|
50
|
+
end
|
51
|
+
else
|
52
|
+
Bundler.with_clean_env do
|
53
|
+
exec($0, *ARGV)
|
54
|
+
end
|
55
|
+
end
|
56
|
+
end
|
57
|
+
RUBY
|
58
|
+
|
26
59
|
# The created workspace's root directory
|
27
60
|
attr_reader :root_dir
|
28
61
|
# Content of the Gemfile generated to install autoproj itself
|
@@ -230,6 +263,10 @@ module Autoproj
|
|
230
263
|
"gem \"utilrb\", \">= 3.0.1\""].join("\n")
|
231
264
|
end
|
232
265
|
|
266
|
+
def add_seed_config(path)
|
267
|
+
@config.merge!(YAML.safe_load(File.read(path), [Symbol]))
|
268
|
+
end
|
269
|
+
|
233
270
|
# Parse the provided command line options and returns the non-options
|
234
271
|
def parse_options(args = ARGV)
|
235
272
|
options = OptionParser.new do |opt|
|
@@ -242,54 +279,63 @@ module Autoproj
|
|
242
279
|
opt.on '--debug', 'Run in debug mode' do
|
243
280
|
@autoproj_options << '--debug'
|
244
281
|
end
|
245
|
-
opt.on '--gem-source=URL', String,
|
246
|
-
|
282
|
+
opt.on '--gem-source=URL', String, 'use this source for RubyGems '\
|
283
|
+
'instead of rubygems.org' do |url|
|
247
284
|
@gem_source = url
|
248
285
|
end
|
249
|
-
opt.on '--gems-path=PATH',
|
250
|
-
|
286
|
+
opt.on '--gems-path=PATH', 'install gems under this path instead '\
|
287
|
+
'of ~/.autoproj/gems' do |path|
|
251
288
|
self.gems_install_path = path
|
252
289
|
end
|
253
290
|
opt.on '--public-gems', "install gems in the default gem location" do
|
254
291
|
self.install_gems_in_gem_user_dir
|
255
292
|
end
|
256
|
-
opt.on '--version=VERSION_CONSTRAINT', String, 'use the provided
|
257
|
-
|
293
|
+
opt.on '--bundler-version=VERSION_CONSTRAINT', String, 'use the provided '\
|
294
|
+
'string as a version constraint for bundler' do |version|
|
295
|
+
@config['bundler_version'] = version
|
296
|
+
end
|
297
|
+
opt.on '--version=VERSION_CONSTRAINT', String, 'use the provided '\
|
298
|
+
'string as a version constraint for autoproj' do |version|
|
258
299
|
if @gemfile
|
259
300
|
raise "cannot give both --version and --gemfile"
|
260
301
|
end
|
261
302
|
@gemfile = default_gemfile_contents(version)
|
262
303
|
end
|
263
|
-
opt.on '--gemfile=PATH', String, 'use the given Gemfile to install
|
264
|
-
|
304
|
+
opt.on '--gemfile=PATH', String, 'use the given Gemfile to install '\
|
305
|
+
'autoproj instead of the default' do |path|
|
265
306
|
if @gemfile
|
266
307
|
raise "cannot give both --version and --gemfile"
|
267
308
|
end
|
268
309
|
@gemfile = File.read(path)
|
269
310
|
end
|
270
|
-
opt.on '--seed-config
|
271
|
-
|
272
|
-
|
311
|
+
opt.on '--no-seed-config',
|
312
|
+
'when reinstalling an existing autoproj workspace, do not '\
|
313
|
+
'use the config in .autoproj/ as seed' do
|
314
|
+
@config.clear
|
273
315
|
end
|
274
|
-
opt.on '--
|
275
|
-
|
276
|
-
|
316
|
+
opt.on '--seed-config=PATH', String, 'path to a seed file that '\
|
317
|
+
'should be used to initialize the configuration' do |path|
|
318
|
+
add_seed_config(path)
|
319
|
+
end
|
320
|
+
opt.on '--prefer-os-independent-packages', 'prefer OS-independent '\
|
321
|
+
'packages (such as a RubyGem) over their OS-packaged equivalent '\
|
322
|
+
'(e.g. the thor gem vs. the ruby-thor debian package)' do
|
277
323
|
@prefer_indep_over_os_packages = true
|
278
324
|
end
|
279
|
-
opt.on '--[no-]color', 'do not use colored output (enabled by
|
280
|
-
|
325
|
+
opt.on '--[no-]color', 'do not use colored output (enabled by '\
|
326
|
+
'default if the terminal supports it)' do |color|
|
281
327
|
if color then @autoproj_options << "--color"
|
282
328
|
else @autoproj_options << '--no-color'
|
283
329
|
end
|
284
330
|
end
|
285
|
-
opt.on '--[no-]progress', 'do not use progress output (enabled by
|
286
|
-
|
331
|
+
opt.on '--[no-]progress', 'do not use progress output (enabled by '\
|
332
|
+
'default if the terminal supports it)' do |progress|
|
287
333
|
if progress then @autoproj_options << "--progress"
|
288
334
|
else @autoproj_options << '--no-progress'
|
289
335
|
end
|
290
336
|
end
|
291
|
-
opt.on '--[no-]interactive', 'if non-interactive, use default
|
292
|
-
|
337
|
+
opt.on '--[no-]interactive', 'if non-interactive, use default '\
|
338
|
+
'answer for questions' do |flag|
|
293
339
|
if flag then @autoproj_options << "--interactive"
|
294
340
|
else @autoproj_options << "--no-interactive"
|
295
341
|
end
|
@@ -299,22 +345,50 @@ module Autoproj
|
|
299
345
|
@autoproj_options + args
|
300
346
|
end
|
301
347
|
|
302
|
-
def
|
303
|
-
|
304
|
-
|
305
|
-
|
306
|
-
|
307
|
-
return unless $?.success?
|
348
|
+
def bundler_version
|
349
|
+
@config['bundler_version']
|
350
|
+
end
|
351
|
+
|
352
|
+
def find_bundler(gem_program, version: nil)
|
308
353
|
bundler_path = File.join(gems_gem_home, 'bin', 'bundle')
|
309
|
-
|
310
|
-
|
311
|
-
|
354
|
+
return unless File.exist?(bundler_path)
|
355
|
+
|
356
|
+
setup_paths =
|
357
|
+
if version
|
358
|
+
find_versioned_bundler_setup(gem_program, version)
|
359
|
+
else
|
360
|
+
find_unversioned_bundler_setup(gem_program)
|
312
361
|
end
|
362
|
+
|
363
|
+
setup_paths.each do |setup_path|
|
364
|
+
return bundler_path if setup_path.start_with?(gems_gem_home)
|
313
365
|
end
|
314
|
-
|
366
|
+
nil
|
367
|
+
end
|
368
|
+
|
369
|
+
def find_versioned_bundler_setup(gem_program, version)
|
370
|
+
contents = IO.popen(
|
371
|
+
[env_for_child, Gem.ruby, gem_program,
|
372
|
+
'contents', '-v', version, 'bundler'],
|
373
|
+
&:readlines
|
374
|
+
)
|
375
|
+
return [] unless $CHILD_STATUS.success?
|
376
|
+
|
377
|
+
contents.grep(%r{bundler/setup.rb$})
|
378
|
+
end
|
379
|
+
|
380
|
+
def find_unversioned_bundler_setup(gem_program)
|
381
|
+
setup_paths = IO.popen(
|
382
|
+
[env_for_child, Gem.ruby, gem_program,
|
383
|
+
'which', '-a', 'bundler/setup'],
|
384
|
+
&:readlines
|
385
|
+
)
|
386
|
+
return [] unless $CHILD_STATUS.success?
|
387
|
+
|
388
|
+
setup_paths
|
315
389
|
end
|
316
390
|
|
317
|
-
def install_bundler(gem_program, silent: false)
|
391
|
+
def install_bundler(gem_program, version: nil, silent: false)
|
318
392
|
local = ['--local'] if local?
|
319
393
|
|
320
394
|
redirection = Hash.new
|
@@ -322,6 +396,9 @@ module Autoproj
|
|
322
396
|
redirection = Hash[out: :close]
|
323
397
|
end
|
324
398
|
|
399
|
+
version_args = []
|
400
|
+
version_args << '-v' << version if version
|
401
|
+
|
325
402
|
# Shut up the bundler warning about 'bin' not being in PATH
|
326
403
|
env = self.env
|
327
404
|
env['PATH'] += [File.join(gems_gem_home, 'bin')]
|
@@ -332,14 +409,14 @@ module Autoproj
|
|
332
409
|
'--clear-sources', '--source', gem_source,
|
333
410
|
'--no-user-install', '--install-dir', gems_gem_home,
|
334
411
|
*local, "--bindir=#{File.join(gems_gem_home, 'bin')}",
|
335
|
-
'bundler', **redirection)
|
412
|
+
'bundler', *version_args, **redirection)
|
336
413
|
|
337
414
|
if !result
|
338
415
|
STDERR.puts "FATAL: failed to install bundler in #{gems_gem_home}"
|
339
416
|
nil
|
340
417
|
end
|
341
418
|
|
342
|
-
if (bundler_path = find_bundler(gem_program))
|
419
|
+
if (bundler_path = find_bundler(gem_program, version: version))
|
343
420
|
bundler_path
|
344
421
|
else
|
345
422
|
STDERR.puts "gem install bundler returned successfully, but still "\
|
@@ -348,7 +425,7 @@ module Autoproj
|
|
348
425
|
end
|
349
426
|
end
|
350
427
|
|
351
|
-
def install_autoproj(bundler)
|
428
|
+
def install_autoproj(bundler, bundler_version: self.bundler_version)
|
352
429
|
# Force bundler to update. If the user does not want this, let
|
353
430
|
# him specify a Gemfile with tighter version constraints
|
354
431
|
lockfile = File.join(dot_autoproj, 'Gemfile.lock')
|
@@ -363,14 +440,19 @@ module Autoproj
|
|
363
440
|
opts << "--path=#{gems_install_path}"
|
364
441
|
shims_path = File.join(dot_autoproj, 'bin')
|
365
442
|
|
366
|
-
|
367
|
-
|
368
|
-
"--gemfile=#{autoproj_gemfile_path}",
|
369
|
-
"--shebang=#{Gem.ruby}",
|
370
|
-
"--binstubs=#{shims_path}",
|
371
|
-
*opts, chdir: dot_autoproj)
|
443
|
+
version_arg = []
|
444
|
+
version_arg << "_#{bundler_version}_" if bundler_version
|
372
445
|
|
373
|
-
|
446
|
+
result = system(
|
447
|
+
clean_env,
|
448
|
+
Gem.ruby, bundler, *version_arg, 'install',
|
449
|
+
"--gemfile=#{autoproj_gemfile_path}",
|
450
|
+
"--shebang=#{Gem.ruby}",
|
451
|
+
"--binstubs=#{shims_path}",
|
452
|
+
*opts, chdir: dot_autoproj
|
453
|
+
)
|
454
|
+
|
455
|
+
unless result
|
374
456
|
STDERR.puts "FATAL: failed to install autoproj in #{dot_autoproj}"
|
375
457
|
exit 1
|
376
458
|
end
|
@@ -379,7 +461,7 @@ module Autoproj
|
|
379
461
|
root_dir, autoproj_gemfile_path, gems_gem_home)
|
380
462
|
end
|
381
463
|
|
382
|
-
EXCLUDED_FROM_SHIMS = %w
|
464
|
+
EXCLUDED_FROM_SHIMS = %w[rake thor].freeze
|
383
465
|
|
384
466
|
def self.rewrite_shims(shim_path, ruby_executable,
|
385
467
|
root_dir, autoproj_gemfile_path, gems_gem_home)
|
@@ -435,11 +517,7 @@ module Autoproj
|
|
435
517
|
#
|
436
518
|
|
437
519
|
# Autoproj generated preamble
|
438
|
-
|
439
|
-
Bundler.with_clean_env do
|
440
|
-
exec($0, *ARGV)
|
441
|
-
end
|
442
|
-
end
|
520
|
+
#{WITHOUT_BUNDLER}
|
443
521
|
ENV['BUNDLE_GEMFILE'] ||= '#{autoproj_gemfile_path}'
|
444
522
|
ENV['GEM_HOME'] = '#{gems_gem_home}'
|
445
523
|
ENV.delete('GEM_PATH')
|
@@ -451,12 +529,7 @@ Gem.paths = Hash['GEM_HOME' => '#{gems_gem_home}', 'GEM_PATH' => '']
|
|
451
529
|
def self.shim_bundler_old(ruby_executable, autoproj_gemfile_path, gems_gem_home)
|
452
530
|
"#! #{ruby_executable}
|
453
531
|
|
454
|
-
|
455
|
-
Bundler.with_clean_env do
|
456
|
-
exec($0, *ARGV)
|
457
|
-
end
|
458
|
-
end
|
459
|
-
|
532
|
+
#{WITHOUT_BUNDLER}
|
460
533
|
ENV['BUNDLE_GEMFILE'] ||= '#{autoproj_gemfile_path}'
|
461
534
|
ENV['GEM_HOME'] = '#{gems_gem_home}'
|
462
535
|
ENV.delete('GEM_PATH')
|
@@ -481,14 +554,7 @@ load Gem.bin_path('bundler', 'bundler')"
|
|
481
554
|
#
|
482
555
|
|
483
556
|
# Autoproj generated preamble, v1
|
484
|
-
|
485
|
-
Bundler.with_clean_env do
|
486
|
-
exec(Hash['RUBYLIB' => nil], $0, *ARGV)
|
487
|
-
end
|
488
|
-
elsif ENV['RUBYLIB']
|
489
|
-
exec(Hash['RUBYLIB' => nil], $0, *ARGV)
|
490
|
-
end
|
491
|
-
|
557
|
+
#{RUBYLIB_REINIT}
|
492
558
|
ENV['BUNDLE_GEMFILE'] = '#{autoproj_gemfile_path}'
|
493
559
|
ENV['AUTOPROJ_CURRENT_ROOT'] = '#{root_dir}'
|
494
560
|
Gem.paths = Hash['GEM_HOME' => '#{gems_gem_home}', 'GEM_PATH' => '']
|
@@ -500,14 +566,7 @@ Gem.paths = Hash['GEM_HOME' => '#{gems_gem_home}', 'GEM_PATH' => '']
|
|
500
566
|
gems_gem_home, load_line)
|
501
567
|
"#! #{ruby_executable}
|
502
568
|
|
503
|
-
|
504
|
-
Bundler.with_clean_env do
|
505
|
-
exec(Hash['RUBYLIB' => nil], $0, *ARGV)
|
506
|
-
end
|
507
|
-
elsif ENV['RUBYLIB']
|
508
|
-
exec(Hash['RUBYLIB' => nil], $0, *ARGV)
|
509
|
-
end
|
510
|
-
|
569
|
+
#{RUBYLIB_REINIT}
|
511
570
|
ENV['BUNDLE_GEMFILE'] = '#{autoproj_gemfile_path}'
|
512
571
|
ENV['AUTOPROJ_CURRENT_ROOT'] = '#{root_dir}'
|
513
572
|
require 'rubygems'
|
@@ -601,8 +660,11 @@ require 'bundler/setup'
|
|
601
660
|
#
|
602
661
|
# So, we're calling 'gem' as a subcommand to discovery the
|
603
662
|
# actual bindir
|
604
|
-
bindir = IO.popen(
|
605
|
-
|
663
|
+
bindir = IO.popen(
|
664
|
+
env_for_child,
|
665
|
+
[Gem.ruby, '-e', 'puts "#{Gem.user_dir}/bin"'], # rubocop:disable Lint/InterpolationCheck
|
666
|
+
&:read
|
667
|
+
)
|
606
668
|
if bindir
|
607
669
|
@gem_bindir = bindir.chomp
|
608
670
|
else
|
@@ -610,11 +672,11 @@ require 'bundler/setup'
|
|
610
672
|
end
|
611
673
|
end
|
612
674
|
|
613
|
-
def install
|
675
|
+
def install(bundler_version: self.bundler_version)
|
614
676
|
if ENV['BUNDLER_GEMFILE']
|
615
677
|
raise "cannot run autoproj_install or autoproj_bootstrap while "\
|
616
|
-
|
617
|
-
|
678
|
+
"under a 'bundler exec' subcommand or having loaded an "\
|
679
|
+
"env.sh. Open a new console and try again"
|
618
680
|
end
|
619
681
|
|
620
682
|
gem_program = self.class.guess_gem_program
|
@@ -622,13 +684,12 @@ require 'bundler/setup'
|
|
622
684
|
env['GEM_HOME'] = [gems_gem_home]
|
623
685
|
env['GEM_PATH'] = [gems_gem_home]
|
624
686
|
|
625
|
-
if bundler = find_bundler(gem_program)
|
687
|
+
if (bundler = find_bundler(gem_program, version: bundler_version))
|
626
688
|
puts "Detected bundler at #{bundler}"
|
627
689
|
else
|
628
690
|
puts "Installing bundler in #{gems_gem_home}"
|
629
|
-
|
630
|
-
|
631
|
-
end
|
691
|
+
bundler = install_bundler(gem_program, version: bundler_version)
|
692
|
+
exit(1) unless bundler
|
632
693
|
end
|
633
694
|
self.class.rewrite_shims(
|
634
695
|
File.join(dot_autoproj, 'bin'),
|
@@ -640,7 +701,7 @@ require 'bundler/setup'
|
|
640
701
|
save_gemfile
|
641
702
|
|
642
703
|
puts "Installing autoproj in #{gems_gem_home}"
|
643
|
-
install_autoproj(bundler)
|
704
|
+
install_autoproj(bundler, bundler_version: bundler_version)
|
644
705
|
end
|
645
706
|
|
646
707
|
def load_config
|
@@ -742,8 +803,13 @@ end
|
|
742
803
|
ENV.delete('BUNDLE_GEMFILE')
|
743
804
|
ENV.delete('RUBYLIB')
|
744
805
|
ops = Autoproj::Ops::Install.new(Dir.pwd)
|
806
|
+
|
807
|
+
existing_config = File.join(Dir.pwd, '.autoproj', 'config.yml')
|
808
|
+
if File.file?(existing_config)
|
809
|
+
puts "Found existing configuration, using it as seed"
|
810
|
+
puts "use --no-seed-config to avoid this behavior"
|
811
|
+
ops.add_seed_config(existing_config)
|
812
|
+
end
|
745
813
|
ops.parse_options(ARGV)
|
746
814
|
ops.stage1
|
747
|
-
|
748
|
-
ops.call_stage2
|
749
|
-
end
|
815
|
+
ops.call_stage2 unless ops.skip_stage2?
|
data/bin/autoproj_install.in
CHANGED
@@ -13,8 +13,13 @@ require 'autoproj/ops/install'
|
|
13
13
|
ENV.delete('BUNDLE_GEMFILE')
|
14
14
|
ENV.delete('RUBYLIB')
|
15
15
|
ops = Autoproj::Ops::Install.new(Dir.pwd)
|
16
|
+
|
17
|
+
existing_config = File.join(Dir.pwd, '.autoproj', 'config.yml')
|
18
|
+
if File.file?(existing_config)
|
19
|
+
puts "Found existing configuration, using it as seed"
|
20
|
+
puts "use --no-seed-config to avoid this behavior"
|
21
|
+
ops.add_seed_config(existing_config)
|
22
|
+
end
|
16
23
|
ops.parse_options(ARGV)
|
17
24
|
ops.stage1
|
18
|
-
|
19
|
-
ops.call_stage2
|
20
|
-
end
|
25
|
+
ops.call_stage2 unless ops.skip_stage2?
|
data/lib/autoproj.rb
CHANGED
@@ -9,6 +9,8 @@
|
|
9
9
|
require 'backports/2.4.0/nil_class/dup'
|
10
10
|
require 'backports/2.4.0/false_class/dup'
|
11
11
|
require 'backports/2.4.0/true_class/dup'
|
12
|
+
require 'backports/2.4.0/hash/transform_values'
|
13
|
+
require 'backports/2.5.0/hash/transform_keys'
|
12
14
|
|
13
15
|
require 'autobuild'
|
14
16
|
require 'autoproj/autobuild'
|
@@ -44,6 +46,7 @@
|
|
44
46
|
require 'autoproj/source_package_query'
|
45
47
|
require 'autoproj/os_package_query'
|
46
48
|
|
49
|
+
require 'autoproj/ops/phase_reporting'
|
47
50
|
require 'autoproj/ops/install'
|
48
51
|
require 'autoproj/ops/tools'
|
49
52
|
require 'autoproj/ops/loader'
|