Skip to content
This repository was archived by the owner on Jun 26, 2024. It is now read-only.

Commit c23a4ae

Browse files
sadlerappmacik
authored andcommitted
disable olm descriptor support (#1251)
This was causing performance issues under OCP 4.11. Signed-off-by: Andy Sadler <[email protected]>
1 parent a3ca007 commit c23a4ae

File tree

16 files changed

+7
-1169
lines changed

16 files changed

+7
-1169
lines changed

docs/userguide/modules/ROOT/pages/intro.adoc

Lines changed: 4 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -34,18 +34,18 @@ With {servicebinding-title}, you can:
3434
*Exposal of binding data from services*
3535

3636
* Based on annotations present in CRD, custom resources (CRs), or resources.
37-
* Based on descriptors present in Operator Lifecycle Manager (OLM) descriptors.
37+
* Project secrets and services following the Provisioned Service standard.
3838
3939
*Workload projection*
4040

41-
* Projection of binding data as files, with a volume mounts.
41+
* Projection of binding data as files, with a volume mount.
4242
* Projection of binding data as environment variables.
4343
4444
*Service Binding Options*
4545

4646
* Bind backing services in a namespace that is different from the workload namespace.
4747
* Project binding data into the specific container workloads.
48-
* Auto-detection of the binding data from resources owned by the backing service CR.
48+
* Auto-detection of the binding data from resources owned by the backing service CR.
4949
* Change the binding names before projecting them into workload.
5050
* Compose custom binding data from the exposed binding data.
5151
* Support for non-`PodSpec` compliant workload resources.
@@ -71,7 +71,7 @@ By using the {servicebinding-title}, as an application developer, you need to de
7171
The CRD of the {servicebinding-title} supports the following APIs:
7272

7373
* *Service Binding* with the `binding.operators.coreos.com` API group.
74-
+
74+
+
7575
This API is compliant with the Service Binding specification. It is fully supported and considered as the mature API. Use this API in production environments.
7676
7777
* *Service Binding (Spec API Tech Preview)* with the `servicebinding.io` API group.
@@ -100,5 +100,3 @@ vars
100100
[#referenced-specification]
101101
== Referenced specification
102102
Service Binding Operator supports the https://github.com/k8s-service-bindings/spec[Service Binding Specification for Kubernetes].
103-
104-

docs/userguide/modules/binding-workloads-using-sbo/pages/binding-options.adoc

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -18,7 +18,7 @@ While using naming strategies, depending on the expectations or requirements of
1818
* `title`: Converts the character strings where the first letter of each word is capitalized except for certain minor words.
1919
2020
.Predefined naming strategies
21-
Binding names declared through annotations or Operator Lifecycle Manager (OLM) descriptors are processed for their name change before their projection into the workload according to the following predefined naming strategies:
21+
Binding names declared through annotations are processed for their name change before their projection into the workload according to the following predefined naming strategies:
2222

2323
* `none`: When applied, there are no changes in the binding names.
2424
+

docs/userguide/modules/exposing-binding-data/nav.adoc

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,5 @@
44
** xref:provisioned-service.adoc[]
55
** xref:direct-secret-reference.adoc[]
66
** xref:adding-annotation.adoc[]
7-
** xref:olm-descriptors.adoc[]
87
** xref:detect-bindings.adoc[]
98

docs/userguide/modules/exposing-binding-data/pages/intro-expose-binding.adoc

Lines changed: 2 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -24,7 +24,6 @@ You must expose the binding data from the backing service. Depending on your wor
2424
+
2525
** xref:direct-secret-reference.adoc[Direct secret reference]
2626
** xref:adding-annotation.adoc[Declaring binding data through custom resource definition (CRD) or CR annotations]
27-
** xref:olm-descriptors.adoc[Declaring binding data through Operator Lifecycle Manager (OLM) descriptors]
2827
** xref:detect-bindings.adoc[Detection of binding data through owned resources]
2928
3029
@@ -47,12 +46,9 @@ collection of objects
4746
[#data-model]
4847
== Data model
4948

50-
This section explains the data model used in the annotation and OLM
51-
descriptors. The data model is same for CRD or CR annotations and OLM
52-
descriptors, but the syntax is different, which is explained in the
53-
respective sections.
49+
This section explains the data model used in the annotations.
5450

55-
* `path`: JSONPath template is composed of JSONPath expressions enclosed by curly braces {}.The data model used in the annotations and OLM descriptors follow specific conventions.
51+
* `path`: JSONPath template is composed of JSONPath expressions enclosed by curly braces {}. The data model used in the annotations follow specific conventions.
5652
5753
Service binding annotations must use the following convention:
5854

@@ -66,8 +62,6 @@ where:
6662
`<NAME>`:: Specifies the name under which the binding value is to be exposed. You can exclude it only when the `objectType` parameter is set to `Secret` or `ConfigMap`.
6763
`<VALUE>`:: Specifies the constant value exposed when no `path` is set.
6864

69-
Although, the data model is the same for custom resource definitions (CRD), custom resource (CR) annotations, and Operator Lifecycle Manager (OLM) descriptors, the syntax for each one differs.
70-
7165
The data model provides the details on the allowed values and semantic for the `path`, `elementType`, `objectType`, `sourceKey`, and `sourceValue` parameters.
7266

7367
.Parameters and their descriptions

docs/userguide/modules/exposing-binding-data/pages/olm-descriptors.adoc

Lines changed: 0 additions & 181 deletions
This file was deleted.

pkg/reconcile/pipeline/api.go

Lines changed: 0 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -119,9 +119,6 @@ type CRD interface {
119119
HasResource
120120

121121
Bindable
122-
123-
// optional Descriptor attached to ClusterServiceVersion resource
124-
Descriptor() (*CRDDescription, error)
125122
}
126123

127124
// Pipeline context passed to each handler

pkg/reconcile/pipeline/context/service/crd_test.go

Lines changed: 0 additions & 47 deletions
Original file line numberDiff line numberDiff line change
@@ -5,11 +5,8 @@ import (
55
. "github.com/onsi/ginkgo/extensions/table"
66
. "github.com/onsi/gomega"
77
"github.com/redhat-developer/service-binding-operator/pkg/binding"
8-
"github.com/redhat-developer/service-binding-operator/pkg/converter"
9-
v1apiextensions "k8s.io/apiextensions-apiserver/pkg/apis/apiextensions/v1"
108
"k8s.io/apimachinery/pkg/apis/meta/v1/unstructured"
119
"k8s.io/apimachinery/pkg/runtime"
12-
"k8s.io/apimachinery/pkg/runtime/schema"
1310
"k8s.io/client-go/dynamic/fake"
1411

1512
"github.com/golang/mock/gomock"
@@ -73,48 +70,4 @@ var _ = Describe("CRD", func() {
7370
crd := &customResourceDefinition{resource: u, client: client}
7471
Expect(crd.IsBindable()).To(BeFalse())
7572
})
76-
77-
It("should be bindable if there are service binding descriptors on CSV", func() {
78-
res := &v1apiextensions.CustomResourceDefinition{}
79-
res.Spec.Names.Kind = "Foo"
80-
res.Name = "foo"
81-
u, err := converter.ToUnstructured(res)
82-
Expect(err).NotTo(HaveOccurred())
83-
84-
serviceGVR := schema.GroupVersionResource{Version: "v1"}
85-
86-
csv := &olmv1alpha1.ClusterServiceVersion{}
87-
csv.Spec.CustomResourceDefinitions.Owned = []olmv1alpha1.CRDDescription{
88-
{
89-
Name: u.GetName(),
90-
Version: serviceGVR.Version,
91-
Kind: "Foo",
92-
StatusDescriptors: []olmv1alpha1.StatusDescriptor{
93-
{
94-
Path: "foo",
95-
XDescriptors: []string{"urn:alm:descriptor:io.kubernetes:Secret", "service.binding:username:sourceValue=username"},
96-
},
97-
{
98-
Path: "bar",
99-
XDescriptors: []string{"bar"},
100-
},
101-
{
102-
Path: "foo2",
103-
XDescriptors: []string{"urn:alm:descriptor:io.kubernetes:Secret", "service.binding:username2:sourceValue=username"},
104-
},
105-
},
106-
},
107-
}
108-
ucsv, err := converter.ToUnstructured(csv)
109-
Expect(err).NotTo(HaveOccurred())
110-
ucsv.SetGroupVersionKind(olmv1alpha1.SchemeGroupVersion.WithKind("ClusterServiceVersion"))
111-
ns := "ns1"
112-
ucsv.SetName("foo")
113-
ucsv.SetNamespace(ns)
114-
client = fake.NewSimpleDynamicClient(runtime.NewScheme(), ucsv)
115-
116-
crd := &customResourceDefinition{resource: u, client: client, ns: ns, serviceGVR: &serviceGVR}
117-
118-
Expect(crd.IsBindable()).To(BeTrue())
119-
})
12073
})

0 commit comments

Comments
 (0)