chore: sync beads issue tracker export #8
Workflow file for this run
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| name: Tagged Release | |
| on: | |
| push: | |
| tags: | |
| - 'v*.*.*' | |
| permissions: | |
| contents: write | |
| id-token: write | |
| jobs: | |
| build-windows-ds4: | |
| name: Build Windows Plugin (DS4) | |
| uses: ./.github/workflows/build-windows.yml | |
| with: | |
| configuration: Release | |
| sdk-version: '4' | |
| secrets: | |
| sdk-repo-token: ${{ secrets.SDK_REPO_TOKEN }} | |
| build-windows-ds6: | |
| name: Build Windows Plugin (DS6) | |
| uses: ./.github/workflows/build-windows.yml | |
| with: | |
| configuration: Release | |
| sdk-version: '6' | |
| secrets: | |
| sdk-repo-token: ${{ secrets.SDK_REPO_TOKEN }} | |
| build-macos-intel-ds4: | |
| name: Build macOS Intel Plugin (DS4) | |
| uses: ./.github/workflows/build-macos.yml | |
| with: | |
| architecture: x86_64 | |
| configuration: Release | |
| sdk-version: '4' | |
| secrets: | |
| sdk-repo-token: ${{ secrets.SDK_REPO_TOKEN }} | |
| build-macos-arm-ds4: | |
| name: Build macOS Apple Silicon Plugin (DS4) | |
| uses: ./.github/workflows/build-macos.yml | |
| with: | |
| architecture: arm64 | |
| configuration: Release | |
| sdk-version: '4' | |
| secrets: | |
| sdk-repo-token: ${{ secrets.SDK_REPO_TOKEN }} | |
| build-macos-intel-ds6: | |
| name: Build macOS Intel Plugin (DS6) | |
| uses: ./.github/workflows/build-macos.yml | |
| with: | |
| architecture: x86_64 | |
| configuration: Release | |
| sdk-version: '6' | |
| secrets: | |
| sdk-repo-token: ${{ secrets.SDK_REPO_TOKEN }} | |
| build-macos-arm-ds6: | |
| name: Build macOS Apple Silicon Plugin (DS6) | |
| uses: ./.github/workflows/build-macos.yml | |
| with: | |
| architecture: arm64 | |
| configuration: Release | |
| sdk-version: '6' | |
| secrets: | |
| sdk-repo-token: ${{ secrets.SDK_REPO_TOKEN }} | |
| build-dazpy: | |
| name: Build dazpy Wheel | |
| uses: ./.github/workflows/build-dazpy.yml | |
| publish-pypi: | |
| name: Publish dazpy to PyPI | |
| needs: build-dazpy | |
| runs-on: ubuntu-latest | |
| steps: | |
| - name: Download dazpy dist artifact | |
| uses: actions/download-artifact@v4 | |
| with: | |
| name: dazpy-dist | |
| path: dist/ | |
| - name: Publish to PyPI | |
| uses: pypa/gh-action-pypi-publish@release/v1 | |
| with: | |
| skip-existing: true | |
| create-release: | |
| name: Create GitHub Release | |
| needs: | |
| - build-windows-ds4 | |
| - build-windows-ds6 | |
| - build-macos-intel-ds4 | |
| - build-macos-arm-ds4 | |
| - build-macos-intel-ds6 | |
| - build-macos-arm-ds6 | |
| - build-dazpy | |
| - publish-pypi | |
| runs-on: ubuntu-latest | |
| steps: | |
| - name: Checkout repository | |
| uses: actions/checkout@v4 | |
| with: | |
| fetch-depth: 0 | |
| - name: Get release tag | |
| id: tag | |
| run: echo "tag=${GITHUB_REF#refs/tags/}" >> $GITHUB_OUTPUT | |
| - name: Get previous tag | |
| id: prev-tag | |
| run: | | |
| PREV_TAG=$(git describe --tags --abbrev=0 ${{ steps.tag.outputs.tag }}^ 2>/dev/null || echo "") | |
| echo "prev-tag=$PREV_TAG" >> $GITHUB_OUTPUT | |
| if [ -z "$PREV_TAG" ]; then | |
| echo "No previous tag found, will include all commits" | |
| else | |
| echo "Previous tag: $PREV_TAG" | |
| fi | |
| - name: Generate commit summary | |
| id: commits | |
| run: | | |
| if [ -z "${{ steps.prev-tag.outputs.prev-tag }}" ]; then | |
| COMMITS=$(git log --oneline --no-decorate) | |
| else | |
| COMMITS=$(git log --oneline --no-decorate ${{ steps.prev-tag.outputs.prev-tag }}..${{ steps.tag.outputs.tag }}) | |
| fi | |
| # Save to a file to handle multiline output | |
| echo "$COMMITS" > commit_summary.txt | |
| # Create formatted release notes | |
| { | |
| echo "## Changes since ${{ steps.prev-tag.outputs.prev-tag || 'initial commit' }}" | |
| echo "" | |
| echo "\`\`\`" | |
| cat commit_summary.txt | |
| echo "\`\`\`" | |
| echo "" | |
| echo "## Built Artifacts" | |
| echo "" | |
| echo "### DAZ Studio 4.5+" | |
| echo "- **Windows:** \`DazScriptServer-ds4-windows.dll\`" | |
| echo "- **macOS Intel:** \`DazScriptServer-ds4-macos-Intel.dylib\`" | |
| echo "- **macOS Apple Silicon:** \`DazScriptServer-ds4-macos-AppleSilicon.dylib\`" | |
| echo "" | |
| echo "### Daz Studio 6.25+" | |
| echo "- **Windows:** \`dsp_DazScriptServer-ds6-windows.dll\`" | |
| echo "- **macOS Intel:** \`dsp_DazScriptServer-ds6-macos-Intel.dylib\`" | |
| echo "- **macOS Apple Silicon:** \`dsp_DazScriptServer-ds6-macos-AppleSilicon.dylib\`" | |
| echo "" | |
| echo "### Python" | |
| echo "- **Python Package:** \`dazpy-*.whl\`" | |
| } > release_notes.md | |
| - name: Download all artifacts | |
| uses: actions/download-artifact@v4 | |
| with: | |
| path: artifacts | |
| - name: Prepare release assets | |
| run: | | |
| mkdir -p release-assets | |
| # Windows DLLs | |
| cp artifacts/DazScriptServer-windows-ds4-Release/DazScriptServer.dll \ | |
| release-assets/DazScriptServer-ds4-windows.dll | |
| cp artifacts/DazScriptServer-windows-ds6-Release/dsp_DazScriptServer.dll \ | |
| release-assets/dsp_DazScriptServer-ds6-windows.dll | |
| # macOS dylibs | |
| cp artifacts/DazScriptServer-macos-Intel-ds4-Release/DazScriptServer.dylib \ | |
| release-assets/DazScriptServer-ds4-macos-Intel.dylib | |
| cp artifacts/DazScriptServer-macos-AppleSilicon-ds4-Release/DazScriptServer.dylib \ | |
| release-assets/DazScriptServer-ds4-macos-AppleSilicon.dylib | |
| cp artifacts/DazScriptServer-macos-Intel-ds6-Release/dsp_DazScriptServer.dylib \ | |
| release-assets/dsp_DazScriptServer-ds6-macos-Intel.dylib | |
| cp artifacts/DazScriptServer-macos-AppleSilicon-ds6-Release/dsp_DazScriptServer.dylib \ | |
| release-assets/dsp_DazScriptServer-ds6-macos-AppleSilicon.dylib | |
| # dazpy wheel | |
| cp artifacts/dazpy-dist/*.whl release-assets/ | |
| # List all files | |
| echo "Release assets:" | |
| ls -lh release-assets/ | |
| - name: Create GitHub Release | |
| uses: softprops/action-gh-release@v2 | |
| with: | |
| name: ${{ steps.tag.outputs.tag }} | |
| body_path: release_notes.md | |
| files: | | |
| release-assets/* | |
| draft: false | |
| prerelease: false | |
| generate_release_notes: false |