changeset 49:88a7d4a1ff62 draft

Add release script
author prologic
date Fri, 17 Sep 2021 23:43:22 +0000
parents d004c7c4ddf4
children f7ad715c03ce
files .goreleaser.yml tools/release.sh version.go
diffstat 3 files changed, 68 insertions(+), 0 deletions(-) [+]
line wrap: on
line diff
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/.goreleaser.yml	Fri Sep 17 23:43:22 2021 +0000
@@ -0,0 +1,25 @@
+---
+builds:
+  -
+    id: zs
+    binary: zs
+    main: .
+    flags: -tags "static_build"
+    ldflags: -w -X main.Version={{.Version}} -X main.Commit={{.Commit}}
+    env:
+      - CGO_ENABLED=0
+    goos:
+      - darwin
+      - linux
+    goarch:
+      - amd64
+      - arm64
+signs:
+  - artifacts: checksum
+release:
+  gitea:
+    owner: prologic
+    name: zs
+  draft: true
+gitea_urls:
+  api: https://git.mills.io/api/v1/
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/tools/release.sh	Fri Sep 17 23:43:22 2021 +0000
@@ -0,0 +1,25 @@
+#!/bin/sh
+
+# Get the highest tag number
+VERSION="$(git describe --abbrev=0 --tags)"
+VERSION=${VERSION:-'0.0.0'}
+
+# Get number parts
+MAJOR="${VERSION%%.*}"; VERSION="${VERSION#*.}"
+MINOR="${VERSION%%.*}"; VERSION="${VERSION#*.}"
+PATCH="${VERSION%%.*}"; VERSION="${VERSION#*.}"
+
+# Increase version
+PATCH=$((PATCH+1))
+
+TAG="${1}"
+
+if [ "${TAG}" = "" ]; then
+  TAG="${MAJOR}.${MINOR}.${PATCH}"
+fi
+
+echo "Releasing ${TAG} ..."
+
+git tag -a -s -m "Release ${TAG}" "${TAG}"
+git push --tags
+goreleaser release --rm-dist
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/version.go	Fri Sep 17 23:43:22 2021 +0000
@@ -0,0 +1,18 @@
+package main
+
+import (
+	"fmt"
+)
+
+var (
+	// Version release version
+	Version = "0.0.1"
+
+	// Commit will be overwritten automatically by the build system
+	Commit = "HEAD"
+)
+
+// FullVersion display the full version and build
+func FullVersion() string {
+	return fmt.Sprintf("%s@%s", Version, Commit)
+}