update to workflows
minecraft-build-minecraft / Docker prune (vm-docker-build2) (push) Successful in 4s
minecraft-build-testing / Docker prune (vm-docker-build2) (push) Successful in 3s
minecraft-build-minecraft / poll-and-detect-changes (push) Successful in 13s
minecraft-build-testing / poll-and-detect-changes (push) Successful in 13s
minecraft-build-minecraft / Build and Push minecraft (push) Skipped
minecraft-build-minecraft / generate-changelogs (push) Skipped
minecraft-build-minecraft / generate-build-info (push) Skipped
minecraft-build-testing / Build and Push testing (push) Skipped
minecraft-build-testing / generate-changelogs (push) Skipped
minecraft-build-testing / generate-build-info (push) Skipped
minecraft-build-minecraft / Docker prune (vm-docker-build2) (push) Successful in 4s
minecraft-build-testing / Docker prune (vm-docker-build2) (push) Successful in 3s
minecraft-build-minecraft / poll-and-detect-changes (push) Successful in 13s
minecraft-build-testing / poll-and-detect-changes (push) Successful in 13s
minecraft-build-minecraft / Build and Push minecraft (push) Skipped
minecraft-build-minecraft / generate-changelogs (push) Skipped
minecraft-build-minecraft / generate-build-info (push) Skipped
minecraft-build-testing / Build and Push testing (push) Skipped
minecraft-build-testing / generate-changelogs (push) Skipped
minecraft-build-testing / generate-build-info (push) Skipped
This commit is contained in:
@@ -1 +0,0 @@
|
|||||||
gitea.fithwum.tech/fithwum/debian-base@sha256:6e9a0586293c4f349f59037b5f34ebc76f48a41de5ae8e06984e17404733dc93
|
|
||||||
@@ -1,21 +0,0 @@
|
|||||||
# - name: Compare with stored digest
|
|
||||||
# id: compare_digest
|
|
||||||
# run: |
|
|
||||||
# CURRENT_DIGEST="${{ steps.get_digest.outputs.digest }}"
|
|
||||||
# LAST_DIGEST="$(cat ${{ env.DIGEST_FILE }} 2>/dev/null || echo '')"
|
|
||||||
# if [ "$CURRENT_DIGEST" = "$LAST_DIGEST" ]; then
|
|
||||||
# echo "changed=false" >> $GITHUB_OUTPUT
|
|
||||||
# else
|
|
||||||
# echo "$CURRENT_DIGEST" > ${{ env.DIGEST_FILE }}
|
|
||||||
# git config user.name "${{ secrets.GIT_USERNAME }}"
|
|
||||||
# git config user.email "${{ secrets.GIT_EMAIL }}"
|
|
||||||
# git add ${{ env.DIGEST_FILE }}
|
|
||||||
# git commit -m "Update base digest to $CURRENT_DIGEST" || true
|
|
||||||
# # Try to rebase onto latest remote
|
|
||||||
# git pull --rebase || {
|
|
||||||
# echo "[ERROR] Rebase failed — aborting."
|
|
||||||
# exit 1
|
|
||||||
# }
|
|
||||||
# git push
|
|
||||||
# echo "changed=true" >> $GITHUB_OUTPUT
|
|
||||||
# fi
|
|
||||||
@@ -38,11 +38,10 @@ jobs:
|
|||||||
echo "[INFO] Pruning Docker images on ${{ matrix.runner }}..."
|
echo "[INFO] Pruning Docker images on ${{ matrix.runner }}..."
|
||||||
docker image prune -a -f || true
|
docker image prune -a -f || true
|
||||||
|
|
||||||
poll-debian-base-and-detect-changes:
|
poll-and-detect-changes:
|
||||||
runs-on: vm-docker-build2
|
runs-on: vm-docker-build2
|
||||||
needs: docker-prune
|
needs: docker-prune
|
||||||
outputs:
|
outputs:
|
||||||
digest_changed: ${{ steps.compare_digest.outputs.changed }}
|
|
||||||
versions_changed: ${{ steps.check_changed_versions.outputs.versions_changed }}
|
versions_changed: ${{ steps.check_changed_versions.outputs.versions_changed }}
|
||||||
new_versions: ${{ steps.check_new_versions.outputs.new_versions }}
|
new_versions: ${{ steps.check_new_versions.outputs.new_versions }}
|
||||||
steps:
|
steps:
|
||||||
@@ -51,57 +50,9 @@ jobs:
|
|||||||
with:
|
with:
|
||||||
fetch-depth: 0
|
fetch-depth: 0
|
||||||
|
|
||||||
- name: Ensure .cache exists
|
|
||||||
run: mkdir -p .cache && touch .cache/.gitkeep
|
|
||||||
|
|
||||||
- name: Log in to Gitea Registry
|
- name: Log in to Gitea Registry
|
||||||
run: echo "${{ secrets.DOCKER_PASSWORD }}" | docker login gitea.fithwum.tech -u "${{ secrets.DOCKER_USERNAME }}" --password-stdin
|
run: echo "${{ secrets.DOCKER_PASSWORD }}" | docker login gitea.fithwum.tech -u "${{ secrets.DOCKER_USERNAME }}" --password-stdin
|
||||||
|
|
||||||
- name: Get current digest of debian-base image
|
|
||||||
id: get_digest
|
|
||||||
run: |
|
|
||||||
IMAGE="${{ env.IMAGE_REGISTRY }}/${{ env.IMAGE_ORG }}/${{ env.IMAGE_REPO_DEBIAN }}:${{ env.IMAGE_TAG_DEBIAN }}"
|
|
||||||
docker pull "$IMAGE" > /dev/null
|
|
||||||
DIGEST=$(docker inspect --format='{{index .RepoDigests 0}}' "$IMAGE")
|
|
||||||
echo "digest=$DIGEST" >> $GITHUB_OUTPUT
|
|
||||||
echo "$DIGEST" > .cache/debian-base.digest.new
|
|
||||||
|
|
||||||
- name: Compare with stored digest
|
|
||||||
id: compare_digest
|
|
||||||
run: |
|
|
||||||
CURRENT_DIGEST="${{ steps.get_digest.outputs.digest }}"
|
|
||||||
LAST_DIGEST="$(cat ${{ env.DIGEST_FILE }} 2>/dev/null || echo '')"
|
|
||||||
|
|
||||||
if [ "$CURRENT_DIGEST" = "$LAST_DIGEST" ]; then
|
|
||||||
echo "[INFO] Digest unchanged"
|
|
||||||
echo "changed=false" >> $GITHUB_OUTPUT
|
|
||||||
exit 0
|
|
||||||
fi
|
|
||||||
|
|
||||||
echo "[INFO] Digest changed → updating cache"
|
|
||||||
echo "$CURRENT_DIGEST" > ${{ env.DIGEST_FILE }}
|
|
||||||
|
|
||||||
git config user.name "${{ secrets.GIT_USERNAME }}"
|
|
||||||
git config user.email "${{ secrets.GIT_EMAIL }}"
|
|
||||||
|
|
||||||
git add ${{ env.DIGEST_FILE }}
|
|
||||||
git commit -m "Update base digest to $CURRENT_DIGEST" || true
|
|
||||||
|
|
||||||
# --- Safe rebase with auto conflict resolution ---
|
|
||||||
git fetch origin master
|
|
||||||
if ! git rebase --strategy-option=theirs origin/master; then
|
|
||||||
echo "[WARN] Rebase conflict, auto-resolving by preferring local digest"
|
|
||||||
git rebase --abort
|
|
||||||
git fetch origin master
|
|
||||||
git reset --hard origin/master
|
|
||||||
echo "$CURRENT_DIGEST" > ${{ env.DIGEST_FILE }}
|
|
||||||
git add ${{ env.DIGEST_FILE }}
|
|
||||||
git commit -m "Force-update base digest to $CURRENT_DIGEST (auto-resolved)"
|
|
||||||
fi
|
|
||||||
|
|
||||||
git push origin HEAD:master
|
|
||||||
echo "changed=true" >> $GITHUB_OUTPUT
|
|
||||||
|
|
||||||
- name: Detect changed Minecraft versions
|
- name: Detect changed Minecraft versions
|
||||||
id: check_changed_versions
|
id: check_changed_versions
|
||||||
run: |
|
run: |
|
||||||
@@ -137,11 +88,10 @@ jobs:
|
|||||||
runs-on: vm-docker-build2
|
runs-on: vm-docker-build2
|
||||||
needs:
|
needs:
|
||||||
- docker-prune
|
- docker-prune
|
||||||
- poll-debian-base-and-detect-changes
|
- poll-and-detect-changes
|
||||||
if: |
|
if: |
|
||||||
needs.poll-debian-base-and-detect-changes.outputs.digest_changed == 'true' ||
|
needs.poll-and-detect-changes.outputs.versions_changed != '' ||
|
||||||
needs.poll-debian-base-and-detect-changes.outputs.versions_changed != '' ||
|
needs.poll-and-detect-changes.outputs.new_versions != ''
|
||||||
needs.poll-debian-base-and-detect-changes.outputs.new_versions != ''
|
|
||||||
strategy:
|
strategy:
|
||||||
matrix:
|
matrix:
|
||||||
version: [minecraft]
|
version: [minecraft]
|
||||||
|
|||||||
@@ -38,11 +38,10 @@ jobs:
|
|||||||
echo "[INFO] Pruning Docker images on ${{ matrix.runner }}..."
|
echo "[INFO] Pruning Docker images on ${{ matrix.runner }}..."
|
||||||
docker image prune -a -f || true
|
docker image prune -a -f || true
|
||||||
|
|
||||||
poll-debian-base-and-detect-changes:
|
poll-and-detect-changes:
|
||||||
runs-on: vm-docker-build2
|
runs-on: vm-docker-build2
|
||||||
needs: docker-prune
|
needs: docker-prune
|
||||||
outputs:
|
outputs:
|
||||||
digest_changed: ${{ steps.compare_digest.outputs.changed }}
|
|
||||||
versions_changed: ${{ steps.check_changed_versions.outputs.versions_changed }}
|
versions_changed: ${{ steps.check_changed_versions.outputs.versions_changed }}
|
||||||
new_versions: ${{ steps.check_new_versions.outputs.new_versions }}
|
new_versions: ${{ steps.check_new_versions.outputs.new_versions }}
|
||||||
steps:
|
steps:
|
||||||
@@ -51,57 +50,9 @@ jobs:
|
|||||||
with:
|
with:
|
||||||
fetch-depth: 0
|
fetch-depth: 0
|
||||||
|
|
||||||
- name: Ensure .cache exists
|
|
||||||
run: mkdir -p .cache && touch .cache/.gitkeep
|
|
||||||
|
|
||||||
- name: Log in to Gitea Registry
|
- name: Log in to Gitea Registry
|
||||||
run: echo "${{ secrets.DOCKER_PASSWORD }}" | docker login gitea.fithwum.tech -u "${{ secrets.DOCKER_USERNAME }}" --password-stdin
|
run: echo "${{ secrets.DOCKER_PASSWORD }}" | docker login gitea.fithwum.tech -u "${{ secrets.DOCKER_USERNAME }}" --password-stdin
|
||||||
|
|
||||||
- name: Get current digest of debian-base image
|
|
||||||
id: get_digest
|
|
||||||
run: |
|
|
||||||
IMAGE="${{ env.IMAGE_REGISTRY }}/${{ env.IMAGE_ORG }}/${{ env.IMAGE_REPO_DEBIAN }}:${{ env.IMAGE_TAG_DEBIAN }}"
|
|
||||||
docker pull "$IMAGE" > /dev/null
|
|
||||||
DIGEST=$(docker inspect --format='{{index .RepoDigests 0}}' "$IMAGE")
|
|
||||||
echo "digest=$DIGEST" >> $GITHUB_OUTPUT
|
|
||||||
echo "$DIGEST" > .cache/debian-base.digest.new
|
|
||||||
|
|
||||||
- name: Compare with stored digest
|
|
||||||
id: compare_digest
|
|
||||||
run: |
|
|
||||||
CURRENT_DIGEST="${{ steps.get_digest.outputs.digest }}"
|
|
||||||
LAST_DIGEST="$(cat ${{ env.DIGEST_FILE }} 2>/dev/null || echo '')"
|
|
||||||
|
|
||||||
if [ "$CURRENT_DIGEST" = "$LAST_DIGEST" ]; then
|
|
||||||
echo "[INFO] Digest unchanged"
|
|
||||||
echo "changed=false" >> $GITHUB_OUTPUT
|
|
||||||
exit 0
|
|
||||||
fi
|
|
||||||
|
|
||||||
echo "[INFO] Digest changed → updating cache"
|
|
||||||
echo "$CURRENT_DIGEST" > ${{ env.DIGEST_FILE }}
|
|
||||||
|
|
||||||
git config user.name "${{ secrets.GIT_USERNAME }}"
|
|
||||||
git config user.email "${{ secrets.GIT_EMAIL }}"
|
|
||||||
|
|
||||||
git add ${{ env.DIGEST_FILE }}
|
|
||||||
git commit -m "Update base digest to $CURRENT_DIGEST" || true
|
|
||||||
|
|
||||||
# --- Safe rebase with auto conflict resolution ---
|
|
||||||
git fetch origin master
|
|
||||||
if ! git rebase --strategy-option=theirs origin/master; then
|
|
||||||
echo "[WARN] Rebase conflict, auto-resolving by preferring local digest"
|
|
||||||
git rebase --abort
|
|
||||||
git fetch origin master
|
|
||||||
git reset --hard origin/master
|
|
||||||
echo "$CURRENT_DIGEST" > ${{ env.DIGEST_FILE }}
|
|
||||||
git add ${{ env.DIGEST_FILE }}
|
|
||||||
git commit -m "Force-update base digest to $CURRENT_DIGEST (auto-resolved)"
|
|
||||||
fi
|
|
||||||
|
|
||||||
git push origin HEAD:master
|
|
||||||
echo "changed=true" >> $GITHUB_OUTPUT
|
|
||||||
|
|
||||||
- name: Detect changed Minecraft versions
|
- name: Detect changed Minecraft versions
|
||||||
id: check_changed_versions
|
id: check_changed_versions
|
||||||
run: |
|
run: |
|
||||||
@@ -137,11 +88,10 @@ jobs:
|
|||||||
runs-on: vm-docker-build2
|
runs-on: vm-docker-build2
|
||||||
needs:
|
needs:
|
||||||
- docker-prune
|
- docker-prune
|
||||||
- poll-debian-base-and-detect-changes
|
- poll-and-detect-changes
|
||||||
if: |
|
if: |
|
||||||
needs.poll-debian-base-and-detect-changes.outputs.digest_changed == 'true' ||
|
needs.poll-and-detect-changes.outputs.versions_changed != '' ||
|
||||||
needs.poll-debian-base-and-detect-changes.outputs.versions_changed != '' ||
|
needs.poll-and-detect-changes.outputs.new_versions != ''
|
||||||
needs.poll-debian-base-and-detect-changes.outputs.new_versions != ''
|
|
||||||
strategy:
|
strategy:
|
||||||
matrix:
|
matrix:
|
||||||
version: [testing]
|
version: [testing]
|
||||||
|
|||||||
Reference in New Issue
Block a user