mirror of
https://github.com/coder/coder.git
synced 2025-07-13 21:36:50 +00:00
fix(cli): correctly use cache dir for provisionerd work dir (#7651)
This commit is contained in:
@ -1183,6 +1183,12 @@ func newProvisionerDaemon(
|
|||||||
return nil, xerrors.Errorf("mkdir %q: %w", cacheDir, err)
|
return nil, xerrors.Errorf("mkdir %q: %w", cacheDir, err)
|
||||||
}
|
}
|
||||||
|
|
||||||
|
tfDir := filepath.Join(cacheDir, "terraform")
|
||||||
|
err = os.MkdirAll(tfDir, 0o700)
|
||||||
|
if err != nil {
|
||||||
|
return nil, xerrors.Errorf("mkdir terraform dir: %w", err)
|
||||||
|
}
|
||||||
|
|
||||||
tracer := coderAPI.TracerProvider.Tracer(tracing.TracerName)
|
tracer := coderAPI.TracerProvider.Tracer(tracing.TracerName)
|
||||||
terraformClient, terraformServer := provisionersdk.MemTransportPipe()
|
terraformClient, terraformServer := provisionersdk.MemTransportPipe()
|
||||||
wg.Add(1)
|
wg.Add(1)
|
||||||
@ -1201,7 +1207,7 @@ func newProvisionerDaemon(
|
|||||||
ServeOptions: &provisionersdk.ServeOptions{
|
ServeOptions: &provisionersdk.ServeOptions{
|
||||||
Listener: terraformServer,
|
Listener: terraformServer,
|
||||||
},
|
},
|
||||||
CachePath: cacheDir,
|
CachePath: tfDir,
|
||||||
Logger: logger,
|
Logger: logger,
|
||||||
Tracer: tracer,
|
Tracer: tracer,
|
||||||
})
|
})
|
||||||
@ -1213,9 +1219,10 @@ func newProvisionerDaemon(
|
|||||||
}
|
}
|
||||||
}()
|
}()
|
||||||
|
|
||||||
tempDir, err := os.MkdirTemp("", "provisionerd")
|
workDir := filepath.Join(cacheDir, "work")
|
||||||
|
err = os.MkdirAll(workDir, 0o700)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
return nil, err
|
return nil, xerrors.Errorf("mkdir work dir: %w", err)
|
||||||
}
|
}
|
||||||
|
|
||||||
provisioners := provisionerd.Provisioners{
|
provisioners := provisionerd.Provisioners{
|
||||||
@ -1259,7 +1266,7 @@ func newProvisionerDaemon(
|
|||||||
UpdateInterval: time.Second,
|
UpdateInterval: time.Second,
|
||||||
ForceCancelInterval: cfg.Provisioner.ForceCancelInterval.Value(),
|
ForceCancelInterval: cfg.Provisioner.ForceCancelInterval.Value(),
|
||||||
Provisioners: provisioners,
|
Provisioners: provisioners,
|
||||||
WorkDirectory: tempDir,
|
WorkDirectory: workDir,
|
||||||
TracerProvider: coderAPI.TracerProvider,
|
TracerProvider: coderAPI.TracerProvider,
|
||||||
Metrics: &metrics,
|
Metrics: &metrics,
|
||||||
}), nil
|
}), nil
|
||||||
|
Reference in New Issue
Block a user