Skip to content

Commit c233d04

Browse files
committed
Ditch backgroundCtxWithSpan
1 parent dbeabfc commit c233d04

File tree

2 files changed

+38
-38
lines changed
  • internal/executor/instance/persistentworker/isolation

2 files changed

+38
-38
lines changed

internal/executor/instance/persistentworker/isolation/tart/vm.go

+18-18
Original file line numberDiff line numberDiff line change
@@ -13,13 +13,12 @@ import (
1313
)
1414

1515
type VM struct {
16-
ident string
17-
env map[string]string
18-
backgroundCtxWithSpan context.Context
19-
runningVMCtx context.Context
20-
runningVMCtxCancel context.CancelFunc
21-
wg sync.WaitGroup
22-
errChan chan error
16+
ident string
17+
env map[string]string
18+
runningVMCtx context.Context
19+
runningVMCtxCancel context.CancelFunc
20+
wg sync.WaitGroup
21+
errChan chan error
2322
}
2423

2524
type Info struct {
@@ -41,17 +40,16 @@ func NewVMClonedFrom(
4140
env map[string]string,
4241
logger *echelon.Logger,
4342
) (*VM, error) {
44-
backgroundCtxWithSpan := trace.ContextWithSpan(context.Background(), trace.SpanFromContext(ctx))
45-
46-
runningVMCtx, runningVMCtxCancel := context.WithCancel(backgroundCtxWithSpan)
43+
runningVMCtx, runningVMCtxCancel := context.WithCancel(
44+
trace.ContextWithSpan(context.Background(), trace.SpanFromContext(ctx)),
45+
)
4746

4847
vm := &VM{
49-
ident: to,
50-
env: env,
51-
backgroundCtxWithSpan: backgroundCtxWithSpan,
52-
runningVMCtx: runningVMCtx,
53-
runningVMCtxCancel: runningVMCtxCancel,
54-
errChan: make(chan error, 1),
48+
ident: to,
49+
env: env,
50+
runningVMCtx: runningVMCtx,
51+
runningVMCtxCancel: runningVMCtxCancel,
52+
errChan: make(chan error, 1),
5553
}
5654

5755
pullLogger := logger.Scoped("pull virtual machine")
@@ -227,14 +225,16 @@ func (vm *VM) Info(ctx context.Context) (*Info, error) {
227225
}
228226

229227
func (vm *VM) Close() error {
228+
ctx := trace.ContextWithSpan(context.Background(), trace.SpanFromContext(vm.runningVMCtx))
229+
230230
// Try to gracefully terminate the VM
231231
//nolint:dogsled // not interested in the output for now
232-
_, _, _ = Cmd(vm.backgroundCtxWithSpan, vm.env, "stop", "--timeout", "5", vm.ident)
232+
_, _, _ = Cmd(ctx, vm.env, "stop", "--timeout", "5", vm.ident)
233233

234234
vm.runningVMCtxCancel()
235235
vm.wg.Wait()
236236

237-
_, _, err := Cmd(vm.backgroundCtxWithSpan, vm.env, "delete", vm.ident)
237+
_, _, err := Cmd(ctx, vm.env, "delete", vm.ident)
238238

239239
return err
240240
}

internal/executor/instance/persistentworker/isolation/vetu/vm.go

+20-20
Original file line numberDiff line numberDiff line change
@@ -12,14 +12,13 @@ import (
1212
)
1313

1414
type VM struct {
15-
ident string
16-
env map[string]string
17-
resourceModifier *resourcemodifier.Modifier
18-
backgroundCtxWithSpan context.Context
19-
runningVMCtx context.Context
20-
runningVMCtxCancel context.CancelFunc
21-
wg sync.WaitGroup
22-
errChan chan error
15+
ident string
16+
env map[string]string
17+
resourceModifier *resourcemodifier.Modifier
18+
runningVMCtx context.Context
19+
runningVMCtxCancel context.CancelFunc
20+
wg sync.WaitGroup
21+
errChan chan error
2322
}
2423

2524
func NewVMClonedFrom(
@@ -31,18 +30,17 @@ func NewVMClonedFrom(
3130
resourceModifier *resourcemodifier.Modifier,
3231
logger *echelon.Logger,
3332
) (*VM, error) {
34-
backgroundCtxWithSpan := trace.ContextWithSpan(context.Background(), trace.SpanFromContext(ctx))
35-
36-
runningVMCtx, runningVMCtxCancel := context.WithCancel(backgroundCtxWithSpan)
33+
runningVMCtx, runningVMCtxCancel := context.WithCancel(
34+
trace.ContextWithSpan(context.Background(), trace.SpanFromContext(ctx)),
35+
)
3736

3837
vm := &VM{
39-
ident: to,
40-
env: env,
41-
resourceModifier: resourceModifier,
42-
backgroundCtxWithSpan: backgroundCtxWithSpan,
43-
runningVMCtx: runningVMCtx,
44-
runningVMCtxCancel: runningVMCtxCancel,
45-
errChan: make(chan error, 1),
38+
ident: to,
39+
env: env,
40+
resourceModifier: resourceModifier,
41+
runningVMCtx: runningVMCtx,
42+
runningVMCtxCancel: runningVMCtxCancel,
43+
errChan: make(chan error, 1),
4644
}
4745

4846
pullLogger := logger.Scoped("pull virtual machine")
@@ -175,14 +173,16 @@ func (vm *VM) RetrieveIP(ctx context.Context) (string, error) {
175173
}
176174

177175
func (vm *VM) Close() error {
176+
ctx := trace.ContextWithSpan(context.Background(), trace.SpanFromContext(vm.runningVMCtx))
177+
178178
// Try to gracefully terminate the VM
179179
//nolint:dogsled // not interested in the output for now
180-
_, _, _ = Cmd(vm.backgroundCtxWithSpan, vm.env, "stop", "--timeout", "5", vm.ident)
180+
_, _, _ = Cmd(ctx, vm.env, "stop", "--timeout", "5", vm.ident)
181181

182182
vm.runningVMCtxCancel()
183183
vm.wg.Wait()
184184

185-
_, _, err := Cmd(vm.backgroundCtxWithSpan, vm.env, "delete", vm.ident)
185+
_, _, err := Cmd(ctx, vm.env, "delete", vm.ident)
186186

187187
return err
188188
}

0 commit comments

Comments
 (0)