Skip to content

Commit c9f27e7

Browse files
committed
chore: integration with github action and gorelaser-cross
1 parent fdc5aa0 commit c9f27e7

3 files changed

Lines changed: 132 additions & 41 deletions

File tree

.github/workflows/go.yml

Lines changed: 0 additions & 41 deletions
This file was deleted.

.github/workflows/release.yml

Lines changed: 40 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,40 @@
1+
name: goreleaser
2+
3+
on:
4+
pull_request:
5+
push:
6+
tags:
7+
- "v*"
8+
9+
permissions:
10+
contents: write
11+
12+
jobs:
13+
goreleaser:
14+
runs-on: ubuntu-latest
15+
steps:
16+
- name: Checkout
17+
uses: actions/checkout@v4
18+
with:
19+
fetch-depth: 0
20+
21+
- name: Set up Go
22+
uses: actions/setup-go@v5
23+
with:
24+
go-version: stable
25+
26+
- name: Build with goreleaser-cross
27+
env:
28+
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
29+
GH_PAT: ${{ secrets.GH_PAT }}
30+
run: |
31+
docker run \
32+
--rm \
33+
-e CGO_ENABLED=1 \
34+
-e GITHUB_TOKEN=${GITHUB_TOKEN} \
35+
-e GH_PAT=${GH_PAT} \
36+
-v /var/run/docker.sock:/var/run/docker.sock \
37+
-v "$(pwd)":/go/src/github.com/arfadmuzali/restui \
38+
-w /go/src/github.com/arfadmuzali/restui \
39+
ghcr.io/goreleaser/goreleaser-cross:latest \
40+
release --clean

.goreleaser.yaml

Lines changed: 92 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,92 @@
1+
# The lines below are called `modelines`. See `:help modeline`
2+
# Feel free to remove those if you don't want/need to use them.
3+
# yaml-language-server: $schema=https://goreleaser.com/static/schema.json
4+
# vim: set ts=2 sw=2 tw=0 fo=cnqoj
5+
6+
version: 2
7+
8+
before:
9+
hooks:
10+
# You may remove this if you don't use go modules.
11+
- go mod tidy
12+
13+
builds:
14+
- id: restui-windows-amd64
15+
goos:
16+
- windows
17+
goarch:
18+
- amd64
19+
env:
20+
- CGO_ENABLED=1
21+
- CC=x86_64-w64-mingw32-gcc
22+
- CXX=x86_64-w64-mingw32-g++
23+
24+
- id: restui-linux-amd64
25+
goos:
26+
- linux
27+
goarch:
28+
- amd64
29+
env:
30+
- CGO_ENABLED=1
31+
- CC=x86_64-linux-gnu-gcc
32+
- CXX=x86_64-linux-gnu-g++
33+
34+
- id: restui-darwin-amd64
35+
goos:
36+
- darwin
37+
goarch:
38+
- amd64
39+
env:
40+
- CGO_ENABLED=1
41+
- CC=o64-clang
42+
- CXX=o64-clang++
43+
44+
- id: restui-darwin-arm64
45+
goos:
46+
- darwin
47+
goarch:
48+
- arm64
49+
env:
50+
- CGO_ENABLED=1
51+
- CC=oa64-clang
52+
- CXX=oa64-clang++
53+
# this name template makes the OS and Arch compatible with the results of `uname`.
54+
archives:
55+
- formats: [tar.gz]
56+
name_template: >-
57+
{{ .ProjectName }}_
58+
{{- title .Os }}_
59+
{{- if eq .Arch "amd64" }}x86_64
60+
{{- else if eq .Arch "386" }}i386
61+
{{- else }}{{ .Arch }}{{ end }}
62+
{{- if .Arm }}v{{ .Arm }}{{ end }}
63+
# use zip for windows archives
64+
format_overrides:
65+
- goos: windows
66+
formats: [zip]
67+
68+
changelog:
69+
sort: asc
70+
filters:
71+
exclude:
72+
- "^docs:"
73+
- "^test:"
74+
75+
homebrew_casks:
76+
- name: restui
77+
homepage: "https://github.com/arfadmuzali/restui"
78+
description: "API client in your terminal"
79+
repository:
80+
owner: arfadmuzali
81+
name: homebrew-restui
82+
branch: main
83+
token: "{{ .Env.GH_PAT}}"
84+
commit_author:
85+
name: goreleaserbot
86+
email: bot@goreleaser.com
87+
release:
88+
footer: >-
89+
90+
---
91+
92+
Released by [GoReleaser](https://github.com/goreleaser/goreleaser).

0 commit comments

Comments
 (0)