diff --git a/.github/workflows/build-and-release.yml b/.github/workflows/build-and-release.yml index 6b1cbfb74..1a01b60ea 100644 --- a/.github/workflows/build-and-release.yml +++ b/.github/workflows/build-and-release.yml @@ -388,3 +388,12 @@ jobs: releaseDraft: false prerelease: false args: ${{ matrix.args }} + + publish-stable-downloads: + needs: publish-tauri + permissions: + contents: write + uses: ./.github/workflows/publish-stable-downloads.yml + with: + release-tag: ${{ github.event.release.tag_name || github.event.inputs.tag }} + diff --git a/.github/workflows/publish-stable-downloads.yml b/.github/workflows/publish-stable-downloads.yml new file mode 100644 index 000000000..d4c222913 --- /dev/null +++ b/.github/workflows/publish-stable-downloads.yml @@ -0,0 +1,48 @@ +name: Publish Stable Installer Downloads + +on: + workflow_call: + inputs: + release-tag: + required: true + type: string + workflow_dispatch: + inputs: + release-tag: + description: Release tag to add stable installer assets to + required: true + type: string + +permissions: + contents: write + +jobs: + publish: + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@v4 + + - name: Publish stable installer asset names + env: + GH_TOKEN: ${{ github.token }} + RELEASE_TAG: ${{ inputs.release-tag }} + run: | + VERSION="${RELEASE_TAG#v}" + MANIFEST_VERSION="$(sed -n 's/^version = "\(.*\)"/\1/p' frontend/src-tauri/Cargo.toml | head -n 1)" + if [ "$VERSION" != "$MANIFEST_VERSION" ]; then + echo "Error: release tag version $VERSION does not match manifest version $MANIFEST_VERSION" + exit 1 + fi + mkdir stable-downloads + gh release download "$RELEASE_TAG" \ + --repo "$GITHUB_REPOSITORY" \ + --pattern "PictoPy_${VERSION}_x64-setup.exe" \ + --pattern "PictoPy_${VERSION}_amd64.deb" \ + --dir stable-downloads + cp "stable-downloads/PictoPy_${VERSION}_x64-setup.exe" PictoPy-Windows-Setup.exe + cp "stable-downloads/PictoPy_${VERSION}_amd64.deb" PictoPy-Debian-amd64.deb + gh release upload "$RELEASE_TAG" \ + --repo "$GITHUB_REPOSITORY" \ + PictoPy-Windows-Setup.exe \ + PictoPy-Debian-amd64.deb \ + --clobber \ No newline at end of file diff --git a/README.md b/README.md index 00302a5c5..95787e1c2 100644 --- a/README.md +++ b/README.md @@ -35,11 +35,11 @@

Download:    - Windows download button + Windows download button    macOS download button    - Debian download button + Debian download button    GitHub Releases button