Skip to content

Commit c4e4b39

Browse files
committed
Added Logger to closing GCP client
Signed-off-by: pa250194 <[email protected]> Added log for GCP provider auth error Signed-off-by: pa250194 <[email protected]>
1 parent 7921caf commit c4e4b39

File tree

3 files changed

+15
-3
lines changed

3 files changed

+15
-3
lines changed

controllers/bucket_controller.go

Lines changed: 5 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -268,12 +268,13 @@ func (r *BucketReconciler) reconcileDelete(ctx context.Context, bucket sourcev1.
268268
// reconcileWithGCP handles getting objects from a Google Cloud Platform bucket
269269
// using a gcp client
270270
func (r *BucketReconciler) reconcileWithGCP(ctx context.Context, bucket sourcev1.Bucket, tempDir string) (sourcev1.Bucket, error) {
271+
log := logr.FromContext(ctx)
271272
gcpClient, err := r.authGCP(ctx, bucket)
272273
if err != nil {
273274
err = fmt.Errorf("auth error: %w", err)
274275
return sourcev1.BucketNotReady(bucket, sourcev1.AuthenticationFailedReason, err.Error()), err
275276
}
276-
defer gcpClient.Client.Close()
277+
defer gcpClient.Close(log)
277278

278279
ctxTimeout, cancel := context.WithTimeout(ctx, bucket.Spec.Timeout.Duration)
279280
defer cancel()
@@ -432,7 +433,9 @@ func (r *BucketReconciler) authGCP(ctx context.Context, bucket sourcev1.Bucket)
432433

433434
}
434435

435-
func (r *BucketReconciler) auth(ctx context.Context, bucket sourcev1.Bucket) (*minio.Client, error) {
436+
// authMinio creates a new Minio client to interact with S3
437+
// compatible storage services.
438+
func (r *BucketReconciler) authMinio(ctx context.Context, bucket sourcev1.Bucket) (*minio.Client, error) {
436439
opt := minio.Options{
437440
Region: bucket.Spec.Region,
438441
Secure: !bucket.Spec.Insecure,

pkg/gcp/gcp.go

Lines changed: 9 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -25,6 +25,7 @@ import (
2525
"path/filepath"
2626

2727
gcpstorage "cloud.google.com/go/storage"
28+
"github.com/go-logr/logr"
2829
"google.golang.org/api/iterator"
2930
"google.golang.org/api/option"
3031
)
@@ -127,7 +128,7 @@ func (c *GCPClient) FGetObject(ctx context.Context, bucketName, objectName, loca
127128
return err
128129
}
129130
if !exists {
130-
return ObjectDoesNotExist
131+
return ErrorObjectDoesNotExist
131132
}
132133

133134
objectFile, err := os.OpenFile(localPath, os.O_CREATE|os.O_WRONLY, 0600)
@@ -162,3 +163,10 @@ func (c *GCPClient) ListObjects(ctx context.Context, bucketName string, query *g
162163
items := c.Client.Bucket(bucketName).Objects(ctx, query)
163164
return items
164165
}
166+
167+
// Close closes the GCP Client and logs any useful errors
168+
func (c *GCPClient) Close(log logr.Logger) {
169+
if err := c.Client.Close(); err != nil {
170+
log.Error(err, "GCP Provider")
171+
}
172+
}

pkg/gcp/gcp_test.go

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -30,6 +30,7 @@ import (
3030
"os"
3131
"path/filepath"
3232
"testing"
33+
"time"
3334

3435
gcpstorage "cloud.google.com/go/storage"
3536
"github.com/fluxcd/source-controller/pkg/gcp"

0 commit comments

Comments
 (0)