package main import ( "io/ioutil" "os" "github.com/golang/glog" pb "code.hackerspace.pl/hscloud/cluster/prodvider/proto" "code.hackerspace.pl/hscloud/go/pki" ) func useHSPKIKeys(keys *pb.HSPKIKeys) { path, err := pki.DeveloperCredentialsLocation() if err != nil { glog.Exitf("Could not get location of HSPKI creds: %v", err) } err = os.MkdirAll(path, 0700) if err != nil { glog.Exitf("mkdir %q: %v", path, err) } for _, el := range []struct { target string data []byte }{ {path + "/ca.crt", keys.Ca}, {path + "/tls.crt", keys.Cert}, {path + "/tls.key", keys.Key}, } { err := ioutil.WriteFile(el.target, el.data, 400) if err != nil { glog.Exitf("Failed to write %q: %v", el.target, err) } } }