Skip to content

Commit 4db1256

Browse files
authored
(PE-36943) Support version 2023.4 (#393)
* (PE-36943) Support version 2023.4 * (PE-36943) Add release process documentation * (PE-36943) Revert to older supported version to be 2019.7
1 parent 8732a35 commit 4db1256

File tree

7 files changed

+72
-60
lines changed

7 files changed

+72
-60
lines changed

.github/workflows/test-fips-install-matrix.yaml

+25-25
Original file line numberDiff line numberDiff line change
@@ -4,25 +4,25 @@ name: "Install fips test matrix"
44
on:
55
pull_request:
66
paths:
7-
- '.github/workflows/**/*'
8-
- 'spec/**/*'
9-
- 'lib/**/*'
10-
- 'tasks/**/*'
11-
- 'functions/**/*'
12-
- 'types/**/*'
13-
- 'plans/**/*'
14-
- 'hiera/**/*'
15-
- 'manifests/**/*'
16-
- 'templates/**/*'
17-
- 'files/**/*'
18-
- 'metadata.json'
19-
- 'Rakefile'
20-
- 'Gemfile'
21-
- 'provision.yaml'
22-
- '.rspec'
23-
- '.rubocop.yml'
24-
- '.puppet-lint.rc'
25-
- '.fixtures.yml'
7+
- ".github/workflows/**/*"
8+
- "spec/**/*"
9+
- "lib/**/*"
10+
- "tasks/**/*"
11+
- "functions/**/*"
12+
- "types/**/*"
13+
- "plans/**/*"
14+
- "hiera/**/*"
15+
- "manifests/**/*"
16+
- "templates/**/*"
17+
- "files/**/*"
18+
- "metadata.json"
19+
- "Rakefile"
20+
- "Gemfile"
21+
- "provision.yaml"
22+
- ".rspec"
23+
- ".rubocop.yml"
24+
- ".puppet-lint.rc"
25+
- ".fixtures.yml"
2626
branches: [main]
2727
workflow_dispatch: {}
2828

@@ -33,7 +33,7 @@ jobs:
3333
env:
3434
BOLT_GEM: true
3535
BOLT_DISABLE_ANALYTICS: true
36-
LANG: 'en_US.UTF-8'
36+
LANG: "en_US.UTF-8"
3737
strategy:
3838
fail-fast: false
3939
matrix:
@@ -43,8 +43,8 @@ jobs:
4343
- extra-large-with-dr
4444
version:
4545
- 2019.8.12
46-
- 2021.7.2
47-
- 2023.2.0
46+
- 2021.7.5
47+
- 2023.4.0
4848
image:
4949
- rhel-8
5050
fips:
@@ -67,7 +67,7 @@ jobs:
6767
bundle env
6868
echo ::endgroup::
6969
70-
- name: 'Provision test cluster'
70+
- name: "Provision test cluster"
7171
timeout-minutes: 15
7272
run: |
7373
echo ::group::prepare
@@ -94,7 +94,7 @@ jobs:
9494
sed -e 's/password: .*/password: "[redacted]"/' < spec/fixtures/litmus_inventory.yaml || true
9595
echo ::endgroup::
9696
97-
- name: 'Install PE on test cluster'
97+
- name: "Install PE on test cluster"
9898
timeout-minutes: 120
9999
run: |
100100
bundle exec bolt plan run peadm_spec::install_test_cluster \
@@ -104,7 +104,7 @@ jobs:
104104
version=${{ matrix.version }} \
105105
fips=${{ matrix.fips }}
106106
107-
- name: 'Tear down test cluster'
107+
- name: "Tear down test cluster"
108108
if: ${{ always() }}
109109
continue-on-error: true
110110
run: |

.github/workflows/test-install-matrix.yaml

+25-25
Original file line numberDiff line numberDiff line change
@@ -4,25 +4,25 @@ name: "Install test matrix"
44
on:
55
pull_request:
66
paths:
7-
- '.github/workflows/**/*'
8-
- 'spec/**/*'
9-
- 'lib/**/*'
10-
- 'tasks/**/*'
11-
- 'functions/**/*'
12-
- 'types/**/*'
13-
- 'plans/**/*'
14-
- 'hiera/**/*'
15-
- 'manifests/**/*'
16-
- 'templates/**/*'
17-
- 'files/**/*'
18-
- 'metadata.json'
19-
- 'Rakefile'
20-
- 'Gemfile'
21-
- 'provision.yaml'
22-
- '.rspec'
23-
- '.rubocop.yml'
24-
- '.puppet-lint.rc'
25-
- '.fixtures.yml'
7+
- ".github/workflows/**/*"
8+
- "spec/**/*"
9+
- "lib/**/*"
10+
- "tasks/**/*"
11+
- "functions/**/*"
12+
- "types/**/*"
13+
- "plans/**/*"
14+
- "hiera/**/*"
15+
- "manifests/**/*"
16+
- "templates/**/*"
17+
- "files/**/*"
18+
- "metadata.json"
19+
- "Rakefile"
20+
- "Gemfile"
21+
- "provision.yaml"
22+
- ".rspec"
23+
- ".rubocop.yml"
24+
- ".puppet-lint.rc"
25+
- ".fixtures.yml"
2626
branches: [main]
2727
workflow_dispatch: {}
2828

@@ -33,7 +33,7 @@ jobs:
3333
env:
3434
BOLT_GEM: true
3535
BOLT_DISABLE_ANALYTICS: true
36-
LANG: 'en_US.UTF-8'
36+
LANG: "en_US.UTF-8"
3737
strategy:
3838
fail-fast: false
3939
matrix:
@@ -43,8 +43,8 @@ jobs:
4343
- extra-large-with-dr
4444
version:
4545
- 2019.8.12
46-
- 2021.7.4
47-
- 2023.2.0
46+
- 2021.7.5
47+
- 2023.4.0
4848
image:
4949
- centos-7
5050
- almalinux-cloud/almalinux-8
@@ -65,7 +65,7 @@ jobs:
6565
bundle env
6666
echo ::endgroup::
6767
68-
- name: 'Provision test cluster'
68+
- name: "Provision test cluster"
6969
timeout-minutes: 15
7070
run: |
7171
echo ::group::prepare
@@ -93,7 +93,7 @@ jobs:
9393
sed -e 's/password: .*/password: "[redacted]"/' < spec/fixtures/litmus_inventory.yaml || true
9494
echo ::endgroup::
9595
96-
- name: 'Install PE on test cluster'
96+
- name: "Install PE on test cluster"
9797
timeout-minutes: 120
9898
run: |
9999
bundle exec bolt plan run peadm_spec::install_test_cluster \
@@ -102,7 +102,7 @@ jobs:
102102
architecture=${{ matrix.architecture }} \
103103
version=${{ matrix.version }}
104104
105-
- name: 'Tear down test cluster'
105+
- name: "Tear down test cluster"
106106
if: ${{ always() }}
107107
continue-on-error: true
108108
run: |

README.md

+2-1
Original file line numberDiff line numberDiff line change
@@ -19,7 +19,7 @@ The peadm module is able to deploy and manage Puppet Enterprise 2019.7 and highe
1919

2020
## Expectations and support
2121

22-
While the peadm module was initially built by the Puppet Solutions Architecture team to streamline particularly large and complex Puppet Enterprise deployments, but has matured to a point where we believe that users with a reasonable understanding of Puppet Enterprise architecture can use it on their own.
22+
While the peadm module was initially built by the Puppet Solutions Architecture team to streamline particularly large and complex Puppet Enterprise deployments, but has matured to a point where we believe that users with a reasonable understanding of Puppet Enterprise architecture can use it on their own.
2323

2424
As a Puppet Enterprise customer this tool is **supported** through Puppet Enterprise's standard and premium [support.puppet.com](https://support.puppet.com) service, and if you have questions or need assistance, you are welcome to reach out to your Support team for help, or to talk to your Sales or Technical Account Manager contacts to arrange a chat with one of us on the Solutions Architect team.
2525

@@ -77,6 +77,7 @@ Documentation pertaining to additional uses of peadm.
7777
* [Classification](https://github.com/puppetlabs/puppetlabs-peadm/blob/main/documentation/classification.md)
7878
* [Testing](https://github.com/puppetlabs/puppetlabs-peadm/blob/main/documentation/pre_post_checks.md)
7979
* [Docker Based Examples](https://github.com/puppetlabs/puppetlabs-peadm/blob/main/documentation/docker_examples.md)
80+
* [Release Process](https://github.com/puppetlabs/puppetlabs-peadm/blob/main/documentation/release_process.md)
8081

8182
## Getting Help
8283

documentation/release_process.md

+11
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,11 @@
1+
# Release Process
2+
3+
## Overview
4+
5+
- [ ] Update PE version support in tests, source and create a new Pull Request with the changes (if needed).
6+
- [ ] Ask for a review and merge the Pull Request
7+
- [ ] Tag all Closed Pull Requests that are included in the release with the appropriate labels.
8+
- [ ] Kick off the [Release Prep](https://github.com/puppetlabs/puppetlabs-peadm/actions/workflows/release-prep.yml) action selecting the branch you want to release from and enter the release version number.
9+
- [ ] Review and merge the Release PREP Pull Request. Make sure to verify the checklist items in the Pull Request description.
10+
- [ ] Once the Release Prep Pull Request is merged, Kick off [Publish module](https://github.com/puppetlabs/puppetlabs-peadm/actions/workflows/release.yml) action selecting the branch you created the Release Prep Pull Request from.
11+
- [ ] Check Puppet Forge to make sure the module was published

documentation/upgrade.md

+4-4
Original file line numberDiff line numberDiff line change
@@ -4,15 +4,15 @@ Puppet Enterprise deployments provisioned using the peadm module can also be upg
44

55
## Usage
66

7-
The `peadm::upgrade` plan requires as input the version of PE to upgrade to, and the names of each PE infrastructure host. Primary, replica, compilers, etc.
7+
The `peadm::upgrade` plan requires as input the version of PE to upgrade to, and the names of each PE infrastructure host. Primary, replica, compilers, etc.
88

9-
Please note that when upgrading from before 2023.3 to 2023.3 or above and you are using code manager, it is nessesary to provide known hosts for r10k. r10k_known_hosts is an optional parameter and is only required one time when upgrading to 2023.3 or beyond. But if you currently use the SSH protocol to allow r10k to access your remote Git repository, your Code manager or r10k code management tool cannot function until you define the r10k_known_hosts parameter. Subsequent upgrades will already have this and it won't be required again. Please refer to the Puppet Enterprise 2023.3 Upgrade cautions for more details.
9+
Please note that when upgrading from before 2023.4 to 2023.4 or above and you are using code manager, it is nessesary to provide known hosts for r10k. r10k_known_hosts is an optional parameter and is only required one time when upgrading to 2023.4 or beyond. But if you currently use the SSH protocol to allow r10k to access your remote Git repository, your Code manager or r10k code management tool cannot function until you define the r10k_known_hosts parameter. Subsequent upgrades will already have this and it won't be required again. Please refer to the Puppet Enterprise 2023.4 Upgrade cautions for more details.
1010

11-
The following is an example parameters file for upgrading an Extra Large architecture deployment of PE 2023.2.0 to PE 2023.3.0.
11+
The following is an example parameters file for upgrading an Extra Large architecture deployment of PE 2023.2.0 to PE 2023.4.0.
1212

1313
```json
1414
{
15-
"version": "2023.3.0",
15+
"version": "2023.4.0",
1616
"primary_host": "pe-master-09a40c-0.us-west1-a.c.reidmv-peadm.internal",
1717
"primary_postgresql_host": "pe-psql-09a40c-0.us-west1-a.c.reidmv-peadm.internal",
1818
"replica_host": "pe-master-09a40c-1.us-west1-b.c.reidmv-peadm.internal",

functions/assert_supported_pe_version.pp

+1-1
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@ function peadm::assert_supported_pe_version (
66
Boolean $permit_unsafe_versions = false,
77
) >> Struct[{ 'supported' => Boolean }] {
88
$oldest = '2019.7'
9-
$newest = '2023.2'
9+
$newest = '2023.4'
1010
$supported = ($version =~ SemVerRange(">= ${oldest} <= ${newest}"))
1111

1212
if $permit_unsafe_versions {

spec/plans/subplans/install_spec.rb

+4-4
Original file line numberDiff line numberDiff line change
@@ -47,23 +47,23 @@
4747
expect(run_plan('peadm::subplans::install', params)).to be_ok
4848
end
4949

50-
it 'installs 2023.2 without r10k_known_hosts' do
50+
it 'installs 2023.4 without r10k_known_hosts' do
5151
params = {
5252
'primary_host' => 'primary',
5353
'console_password' => 'puppetlabs',
54-
'version' => '2023.2.0',
54+
'version' => '2023.4.0',
5555
'r10k_remote' => '[email protected]:puppetlabs/nothing',
5656
'r10k_private_key_content' => '-----BEGINfoo',
5757
}
5858

5959
expect(run_plan('peadm::subplans::install', params)).to be_ok
6060
end
6161

62-
it 'installs 2023.3+ with r10k_private_key and r10k_known_hosts' do
62+
it 'installs 2023.4+ with r10k_private_key and r10k_known_hosts' do
6363
params = {
6464
'primary_host' => 'primary',
6565
'console_password' => 'puppetlabs',
66-
'version' => '2023.3.0',
66+
'version' => '2023.4.0',
6767
'r10k_remote' => '[email protected]:puppetlabs/nothing',
6868
'r10k_private_key_content' => '-----BEGINfoo',
6969
'r10k_known_hosts' => [

0 commit comments

Comments
 (0)