18
18
MOD_VERSION :
19
19
required : false
20
20
type : string
21
+ MOD_VERSION_OVERRIDE :
22
+ required : false
23
+ type : string
21
24
MULTI_ARCH :
22
25
required : false
23
26
type : string
@@ -47,18 +50,21 @@ jobs:
47
50
48
51
- name : Set Vars
49
52
run : |
53
+ echo "GITHUB_REPO=${{ inputs.GITHUB_REPO }}" >> $GITHUB_ENV
54
+ echo "ENDPOINT=${{ inputs.ENDPOINT }}" >> $GITHUB_ENV
50
55
echo "BASEIMAGE=${{ inputs.BASEIMAGE }}" >> $GITHUB_ENV
51
- echo "BASEIMAGE=${{ inputs.BASEIMAGE }}" >> $GITHUB_STEP_SUMMARY
52
56
echo "MODNAME=${{ inputs.MODNAME }}" >> $GITHUB_ENV
53
- echo "MODNAME=${{ inputs.MODNAME }}" >> $GITHUB_STEP_SUMMARY
54
- echo "ENDPOINT=${{ inputs.ENDPOINT }}" >> $GITHUB_ENV
55
- echo "ENDPOINT=${{ inputs.ENDPOINT }}" >> $GITHUB_STEP_SUMMARY
56
- echo "GITHUB_REPO=${{ inputs.GITHUB_REPO }}" >> $GITHUB_ENV
57
- echo "GITHUB_REPO=${{ inputs.GITHUB_REPO }}" >> $GITHUB_STEP_SUMMARY
58
57
echo "MOD_VERSION=${{ inputs.MOD_VERSION }}" >> $GITHUB_ENV
59
- echo "MOD_VERSION =${{ inputs.MOD_VERSION }}" >> $GITHUB_STEP_SUMMARY
58
+ echo "MOD_VERSION_OVERRIDE =${{ inputs.MOD_VERSION_OVERRIDE }}" >> $GITHUB_ENV
60
59
echo "MULTI_ARCH=${{ inputs.MULTI_ARCH }}" >> $GITHUB_ENV
61
- echo "MULTI_ARCH=${{ inputs.MULTI_ARCH }}" >> $GITHUB_STEP_SUMMARY
60
+ echo "> [!NOTE]" >> $GITHUB_STEP_SUMMARY
61
+ echo "> GITHUB_REPO=${{ inputs.GITHUB_REPO }}" >> $GITHUB_STEP_SUMMARY
62
+ echo "> ENDPOINT=${{ inputs.ENDPOINT }}" >> $GITHUB_STEP_SUMMARY
63
+ echo "> BASEIMAGE=${{ inputs.BASEIMAGE }}" >> $GITHUB_STEP_SUMMARY
64
+ echo "> MODNAME=${{ inputs.MODNAME }}" >> $GITHUB_STEP_SUMMARY
65
+ echo "> MOD_VERSION=${{ inputs.MOD_VERSION }}" >> $GITHUB_STEP_SUMMARY
66
+ echo "> MOD_VERSION_OVERRIDE=${{ inputs.MOD_VERSION_OVERRIDE }}" >> $GITHUB_STEP_SUMMARY
67
+ echo "> MULTI_ARCH=${{ inputs.MULTI_ARCH }}" >> $GITHUB_STEP_SUMMARY
62
68
63
69
- name : Set up QEMU
64
70
uses : docker/setup-qemu-action@v3
75
81
run : |
76
82
DOCKERHUB_TAGS="${ENDPOINT}:${BASEIMAGE}-${MODNAME} ${ENDPOINT}:${BASEIMAGE}-${MODNAME}-${{ github.sha }}"
77
83
if [[ -n "${MOD_VERSION}" ]]; then
78
- DOCKERHUB_TAGS="${DOCKERHUB_TAGS} ${ENDPOINT}:${BASEIMAGE}-${MODNAME}-${MOD_VERSION} ${ENDPOINT}:${BASEIMAGE}-${MODNAME}-${MOD_VERSION}-${{ github.sha }}"
84
+ if [[ "${MOD_VERSION_OVERRIDE,,}" == "true" ]]; then
85
+ DOCKERHUB_TAGS="${ENDPOINT}:${BASEIMAGE}-${MODNAME}-${MOD_VERSION} ${ENDPOINT}:${BASEIMAGE}-${MODNAME}-${MOD_VERSION}-${{ github.sha }}"
86
+ else
87
+ DOCKERHUB_TAGS="${DOCKERHUB_TAGS} ${ENDPOINT}:${BASEIMAGE}-${MODNAME}-${MOD_VERSION} ${ENDPOINT}:${BASEIMAGE}-${MODNAME}-${MOD_VERSION}-${{ github.sha }}"
88
+ fi
79
89
fi
80
90
echo "DOCKERHUB_TAGS=${DOCKERHUB_TAGS}" >> $GITHUB_ENV
81
91
if [[ "${MULTI_ARCH,,}" == "true" ]]; then
@@ -129,29 +139,26 @@ jobs:
129
139
if : ${{ (github.event_name == 'push' || github.event_name == 'workflow_dispatch') && github.ref == format('refs/heads/{0}-{1}', env.BASEIMAGE, env.MODNAME) && env.GITHUB_REPO == github.repository && env.CR_USER && env.CR_PAT }}
130
140
run : |
131
141
if [[ "${MULTI_ARCH,,}" == "true" ]]; then
132
- echo " Pushed the following images/tags to GHCR:" >> $GITHUB_STEP_SUMMARY
142
+ printf "\n## Pushed the following images/tags to GHCR:\n\n " >> $GITHUB_STEP_SUMMARY
133
143
for i in ${DOCKERHUB_TAGS}; do
134
144
ighcr="${i/#/ghcr.io\/}"
135
145
docker push ${ighcr/:/:amd64-}
136
- echo "${ighcr/:/:amd64-}" >> $GITHUB_STEP_SUMMARY
146
+ echo "\` ${ighcr/:/:amd64-}\` " >> $GITHUB_STEP_SUMMARY
137
147
docker push ${ighcr/:/:arm64v8-}
138
- echo "${ighcr/:/:arm64v8-}" >> $GITHUB_STEP_SUMMARY
148
+ echo "\` ${ighcr/:/:arm64v8-}\` " >> $GITHUB_STEP_SUMMARY
139
149
done
140
- echo " Pushed the following manifests to GHCR:" >> $GITHUB_STEP_SUMMARY
150
+ printf "\n## Pushed the following manifests to GHCR:\n\n " >> $GITHUB_STEP_SUMMARY
141
151
for i in ${DOCKERHUB_TAGS}; do
142
152
ighcr="${i/#/ghcr.io\/}"
143
- docker manifest push --purge ${ighcr} || :
144
- docker manifest create ${ighcr} ${ighcr/:/:amd64-} ${ighcr/:/:arm64v8-}
145
- docker manifest annotate ${ighcr} ${ighcr/:/:arm64v8-} --os linux --arch arm64 --variant v8
146
- docker manifest push --purge ${ighcr}
147
- echo "${ighcr}" >> $GITHUB_STEP_SUMMARY
153
+ docker buildx imagetools create -t ${ighcr} ${ighcr/:/:amd64-} ${ighcr/:/:arm64v8-}
154
+ echo "\`${ighcr}\`" >> $GITHUB_STEP_SUMMARY
148
155
done
149
156
else
150
- echo " Pushed the following images/tags to GHCR:" >> $GITHUB_STEP_SUMMARY
157
+ printf "\n## Pushed the following images/tags to GHCR:\n\n " >> $GITHUB_STEP_SUMMARY
151
158
for i in ${DOCKERHUB_TAGS}; do
152
159
ighcr="${i/#/ghcr.io\/}"
153
160
docker push ${ighcr}
154
- echo "${ighcr}" >> $GITHUB_STEP_SUMMARY
161
+ echo "\` ${ighcr}\` " >> $GITHUB_STEP_SUMMARY
155
162
done
156
163
fi
157
164
@@ -161,19 +168,16 @@ jobs:
161
168
if [[ "${MULTI_ARCH,,}" == "true" ]]; then
162
169
docker push ghcr.io/${ENDPOINT}:amd64-pull_request_${{ github.event.pull_request.number }}
163
170
docker push ghcr.io/${ENDPOINT}:arm64v8-pull_request_${{ github.event.pull_request.number }}
164
- echo "Pushed the following PR images/tags to GHCR:" >> $GITHUB_STEP_SUMMARY
165
- echo "ghcr.io/${ENDPOINT}:amd64-pull_request_${{ github.event.pull_request.number }}" >> $GITHUB_STEP_SUMMARY
166
- echo "ghcr.io/${ENDPOINT}:arm64v8-pull_request_${{ github.event.pull_request.number }}" >> $GITHUB_STEP_SUMMARY
167
- docker manifest push --purge ghcr.io/${ENDPOINT}:pull_request_${{ github.event.pull_request.number }} || :
168
- docker manifest create ghcr.io/${ENDPOINT}:pull_request_${{ github.event.pull_request.number }} ghcr.io/${ENDPOINT}:amd64-pull_request_${{ github.event.pull_request.number }} ghcr.io/${ENDPOINT}:arm64v8-pull_request_${{ github.event.pull_request.number }}
169
- docker manifest annotate ghcr.io/${ENDPOINT}:pull_request_${{ github.event.pull_request.number }} ghcr.io/${ENDPOINT}:arm64v8-pull_request_${{ github.event.pull_request.number }} --os linux --arch arm64 --variant v8
170
- docker manifest push --purge ghcr.io/${ENDPOINT}:pull_request_${{ github.event.pull_request.number }}
171
- echo "Pushed the following PR manifest to GHCR:" >> $GITHUB_STEP_SUMMARY
172
- echo "ghcr.io/${ENDPOINT}:pull_request_${{ github.event.pull_request.number }}" >> $GITHUB_STEP_SUMMARY
171
+ printf "\n## Pushed the following PR images/tags to GHCR:\n\n" >> $GITHUB_STEP_SUMMARY
172
+ echo "\`ghcr.io/${ENDPOINT}:amd64-pull_request_${{ github.event.pull_request.number }}\`" >> $GITHUB_STEP_SUMMARY
173
+ echo "\`ghcr.io/${ENDPOINT}:arm64v8-pull_request_${{ github.event.pull_request.number }}\`" >> $GITHUB_STEP_SUMMARY
174
+ docker buildx imagetools create -t ghcr.io/${ENDPOINT}:pull_request_${{ github.event.pull_request.number }} ghcr.io/${ENDPOINT}:amd64-pull_request_${{ github.event.pull_request.number }} ghcr.io/${ENDPOINT}:arm64v8-pull_request_${{ github.event.pull_request.number }}
175
+ printf "\n## Pushed the following PR manifest to GHCR:\n\n" >> $GITHUB_STEP_SUMMARY
176
+ echo "\`ghcr.io/${ENDPOINT}:pull_request_${{ github.event.pull_request.number }}\`" >> $GITHUB_STEP_SUMMARY
173
177
else
174
178
docker push ghcr.io/${ENDPOINT}:pull_request_${{ github.event.pull_request.number }}
175
- echo " Pushed the following PR image/tag to GHCR:" >> $GITHUB_STEP_SUMMARY
176
- echo "ghcr.io/${ENDPOINT}:pull_request_${{ github.event.pull_request.number }}" >> $GITHUB_STEP_SUMMARY
179
+ printf "\n## Pushed the following PR image/tag to GHCR:\n\n " >> $GITHUB_STEP_SUMMARY
180
+ echo "\` ghcr.io/${ENDPOINT}:pull_request_${{ github.event.pull_request.number }}\` " >> $GITHUB_STEP_SUMMARY
177
181
fi
178
182
179
183
- name : Add GHCR push comment to PR
@@ -194,26 +198,23 @@ jobs:
194
198
if : ${{ (github.event_name == 'push' || github.event_name == 'workflow_dispatch') && github.ref == format('refs/heads/{0}-{1}', env.BASEIMAGE, env.MODNAME) && env.GITHUB_REPO == github.repository && env.DOCKERUSER && env.DOCKERPASS }}
195
199
run : |
196
200
if [[ "${MULTI_ARCH,,}" == "true" ]]; then
197
- echo " Pushed the following images/tags to Docker Hub:" >> $GITHUB_STEP_SUMMARY
201
+ printf "\n## Pushed the following images/tags to Docker Hub:\n\n " >> $GITHUB_STEP_SUMMARY
198
202
for i in ${DOCKERHUB_TAGS}; do
199
203
docker push ${i/:/:amd64-}
200
- echo "${i/:/:amd64-}" >> $GITHUB_STEP_SUMMARY
204
+ echo "\` ${i/:/:amd64-}\` " >> $GITHUB_STEP_SUMMARY
201
205
docker push ${i/:/:arm64v8-}
202
- echo "${i/:/:arm64v8-}" >> $GITHUB_STEP_SUMMARY
206
+ echo "\` ${i/:/:arm64v8-}\` " >> $GITHUB_STEP_SUMMARY
203
207
done
204
- echo " Pushed the following manifests to Docker Hub:" >> $GITHUB_STEP_SUMMARY
208
+ printf "\n## Pushed the following manifests to Docker Hub:\n\n " >> $GITHUB_STEP_SUMMARY
205
209
for i in ${DOCKERHUB_TAGS}; do
206
- docker manifest push --purge ${i} || :
207
- docker manifest create ${i} ${i/:/:amd64-} ${i/:/:arm64v8-}
208
- docker manifest annotate ${i} ${i/:/:arm64v8-} --os linux --arch arm64 --variant v8
209
- docker manifest push --purge ${i}
210
- echo "${i}" >> $GITHUB_STEP_SUMMARY
210
+ docker buildx imagetools create -t ${i} ${i/:/:amd64-} ${i/:/:arm64v8-}
211
+ echo "\`${i}\`" >> $GITHUB_STEP_SUMMARY
211
212
done
212
213
else
213
- echo " Pushed the following images/tags to Docker Hub:" >> $GITHUB_STEP_SUMMARY
214
+ printf "\n## Pushed the following images/tags to Docker Hub:\n\n " >> $GITHUB_STEP_SUMMARY
214
215
for i in ${DOCKERHUB_TAGS}; do
215
216
docker push ${i}
216
- echo "${i}" >> $GITHUB_STEP_SUMMARY
217
+ echo "\` ${i}\` " >> $GITHUB_STEP_SUMMARY
217
218
done
218
219
fi
219
220
@@ -223,17 +224,14 @@ jobs:
223
224
if [[ "${MULTI_ARCH,,}" == "true" ]]; then
224
225
docker push ${ENDPOINT}:amd64-pull_request_${{ github.event.pull_request.number }}
225
226
docker push ${ENDPOINT}:arm64v8-pull_request_${{ github.event.pull_request.number }}
226
- echo "Pushed the following PR images/tags to Docker Hub:" >> $GITHUB_STEP_SUMMARY
227
- echo "${ENDPOINT}:amd64-pull_request_${{ github.event.pull_request.number }}" >> $GITHUB_STEP_SUMMARY
228
- echo "${ENDPOINT}:arm64v8-pull_request_${{ github.event.pull_request.number }}" >> $GITHUB_STEP_SUMMARY
229
- docker manifest push --purge ${ENDPOINT}:pull_request_${{ github.event.pull_request.number }} || :
230
- docker manifest create ${ENDPOINT}:pull_request_${{ github.event.pull_request.number }} ${ENDPOINT}:amd64-pull_request_${{ github.event.pull_request.number }} ${ENDPOINT}:arm64v8-pull_request_${{ github.event.pull_request.number }}
231
- docker manifest annotate ${ENDPOINT}:pull_request_${{ github.event.pull_request.number }} ${ENDPOINT}:arm64v8-pull_request_${{ github.event.pull_request.number }} --os linux --arch arm64 --variant v8
232
- docker manifest push --purge ${ENDPOINT}:pull_request_${{ github.event.pull_request.number }}
233
- echo "Pushed the following PR manifest to Docker Hub:" >> $GITHUB_STEP_SUMMARY
234
- echo "${ENDPOINT}:pull_request_${{ github.event.pull_request.number }}" >> $GITHUB_STEP_SUMMARY
227
+ printf "\n## Pushed the following PR images/tags to Docker Hub:\n\n" >> $GITHUB_STEP_SUMMARY
228
+ echo "\`${ENDPOINT}:amd64-pull_request_${{ github.event.pull_request.number }}\`" >> $GITHUB_STEP_SUMMARY
229
+ echo "\`${ENDPOINT}:arm64v8-pull_request_${{ github.event.pull_request.number }}\`" >> $GITHUB_STEP_SUMMARY
230
+ docker buildx imagetools create -t ${ENDPOINT}:pull_request_${{ github.event.pull_request.number }} ${ENDPOINT}:amd64-pull_request_${{ github.event.pull_request.number }} ${ENDPOINT}:arm64v8-pull_request_${{ github.event.pull_request.number }}
231
+ printf "\n## Pushed the following PR manifest to Docker Hub:\n\n" >> $GITHUB_STEP_SUMMARY
232
+ echo "\`${ENDPOINT}:pull_request_${{ github.event.pull_request.number }}\`" >> $GITHUB_STEP_SUMMARY
235
233
else
236
234
docker push ${ENDPOINT}:pull_request_${{ github.event.pull_request.number }}
237
- echo " Pushed the following PR image/tag to Docker Hub:" >> $GITHUB_STEP_SUMMARY
238
- echo "${ENDPOINT}:pull_request_${{ github.event.pull_request.number }}" >> $GITHUB_STEP_SUMMARY
235
+ printf "\n## Pushed the following PR image/tag to Docker Hub:\n\n " >> $GITHUB_STEP_SUMMARY
236
+ echo "\` ${ENDPOINT}:pull_request_${{ github.event.pull_request.number }}\` " >> $GITHUB_STEP_SUMMARY
239
237
fi
0 commit comments