Skip to content

chore: sync beads issue tracker export #8

chore: sync beads issue tracker export

chore: sync beads issue tracker export #8

Workflow file for this run

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