From 95c2cf3934189ad9551ad7c9216871864155bfc2 Mon Sep 17 00:00:00 2001 From: Talha Date: Fri, 31 Jul 2026 10:21:47 +0500 Subject: [PATCH] fix(release): resolve repository in finalizers --- .github/workflows/publish-desktop.yml | 15 ++++++++++++--- .github/workflows/release-to-pypi.yml | 9 +++++++-- .github/workflows/release-to-test-pypi.yml | 5 ++++- tests/test_packaging.py | 15 +++++++++++++++ 4 files changed, 38 insertions(+), 6 deletions(-) diff --git a/.github/workflows/publish-desktop.yml b/.github/workflows/publish-desktop.yml index 1ef287a..2fd0baa 100644 --- a/.github/workflows/publish-desktop.yml +++ b/.github/workflows/publish-desktop.yml @@ -112,11 +112,19 @@ jobs: run: | tag="${{ inputs.tag }}" version="${tag#desktop-v}" - gh release upload "$tag" desktop-dist/* --clobber + gh release upload "$tag" desktop-dist/* \ + --repo "$GITHUB_REPOSITORY" \ + --clobber if [[ "$version" == *-* ]]; then - gh release edit "$tag" --draft=false --prerelease + gh release edit "$tag" \ + --repo "$GITHUB_REPOSITORY" \ + --draft=false \ + --prerelease else - gh release edit "$tag" --draft=false --latest + gh release edit "$tag" \ + --repo "$GITHUB_REPOSITORY" \ + --draft=false \ + --latest fi - name: Synchronize stable source back to main @@ -125,5 +133,6 @@ jobs: GH_TOKEN: ${{ secrets.GITHUB_TOKEN }} run: | gh workflow run sync-channels.yml \ + --repo "$GITHUB_REPOSITORY" \ --ref main \ -f release_sha="${{ needs.verify.outputs.source_sha }}" diff --git a/.github/workflows/release-to-pypi.yml b/.github/workflows/release-to-pypi.yml index 5a3688f..cf54687 100644 --- a/.github/workflows/release-to-pypi.yml +++ b/.github/workflows/release-to-pypi.yml @@ -161,13 +161,18 @@ jobs: GH_TOKEN: ${{ secrets.GITHUB_TOKEN }} shell: bash run: | - gh release upload "${{ inputs.tag }}" dist/* --clobber - gh release edit "${{ inputs.tag }}" --draft=false + gh release upload "${{ inputs.tag }}" dist/* \ + --repo "$GITHUB_REPOSITORY" \ + --clobber + gh release edit "${{ inputs.tag }}" \ + --repo "$GITHUB_REPOSITORY" \ + --draft=false - name: Synchronize stable source back to main env: GH_TOKEN: ${{ secrets.GITHUB_TOKEN }} run: | gh workflow run sync-channels.yml \ + --repo "$GITHUB_REPOSITORY" \ --ref main \ -f release_sha="${{ needs.build.outputs.source_sha }}" diff --git a/.github/workflows/release-to-test-pypi.yml b/.github/workflows/release-to-test-pypi.yml index de2f463..c9d0529 100644 --- a/.github/workflows/release-to-test-pypi.yml +++ b/.github/workflows/release-to-test-pypi.yml @@ -144,7 +144,10 @@ jobs: GH_TOKEN: ${{ secrets.GITHUB_TOKEN }} shell: bash run: | - gh release upload "${{ inputs.tag }}" dist/* --clobber + gh release upload "${{ inputs.tag }}" dist/* \ + --repo "$GITHUB_REPOSITORY" \ + --clobber gh release edit "${{ inputs.tag }}" \ + --repo "$GITHUB_REPOSITORY" \ --draft=false \ --prerelease diff --git a/tests/test_packaging.py b/tests/test_packaging.py index 9090c21..bdc4c9f 100644 --- a/tests/test_packaging.py +++ b/tests/test_packaging.py @@ -435,6 +435,21 @@ def test_release_please_preserves_desktop_manifests_and_links_versions(self): release_workflow, ) + publisher_repo_flags = { + "release-to-test-pypi.yml": 2, + "release-to-pypi.yml": 3, + "publish-desktop.yml": 4, + } + for workflow, expected in publisher_repo_flags.items(): + contents = ( + ROOT / ".github" / "workflows" / workflow + ).read_text(encoding="utf-8") + self.assertEqual( + contents.count('--repo "$GITHUB_REPOSITORY"'), + expected, + workflow, + ) + desktop_publish = ( ROOT / ".github" / "workflows" / "publish-desktop.yml" ).read_text(encoding="utf-8")