From d08241b2ea2f6cbf030be31c116502c92e55b1c7 Mon Sep 17 00:00:00 2001 From: Jesse Duffield Date: Fri, 10 Aug 2018 21:33:49 +1000 Subject: Obtain branches in a more robust way. Begin refactor work on gitcommands --- scripts/push_new_patch.go | 55 +++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 55 insertions(+) create mode 100755 scripts/push_new_patch.go (limited to 'scripts') diff --git a/scripts/push_new_patch.go b/scripts/push_new_patch.go new file mode 100755 index 000000000..692a42f78 --- /dev/null +++ b/scripts/push_new_patch.go @@ -0,0 +1,55 @@ +// call from project root with +// go run bin/push_new_patch.go + +// goreleaser expects a $GITHUB_TOKEN env variable to be defined +// in order to push the release got github + +package main + +import ( + "fmt" + "io/ioutil" + "log" + "os/exec" + "strconv" + "strings" +) + +func main() { + version, err := ioutil.ReadFile("VERSION") + if err != nil { + log.Panicln(err.Error()) + } + stringVersion := string(version) + fmt.Println("VERSION was " + stringVersion) + + runCommand("git", "pull") + + splitVersion := strings.Split(stringVersion, ".") + patch := splitVersion[len(splitVersion)-1] + newPatch, err := strconv.Atoi(patch) + splitVersion[len(splitVersion)-1] = strconv.FormatInt(int64(newPatch)+1, 10) + newVersion := strings.Join(splitVersion, ".") + + err = ioutil.WriteFile("VERSION", []byte(newVersion), 0644) + if err != nil { + log.Panicln(err.Error()) + } + + runCommand("git", "add", "VERSION") + runCommand("git", "commit", "-m", "bump version to "+newVersion, "--", "VERSION") + runCommand("git", "push") + runCommand("git", "tag", newVersion) + runCommand("git", "push", "origin", newVersion) + runCommand("goreleaser", "--rm-dist") + runCommand("rm", "-rf", "dist") +} + +func runCommand(args ...string) { + fmt.Println(strings.Join(args, " ")) + output, err := exec.Command(args[0], args[1:]...).CombinedOutput() + if err != nil { + panic(err.Error()) + } + log.Print(string(output)) +} -- cgit v1.2.3