Skip to content

Commit 66ac7dd

Browse files
committed
ci(ct): add hub description deployment steps to maintenance workflow
1 parent 13a037d commit 66ac7dd

1 file changed

Lines changed: 66 additions & 9 deletions

File tree

.github/workflows/container_maintenance.yml

Lines changed: 66 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -112,6 +112,7 @@ jobs:
112112
# if: ${{ github.repository_owner == 'IQSS' }}
113113
outputs:
114114
supported_tag_matrix: ${{ steps.execute.outputs.supported_tag_matrix }}
115+
rebuilt_images: ${{ steps.execute.outputs.rebuilt_images }}
115116
steps:
116117
- name: Checkout and Setup Maven
117118
uses: IQSS/dataverse/.github/actions/setup-maven@develop
@@ -140,18 +141,25 @@ jobs:
140141
DEVELOPMENT_BRANCH=${{ needs.discover.outputs.develop-branch }}
141142
.github/workflows/scripts/containers/maintain-application.sh ${{ needs.discover.outputs.branches }}
142143
144+
#config-image: TODO!
145+
143146
hub-description:
144147
name: Push description to DockerHub
145148
runs-on: ubuntu-latest
146149
permissions:
147150
contents: read
148151
packages: read
149-
needs: base-image
152+
needs:
153+
- base-image
154+
- application-image
155+
# - config-image
150156
steps:
151157
- name: Checkout repository
152158
uses: actions/checkout@v4
153-
- name: Render README
154-
id: render
159+
160+
### BASE IMAGE
161+
- name: Render README for base image
162+
if: toJSON(needs.base-image.outputs.rebuilt_images) != '[]'
155163
run: |
156164
TAGS_JSON='${{ needs.base-image.outputs.supported_tag_matrix }}'
157165
echo "$TAGS_JSON" | jq -r 'keys | sort | reverse | .[]' |
@@ -160,17 +168,66 @@ jobs:
160168
"- \`$( echo "$TAGS_JSON" | jq --arg v "$branch" -r '.[$v] | join("`, `")' )\`" \
161169
"([Dockerfile](https://github.com/IQSS/dataverse/blob/${branch}/modules/container-base/src/main/docker/Dockerfile)," \
162170
"[Patches](https://github.com/IQSS/dataverse/blob/develop/modules/container-base/src/backports/${branch}))" \
163-
| tee -a "${GITHUB_WORKSPACE}/tags.md"
171+
| tee -a "${GITHUB_WORKSPACE}/tags-base.md"
164172
done
165-
sed -i -e "/<\!-- TAG BLOCK HERE -->/r ${GITHUB_WORKSPACE}/tags.md" "./modules/container-base/README.md"
173+
sed -i -e "/<\!-- TAG BLOCK HERE -->/r ${GITHUB_WORKSPACE}/tags-base.md" "./modules/container-base/README.md"
166174
cat "./modules/container-base/README.md"
167-
168-
- name: Push description to DockerHub
169-
if: ${{ ! inputs.dry_run && ! inputs.damp_run }}
175+
- name: Push description to DockerHub for base image
176+
if: ${{ ! inputs.dry_run && ! inputs.damp_run && toJSON(needs.base-image.outputs.rebuilt_images) != '[]' }}
170177
uses: peter-evans/dockerhub-description@v4
171178
with:
172179
username: ${{ secrets.DOCKERHUB_USERNAME }}
173180
password: ${{ secrets.DOCKERHUB_TOKEN }}
174181
repository: gdcc/base
175182
short-description: "Dataverse Base Container image providing Payara application server and optimized configuration"
176-
readme-filepath: ./modules/container-base/README.md
183+
readme-filepath: ./modules/container-base/README.md
184+
185+
### APPLICATION IMAGE
186+
- name: Render README for application image
187+
if: toJSON(needs.application-image.outputs.rebuilt_images) != '[]'
188+
run: |
189+
TAGS_JSON='${{ needs.application-image.outputs.supported_tag_matrix }}'
190+
echo "$TAGS_JSON" | jq -r 'keys | sort | reverse | .[]' |
191+
while IFS= read -r branch; do
192+
echo \
193+
"- \`$( echo "$TAGS_JSON" | jq --arg v "$branch" -r '.[$v] | join("`, `")' )\`" \
194+
"([Dockerfile](https://github.com/IQSS/dataverse/blob/${branch}/src/main/docker/Dockerfile)," \
195+
"[Patches](https://github.com/IQSS/dataverse/blob/develop/src/backports/${branch}))" \
196+
| tee -a "${GITHUB_WORKSPACE}/tags-app.md"
197+
done
198+
sed -i -e "/<\!-- TAG BLOCK HERE -->/r ${GITHUB_WORKSPACE}/tags-app.md" "./src/main/docker/README.md"
199+
cat "./src/main/docker/README.md"
200+
- name: Push description to DockerHub for application image
201+
if: ${{ ! inputs.dry_run && ! inputs.damp_run && toJSON(needs.application-image.outputs.rebuilt_images) != '[]' }}
202+
uses: peter-evans/dockerhub-description@v4
203+
with:
204+
username: ${{ secrets.DOCKERHUB_USERNAME }}
205+
password: ${{ secrets.DOCKERHUB_TOKEN }}
206+
repository: gdcc/dataverse
207+
short-description: "Dataverse Application Container Image providing the executable"
208+
readme-filepath: ./src/main/docker/README.md
209+
210+
### CONFIGBAKER IMAGE
211+
#- name: Render README for config baker image
212+
# if: toJSON(needs.config-image.outputs.rebuilt_images) != '[]'
213+
# run: |
214+
# TAGS_JSON='${{ needs.config-image.outputs.supported_tag_matrix }}'
215+
# echo "$TAGS_JSON" | jq -r 'keys | sort | reverse | .[]' |
216+
# while IFS= read -r branch; do
217+
# echo \
218+
# "- \`$( echo "$TAGS_JSON" | jq --arg v "$branch" -r '.[$v] | join("`, `")' )\`" \
219+
# "([Dockerfile](https://github.com/IQSS/dataverse/blob/${branch}/modules/container-configbaker/src/main/docker/Dockerfile)," \
220+
# "[Patches](https://github.com/IQSS/dataverse/blob/develop/modules/container-configbaker/src/backports/${branch}))" \
221+
# | tee -a "${GITHUB_WORKSPACE}/tags-config.md"
222+
# done
223+
# sed -i -e "/<\!-- TAG BLOCK HERE -->/r ${GITHUB_WORKSPACE}/tags-config.md" "./modules/container-configbaker/README.md"
224+
# cat "./modules/container-configbaker/README.md"
225+
#- name: Push description to DockerHub for config baker image
226+
# if: ${{ ! inputs.dry_run && ! inputs.damp_run && toJSON(needs.config-image.outputs.rebuilt_images) != '[]' }}
227+
# uses: peter-evans/dockerhub-description@v4
228+
# with:
229+
# username: ${{ secrets.DOCKERHUB_USERNAME }}
230+
# password: ${{ secrets.DOCKERHUB_TOKEN }}
231+
# repository: gdcc/base
232+
# short-description: "Dataverse Config Baker Container Image providing setup tooling and more"
233+
# readme-filepath: ./modules/container-configbaker/README.md

0 commit comments

Comments
 (0)