Skip to content

Commit 6583a13

Browse files
authored
Merge pull request #26 from kumichou/homebrew-support
Support Homebrew and push releases to GitHub as well
2 parents aa7a824 + 429d4be commit 6583a13

2 files changed

Lines changed: 104 additions & 0 deletions

File tree

.github/workflows/release.yml

Lines changed: 35 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,35 @@
1+
name: Release
2+
3+
on:
4+
workflow_dispatch:
5+
push:
6+
tags:
7+
- 'v*.*.*'
8+
9+
permissions:
10+
contents: write
11+
12+
jobs:
13+
release:
14+
runs-on: ubuntu-latest
15+
16+
steps:
17+
- name: Checkout code
18+
uses: actions/checkout@v4
19+
with:
20+
fetch-depth: 0
21+
22+
- name: Set up Go from .tool-versions
23+
uses: jdx/mise-action@v3
24+
25+
- name: Run tests
26+
run: make test
27+
28+
- name: Run GoReleaser
29+
uses: goreleaser/goreleaser-action@v6
30+
with:
31+
distribution: goreleaser
32+
version: latest
33+
args: release --clean
34+
env:
35+
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}

.goreleaser.yml

Lines changed: 69 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,69 @@
1+
project_name: semver-cli
2+
3+
before:
4+
hooks:
5+
- go mod tidy
6+
7+
builds:
8+
- main: ./cmd/semver
9+
binary: semver
10+
goos:
11+
- linux
12+
- windows
13+
- darwin
14+
goarch:
15+
- amd64
16+
- arm64
17+
goarm:
18+
- "7"
19+
ldflags:
20+
- -s -w
21+
- -X main.version={{.Version}}
22+
- -X main.commit={{.Commit}}
23+
- -X main.date={{.Date}}
24+
env:
25+
- CGO_ENABLED=0
26+
27+
archives:
28+
- format: tar.gz
29+
name_template: >-
30+
{{ .ProjectName }}_
31+
{{- title .Os }}_
32+
{{- if eq .Arch "amd64" }}x86_64
33+
{{- else if eq .Arch "386" }}i386
34+
{{- else }}{{ .Arch }}{{ end }}
35+
{{- if .Arm }}v{{ .Arm }}{{ end }}
36+
format_overrides:
37+
- goos: windows
38+
format: zip
39+
40+
changelog:
41+
sort: asc
42+
filters:
43+
exclude:
44+
- '^docs:'
45+
- '^test:'
46+
47+
homebrew_casks:
48+
- name: semver-cli
49+
repository:
50+
owner: Homebrew
51+
name: homebrew-cask
52+
url:
53+
verified: github.com/maykonlsf/semver-cli
54+
homepage: "https://github.com/maykonlsf/semver-cli"
55+
description: "CLI tool for semantic versioning management"
56+
license: "MIT"
57+
conflicts:
58+
- cask: semver
59+
hooks:
60+
post:
61+
install: |
62+
if OS.mac?
63+
system_command "/usr/bin/xattr", args: ["-dr", "com.apple.quarantine", "#{staged_path}/semver"]
64+
end
65+
66+
release:
67+
github:
68+
owner: maykonlsf
69+
name: semver-cli

0 commit comments

Comments
 (0)