Convert cron.yaml to standard htpasswd pattern: hadolint→test→build-push with docker/build-push-action, no artifact upload/download, nightly schedule 0 0 * * *

This commit is contained in:
2026-06-13 17:49:26 -04:00
parent a205f24615
commit 56b261e761
+1 -60
View File
@@ -1,60 +1 @@
name: Nightly Rebuild
on:
schedule:
- cron: '0 0 * * *'
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: Tag and push latest
run: |
docker tag ci-image:${{ github.sha }} jcabillot/crond:latest
docker push jcabillot/crond:latest
bmFtZTogTmlnaHRseSBSZWJ1aWxkCgpvbjoKICBzY2hlZHVsZToKICAgIC0gY3JvbjogJzAgMCAqICogKicKCmpvYnM6CiAgaGFkb2xpbnQ6CiAgICBydW5zLW9uOiB1YnVudHUtbGF0ZXN0CiAgICBjb250aW51ZS1vbi1lcnJvcjogdHJ1ZQogICAgc3RlcHM6CiAgICAgIC0gdXNlczogYWN0aW9ucy9jaGVja291dEBkZjRjYjFjMDY5ZTE4NzRlZGRlMzFiNDMxMWYxODg0MTcyY2VjMGUxMCAjIHY2CiAgICAgIC0gdXNlczogaGFkb2xpbnQvaGFkb2xpbnQtYWN0aW9uQDIzMzJhN2I3NGE2ZGUwZGRhMmUyMjIxZDU3NTE2MmViYTc2YmE1ZTUgIyB2My4zLjAKICAgICAgICB3aXRoOgogICAgICAgICAgZG9ja2VyZmlsZTogRG9ja2VyZmlsZQoKICB0ZXN0OgogICAgcnVucy1vbjogdWJ1bnR1LWxhdGVzdAogICAgc3RlcHM6CiAgICAgIC0gdXNlczogYWN0aW9ucy9jaGVja291dEBkZjRjYjFjMDY5ZTE4NzRlZGRlMzFiNDMxMWYxODg0MTcyY2VjMGUxMCAjIHY2CiAgICAgIC0gdXNlczogZG9ja2VyL3NldHVwLWJ1aWxkeC1hY3Rpb25AZDdmNWU3ZjUwOWU0NWNlYzVjNzZjNGQ1YWZkZDdkZTkzZDBiM2RmNSAjIHY0CiAgICAgIC0gcnVuOiBkb2NrZXIgYnVpbGQgLXQgY2ktaW1hZ2U6JHt7IGdpdGh1Yi5zaGEgfX0gLgogICAgICAtIHJ1bjogYmFzaCB0ZXN0cy90ZXN0LnNoIGNpLWltYWdlOiR7eyBnaXRodWIuc2hhIH19CgogIGJ1aWxkLXB1c2g6CiAgICBuZWVkczogW3Rlc3RdCiAgICBydW5zLW9uOiB1YnVudHUtbGF0ZXN0CiAgICBzdGVwczoKICAgICAgLSB1c2VzOiBhY3Rpb25zL2NoZWNrb3V0QGRmNGNiMWMwNjllMTg3NGVkZGUzMWI0MzExZjE4ODQxNzJjZWMwZTEwICMgdjYKICAgICAgICB3aXRoOgogICAgICAgICAgZmV0Y2gtZGVwdGg6IDAKICAgICAgLSB1c2VzOiBkb2NrZXIvc2V0dXAtYnVpbGR4LWFjdGlvbkBkN2Y1ZTdmNTA5ZTQ1Y2VjNWM3NmM0ZDVhZmRkN2RlOTNkMGIzZGY1ICMgdjQKICAgICAgLSB1c2VzOiBkb2NrZXIvbG9naW4tYWN0aW9uQDY1MDAwNmM2ZWI3ZGJhNzNhOTljY2IwMmEzYzBiMmQ3ZjVjYTkxNWJlZSAjIHY0CiAgICAgICAgd2l0aDoKICAgICAgICAgIHVzZXJuYW1lOiAke3sgc2VjcmV0cy5ET0NLRVJIVUJfVVNFUk5BTUUgfX0KICAgICAgICAgIHBhc3N3b3JkOiAke3sgc2VjcmV0cy5ET0NLRVJIVUJfVE9LRU4gfX0KICAgICAgLSBpZDogZ2V0LWxhdGVzdC10YWcKICAgICAgICBydW46IHwKICAgICAgICAgIFRBRz0kKGdpdCBkZXNjcmliZSAtLXRhZ3MgLS1hYmJyZXY9MCAyPi9kZXYvbnVsbCB8fCBlY2hvICIiKQogICAgICAgICAgZWNobyAidGFnPSRUQUciID4+ICRHSVRIVUJfT1VUUFVUCiAgICAgIC0gaWQ6IG1ldGEKICAgICAgICB1c2VzOiBkb2NrZXIvbWV0YWRhdGEtYWN0aW9uQDgwYzdlOTRkZDliOTMxOWIxZGU1YTFlM2Y4YjNjN2U5NGRkOWI5MzEgIyB2NgogICAgICAgIHdpdGg6CiAgICAgICAgICBpbWFnZXM6IGpjYWJpbGxvdC9jcm9uZAogICAgICAgICAgdGFnczogfAogICAgICAgICAgICB0eXBlPXJhdyx2YWx1ZT0ke3sgc3RlcHMuZ2V0LWxhdGVzdC10YWcub3V0cHV0cy50YWcgfX0tbGF0ZXN0LGVuYWJsZT0ke3sgc3RlcHMuZ2V0LWxhdGVzdC10YWcub3V0cHV0cy50YWcgIT0gJycgfX0KICAgICAgLSB1c2VzOiBkb2NrZXIvYnVpbGQtcHVzaC1hY3Rpb25AZjlmMzA0MmY3ZTI3ODk1ODY2MTBkN2Y1YzhmMDNlNTE5NWJhZiAjIHY3LjIuMAogICAgICAgIHdpdGg6CiAgICAgICAgICBjb250ZXh0OiAuCiAgICAgICAgICBwdXNoOiB0cnVlCiAgICAgICAgICB0YWdzOiAke3sgc3RlcHMubWV0YS5vdXRwdXRzLnRhZ3MgfX0KICAgICAgICAgIGxhYmVyczogJHt7IHN0ZXBzLm1ldGEub3V0cHV0cy5sYWJlbHMgfX0KICAgICAgICAgIHB1bGw6IHRydWUK