Skip to content

Commit ac7a4eb

Browse files
authored
CWCOW: Misc fixes (microsoft#2605)
Signed-off-by: Mahati Chamarthy <mahati.chamarthy@gmail.com>
1 parent 5a2d837 commit ac7a4eb

3 files changed

Lines changed: 10 additions & 9 deletions

File tree

internal/gcs-sidecar/handlers.go

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -104,11 +104,13 @@ func (b *Bridge) createContainer(req *request) (err error) {
104104
log.G(ctx).Tracef("Container exists in the map.")
105105
return err
106106
}
107-
defer func(err error) {
107+
defer func() {
108108
if err != nil {
109-
b.hostState.RemoveContainer(ctx, containerID)
109+
if removeErr := b.hostState.RemoveContainer(ctx, containerID); removeErr != nil {
110+
log.G(ctx).WithError(removeErr).Errorf("Failed to remove container: %v", containerID)
111+
}
110112
}
111-
}(err)
113+
}()
112114

113115
if oci.ParseAnnotationsBool(ctx, spec.Annotations, annotations.WCOWSecurityPolicyEnv, true) {
114116
if err := b.hostState.securityOptions.WriteSecurityContextDir(&spec); err != nil {
@@ -459,13 +461,11 @@ func (b *Bridge) deleteContainerState(req *request) (err error) {
459461
if err := commonutils.UnmarshalJSONWithHresult(req.message, &r); err != nil {
460462
return fmt.Errorf("failed to unmarshal deleteContainerState: %w", err)
461463
}
462-
_, err = b.hostState.GetCreatedContainer(req.ctx, r.ContainerID)
464+
err = b.hostState.RemoveContainer(req.ctx, r.ContainerID)
463465
if err != nil {
464466
log.G(req.ctx).Tracef("Container not found during deleteContainerState: %v", r.ContainerID)
465467
return fmt.Errorf("container not found: %w", err)
466468
}
467-
// remove container state regardless of delete's success
468-
defer b.hostState.RemoveContainer(req.ctx, r.ContainerID)
469469

470470
b.forwardRequestToGcs(req)
471471
return nil

internal/gcs-sidecar/host.go

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -75,17 +75,18 @@ func (h *Host) AddContainer(ctx context.Context, id string, c *Container) error
7575
return nil
7676
}
7777

78-
func (h *Host) RemoveContainer(ctx context.Context, id string) {
78+
func (h *Host) RemoveContainer(ctx context.Context, id string) error {
7979
h.containersMutex.Lock()
8080
defer h.containersMutex.Unlock()
8181

8282
_, ok := h.containers[id]
8383
if !ok {
8484
log.G(ctx).Tracef("RemoveContainer: Container not found: ID: %v", id)
85-
return
85+
return gcserr.NewHresultError(gcserr.HrVmcomputeSystemNotFound)
8686
}
8787

8888
delete(h.containers, id)
89+
return nil
8990
}
9091

9192
func (h *Host) GetCreatedContainer(ctx context.Context, id string) (*Container, error) {

pkg/securitypolicy/securitypolicy_options.go

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -86,7 +86,7 @@ func (s *SecurityOptions) SetConfidentialOptions(ctx context.Context, enforcerTy
8686
// The other point is on startup where we take a flag to set the default
8787
// policy enforcer to use before a policy arrives. After that flag is set,
8888
// we use the enforcer in question to set up logging as well.
89-
if err = s.PolicyEnforcer.EnforceRuntimeLoggingPolicy(ctx); err == nil {
89+
if err = p.EnforceRuntimeLoggingPolicy(ctx); err == nil {
9090
logrus.SetOutput(s.logWriter)
9191
} else {
9292
logrus.SetOutput(io.Discard)

0 commit comments

Comments
 (0)