Skip to content

Commit efd4556

Browse files
author
Stephen Heckler
committed
Ensure service install directories are created before writing file
1 parent 2e2718b commit efd4556

File tree

1 file changed

+9
-1
lines changed

1 file changed

+9
-1
lines changed

cmd/cloudflared/service_template.go

Lines changed: 9 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -8,6 +8,7 @@ import (
88
"io/ioutil"
99
"os"
1010
"os/exec"
11+
"path"
1112
"text/template"
1213

1314
homedir "github.com/mitchellh/go-homedir"
@@ -52,10 +53,17 @@ func (st *ServiceTemplate) Generate(args *ServiceTemplateArgs) error {
5253
if err != nil {
5354
return fmt.Errorf("error generating %s: %v", st.Path, err)
5455
}
55-
fileMode := os.FileMode(0644)
56+
fileMode := os.FileMode(0o644)
5657
if st.FileMode != 0 {
5758
fileMode = st.FileMode
5859
}
60+
61+
plistFolder := path.Dir(resolvedPath)
62+
err = os.MkdirAll(plistFolder, 0o755)
63+
if err != nil {
64+
return fmt.Errorf("error creating %s: %v", plistFolder, err)
65+
}
66+
5967
err = ioutil.WriteFile(resolvedPath, buffer.Bytes(), fileMode)
6068
if err != nil {
6169
return fmt.Errorf("error writing %s: %v", resolvedPath, err)

0 commit comments

Comments
 (0)