-
Notifications
You must be signed in to change notification settings - Fork 1
Open
Labels
enhancementNew feature or requestNew feature or request
Description
Context
Part of the gh-gcs epic (#93).
fulll/gh-gcs needs a release workflow that downloads the pre-compiled binaries from a fulll/github-code-search release, renames them to match the gh extension naming convention, and publishes a new release.
Goal
Create .github/workflows/release.yml in fulll/gh-gcs with the following logic:
Trigger
on:
repository_dispatch:
types: [new-release]
workflow_dispatch:
inputs:
version:
description: "Version tag (e.g. v1.8.1)"
required: trueSteps
- Determine the version (
github.event.client_payload.versionorinputs.version) - Download all binaries from
fulll/github-code-search@<version>usinggh release download - Rename each asset according to the mapping:
| Downloaded | Renamed to |
|---|---|
github-code-search-linux-x64 |
gh-gcs-linux-amd64 |
github-code-search-linux-arm64 |
gh-gcs-linux-arm64 |
github-code-search-macos-x64 |
gh-gcs-darwin-amd64 |
github-code-search-macos-arm64 |
gh-gcs-darwin-arm64 |
github-code-search-windows-x64.exe |
gh-gcs-windows-amd64.exe |
- Create a release
<version>infulll/gh-gcswithgh release createand attach all renamed binaries - Use
generate_release_notes: falseand copy the body from the source release
Permissions required
GH_TOKENwithcontents: writeonfulll/gh-gcs- Read access to
fulll/github-code-searchreleases (public repo, no extra token needed)
Acceptance criteria
- Workflow can be triggered manually (
workflow_dispatch) for any existing version - Renamed binaries follow the
gh-gcs-<os>-<arch>convention exactly -
gh extension install fulll/gh-gcsresolves and installs the correct binary on each supported platform -
gh extension upgrade gh-gcspicks up the new release
Reactions are currently unavailable
Metadata
Metadata
Assignees
Labels
enhancementNew feature or requestNew feature or request