diff --git a/Dockerfile b/Dockerfile index a550b24b..1bd86540 100644 --- a/Dockerfile +++ b/Dockerfile @@ -14,7 +14,6 @@ COPY main.go main.go COPY api/ api/ COPY controllers/ controllers/ COPY pkg/ pkg/ -COPY internal/ internal/ # Build RUN CGO_ENABLED=0 GOOS=linux GOARCH=amd64 go build -a -o manager main.go diff --git a/controllers/componentversion_controller.go b/controllers/componentversion_controller.go index 660e8815..2654c624 100644 --- a/controllers/componentversion_controller.go +++ b/controllers/componentversion_controller.go @@ -166,6 +166,9 @@ func (r *ComponentVersionReconciler) Reconcile(ctx context.Context, req ctrl.Req return ctrl.Result{}, nil } + defer func() { + _ = octx.Finalize() + }() // reconcile the version before calling reconcile func update, version, err := r.checkVersion(ctx, octx, obj) diff --git a/controllers/mutation_reconcile_looper.go b/controllers/mutation_reconcile_looper.go index 12ded475..27ec45e4 100644 --- a/controllers/mutation_reconcile_looper.go +++ b/controllers/mutation_reconcile_looper.go @@ -307,6 +307,9 @@ func (m *MutationReconcileLooper) fetchDataFromComponentVersion(ctx context.Cont if err != nil { return nil, fmt.Errorf("failed to create authenticated client: %w", err) } + defer func() { + _ = octx.Finalize() + }() if obj.ResourceRef == nil { return nil, fmt.Errorf("no resource ref found for %s", key) @@ -375,6 +378,9 @@ func (m *MutationReconcileLooper) createSubstitutionRulesForLocalization( if err != nil { return nil, fmt.Errorf("failed to create authenticated client: %w", err) } + defer func() { + _ = octx.Finalize() + }() compvers, err := m.OCMClient.GetComponentVersion(ctx, octx, cv.GetRepositoryURL(), cv.Spec.Component, cv.Status.ReconciledVersion) if err != nil { diff --git a/controllers/resource_controller.go b/controllers/resource_controller.go index 86c78a99..a1ac3526 100644 --- a/controllers/resource_controller.go +++ b/controllers/resource_controller.go @@ -194,6 +194,9 @@ func (r *ResourceReconciler) reconcile( return ctrl.Result{}, nil } + defer func() { + _ = octx.Finalize() + }() reader, digest, size, err := r.OCMClient.GetResource(ctx, octx, componentVersion, obj.Spec.SourceRef.ResourceRef) if err != nil { diff --git a/main.go b/main.go index 68e2692a..07e32619 100644 --- a/main.go +++ b/main.go @@ -154,7 +154,6 @@ func main() { } ctx := ctrl.SetupSignalHandler() - setupLog.Info("starting manager") if err := mgr.Start(ctx); err != nil { setupLog.Error(err, "problem running manager") diff --git a/pkg/snapshot/tar.go b/pkg/snapshot/tar.go index 51b42b7d..aecc8c78 100644 --- a/pkg/snapshot/tar.go +++ b/pkg/snapshot/tar.go @@ -72,17 +72,15 @@ func buildTar(artifactPath, sourceDir string) error { } f, err := os.Open(p) if err != nil { - f.Close() - return err } - if _, err := io.Copy(tw, f); err != nil { - f.Close() + defer f.Close() + if _, err := io.Copy(tw, f); err != nil { return err } - return f.Close() + return nil }); err != nil { tw.Close() tf.Close()