feat(release): add GoReleaser config and Homebrew tap support
Enable `brew install multica-cli` via multica-ai/homebrew-tap. GoReleaser builds cross-platform binaries (macOS/Linux, amd64/arm64) and auto-updates the Homebrew formula on tagged releases. Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
This commit is contained in:
parent
daaee733bf
commit
2f54665833
2 changed files with 88 additions and 0 deletions
33
.github/workflows/release.yml
vendored
Normal file
33
.github/workflows/release.yml
vendored
Normal file
|
|
@ -0,0 +1,33 @@
|
|||
name: Release
|
||||
|
||||
on:
|
||||
push:
|
||||
tags:
|
||||
- "v*"
|
||||
|
||||
permissions:
|
||||
contents: write
|
||||
|
||||
jobs:
|
||||
release:
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
- name: Checkout
|
||||
uses: actions/checkout@v6
|
||||
with:
|
||||
fetch-depth: 0
|
||||
|
||||
- name: Setup Go
|
||||
uses: actions/setup-go@v5
|
||||
with:
|
||||
go-version: "1.24"
|
||||
cache-dependency-path: server/go.sum
|
||||
|
||||
- name: Run GoReleaser
|
||||
uses: goreleaser/goreleaser-action@v6
|
||||
with:
|
||||
version: "~> v2"
|
||||
args: release --clean
|
||||
env:
|
||||
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
|
||||
HOMEBREW_TAP_GITHUB_TOKEN: ${{ secrets.HOMEBREW_TAP_GITHUB_TOKEN }}
|
||||
55
.goreleaser.yml
Normal file
55
.goreleaser.yml
Normal file
|
|
@ -0,0 +1,55 @@
|
|||
version: 2
|
||||
|
||||
project_name: multica-cli
|
||||
|
||||
before:
|
||||
hooks:
|
||||
- cd server && go mod tidy
|
||||
|
||||
builds:
|
||||
- id: multica-cli
|
||||
main: ./cmd/multica
|
||||
dir: server
|
||||
binary: multica-cli
|
||||
ldflags:
|
||||
- -s -w
|
||||
- -X main.version={{.Version}}
|
||||
- -X main.commit={{.ShortCommit}}
|
||||
env:
|
||||
- CGO_ENABLED=0
|
||||
goos:
|
||||
- darwin
|
||||
- linux
|
||||
goarch:
|
||||
- amd64
|
||||
- arm64
|
||||
|
||||
archives:
|
||||
- id: default
|
||||
formats:
|
||||
- tar.gz
|
||||
name_template: "{{ .ProjectName }}_{{ .Os }}_{{ .Arch }}"
|
||||
|
||||
checksum:
|
||||
name_template: "checksums.txt"
|
||||
|
||||
changelog:
|
||||
sort: asc
|
||||
filters:
|
||||
exclude:
|
||||
- "^docs:"
|
||||
- "^test:"
|
||||
- "^chore:"
|
||||
|
||||
homebrew_casks:
|
||||
- name: multica-cli
|
||||
binaries:
|
||||
- multica-cli
|
||||
repository:
|
||||
owner: multica-ai
|
||||
name: homebrew-tap
|
||||
branch: main
|
||||
token: "{{ .Env.HOMEBREW_TAP_GITHUB_TOKEN }}"
|
||||
directory: Formula
|
||||
homepage: "https://github.com/multica-ai/super-multica"
|
||||
description: "Multica CLI — local agent runtime and management tool for the Multica platform"
|
||||
Loading…
Add table
Add a link
Reference in a new issue