From 3b4ee6c8e3af5fe5f2a5f27fca1e045da7e319e8 Mon Sep 17 00:00:00 2001 From: Blaine Gardner Date: Mon, 23 Nov 2020 12:35:58 -0700 Subject: [PATCH] ceph: update object bucket provisioner library The library for object bucket provisioning is updated to fix errors during provisioning. Signed-off-by: Blaine Gardner --- cluster/charts/rook-ceph/templates/resources.yaml | 2 ++ cluster/examples/kubernetes/ceph/crds.yaml | 2 ++ go.mod | 2 +- go.sum | 5 +++-- pkg/operator/ceph/object/bucket/provisioner.go | 1 + pkg/operator/ceph/object/controller.go | 2 +- tests/framework/installer/ceph_manifests.go | 2 ++ 7 files changed, 12 insertions(+), 4 deletions(-) diff --git a/cluster/charts/rook-ceph/templates/resources.yaml b/cluster/charts/rook-ceph/templates/resources.yaml index a6dfa5a34..1903153c2 100644 --- a/cluster/charts/rook-ceph/templates/resources.yaml +++ b/cluster/charts/rook-ceph/templates/resources.yaml @@ -1329,6 +1329,8 @@ spec: type: object nullable: true x-kubernetes-preserve-unknown-fields: true + objectBucketName: + type: string status: type: object x-kubernetes-preserve-unknown-fields: true diff --git a/cluster/examples/kubernetes/ceph/crds.yaml b/cluster/examples/kubernetes/ceph/crds.yaml index 7db87ddd8..1b2c2a6e2 100644 --- a/cluster/examples/kubernetes/ceph/crds.yaml +++ b/cluster/examples/kubernetes/ceph/crds.yaml @@ -1359,6 +1359,8 @@ spec: type: object nullable: true x-kubernetes-preserve-unknown-fields: true + objectBucketName: + type: string status: type: object x-kubernetes-preserve-unknown-fields: true diff --git a/go.mod b/go.mod index 0fc37b058..399180db1 100644 --- a/go.mod +++ b/go.mod @@ -17,7 +17,7 @@ require ( github.com/hashicorp/vault/api v1.0.5-0.20200902155336-f9d5ce5a171a github.com/icrowley/fake v0.0.0-20180203215853-4178557ae428 github.com/k8snetworkplumbingwg/network-attachment-definition-client v1.1.0 - github.com/kube-object-storage/lib-bucket-provisioner v0.0.0-20201113145926-53eac50605b4 + github.com/kube-object-storage/lib-bucket-provisioner v0.0.0-20201201192536-e56b2dc69af6 github.com/libopenstorage/secrets v0.0.0-20201006135900-af310b01fe47 github.com/miekg/dns v1.1.34 // indirect github.com/openshift/cluster-api v0.0.0-20191129101638-b09907ac6668 diff --git a/go.sum b/go.sum index ba0bca90e..e3e2507b1 100644 --- a/go.sum +++ b/go.sum @@ -1040,6 +1040,7 @@ github.com/json-iterator/go v1.1.9/go.mod h1:KdQUCv79m/52Kvf8AW2vK1V8akMuk1QjK/u github.com/json-iterator/go v1.1.10 h1:Kz6Cvnvv2wGdaG/V8yMvfkmNiXq9Ya2KUv4rouJJr68= github.com/json-iterator/go v1.1.10/go.mod h1:KdQUCv79m/52Kvf8AW2vK1V8akMuk1QjK/uOdHXbAo4= github.com/jstemmer/go-junit-report v0.0.0-20190106144839-af01ea7f8024/go.mod h1:6v2b51hI/fHJwM22ozAgKL4VKDeJcHhJFhtBdhmNjmU= +github.com/jstemmer/go-junit-report v0.9.1 h1:6QPYqodiu3GuPL+7mfx+NwDdp2eTkp9IfEUpgAwUN0o= github.com/jstemmer/go-junit-report v0.9.1/go.mod h1:Brl9GWCQeLvo8nXZwPNNblvFj/XSXhF0NWZEnDohbsk= github.com/jsternberg/zap-logfmt v1.0.0/go.mod h1:uvPs/4X51zdkcm5jXl5SYoN+4RK21K8mysFmDaM/h+o= github.com/jtolds/gls v4.2.1+incompatible/go.mod h1:QJZ7F/aHp+rZTRtaJ1ow/lLfFfVYBRgL+9YlvaHOwJU= @@ -1088,8 +1089,8 @@ github.com/kr/pty v1.1.5/go.mod h1:9r2w37qlBe7rQ6e1fg1S/9xpWHSnaqNdHD3WcMdbPDA= github.com/kr/text v0.1.0 h1:45sCR5RtlFHMR4UwH9sdQ5TC8v0qDQCHnXt+kaKSTVE= github.com/kr/text v0.1.0/go.mod h1:4Jbv+DJW3UT/LiOwJeYQe1efqtUx/iVham/4vfdArNI= github.com/kshvakov/clickhouse v1.3.5/go.mod h1:DMzX7FxRymoNkVgizH0DWAL8Cur7wHLgx3MUnGwJqpE= -github.com/kube-object-storage/lib-bucket-provisioner v0.0.0-20201113145926-53eac50605b4 h1:67yagwv5kBOnQ+Bmu7o4qMy03VZK6a0xQ8rQQhtj8e4= -github.com/kube-object-storage/lib-bucket-provisioner v0.0.0-20201113145926-53eac50605b4/go.mod h1:rmRxr5+DBteSjSjhTCrYUNL/RgnnAftPCuR+WXDTjQQ= +github.com/kube-object-storage/lib-bucket-provisioner v0.0.0-20201201192536-e56b2dc69af6 h1:QPGMtpffmVJ14fRlipcTj+wEXeVGSLtwl1f+0rwD9UA= +github.com/kube-object-storage/lib-bucket-provisioner v0.0.0-20201201192536-e56b2dc69af6/go.mod h1:i+faT/nMoHqzCx95vZsh/82TDNO7CtWWLOIT4iECXI4= github.com/kylelemons/godebug v0.0.0-20160406211939-eadb3ce320cb/go.mod h1:B69LEHPfb2qLo0BaaOLcbitczOKLWTsrBG9LczfCD4k= github.com/kylelemons/godebug v0.0.0-20170820004349-d65d576e9348/go.mod h1:B69LEHPfb2qLo0BaaOLcbitczOKLWTsrBG9LczfCD4k= github.com/kylelemons/godebug v1.1.0/go.mod h1:9/0rRGxNHcop5bhtWyNeEfOS8JIWk580+fNqagV/RAw= diff --git a/pkg/operator/ceph/object/bucket/provisioner.go b/pkg/operator/ceph/object/bucket/provisioner.go index 9b402a1a3..fc5b394ed 100644 --- a/pkg/operator/ceph/object/bucket/provisioner.go +++ b/pkg/operator/ceph/object/bucket/provisioner.go @@ -74,6 +74,7 @@ func (p Provisioner) Provision(options *apibkt.BucketOptions) (*bktv1alpha1.Obje s3svc, err := cephObject.NewS3Agent(p.accessKeyID, p.secretAccessKey, p.getObjectStoreEndpoint(), true) if err != nil { + p.deleteOBCResourceLogError("") return nil, err } diff --git a/pkg/operator/ceph/object/controller.go b/pkg/operator/ceph/object/controller.go index 7c52b0df4..ee5136b25 100644 --- a/pkg/operator/ceph/object/controller.go +++ b/pkg/operator/ceph/object/controller.go @@ -448,7 +448,7 @@ func (r *ReconcileCephObjectStore) verifyObjectBucketCleanup(objectstore *cephv1 bktProvisioner := GetObjectBucketProvisioner(r.context, objectstore.Namespace) bktProvisioner = strings.Replace(bktProvisioner, "/", "-", -1) selector := fmt.Sprintf("bucket-provisioner=%s", bktProvisioner) - objectBuckets, err := r.bktclient.ObjectbucketV1alpha1().ObjectBuckets().List(metav1.ListOptions{LabelSelector: selector}) + objectBuckets, err := r.bktclient.ObjectbucketV1alpha1().ObjectBuckets().List(context.TODO(), metav1.ListOptions{LabelSelector: selector}) if err != nil { logger.Errorf("failed to delete object store. failed to list buckets for objectstore %q in namespace %q", objectstore.Name, objectstore.Namespace) return opcontroller.WaitForRequeueIfFinalizerBlocked, false diff --git a/tests/framework/installer/ceph_manifests.go b/tests/framework/installer/ceph_manifests.go index 066423995..f3ce40e44 100644 --- a/tests/framework/installer/ceph_manifests.go +++ b/tests/framework/installer/ceph_manifests.go @@ -1412,6 +1412,8 @@ spec: type: object nullable: true x-kubernetes-preserve-unknown-fields: true + objectBucketName: + type: string status: type: object x-kubernetes-preserve-unknown-fields: true