From e679c88a1bd37d21c46254fd49bb6798c948c2a0 Mon Sep 17 00:00:00 2001 From: Mikalai Radchuk Date: Fri, 14 Jun 2024 15:09:11 +0200 Subject: [PATCH] Remove E2E test testing rukpak We use rukpak as a library at the moment and want rukpak to have own tests covering limitations such not allowing to install content with webhooks. Signed-off-by: Mikalai Radchuk --- Makefile | 1 - config/rbac/role.yaml | 69 +++++++++++++++++++ ...r_extension_registryV1_limitations_test.go | 39 ----------- .../package-with-webhooks.v1.0.0/Dockerfile | 15 ---- ...e-with-webhooks.clusterserviceversion.yaml | 34 --------- .../metadata/annotations.yaml | 10 --- testdata/catalogs/test-catalog/catalog.yaml | 20 ------ 7 files changed, 69 insertions(+), 119 deletions(-) create mode 100644 config/rbac/role.yaml delete mode 100644 test/e2e/cluster_extension_registryV1_limitations_test.go delete mode 100644 testdata/bundles/registry-v1/package-with-webhooks.v1.0.0/Dockerfile delete mode 100644 testdata/bundles/registry-v1/package-with-webhooks.v1.0.0/manifests/bundle-with-webhooks.clusterserviceversion.yaml delete mode 100644 testdata/bundles/registry-v1/package-with-webhooks.v1.0.0/metadata/annotations.yaml diff --git a/Makefile b/Makefile index 4c15fbc27..e46cc379a 100644 --- a/Makefile +++ b/Makefile @@ -192,7 +192,6 @@ registry-load-bundles: ## Load selected e2e testdata container images created in testdata/bundles/registry-v1/build-push-e2e-bundle.sh ${E2E_REGISTRY_NAMESPACE} $(REGISTRY_ROOT)/bundles/registry-v1/prometheus-operator:v1.0.1 prometheus-operator.v1.0.1 prometheus-operator.v1.0.0 testdata/bundles/registry-v1/build-push-e2e-bundle.sh ${E2E_REGISTRY_NAMESPACE} $(REGISTRY_ROOT)/bundles/registry-v1/prometheus-operator:v1.2.0 prometheus-operator.v1.2.0 prometheus-operator.v1.0.0 testdata/bundles/registry-v1/build-push-e2e-bundle.sh ${E2E_REGISTRY_NAMESPACE} $(REGISTRY_ROOT)/bundles/registry-v1/prometheus-operator:v2.0.0 prometheus-operator.v2.0.0 prometheus-operator.v1.0.0 - testdata/bundles/registry-v1/build-push-e2e-bundle.sh ${E2E_REGISTRY_NAMESPACE} $(REGISTRY_ROOT)/bundles/registry-v1/package-with-webhooks:v1.0.0 package-with-webhooks.v1.0.0 package-with-webhooks.v1.0.0 #SECTION Build diff --git a/config/rbac/role.yaml b/config/rbac/role.yaml new file mode 100644 index 000000000..d1016c6c8 --- /dev/null +++ b/config/rbac/role.yaml @@ -0,0 +1,69 @@ +--- +apiVersion: rbac.authorization.k8s.io/v1 +kind: ClusterRole +metadata: + name: manager-role +rules: +- apiGroups: + - '*' + resources: + - '*' + verbs: + - '*' +- apiGroups: + - catalogd.operatorframework.io + resources: + - catalogmetadata + verbs: + - list + - watch +- apiGroups: + - catalogd.operatorframework.io + resources: + - clustercatalogs + verbs: + - list + - watch +- apiGroups: + - "" + resources: + - configmaps + verbs: + - list + - watch +- apiGroups: + - "" + resources: + - pods + verbs: + - create + - delete + - list + - watch +- apiGroups: + - "" + resources: + - pods/log + verbs: + - get +- apiGroups: + - olm.operatorframework.io + resources: + - clusterextensions + verbs: + - get + - list + - watch +- apiGroups: + - olm.operatorframework.io + resources: + - clusterextensions/finalizers + verbs: + - update +- apiGroups: + - olm.operatorframework.io + resources: + - clusterextensions/status + verbs: + - patch + - update diff --git a/test/e2e/cluster_extension_registryV1_limitations_test.go b/test/e2e/cluster_extension_registryV1_limitations_test.go deleted file mode 100644 index 824b1f686..000000000 --- a/test/e2e/cluster_extension_registryV1_limitations_test.go +++ /dev/null @@ -1,39 +0,0 @@ -package e2e - -import ( - "context" - "testing" - - "github.com/stretchr/testify/assert" - "github.com/stretchr/testify/require" - apimeta "k8s.io/apimachinery/pkg/api/meta" - metav1 "k8s.io/apimachinery/pkg/apis/meta/v1" - "k8s.io/apimachinery/pkg/types" - - ocv1alpha1 "github.com/operator-framework/operator-controller/api/v1alpha1" -) - -func TestClusterExtensionPackagesWithWebhooksAreNotAllowed(t *testing.T) { - ctx := context.Background() - clusterExtension, catalog := testInit(t) - defer testCleanup(t, catalog, clusterExtension) - defer getArtifactsOutput(t) - - clusterExtension.Spec = ocv1alpha1.ClusterExtensionSpec{ - PackageName: "package-with-webhooks", - Version: "1.0.0", - InstallNamespace: "default", - } - require.NoError(t, c.Create(ctx, clusterExtension)) - require.EventuallyWithT(t, func(ct *assert.CollectT) { - assert.NoError(ct, c.Get(ctx, types.NamespacedName{Name: clusterExtension.Name}, clusterExtension)) - cond := apimeta.FindStatusCondition(clusterExtension.Status.Conditions, ocv1alpha1.TypeInstalled) - if !assert.NotNil(ct, cond) { - return - } - assert.Equal(ct, metav1.ConditionFalse, cond.Status) - assert.Equal(ct, ocv1alpha1.ReasonInstallationFailed, cond.Reason) - assert.Contains(ct, cond.Message, "webhookDefinitions are not supported") - assert.Equal(ct, &ocv1alpha1.BundleMetadata{Name: "package-with-webhooks.1.0.0", Version: "1.0.0"}, clusterExtension.Status.ResolvedBundle) - }, pollDuration, pollInterval) -} diff --git a/testdata/bundles/registry-v1/package-with-webhooks.v1.0.0/Dockerfile b/testdata/bundles/registry-v1/package-with-webhooks.v1.0.0/Dockerfile deleted file mode 100644 index 58aed6359..000000000 --- a/testdata/bundles/registry-v1/package-with-webhooks.v1.0.0/Dockerfile +++ /dev/null @@ -1,15 +0,0 @@ -FROM scratch - -# Core bundle labels. -LABEL operators.operatorframework.io.bundle.mediatype.v1=registry+v1 -LABEL operators.operatorframework.io.bundle.manifests.v1=manifests/ -LABEL operators.operatorframework.io.bundle.metadata.v1=metadata/ -LABEL operators.operatorframework.io.bundle.package.v1=package-with-webhooks -LABEL operators.operatorframework.io.bundle.channels.v1=beta -LABEL operators.operatorframework.io.metrics.builder=operator-sdk-v1.28.0 -LABEL operators.operatorframework.io.metrics.mediatype.v1=metrics+v1 -LABEL operators.operatorframework.io.metrics.project_layout=unknown - -# Copy files to locations specified by labels. -COPY manifests /manifests/ -COPY metadata /metadata/ diff --git a/testdata/bundles/registry-v1/package-with-webhooks.v1.0.0/manifests/bundle-with-webhooks.clusterserviceversion.yaml b/testdata/bundles/registry-v1/package-with-webhooks.v1.0.0/manifests/bundle-with-webhooks.clusterserviceversion.yaml deleted file mode 100644 index baec06d79..000000000 --- a/testdata/bundles/registry-v1/package-with-webhooks.v1.0.0/manifests/bundle-with-webhooks.clusterserviceversion.yaml +++ /dev/null @@ -1,34 +0,0 @@ -apiVersion: operators.coreos.com/v1alpha1 -kind: ClusterServiceVersion -metadata: - name: package-with-webhooks.v1.0.0 - namespace: placeholder -spec: - webhookdefinitions: - - admissionReviewVersions: - - v1alpha1 - - v1beta1 - containerPort: 443 - conversionCRDs: - - testcds.package-with-webhooks.io - deploymentName: test-operator-controller-manager - generateName: testcrds - sideEffects: None - targetPort: 9443 - type: ConversionWebhook - webhookPath: /convert - description: Test package with webhooks - displayName: Package with webhooks - icon: - - base64data: PHN2ZyB3aWR0aD0iMjQ5MCIgaGVpZ2h0PSIyNTAwIiB2aWV3Qm94PSIwIDAgMjU2IDI1NyIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIiBwcmVzZXJ2ZUFzcGVjdFJhdGlvPSJ4TWlkWU1pZCI+PHBhdGggZD0iTTEyOC4wMDEuNjY3QzU3LjMxMS42NjcgMCA1Ny45NzEgMCAxMjguNjY0YzAgNzAuNjkgNTcuMzExIDEyNy45OTggMTI4LjAwMSAxMjcuOTk4UzI1NiAxOTkuMzU0IDI1NiAxMjguNjY0QzI1NiA1Ny45NyAxOTguNjg5LjY2NyAxMjguMDAxLjY2N3ptMCAyMzkuNTZjLTIwLjExMiAwLTM2LjQxOS0xMy40MzUtMzYuNDE5LTMwLjAwNGg3Mi44MzhjMCAxNi41NjYtMTYuMzA2IDMwLjAwNC0zNi40MTkgMzAuMDA0em02MC4xNTMtMzkuOTRINjcuODQyVjE3OC40N2gxMjAuMzE0djIxLjgxNmgtLjAwMnptLS40MzItMzMuMDQ1SDY4LjE4NWMtLjM5OC0uNDU4LS44MDQtLjkxLTEuMTg4LTEuMzc1LTEyLjMxNS0xNC45NTQtMTUuMjE2LTIyLjc2LTE4LjAzMi0zMC43MTYtLjA0OC0uMjYyIDE0LjkzMyAzLjA2IDI1LjU1NiA1LjQ1IDAgMCA1LjQ2NiAxLjI2NSAxMy40NTggMi43MjItNy42NzMtOC45OTQtMTIuMjMtMjAuNDI4LTEyLjIzLTMyLjExNiAwLTI1LjY1OCAxOS42OC00OC4wNzkgMTIuNTgtNjYuMjAxIDYuOTEuNTYyIDE0LjMgMTQuNTgzIDE0LjggMzYuNTA1IDcuMzQ2LTEwLjE1MiAxMC40Mi0yOC42OSAxMC40Mi00MC4wNTYgMC0xMS43NjkgNy43NTUtMjUuNDQgMTUuNTEyLTI1LjkwNy02LjkxNSAxMS4zOTYgMS43OSAyMS4xNjUgOS41MyA0NS40IDIuOTAyIDkuMTAzIDIuNTMyIDI0LjQyMyA0Ljc3MiAzNC4xMzguNzQ0LTIwLjE3OCA0LjIxMy00OS42MiAxNy4wMTQtNTkuNzg0LTUuNjQ3IDEyLjguODM2IDI4LjgxOCA1LjI3IDM2LjUxOCA3LjE1NCAxMi40MjQgMTEuNDkgMjEuODM2IDExLjQ5IDM5LjYzOCAwIDExLjkzNi00LjQwNyAyMy4xNzMtMTEuODQgMzEuOTU4IDguNDUyLTEuNTg2IDE0LjI4OS0zLjAxNiAxNC4yODktMy4wMTZsMjcuNDUtNS4zNTVjLjAwMi0uMDAyLTMuOTg3IDE2LjQwMS0xOS4zMTQgMzIuMTk3eiIgZmlsbD0iI0RBNEUzMSIvPjwvc3ZnPg== - mediatype: image/svg+xml - installModes: - - supported: true - type: OwnNamespace - - supported: true - type: SingleNamespace - - supported: false - type: MultiNamespace - - supported: true - type: AllNamespaces - version: 1.0.0 diff --git a/testdata/bundles/registry-v1/package-with-webhooks.v1.0.0/metadata/annotations.yaml b/testdata/bundles/registry-v1/package-with-webhooks.v1.0.0/metadata/annotations.yaml deleted file mode 100644 index 55bf34e68..000000000 --- a/testdata/bundles/registry-v1/package-with-webhooks.v1.0.0/metadata/annotations.yaml +++ /dev/null @@ -1,10 +0,0 @@ -annotations: - # Core bundle annotations. - operators.operatorframework.io.bundle.mediatype.v1: registry+v1 - operators.operatorframework.io.bundle.manifests.v1: manifests/ - operators.operatorframework.io.bundle.metadata.v1: metadata/ - operators.operatorframework.io.bundle.package.v1: package-with-webhooks - operators.operatorframework.io.bundle.channels.v1: beta - operators.operatorframework.io.metrics.builder: operator-sdk-v1.28.0 - operators.operatorframework.io.metrics.mediatype.v1: metrics+v1 - operators.operatorframework.io.metrics.project_layout: unknown diff --git a/testdata/catalogs/test-catalog/catalog.yaml b/testdata/catalogs/test-catalog/catalog.yaml index 2911e341c..36736dac2 100644 --- a/testdata/catalogs/test-catalog/catalog.yaml +++ b/testdata/catalogs/test-catalog/catalog.yaml @@ -60,23 +60,3 @@ properties: value: packageName: prometheus version: 2.0.0 ---- -schema: olm.package -name: package-with-webhooks -defaultChannel: beta ---- -schema: olm.channel -name: beta -package: package-with-webhooks -entries: - - name: package-with-webhooks.1.0.0 ---- -schema: olm.bundle -name: package-with-webhooks.1.0.0 -package: package-with-webhooks -image: docker-registry.operator-controller-e2e.svc.cluster.local:5000/bundles/registry-v1/package-with-webhooks:v1.0.0 -properties: - - type: olm.package - value: - packageName: package-with-webhooks - version: 1.0.0