warren/lib/warren/warren.go

51 lines
1006 B
Go

package warren
import (
"log"
"os"
"os/exec"
"path/filepath"
"strings"
)
const CmdSockType string = "unix"
const WarrendRunDir string = "/var/run/warrend"
const CmdSockAddr string = "/var/run/warrend/warrend.sock"
const WarrendPidFile string = "/var/run/warrend/warrend.pid"
const WarrendConf string = "/etc/warrend.json"
func GitHash() string {
hash, err := exec.Command("git", "rev-parse", "HEAD").Output()
if err != nil {
log.Fatal(err)
}
return strings.TrimSpace(string(hash))
}
func GitBranch() string {
gitbranch, err := exec.Command("git", "rev-parse", "--abbrev-ref", "HEAD").Output()
if err != nil {
log.Fatal(err)
}
return strings.TrimSpace(string(gitbranch))
}
func AppName() string {
paths, _ := filepath.Abs(filepath.Dir(os.Args[0]))
paths, name := filepath.Split(paths)
return name
}
func AbsPath(wd, path string) string {
// ./local_path
if path[0] == '.' {
return wd + path[2:]
} else
// local_path
if path[0] != '/' {
return wd + path
}
return path
}