Skip to content

Commit b715e86

Browse files
committed
another try
1 parent b7bc263 commit b715e86

File tree

2 files changed

+50
-56
lines changed

2 files changed

+50
-56
lines changed

.github/workflows/release-combined.yml

Lines changed: 49 additions & 56 deletions
Original file line numberDiff line numberDiff line change
@@ -446,64 +446,57 @@ jobs:
446446
WEB_TAG="${{ needs.validate-and-prepare.outputs.web_tag }}"
447447
GITHUB_REPOSITORY="${{ steps.repo.outputs.name }}"
448448
449-
# Use provided notes or changelog content
449+
# Create basic release notes without changelog content for now to avoid shell interpretation issues
450+
echo "# RAFT Toolkit v${VERSION} - Combined Release" > release_notes.md
451+
echo "" >> release_notes.md
452+
echo "This is a combined release that includes both CLI and Web components of RAFT Toolkit." >> release_notes.md
453+
echo "" >> release_notes.md
454+
echo "## What is Included" >> release_notes.md
455+
echo "" >> release_notes.md
456+
echo "### CLI Component" >> release_notes.md
457+
echo "- **Tag**: \`${CLI_TAG}\`" >> release_notes.md
458+
echo "- **Docker Image**: \`ghcr.io/${GITHUB_REPOSITORY}:${CLI_TAG}\`" >> release_notes.md
459+
echo "- **PyPI Package**: \`pip install raft-toolkit==${VERSION}\`" >> release_notes.md
460+
echo "" >> release_notes.md
461+
echo "### Web Component" >> release_notes.md
462+
echo "- **Tag**: \`${WEB_TAG}\`" >> release_notes.md
463+
echo "- **Docker Image**: \`ghcr.io/${GITHUB_REPOSITORY}:${WEB_TAG}\`" >> release_notes.md
464+
echo "- **PyPI Package**: \`pip install raft-toolkit[web]==${VERSION}\`" >> release_notes.md
465+
echo "" >> release_notes.md
466+
echo "## Installation Options" >> release_notes.md
467+
echo "" >> release_notes.md
468+
echo "### CLI Usage" >> release_notes.md
469+
echo "\`\`\`bash" >> release_notes.md
470+
echo "# Install from PyPI" >> release_notes.md
471+
echo "pip install raft-toolkit==${VERSION}" >> release_notes.md
472+
echo "" >> release_notes.md
473+
echo "# Run with Docker" >> release_notes.md
474+
echo "docker run ghcr.io/${GITHUB_REPOSITORY}:${CLI_TAG} --help" >> release_notes.md
475+
echo "\`\`\`" >> release_notes.md
476+
echo "" >> release_notes.md
477+
echo "### Web Application" >> release_notes.md
478+
echo "\`\`\`bash" >> release_notes.md
479+
echo "# Install with web dependencies" >> release_notes.md
480+
echo "pip install raft-toolkit[web]==${VERSION}" >> release_notes.md
481+
echo "" >> release_notes.md
482+
echo "# Run web server" >> release_notes.md
483+
echo "python -m raft_toolkit.web.app" >> release_notes.md
484+
echo "" >> release_notes.md
485+
echo "# Run with Docker" >> release_notes.md
486+
echo "docker run -p 8000:8000 ghcr.io/${GITHUB_REPOSITORY}:${WEB_TAG}" >> release_notes.md
487+
echo "\`\`\`" >> release_notes.md
488+
echo "" >> release_notes.md
489+
echo "Generated with Claude Code" >> release_notes.md
490+
echo "" >> release_notes.md
491+
echo "Co-Authored-By: Claude <[email protected]>" >> release_notes.md
492+
493+
# Add custom release notes or changelog content if provided
450494
if [ -n "${{ github.event.inputs.release_notes }}" ]; then
451-
RELEASE_NOTES="${{ github.event.inputs.release_notes }}"
452-
elif [ -n "${{ needs.validate-and-prepare.outputs.changelog_content }}" ]; then
453-
RELEASE_NOTES="${{ needs.validate-and-prepare.outputs.changelog_content }}"
454-
else
455-
RELEASE_NOTES="Combined release of RAFT Toolkit CLI and Web components."
495+
echo "" >> release_notes.md
496+
echo "## Release Notes" >> release_notes.md
497+
echo "" >> release_notes.md
498+
echo "${{ github.event.inputs.release_notes }}" >> release_notes.md
456499
fi
457-
458-
# Create comprehensive release notes
459-
{
460-
echo "# RAFT Toolkit v${VERSION} - Combined Release"
461-
echo ""
462-
echo "This is a combined release that includes both CLI and Web components of RAFT Toolkit."
463-
echo ""
464-
echo "## What is Included"
465-
echo ""
466-
echo "### CLI Component"
467-
echo "- **Tag**: \`${CLI_TAG}\`"
468-
echo "- **Docker Image**: \`ghcr.io/${GITHUB_REPOSITORY}:${CLI_TAG}\`"
469-
echo "- **PyPI Package**: \`pip install raft-toolkit==${VERSION}\`"
470-
echo ""
471-
echo "### Web Component"
472-
echo "- **Tag**: \`${WEB_TAG}\`"
473-
echo "- **Docker Image**: \`ghcr.io/${GITHUB_REPOSITORY}:${WEB_TAG}\`"
474-
echo "- **PyPI Package**: \`pip install raft-toolkit[web]==${VERSION}\`"
475-
echo ""
476-
echo "## Release Notes"
477-
echo ""
478-
echo "${RELEASE_NOTES}"
479-
echo ""
480-
echo "## Installation Options"
481-
echo ""
482-
echo "### CLI Usage"
483-
echo "\`\`\`bash"
484-
echo "# Install from PyPI"
485-
echo "pip install raft-toolkit==${VERSION}"
486-
echo ""
487-
echo "# Run with Docker"
488-
echo "docker run ghcr.io/${GITHUB_REPOSITORY}:${CLI_TAG} --help"
489-
echo "\`\`\`"
490-
echo ""
491-
echo "### Web Application"
492-
echo "\`\`\`bash"
493-
echo "# Install with web dependencies"
494-
echo "pip install raft-toolkit[web]==${VERSION}"
495-
echo ""
496-
echo "# Run web server"
497-
echo "python -m raft_toolkit.web.app"
498-
echo ""
499-
echo "# Run with Docker"
500-
echo "docker run -p 8000:8000 ghcr.io/${GITHUB_REPOSITORY}:${WEB_TAG}"
501-
echo "\`\`\`"
502-
echo ""
503-
echo "Generated with Claude Code"
504-
echo ""
505-
echo "Co-Authored-By: Claude <[email protected]>"
506-
} > release_notes.md
507500
508501
- name: Create GitHub Release
509502
uses: softprops/action-gh-release@v2

CHANGELOG.md

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -87,6 +87,7 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
8787
- **Impact**: Release workflow failed with "syntax error near unexpected token newline" during shell script generation
8888
- **Solution**: Replaced complex shell HEREDOC constructs with simpler `cat > file << 'EOL'` syntax and removed problematic environment reference
8989
- **Additional Fix**: Fixed changelog content extraction to use temporary files instead of command substitution to prevent shell interpretation of special characters (`<version>`, angle brackets, etc.)
90+
- **Final Fix**: Completely rewrote release notes generation to use simple `echo` commands instead of complex shell constructs to eliminate all YAML/shell parsing conflicts
9091
- **Result**: Release workflow YAML now parses correctly without shell script generation errors
9192
- **LocalInputSource Path Resolution**: Fixed critical macOS path resolution issue causing test failures
9293
- **Root Cause**: macOS temp directories resolve inconsistently between `/var/folders/` and `/private/var/folders/` prefixes

0 commit comments

Comments
 (0)