Files
byre/cmd/byre/signing.go
T

33 lines
757 B
Go

package main
import (
"fmt"
"os"
"os/exec"
"strings"
)
func signingCmd(args []string) {
if len(args) != 1 {
usage()
}
checkout := args[0]
gitOut(checkout, "config", "commit.gpgsign", "true")
signing := gitOut(checkout, "config", "--type=bool", "--get", "commit.gpgsign")
if signing != "true" {
fatal("checkout's commit.gpgsign is not true after setting it", "checkout", checkout, "value", signing)
}
fmt.Printf("%s: commit.gpgsign %s\n", checkout, signing)
}
func gitOut(dir string, args ...string) string {
cmd := exec.Command("git", args...)
cmd.Dir = dir
cmd.Stderr = os.Stderr
out, err := cmd.Output()
if err != nil {
fatal("git failed", "args", strings.Join(args, " "), "err", err)
}
return strings.TrimSpace(string(out))
}