Thanks to visit codestin.com
Credit goes to github.com

Skip to content

Commit c8ea76c

Browse files
authored
fix(cli): correctly use cache dir for provisionerd work dir (coder#7651)
1 parent ba02dc8 commit c8ea76c

File tree

1 file changed

+11
-4
lines changed

1 file changed

+11
-4
lines changed

cli/server.go

+11-4
Original file line numberDiff line numberDiff line change
@@ -1183,6 +1183,12 @@ func newProvisionerDaemon(
11831183
return nil, xerrors.Errorf("mkdir %q: %w", cacheDir, err)
11841184
}
11851185

1186+
tfDir := filepath.Join(cacheDir, "terraform")
1187+
err = os.MkdirAll(tfDir, 0o700)
1188+
if err != nil {
1189+
return nil, xerrors.Errorf("mkdir terraform dir: %w", err)
1190+
}
1191+
11861192
tracer := coderAPI.TracerProvider.Tracer(tracing.TracerName)
11871193
terraformClient, terraformServer := provisionersdk.MemTransportPipe()
11881194
wg.Add(1)
@@ -1201,7 +1207,7 @@ func newProvisionerDaemon(
12011207
ServeOptions: &provisionersdk.ServeOptions{
12021208
Listener: terraformServer,
12031209
},
1204-
CachePath: cacheDir,
1210+
CachePath: tfDir,
12051211
Logger: logger,
12061212
Tracer: tracer,
12071213
})
@@ -1213,9 +1219,10 @@ func newProvisionerDaemon(
12131219
}
12141220
}()
12151221

1216-
tempDir, err := os.MkdirTemp("", "provisionerd")
1222+
workDir := filepath.Join(cacheDir, "work")
1223+
err = os.MkdirAll(workDir, 0o700)
12171224
if err != nil {
1218-
return nil, err
1225+
return nil, xerrors.Errorf("mkdir work dir: %w", err)
12191226
}
12201227

12211228
provisioners := provisionerd.Provisioners{
@@ -1259,7 +1266,7 @@ func newProvisionerDaemon(
12591266
UpdateInterval: time.Second,
12601267
ForceCancelInterval: cfg.Provisioner.ForceCancelInterval.Value(),
12611268
Provisioners: provisioners,
1262-
WorkDirectory: tempDir,
1269+
WorkDirectory: workDir,
12631270
TracerProvider: coderAPI.TracerProvider,
12641271
Metrics: &metrics,
12651272
}), nil

0 commit comments

Comments
 (0)