From 67f0897c62032e8edf2ec447c58a9a1cc4e96f4f Mon Sep 17 00:00:00 2001 From: David Vennik Date: Wed, 21 Dec 2022 14:31:39 +0000 Subject: [PATCH] Allowing to specify different branch in first parameter --- cmd/bumper/main.go | 70 ++++++++++++++++++++++++---------------------- version.go | 8 +++--- 2 files changed, 41 insertions(+), 37 deletions(-) diff --git a/cmd/bumper/main.go b/cmd/bumper/main.go index d2bf0b42..375559c0 100644 --- a/cmd/bumper/main.go +++ b/cmd/bumper/main.go @@ -140,8 +140,39 @@ func main() { default: Patch++ } - // Update SemVer - SemVer = fmt.Sprintf("v%d.%d.%d", Major, Minor, Patch) + startArgs := 1 + br := strings.Split(GitRef, "/") + branch := br[len(br)-1] + if major || minor { + branch = os.Args[2] + } + var out string + if out, e = runCmdWithOutput("git", "branch"); check(e) { + os.Exit(1) + } + splitted := strings.Split(out, "\n") + var isBranch bool + for i := range splitted { + if len(splitted[i]) < 2 { + continue + } + if splitted[i][2:] == branch { + log.I.S(splitted[i][2:]) + isBranch = true + branch = splitted[i][2:] + break + } + } + if isBranch { + startArgs++ + } + tag := true + if branch == "main" { + // Update SemVer + SemVer = fmt.Sprintf("v%d.%d.%d", Major, Minor, Patch) + } else { + tag = false + } PathBase = tr.Filesystem.Root() + "/" versionFile := `// Package indra is the root level package for Indranet, a low latency, // Lightning Network monetised distributed VPN protocol designed for providing @@ -212,35 +243,6 @@ func Version() string { "\tMinor:", Minor, "\n", "\tPatch:", Patch, "\n", ) - br := strings.Split(GitRef, "/") - branch := br[len(br)-1] - if major || minor { - branch = os.Args[2] - } - var out string - if out, e = runCmdWithOutput("git", "branch"); check(e) { - os.Exit(1) - } - splitted := strings.Split(out, "\n") - log.I.S(splitted) - var isBranch bool - for i := range splitted { - if len(splitted[i]) < 2 { - continue - } - log.I.Ln(branch) - if splitted[i][2:] == branch { - log.I.S(splitted[i][2:]) - isBranch = true - branch = splitted[i][2:] - break - } - } - startArgs := 1 - if isBranch { - startArgs++ - } - log.I.Ln(branch) if e = runCmd("git", "add", "."); check(e) { os.Exit(1) } @@ -249,8 +251,10 @@ func Version() string { if e = runCmd("git", "commit", "-m"+commitString); check(e) { os.Exit(1) } - if e = runCmd("git", "tag", SemVer); check(e) { - os.Exit(1) + if tag { + if e = runCmd("git", "tag", SemVer); check(e) { + os.Exit(1) + } } if e = runCmd("git", "push", "origin", branch); check(e) { os.Exit(1) diff --git a/version.go b/version.go index bf7c4cc1..913b4bd6 100644 --- a/version.go +++ b/version.go @@ -13,11 +13,11 @@ var ( // GitRef is the gitref, as in refs/heads/branchname. GitRef = "refs/heads/main" // ParentGitCommit is the commit hash of the parent HEAD. - ParentGitCommit = "2abadd782265b1103b5cc259ea3eba60d03a5f0c" + ParentGitCommit = "395f888f11a92d6b19967c8f0e89cc25fef1105c" // BuildTime stores the time when the current binary was built. - BuildTime = "2022-12-21T14:26:27Z" + BuildTime = "2022-12-21T14:31:39Z" // SemVer lists the (latest) git tag on the build. - SemVer = "v0.0.204" + SemVer = "v0.0.205" // PathBase is the path base returned from runtime caller. PathBase = "/home/loki/src/github.com/Indra-Labs/indra/" // Major is the major number from the tag. @@ -25,7 +25,7 @@ var ( // Minor is the minor number from the tag. Minor = 0 // Patch is the patch version number from the tag. - Patch = 204 + Patch = 205 ) // Version returns a pretty printed version information string.