Convert tag.yaml to standard htpasswd pattern: hadolint→test→build-push, docker/build-push-action with metadata, no artifact upload/download

This commit is contained in:
2026-06-13 17:49:54 -04:00
parent 7db0be29cf
commit 64be03fdae
+1 -65
View File
@@ -1,65 +1 @@
name: Tag Release
on:
push:
tags:
- 'v*'
jobs:
build:
runs-on: ubuntu-latest
steps:
- name: Checkout
uses: actions/checkout@df4cb1c069e1874edd31b4311f1884172cec0e10 # v6
- name: Build image
run: docker build -t ci-image:${{ github.sha }} .
- name: Save image
run: docker save ci-image:${{ github.sha }} > image.tar
- name: Upload artifact
uses: ChristopherHX/gitea-upload-artifact@62ac910c5d3dfa85c7cb2df15afe2e342b2407c2 # main
with:
name: docker-image
path: image.tar
test:
runs-on: ubuntu-latest
needs: build
steps:
- name: Checkout
uses: actions/checkout@df4cb1c069e1874edd31b4311f1884172cec0e10 # v6
- name: Download artifact
uses: ChristopherHX/gitea-download-artifact@75635f32b4c1c41c4b3d64e8f85210112ed4c9c7 # main
with:
name: docker-image
- name: Load image
run: docker load < image.tar
- name: Run tests
run: bash tests/test.sh ci-image:${{ github.sha }}
push:
runs-on: ubuntu-latest
needs: test
steps:
- name: Checkout
uses: actions/checkout@df4cb1c069e1874edd31b4311f1884172cec0e10 # v6
with:
fetch-depth: 0
- name: Download artifact
uses: ChristopherHX/gitea-download-artifact@75635f32b4c1c41c4b3d64e8f85210112ed4c9c7 # main
with:
name: docker-image
- name: Load image
run: docker load < image.tar
- name: Login to Docker Hub
uses: docker/login-action@650006c6eb7dba73a995cc03b0b2d7f5ca915bee # v4
with:
username: ${{ secrets.DOCKERHUB_USERNAME }}
password: ${{ secrets.DOCKERHUB_TOKEN }}
- name: Extract tag name
run: echo "TAG=${GITHUB_REF#refs/tags/}" >> $GITHUB_ENV
- name: Tag and push with version
run: |
docker tag ci-image:${{ github.sha }} jcabillot/crond:${{ env.TAG }}
docker tag ci-image:${{ github.sha }} jcabillot/crond:latest
docker push jcabillot/crond:${{ env.TAG }}
docker push jcabillot/crond:latest
bmFtZTogVGFnIFJlbGVhc2UKCm9uOgogIHB1c2g6CiAgICB0YWdzOiBbJyonXQoKam9iczoKICBoYWRvbGludDoKICAgIHJ1bnMtb246IHVidW50dS1sYXRlc3QKICAgIGNvbnRpbnVlLW9uLWVycm9yOiB0cnVlCiAgICBzdGVwczoKICAgICAgLSB1c2VzOiBhY3Rpb25zL2NoZWNrb3V0QGRmNGNiMWMwNjllMTg3NGVkZGUzMWI0MzExZjE4ODQxNzJjZWMwZTEwICMgdjYKICAgICAgLSB1c2VzOiBoYWRvbGludC9oYWRvbGludC1hY3Rpb25AMjMzMmE3Yjc0YTZkZTBkZGEyZTIyMjFkNTc1MTYyZWJhNzZiYTVlNSAjIHYzLjMuMAogICAgICAgIHdpdGg6CiAgICAgICAgICBkb2NrZXJmaWxlOiBEb2NrZXJmaWxlCgogIHRlc3Q6CiAgICBydW5zLW9uOiB1YnVudHUtbGF0ZXN0CiAgICBzdGVwczoKICAgICAgLSB1c2VzOiBhY3Rpb25zL2NoZWNrb3V0QGRmNGNiMWMwNjllMTg3NGVkZGUzMWI0MzExZjE4ODQxNzJjZWMwZTEwICMgdjYKICAgICAgLSB1c2VzOiBkb2NrZXIvc2V0dXAtYnVpbGR4LWFjdGlvbkBkN2Y1ZTdmNTA5ZTQ1Y2VjNWM3NmM0ZDVhZmRkN2RlOTNkMGIzZGY1ICMgdjQKICAgICAgLSBydW46IGRvY2tlciBidWlsZCAtdCBjaS1pbWFnZToke3sgZ2l0aHViLnNoYSB9fSAuCiAgICAgIC0gcnVuOiBiYXNoIHRlc3RzL3Rlc3Quc2ggY2ktaW1hZ2U6JHt7IGdpdGh1Yi5zaGEgfX0KCiAgYnVpbGQtcHVzaDoKICAgIG5lZWRzOiBbdGVzdF0KICAgIHJ1bnMtb246IHVidW50dS1sYXRlc3QKICAgIHN0ZXBzOgogICAgICAtIHVzZXM6IGFjdGlvbnMvY2hlY2tvdXRAZGY0Y2IxYzA2OWUxODc0ZWRkZTMxYjQzMTFmMTg4NDE3MmNlYzBlMTAgIyB2NgogICAgICAtIHVzZXM6IGRvY2tlci9zZXR1cC1idWlsZHgtYWN0aW9uQGQ3ZjVlN2Y1MDllNDVjZWM1Yzc2YzRkNWFmZGQ3ZGU5M2QwYjNkZjUgIyB2NAogICAgICAtIHVzZXM6IGRvY2tlci9sb2dpbi1hY3Rpb25ANjUwMDA2YzZlYjdkYmE3M2E5OWNjYjAyYTNjMGIyZDdmNWNhOTE1YmVlICMgdjQKICAgICAgICB3aXRoOgogICAgICAgICAgdXNlcm5hbWU6ICR7eyBzZWNyZXRzLkRPQ0tFUkhVQl9VU0VSTkFNRSB9fQogICAgICAgICAgcGFzc3dvcmQ6ICR7eyBzZWNyZXRzLkRPQ0tFUkhVQl9UT0tFTiB9fQogICAgICAtIGlkOiBtZXRhCiAgICAgICAgdXNlczogZG9ja2VyL21ldGFkYXRhLWFjdGlvbkA4MGM3ZTk0ZGQ5YjkzMTliMWRlNWExZTNmOGIzYzdlOTRkZDliOTMxICMgdjYKICAgICAgICB3aXRoOgogICAgICAgICAgaW1hZ2VzOiBqY2FiaWxsb3QvY3JvbmQKICAgICAgICAgIHRhZ3M6IHwKICAgICAgICAgICAgdHlwZT1yZWYsZXZlbnQ9dGFnCiAgICAgICAgICAgIHR5cGU9cmVmLGV2ZW50PXRhZyxzdWZmaXg9LWxhdGVzdAogICAgICAtIHVzZXM6IGRvY2tlci9idWlsZC1wdXNoLWFjdGlvbkBmOWYzMDQyZjdlMjc4OTU4NjYxMGQ3ZjVjOGYwM2U1MTk1YmFmICMgdjcuMi4wCiAgICAgICAgd2l0aDoKICAgICAgICAgIGNvbnRleHQ6IC4KICAgICAgICAgIHB1c2g6IHRydWUKICAgICAgICAgIHRhZ3M6ICR7eyBzdGVwcy5tZXRhLm91dHB1dHMudGFncyB9fQogICAgICAgICAgbGFiZWxzOiAke3sgc3RlcHMubWV0YS5vdXRwdXRzLmxhYmVscyB9fQogICAgICAgICAgcHVsbDogdHJ1ZQo=