Skip to content

Commit 7e189c8

Browse files
committed
CHANGELOG.md updates
2 parents a0b599c + 77d4dd9 commit 7e189c8

33 files changed

+1062
-820
lines changed

.github/workflows/auto_release.yml

Lines changed: 18 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,6 @@
11
name: "Auto release"
22

33
on:
4-
schedule:
5-
- cron: '0 3 * * 6'
64
workflow_dispatch:
75

86
env:
@@ -36,7 +34,7 @@ jobs:
3634
persist-credentials: false
3735

3836
- name: "PDK Release prep"
39-
uses: docker://puppet/pdk:nightly
37+
uses: docker://puppet/iac_release:ci
4038
with:
4139
args: 'release prep --force'
4240
env:
@@ -46,31 +44,42 @@ jobs:
4644
if: ${{ github.repository_owner == 'puppetlabs' }}
4745
id: gv
4846
run: |
49-
echo "::set-output name=ver::$(cat metadata.json | jq .version | tr -d \")"
47+
echo "::set-output name=ver::$(jq --raw-output .version metadata.json)"
5048
51-
- name: "Commit changes"
49+
- name: "Check if a release is necessary"
5250
if: ${{ github.repository_owner == 'puppetlabs' }}
51+
id: check
52+
run: |
53+
git diff --quiet CHANGELOG.md && echo "::set-output name=release::false" || echo "::set-output name=release::true"
54+
55+
- name: "Commit changes"
56+
if: ${{ github.repository_owner == 'puppetlabs' && steps.check.outputs.release == 'true' }}
5357
run: |
54-
git config --local user.email "action@github.com"
58+
git config --local user.email "${{ github.repository_owner }}@users.noreply.github.com"
5559
git config --local user.name "GitHub Action"
5660
git add .
5761
git commit -m "Release prep v${{ steps.gv.outputs.ver }}"
5862
5963
- name: Create Pull Request
6064
id: cpr
6165
uses: puppetlabs/peter-evans-create-pull-request@v3
62-
if: ${{ github.repository_owner == 'puppetlabs' }}
66+
if: ${{ github.repository_owner == 'puppetlabs' && steps.check.outputs.release == 'true' }}
6367
with:
6468
token: ${{ secrets.GITHUB_TOKEN }}
6569
commit-message: "Release prep v${{ steps.gv.outputs.ver }}"
6670
branch: "release-prep"
6771
delete-branch: true
6872
title: "Release prep v${{ steps.gv.outputs.ver }}"
69-
body: "Automated release-prep through [pdk-templates](https://github.com/puppetlabs/pdk-templates/blob/main/moduleroot/.github/workflows/auto_release.yml.erb)"
73+
body: |
74+
Automated release-prep through [pdk-templates](https://github.com/puppetlabs/pdk-templates/blob/main/moduleroot/.github/workflows/auto_release.yml.erb) from commit ${{ github.sha }}.
75+
Please verify before merging:
76+
- [ ] last [nightly](https://github.com/${{ github.repository }}/actions/workflows/nightly.yml) run is green
77+
- [ ] [Changelog](https://github.com/${{ github.repository }}/blob/release-prep/CHANGELOG.md) is readable and has no unlabeled pull requests
78+
- [ ] Ensure the [changelog](https://github.com/${{ github.repository }}/blob/release-prep/CHANGELOG.md) version and [metadata](https://github.com/${{ github.repository }}/blob/release-prep/metadata.json) version match
7079
labels: "maintenance"
7180

7281
- name: PR outputs
73-
if: ${{ github.repository_owner == 'puppetlabs' }}
82+
if: ${{ github.repository_owner == 'puppetlabs' && steps.check.outputs.release == 'true' }}
7483
run: |
7584
echo "Pull Request Number - ${{ steps.cpr.outputs.pull-request-number }}"
7685
echo "Pull Request URL - ${{ steps.cpr.outputs.pull-request-url }}"

.github/workflows/nightly.yml

Lines changed: 25 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -58,7 +58,7 @@ jobs:
5858
if: ${{ github.repository_owner == 'puppetlabs' }}
5959
run: |
6060
if [ '${{ github.repository_owner }}' == 'puppetlabs' ]; then
61-
buildevents cmd $TRACE_ID $STEP_ID matrix_from_metadata -- bundle exec matrix_from_metadata
61+
buildevents cmd $TRACE_ID $STEP_ID matrix_from_metadata -- bundle exec matrix_from_metadata_v2
6262
else
6363
echo "::set-output name=matrix::{}"
6464
fi
@@ -69,6 +69,7 @@ jobs:
6969
buildevents step $TRACE_ID $STEP_ID $STEP_START 'Setup Test Matrix'
7070
7171
Acceptance:
72+
name: "${{matrix.platforms.label}}, ${{matrix.collection}}"
7273
needs:
7374
- setup_matrix
7475

@@ -82,20 +83,22 @@ jobs:
8283

8384
steps:
8485
- run: |
85-
echo 'platform=${{ matrix.platform }}' >> $BUILDEVENT_FILE
86+
echo 'platform=${{ matrix.platforms.image }}' >> $BUILDEVENT_FILE
8687
echo 'collection=${{ matrix.collection }}' >> $BUILDEVENT_FILE
88+
echo 'label=${{ matrix.platforms.label }}' >> $BUILDEVENT_FILE
89+
8790
8891
- name: "Honeycomb: Start recording"
8992
uses: puppetlabs/kvrhdn-gha-buildevents@pdk-templates-v1
9093
with:
9194
apikey: ${{ env.HONEYCOMB_WRITEKEY }}
9295
dataset: ${{ env.HONEYCOMB_DATASET }}
9396
job-status: ${{ job.status }}
94-
matrix-key: ${{ matrix.platform }}-${{ matrix.collection }}
97+
matrix-key: ${{ matrix.platforms.label }}-${{ matrix.collection }}
9598

9699
- name: "Honeycomb: start first step"
97100
run: |
98-
echo STEP_ID=${{ matrix.platform }}-${{ matrix.collection }}-1 >> $GITHUB_ENV
101+
echo STEP_ID=${{ matrix.platforms.image }}-${{ matrix.collection }}-1 >> $GITHUB_ENV
99102
echo STEP_START=$(date +%s) >> $GITHUB_ENV
100103
101104
- name: Checkout Source
@@ -117,18 +120,30 @@ jobs:
117120
if: ${{ always() }}
118121
run: |
119122
buildevents step $TRACE_ID $STEP_ID $STEP_START 'Setup Environment'
120-
echo STEP_ID=${{ matrix.platform }}-${{ matrix.collection }}-2 >> $GITHUB_ENV
123+
echo STEP_ID=${{ matrix.platforms.image }}-${{ matrix.collection }}-2 >> $GITHUB_ENV
121124
echo STEP_START=$(date +%s) >> $GITHUB_ENV
122125
123126
- name: Provision test environment
124127
run: |
125-
buildevents cmd $TRACE_ID $STEP_ID 'rake litmus:provision ${{ matrix.platform }}' -- bundle exec rake 'litmus:provision[provision::provision_service,${{ matrix.platform }}]'
128+
if [[ "${{matrix.platforms.provider}}" == "provision::docker" ]]; then
129+
DOCKER_RUN_OPTS="docker_run_opts: {'--volume': '/lib/modules/$(uname -r):/lib/modules/$(uname -r)'}"
130+
else
131+
DOCKER_RUN_OPTS=''
132+
fi
133+
buildevents cmd $TRACE_ID $STEP_ID 'rake litmus:provision ${{ matrix.platforms.image }}' -- bundle exec rake "litmus:provision[${{matrix.platforms.provider}},${{ matrix.platforms.image }},$DOCKER_RUN_OPTS]"
126134
echo ::group::=== REQUEST ===
127135
cat request.json || true
128136
echo
129137
echo ::endgroup::
130138
echo ::group::=== INVENTORY ===
131-
sed -e 's/password: .*/password: "[redacted]"/' < inventory.yaml || true
139+
if [ -f 'spec/fixtures/litmus_inventory.yaml' ];
140+
then
141+
FILE='spec/fixtures/litmus_inventory.yaml'
142+
elif [ -f 'inventory.yaml' ];
143+
then
144+
FILE='inventory.yaml'
145+
fi
146+
sed -e 's/password: .*/password: "[redacted]"/' < $FILE || true
132147
echo ::endgroup::
133148
134149
- name: Install agent
@@ -144,7 +159,7 @@ jobs:
144159
run: |
145160
echo ::group::honeycomb step
146161
buildevents step $TRACE_ID $STEP_ID $STEP_START 'Deploy test system'
147-
echo STEP_ID=${{ matrix.platform }}-${{ matrix.collection }}-3 >> $GITHUB_ENV
162+
echo STEP_ID=${{ matrix.platforms.image }}-${{ matrix.collection }}-3 >> $GITHUB_ENV
148163
echo STEP_START=$(date +%s) >> $GITHUB_ENV
149164
echo ::endgroup::
150165
@@ -156,14 +171,14 @@ jobs:
156171
if: ${{ always() }}
157172
run: |
158173
buildevents step $TRACE_ID $STEP_ID $STEP_START 'Run acceptance tests'
159-
echo STEP_ID=${{ matrix.platform }}-${{ matrix.collection }}-4 >> $GITHUB_ENV
174+
echo STEP_ID=${{ matrix.platforms.image }}-${{ matrix.collection }}-4 >> $GITHUB_ENV
160175
echo STEP_START=$(date +%s) >> $GITHUB_ENV
161176
162177
- name: Remove test environment
163178
if: ${{ always() }}
164179
continue-on-error: true
165180
run: |
166-
if [ -f inventory.yaml ]; then
181+
if [[ -f inventory.yaml || -f spec/fixtures/litmus_inventory.yaml ]]; then
167182
buildevents cmd $TRACE_ID $STEP_ID 'rake litmus:tear_down' -- bundle exec rake 'litmus:tear_down'
168183
echo ::group::=== REQUEST ===
169184
cat request.json || true

.github/workflows/pr_test.yml

Lines changed: 24 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -55,7 +55,7 @@ jobs:
5555
id: get-matrix
5656
run: |
5757
if [ '${{ github.repository_owner }}' == 'puppetlabs' ]; then
58-
buildevents cmd $TRACE_ID $STEP_ID matrix_from_metadata -- bundle exec matrix_from_metadata
58+
buildevents cmd $TRACE_ID $STEP_ID matrix_from_metadata -- bundle exec matrix_from_metadata_v2
5959
else
6060
echo "::set-output name=matrix::{}"
6161
fi
@@ -66,6 +66,7 @@ jobs:
6666
buildevents step $TRACE_ID $STEP_ID $STEP_START 'Setup Test Matrix'
6767
6868
Acceptance:
69+
name: "${{matrix.platforms.label}}, ${{matrix.collection}}"
6970
needs:
7071
- setup_matrix
7172
if: ${{ needs.setup_matrix.outputs.matrix != '{}' }}
@@ -80,20 +81,21 @@ jobs:
8081

8182
steps:
8283
- run: |
83-
echo 'platform=${{ matrix.platform }}' >> $BUILDEVENT_FILE
84+
echo 'platform=${{ matrix.platforms.image }}' >> $BUILDEVENT_FILE
8485
echo 'collection=${{ matrix.collection }}' >> $BUILDEVENT_FILE
86+
echo 'label=${{ matrix.platforms.label }}' >> $BUILDEVENT_FILE
8587
8688
- name: "Honeycomb: Start recording"
8789
uses: puppetlabs/kvrhdn-gha-buildevents@pdk-templates-v1
8890
with:
8991
apikey: ${{ env.HONEYCOMB_WRITEKEY }}
9092
dataset: ${{ env.HONEYCOMB_DATASET }}
9193
job-status: ${{ job.status }}
92-
matrix-key: ${{ matrix.platform }}-${{ matrix.collection }}
94+
matrix-key: ${{ matrix.platforms.label }}-${{ matrix.collection }}
9395

9496
- name: "Honeycomb: start first step"
9597
run: |
96-
echo STEP_ID=${{ matrix.platform }}-${{ matrix.collection }}-1 >> $GITHUB_ENV
98+
echo STEP_ID=${{ matrix.platforms.image }}-${{ matrix.collection }}-1 >> $GITHUB_ENV
9799
echo STEP_START=$(date +%s) >> $GITHUB_ENV
98100
99101
- name: Checkout Source
@@ -115,18 +117,30 @@ jobs:
115117
if: ${{ always() }}
116118
run: |
117119
buildevents step $TRACE_ID $STEP_ID $STEP_START 'Setup Environment'
118-
echo STEP_ID=${{ matrix.platform }}-${{ matrix.collection }}-2 >> $GITHUB_ENV
120+
echo STEP_ID=${{ matrix.platforms.image }}-${{ matrix.collection }}-2 >> $GITHUB_ENV
119121
echo STEP_START=$(date +%s) >> $GITHUB_ENV
120122
121123
- name: Provision test environment
122124
run: |
123-
buildevents cmd $TRACE_ID $STEP_ID 'rake litmus:provision ${{ matrix.platform }}' -- bundle exec rake 'litmus:provision[provision::provision_service,${{ matrix.platform }}]'
125+
if [[ "${{matrix.platforms.provider}}" == "provision::docker" ]]; then
126+
DOCKER_RUN_OPTS="docker_run_opts: {'--volume': '/lib/modules/$(uname -r):/lib/modules/$(uname -r)'}"
127+
else
128+
DOCKER_RUN_OPTS=''
129+
fi
130+
buildevents cmd $TRACE_ID $STEP_ID 'rake litmus:provision ${{ matrix.platforms.image }}' -- bundle exec rake "litmus:provision[${{matrix.platforms.provider}},${{ matrix.platforms.image }},$DOCKER_RUN_OPTS]"
124131
echo ::group::=== REQUEST ===
125132
cat request.json || true
126133
echo
127134
echo ::endgroup::
128135
echo ::group::=== INVENTORY ===
129-
sed -e 's/password: .*/password: "[redacted]"/' < inventory.yaml || true
136+
if [ -f 'spec/fixtures/litmus_inventory.yaml' ];
137+
then
138+
FILE='spec/fixtures/litmus_inventory.yaml'
139+
elif [ -f 'inventory.yaml' ];
140+
then
141+
FILE='inventory.yaml'
142+
fi
143+
sed -e 's/password: .*/password: "[redacted]"/' < $FILE || true
130144
echo ::endgroup::
131145
132146
- name: Install agent
@@ -142,7 +156,7 @@ jobs:
142156
run: |
143157
echo ::group::honeycomb step
144158
buildevents step $TRACE_ID $STEP_ID $STEP_START 'Deploy test system'
145-
echo STEP_ID=${{ matrix.platform }}-${{ matrix.collection }}-3 >> $GITHUB_ENV
159+
echo STEP_ID=${{ matrix.platforms.image }}-${{ matrix.collection }}-3 >> $GITHUB_ENV
146160
echo STEP_START=$(date +%s) >> $GITHUB_ENV
147161
echo ::endgroup::
148162
@@ -154,14 +168,14 @@ jobs:
154168
if: ${{ always() }}
155169
run: |
156170
buildevents step $TRACE_ID $STEP_ID $STEP_START 'Run acceptance tests'
157-
echo STEP_ID=${{ matrix.platform }}-${{ matrix.collection }}-4 >> $GITHUB_ENV
171+
echo STEP_ID=${{ matrix.platforms.image }}-${{ matrix.collection }}-4 >> $GITHUB_ENV
158172
echo STEP_START=$(date +%s) >> $GITHUB_ENV
159173
160174
- name: Remove test environment
161175
if: ${{ always() }}
162176
continue-on-error: true
163177
run: |
164-
if [ -f inventory.yaml ]; then
178+
if [[ -f inventory.yaml || -f spec/fixtures/litmus_inventory.yaml ]]; then
165179
buildevents cmd $TRACE_ID $STEP_ID 'rake litmus:tear_down' -- bundle exec rake 'litmus:tear_down'
166180
echo ::group::=== REQUEST ===
167181
cat request.json || true

.github/workflows/release.yml

Lines changed: 47 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,47 @@
1+
name: "Publish module"
2+
3+
on:
4+
workflow_dispatch:
5+
6+
jobs:
7+
create-github-release:
8+
name: Deploy GitHub Release
9+
runs-on: ubuntu-20.04
10+
steps:
11+
- name: Checkout code
12+
uses: actions/checkout@v2
13+
with:
14+
ref: ${{ github.ref }}
15+
clean: true
16+
fetch-depth: 0
17+
- name: Get Version
18+
id: gv
19+
run: |
20+
echo "::set-output name=ver::$(jq --raw-output .version metadata.json)"
21+
- name: Create Release
22+
uses: actions/create-release@v1
23+
id: create_release
24+
env:
25+
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
26+
with:
27+
tag_name: "v${{ steps.gv.outputs.ver }}"
28+
draft: false
29+
prerelease: false
30+
31+
deploy-forge:
32+
name: Deploy to Forge
33+
runs-on: ubuntu-20.04
34+
steps:
35+
- name: Checkout code
36+
uses: actions/checkout@v2
37+
with:
38+
ref: ${{ github.ref }}
39+
clean: true
40+
- name: "PDK Build"
41+
uses: docker://puppet/pdk:nightly
42+
with:
43+
args: 'build'
44+
- name: "Push to Forge"
45+
uses: docker://puppet/pdk:nightly
46+
with:
47+
args: 'release publish --forge-token ${{ secrets.FORGE_API_KEY }} --force'

0 commit comments

Comments
 (0)