From 13fb400a7b0df9d5c8563d844804d944d6cbc025 Mon Sep 17 00:00:00 2001 From: Daniel Gibbs Date: Fri, 24 Apr 2026 21:10:33 +0000 Subject: [PATCH] fix(workflows): use timestamp filter to reliably identify triggered run ID Using --limit 1 to find the run ID is a race condition if another run of the same workflow starts concurrently. Capture a timestamp before dispatching and pass --created >=${before} to gh run list so we always select the run we just triggered. --- .github/workflows/trigger-docker-build.yml | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/.github/workflows/trigger-docker-build.yml b/.github/workflows/trigger-docker-build.yml index 32085914e..823592457 100644 --- a/.github/workflows/trigger-docker-build.yml +++ b/.github/workflows/trigger-docker-build.yml @@ -18,11 +18,13 @@ jobs: env: GH_TOKEN: ${{ secrets.PERSONAL_ACCESS_TOKEN }} run: | + before=$(date -u +%Y-%m-%dT%H:%M:%SZ) gh workflow run action-docker-publish.yml --repo GameServerManagers/docker-linuxgsm sleep 10 run_id=$(gh run list \ --workflow action-docker-publish.yml \ --repo GameServerManagers/docker-linuxgsm \ + --created ">=${before}" \ --limit 1 \ --json databaseId \ --jq '.[0].databaseId') @@ -40,11 +42,13 @@ jobs: env: GH_TOKEN: ${{ secrets.PERSONAL_ACCESS_TOKEN }} run: | + before=$(date -u +%Y-%m-%dT%H:%M:%SZ) gh workflow run action-docker-publish.yml --repo GameServerManagers/docker-gameserver sleep 10 run_id=$(gh run list \ --workflow action-docker-publish.yml \ --repo GameServerManagers/docker-gameserver \ + --created ">=${before}" \ --limit 1 \ --json databaseId \ --jq '.[0].databaseId')