From d62a74932868e40e08f416511061d3c0a6aaad90 Mon Sep 17 00:00:00 2001 From: Josef Hak Date: Mon, 31 Aug 2026 16:13:39 +0200 Subject: [PATCH 01/24] Add CI test option "test_adopted_pvc = false" - enables OpenEBS StorageClass installation in testing adopted child cluster - it's disabled by default s it's not needed by most tested apps --- scripts/deploy_cld.sh | 4 +++- scripts/utils.py | 3 +++ scripts/web/generate_catalog_json.py | 1 + 3 files changed, 7 insertions(+), 1 deletion(-) diff --git a/scripts/deploy_cld.sh b/scripts/deploy_cld.sh index 0911d760cd..fcfaf81b4d 100755 --- a/scripts/deploy_cld.sh +++ b/scripts/deploy_cld.sh @@ -102,7 +102,9 @@ elif [[ "$TEST_MODE" == adopted ]]; then # openebs is skipped: its pods cannot start before the CNI is deployed, so # this mode leaves the cluster without a default StorageClass. echo "Skipping openebs install (no CNI yet)" - else + fi + + if [[ "${TEST_ADOPTED_PVC:-false}" == true ]]; then # Default StorageClass (openebs hostpath); k0s ships none. TEST_MODE=adopted ./scripts/install_openebs.sh fi diff --git a/scripts/utils.py b/scripts/utils.py index 1b400396ba..698597dd7a 100755 --- a/scripts/utils.py +++ b/scripts/utils.py @@ -233,6 +233,9 @@ def print_test_vars(args): # CNI apps need the adopted cluster created without a CNI (see deploy_cld.sh). test_adopted_nocni = str(app_data.get('test_adopted_nocni', False)).lower() print(f"TEST_ADOPTED_NOCNI={test_adopted_nocni}") + # Some apps need StorageClass in testing cluster. Mostly not needed so disabled by default. + test_adopted_pvc = str(app_data.get('test_adopted_pvc', False)).lower() + print(f"TEST_ADOPTED_PVC={test_adopted_pvc}") def get_wait_for_pods(args): diff --git a/scripts/web/generate_catalog_json.py b/scripts/web/generate_catalog_json.py index 7d473af3dc..222a4ea941 100644 --- a/scripts/web/generate_catalog_json.py +++ b/scripts/web/generate_catalog_json.py @@ -406,6 +406,7 @@ def generate_install_json(app_name: str, data: dict, app_path: str): 'test_check_images': bool, 'test_remove_multiclusterservice': bool, 'test_adopted_nocni': bool, + 'test_adopted_pvc': bool, # Validation results 'validated_amd64': str, 'validated_arm64': str, From 909209f37b123878efd0409959c6a270b676874f Mon Sep 17 00:00:00 2001 From: Josef Hak Date: Tue, 1 Sep 2026 12:27:36 +0200 Subject: [PATCH 02/24] apisix: enable pvc in tests --- apps/apisix/data.yaml | 1 + 1 file changed, 1 insertion(+) diff --git a/apps/apisix/data.yaml b/apps/apisix/data.yaml index 4244abae8d..c595d1caf4 100644 --- a/apps/apisix/data.yaml +++ b/apps/apisix/data.yaml @@ -19,6 +19,7 @@ why_in_catalog: "Most API gateways make you choose between performance and exten doc_link: https://apisix.apache.org/docs/helm-chart/apisix/ test_wait_for_pods: "apisix-" +test_adopted_pvc: true validated_amd64: 'y' validated_aws: 'y' From a96f2ddbf5bccb9467a1ef01e03d522c503835af Mon Sep 17 00:00:00 2001 From: Josef Hak Date: Tue, 1 Sep 2026 12:29:27 +0200 Subject: [PATCH 03/24] dapr: enable pvc in test --- apps/dapr/data.yaml | 3 +++ 1 file changed, 3 insertions(+) diff --git a/apps/dapr/data.yaml b/apps/dapr/data.yaml index 8047fe65d4..de034780aa 100644 --- a/apps/dapr/data.yaml +++ b/apps/dapr/data.yaml @@ -26,6 +26,9 @@ support_link: https://www.diagrid.io/conductor doc_link: https://docs.dapr.io/ github_repo: dapr/dapr +test_wait_for_pods: 'dapr-operator-' +test_adopted_pvc: true + validated_amd64: 'y' validated_aws: 'y' validated_azure: 'y' From e2256b6238af83242bbc57fe247e9804e4a04fa8 Mon Sep 17 00:00:00 2001 From: Josef Hak Date: Tue, 1 Sep 2026 12:30:10 +0200 Subject: [PATCH 04/24] eck-stack: enable pvc in test --- apps/eck-stack/data.yaml | 1 + 1 file changed, 1 insertion(+) diff --git a/apps/eck-stack/data.yaml b/apps/eck-stack/data.yaml index d2de894cd4..8f9364e185 100644 --- a/apps/eck-stack/data.yaml +++ b/apps/eck-stack/data.yaml @@ -25,6 +25,7 @@ support_link: https://www.elastic.co/contact doc_link: https://www.elastic.co/docs/deploy-manage/deploy/cloud-on-k8s/install-using-helm-chart test_wait_for_pods: "eck-stack-eck-kibana-kb-" +test_adopted_pvc: true validated_amd64: 'y' validated_aws: 'y' From f85830715b3791e5ed2888a99303db4229d1de9f Mon Sep 17 00:00:00 2001 From: Josef Hak Date: Tue, 1 Sep 2026 12:30:41 +0200 Subject: [PATCH 05/24] gitlab: enable pvc in test --- apps/gitlab/data.yaml | 1 + 1 file changed, 1 insertion(+) diff --git a/apps/gitlab/data.yaml b/apps/gitlab/data.yaml index 97aeee3d73..fc5630b011 100644 --- a/apps/gitlab/data.yaml +++ b/apps/gitlab/data.yaml @@ -82,6 +82,7 @@ doc_link: https://docs.gitlab.com/charts/ test_check_images: false test_wait_for_pods: "gitlab-gitlab-shell-" +test_adopted_pvc: true validated_amd64: 'y' validated_aws: 'y' From 9181d19bbf36920e7ece13918adf708f49525519 Mon Sep 17 00:00:00 2001 From: Josef Hak Date: Tue, 1 Sep 2026 12:32:04 +0200 Subject: [PATCH 06/24] harbor: enable pvc in test --- apps/harbor/data.yaml | 1 + 1 file changed, 1 insertion(+) diff --git a/apps/harbor/data.yaml b/apps/harbor/data.yaml index 385faf4620..1510b0f1dc 100644 --- a/apps/harbor/data.yaml +++ b/apps/harbor/data.yaml @@ -25,6 +25,7 @@ examples: content_template_file: example_ingress/doc.md test_wait_for_pods: "harbor-registry-" +test_adopted_pvc: true validated_amd64: 'y' validated_aws: 'y' From 73a008a3e4cc8fa6d05c94e41d3a3b8731368d28 Mon Sep 17 00:00:00 2001 From: Josef Hak Date: Tue, 1 Sep 2026 12:40:01 +0200 Subject: [PATCH 07/24] influxdb: enable pvc in test --- apps/influxdb/data.yaml | 1 + 1 file changed, 1 insertion(+) diff --git a/apps/influxdb/data.yaml b/apps/influxdb/data.yaml index e296344e8e..35daa12df4 100644 --- a/apps/influxdb/data.yaml +++ b/apps/influxdb/data.yaml @@ -26,6 +26,7 @@ why_in_catalog: "Relational databases and general-purpose time-series stores bot doc_link: https://docs.influxdata.com/influxdb/v2/ test_wait_for_pods: "nfluxdb2-0" +test_adopted_pvc: true validated_amd64: 'y' validated_aws: 'y' From 071b9f1050682d2082a20e56d95c0d07ac267e89 Mon Sep 17 00:00:00 2001 From: Josef Hak Date: Tue, 1 Sep 2026 12:40:01 +0200 Subject: [PATCH 08/24] jenkins: enable pvc in test --- apps/jenkins/data.yaml | 1 + 1 file changed, 1 insertion(+) diff --git a/apps/jenkins/data.yaml b/apps/jenkins/data.yaml index d113f5dc24..f882cedbcd 100644 --- a/apps/jenkins/data.yaml +++ b/apps/jenkins/data.yaml @@ -40,6 +40,7 @@ why_in_catalog: "Jenkins has been the backbone of CI/CD automation for fifteen y # support_link: TODO doc_link: https://www.jenkins.io/doc/ +test_adopted_pvc: true validated_amd64: 'y' validated_aws: 'y' From 462a82cce8ded35de1a1b33a371e1e60bd80eab9 Mon Sep 17 00:00:00 2001 From: Josef Hak Date: Tue, 1 Sep 2026 12:40:01 +0200 Subject: [PATCH 09/24] jupyterhub: enable pvc in test --- apps/jupyterhub/data.yaml | 1 + 1 file changed, 1 insertion(+) diff --git a/apps/jupyterhub/data.yaml b/apps/jupyterhub/data.yaml index eb796c4f91..ded587c075 100644 --- a/apps/jupyterhub/data.yaml +++ b/apps/jupyterhub/data.yaml @@ -53,6 +53,7 @@ test_deploy_chart: false test_deploy_multiclusterservice: true test_install_servicetemplates: true test_wait_for_pods: "hub-" +test_adopted_pvc: true validated_amd64: 'y' validated_aws: 'y' From c1ddead14bdd50f9295d5931524668efefd5b5fc Mon Sep 17 00:00:00 2001 From: Josef Hak Date: Tue, 1 Sep 2026 12:40:01 +0200 Subject: [PATCH 10/24] kubecost: enable pvc in test --- apps/kubecost/data.yaml | 1 + 1 file changed, 1 insertion(+) diff --git a/apps/kubecost/data.yaml b/apps/kubecost/data.yaml index 1a291ab362..e56019e9ec 100644 --- a/apps/kubecost/data.yaml +++ b/apps/kubecost/data.yaml @@ -20,6 +20,7 @@ examples: with_ingress: title: With Ingress chart_folder: example_ingress +test_adopted_pvc: true validated_amd64: 'y' validated_aws: 'y' From 022fe7db83bf3b4af12af893e09cd3496da0342a Mon Sep 17 00:00:00 2001 From: Josef Hak Date: Tue, 1 Sep 2026 12:40:01 +0200 Subject: [PATCH 11/24] local-ai: enable pvc in test --- apps/local-ai/data.yaml | 1 + 1 file changed, 1 insertion(+) diff --git a/apps/local-ai/data.yaml b/apps/local-ai/data.yaml index 7a39f917a8..697f3044e8 100644 --- a/apps/local-ai/data.yaml +++ b/apps/local-ai/data.yaml @@ -17,6 +17,7 @@ why_in_catalog: "Sending inference requests to OpenAI or other cloud LLM provide doc_link: https://localai.io/basics/kubernetes/ test_wait_for_pods: "local-ai-" +test_adopted_pvc: true validated_amd64: 'y' validated_aws: 'y' From b93f0487990f0a0ade4811648f446a04cae44df5 Mon Sep 17 00:00:00 2001 From: Josef Hak Date: Tue, 1 Sep 2026 12:40:01 +0200 Subject: [PATCH 12/24] milvus: enable pvc in test --- apps/milvus/data.yaml | 1 + 1 file changed, 1 insertion(+) diff --git a/apps/milvus/data.yaml b/apps/milvus/data.yaml index 8fb3e07604..a5f5f961ec 100644 --- a/apps/milvus/data.yaml +++ b/apps/milvus/data.yaml @@ -37,6 +37,7 @@ why_in_catalog: "Qdrant and Milvus occupy the same space — purpose-built vecto doc_link: https://milvus.io/docs/install_cluster-helm.md test_wait_for_pods: "milvus-standalone-" +test_adopted_pvc: true validated_amd64: 'y' validated_aws: 'y' From 69f50b83a91875e08fb96edb25fe79f37d93740d Mon Sep 17 00:00:00 2001 From: Josef Hak Date: Tue, 1 Sep 2026 12:40:01 +0200 Subject: [PATCH 13/24] minio: enable pvc in test --- apps/minio/data.yaml | 1 + 1 file changed, 1 insertion(+) diff --git a/apps/minio/data.yaml b/apps/minio/data.yaml index 64c6c18d58..c5370478d0 100644 --- a/apps/minio/data.yaml +++ b/apps/minio/data.yaml @@ -14,6 +14,7 @@ why_in_catalog: "Every AI infrastructure stack needs somewhere to put datasets, # support_link: doc_link: https://min.io/docs/minio/kubernetes/upstream/index.html +test_adopted_pvc: true validated_amd64: 'y' validated_aws: 'y' From 46b33c269d508d1178bc5dd931a28134774990a2 Mon Sep 17 00:00:00 2001 From: Josef Hak Date: Tue, 1 Sep 2026 12:40:01 +0200 Subject: [PATCH 14/24] msr: enable pvc in test --- apps/msr/data.yaml | 1 + 1 file changed, 1 insertion(+) diff --git a/apps/msr/data.yaml b/apps/msr/data.yaml index 5ad2e6adff..5ea2800457 100644 --- a/apps/msr/data.yaml +++ b/apps/msr/data.yaml @@ -21,6 +21,7 @@ examples: title: With Ingress chart_folder: example_ingress content_template_file: example_ingress/doc.md +test_adopted_pvc: true validated_amd64: 'y' validated_aws: 'y' From 1febc6674dcf83b5ea4ffbd0904bf69f1138f0f3 Mon Sep 17 00:00:00 2001 From: Josef Hak Date: Tue, 1 Sep 2026 12:40:01 +0200 Subject: [PATCH 15/24] opencost: enable pvc in test --- apps/opencost/data.yaml | 1 + 1 file changed, 1 insertion(+) diff --git a/apps/opencost/data.yaml b/apps/opencost/data.yaml index f2693c48e3..8b0d8f9829 100644 --- a/apps/opencost/data.yaml +++ b/apps/opencost/data.yaml @@ -38,6 +38,7 @@ examples: k8s: ["1.29", "1.30", "1.31", "1.32"] chart_folder: example_ai_observability content_template_file: example_ai_observability/doc.md +test_adopted_pvc: true validated_amd64: 'y' validated_aws: 'y' From 6af9a29989d6d9cebf87bfb474cc5cfadf16f9cc Mon Sep 17 00:00:00 2001 From: Josef Hak Date: Tue, 1 Sep 2026 12:40:01 +0200 Subject: [PATCH 16/24] penpot: enable pvc in test --- apps/penpot/data.yaml | 1 + 1 file changed, 1 insertion(+) diff --git a/apps/penpot/data.yaml b/apps/penpot/data.yaml index d248d8b9e8..4e0d0c37bf 100644 --- a/apps/penpot/data.yaml +++ b/apps/penpot/data.yaml @@ -20,6 +20,7 @@ support_link: https://penpot.app/talk-to-us doc_link: https://help.penpot.app/technical-guide/getting-started/kubernetes/#install-penpot-chart test_wait_for_pods: "penpot-backend-" +test_adopted_pvc: true validated_amd64: 'y' validated_aws: 'y' From b4a364c9da473e4272aea31e81440e70926d24c2 Mon Sep 17 00:00:00 2001 From: Josef Hak Date: Tue, 1 Sep 2026 12:40:01 +0200 Subject: [PATCH 17/24] postgresql: enable pvc in test --- apps/postgresql/data.yaml | 1 + 1 file changed, 1 insertion(+) diff --git a/apps/postgresql/data.yaml b/apps/postgresql/data.yaml index 81e4aa80ae..8f21403843 100644 --- a/apps/postgresql/data.yaml +++ b/apps/postgresql/data.yaml @@ -23,6 +23,7 @@ examples: title: "With Ingress" chart_folder: example_ingress content_template_file: example_ingress/doc.md +test_adopted_pvc: true validated_amd64: 'y' validated_aws: 'y' From 15b93bee354ad1650f85abeb60dc143a1c048fc1 Mon Sep 17 00:00:00 2001 From: Josef Hak Date: Tue, 1 Sep 2026 12:40:01 +0200 Subject: [PATCH 18/24] qdrant: enable pvc in test --- apps/qdrant/data.yaml | 1 + 1 file changed, 1 insertion(+) diff --git a/apps/qdrant/data.yaml b/apps/qdrant/data.yaml index 78f43063c3..d33d748ee6 100644 --- a/apps/qdrant/data.yaml +++ b/apps/qdrant/data.yaml @@ -21,6 +21,7 @@ why_in_catalog: "RAG applications live and die by vector search performance. Qdr doc_link: https://qdrant.tech/documentation/guides/installation/#qdrant-kubernetes-operator # test_wait_for_pods: "milvus-standalone-" +test_adopted_pvc: true validated_amd64: 'y' validated_aws: 'y' From cf8e803e5208cf8e5fdbc5ae04fc121a790c33c0 Mon Sep 17 00:00:00 2001 From: Josef Hak Date: Tue, 1 Sep 2026 12:40:02 +0200 Subject: [PATCH 19/24] rabbitmq: enable pvc in test --- apps/rabbitmq/data.yaml | 1 + 1 file changed, 1 insertion(+) diff --git a/apps/rabbitmq/data.yaml b/apps/rabbitmq/data.yaml index 93161ff679..57fa75bcdc 100644 --- a/apps/rabbitmq/data.yaml +++ b/apps/rabbitmq/data.yaml @@ -28,6 +28,7 @@ support_link: https://www.rabbitmq.com/commercial-features doc_link: https://www.rabbitmq.com/docs test_wait_for_pods: "rabbitmq-" +test_adopted_pvc: true validated_amd64: 'y' validated_aws: 'y' From 3bf8cd248e0313ac60b3c508ed30d464bd26712f Mon Sep 17 00:00:00 2001 From: Josef Hak Date: Tue, 1 Sep 2026 12:40:02 +0200 Subject: [PATCH 20/24] redis: enable pvc in test --- apps/redis/data.yaml | 1 + 1 file changed, 1 insertion(+) diff --git a/apps/redis/data.yaml b/apps/redis/data.yaml index 75571da530..8971342238 100644 --- a/apps/redis/data.yaml +++ b/apps/redis/data.yaml @@ -26,6 +26,7 @@ why_in_catalog: "Semantic caching for LLM APIs — storing the responses to embe doc_link: https://redis.io/docs/latest/get-started/ test_wait_for_pods: "redis-" +test_adopted_pvc: true validated_amd64: 'y' validated_aws: 'y' From ba34e19ea3bdb56e496066d1e148b95e99a919ea Mon Sep 17 00:00:00 2001 From: Josef Hak Date: Tue, 1 Sep 2026 12:40:02 +0200 Subject: [PATCH 21/24] teleport: enable pvc in test --- apps/teleport/data.yaml | 1 + 1 file changed, 1 insertion(+) diff --git a/apps/teleport/data.yaml b/apps/teleport/data.yaml index 8cd8fa4475..8fda6300de 100644 --- a/apps/teleport/data.yaml +++ b/apps/teleport/data.yaml @@ -21,6 +21,7 @@ why_in_catalog: "VPNs and bastion hosts give broad network access and generate a doc_link: https://goteleport.com/docs/installation/helm/ test_wait_for_pods: "teleport-cluster-proxy-" +test_adopted_pvc: true validated_amd64: 'y' validated_aws: 'y' From 280c92ab2cb76d53f2a72eff650615233cd63f8c Mon Sep 17 00:00:00 2001 From: Josef Hak Date: Tue, 1 Sep 2026 12:40:02 +0200 Subject: [PATCH 22/24] victoriametrics: enable pvc in test --- apps/victoriametrics/data.yaml | 1 + 1 file changed, 1 insertion(+) diff --git a/apps/victoriametrics/data.yaml b/apps/victoriametrics/data.yaml index a43666ba08..7fea359ffa 100644 --- a/apps/victoriametrics/data.yaml +++ b/apps/victoriametrics/data.yaml @@ -51,6 +51,7 @@ prerequisites: | doc_link: https://docs.victoriametrics.com/ support_link: https://victoriametrics.com/products/enterprise/ +test_adopted_pvc: true validated_amd64: 'y' validated_aws: 'y' From 921720d6729dadd129c09784dd354e3a64e0ebcd Mon Sep 17 00:00:00 2001 From: Josef Hak Date: Tue, 1 Sep 2026 12:41:13 +0200 Subject: [PATCH 23/24] loki: enable pvc in test --- apps/loki/data.yaml | 2 ++ 1 file changed, 2 insertions(+) diff --git a/apps/loki/data.yaml b/apps/loki/data.yaml index 26cbfdf264..eaaadbfac5 100644 --- a/apps/loki/data.yaml +++ b/apps/loki/data.yaml @@ -39,6 +39,8 @@ why_in_catalog: "Storing full log content in Elasticsearch costs an order of mag doc_link: https://grafana.com/docs/loki/latest/setup/install/helm/install-microservices/ test_wait_for_pods: "loki-0" +test_adopted_pvc: true + validated_amd64: 'y' validated_local: 'y' validated_aws: 'y' From 06b4e2732bd02594346160be5161e0aaecabc46b Mon Sep 17 00:00:00 2001 From: Josef Hak Date: Tue, 1 Sep 2026 12:41:13 +0200 Subject: [PATCH 24/24] prometheus: enable pvc in test --- apps/prometheus/data.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/apps/prometheus/data.yaml b/apps/prometheus/data.yaml index 61f6ee15e8..4c72074eed 100644 --- a/apps/prometheus/data.yaml +++ b/apps/prometheus/data.yaml @@ -18,7 +18,7 @@ examples: doc_link: https://prometheus.io/docs/introduction/overview/ test_wait_for_pods: "prometheus-server-" - +test_adopted_pvc: true validated_amd64: 'y' validated_aws: 'y'