Skip to content

Commit 3e02553

Browse files
Merge pull request #2 from fabriziobonavita/feat/fb/release-flow
Release workflow and buildinfo
2 parents 566c34a + 1743c9d commit 3e02553

3 files changed

Lines changed: 78 additions & 3 deletions

File tree

.github/workflows/release.yml

Lines changed: 75 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,75 @@
1+
name: Release
2+
3+
on:
4+
push:
5+
tags:
6+
- "v*"
7+
8+
permissions:
9+
contents: write
10+
11+
jobs:
12+
release:
13+
runs-on: ubuntu-latest
14+
steps:
15+
- name: Checkout
16+
uses: actions/checkout@v4
17+
with:
18+
fetch-depth: 0
19+
20+
- name: Set up Go
21+
uses: actions/setup-go@v5
22+
with:
23+
go-version-file: go.mod
24+
cache: true
25+
26+
- name: Get version from tag
27+
id: tag
28+
run: echo "version=${GITHUB_REF#refs/tags/}" >> $GITHUB_OUTPUT
29+
30+
- name: Get commit SHA
31+
id: commit
32+
run: echo "sha=$(git rev-parse HEAD)" >> $GITHUB_OUTPUT
33+
34+
- name: Get build date
35+
id: date
36+
run: echo "date=$(date -u +%Y-%m-%dT%H:%M:%SZ)" >> $GITHUB_OUTPUT
37+
38+
- name: Build linux/amd64
39+
run: |
40+
GOOS=linux GOARCH=amd64 go build \
41+
-ldflags "-X github.com/fabriziobonavita/engramr/internal/buildinfo.Version=${{ steps.tag.outputs.version }} -X github.com/fabriziobonavita/engramr/internal/buildinfo.Commit=${{ steps.commit.outputs.sha }} -X github.com/fabriziobonavita/engramr/internal/buildinfo.Date=${{ steps.date.outputs.date }}" \
42+
-o engramr_${{ steps.tag.outputs.version }}_linux_amd64 \
43+
./cmd/engramr
44+
45+
- name: Build darwin/amd64
46+
run: |
47+
GOOS=darwin GOARCH=amd64 go build \
48+
-ldflags "-X github.com/fabriziobonavita/engramr/internal/buildinfo.Version=${{ steps.tag.outputs.version }} -X github.com/fabriziobonavita/engramr/internal/buildinfo.Commit=${{ steps.commit.outputs.sha }} -X github.com/fabriziobonavita/engramr/internal/buildinfo.Date=${{ steps.date.outputs.date }}" \
49+
-o engramr_${{ steps.tag.outputs.version }}_darwin_amd64 \
50+
./cmd/engramr
51+
52+
- name: Build darwin/arm64
53+
run: |
54+
GOOS=darwin GOARCH=arm64 go build \
55+
-ldflags "-X github.com/fabriziobonavita/engramr/internal/buildinfo.Version=${{ steps.tag.outputs.version }} -X github.com/fabriziobonavita/engramr/internal/buildinfo.Commit=${{ steps.commit.outputs.sha }} -X github.com/fabriziobonavita/engramr/internal/buildinfo.Date=${{ steps.date.outputs.date }}" \
56+
-o engramr_${{ steps.tag.outputs.version }}_darwin_arm64 \
57+
./cmd/engramr
58+
59+
- name: Build windows/amd64
60+
run: |
61+
GOOS=windows GOARCH=amd64 go build \
62+
-ldflags "-X github.com/fabriziobonavita/engramr/internal/buildinfo.Version=${{ steps.tag.outputs.version }} -X github.com/fabriziobonavita/engramr/internal/buildinfo.Commit=${{ steps.commit.outputs.sha }} -X github.com/fabriziobonavita/engramr/internal/buildinfo.Date=${{ steps.date.outputs.date }}" \
63+
-o engramr_${{ steps.tag.outputs.version }}_windows_amd64.exe \
64+
./cmd/engramr
65+
66+
- name: Generate SHA256SUMS
67+
run: |
68+
sha256sum engramr_${{ steps.tag.outputs.version }}_* > SHA256SUMS
69+
70+
- name: Create Release
71+
uses: softprops/action-gh-release@v2
72+
with:
73+
files: |
74+
engramr_${{ steps.tag.outputs.version }}_*
75+
SHA256SUMS

internal/buildinfo/buildinfo.go

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -3,6 +3,6 @@ package buildinfo
33
// Populated via -ldflags at build time; defaults are for local dev.
44
var (
55
Version = "dev"
6-
Commit = "unknown"
7-
Date = ""
6+
Commit = "none"
7+
Date = "unknown"
88
)

internal/cli/cli.go

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -67,7 +67,7 @@ func newVersionCmd() *cobra.Command {
6767
Use: "version",
6868
Short: "Show build version information",
6969
Run: func(cmd *cobra.Command, _ []string) {
70-
fmt.Fprintf(cmd.OutOrStdout(), "version: %s\ncommit: %s\ndate: %s\n",
70+
fmt.Fprintf(cmd.OutOrStdout(), "version=%s commit=%s date=%s\n",
7171
buildinfo.Version, buildinfo.Commit, buildinfo.Date)
7272
},
7373
}

0 commit comments

Comments
 (0)