diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml index 62c21d51c..125101972 100644 --- a/.github/workflows/release.yml +++ b/.github/workflows/release.yml @@ -4,6 +4,7 @@ on: push: branches: - main + - 3.x paths: - 'lib/r10k/version.rb' diff --git a/CHANGELOG.mkd b/CHANGELOG.mkd index f0231a509..04d45bd43 100644 --- a/CHANGELOG.mkd +++ b/CHANGELOG.mkd @@ -33,6 +33,10 @@ Unreleased - (RK-383) Remove deprecated `basedir` method from Puppetfile DSL. Users should use `environment_name` instead. [#1254](https://github.com/puppetlabs/r10k/pull/1254) - (RK-386) Remove deprecated `bare` environment type. [#1235](https://github.com/puppetlabs/r10k/issues/1235) +3.16.2 +------ + +- r10k::module::git: expose remote as getter [#1379](https://github.com/puppetlabs/r10k/pull/1379) 3.16.1 ------ diff --git a/integration/Gemfile b/integration/Gemfile index b455bae2a..0785e3d61 100644 --- a/integration/Gemfile +++ b/integration/Gemfile @@ -10,10 +10,9 @@ def location_for(place, fake_version = nil) end end -gem 'beaker', *location_for(ENV['BEAKER_VERSION'] || '~> 4.5') +gem 'beaker', *location_for(ENV['BEAKER_VERSION'] || '~> 4.40') gem 'beaker-pe', '~> 3.0' -gem 'beaker-answers' gem 'beaker-hostgenerator', *location_for(ENV['BEAKER_HOSTGENERATOR_VERSION'] || '~> 1.1') gem 'beaker-abs', *location_for(ENV['BEAKER_ABS_VERSION'] || '~> 0.4') -gem 'rototiller', '= 0.1.0' +gem 'rototiller', '= 1.0' gem 'beaker-qa-i18n' diff --git a/integration/Rakefile b/integration/Rakefile index 88040dc8f..30ec695be 100644 --- a/integration/Rakefile +++ b/integration/Rakefile @@ -20,24 +20,6 @@ end desc 'The acceptance tests for r10k, run in the beaker framework' rototiller_task :beaker => [:beaker_hostgenerator] do |t| - common_setup = <<-EOS -pre-suite/00_pe_install.rb, -component/pre-suite/05_install_dev_r10k.rb, -pre-suite/10_git_config.rb, -pre-suite/20_pe_r10k.rb, -EOS - common_setup.gsub!("\n", '') - - flags = [ - {:name => '--hosts', :default => 'configs/generated', :override_env => 'BEAKER_HOST'}, - {:name => '--keyfile', :default => "#{ENV['HOME']}/.ssh/id_rsa-acceptance", :override_env => 'BEAKER_KEYFILE'}, - {:name => '--load-path', :default => 'lib'}, - {:name => '--pre-suite', :default => @acceptance_pre_suite || common_setup, :override_env => 'BEAKER_PRE_SUITE'}, - {:name => '--tests', :default => 'tests', :override_env => 'BEAKER_TESTS'}, - {:name => '--preserve-hosts', :default => 'onfail', :override_env => 'BEAKER_PRESERVE_HOSTS'}, - ] - t.add_flag(*flags) - t.add_env do |env| env.name = 'PE_FAMILY' env.message = 'The puppet enterprise major branch to install from' @@ -54,7 +36,62 @@ EOS env.message = 'The git provider that r10k should use on a SUT' end - t.add_command({:name => 'beaker --debug', :override_env => 'BEAKER_EXECUTABLE'}) + t.add_command do |cmd| + cmd.name = 'beaker --debug' + + common_setup = <<-EOS +pre-suite/00_pe_install.rb, +component/pre-suite/05_install_dev_r10k.rb, +pre-suite/10_git_config.rb, +pre-suite/20_pe_r10k.rb, +EOS + common_setup.gsub!("\n", '') + + cmd.add_option do |opt| + opt.name = '--hosts' + opt.add_argument do |arg| + arg.name = 'configs/generated' + arg.add_env({name: 'BEAKER_HOST'}) + end + end + + cmd.add_option do |opt| + opt.name = '--keyfile' + opt.add_argument do |arg| + arg.name = "#{ENV['HOME']}/.ssh/id_rsa-acceptance" + arg.add_env({name: 'BEAKER_KEYFILE'}) + end + end + + cmd.add_option do |opt| + opt.name = '--pre-suite' + opt.add_argument do |arg| + arg.name = @acceptance_pre_suite || common_setup + arg.add_env({name: 'BEAKER_PRE_SUITE'}) + end + end + + cmd.add_option do |opt| + opt.name = '--tests' + opt.add_argument do |arg| + arg.name = 'tests' + arg.add_env({name: 'BEAKER_TESTS'}) + end + end + + cmd.add_option do |opt| + opt.name = '--preserve-hosts' + opt.add_argument do |arg| + arg.name = 'onfail' + arg.add_env({name: 'BEAKER_PRESERVE_HOSTS'}) + end + end + + cmd.add_option do |opt| + opt.name = '--load-path' + opt.add_argument({name: 'lib'}) + end + end end desc 'Generate a host configuration used by Beaker' @@ -64,12 +101,10 @@ rototiller_task :beaker_hostgenerator do |t| t.add_command do |c| c.name = 'beaker-hostgenerator' c.argument = '> configs/generated' + c.add_option(:name => '', :default => 'centos7-64mdca-64.fa', :override_env => 'TEST_TARGET') + c.add_option(:name => '--global-config', :default => '{forge_host=forgeapi.puppet.com}', :override_env => 'BHG_GLOBAL_CONFIG') end - # This is a hack :( - t.add_flag(:name => '', :default => 'centos7-64mdca-64.fa', :override_env => 'TEST_TARGET') - - t.add_flag(:name => '--global-config', :default => '{forge_host=forgeapi.puppet.com}', :override_env => 'BHG_GLOBAL_CONFIG') end end diff --git a/integration/pre-suite/10_git_config.rb b/integration/pre-suite/10_git_config.rb index 609dc926b..8428a8a0f 100755 --- a/integration/pre-suite/10_git_config.rb +++ b/integration/pre-suite/10_git_config.rb @@ -36,6 +36,7 @@ on(master, puppet('apply'), :stdin => git_manifest, :acceptable_exit_codes => [0,2]) do |result| assert_no_match(/Error:/, result.stderr, 'Unexpected error was detected!') end +on(master, 'git config --system --add safe.directory "*"') step 'Create "production" Environment on Git' init_r10k_source_from_prod(master, git_repo_path, git_repo_name, git_environments_path, 'production')