From f589f790a6b88b8eee4665825b62d358ac0da32a Mon Sep 17 00:00:00 2001 From: ArthurHlt Date: Fri, 8 Feb 2019 23:38:11 +0100 Subject: [PATCH] fix ca credhub cert --- server/server.go | 17 +++++++++++++---- 1 file changed, 13 insertions(+), 4 deletions(-) diff --git a/server/server.go b/server/server.go index d30bd24..ce48064 100644 --- a/server/server.go +++ b/server/server.go @@ -124,7 +124,7 @@ func (s *Server) Load() error { if s.config.Name == "" { return fmt.Errorf("You must define a name to your backend to not conflict with other backend in credhub.") } - s.config.CredhubCaCert, err = s.getTlsFilePath(s.config.CredhubCaCert) + s.config.CredhubCaCert, err = s.getTlsPem(s.config.CredhubCaCert) if err != nil { return err } @@ -213,6 +213,18 @@ func (s Server) Run() error { return http.ListenAndServe(servAddr, finalHandler) } +func (s Server) getTlsPem(tlsConf string) (string, error) { + if tlsConf == "" { + return "", nil + } + _, err := os.Stat(tlsConf) + if err != nil { + return tlsConf, nil + } + b, err := ioutil.ReadFile(tlsConf) + return string(b), err +} + func (s Server) getTlsFilePath(tlsConf string) (string, error) { if tlsConf == "" { return "", nil @@ -221,9 +233,6 @@ func (s Server) getTlsFilePath(tlsConf string) (string, error) { if err == nil { return tlsConf, nil } - if !os.IsNotExist(err) { - return "", err - } f, err := ioutil.TempFile("", "terraform-secure-backend") if err != nil { return "", err