beaker-pe 2.15.0 → 2.16.1

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 960c4c084d43ae9f1abad57a89f6728817222050ebc7309a3a7102c15e4fbba0
4
- data.tar.gz: bd0aeb76e02a094eacf40f278c426df5448efe4e3f861fcc0fe1dcec6f18c12a
3
+ metadata.gz: 52bc9c52ef4e5ca4a1dc4e0c92dde1369ad90e50e075b643a75ecf90646d3312
4
+ data.tar.gz: f2b0073bc2a1823e975eb185ca22b79af5ca174e74fe0d8249341c8b40db97b2
5
5
  SHA512:
6
- metadata.gz: 82d405b570a55e4077682b1c2a1b768dd9d1d8d7077e35caaf7feff55ab84620cfdb7ecc8687107af7559254684570b58ed5bfa1ed127d0a3aafc75b4df9bf21
7
- data.tar.gz: 050bd791ae00a9db1567d800e3572d7035eefa67a9b97beb231dc7c2d49d6bfb6b7af961efdb4ba865f58aa54bbb3348fe1f1d6cb58d3d8641a9bb0799bb46a4
6
+ metadata.gz: 5f486788d637cfe5618b679106dd4b58e484140573febd086fc34a69689503ea24a1976f0ac3d611214b2c600ba9cb43e6c29e10dc928e92cb14c10e569a3e43
7
+ data.tar.gz: 1639bef650aaf36093bc393697a3d3a0c82e93ca67e98eae8b6fa8ddcead96c2dc3d5c38bdda548d3725eeebf15d8200596cf00235b73dc241468cd850671218
@@ -0,0 +1,12 @@
1
+ name: Automated release prep
2
+
3
+ on:
4
+ workflow_dispatch:
5
+
6
+ jobs:
7
+ auto_release_prep:
8
+ uses: puppetlabs/release-engineering-repo-standards/.github/workflows/auto_release_prep.yml@v1
9
+ secrets: inherit
10
+ with:
11
+ project-type: ruby
12
+ version-file-path: lib/beaker-pe/version.rb
@@ -0,0 +1,8 @@
1
+ name: Ensure label
2
+
3
+ on: pull_request
4
+
5
+ jobs:
6
+ ensure_label:
7
+ uses: puppetlabs/release-engineering-repo-standards/.github/workflows/ensure_label.yml@v1
8
+ secrets: inherit
@@ -10,7 +10,7 @@ jobs:
10
10
 
11
11
  steps:
12
12
  - name: Checkout code
13
- uses: actions/checkout@v3
13
+ uses: actions/checkout@v4
14
14
  with:
15
15
  ref: ${{ github.ref }}
16
16
  clean: true
@@ -24,7 +24,7 @@ jobs:
24
24
  echo "Found version $version from lib/beaker-pe/version.rb"
25
25
 
26
26
  - name: Get Current Version
27
- uses: actions/github-script@v6
27
+ uses: actions/github-script@v7
28
28
  id: cv
29
29
  with:
30
30
  script: |
@@ -11,7 +11,7 @@ jobs:
11
11
  runs-on: ubuntu-latest
12
12
  steps:
13
13
  - name: checkout repo content
14
- uses: actions/checkout@v3
14
+ uses: actions/checkout@v4
15
15
  with:
16
16
  fetch-depth: 1
17
17
  - name: setup ruby
@@ -22,7 +22,7 @@ jobs:
22
22
  - name: check lock
23
23
  run: '[ -f "Gemfile.lock" ] && echo "package lock file exists, skipping" || bundle lock'
24
24
  # install java
25
- - uses: actions/setup-java@v3
25
+ - uses: actions/setup-java@v4
26
26
  with:
27
27
  distribution: 'temurin' # See 'Supported distributions' for available options
28
28
  java-version: '17'
@@ -13,7 +13,7 @@ jobs:
13
13
  ruby-version:
14
14
  - '2.7'
15
15
  steps:
16
- - uses: actions/checkout@v3
16
+ - uses: actions/checkout@v4
17
17
  - name: Set up Ruby
18
18
  uses: ruby/setup-ruby@v1
19
19
  with:
data/CHANGELOG.md CHANGED
@@ -1,5 +1,55 @@
1
1
  # Changelog
2
2
 
3
+ ## [2.16.1](https://github.com/puppetlabs/beaker-pe/tree/2.16.1) (2024-04-04)
4
+
5
+ [Full Changelog](https://github.com/puppetlabs/beaker-pe/compare/3.0.0...2.16.1)
6
+
7
+ **Implemented enhancements:**
8
+
9
+ - \(PE-37704\) Allow for SLES-11 \(Intel\) builds to be installed in PE 2021.7.x for testing [\#259](https://github.com/puppetlabs/beaker-pe/pull/259) ([shubhamshinde360](https://github.com/shubhamshinde360))
10
+
11
+ **Merged pull requests:**
12
+
13
+ - Bump yard from 0.9.35 to 0.9.36 [\#258](https://github.com/puppetlabs/beaker-pe/pull/258) ([dependabot[bot]](https://github.com/apps/dependabot))
14
+ - Bump rack from 2.2.8 to 2.2.8.1 [\#257](https://github.com/puppetlabs/beaker-pe/pull/257) ([dependabot[bot]](https://github.com/apps/dependabot))
15
+ - Bump yard from 0.9.34 to 0.9.35 [\#256](https://github.com/puppetlabs/beaker-pe/pull/256) ([dependabot[bot]](https://github.com/apps/dependabot))
16
+ - Bump activesupport from 7.1.3 to 7.1.3.2 [\#255](https://github.com/puppetlabs/beaker-pe/pull/255) ([dependabot[bot]](https://github.com/apps/dependabot))
17
+ - Bump scooter from 4.5.0 to 4.5.4 [\#254](https://github.com/puppetlabs/beaker-pe/pull/254) ([dependabot[bot]](https://github.com/apps/dependabot))
18
+
19
+ ## [3.0.0](https://github.com/puppetlabs/beaker-pe/tree/3.0.0) (2024-02-07)
20
+
21
+ [Full Changelog](https://github.com/puppetlabs/beaker-pe/compare/2.16.0...3.0.0)
22
+
23
+ **Implemented enhancements:**
24
+
25
+ - Bump beaker from 4.40.2 to 4.41.1 [\#248](https://github.com/puppetlabs/beaker-pe/pull/248) ([dependabot[bot]](https://github.com/apps/dependabot))
26
+ - Bump scooter from 4.4.0 to 4.5.0 [\#242](https://github.com/puppetlabs/beaker-pe/pull/242) ([dependabot[bot]](https://github.com/apps/dependabot))
27
+
28
+ **Fixed bugs:**
29
+
30
+ - Bump beaker from 4.41.1 to 4.41.2 [\#249](https://github.com/puppetlabs/beaker-pe/pull/249) ([dependabot[bot]](https://github.com/apps/dependabot))
31
+ - Bump activesupport from 7.1.1 to 7.1.2 [\#240](https://github.com/puppetlabs/beaker-pe/pull/240) ([dependabot[bot]](https://github.com/apps/dependabot))
32
+
33
+ **Merged pull requests:**
34
+
35
+ - Bump rspec from 3.12.0 to 3.13.0 [\#253](https://github.com/puppetlabs/beaker-pe/pull/253) ([dependabot[bot]](https://github.com/apps/dependabot))
36
+ - Bump activesupport from 7.1.2 to 7.1.3 [\#251](https://github.com/puppetlabs/beaker-pe/pull/251) ([dependabot[bot]](https://github.com/apps/dependabot))
37
+ - Bump actions/setup-java from 3 to 4 [\#245](https://github.com/puppetlabs/beaker-pe/pull/245) ([dependabot[bot]](https://github.com/apps/dependabot))
38
+ - Bump actions/github-script from 6 to 7 [\#241](https://github.com/puppetlabs/beaker-pe/pull/241) ([dependabot[bot]](https://github.com/apps/dependabot))
39
+
40
+ ## [2.16.0](https://github.com/puppetlabs/beaker-pe/tree/2.16.0) (2023-12-05)
41
+
42
+ [Full Changelog](https://github.com/puppetlabs/beaker-pe/compare/2.15.0...2.16.0)
43
+
44
+ **Merged pull requests:**
45
+
46
+ - \(maint\) Use unversioned AIX pe\_repo class [\#244](https://github.com/puppetlabs/beaker-pe/pull/244) ([nmburgan](https://github.com/nmburgan))
47
+ - Update rake requirement from ~\> 13.0.6 to ~\> 13.1.0 [\#239](https://github.com/puppetlabs/beaker-pe/pull/239) ([dependabot[bot]](https://github.com/apps/dependabot))
48
+ - Bump activesupport from 7.1.0 to 7.1.1 [\#238](https://github.com/puppetlabs/beaker-pe/pull/238) ([dependabot[bot]](https://github.com/apps/dependabot))
49
+ - Bump activesupport from 7.0.8 to 7.1.0 [\#237](https://github.com/puppetlabs/beaker-pe/pull/237) ([dependabot[bot]](https://github.com/apps/dependabot))
50
+ - Bump actions/checkout from 3 to 4 [\#236](https://github.com/puppetlabs/beaker-pe/pull/236) ([dependabot[bot]](https://github.com/apps/dependabot))
51
+ - Bump activesupport from 7.0.7.2 to 7.0.8 [\#235](https://github.com/puppetlabs/beaker-pe/pull/235) ([dependabot[bot]](https://github.com/apps/dependabot))
52
+
3
53
  ## [2.15.0](https://github.com/puppetlabs/beaker-pe/tree/2.15.0) (2023-08-29)
4
54
 
5
55
  [Full Changelog](https://github.com/puppetlabs/beaker-pe/compare/2.14.1...2.15.0)
data/Gemfile.lock CHANGED
@@ -1,7 +1,7 @@
1
1
  PATH
2
2
  remote: .
3
3
  specs:
4
- beaker-pe (2.15.0)
4
+ beaker-pe (2.16.1)
5
5
  beaker (>= 4.0, < 6)
6
6
  beaker-abs
7
7
  beaker-answers (~> 0.0)
@@ -12,13 +12,19 @@ PATH
12
12
  GEM
13
13
  remote: https://rubygems.org/
14
14
  specs:
15
- activesupport (7.0.7.2)
15
+ activesupport (7.1.1)
16
+ base64
17
+ bigdecimal
16
18
  concurrent-ruby (~> 1.0, >= 1.0.2)
19
+ connection_pool (>= 2.2.5)
20
+ drb
17
21
  i18n (>= 1.6, < 2)
18
22
  minitest (>= 5.1)
23
+ mutex_m
19
24
  tzinfo (~> 2.0)
20
25
  ansi (1.5.0)
21
26
  ast (2.4.2)
27
+ base64 (0.1.1)
22
28
  bcrypt_pbkdf (1.1.0)
23
29
  beaker (4.40.2)
24
30
  beaker-hostgenerator
@@ -50,16 +56,20 @@ GEM
50
56
  oga (~> 3.4)
51
57
  beaker-vmpooler (1.4.0)
52
58
  stringify-hash (~> 0.0.0)
59
+ bigdecimal (3.1.4)
53
60
  coderay (1.1.3)
54
61
  commander (4.6.0)
55
62
  highline (~> 2.0.0)
56
63
  concurrent-ruby (1.2.2)
64
+ connection_pool (2.4.1)
57
65
  daemons (1.4.1)
58
66
  deep_merge (1.2.2)
59
67
  diff-lcs (1.5.0)
60
68
  docile (1.4.0)
61
69
  domain_name (0.5.20190701)
62
70
  unf (>= 0.0.5, < 1.0.0)
71
+ drb (2.1.1)
72
+ ruby2_keywords
63
73
  ed25519 (1.3.0)
64
74
  eventmachine (1.2.7)
65
75
  fakefs (2.5.0)
@@ -110,8 +120,9 @@ GEM
110
120
  textutils (>= 0.10.0)
111
121
  method_source (1.0.0)
112
122
  minitar (0.9)
113
- minitest (5.19.0)
123
+ minitest (5.20.0)
114
124
  multipart-post (2.3.0)
125
+ mutex_m (0.1.2)
115
126
  net-ldap (0.16.3)
116
127
  net-scp (4.0.0)
117
128
  net-ssh (>= 2.6.5, < 8.0.0)
@@ -126,7 +137,7 @@ GEM
126
137
  coderay (~> 1.1)
127
138
  method_source (~> 1.0)
128
139
  rack (2.2.7)
129
- rake (13.0.6)
140
+ rake (13.1.0)
130
141
  require_all (3.0.0)
131
142
  rexml (3.2.6)
132
143
  rspec (3.12.0)
@@ -203,7 +214,7 @@ DEPENDENCIES
203
214
  fakefs (~> 2.4, < 2.6.0)
204
215
  markdown
205
216
  pry (~> 0.10)
206
- rake (~> 13.0.6)
217
+ rake (~> 13.1.0)
207
218
  rspec (~> 3.0)
208
219
  rspec-its
209
220
  scooter (~> 4.3)
@@ -212,4 +223,4 @@ DEPENDENCIES
212
223
  yard
213
224
 
214
225
  BUNDLED WITH
215
- 2.4.19
226
+ 2.4.22
data/beaker-pe.gemspec CHANGED
@@ -21,7 +21,7 @@ Gem::Specification.new do |s|
21
21
  s.add_development_dependency 'rspec', '~> 3.0'
22
22
  s.add_development_dependency 'rspec-its'
23
23
  s.add_development_dependency 'fakefs', '~> 2.4', '< 2.6.0'
24
- s.add_development_dependency 'rake', '~> 13.0.6'
24
+ s.add_development_dependency 'rake', '~> 13.1.0'
25
25
  s.add_development_dependency 'simplecov', '= 0.22.0'
26
26
  s.add_development_dependency 'pry', '~> 0.10'
27
27
 
@@ -325,6 +325,24 @@ module Beaker
325
325
  end
326
326
  end
327
327
 
328
+ # Determine the build package to download on a sles-11 (Intel) host, install that package onto the host.
329
+ # Assumed file name format: puppet-agent-7.29.1.26.gf344eeefa-1.sles11.x86_64.rpm.
330
+ # This method should be called after puppet is installed on the master since it relies on the master
331
+ # telling it the puppet agent version to form the download URL.
332
+ # @param [Host] host The sles-11 host to download and install the package on.
333
+ # @param [Hash{Symbol=>Symbol, String}] opts The options
334
+ # @api private
335
+ def install_rpm_on_sles11_host(host, puppet_agent_ver, opts)
336
+ # Since sles11 builds are not available in PE, download from agent-downloads.
337
+ agent_downloads_url = "http://agent-downloads.delivery.puppetlabs.net/puppet-agent"
338
+ master_aio_version = puppet_fact(master, 'aio_agent_build')
339
+ stream = opts[:puppet_collection] || "puppet#{puppet_agent_ver[0]}"
340
+ path = "#{agent_downloads_url}/#{puppet_agent_ver}/repos/sles/11/#{stream}/x86_64"
341
+ filename = "puppet-agent-#{master_aio_version}-1.sles11.x86_64"
342
+ extension = ".rpm"
343
+ host.install_package_with_rpm("#{path}/#{filename}#{extension}")
344
+ end
345
+
328
346
  #Determine the PE package to download/upload on a windows host, download/upload that package onto the host.
329
347
  #Assumed file name format: puppet-enterprise-3.3.0-rc1-559-g97f0833.msi
330
348
  # @param [Host] host The windows host to download/upload and unpack PE onto
@@ -495,11 +513,6 @@ module Beaker
495
513
  # For some platforms (e.g, redhatfips), packaging_platfrom is set and should
496
514
  # be used as the primary source of truth for the platform string.
497
515
  platform = host['packaging_platform'] || host['platform']
498
- # We don't have a separate AIX 7.2 build prior to 2023, so it is
499
- # classified as 7.1 for pe_repo purposes
500
- if platform == "aix-7.2-power" && version_is_less(master[:pe_ver], '2023.0.0')
501
- platform = "aix-7.1-power"
502
- end
503
516
  klass = platform.gsub(/-/, '_').gsub(/\./,'')
504
517
  if host['platform'] =~ /windows/
505
518
  if host['template'] =~ /i386/
@@ -507,7 +520,7 @@ module Beaker
507
520
  else
508
521
  klass = "pe_repo::platform::windows_x86_64"
509
522
  end
510
- elsif platform =~ /aix-.*-power/ && !version_is_less(master[:pe_ver], '2022.99.99')
523
+ elsif platform =~ /aix-.*-power/ && !version_is_less(master[:pe_ver], '2019.0.3')
511
524
  klass = "pe_repo::platform::aix_power"
512
525
  else
513
526
  klass = "pe_repo::platform::#{klass}"
@@ -925,8 +938,12 @@ module Beaker
925
938
  :puppet_collection => host[:puppet_collection] || opts[:puppet_collection],
926
939
  :pe_promoted_builds_url => host[:pe_promoted_builds_url] || opts[:pe_promoted_builds_url]
927
940
  }
928
- install_params.delete(:pe_promoted_builds_url) if install_params[:pe_promoted_builds_url].nil?
929
- install_puppet_agent_pe_promoted_repo_on(host, install_params)
941
+ if host['platform'] =~ /sles-11/
942
+ install_rpm_on_sles11_host(host, install_params[:puppet_agent_version], opts)
943
+ else
944
+ install_params.delete(:pe_promoted_builds_url) if install_params[:pe_promoted_builds_url].nil?
945
+ install_puppet_agent_pe_promoted_repo_on(host, install_params)
946
+ end
930
947
  # 1 since no certificate found and waitforcert disabled
931
948
  acceptable_exit_codes = [0, 1]
932
949
  acceptable_exit_codes << 2 if opts[:type] == :upgrade
@@ -3,7 +3,7 @@ module Beaker
3
3
  module PE
4
4
 
5
5
  module Version
6
- STRING = '2.15.0'
6
+ STRING = '2.16.1'
7
7
  end
8
8
 
9
9
  end
@@ -30,13 +30,14 @@ describe ClassMixedWithDSLInstallUtils do
30
30
  let(:basic_hosts) { make_hosts( { :pe_ver => '3.0',
31
31
  :platform => 'linux',
32
32
  :roles => [ 'agent' ],
33
- :type => 'pe'}, 4 ) }
33
+ :type => 'pe'}, 5 ) }
34
34
  let(:hosts) { basic_hosts[0][:roles] = ['master', 'database', 'dashboard']
35
35
  basic_hosts[1][:platform] = 'windows'
36
36
  basic_hosts[2][:platform] = 'osx-10.9-x86_64'
37
37
  basic_hosts[3][:platform] = 'eos'
38
+ basic_hosts[4][:platform] = 'sles'
38
39
  basic_hosts }
39
- let(:hosts_sorted) { [ hosts[1], hosts[0], hosts[2], hosts[3] ] }
40
+ let(:hosts_sorted) { [ hosts[1], hosts[0], hosts[2], hosts[3], hosts[4] ] }
40
41
  let(:winhost) { make_host( 'winhost', { :platform => 'windows',
41
42
  :pe_ver => '3.0',
42
43
  :type => 'pe',
@@ -55,7 +56,10 @@ describe ClassMixedWithDSLInstallUtils do
55
56
  :type => 'pe',
56
57
  :working_dir => '/tmp',
57
58
  :dist => 'puppet-enterprise-3.7.1-rc0-78-gffc958f-eos-4-i386' } ) }
58
-
59
+ let(:sles11host) { make_host( 'sles11', { :platform => 'sles',
60
+ :pe_ver => '3.0',
61
+ :type => 'pe',
62
+ :working_dir => '/tmp'} ) }
59
63
  let(:lei_hosts) { make_hosts( { :pe_ver => '3.0',
60
64
  :platform => 'linux',
61
65
  :roles => [ 'agent' ],
@@ -1637,8 +1641,30 @@ describe ClassMixedWithDSLInstallUtils do
1637
1641
  subject.do_install([])
1638
1642
  end
1639
1643
 
1644
+ context "install rpm file in sles host" do
1645
+ let(:opts) {
1646
+ { :puppet_collection => 'puppet7' }
1647
+ }
1648
+ let(:stream) { opts[:puppet_collection] }
1649
+ let(:puppet_agent_ver) { '7.29.1.26' }
1650
+ let(:agent_downloads_url) { "http://agent-downloads.delivery.puppetlabs.net/puppet-agent" }
1651
+ let(:master_version) { '7.29.1.26.gf344eeefa' }
1652
+ let(:path) { "#{agent_downloads_url}/#{puppet_agent_ver}/repos/sles/11/#{stream}/x86_64" }
1653
+ let(:filename) { "puppet-agent-#{master_version}-1.sles11.x86_64" }
1654
+ let(:extension) { '.rpm' }
1655
+ let(:url) { "#{path}/#{filename}#{extension}" }
1656
+
1657
+ it "generates the correct url to download the package" do
1658
+ allow( subject ).to receive( :puppet_fact ).and_return( master_version )
1659
+ allow( subject ).to receive( :master ).and_return( {} )
1660
+
1661
+ expect( hosts[4] ).to receive( :install_package_with_rpm ).with( url ).once
1662
+ subject.install_rpm_on_sles11_host(hosts[4], puppet_agent_ver, opts)
1663
+ end
1664
+ end
1665
+
1640
1666
  it 'can perform a simple installation' do
1641
- expect(subject).to receive(:get_mco_setting).and_return({})
1667
+ expect(subject).to receive(:get_mco_setting).and_return({}).twice
1642
1668
  allow( subject ).to receive( :verify_network_resources).with(hosts, nil)
1643
1669
  allow( subject ).to receive( :on ).and_return( Beaker::Result.new( {}, '' ) )
1644
1670
  allow( subject ).to receive( :fetch_pe ).and_return( true )
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: beaker-pe
3
3
  version: !ruby/object:Gem::Version
4
- version: 2.15.0
4
+ version: 2.16.1
5
5
  platform: ruby
6
6
  authors:
7
7
  - Puppetlabs
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2023-08-29 00:00:00.000000000 Z
11
+ date: 2024-04-04 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: rspec
@@ -64,14 +64,14 @@ dependencies:
64
64
  requirements:
65
65
  - - "~>"
66
66
  - !ruby/object:Gem::Version
67
- version: 13.0.6
67
+ version: 13.1.0
68
68
  type: :development
69
69
  prerelease: false
70
70
  version_requirements: !ruby/object:Gem::Requirement
71
71
  requirements:
72
72
  - - "~>"
73
73
  - !ruby/object:Gem::Version
74
- version: 13.0.6
74
+ version: 13.1.0
75
75
  - !ruby/object:Gem::Dependency
76
76
  name: simplecov
77
77
  requirement: !ruby/object:Gem::Requirement
@@ -261,6 +261,8 @@ extensions: []
261
261
  extra_rdoc_files: []
262
262
  files:
263
263
  - ".github/dependabot.yml"
264
+ - ".github/workflows/auto_release_prep.yml"
265
+ - ".github/workflows/ensure_label.yml"
264
266
  - ".github/workflows/release.yml"
265
267
  - ".github/workflows/security.yml"
266
268
  - ".github/workflows/testing.yml"