@@ -27,20 +27,19 @@ jobs:
27
27
release :
28
28
name : Create Release
29
29
runs-on : ubuntu-latest
30
+ permissions :
31
+ contents : write
30
32
timeout-minutes : 60
31
33
outputs :
32
34
latesttag : ${{ steps.tag.outputs.islatest }}
33
-
34
35
steps :
35
36
- name : Docker Login
36
37
run : docker login -u ${{ secrets.DOCKERHUB_USERNAME }} -p ${{ secrets.DOCKERHUB_PASSWORD }}
37
-
38
38
- name : Checkout Repository
39
39
uses : actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
40
40
with :
41
41
fetch-depth : 0 # for CHANGELOG
42
42
ref : ${{ github.ref }} # branch provided on dispatch
43
-
44
43
- name : Validate Branch and Tag
45
44
run : |
46
45
# do not allow release on main branch
@@ -63,12 +62,10 @@ jobs:
63
62
64
63
# set tag environment variable
65
64
echo "TAG=${{ inputs.tag }}" >> $GITHUB_ENV
66
-
67
65
- name : Setup Go
68
66
uses : actions/setup-go@0aaccfd150d50ccaeb58ebd88d36e91967a5f35b # v5.4.0
69
67
with :
70
68
go-version : ' 1.23'
71
-
72
69
- name : Update version.go
73
70
run : |
74
71
# strip semantic v
85
82
# commit changes
86
83
git add internal/version/version.go
87
84
git commit -s -m "chore: Update version.go for ${TAG}"
88
-
89
85
- name : Create Tag
90
86
id : tag
91
87
run : |
@@ -101,12 +97,13 @@ jobs:
101
97
else
102
98
echo "islatest=false >> $GITHUB_OUTPUT"
103
99
fi
104
-
105
100
- name : Push to Release Branch
106
101
if : ${{ !inputs.dryrun }}
102
+ env :
103
+ GOVMOMI_RELEASE : ${{ secrets.GOVMOMI_RELEASE }}
107
104
run : |
105
+ git remote set-url origin https://x-access-token:${GOVMOMI_RELEASE}@github.com/${{ github.repository }}
108
106
git push --atomic --follow-tags origin ${{ github.ref }}
109
-
110
107
- name : Create Release CHANGELOG
111
108
env :
112
109
IMAGE : quay.io/git-chglog/git-chglog
@@ -115,7 +112,6 @@ jobs:
115
112
run : |
116
113
# generate CHANGELOG for this Github release tag only
117
114
docker run --rm -v $PWD:/workdir ${IMAGE}@sha256:${IMAGE_SHA} -o RELEASE_CHANGELOG.md --sort semver --tag-filter-pattern '^v[0-9]+' ${TAG}
118
-
119
115
- name : Archive CHANGELOG
120
116
uses : actions/upload-artifact@ea165f8d65b6e75b540449e92b4886f43607fa02 # v4.6.2
121
117
continue-on-error : true
@@ -124,7 +120,6 @@ jobs:
124
120
path : |
125
121
./RELEASE_CHANGELOG.md
126
122
retention-days : 14
127
-
128
123
- name : Simulate Release without Pushing Artifacts
129
124
if : ${{ inputs.dryrun }}
130
125
uses : goreleaser/goreleaser-action@9c156ee8a17a598857849441385a2041ef570552 # v6.3.0
@@ -133,31 +128,29 @@ jobs:
133
128
with :
134
129
version : latest
135
130
args : release --snapshot --clean --release-notes RELEASE_CHANGELOG.md
136
-
137
131
- name : Create Release
138
132
if : ${{ !inputs.dryrun }}
139
133
uses : goreleaser/goreleaser-action@9c156ee8a17a598857849441385a2041ef570552 # v6.3.0
140
134
env :
141
- GITHUB_TOKEN : ${{ secrets.GITHUB_TOKEN }}
135
+ GITHUB_TOKEN : ${{ secrets.GOVMOMI_RELEASE }}
142
136
with :
143
137
version : latest
144
138
args : release --clean --release-notes RELEASE_CHANGELOG.md # will push artefacts and container images
145
-
146
139
pull-request :
147
140
needs : release
148
141
name : Create CHANGELOG.md PR
149
142
runs-on : ubuntu-latest
143
+ permissions :
144
+ contents : write
150
145
continue-on-error : true
151
146
# Only update CHANGELOG for latest semver tag.
152
147
if : ${{ !inputs.dryrun && needs.release.outputs.latesttag == 'true' }}
153
-
154
148
steps :
155
149
- name : Checkout Repository
156
150
uses : actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
157
151
with :
158
152
fetch-depth : 0 # for CHANGELOG
159
153
ref : main
160
-
161
154
- name : Commit CHANGELOG
162
155
env :
163
156
IMAGE : quay.io/git-chglog/git-chglog
@@ -166,7 +159,6 @@ jobs:
166
159
run : |
167
160
# update CHANGELOG
168
161
docker run --rm -v $PWD:/workdir ${IMAGE}@sha256:${IMAGE_SHA} -o CHANGELOG.md --sort semver --tag-filter-pattern '^v[0-9]+' -t .chglog/CHANGELOG.tpl.md
169
-
170
162
- name : Create Pull Request
171
163
id : cpr
172
164
uses : peter-evans/create-pull-request@271a8d0340265f705b14b6d32b9829c1cb33d45e # v7.0.8
@@ -181,7 +173,6 @@ jobs:
181
173
182
174
> **Note**
183
175
> Due to a [limitation](https://github.com/peter-evans/create-pull-request/blob/master/docs/concepts-guidelines.md#triggering-further-workflow-runs) in Github Actions please **close and immediately reopen** this PR to trigger the required workflow checks before merging.
184
-
185
176
- name : Pull Request Information
186
177
run : |
187
178
echo "Pull Request Number - ${{ steps.cpr.outputs.pull-request-number }}"
0 commit comments