Skip to content

Commit a0d738d

Browse files
authored
Merge pull request #16 from wherobots/feat/public-release-and-update-notice
feat: public releases, update defaults, and update hint on errors
2 parents 973fbdf + d245795 commit a0d738d

4 files changed

Lines changed: 62 additions & 3 deletions

File tree

Lines changed: 56 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,56 @@
1+
name: Tagged Release
2+
3+
on:
4+
push:
5+
tags:
6+
- "v*"
7+
8+
permissions:
9+
contents: write
10+
11+
jobs:
12+
release:
13+
name: Publish tagged release
14+
runs-on: depot-ubuntu-24.04-4
15+
steps:
16+
- name: Checkout
17+
uses: actions/checkout@v4
18+
with:
19+
fetch-depth: 0
20+
21+
- name: Setup Go
22+
uses: actions/setup-go@v5
23+
with:
24+
go-version-file: go.mod
25+
cache: true
26+
27+
- name: Run tests
28+
run: go test ./...
29+
30+
- name: Build release binaries
31+
run: |
32+
set -euo pipefail
33+
mkdir -p dist
34+
BUILD_DATE="$(date -u +%Y-%m-%dT%H:%M:%SZ)"
35+
VERSION="${GITHUB_REF_NAME#v}"
36+
for GOOS in darwin linux windows; do
37+
for GOARCH in amd64 arm64; do
38+
OUT="dist/wherobots_${GOOS}_${GOARCH}"
39+
if [ "${GOOS}" = "windows" ]; then
40+
OUT="${OUT}.exe"
41+
fi
42+
echo "Building ${OUT}"
43+
GOOS="${GOOS}" GOARCH="${GOARCH}" CGO_ENABLED=0 \
44+
go build -ldflags "-s -w -X main.buildVersion=${VERSION} -X main.commit=${GITHUB_SHA} -X main.date=${BUILD_DATE}" -o "${OUT}" .
45+
done
46+
done
47+
(cd dist && sha256sum * > checksums.txt)
48+
49+
- name: Create GitHub release
50+
run: |
51+
set -euo pipefail
52+
gh release create "${GITHUB_REF_NAME}" dist/* \
53+
--title "Release ${GITHUB_REF_NAME}" \
54+
--generate-notes
55+
env:
56+
GH_TOKEN: ${{ secrets.GITHUB_TOKEN }}

internal/commands/upgrade.go

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -16,7 +16,7 @@ import (
1616

1717
const (
1818
upgradeRepo = "wherobots/wbc-cli"
19-
upgradeDefaultTag = "latest-prerelease"
19+
upgradeDefaultTag = "latest"
2020
upgradeBinary = "wherobots"
2121
)
2222

main.go

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -57,6 +57,9 @@ func run(ctx context.Context) error {
5757
if result := version.Collect(updateCh); result != nil {
5858
fmt.Fprintln(os.Stderr, "")
5959
fmt.Fprintln(os.Stderr, version.FormatNotice(result))
60+
if execErr != nil {
61+
fmt.Fprintln(os.Stderr, "Note: your CLI is out of date. Run `wherobots upgrade` to update — it may resolve this issue.")
62+
}
6063
}
6164

6265
return execErr

scripts/install-release.sh

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22
set -euo pipefail
33

44
REPO="${WHEROBOTS_CLI_REPO:-wherobots/wbc-cli}"
5-
TAG="${WHEROBOTS_CLI_TAG:-latest-prerelease}"
5+
TAG="${WHEROBOTS_CLI_TAG:-latest}"
66
BINARY_NAME="${WHEROBOTS_CLI_BINARY:-wherobots}"
77
INSTALL_DIR="${INSTALL_DIR:-${HOME}/.local/bin}"
88
SKIP_CHECKSUM=0
@@ -19,7 +19,7 @@ Usage:
1919
2020
Options:
2121
--repo <owner/name> GitHub repository (default: wherobots/wbc-cli)
22-
--tag <tag> Release tag (default: latest-prerelease)
22+
--tag <tag> Release tag (default: latest)
2323
--install-dir <path> Install directory (default: ~/.local/bin)
2424
--binary-name <name> Binary name/asset prefix (default: wherobots)
2525
--skip-checksum Skip checksum verification

0 commit comments

Comments
 (0)