go-judge/cmd/executorserver/genversion.go
2020-07-23 22:43:36 -07:00

34 lines
638 B
Go

// +build ignore
package main
import (
"bytes"
"fmt"
"io/ioutil"
"log"
"os/exec"
"strings"
)
func main() {
var ret bytes.Buffer
c := exec.Command("git", "describe", "--tags")
c.Stdout = &ret
if err := c.Run(); err != nil {
log.Fatalln("run git describe", err)
}
var buf bytes.Buffer
fmt.Fprintln(&buf, "// Code generated by go generate; DO NOT EDIT.")
fmt.Fprintln(&buf)
fmt.Fprintln(&buf, "package main")
fmt.Fprintln(&buf)
fmt.Fprintf(&buf, "const Version = `%s`", strings.TrimSpace(ret.String()))
if err := ioutil.WriteFile("version.go", buf.Bytes(), 0644); err != nil {
log.Fatalln("write file", err)
}
}