Movatterモバイル変換


[0]ホーム

URL:


Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings

Commit035c3fd

Browse files
committed
cleanup datadir
1 parent221b370 commit035c3fd

File tree

4 files changed

+36
-24
lines changed

4 files changed

+36
-24
lines changed

‎agent/agent.go

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -258,12 +258,12 @@ func (a *agent) init(ctx context.Context) {
258258
}
259259
a.sshServer=sshSrv
260260
a.scriptRunner=agentscripts.New(agentscripts.Options{
261-
LogDir:a.logDir,
262-
DataDir:a.scriptDataDir,
263-
Logger:a.logger,
264-
SSHServer:sshSrv,
265-
Filesystem:a.filesystem,
266-
PatchLogs:a.client.PatchLogs,
261+
LogDir:a.logDir,
262+
DataDirBase:a.scriptDataDir,
263+
Logger:a.logger,
264+
SSHServer:sshSrv,
265+
Filesystem:a.filesystem,
266+
PatchLogs:a.client.PatchLogs,
267267
})
268268
// Register runner metrics. If the prom registry is nil, the metrics
269269
// will not report anywhere.

‎agent/agent_test.go

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -287,7 +287,8 @@ func TestAgent_Session_EnvironmentVariables(t *testing.T) {
287287

288288
tmpdir:=t.TempDir()
289289

290-
// Defined by the coder script runner.
290+
// Defined by the coder script runner, hardcoded here since we don't
291+
// have a reference to it.
291292
scriptBinDir:=filepath.Join(tmpdir,"coder-script-data","bin")
292293

293294
manifest:= agentsdk.Manifest{

‎agent/agentscripts/agentscripts.go

Lines changed: 13 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -43,12 +43,12 @@ var (
4343

4444
// Options are a set of options for the runner.
4545
typeOptionsstruct {
46-
DataDirstring
47-
LogDirstring
48-
Logger slog.Logger
49-
SSHServer*agentssh.Server
50-
Filesystem afero.Fs
51-
PatchLogsfunc(ctx context.Context,req agentsdk.PatchLogs)error
46+
DataDirBasestring
47+
LogDirstring
48+
Loggerslog.Logger
49+
SSHServer*agentssh.Server
50+
Filesystemafero.Fs
51+
PatchLogsfunc(ctx context.Context,req agentsdk.PatchLogs)error
5252
}
5353

5454
// New creates a runner for the provided scripts.
@@ -60,7 +60,7 @@ func New(opts Options) *Runner {
6060
cronCtxCancel:cronCtxCancel,
6161
cron:cron.New(cron.WithParser(parser)),
6262
closed:make(chanstruct{}),
63-
dataDir:filepath.Join(opts.DataDir,"coder-script-data"),
63+
dataDir:filepath.Join(opts.DataDirBase,"coder-script-data"),
6464
scriptsExecuted:prometheus.NewCounterVec(prometheus.CounterOpts{
6565
Namespace:"agent",
6666
Subsystem:"scripts",
@@ -88,6 +88,11 @@ type Runner struct {
8888
scriptsExecuted*prometheus.CounterVec
8989
}
9090

91+
// DataDir returns the directory where scripts data is stored.
92+
func (r*Runner)DataDir()string {
93+
returnr.dataDir
94+
}
95+
9196
// ScriptBinDir returns the directory where scripts can store executable
9297
// binaries.
9398
func (r*Runner)ScriptBinDir()string {
@@ -223,7 +228,7 @@ func (r *Runner) run(ctx context.Context, script codersdk.WorkspaceAgentScript)
223228
logPath=filepath.Join(r.LogDir,logPath)
224229
}
225230

226-
scriptDataDir:=filepath.Join(r.dataDir,script.LogSourceID.String())
231+
scriptDataDir:=filepath.Join(r.DataDir(),script.LogSourceID.String())
227232
err:=r.Filesystem.MkdirAll(scriptDataDir,0o700)
228233
iferr!=nil {
229234
returnxerrors.Errorf("%s script: create script temp dir: %w",scriptDataDir,err)

‎agent/agentscripts/agentscripts_test.go

Lines changed: 15 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -27,7 +27,10 @@ func TestExecuteBasic(t *testing.T) {
2727
t.Parallel()
2828
logs:=make(chan agentsdk.PatchLogs,1)
2929
runner:=setup(t,func(ctx context.Context,req agentsdk.PatchLogs)error {
30-
logs<-req
30+
select {
31+
case<-ctx.Done():
32+
caselogs<-req:
33+
}
3134
returnnil
3235
})
3336
deferrunner.Close()
@@ -47,7 +50,10 @@ func TestEnv(t *testing.T) {
4750
t.Parallel()
4851
logs:=make(chan agentsdk.PatchLogs,1)
4952
runner:=setup(t,func(ctx context.Context,req agentsdk.PatchLogs)error {
50-
logs<-req
53+
select {
54+
case<-ctx.Done():
55+
caselogs<-req:
56+
}
5157
returnnil
5258
})
5359
deferrunner.Close()
@@ -61,7 +67,7 @@ func TestEnv(t *testing.T) {
6167
returntrue
6268
}))
6369
log:=<-logs
64-
require.Contains(t,log.Logs[0].Output,filepath.Join(runner.DataDir,"coder-script-data",id.String()))
70+
require.Contains(t,log.Logs[0].Output,filepath.Join(runner.DataDir(),id.String()))
6571
require.Contains(t,log.Logs[1].Output,runner.ScriptBinDir())
6672
}
6773

@@ -103,11 +109,11 @@ func setup(t *testing.T, patchLogs func(ctx context.Context, req agentsdk.PatchL
103109
_=s.Close()
104110
})
105111
returnagentscripts.New(agentscripts.Options{
106-
LogDir:t.TempDir(),
107-
DataDir:t.TempDir(),
108-
Logger:logger,
109-
SSHServer:s,
110-
Filesystem:fs,
111-
PatchLogs:patchLogs,
112+
LogDir:t.TempDir(),
113+
DataDirBase:t.TempDir(),
114+
Logger:logger,
115+
SSHServer:s,
116+
Filesystem:fs,
117+
PatchLogs:patchLogs,
112118
})
113119
}

0 commit comments

Comments
 (0)

[8]ページ先頭

©2009-2025 Movatter.jp