Skip to content

Commit

Permalink
Wrap err with context instead of logging twice
Browse files Browse the repository at this point in the history
This wraps the errors which are returned instead of logging them, as
the returned error is logged at the end of the reconcile run.

Signed-off-by: Hidde Beydals <hello@hidde.co>
  • Loading branch information
hiddeco committed Aug 11, 2021
1 parent b49a809 commit 29f207d
Show file tree
Hide file tree
Showing 2 changed files with 9 additions and 11 deletions.
11 changes: 5 additions & 6 deletions controllers/bucket_controller.go
Original file line number Diff line number Diff line change
Expand Up @@ -365,7 +365,7 @@ func (r *BucketReconciler) reconcileSource(ctx context.Context, obj *sourcev1.Bu
// Calculate revision checksum from the collected index values
revision, err := r.revision(index)
if err != nil {
ctrl.LoggerFrom(ctx).Error(err, "failed to calculate revision")
err = fmt.Errorf("failed to calculate revision for index: %w", err)
return ctrl.Result{}, err
}

Expand Down Expand Up @@ -443,22 +443,21 @@ func (r *BucketReconciler) reconcileArtifact(ctx context.Context, obj *sourcev1.

// Ensure target path exists and is a directory
if f, err := os.Stat(dir); err != nil {
ctrl.LoggerFrom(ctx).Error(err, "failed to stat source path")
err = fmt.Errorf("failed to stat target path: %w", err)
return ctrl.Result{}, err
} else if !f.IsDir() {
err := fmt.Errorf("source path '%s' is not a directory", dir)
ctrl.LoggerFrom(ctx).Error(err, "invalid target path")
err = fmt.Errorf("invalid target path: '%s' is not a directory", dir)
return ctrl.Result{}, err
}

// Ensure artifact directory exists and acquire lock
if err := r.Storage.MkdirAll(artifact); err != nil {
ctrl.LoggerFrom(ctx).Error(err, "failed to create artifact directory")
err = fmt.Errorf("failed to create artifact directory: %w", err)
return ctrl.Result{}, err
}
unlock, err := r.Storage.Lock(artifact)
if err != nil {
ctrl.LoggerFrom(ctx).Error(err, "failed to acquire lock for artifact")
err = fmt.Errorf("failed to acquire lock for artifact: %w", err)
return ctrl.Result{}, err
}
defer unlock()
Expand Down
9 changes: 4 additions & 5 deletions controllers/gitrepository_controller.go
Original file line number Diff line number Diff line change
Expand Up @@ -401,22 +401,21 @@ func (r *GitRepositoryReconciler) reconcileArtifact(ctx context.Context, obj *so

// Ensure target path exists and is a directory
if f, err := os.Stat(dir); err != nil {
ctrl.LoggerFrom(ctx).Error(err, "failed to stat source path")
err = fmt.Errorf("failed to stat target path: %w", err)
return ctrl.Result{}, err
} else if !f.IsDir() {
err := fmt.Errorf("source path '%s' is not a directory", dir)
ctrl.LoggerFrom(ctx).Error(err, "invalid target path")
err = fmt.Errorf("invalid target path: '%s' is not a directory", dir)
return ctrl.Result{}, err
}

// Ensure artifact directory exists and acquire lock
if err := r.Storage.MkdirAll(artifact); err != nil {
ctrl.LoggerFrom(ctx).Error(err, "failed to create artifact directory")
err = fmt.Errorf("failed to create artifact directory: %w", err)
return ctrl.Result{}, err
}
unlock, err := r.Storage.Lock(artifact)
if err != nil {
ctrl.LoggerFrom(ctx).Error(err, "failed to acquire lock for artifact")
err = fmt.Errorf("failed to acquire lock for artifact: %w", err)
return ctrl.Result{}, err
}
defer unlock()
Expand Down

0 comments on commit 29f207d

Please sign in to comment.