From 2a78dba95b9b54690776b8b4e957158f6fcd2cc7 Mon Sep 17 00:00:00 2001 From: Earl Warren Date: Wed, 13 Nov 2024 12:30:25 +0100 Subject: [PATCH] chore(ci): trigger a mirror when a release is publish Notify https://code.forgejo.org/forgejo/forgejo that a new release was published by setting the trigger label to https://code.forgejo.org/forgejo/forgejo/issues/5. It is only ever useful when a stable release is published, the experimental releases are not mirrored. But it is triggered in all cases. This will waste a few mirror check daily, when experimental releases are built. This is an improvement compared to the current situation where mirrors are checked hourly: * Instead of being checked 24 times per day it will be down to less than 5 * The mirror happens immediately after the release is published instead of waiting for the next run of the cron job. If a mirror operation is in progress, as evidenced by the presence of the trigger label on the issure, it means two releases are being published. Wait up to 1h for the mirror to complete and remove the trigger label. (cherry picked from commit 74923307218903df2d09331e9b104dd109c65cec) --- .forgejo/workflows/publish-release.yml | 18 ++++++++++++++++++ 1 file changed, 18 insertions(+) diff --git a/.forgejo/workflows/publish-release.yml b/.forgejo/workflows/publish-release.yml index bfb842e483..8b78446048 100644 --- a/.forgejo/workflows/publish-release.yml +++ b/.forgejo/workflows/publish-release.yml @@ -59,6 +59,24 @@ jobs: gpg-passphrase: ${{ secrets.GPG_PASSPHRASE }} verbose: ${{ vars.VERBOSE }} + - name: get trigger mirror issue + id: mirror + uses: https://code.forgejo.org/infrastructure/issue-action/get@v1.1.0 + with: + forgejo: https://code.forgejo.org + repository: forgejo/forgejo + labels: mirror-trigger + + - name: trigger the mirror + uses: https://code.forgejo.org/infrastructure/issue-action/set@v1.1.0 + with: + forgejo: https://code.forgejo.org + repository: forgejo/forgejo + token: ${{ secrets.LABEL_ISSUE_FORGEJO_MIRROR_TOKEN }} + numbers: ${{ steps.mirror.outputs.numbers }} + label-wait-if-exists: 3600 + label: trigger + - name: upgrade v*.next.forgejo.org uses: https://code.forgejo.org/infrastructure/next-digest@v1.1.0 with: