Skip to content

Commit eacabe2

Browse files
committed
Log the error when tmp cleanup fails
Signed-off-by: Stefan Prodan <stefan.prodan@gmail.com>
1 parent 8b6965b commit eacabe2

5 files changed

+27
-4
lines changed

api/v1beta1/zz_generated.deepcopy.go

Lines changed: 1 addition & 0 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

controllers/bucket_controller.go

Lines changed: 8 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -177,14 +177,21 @@ func (r *BucketReconciler) Reconcile(ctx context.Context, req ctrl.Request) (ctr
177177
}
178178

179179
func (r *BucketReconciler) reconcile(ctx context.Context, bucket sourcev1.Bucket) (sourcev1.Bucket, error) {
180+
log := ctrl.LoggerFrom(ctx)
180181
var err error
181182
var sourceBucket sourcev1.Bucket
183+
182184
tempDir, err := os.MkdirTemp("", bucket.Name)
183185
if err != nil {
184186
err = fmt.Errorf("tmp dir error: %w", err)
185187
return sourcev1.BucketNotReady(bucket, sourcev1.StorageOperationFailedReason, err.Error()), err
186188
}
187-
defer os.RemoveAll(tempDir)
189+
defer func() {
190+
if err := os.RemoveAll(tempDir); err != nil {
191+
log.Error(err, "failed to remove working directory", "path", tempDir)
192+
}
193+
}()
194+
188195
if bucket.Spec.Provider == sourcev1.GoogleBucketProvider {
189196
sourceBucket, err = r.reconcileWithGCP(ctx, bucket, tempDir)
190197
if err != nil {

controllers/gitrepository_controller.go

Lines changed: 7 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -220,13 +220,19 @@ func (r *GitRepositoryReconciler) checkDependencies(repository sourcev1.GitRepos
220220
}
221221

222222
func (r *GitRepositoryReconciler) reconcile(ctx context.Context, repository sourcev1.GitRepository) (sourcev1.GitRepository, error) {
223+
log := ctrl.LoggerFrom(ctx)
224+
223225
// create tmp dir for the Git clone
224226
tmpGit, err := os.MkdirTemp("", repository.Name)
225227
if err != nil {
226228
err = fmt.Errorf("tmp dir error: %w", err)
227229
return sourcev1.GitRepositoryNotReady(repository, sourcev1.StorageOperationFailedReason, err.Error()), err
228230
}
229-
defer os.RemoveAll(tmpGit)
231+
defer func() {
232+
if err := os.RemoveAll(tmpGit); err != nil {
233+
log.Error(err, "failed to remove working directory", "path", tmpGit)
234+
}
235+
}()
230236

231237
// Configure auth options using secret
232238
var authOpts *git.AuthOptions

controllers/helmchart_controller.go

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -209,7 +209,11 @@ func (r *HelmChartReconciler) Reconcile(ctx context.Context, req ctrl.Request) (
209209
r.recordReadiness(ctx, chart)
210210
return ctrl.Result{Requeue: true}, err
211211
}
212-
defer os.RemoveAll(workDir)
212+
defer func() {
213+
if err := os.RemoveAll(workDir); err != nil {
214+
log.Error(err, "failed to remove working directory", "path", workDir)
215+
}
216+
}()
213217

214218
// Perform the reconciliation for the chart source type
215219
var reconciledChart sourcev1.HelmChart

controllers/helmrepository_controller.go

Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -173,6 +173,7 @@ func (r *HelmRepositoryReconciler) Reconcile(ctx context.Context, req ctrl.Reque
173173
}
174174

175175
func (r *HelmRepositoryReconciler) reconcile(ctx context.Context, repo sourcev1.HelmRepository) (sourcev1.HelmRepository, error) {
176+
log := ctrl.LoggerFrom(ctx)
176177
clientOpts := []helmgetter.Option{
177178
helmgetter.WithURL(repo.Spec.URL),
178179
helmgetter.WithTimeout(repo.Spec.Timeout.Duration),
@@ -196,7 +197,11 @@ func (r *HelmRepositoryReconciler) reconcile(ctx context.Context, repo sourcev1.
196197
err = fmt.Errorf("failed to create temporary working directory for credentials: %w", err)
197198
return sourcev1.HelmRepositoryNotReady(repo, sourcev1.AuthenticationFailedReason, err.Error()), err
198199
}
199-
defer os.RemoveAll(authDir)
200+
defer func() {
201+
if err := os.RemoveAll(authDir); err != nil {
202+
log.Error(err, "failed to remove working directory", "path", authDir)
203+
}
204+
}()
200205

201206
opts, err := getter.ClientOptionsFromSecret(authDir, secret)
202207
if err != nil {

0 commit comments

Comments
 (0)