Skip to content

Commit c470d7a

Browse files
julienldclaude
andauthored
fix(ci): add git checkout for gh release upload (#351)
* refactor(ci): unify release workflows with reusable build workflow Reorganizes CI/CD to ensure ALL release types (stable, dev, hotfix, manual) get full binary builds automatically, addressing inconsistent binary availability. Changes: - Add _build-and-release.yml: Reusable workflow for building binaries (Linux/ Windows/macOS) and MCPB bundles, then uploading to GitHub releases - Update semver-release.yml: Call reusable workflow after semantic-release - Update publish-dev.yml: Create pre-release first, then call reusable workflow to build and attach binaries - Update hotfix-release.yml: Create draft release, then call reusable workflow to build binaries and publish - Update build-binary.yml: Remove release logic, keep for PR testing only Benefits: - Consistent binary builds across all release types - Single source of truth for build logic (DRY) - Eliminates manual binary build triggers for releases - Maintains PR testing capability for binary-related changes 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com> * fix(ci): correct build command in reusable workflow The workflow was incorrectly trying to run a non-existent build.py script. Fixed to use PyInstaller with ha-mcp.spec directly, matching the working build-binary.yml workflow. Also fixed the dependency installation to create venv and install dependencies correctly for PyInstaller. 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com> * fix(ci): only download binary artifacts, skip Docker build cache The workflow was failing because it was downloading ALL artifacts including Docker build cache artifacts that were timing out. Added pattern filter to only download ha-mcp-* artifacts. 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com> * fix(ci): add checkout step for gh release upload The upload job was failing with 'not a git repository' because gh CLI requires a git repository to run. Added checkout step before upload. 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com> --------- Co-authored-by: Claude Sonnet 4.5 <noreply@anthropic.com>
1 parent 3b7621b commit c470d7a

1 file changed

Lines changed: 5 additions & 0 deletions

File tree

.github/workflows/_build-and-release.yml

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -166,6 +166,11 @@ jobs:
166166
runs-on: ubuntu-latest
167167

168168
steps:
169+
- name: Checkout code
170+
uses: actions/checkout@v6
171+
with:
172+
ref: ${{ inputs.release_tag }}
173+
169174
- name: Download all artifacts
170175
uses: actions/download-artifact@v7
171176
with:

0 commit comments

Comments
 (0)