From 9c46fb2f2027dc33caf01c713a02f42b650a2148 Mon Sep 17 00:00:00 2001 From: zugao <58511627+zugao@users.noreply.github.com> Date: Mon, 21 Oct 2024 06:20:30 +0000 Subject: [PATCH 1/3] [create-pull-request] automated change --- .../appcat/appcat/20_xrd_vshn_postgres.yaml | 2 - .../appcat/appcat/20_xrd_vshn_keycloak.yaml | 2 - .../appcat/appcat/20_xrd_vshn_mariadb.yaml | 43 ------------------- .../appcat/appcat/20_xrd_vshn_nextcloud.yaml | 2 - .../appcat/appcat/20_xrd_vshn_postgres.yaml | 2 - 5 files changed, 51 deletions(-) diff --git a/tests/golden/openshift/appcat/appcat/20_xrd_vshn_postgres.yaml b/tests/golden/openshift/appcat/appcat/20_xrd_vshn_postgres.yaml index 235050985..2885b64a6 100644 --- a/tests/golden/openshift/appcat/appcat/20_xrd_vshn_postgres.yaml +++ b/tests/golden/openshift/appcat/appcat/20_xrd_vshn_postgres.yaml @@ -5699,8 +5699,6 @@ spec: description: Service contains PostgreSQL DBaaS specific properties properties: access: - description: Access defines additional users and databases - for this instance. items: properties: database: diff --git a/tests/golden/vshn/appcat/appcat/20_xrd_vshn_keycloak.yaml b/tests/golden/vshn/appcat/appcat/20_xrd_vshn_keycloak.yaml index e4dcaa3ed..952a455e5 100644 --- a/tests/golden/vshn/appcat/appcat/20_xrd_vshn_keycloak.yaml +++ b/tests/golden/vshn/appcat/appcat/20_xrd_vshn_keycloak.yaml @@ -11723,8 +11723,6 @@ spec: properties properties: access: - description: Access defines additional users and - databases for this instance. items: properties: database: diff --git a/tests/golden/vshn/appcat/appcat/20_xrd_vshn_mariadb.yaml b/tests/golden/vshn/appcat/appcat/20_xrd_vshn_mariadb.yaml index 0fb493c28..4baa6de34 100644 --- a/tests/golden/vshn/appcat/appcat/20_xrd_vshn_mariadb.yaml +++ b/tests/golden/vshn/appcat/appcat/20_xrd_vshn_mariadb.yaml @@ -5606,49 +5606,6 @@ spec: default: {} description: Service contains MariaDB DBaaS specific properties properties: - access: - description: Access defines additional users and databases - for this instance. - items: - properties: - database: - description: Database is the name of the database - to create, defaults to user. - type: string - privileges: - description: |- - Privileges specifies the privileges to grant the user. Please check - the database's docs for available privileges. - items: - type: string - type: array - user: - description: |- - User specifies the username. If all other fields are left empty - then a new database with the same name and all permissions will be created. - type: string - writeConnectionSecretToRef: - description: |- - WriteConnectionSecretToReference specifies the namespace and name of a - Secret to which any connection details for this user should - be written. - If not specified, a secret with the name $claimname-$username will be - created in the namespace where the claim is located. - properties: - name: - description: Name of the secret. - type: string - namespace: - description: Namespace of the secret. - type: string - required: - - name - - namespace - type: object - required: - - user - type: object - type: array mariadbSettings: description: MariadbSettings contains additional MariaDB settings. diff --git a/tests/golden/vshn/appcat/appcat/20_xrd_vshn_nextcloud.yaml b/tests/golden/vshn/appcat/appcat/20_xrd_vshn_nextcloud.yaml index b17192448..d6538d732 100644 --- a/tests/golden/vshn/appcat/appcat/20_xrd_vshn_nextcloud.yaml +++ b/tests/golden/vshn/appcat/appcat/20_xrd_vshn_nextcloud.yaml @@ -11686,8 +11686,6 @@ spec: properties properties: access: - description: Access defines additional users and - databases for this instance. items: properties: database: diff --git a/tests/golden/vshn/appcat/appcat/20_xrd_vshn_postgres.yaml b/tests/golden/vshn/appcat/appcat/20_xrd_vshn_postgres.yaml index 235050985..2885b64a6 100644 --- a/tests/golden/vshn/appcat/appcat/20_xrd_vshn_postgres.yaml +++ b/tests/golden/vshn/appcat/appcat/20_xrd_vshn_postgres.yaml @@ -5699,8 +5699,6 @@ spec: description: Service contains PostgreSQL DBaaS specific properties properties: access: - description: Access defines additional users and databases - for this instance. items: properties: database: From 083d8f58fda236dcfadd1fd176975f62867f1dcb Mon Sep 17 00:00:00 2001 From: Gabriel Saratura Date: Mon, 21 Oct 2024 14:46:30 +0200 Subject: [PATCH 2/3] Refactor billing --- component/billing.jsonnet | 4 +- component/main.jsonnet | 24 ----- component/promql/metering_cloud.promql | 20 ---- component/promql/metering_managed.promql | 25 ----- component/vshn_appcat_services.jsonnet | 2 + component/vshn_postgres.jsonnet | 2 + component/vshn_redis.jsonnet | 2 + .../10_appcat_metering_recording_rule.yaml | 38 -------- .../10_appcat_metering_recording_rule.yaml | 38 -------- .../appcat/appcat/billing/11_backfill.yaml | 96 +++++++++---------- .../10_appcat_metering_recording_rule.yaml | 38 -------- .../10_appcat_metering_recording_rule.yaml | 38 -------- .../10_appcat_metering_recording_rule.yaml | 33 ------- .../10_appcat_metering_recording_rule.yaml | 38 -------- .../10_appcat_metering_recording_rule.yaml | 38 -------- .../10_appcat_metering_recording_rule.yaml | 38 -------- .../10_appcat_metering_recording_rule.yaml | 38 -------- .../10_appcat_metering_recording_rule.yaml | 33 ------- .../10_appcat_metering_recording_rule.yaml | 38 -------- .../appcat/21_composition_vshn_minio.yaml | 1 + .../10_appcat_metering_recording_rule.yaml | 38 -------- .../appcat/21_composition_vshn_postgres.yaml | 1 + .../appcat/21_composition_vshn_redis.yaml | 1 + .../10_appcat_metering_recording_rule.yaml | 33 ------- .../appcat/21_composition_vshn_keycloak.yaml | 1 + .../appcat/21_composition_vshn_mariadb.yaml | 1 + .../appcat/21_composition_vshn_nextcloud.yaml | 1 + .../appcat/21_composition_vshn_postgres.yaml | 1 + .../appcat/21_composition_vshn_redis.yaml | 1 + 29 files changed, 64 insertions(+), 598 deletions(-) delete mode 100644 component/promql/metering_cloud.promql delete mode 100644 component/promql/metering_managed.promql delete mode 100644 tests/golden/apiserver/appcat/appcat/10_appcat_metering_recording_rule.yaml delete mode 100644 tests/golden/billing/appcat/appcat/10_appcat_metering_recording_rule.yaml delete mode 100644 tests/golden/cloudscale-metrics-collector-cloud/appcat/appcat/10_appcat_metering_recording_rule.yaml delete mode 100644 tests/golden/cloudscale-metrics-collector-managed/appcat/appcat/10_appcat_metering_recording_rule.yaml delete mode 100644 tests/golden/cloudscale/appcat/appcat/10_appcat_metering_recording_rule.yaml delete mode 100644 tests/golden/controllers/appcat/appcat/10_appcat_metering_recording_rule.yaml delete mode 100644 tests/golden/defaults/appcat/appcat/10_appcat_metering_recording_rule.yaml delete mode 100644 tests/golden/exoscale-metrics-collector-cloud/appcat/appcat/10_appcat_metering_recording_rule.yaml delete mode 100644 tests/golden/exoscale-metrics-collector-managed/appcat/appcat/10_appcat_metering_recording_rule.yaml delete mode 100644 tests/golden/exoscale/appcat/appcat/10_appcat_metering_recording_rule.yaml delete mode 100644 tests/golden/minio/appcat/appcat/10_appcat_metering_recording_rule.yaml delete mode 100644 tests/golden/openshift/appcat/appcat/10_appcat_metering_recording_rule.yaml delete mode 100644 tests/golden/vshn/appcat/appcat/10_appcat_metering_recording_rule.yaml diff --git a/component/billing.jsonnet b/component/billing.jsonnet index 8d791994f..240816cd2 100644 --- a/component/billing.jsonnet +++ b/component/billing.jsonnet @@ -157,8 +157,8 @@ local generateCloudAndManaged = function(name) // For postgresql we have a missmatch between the label and the name in our definition. local queryName = if name == 'postgres' then name + 'ql' else name; - local managedQuery = 'appcat:metering{label_appuio_io_billing_name="appcat-' + queryName + '",label_appcat_vshn_io_sla="%s", tenant_name!="APPUiO"}'; - local cloudQuery = 'appcat:metering{label_appuio_io_billing_name="appcat-' + queryName + '",label_appcat_vshn_io_sla="%s", tenant_name="APPUiO"} * on(label_appuio_io_organization) group_left(sales_order) label_replace(appuio_control_organization_info{namespace="appuio-control-api-production"}, "label_appuio_io_organization", "$1", "organization", "(.*)")'; + local managedQuery = 'sum_over_time(appcat:metering{label_appuio_io_billing_name="appcat-' + queryName + '",label_appcat_vshn_io_sla="%s", tenant_name!="APPUiO"}[59:1])/60'; + local cloudQuery = 'sum_over_time(appcat:metering{label_appuio_io_billing_name="appcat-' + queryName + '",label_appcat_vshn_io_sla="%s", tenant_name="APPUiO"} * on(label_appuio_io_organization) group_left(sales_order) label_replace(appuio_control_organization_info{namespace="appuio-control-api-production"}, "label_appuio_io_organization", "$1", "organization", "(.*)")[59:1])/60'; local permutations = [ { diff --git a/component/main.jsonnet b/component/main.jsonnet index 87853ec70..715650716 100644 --- a/component/main.jsonnet +++ b/component/main.jsonnet @@ -113,10 +113,6 @@ local promQueryTemplate = importstr 'promql/appcat.promql'; local promQueryWithLabel = std.strReplace(promQueryTemplate, '{{ORGLABEL}}', tenant.label); local promQuery = std.strReplace(promQueryWithLabel, '{{TENANT_REPLACE}}', tenant.replace); -local meteringQueryCloud = importstr 'promql/metering_cloud.promql'; -local meteringQueryManagedRaw = importstr 'promql/metering_managed.promql'; -local meteringQueryManaged = std.strReplace(meteringQueryManagedRaw, '{{salesOrderID}}', params.billing.salesOrder); - local legacyBillingRule = std.prune(kube._Object('monitoring.coreos.com/v1', 'PrometheusRule', 'appcat-billing') { metadata+: { namespace: params.namespace, @@ -136,25 +132,6 @@ local legacyBillingRule = std.prune(kube._Object('monitoring.coreos.com/v1', 'Pr }, }); -local meteringRule = std.prune(kube._Object('monitoring.coreos.com/v1', 'PrometheusRule', 'appcat-metering') { - metadata+: { - namespace: params.namespace, - }, - spec: { - groups: [ - { - name: 'appcat-metering-rules', - rules: [ - { - expr: if params.appuioManaged then meteringQueryManaged else meteringQueryCloud, - record: 'appcat:metering', - }, - ], - }, - ], - }, -}); - local mockOrgInfo = kube._Object('monitoring.coreos.com/v1', 'PrometheusRule', 'mock-org-info') { metadata+: { namespace: params.namespace, @@ -286,7 +263,6 @@ local haPrometheusRule = { '10_appcat_legacy_billing_recording_rule': legacyBillingRule, '10_appcat_backup_monitoring': backupPrometheusRule, '10_appcat_ha_monitoring': haPrometheusRule, - [if params.billing.vshn.meteringRules then '10_appcat_metering_recording_rule']: meteringRule, [if params.services.vshn.enabled && params.services.emailAlerting.enabled then '10_mailgun_secret']: emailSecret, [if params.billing.enableMockOrgInfo then '10_mock_org_info']: mockOrgInfo, } diff --git a/component/promql/metering_cloud.promql b/component/promql/metering_cloud.promql deleted file mode 100644 index 02f0d7a86..000000000 --- a/component/promql/metering_cloud.promql +++ /dev/null @@ -1,20 +0,0 @@ -sum by (label_appcat_vshn_io_claim_namespace,label_appcat_vshn_io_sla,label_appcat_vshn_io_claim_name,label_appuio_io_billing_name,label_appuio_io_organization) ( - # Sum values over one hour and get mean - sum_over_time( - # Default appcat.vshn.io/sla to besteffort if it is not set - label_replace( - # Fetch all namespaces with label label_appuio_io_billing_name=~"appcat-.+" - (kube_namespace_labels{label_appuio_io_billing_name=~"appcat-.+"} * - on (namespace) group_right(label_appuio_io_organization,label_appcat_vshn_io_claim_namespace,label_appcat_vshn_io_sla,label_appcat_vshn_io_claim_name,label_appuio_io_billing_name,label_appuio_io_organization) - (kube_pod_info{created_by_kind!="Job"} * on(namespace, pod) kube_pod_labels{label_appcat_io_billing="true"}) - # We join it with appuio_control_organization_info to map the organization to a sales_order - # This metric is not available on the cluster's prometheus, only on mimir, this is just included for completenes sake. - #* on(label_appuio_io_organization) group_left(sales_order) label_replace(appuio_control_organization_info, "label_appuio_io_organization", "$1", "name", "(.*)") - ), - "label_appcat_vshn_io_sla", - "besteffort", - "label_appcat_vshn_io_sla", - "^$" - )[60m:1m] - )/60 -) diff --git a/component/promql/metering_managed.promql b/component/promql/metering_managed.promql deleted file mode 100644 index 5608cf0fd..000000000 --- a/component/promql/metering_managed.promql +++ /dev/null @@ -1,25 +0,0 @@ -sum by (label_appcat_vshn_io_claim_namespace,label_appcat_vshn_io_sla,label_appuio_io_billing_name,label_appcat_vshn_io_claim_name,sales_order,label_appuio_io_billing_name) ( - # Sum values over one hour and get mean - sum_over_time( - # Default appcat.vshn.io/sla to besteffort if it is not set - label_replace( - # Fetch all namespaces with label label_appuio_io_billing_name=~"appcat-.+" - ( - # We hardcode the tenant ID here, so that we have the label to do the join. - label_replace( - kube_namespace_labels{ label_appuio_io_billing_name=~"appcat-.+"} * - on (namespace) group_right(label_appcat_vshn_io_claim_namespace,label_appcat_vshn_io_sla, label_appuio_io_billing_name,label_appcat_vshn_io_claim_name,sales_order,label_appuio_io_billing_name) - (kube_pod_info{created_by_kind!="Job"} * on(namespace, pod) kube_pod_labels{label_appcat_io_billing="true"}), - "sales_order", - "{{salesOrderID}}", - "", - "" - ) - ), - "label_appcat_vshn_io_sla", - "besteffort", - "label_appcat_vshn_io_sla", - "^$" - )[60m:1m] - )/60 -) diff --git a/component/vshn_appcat_services.jsonnet b/component/vshn_appcat_services.jsonnet index d561a485b..8a844915b 100644 --- a/component/vshn_appcat_services.jsonnet +++ b/component/vshn_appcat_services.jsonnet @@ -15,6 +15,7 @@ local opsgenieRules = import 'vshn_alerting.jsonnet'; local inv = kap.inventory(); local params = inv.parameters.appcat; +local appuioManaged = inv.parameters.appcat.appuioManaged; local serviceNameLabelKey = 'appcat.vshn.io/servicename'; local serviceNamespaceLabelKey = 'appcat.vshn.io/claim-namespace'; @@ -110,6 +111,7 @@ local vshn_appcat_service(name, serviceParams) = ownerKind: xrd.spec.names.kind, ownerGroup: xrd.spec.group, ownerVersion: xrd.spec.versions[0].name, + salesOrder: if appuioManaged then std.toString(params.billing.salesOrder) else '', } + common.EmailAlerting(params.services.emailAlerting) + restoreSA + additonalInputs diff --git a/component/vshn_postgres.jsonnet b/component/vshn_postgres.jsonnet index 208fe60a2..88ef98125 100644 --- a/component/vshn_postgres.jsonnet +++ b/component/vshn_postgres.jsonnet @@ -13,6 +13,7 @@ local inv = kap.inventory(); local params = inv.parameters.appcat; local pgParams = params.services.vshn.postgres; local opsgenieRules = import 'vshn_alerting.jsonnet'; +local appuioManaged = inv.parameters.appcat.appuioManaged; local defaultDB = 'postgres'; local defaultUser = 'postgres'; @@ -220,6 +221,7 @@ local composition = bucketEndpoint: pgParams.bucket_endpoint, isOpenshift: std.toString(isOpenshift), sliNamespace: params.slos.namespace, + salesOrder: if appuioManaged then std.toString(params.billing.salesOrder) else '', } + std.get(pgParams, 'additionalInputs', default={}, inc_hidden=true) + common.EmailAlerting(params.services.emailAlerting) + if pgParams.proxyFunction then { diff --git a/component/vshn_redis.jsonnet b/component/vshn_redis.jsonnet index 72712d694..fc6d5ff51 100644 --- a/component/vshn_redis.jsonnet +++ b/component/vshn_redis.jsonnet @@ -14,6 +14,7 @@ local inv = kap.inventory(); local params = inv.parameters.appcat; local redisParams = params.services.vshn.redis; local opsgenieRules = import 'vshn_alerting.jsonnet'; +local appuioManaged = inv.parameters.appcat.appuioManaged; local defaultUser = 'default'; local defaultPort = '6379'; @@ -487,6 +488,7 @@ local composition = ownerVersion: xrd.spec.versions[0].name, isOpenshift: std.toString(isOpenshift), sliNamespace: params.slos.namespace, + salesOrder: if appuioManaged then std.toString(params.billing.salesOrder) else '', } + common.EmailAlerting(params.services.emailAlerting) + if redisParams.proxyFunction then { proxyEndpoint: redisParams.grpcEndpoint, diff --git a/tests/golden/apiserver/appcat/appcat/10_appcat_metering_recording_rule.yaml b/tests/golden/apiserver/appcat/appcat/10_appcat_metering_recording_rule.yaml deleted file mode 100644 index 7c9b2dcdb..000000000 --- a/tests/golden/apiserver/appcat/appcat/10_appcat_metering_recording_rule.yaml +++ /dev/null @@ -1,38 +0,0 @@ -apiVersion: monitoring.coreos.com/v1 -kind: PrometheusRule -metadata: - labels: - name: appcat-metering - name: appcat-metering - namespace: syn-appcat -spec: - groups: - - name: appcat-metering-rules - rules: - - expr: | - sum by (label_appcat_vshn_io_claim_namespace,label_appcat_vshn_io_sla,label_appuio_io_billing_name,label_appcat_vshn_io_claim_name,sales_order,label_appuio_io_billing_name) ( - # Sum values over one hour and get mean - sum_over_time( - # Default appcat.vshn.io/sla to besteffort if it is not set - label_replace( - # Fetch all namespaces with label label_appuio_io_billing_name=~"appcat-.+" - ( - # We hardcode the tenant ID here, so that we have the label to do the join. - label_replace( - kube_namespace_labels{ label_appuio_io_billing_name=~"appcat-.+"} * - on (namespace) group_right(label_appcat_vshn_io_claim_namespace,label_appcat_vshn_io_sla, label_appuio_io_billing_name,label_appcat_vshn_io_claim_name,sales_order,label_appuio_io_billing_name) - (kube_pod_info{created_by_kind!="Job"} * on(namespace, pod) kube_pod_labels{label_appcat_io_billing="true"}), - "sales_order", - "10431", - "", - "" - ) - ), - "label_appcat_vshn_io_sla", - "besteffort", - "label_appcat_vshn_io_sla", - "^$" - )[60m:1m] - )/60 - ) - record: appcat:metering diff --git a/tests/golden/billing/appcat/appcat/10_appcat_metering_recording_rule.yaml b/tests/golden/billing/appcat/appcat/10_appcat_metering_recording_rule.yaml deleted file mode 100644 index 012ebe088..000000000 --- a/tests/golden/billing/appcat/appcat/10_appcat_metering_recording_rule.yaml +++ /dev/null @@ -1,38 +0,0 @@ -apiVersion: monitoring.coreos.com/v1 -kind: PrometheusRule -metadata: - labels: - name: appcat-metering - name: appcat-metering - namespace: syn-appcat -spec: - groups: - - name: appcat-metering-rules - rules: - - expr: | - sum by (label_appcat_vshn_io_claim_namespace,label_appcat_vshn_io_sla,label_appuio_io_billing_name,label_appcat_vshn_io_claim_name,sales_order,label_appuio_io_billing_name) ( - # Sum values over one hour and get mean - sum_over_time( - # Default appcat.vshn.io/sla to besteffort if it is not set - label_replace( - # Fetch all namespaces with label label_appuio_io_billing_name=~"appcat-.+" - ( - # We hardcode the tenant ID here, so that we have the label to do the join. - label_replace( - kube_namespace_labels{ label_appuio_io_billing_name=~"appcat-.+"} * - on (namespace) group_right(label_appcat_vshn_io_claim_namespace,label_appcat_vshn_io_sla, label_appuio_io_billing_name,label_appcat_vshn_io_claim_name,sales_order,label_appuio_io_billing_name) - (kube_pod_info{created_by_kind!="Job"} * on(namespace, pod) kube_pod_labels{label_appcat_io_billing="true"}), - "sales_order", - "ST10120", - "", - "" - ) - ), - "label_appcat_vshn_io_sla", - "besteffort", - "label_appcat_vshn_io_sla", - "^$" - )[60m:1m] - )/60 - ) - record: appcat:metering diff --git a/tests/golden/billing/appcat/appcat/billing/11_backfill.yaml b/tests/golden/billing/appcat/appcat/billing/11_backfill.yaml index 8dab44824..d399897c2 100644 --- a/tests/golden/billing/appcat/appcat/billing/11_backfill.yaml +++ b/tests/golden/billing/appcat/appcat/billing/11_backfill.yaml @@ -61,10 +61,10 @@ spec: - name: AR_PRODUCT_ID value: appcat-vshn-keycloak-besteffort - name: AR_QUERY - value: appcat:metering{label_appuio_io_billing_name="appcat-keycloak",label_appcat_vshn_io_sla="besteffort", + value: sum_over_time(appcat:metering{label_appuio_io_billing_name="appcat-keycloak",label_appcat_vshn_io_sla="besteffort", tenant_name="APPUiO"} * on(label_appuio_io_organization) group_left(sales_order) label_replace(appuio_control_organization_info{namespace="appuio-control-api-production"}, - "label_appuio_io_organization", "$1", "organization", "(.*)") + "label_appuio_io_organization", "$1", "organization", "(.*)")[59:1])/60 - name: AR_INSTANCE_JSONNET value: local labels = std.extVar("labels"); "%(cluster_id)s/%(label_appcat_vshn_io_claim_namespace)s/%(label_appcat_vshn_io_claim_name)s" % labels @@ -149,10 +149,10 @@ spec: - name: AR_PRODUCT_ID value: appcat-vshn-keycloak-guaranteed - name: AR_QUERY - value: appcat:metering{label_appuio_io_billing_name="appcat-keycloak",label_appcat_vshn_io_sla="guaranteed", + value: sum_over_time(appcat:metering{label_appuio_io_billing_name="appcat-keycloak",label_appcat_vshn_io_sla="guaranteed", tenant_name="APPUiO"} * on(label_appuio_io_organization) group_left(sales_order) label_replace(appuio_control_organization_info{namespace="appuio-control-api-production"}, - "label_appuio_io_organization", "$1", "organization", "(.*)") + "label_appuio_io_organization", "$1", "organization", "(.*)")[59:1])/60 - name: AR_INSTANCE_JSONNET value: local labels = std.extVar("labels"); "%(cluster_id)s/%(label_appcat_vshn_io_claim_namespace)s/%(label_appcat_vshn_io_claim_name)s" % labels @@ -237,8 +237,8 @@ spec: - name: AR_PRODUCT_ID value: appcat-vshn-keycloak-besteffort - name: AR_QUERY - value: appcat:metering{label_appuio_io_billing_name="appcat-keycloak",label_appcat_vshn_io_sla="besteffort", - tenant_name!="APPUiO"} + value: sum_over_time(appcat:metering{label_appuio_io_billing_name="appcat-keycloak",label_appcat_vshn_io_sla="besteffort", + tenant_name!="APPUiO"}[59:1])/60 - name: AR_INSTANCE_JSONNET value: local labels = std.extVar("labels"); "%(cluster_id)s/%(label_appcat_vshn_io_claim_namespace)s/%(label_appcat_vshn_io_claim_name)s" % labels @@ -323,8 +323,8 @@ spec: - name: AR_PRODUCT_ID value: appcat-vshn-keycloak-guaranteed - name: AR_QUERY - value: appcat:metering{label_appuio_io_billing_name="appcat-keycloak",label_appcat_vshn_io_sla="guaranteed", - tenant_name!="APPUiO"} + value: sum_over_time(appcat:metering{label_appuio_io_billing_name="appcat-keycloak",label_appcat_vshn_io_sla="guaranteed", + tenant_name!="APPUiO"}[59:1])/60 - name: AR_INSTANCE_JSONNET value: local labels = std.extVar("labels"); "%(cluster_id)s/%(label_appcat_vshn_io_claim_namespace)s/%(label_appcat_vshn_io_claim_name)s" % labels @@ -409,10 +409,10 @@ spec: - name: AR_PRODUCT_ID value: appcat-vshn-mariadb-besteffort - name: AR_QUERY - value: appcat:metering{label_appuio_io_billing_name="appcat-mariadb",label_appcat_vshn_io_sla="besteffort", + value: sum_over_time(appcat:metering{label_appuio_io_billing_name="appcat-mariadb",label_appcat_vshn_io_sla="besteffort", tenant_name="APPUiO"} * on(label_appuio_io_organization) group_left(sales_order) label_replace(appuio_control_organization_info{namespace="appuio-control-api-production"}, - "label_appuio_io_organization", "$1", "organization", "(.*)") + "label_appuio_io_organization", "$1", "organization", "(.*)")[59:1])/60 - name: AR_INSTANCE_JSONNET value: local labels = std.extVar("labels"); "%(cluster_id)s/%(label_appcat_vshn_io_claim_namespace)s/%(label_appcat_vshn_io_claim_name)s" % labels @@ -497,10 +497,10 @@ spec: - name: AR_PRODUCT_ID value: appcat-vshn-mariadb-guaranteed - name: AR_QUERY - value: appcat:metering{label_appuio_io_billing_name="appcat-mariadb",label_appcat_vshn_io_sla="guaranteed", + value: sum_over_time(appcat:metering{label_appuio_io_billing_name="appcat-mariadb",label_appcat_vshn_io_sla="guaranteed", tenant_name="APPUiO"} * on(label_appuio_io_organization) group_left(sales_order) label_replace(appuio_control_organization_info{namespace="appuio-control-api-production"}, - "label_appuio_io_organization", "$1", "organization", "(.*)") + "label_appuio_io_organization", "$1", "organization", "(.*)")[59:1])/60 - name: AR_INSTANCE_JSONNET value: local labels = std.extVar("labels"); "%(cluster_id)s/%(label_appcat_vshn_io_claim_namespace)s/%(label_appcat_vshn_io_claim_name)s" % labels @@ -585,8 +585,8 @@ spec: - name: AR_PRODUCT_ID value: appcat-vshn-mariadb-besteffort - name: AR_QUERY - value: appcat:metering{label_appuio_io_billing_name="appcat-mariadb",label_appcat_vshn_io_sla="besteffort", - tenant_name!="APPUiO"} + value: sum_over_time(appcat:metering{label_appuio_io_billing_name="appcat-mariadb",label_appcat_vshn_io_sla="besteffort", + tenant_name!="APPUiO"}[59:1])/60 - name: AR_INSTANCE_JSONNET value: local labels = std.extVar("labels"); "%(cluster_id)s/%(label_appcat_vshn_io_claim_namespace)s/%(label_appcat_vshn_io_claim_name)s" % labels @@ -671,8 +671,8 @@ spec: - name: AR_PRODUCT_ID value: appcat-vshn-mariadb-guaranteed - name: AR_QUERY - value: appcat:metering{label_appuio_io_billing_name="appcat-mariadb",label_appcat_vshn_io_sla="guaranteed", - tenant_name!="APPUiO"} + value: sum_over_time(appcat:metering{label_appuio_io_billing_name="appcat-mariadb",label_appcat_vshn_io_sla="guaranteed", + tenant_name!="APPUiO"}[59:1])/60 - name: AR_INSTANCE_JSONNET value: local labels = std.extVar("labels"); "%(cluster_id)s/%(label_appcat_vshn_io_claim_namespace)s/%(label_appcat_vshn_io_claim_name)s" % labels @@ -757,10 +757,10 @@ spec: - name: AR_PRODUCT_ID value: appcat-vshn-minio-besteffort - name: AR_QUERY - value: appcat:metering{label_appuio_io_billing_name="appcat-minio",label_appcat_vshn_io_sla="besteffort", + value: sum_over_time(appcat:metering{label_appuio_io_billing_name="appcat-minio",label_appcat_vshn_io_sla="besteffort", tenant_name="APPUiO"} * on(label_appuio_io_organization) group_left(sales_order) label_replace(appuio_control_organization_info{namespace="appuio-control-api-production"}, - "label_appuio_io_organization", "$1", "organization", "(.*)") + "label_appuio_io_organization", "$1", "organization", "(.*)")[59:1])/60 - name: AR_INSTANCE_JSONNET value: local labels = std.extVar("labels"); "%(cluster_id)s/%(label_appcat_vshn_io_claim_namespace)s/%(label_appcat_vshn_io_claim_name)s" % labels @@ -845,10 +845,10 @@ spec: - name: AR_PRODUCT_ID value: appcat-vshn-minio-guaranteed - name: AR_QUERY - value: appcat:metering{label_appuio_io_billing_name="appcat-minio",label_appcat_vshn_io_sla="guaranteed", + value: sum_over_time(appcat:metering{label_appuio_io_billing_name="appcat-minio",label_appcat_vshn_io_sla="guaranteed", tenant_name="APPUiO"} * on(label_appuio_io_organization) group_left(sales_order) label_replace(appuio_control_organization_info{namespace="appuio-control-api-production"}, - "label_appuio_io_organization", "$1", "organization", "(.*)") + "label_appuio_io_organization", "$1", "organization", "(.*)")[59:1])/60 - name: AR_INSTANCE_JSONNET value: local labels = std.extVar("labels"); "%(cluster_id)s/%(label_appcat_vshn_io_claim_namespace)s/%(label_appcat_vshn_io_claim_name)s" % labels @@ -933,8 +933,8 @@ spec: - name: AR_PRODUCT_ID value: appcat-vshn-minio-besteffort - name: AR_QUERY - value: appcat:metering{label_appuio_io_billing_name="appcat-minio",label_appcat_vshn_io_sla="besteffort", - tenant_name!="APPUiO"} + value: sum_over_time(appcat:metering{label_appuio_io_billing_name="appcat-minio",label_appcat_vshn_io_sla="besteffort", + tenant_name!="APPUiO"}[59:1])/60 - name: AR_INSTANCE_JSONNET value: local labels = std.extVar("labels"); "%(cluster_id)s/%(label_appcat_vshn_io_claim_namespace)s/%(label_appcat_vshn_io_claim_name)s" % labels @@ -1019,8 +1019,8 @@ spec: - name: AR_PRODUCT_ID value: appcat-vshn-minio-guaranteed - name: AR_QUERY - value: appcat:metering{label_appuio_io_billing_name="appcat-minio",label_appcat_vshn_io_sla="guaranteed", - tenant_name!="APPUiO"} + value: sum_over_time(appcat:metering{label_appuio_io_billing_name="appcat-minio",label_appcat_vshn_io_sla="guaranteed", + tenant_name!="APPUiO"}[59:1])/60 - name: AR_INSTANCE_JSONNET value: local labels = std.extVar("labels"); "%(cluster_id)s/%(label_appcat_vshn_io_claim_namespace)s/%(label_appcat_vshn_io_claim_name)s" % labels @@ -1105,10 +1105,10 @@ spec: - name: AR_PRODUCT_ID value: appcat-vshn-nextcloud-besteffort - name: AR_QUERY - value: appcat:metering{label_appuio_io_billing_name="appcat-nextcloud",label_appcat_vshn_io_sla="besteffort", + value: sum_over_time(appcat:metering{label_appuio_io_billing_name="appcat-nextcloud",label_appcat_vshn_io_sla="besteffort", tenant_name="APPUiO"} * on(label_appuio_io_organization) group_left(sales_order) label_replace(appuio_control_organization_info{namespace="appuio-control-api-production"}, - "label_appuio_io_organization", "$1", "organization", "(.*)") + "label_appuio_io_organization", "$1", "organization", "(.*)")[59:1])/60 - name: AR_INSTANCE_JSONNET value: local labels = std.extVar("labels"); "%(cluster_id)s/%(label_appcat_vshn_io_claim_namespace)s/%(label_appcat_vshn_io_claim_name)s" % labels @@ -1193,10 +1193,10 @@ spec: - name: AR_PRODUCT_ID value: appcat-vshn-nextcloud-guaranteed - name: AR_QUERY - value: appcat:metering{label_appuio_io_billing_name="appcat-nextcloud",label_appcat_vshn_io_sla="guaranteed", + value: sum_over_time(appcat:metering{label_appuio_io_billing_name="appcat-nextcloud",label_appcat_vshn_io_sla="guaranteed", tenant_name="APPUiO"} * on(label_appuio_io_organization) group_left(sales_order) label_replace(appuio_control_organization_info{namespace="appuio-control-api-production"}, - "label_appuio_io_organization", "$1", "organization", "(.*)") + "label_appuio_io_organization", "$1", "organization", "(.*)")[59:1])/60 - name: AR_INSTANCE_JSONNET value: local labels = std.extVar("labels"); "%(cluster_id)s/%(label_appcat_vshn_io_claim_namespace)s/%(label_appcat_vshn_io_claim_name)s" % labels @@ -1281,8 +1281,8 @@ spec: - name: AR_PRODUCT_ID value: appcat-vshn-nextcloud-besteffort - name: AR_QUERY - value: appcat:metering{label_appuio_io_billing_name="appcat-nextcloud",label_appcat_vshn_io_sla="besteffort", - tenant_name!="APPUiO"} + value: sum_over_time(appcat:metering{label_appuio_io_billing_name="appcat-nextcloud",label_appcat_vshn_io_sla="besteffort", + tenant_name!="APPUiO"}[59:1])/60 - name: AR_INSTANCE_JSONNET value: local labels = std.extVar("labels"); "%(cluster_id)s/%(label_appcat_vshn_io_claim_namespace)s/%(label_appcat_vshn_io_claim_name)s" % labels @@ -1367,8 +1367,8 @@ spec: - name: AR_PRODUCT_ID value: appcat-vshn-nextcloud-guaranteed - name: AR_QUERY - value: appcat:metering{label_appuio_io_billing_name="appcat-nextcloud",label_appcat_vshn_io_sla="guaranteed", - tenant_name!="APPUiO"} + value: sum_over_time(appcat:metering{label_appuio_io_billing_name="appcat-nextcloud",label_appcat_vshn_io_sla="guaranteed", + tenant_name!="APPUiO"}[59:1])/60 - name: AR_INSTANCE_JSONNET value: local labels = std.extVar("labels"); "%(cluster_id)s/%(label_appcat_vshn_io_claim_namespace)s/%(label_appcat_vshn_io_claim_name)s" % labels @@ -1453,10 +1453,10 @@ spec: - name: AR_PRODUCT_ID value: appcat-vshn-postgres-besteffort - name: AR_QUERY - value: appcat:metering{label_appuio_io_billing_name="appcat-postgresql",label_appcat_vshn_io_sla="besteffort", + value: sum_over_time(appcat:metering{label_appuio_io_billing_name="appcat-postgresql",label_appcat_vshn_io_sla="besteffort", tenant_name="APPUiO"} * on(label_appuio_io_organization) group_left(sales_order) label_replace(appuio_control_organization_info{namespace="appuio-control-api-production"}, - "label_appuio_io_organization", "$1", "organization", "(.*)") + "label_appuio_io_organization", "$1", "organization", "(.*)")[59:1])/60 - name: AR_INSTANCE_JSONNET value: local labels = std.extVar("labels"); "%(cluster_id)s/%(label_appcat_vshn_io_claim_namespace)s/%(label_appcat_vshn_io_claim_name)s" % labels @@ -1541,10 +1541,10 @@ spec: - name: AR_PRODUCT_ID value: appcat-vshn-postgres-guaranteed - name: AR_QUERY - value: appcat:metering{label_appuio_io_billing_name="appcat-postgresql",label_appcat_vshn_io_sla="guaranteed", + value: sum_over_time(appcat:metering{label_appuio_io_billing_name="appcat-postgresql",label_appcat_vshn_io_sla="guaranteed", tenant_name="APPUiO"} * on(label_appuio_io_organization) group_left(sales_order) label_replace(appuio_control_organization_info{namespace="appuio-control-api-production"}, - "label_appuio_io_organization", "$1", "organization", "(.*)") + "label_appuio_io_organization", "$1", "organization", "(.*)")[59:1])/60 - name: AR_INSTANCE_JSONNET value: local labels = std.extVar("labels"); "%(cluster_id)s/%(label_appcat_vshn_io_claim_namespace)s/%(label_appcat_vshn_io_claim_name)s" % labels @@ -1629,8 +1629,8 @@ spec: - name: AR_PRODUCT_ID value: appcat-vshn-postgres-besteffort - name: AR_QUERY - value: appcat:metering{label_appuio_io_billing_name="appcat-postgresql",label_appcat_vshn_io_sla="besteffort", - tenant_name!="APPUiO"} + value: sum_over_time(appcat:metering{label_appuio_io_billing_name="appcat-postgresql",label_appcat_vshn_io_sla="besteffort", + tenant_name!="APPUiO"}[59:1])/60 - name: AR_INSTANCE_JSONNET value: local labels = std.extVar("labels"); "%(cluster_id)s/%(label_appcat_vshn_io_claim_namespace)s/%(label_appcat_vshn_io_claim_name)s" % labels @@ -1715,8 +1715,8 @@ spec: - name: AR_PRODUCT_ID value: appcat-vshn-postgres-guaranteed - name: AR_QUERY - value: appcat:metering{label_appuio_io_billing_name="appcat-postgresql",label_appcat_vshn_io_sla="guaranteed", - tenant_name!="APPUiO"} + value: sum_over_time(appcat:metering{label_appuio_io_billing_name="appcat-postgresql",label_appcat_vshn_io_sla="guaranteed", + tenant_name!="APPUiO"}[59:1])/60 - name: AR_INSTANCE_JSONNET value: local labels = std.extVar("labels"); "%(cluster_id)s/%(label_appcat_vshn_io_claim_namespace)s/%(label_appcat_vshn_io_claim_name)s" % labels @@ -1801,10 +1801,10 @@ spec: - name: AR_PRODUCT_ID value: appcat-vshn-redis-besteffort - name: AR_QUERY - value: appcat:metering{label_appuio_io_billing_name="appcat-redis",label_appcat_vshn_io_sla="besteffort", + value: sum_over_time(appcat:metering{label_appuio_io_billing_name="appcat-redis",label_appcat_vshn_io_sla="besteffort", tenant_name="APPUiO"} * on(label_appuio_io_organization) group_left(sales_order) label_replace(appuio_control_organization_info{namespace="appuio-control-api-production"}, - "label_appuio_io_organization", "$1", "organization", "(.*)") + "label_appuio_io_organization", "$1", "organization", "(.*)")[59:1])/60 - name: AR_INSTANCE_JSONNET value: local labels = std.extVar("labels"); "%(cluster_id)s/%(label_appcat_vshn_io_claim_namespace)s/%(label_appcat_vshn_io_claim_name)s" % labels @@ -1889,10 +1889,10 @@ spec: - name: AR_PRODUCT_ID value: appcat-vshn-redis-guaranteed - name: AR_QUERY - value: appcat:metering{label_appuio_io_billing_name="appcat-redis",label_appcat_vshn_io_sla="guaranteed", + value: sum_over_time(appcat:metering{label_appuio_io_billing_name="appcat-redis",label_appcat_vshn_io_sla="guaranteed", tenant_name="APPUiO"} * on(label_appuio_io_organization) group_left(sales_order) label_replace(appuio_control_organization_info{namespace="appuio-control-api-production"}, - "label_appuio_io_organization", "$1", "organization", "(.*)") + "label_appuio_io_organization", "$1", "organization", "(.*)")[59:1])/60 - name: AR_INSTANCE_JSONNET value: local labels = std.extVar("labels"); "%(cluster_id)s/%(label_appcat_vshn_io_claim_namespace)s/%(label_appcat_vshn_io_claim_name)s" % labels @@ -1977,8 +1977,8 @@ spec: - name: AR_PRODUCT_ID value: appcat-vshn-redis-besteffort - name: AR_QUERY - value: appcat:metering{label_appuio_io_billing_name="appcat-redis",label_appcat_vshn_io_sla="besteffort", - tenant_name!="APPUiO"} + value: sum_over_time(appcat:metering{label_appuio_io_billing_name="appcat-redis",label_appcat_vshn_io_sla="besteffort", + tenant_name!="APPUiO"}[59:1])/60 - name: AR_INSTANCE_JSONNET value: local labels = std.extVar("labels"); "%(cluster_id)s/%(label_appcat_vshn_io_claim_namespace)s/%(label_appcat_vshn_io_claim_name)s" % labels @@ -2063,8 +2063,8 @@ spec: - name: AR_PRODUCT_ID value: appcat-vshn-redis-guaranteed - name: AR_QUERY - value: appcat:metering{label_appuio_io_billing_name="appcat-redis",label_appcat_vshn_io_sla="guaranteed", - tenant_name!="APPUiO"} + value: sum_over_time(appcat:metering{label_appuio_io_billing_name="appcat-redis",label_appcat_vshn_io_sla="guaranteed", + tenant_name!="APPUiO"}[59:1])/60 - name: AR_INSTANCE_JSONNET value: local labels = std.extVar("labels"); "%(cluster_id)s/%(label_appcat_vshn_io_claim_namespace)s/%(label_appcat_vshn_io_claim_name)s" % labels diff --git a/tests/golden/cloudscale-metrics-collector-cloud/appcat/appcat/10_appcat_metering_recording_rule.yaml b/tests/golden/cloudscale-metrics-collector-cloud/appcat/appcat/10_appcat_metering_recording_rule.yaml deleted file mode 100644 index 0643bf3e2..000000000 --- a/tests/golden/cloudscale-metrics-collector-cloud/appcat/appcat/10_appcat_metering_recording_rule.yaml +++ /dev/null @@ -1,38 +0,0 @@ -apiVersion: monitoring.coreos.com/v1 -kind: PrometheusRule -metadata: - labels: - name: appcat-metering - name: appcat-metering - namespace: syn-appcat -spec: - groups: - - name: appcat-metering-rules - rules: - - expr: | - sum by (label_appcat_vshn_io_claim_namespace,label_appcat_vshn_io_sla,label_appuio_io_billing_name,label_appcat_vshn_io_claim_name,sales_order,label_appuio_io_billing_name) ( - # Sum values over one hour and get mean - sum_over_time( - # Default appcat.vshn.io/sla to besteffort if it is not set - label_replace( - # Fetch all namespaces with label label_appuio_io_billing_name=~"appcat-.+" - ( - # We hardcode the tenant ID here, so that we have the label to do the join. - label_replace( - kube_namespace_labels{ label_appuio_io_billing_name=~"appcat-.+"} * - on (namespace) group_right(label_appcat_vshn_io_claim_namespace,label_appcat_vshn_io_sla, label_appuio_io_billing_name,label_appcat_vshn_io_claim_name,sales_order,label_appuio_io_billing_name) - (kube_pod_info{created_by_kind!="Job"} * on(namespace, pod) kube_pod_labels{label_appcat_io_billing="true"}), - "sales_order", - "", - "", - "" - ) - ), - "label_appcat_vshn_io_sla", - "besteffort", - "label_appcat_vshn_io_sla", - "^$" - )[60m:1m] - )/60 - ) - record: appcat:metering diff --git a/tests/golden/cloudscale-metrics-collector-managed/appcat/appcat/10_appcat_metering_recording_rule.yaml b/tests/golden/cloudscale-metrics-collector-managed/appcat/appcat/10_appcat_metering_recording_rule.yaml deleted file mode 100644 index 7c9b2dcdb..000000000 --- a/tests/golden/cloudscale-metrics-collector-managed/appcat/appcat/10_appcat_metering_recording_rule.yaml +++ /dev/null @@ -1,38 +0,0 @@ -apiVersion: monitoring.coreos.com/v1 -kind: PrometheusRule -metadata: - labels: - name: appcat-metering - name: appcat-metering - namespace: syn-appcat -spec: - groups: - - name: appcat-metering-rules - rules: - - expr: | - sum by (label_appcat_vshn_io_claim_namespace,label_appcat_vshn_io_sla,label_appuio_io_billing_name,label_appcat_vshn_io_claim_name,sales_order,label_appuio_io_billing_name) ( - # Sum values over one hour and get mean - sum_over_time( - # Default appcat.vshn.io/sla to besteffort if it is not set - label_replace( - # Fetch all namespaces with label label_appuio_io_billing_name=~"appcat-.+" - ( - # We hardcode the tenant ID here, so that we have the label to do the join. - label_replace( - kube_namespace_labels{ label_appuio_io_billing_name=~"appcat-.+"} * - on (namespace) group_right(label_appcat_vshn_io_claim_namespace,label_appcat_vshn_io_sla, label_appuio_io_billing_name,label_appcat_vshn_io_claim_name,sales_order,label_appuio_io_billing_name) - (kube_pod_info{created_by_kind!="Job"} * on(namespace, pod) kube_pod_labels{label_appcat_io_billing="true"}), - "sales_order", - "10431", - "", - "" - ) - ), - "label_appcat_vshn_io_sla", - "besteffort", - "label_appcat_vshn_io_sla", - "^$" - )[60m:1m] - )/60 - ) - record: appcat:metering diff --git a/tests/golden/cloudscale/appcat/appcat/10_appcat_metering_recording_rule.yaml b/tests/golden/cloudscale/appcat/appcat/10_appcat_metering_recording_rule.yaml deleted file mode 100644 index 26d2a1b37..000000000 --- a/tests/golden/cloudscale/appcat/appcat/10_appcat_metering_recording_rule.yaml +++ /dev/null @@ -1,33 +0,0 @@ -apiVersion: monitoring.coreos.com/v1 -kind: PrometheusRule -metadata: - labels: - name: appcat-metering - name: appcat-metering - namespace: syn-appcat -spec: - groups: - - name: appcat-metering-rules - rules: - - expr: | - sum by (label_appcat_vshn_io_claim_namespace,label_appcat_vshn_io_sla,label_appcat_vshn_io_claim_name,label_appuio_io_billing_name,label_appuio_io_organization) ( - # Sum values over one hour and get mean - sum_over_time( - # Default appcat.vshn.io/sla to besteffort if it is not set - label_replace( - # Fetch all namespaces with label label_appuio_io_billing_name=~"appcat-.+" - (kube_namespace_labels{label_appuio_io_billing_name=~"appcat-.+"} * - on (namespace) group_right(label_appuio_io_organization,label_appcat_vshn_io_claim_namespace,label_appcat_vshn_io_sla,label_appcat_vshn_io_claim_name,label_appuio_io_billing_name,label_appuio_io_organization) - (kube_pod_info{created_by_kind!="Job"} * on(namespace, pod) kube_pod_labels{label_appcat_io_billing="true"}) - # We join it with appuio_control_organization_info to map the organization to a sales_order - # This metric is not available on the cluster's prometheus, only on mimir, this is just included for completenes sake. - #* on(label_appuio_io_organization) group_left(sales_order) label_replace(appuio_control_organization_info, "label_appuio_io_organization", "$1", "name", "(.*)") - ), - "label_appcat_vshn_io_sla", - "besteffort", - "label_appcat_vshn_io_sla", - "^$" - )[60m:1m] - )/60 - ) - record: appcat:metering diff --git a/tests/golden/controllers/appcat/appcat/10_appcat_metering_recording_rule.yaml b/tests/golden/controllers/appcat/appcat/10_appcat_metering_recording_rule.yaml deleted file mode 100644 index 7c9b2dcdb..000000000 --- a/tests/golden/controllers/appcat/appcat/10_appcat_metering_recording_rule.yaml +++ /dev/null @@ -1,38 +0,0 @@ -apiVersion: monitoring.coreos.com/v1 -kind: PrometheusRule -metadata: - labels: - name: appcat-metering - name: appcat-metering - namespace: syn-appcat -spec: - groups: - - name: appcat-metering-rules - rules: - - expr: | - sum by (label_appcat_vshn_io_claim_namespace,label_appcat_vshn_io_sla,label_appuio_io_billing_name,label_appcat_vshn_io_claim_name,sales_order,label_appuio_io_billing_name) ( - # Sum values over one hour and get mean - sum_over_time( - # Default appcat.vshn.io/sla to besteffort if it is not set - label_replace( - # Fetch all namespaces with label label_appuio_io_billing_name=~"appcat-.+" - ( - # We hardcode the tenant ID here, so that we have the label to do the join. - label_replace( - kube_namespace_labels{ label_appuio_io_billing_name=~"appcat-.+"} * - on (namespace) group_right(label_appcat_vshn_io_claim_namespace,label_appcat_vshn_io_sla, label_appuio_io_billing_name,label_appcat_vshn_io_claim_name,sales_order,label_appuio_io_billing_name) - (kube_pod_info{created_by_kind!="Job"} * on(namespace, pod) kube_pod_labels{label_appcat_io_billing="true"}), - "sales_order", - "10431", - "", - "" - ) - ), - "label_appcat_vshn_io_sla", - "besteffort", - "label_appcat_vshn_io_sla", - "^$" - )[60m:1m] - )/60 - ) - record: appcat:metering diff --git a/tests/golden/defaults/appcat/appcat/10_appcat_metering_recording_rule.yaml b/tests/golden/defaults/appcat/appcat/10_appcat_metering_recording_rule.yaml deleted file mode 100644 index 7c9b2dcdb..000000000 --- a/tests/golden/defaults/appcat/appcat/10_appcat_metering_recording_rule.yaml +++ /dev/null @@ -1,38 +0,0 @@ -apiVersion: monitoring.coreos.com/v1 -kind: PrometheusRule -metadata: - labels: - name: appcat-metering - name: appcat-metering - namespace: syn-appcat -spec: - groups: - - name: appcat-metering-rules - rules: - - expr: | - sum by (label_appcat_vshn_io_claim_namespace,label_appcat_vshn_io_sla,label_appuio_io_billing_name,label_appcat_vshn_io_claim_name,sales_order,label_appuio_io_billing_name) ( - # Sum values over one hour and get mean - sum_over_time( - # Default appcat.vshn.io/sla to besteffort if it is not set - label_replace( - # Fetch all namespaces with label label_appuio_io_billing_name=~"appcat-.+" - ( - # We hardcode the tenant ID here, so that we have the label to do the join. - label_replace( - kube_namespace_labels{ label_appuio_io_billing_name=~"appcat-.+"} * - on (namespace) group_right(label_appcat_vshn_io_claim_namespace,label_appcat_vshn_io_sla, label_appuio_io_billing_name,label_appcat_vshn_io_claim_name,sales_order,label_appuio_io_billing_name) - (kube_pod_info{created_by_kind!="Job"} * on(namespace, pod) kube_pod_labels{label_appcat_io_billing="true"}), - "sales_order", - "10431", - "", - "" - ) - ), - "label_appcat_vshn_io_sla", - "besteffort", - "label_appcat_vshn_io_sla", - "^$" - )[60m:1m] - )/60 - ) - record: appcat:metering diff --git a/tests/golden/exoscale-metrics-collector-cloud/appcat/appcat/10_appcat_metering_recording_rule.yaml b/tests/golden/exoscale-metrics-collector-cloud/appcat/appcat/10_appcat_metering_recording_rule.yaml deleted file mode 100644 index 7c9b2dcdb..000000000 --- a/tests/golden/exoscale-metrics-collector-cloud/appcat/appcat/10_appcat_metering_recording_rule.yaml +++ /dev/null @@ -1,38 +0,0 @@ -apiVersion: monitoring.coreos.com/v1 -kind: PrometheusRule -metadata: - labels: - name: appcat-metering - name: appcat-metering - namespace: syn-appcat -spec: - groups: - - name: appcat-metering-rules - rules: - - expr: | - sum by (label_appcat_vshn_io_claim_namespace,label_appcat_vshn_io_sla,label_appuio_io_billing_name,label_appcat_vshn_io_claim_name,sales_order,label_appuio_io_billing_name) ( - # Sum values over one hour and get mean - sum_over_time( - # Default appcat.vshn.io/sla to besteffort if it is not set - label_replace( - # Fetch all namespaces with label label_appuio_io_billing_name=~"appcat-.+" - ( - # We hardcode the tenant ID here, so that we have the label to do the join. - label_replace( - kube_namespace_labels{ label_appuio_io_billing_name=~"appcat-.+"} * - on (namespace) group_right(label_appcat_vshn_io_claim_namespace,label_appcat_vshn_io_sla, label_appuio_io_billing_name,label_appcat_vshn_io_claim_name,sales_order,label_appuio_io_billing_name) - (kube_pod_info{created_by_kind!="Job"} * on(namespace, pod) kube_pod_labels{label_appcat_io_billing="true"}), - "sales_order", - "10431", - "", - "" - ) - ), - "label_appcat_vshn_io_sla", - "besteffort", - "label_appcat_vshn_io_sla", - "^$" - )[60m:1m] - )/60 - ) - record: appcat:metering diff --git a/tests/golden/exoscale-metrics-collector-managed/appcat/appcat/10_appcat_metering_recording_rule.yaml b/tests/golden/exoscale-metrics-collector-managed/appcat/appcat/10_appcat_metering_recording_rule.yaml deleted file mode 100644 index 7c9b2dcdb..000000000 --- a/tests/golden/exoscale-metrics-collector-managed/appcat/appcat/10_appcat_metering_recording_rule.yaml +++ /dev/null @@ -1,38 +0,0 @@ -apiVersion: monitoring.coreos.com/v1 -kind: PrometheusRule -metadata: - labels: - name: appcat-metering - name: appcat-metering - namespace: syn-appcat -spec: - groups: - - name: appcat-metering-rules - rules: - - expr: | - sum by (label_appcat_vshn_io_claim_namespace,label_appcat_vshn_io_sla,label_appuio_io_billing_name,label_appcat_vshn_io_claim_name,sales_order,label_appuio_io_billing_name) ( - # Sum values over one hour and get mean - sum_over_time( - # Default appcat.vshn.io/sla to besteffort if it is not set - label_replace( - # Fetch all namespaces with label label_appuio_io_billing_name=~"appcat-.+" - ( - # We hardcode the tenant ID here, so that we have the label to do the join. - label_replace( - kube_namespace_labels{ label_appuio_io_billing_name=~"appcat-.+"} * - on (namespace) group_right(label_appcat_vshn_io_claim_namespace,label_appcat_vshn_io_sla, label_appuio_io_billing_name,label_appcat_vshn_io_claim_name,sales_order,label_appuio_io_billing_name) - (kube_pod_info{created_by_kind!="Job"} * on(namespace, pod) kube_pod_labels{label_appcat_io_billing="true"}), - "sales_order", - "10431", - "", - "" - ) - ), - "label_appcat_vshn_io_sla", - "besteffort", - "label_appcat_vshn_io_sla", - "^$" - )[60m:1m] - )/60 - ) - record: appcat:metering diff --git a/tests/golden/exoscale/appcat/appcat/10_appcat_metering_recording_rule.yaml b/tests/golden/exoscale/appcat/appcat/10_appcat_metering_recording_rule.yaml deleted file mode 100644 index 26d2a1b37..000000000 --- a/tests/golden/exoscale/appcat/appcat/10_appcat_metering_recording_rule.yaml +++ /dev/null @@ -1,33 +0,0 @@ -apiVersion: monitoring.coreos.com/v1 -kind: PrometheusRule -metadata: - labels: - name: appcat-metering - name: appcat-metering - namespace: syn-appcat -spec: - groups: - - name: appcat-metering-rules - rules: - - expr: | - sum by (label_appcat_vshn_io_claim_namespace,label_appcat_vshn_io_sla,label_appcat_vshn_io_claim_name,label_appuio_io_billing_name,label_appuio_io_organization) ( - # Sum values over one hour and get mean - sum_over_time( - # Default appcat.vshn.io/sla to besteffort if it is not set - label_replace( - # Fetch all namespaces with label label_appuio_io_billing_name=~"appcat-.+" - (kube_namespace_labels{label_appuio_io_billing_name=~"appcat-.+"} * - on (namespace) group_right(label_appuio_io_organization,label_appcat_vshn_io_claim_namespace,label_appcat_vshn_io_sla,label_appcat_vshn_io_claim_name,label_appuio_io_billing_name,label_appuio_io_organization) - (kube_pod_info{created_by_kind!="Job"} * on(namespace, pod) kube_pod_labels{label_appcat_io_billing="true"}) - # We join it with appuio_control_organization_info to map the organization to a sales_order - # This metric is not available on the cluster's prometheus, only on mimir, this is just included for completenes sake. - #* on(label_appuio_io_organization) group_left(sales_order) label_replace(appuio_control_organization_info, "label_appuio_io_organization", "$1", "name", "(.*)") - ), - "label_appcat_vshn_io_sla", - "besteffort", - "label_appcat_vshn_io_sla", - "^$" - )[60m:1m] - )/60 - ) - record: appcat:metering diff --git a/tests/golden/minio/appcat/appcat/10_appcat_metering_recording_rule.yaml b/tests/golden/minio/appcat/appcat/10_appcat_metering_recording_rule.yaml deleted file mode 100644 index 7c9b2dcdb..000000000 --- a/tests/golden/minio/appcat/appcat/10_appcat_metering_recording_rule.yaml +++ /dev/null @@ -1,38 +0,0 @@ -apiVersion: monitoring.coreos.com/v1 -kind: PrometheusRule -metadata: - labels: - name: appcat-metering - name: appcat-metering - namespace: syn-appcat -spec: - groups: - - name: appcat-metering-rules - rules: - - expr: | - sum by (label_appcat_vshn_io_claim_namespace,label_appcat_vshn_io_sla,label_appuio_io_billing_name,label_appcat_vshn_io_claim_name,sales_order,label_appuio_io_billing_name) ( - # Sum values over one hour and get mean - sum_over_time( - # Default appcat.vshn.io/sla to besteffort if it is not set - label_replace( - # Fetch all namespaces with label label_appuio_io_billing_name=~"appcat-.+" - ( - # We hardcode the tenant ID here, so that we have the label to do the join. - label_replace( - kube_namespace_labels{ label_appuio_io_billing_name=~"appcat-.+"} * - on (namespace) group_right(label_appcat_vshn_io_claim_namespace,label_appcat_vshn_io_sla, label_appuio_io_billing_name,label_appcat_vshn_io_claim_name,sales_order,label_appuio_io_billing_name) - (kube_pod_info{created_by_kind!="Job"} * on(namespace, pod) kube_pod_labels{label_appcat_io_billing="true"}), - "sales_order", - "10431", - "", - "" - ) - ), - "label_appcat_vshn_io_sla", - "besteffort", - "label_appcat_vshn_io_sla", - "^$" - )[60m:1m] - )/60 - ) - record: appcat:metering diff --git a/tests/golden/minio/appcat/appcat/21_composition_vshn_minio.yaml b/tests/golden/minio/appcat/appcat/21_composition_vshn_minio.yaml index a677a071c..28ecf4a89 100644 --- a/tests/golden/minio/appcat/appcat/21_composition_vshn_minio.yaml +++ b/tests/golden/minio/appcat/appcat/21_composition_vshn_minio.yaml @@ -51,6 +51,7 @@ spec: true, "memory": "1Gi"}}}' providerEnabled: 'false' quotasEnabled: 'false' + salesOrder: '10431' serviceName: minio sliNamespace: appcat-slos kind: ConfigMap diff --git a/tests/golden/openshift/appcat/appcat/10_appcat_metering_recording_rule.yaml b/tests/golden/openshift/appcat/appcat/10_appcat_metering_recording_rule.yaml deleted file mode 100644 index 7c9b2dcdb..000000000 --- a/tests/golden/openshift/appcat/appcat/10_appcat_metering_recording_rule.yaml +++ /dev/null @@ -1,38 +0,0 @@ -apiVersion: monitoring.coreos.com/v1 -kind: PrometheusRule -metadata: - labels: - name: appcat-metering - name: appcat-metering - namespace: syn-appcat -spec: - groups: - - name: appcat-metering-rules - rules: - - expr: | - sum by (label_appcat_vshn_io_claim_namespace,label_appcat_vshn_io_sla,label_appuio_io_billing_name,label_appcat_vshn_io_claim_name,sales_order,label_appuio_io_billing_name) ( - # Sum values over one hour and get mean - sum_over_time( - # Default appcat.vshn.io/sla to besteffort if it is not set - label_replace( - # Fetch all namespaces with label label_appuio_io_billing_name=~"appcat-.+" - ( - # We hardcode the tenant ID here, so that we have the label to do the join. - label_replace( - kube_namespace_labels{ label_appuio_io_billing_name=~"appcat-.+"} * - on (namespace) group_right(label_appcat_vshn_io_claim_namespace,label_appcat_vshn_io_sla, label_appuio_io_billing_name,label_appcat_vshn_io_claim_name,sales_order,label_appuio_io_billing_name) - (kube_pod_info{created_by_kind!="Job"} * on(namespace, pod) kube_pod_labels{label_appcat_io_billing="true"}), - "sales_order", - "10431", - "", - "" - ) - ), - "label_appcat_vshn_io_sla", - "besteffort", - "label_appcat_vshn_io_sla", - "^$" - )[60m:1m] - )/60 - ) - record: appcat:metering diff --git a/tests/golden/openshift/appcat/appcat/21_composition_vshn_postgres.yaml b/tests/golden/openshift/appcat/appcat/21_composition_vshn_postgres.yaml index 357330062..0f5ba06bf 100644 --- a/tests/golden/openshift/appcat/appcat/21_composition_vshn_postgres.yaml +++ b/tests/golden/openshift/appcat/appcat/21_composition_vshn_postgres.yaml @@ -78,6 +78,7 @@ spec: "standard-4": {"size": {"cpu": "900m", "disk": "40Gi", "enabled": true, "memory": "3984Mi"}}}' quotasEnabled: 'false' + salesOrder: '10431' serviceName: postgresql sgNamespace: stackgres sideCars: '{"clusterController": {"limits": {"cpu": "32m", "memory": "256Mi"}, diff --git a/tests/golden/openshift/appcat/appcat/21_composition_vshn_redis.yaml b/tests/golden/openshift/appcat/appcat/21_composition_vshn_redis.yaml index 28cffe214..46904bd02 100644 --- a/tests/golden/openshift/appcat/appcat/21_composition_vshn_redis.yaml +++ b/tests/golden/openshift/appcat/appcat/21_composition_vshn_redis.yaml @@ -577,6 +577,7 @@ spec: ownerVersion: v1 quotasEnabled: 'false' restoreSA: redisrestoreserviceaccount + salesOrder: '10431' serviceName: redis sliNamespace: appcat-slos kind: ConfigMap diff --git a/tests/golden/vshn/appcat/appcat/10_appcat_metering_recording_rule.yaml b/tests/golden/vshn/appcat/appcat/10_appcat_metering_recording_rule.yaml deleted file mode 100644 index 26d2a1b37..000000000 --- a/tests/golden/vshn/appcat/appcat/10_appcat_metering_recording_rule.yaml +++ /dev/null @@ -1,33 +0,0 @@ -apiVersion: monitoring.coreos.com/v1 -kind: PrometheusRule -metadata: - labels: - name: appcat-metering - name: appcat-metering - namespace: syn-appcat -spec: - groups: - - name: appcat-metering-rules - rules: - - expr: | - sum by (label_appcat_vshn_io_claim_namespace,label_appcat_vshn_io_sla,label_appcat_vshn_io_claim_name,label_appuio_io_billing_name,label_appuio_io_organization) ( - # Sum values over one hour and get mean - sum_over_time( - # Default appcat.vshn.io/sla to besteffort if it is not set - label_replace( - # Fetch all namespaces with label label_appuio_io_billing_name=~"appcat-.+" - (kube_namespace_labels{label_appuio_io_billing_name=~"appcat-.+"} * - on (namespace) group_right(label_appuio_io_organization,label_appcat_vshn_io_claim_namespace,label_appcat_vshn_io_sla,label_appcat_vshn_io_claim_name,label_appuio_io_billing_name,label_appuio_io_organization) - (kube_pod_info{created_by_kind!="Job"} * on(namespace, pod) kube_pod_labels{label_appcat_io_billing="true"}) - # We join it with appuio_control_organization_info to map the organization to a sales_order - # This metric is not available on the cluster's prometheus, only on mimir, this is just included for completenes sake. - #* on(label_appuio_io_organization) group_left(sales_order) label_replace(appuio_control_organization_info, "label_appuio_io_organization", "$1", "name", "(.*)") - ), - "label_appcat_vshn_io_sla", - "besteffort", - "label_appcat_vshn_io_sla", - "^$" - )[60m:1m] - )/60 - ) - record: appcat:metering diff --git a/tests/golden/vshn/appcat/appcat/21_composition_vshn_keycloak.yaml b/tests/golden/vshn/appcat/appcat/21_composition_vshn_keycloak.yaml index a5747bbeb..aaca6c2d5 100644 --- a/tests/golden/vshn/appcat/appcat/21_composition_vshn_keycloak.yaml +++ b/tests/golden/vshn/appcat/appcat/21_composition_vshn_keycloak.yaml @@ -56,6 +56,7 @@ spec: registry_password: '' registry_username: '' restoreSA: keycloakserviceaccount + salesOrder: '' serviceName: keycloak sliNamespace: appcat-slos kind: ConfigMap diff --git a/tests/golden/vshn/appcat/appcat/21_composition_vshn_mariadb.yaml b/tests/golden/vshn/appcat/appcat/21_composition_vshn_mariadb.yaml index 4bf9dbadc..86adb30ec 100644 --- a/tests/golden/vshn/appcat/appcat/21_composition_vshn_mariadb.yaml +++ b/tests/golden/vshn/appcat/appcat/21_composition_vshn_mariadb.yaml @@ -54,6 +54,7 @@ spec: "8Gi"}}}' quotasEnabled: 'false' restoreSA: mariadbrestoreserviceaccount + salesOrder: '' serviceName: mariadb sliNamespace: appcat-slos kind: ConfigMap diff --git a/tests/golden/vshn/appcat/appcat/21_composition_vshn_nextcloud.yaml b/tests/golden/vshn/appcat/appcat/21_composition_vshn_nextcloud.yaml index f989863ac..3cdf5fe9e 100644 --- a/tests/golden/vshn/appcat/appcat/21_composition_vshn_nextcloud.yaml +++ b/tests/golden/vshn/appcat/appcat/21_composition_vshn_nextcloud.yaml @@ -55,6 +55,7 @@ spec: "disk": "16Gi", "enabled": true, "memory": "8Gi"}}}' quotasEnabled: 'false' restoreSA: nextcloudserviceaccount + salesOrder: '' serviceName: nextcloud sliNamespace: appcat-slos kind: ConfigMap diff --git a/tests/golden/vshn/appcat/appcat/21_composition_vshn_postgres.yaml b/tests/golden/vshn/appcat/appcat/21_composition_vshn_postgres.yaml index 32dcbb77e..7482248c3 100644 --- a/tests/golden/vshn/appcat/appcat/21_composition_vshn_postgres.yaml +++ b/tests/golden/vshn/appcat/appcat/21_composition_vshn_postgres.yaml @@ -78,6 +78,7 @@ spec: "standard-4": {"size": {"cpu": "900m", "disk": "40Gi", "enabled": true, "memory": "3984Mi"}}}' quotasEnabled: 'false' + salesOrder: '' serviceName: postgresql sgNamespace: stackgres sideCars: '{"clusterController": {"limits": {"cpu": "32m", "memory": "256Mi"}, diff --git a/tests/golden/vshn/appcat/appcat/21_composition_vshn_redis.yaml b/tests/golden/vshn/appcat/appcat/21_composition_vshn_redis.yaml index 02e3eeb46..0ec5de812 100644 --- a/tests/golden/vshn/appcat/appcat/21_composition_vshn_redis.yaml +++ b/tests/golden/vshn/appcat/appcat/21_composition_vshn_redis.yaml @@ -603,6 +603,7 @@ spec: ownerVersion: v1 quotasEnabled: 'false' restoreSA: redisrestoreserviceaccount + salesOrder: '' serviceName: redis sliNamespace: appcat-slos kind: ConfigMap From 46d413d9c9bf85f78d9167c062ad5d3c15d8f6bf Mon Sep 17 00:00:00 2001 From: "github-actions[bot]" Date: Fri, 25 Oct 2024 08:03:44 +0000 Subject: [PATCH 3/3] Update tag --- class/defaults.yml | 2 +- .../appcat/appcat/10_function_appcat.yaml | 2 +- .../appcat/apiserver/30_deployment.yaml | 2 +- .../appcat/appcat/10_function_appcat.yaml | 2 +- .../appcat/apiserver/30_deployment.yaml | 2 +- ...appcat-sliexporter-controller-manager.yaml | 2 +- .../appcat/appcat/10_function_appcat.yaml | 2 +- .../appcat/apiserver/30_deployment.yaml | 2 +- ...appcat-sliexporter-controller-manager.yaml | 2 +- .../appcat/appcat/10_function_appcat.yaml | 2 +- .../appcat/apiserver/30_deployment.yaml | 2 +- ...appcat-sliexporter-controller-manager.yaml | 2 +- .../appcat/appcat/10_function_appcat.yaml | 2 +- .../appcat/apiserver/30_deployment.yaml | 2 +- .../appcat/appcat/10_function_appcat.yaml | 2 +- .../appcat/apiserver/30_deployment.yaml | 2 +- .../controllers/appcat/30_deployment.yaml | 2 +- .../appcat/appcat/10_function_appcat.yaml | 2 +- .../appcat/apiserver/30_deployment.yaml | 2 +- ...appcat-sliexporter-controller-manager.yaml | 2 +- .../appcat/appcat/10_function_appcat.yaml | 2 +- .../appcat/apiserver/30_deployment.yaml | 2 +- ...appcat-sliexporter-controller-manager.yaml | 2 +- .../appcat/appcat/10_function_appcat.yaml | 2 +- .../appcat/apiserver/30_deployment.yaml | 2 +- ...appcat-sliexporter-controller-manager.yaml | 2 +- .../appcat/appcat/10_function_appcat.yaml | 2 +- .../appcat/apiserver/30_deployment.yaml | 2 +- .../appcat/appcat/10_function_appcat.yaml | 2 +- .../appcat/21_composition_vshn_minio.yaml | 2 +- .../appcat/apiserver/30_deployment.yaml | 2 +- .../controllers/appcat/30_deployment.yaml | 2 +- .../appcat/sla_reporter/01_cronjob.yaml | 2 +- ...appcat-sliexporter-controller-manager.yaml | 2 +- .../appcat/appcat/10_function_appcat.yaml | 2 +- .../appcat/appcat/20_xrd_vshn_postgres.yaml | 2 + .../appcat/21_composition_vshn_postgres.yaml | 2 +- .../appcat/21_composition_vshn_redis.yaml | 2 +- .../appcat/apiserver/30_deployment.yaml | 2 +- ...appcat-sliexporter-controller-manager.yaml | 2 +- .../appcat/appcat/10_function_appcat.yaml | 2 +- .../appcat/appcat/20_xrd_vshn_keycloak.yaml | 2 + .../appcat/appcat/20_xrd_vshn_mariadb.yaml | 43 +++++++++++++++++++ .../appcat/appcat/20_xrd_vshn_nextcloud.yaml | 2 + .../appcat/appcat/20_xrd_vshn_postgres.yaml | 2 + .../appcat/21_composition_vshn_keycloak.yaml | 2 +- .../appcat/21_composition_vshn_mariadb.yaml | 2 +- .../appcat/21_composition_vshn_nextcloud.yaml | 2 +- .../appcat/21_composition_vshn_postgres.yaml | 2 +- .../appcat/21_composition_vshn_redis.yaml | 2 +- .../appcat/apiserver/30_deployment.yaml | 2 +- .../controllers/appcat/30_deployment.yaml | 2 +- .../appcat/sla_reporter/01_cronjob.yaml | 2 +- ...appcat-sliexporter-controller-manager.yaml | 2 +- 54 files changed, 100 insertions(+), 49 deletions(-) diff --git a/class/defaults.yml b/class/defaults.yml index 4c3d7488e..0557bc8e7 100644 --- a/class/defaults.yml +++ b/class/defaults.yml @@ -55,7 +55,7 @@ parameters: appcat: registry: ghcr.io repository: vshn/appcat - tag: v4.98.1 + tag: v4.99.0 functionAppcat: registry: ${appcat:images:appcat:registry} repository: ${appcat:images:appcat:repository} diff --git a/tests/golden/apiserver/appcat/appcat/10_function_appcat.yaml b/tests/golden/apiserver/appcat/appcat/10_function_appcat.yaml index 0bee3abbc..799bb1852 100644 --- a/tests/golden/apiserver/appcat/appcat/10_function_appcat.yaml +++ b/tests/golden/apiserver/appcat/appcat/10_function_appcat.yaml @@ -3,6 +3,6 @@ kind: Function metadata: name: function-appcat spec: - package: ghcr.io/vshn/appcat:v4.98.1-func + package: ghcr.io/vshn/appcat:v4.99.0-func runtimeConfigRef: name: function-appcat diff --git a/tests/golden/apiserver/appcat/appcat/apiserver/30_deployment.yaml b/tests/golden/apiserver/appcat/appcat/apiserver/30_deployment.yaml index 1638e8957..e319efd50 100644 --- a/tests/golden/apiserver/appcat/appcat/apiserver/30_deployment.yaml +++ b/tests/golden/apiserver/appcat/appcat/apiserver/30_deployment.yaml @@ -29,7 +29,7 @@ spec: - --secure-port=9443 - --tls-cert-file=/apiserver.local.config/certificates/tls.crt - --tls-private-key-file=/apiserver.local.config/certificates/tls.key - image: ghcr.io/vshn/appcat:v4.98.1 + image: ghcr.io/vshn/appcat:v4.99.0 livenessProbe: failureThreshold: 3 httpGet: diff --git a/tests/golden/billing/appcat/appcat/10_function_appcat.yaml b/tests/golden/billing/appcat/appcat/10_function_appcat.yaml index 0bee3abbc..799bb1852 100644 --- a/tests/golden/billing/appcat/appcat/10_function_appcat.yaml +++ b/tests/golden/billing/appcat/appcat/10_function_appcat.yaml @@ -3,6 +3,6 @@ kind: Function metadata: name: function-appcat spec: - package: ghcr.io/vshn/appcat:v4.98.1-func + package: ghcr.io/vshn/appcat:v4.99.0-func runtimeConfigRef: name: function-appcat diff --git a/tests/golden/billing/appcat/appcat/apiserver/30_deployment.yaml b/tests/golden/billing/appcat/appcat/apiserver/30_deployment.yaml index 147062192..a41bbed66 100644 --- a/tests/golden/billing/appcat/appcat/apiserver/30_deployment.yaml +++ b/tests/golden/billing/appcat/appcat/apiserver/30_deployment.yaml @@ -29,7 +29,7 @@ spec: - --secure-port=9443 - --tls-cert-file=/apiserver.local.config/certificates/tls.crt - --tls-private-key-file=/apiserver.local.config/certificates/tls.key - image: ghcr.io/vshn/appcat:v4.98.1 + image: ghcr.io/vshn/appcat:v4.99.0 livenessProbe: failureThreshold: 3 httpGet: diff --git a/tests/golden/billing/appcat/appcat/sli_exporter/apps_v1_deployment_appcat-sliexporter-controller-manager.yaml b/tests/golden/billing/appcat/appcat/sli_exporter/apps_v1_deployment_appcat-sliexporter-controller-manager.yaml index 7490755b7..4d4847421 100644 --- a/tests/golden/billing/appcat/appcat/sli_exporter/apps_v1_deployment_appcat-sliexporter-controller-manager.yaml +++ b/tests/golden/billing/appcat/appcat/sli_exporter/apps_v1_deployment_appcat-sliexporter-controller-manager.yaml @@ -36,7 +36,7 @@ spec: value: "false" - name: APPCAT_SLI_VSHNMARIADB value: "false" - image: ghcr.io/vshn/appcat:v4.98.1 + image: ghcr.io/vshn/appcat:v4.99.0 livenessProbe: httpGet: path: /healthz diff --git a/tests/golden/cloudscale-metrics-collector-cloud/appcat/appcat/10_function_appcat.yaml b/tests/golden/cloudscale-metrics-collector-cloud/appcat/appcat/10_function_appcat.yaml index 0bee3abbc..799bb1852 100644 --- a/tests/golden/cloudscale-metrics-collector-cloud/appcat/appcat/10_function_appcat.yaml +++ b/tests/golden/cloudscale-metrics-collector-cloud/appcat/appcat/10_function_appcat.yaml @@ -3,6 +3,6 @@ kind: Function metadata: name: function-appcat spec: - package: ghcr.io/vshn/appcat:v4.98.1-func + package: ghcr.io/vshn/appcat:v4.99.0-func runtimeConfigRef: name: function-appcat diff --git a/tests/golden/cloudscale-metrics-collector-cloud/appcat/appcat/apiserver/30_deployment.yaml b/tests/golden/cloudscale-metrics-collector-cloud/appcat/appcat/apiserver/30_deployment.yaml index 147062192..a41bbed66 100644 --- a/tests/golden/cloudscale-metrics-collector-cloud/appcat/appcat/apiserver/30_deployment.yaml +++ b/tests/golden/cloudscale-metrics-collector-cloud/appcat/appcat/apiserver/30_deployment.yaml @@ -29,7 +29,7 @@ spec: - --secure-port=9443 - --tls-cert-file=/apiserver.local.config/certificates/tls.crt - --tls-private-key-file=/apiserver.local.config/certificates/tls.key - image: ghcr.io/vshn/appcat:v4.98.1 + image: ghcr.io/vshn/appcat:v4.99.0 livenessProbe: failureThreshold: 3 httpGet: diff --git a/tests/golden/cloudscale-metrics-collector-cloud/appcat/appcat/sli_exporter/apps_v1_deployment_appcat-sliexporter-controller-manager.yaml b/tests/golden/cloudscale-metrics-collector-cloud/appcat/appcat/sli_exporter/apps_v1_deployment_appcat-sliexporter-controller-manager.yaml index 7490755b7..4d4847421 100644 --- a/tests/golden/cloudscale-metrics-collector-cloud/appcat/appcat/sli_exporter/apps_v1_deployment_appcat-sliexporter-controller-manager.yaml +++ b/tests/golden/cloudscale-metrics-collector-cloud/appcat/appcat/sli_exporter/apps_v1_deployment_appcat-sliexporter-controller-manager.yaml @@ -36,7 +36,7 @@ spec: value: "false" - name: APPCAT_SLI_VSHNMARIADB value: "false" - image: ghcr.io/vshn/appcat:v4.98.1 + image: ghcr.io/vshn/appcat:v4.99.0 livenessProbe: httpGet: path: /healthz diff --git a/tests/golden/cloudscale-metrics-collector-managed/appcat/appcat/10_function_appcat.yaml b/tests/golden/cloudscale-metrics-collector-managed/appcat/appcat/10_function_appcat.yaml index 0bee3abbc..799bb1852 100644 --- a/tests/golden/cloudscale-metrics-collector-managed/appcat/appcat/10_function_appcat.yaml +++ b/tests/golden/cloudscale-metrics-collector-managed/appcat/appcat/10_function_appcat.yaml @@ -3,6 +3,6 @@ kind: Function metadata: name: function-appcat spec: - package: ghcr.io/vshn/appcat:v4.98.1-func + package: ghcr.io/vshn/appcat:v4.99.0-func runtimeConfigRef: name: function-appcat diff --git a/tests/golden/cloudscale-metrics-collector-managed/appcat/appcat/apiserver/30_deployment.yaml b/tests/golden/cloudscale-metrics-collector-managed/appcat/appcat/apiserver/30_deployment.yaml index 147062192..a41bbed66 100644 --- a/tests/golden/cloudscale-metrics-collector-managed/appcat/appcat/apiserver/30_deployment.yaml +++ b/tests/golden/cloudscale-metrics-collector-managed/appcat/appcat/apiserver/30_deployment.yaml @@ -29,7 +29,7 @@ spec: - --secure-port=9443 - --tls-cert-file=/apiserver.local.config/certificates/tls.crt - --tls-private-key-file=/apiserver.local.config/certificates/tls.key - image: ghcr.io/vshn/appcat:v4.98.1 + image: ghcr.io/vshn/appcat:v4.99.0 livenessProbe: failureThreshold: 3 httpGet: diff --git a/tests/golden/cloudscale-metrics-collector-managed/appcat/appcat/sli_exporter/apps_v1_deployment_appcat-sliexporter-controller-manager.yaml b/tests/golden/cloudscale-metrics-collector-managed/appcat/appcat/sli_exporter/apps_v1_deployment_appcat-sliexporter-controller-manager.yaml index 7490755b7..4d4847421 100644 --- a/tests/golden/cloudscale-metrics-collector-managed/appcat/appcat/sli_exporter/apps_v1_deployment_appcat-sliexporter-controller-manager.yaml +++ b/tests/golden/cloudscale-metrics-collector-managed/appcat/appcat/sli_exporter/apps_v1_deployment_appcat-sliexporter-controller-manager.yaml @@ -36,7 +36,7 @@ spec: value: "false" - name: APPCAT_SLI_VSHNMARIADB value: "false" - image: ghcr.io/vshn/appcat:v4.98.1 + image: ghcr.io/vshn/appcat:v4.99.0 livenessProbe: httpGet: path: /healthz diff --git a/tests/golden/cloudscale/appcat/appcat/10_function_appcat.yaml b/tests/golden/cloudscale/appcat/appcat/10_function_appcat.yaml index 0bee3abbc..799bb1852 100644 --- a/tests/golden/cloudscale/appcat/appcat/10_function_appcat.yaml +++ b/tests/golden/cloudscale/appcat/appcat/10_function_appcat.yaml @@ -3,6 +3,6 @@ kind: Function metadata: name: function-appcat spec: - package: ghcr.io/vshn/appcat:v4.98.1-func + package: ghcr.io/vshn/appcat:v4.99.0-func runtimeConfigRef: name: function-appcat diff --git a/tests/golden/cloudscale/appcat/appcat/apiserver/30_deployment.yaml b/tests/golden/cloudscale/appcat/appcat/apiserver/30_deployment.yaml index 147062192..a41bbed66 100644 --- a/tests/golden/cloudscale/appcat/appcat/apiserver/30_deployment.yaml +++ b/tests/golden/cloudscale/appcat/appcat/apiserver/30_deployment.yaml @@ -29,7 +29,7 @@ spec: - --secure-port=9443 - --tls-cert-file=/apiserver.local.config/certificates/tls.crt - --tls-private-key-file=/apiserver.local.config/certificates/tls.key - image: ghcr.io/vshn/appcat:v4.98.1 + image: ghcr.io/vshn/appcat:v4.99.0 livenessProbe: failureThreshold: 3 httpGet: diff --git a/tests/golden/controllers/appcat/appcat/10_function_appcat.yaml b/tests/golden/controllers/appcat/appcat/10_function_appcat.yaml index 0bee3abbc..799bb1852 100644 --- a/tests/golden/controllers/appcat/appcat/10_function_appcat.yaml +++ b/tests/golden/controllers/appcat/appcat/10_function_appcat.yaml @@ -3,6 +3,6 @@ kind: Function metadata: name: function-appcat spec: - package: ghcr.io/vshn/appcat:v4.98.1-func + package: ghcr.io/vshn/appcat:v4.99.0-func runtimeConfigRef: name: function-appcat diff --git a/tests/golden/controllers/appcat/appcat/apiserver/30_deployment.yaml b/tests/golden/controllers/appcat/appcat/apiserver/30_deployment.yaml index 147062192..a41bbed66 100644 --- a/tests/golden/controllers/appcat/appcat/apiserver/30_deployment.yaml +++ b/tests/golden/controllers/appcat/appcat/apiserver/30_deployment.yaml @@ -29,7 +29,7 @@ spec: - --secure-port=9443 - --tls-cert-file=/apiserver.local.config/certificates/tls.crt - --tls-private-key-file=/apiserver.local.config/certificates/tls.key - image: ghcr.io/vshn/appcat:v4.98.1 + image: ghcr.io/vshn/appcat:v4.99.0 livenessProbe: failureThreshold: 3 httpGet: diff --git a/tests/golden/controllers/appcat/appcat/controllers/appcat/30_deployment.yaml b/tests/golden/controllers/appcat/appcat/controllers/appcat/30_deployment.yaml index c40d1e95e..f10b5caba 100644 --- a/tests/golden/controllers/appcat/appcat/controllers/appcat/30_deployment.yaml +++ b/tests/golden/controllers/appcat/appcat/controllers/appcat/30_deployment.yaml @@ -23,7 +23,7 @@ spec: env: - name: PLANS_NAMESPACE value: syn-appcat - image: ghcr.io/vshn/appcat:v4.98.1 + image: ghcr.io/vshn/appcat:v4.99.0 livenessProbe: httpGet: path: /healthz diff --git a/tests/golden/defaults/appcat/appcat/10_function_appcat.yaml b/tests/golden/defaults/appcat/appcat/10_function_appcat.yaml index 0bee3abbc..799bb1852 100644 --- a/tests/golden/defaults/appcat/appcat/10_function_appcat.yaml +++ b/tests/golden/defaults/appcat/appcat/10_function_appcat.yaml @@ -3,6 +3,6 @@ kind: Function metadata: name: function-appcat spec: - package: ghcr.io/vshn/appcat:v4.98.1-func + package: ghcr.io/vshn/appcat:v4.99.0-func runtimeConfigRef: name: function-appcat diff --git a/tests/golden/defaults/appcat/appcat/apiserver/30_deployment.yaml b/tests/golden/defaults/appcat/appcat/apiserver/30_deployment.yaml index 147062192..a41bbed66 100644 --- a/tests/golden/defaults/appcat/appcat/apiserver/30_deployment.yaml +++ b/tests/golden/defaults/appcat/appcat/apiserver/30_deployment.yaml @@ -29,7 +29,7 @@ spec: - --secure-port=9443 - --tls-cert-file=/apiserver.local.config/certificates/tls.crt - --tls-private-key-file=/apiserver.local.config/certificates/tls.key - image: ghcr.io/vshn/appcat:v4.98.1 + image: ghcr.io/vshn/appcat:v4.99.0 livenessProbe: failureThreshold: 3 httpGet: diff --git a/tests/golden/defaults/appcat/appcat/sli_exporter/apps_v1_deployment_appcat-sliexporter-controller-manager.yaml b/tests/golden/defaults/appcat/appcat/sli_exporter/apps_v1_deployment_appcat-sliexporter-controller-manager.yaml index 7490755b7..4d4847421 100644 --- a/tests/golden/defaults/appcat/appcat/sli_exporter/apps_v1_deployment_appcat-sliexporter-controller-manager.yaml +++ b/tests/golden/defaults/appcat/appcat/sli_exporter/apps_v1_deployment_appcat-sliexporter-controller-manager.yaml @@ -36,7 +36,7 @@ spec: value: "false" - name: APPCAT_SLI_VSHNMARIADB value: "false" - image: ghcr.io/vshn/appcat:v4.98.1 + image: ghcr.io/vshn/appcat:v4.99.0 livenessProbe: httpGet: path: /healthz diff --git a/tests/golden/exoscale-metrics-collector-cloud/appcat/appcat/10_function_appcat.yaml b/tests/golden/exoscale-metrics-collector-cloud/appcat/appcat/10_function_appcat.yaml index 0bee3abbc..799bb1852 100644 --- a/tests/golden/exoscale-metrics-collector-cloud/appcat/appcat/10_function_appcat.yaml +++ b/tests/golden/exoscale-metrics-collector-cloud/appcat/appcat/10_function_appcat.yaml @@ -3,6 +3,6 @@ kind: Function metadata: name: function-appcat spec: - package: ghcr.io/vshn/appcat:v4.98.1-func + package: ghcr.io/vshn/appcat:v4.99.0-func runtimeConfigRef: name: function-appcat diff --git a/tests/golden/exoscale-metrics-collector-cloud/appcat/appcat/apiserver/30_deployment.yaml b/tests/golden/exoscale-metrics-collector-cloud/appcat/appcat/apiserver/30_deployment.yaml index 147062192..a41bbed66 100644 --- a/tests/golden/exoscale-metrics-collector-cloud/appcat/appcat/apiserver/30_deployment.yaml +++ b/tests/golden/exoscale-metrics-collector-cloud/appcat/appcat/apiserver/30_deployment.yaml @@ -29,7 +29,7 @@ spec: - --secure-port=9443 - --tls-cert-file=/apiserver.local.config/certificates/tls.crt - --tls-private-key-file=/apiserver.local.config/certificates/tls.key - image: ghcr.io/vshn/appcat:v4.98.1 + image: ghcr.io/vshn/appcat:v4.99.0 livenessProbe: failureThreshold: 3 httpGet: diff --git a/tests/golden/exoscale-metrics-collector-cloud/appcat/appcat/sli_exporter/apps_v1_deployment_appcat-sliexporter-controller-manager.yaml b/tests/golden/exoscale-metrics-collector-cloud/appcat/appcat/sli_exporter/apps_v1_deployment_appcat-sliexporter-controller-manager.yaml index 7490755b7..4d4847421 100644 --- a/tests/golden/exoscale-metrics-collector-cloud/appcat/appcat/sli_exporter/apps_v1_deployment_appcat-sliexporter-controller-manager.yaml +++ b/tests/golden/exoscale-metrics-collector-cloud/appcat/appcat/sli_exporter/apps_v1_deployment_appcat-sliexporter-controller-manager.yaml @@ -36,7 +36,7 @@ spec: value: "false" - name: APPCAT_SLI_VSHNMARIADB value: "false" - image: ghcr.io/vshn/appcat:v4.98.1 + image: ghcr.io/vshn/appcat:v4.99.0 livenessProbe: httpGet: path: /healthz diff --git a/tests/golden/exoscale-metrics-collector-managed/appcat/appcat/10_function_appcat.yaml b/tests/golden/exoscale-metrics-collector-managed/appcat/appcat/10_function_appcat.yaml index 0bee3abbc..799bb1852 100644 --- a/tests/golden/exoscale-metrics-collector-managed/appcat/appcat/10_function_appcat.yaml +++ b/tests/golden/exoscale-metrics-collector-managed/appcat/appcat/10_function_appcat.yaml @@ -3,6 +3,6 @@ kind: Function metadata: name: function-appcat spec: - package: ghcr.io/vshn/appcat:v4.98.1-func + package: ghcr.io/vshn/appcat:v4.99.0-func runtimeConfigRef: name: function-appcat diff --git a/tests/golden/exoscale-metrics-collector-managed/appcat/appcat/apiserver/30_deployment.yaml b/tests/golden/exoscale-metrics-collector-managed/appcat/appcat/apiserver/30_deployment.yaml index 147062192..a41bbed66 100644 --- a/tests/golden/exoscale-metrics-collector-managed/appcat/appcat/apiserver/30_deployment.yaml +++ b/tests/golden/exoscale-metrics-collector-managed/appcat/appcat/apiserver/30_deployment.yaml @@ -29,7 +29,7 @@ spec: - --secure-port=9443 - --tls-cert-file=/apiserver.local.config/certificates/tls.crt - --tls-private-key-file=/apiserver.local.config/certificates/tls.key - image: ghcr.io/vshn/appcat:v4.98.1 + image: ghcr.io/vshn/appcat:v4.99.0 livenessProbe: failureThreshold: 3 httpGet: diff --git a/tests/golden/exoscale-metrics-collector-managed/appcat/appcat/sli_exporter/apps_v1_deployment_appcat-sliexporter-controller-manager.yaml b/tests/golden/exoscale-metrics-collector-managed/appcat/appcat/sli_exporter/apps_v1_deployment_appcat-sliexporter-controller-manager.yaml index 7490755b7..4d4847421 100644 --- a/tests/golden/exoscale-metrics-collector-managed/appcat/appcat/sli_exporter/apps_v1_deployment_appcat-sliexporter-controller-manager.yaml +++ b/tests/golden/exoscale-metrics-collector-managed/appcat/appcat/sli_exporter/apps_v1_deployment_appcat-sliexporter-controller-manager.yaml @@ -36,7 +36,7 @@ spec: value: "false" - name: APPCAT_SLI_VSHNMARIADB value: "false" - image: ghcr.io/vshn/appcat:v4.98.1 + image: ghcr.io/vshn/appcat:v4.99.0 livenessProbe: httpGet: path: /healthz diff --git a/tests/golden/exoscale/appcat/appcat/10_function_appcat.yaml b/tests/golden/exoscale/appcat/appcat/10_function_appcat.yaml index 0bee3abbc..799bb1852 100644 --- a/tests/golden/exoscale/appcat/appcat/10_function_appcat.yaml +++ b/tests/golden/exoscale/appcat/appcat/10_function_appcat.yaml @@ -3,6 +3,6 @@ kind: Function metadata: name: function-appcat spec: - package: ghcr.io/vshn/appcat:v4.98.1-func + package: ghcr.io/vshn/appcat:v4.99.0-func runtimeConfigRef: name: function-appcat diff --git a/tests/golden/exoscale/appcat/appcat/apiserver/30_deployment.yaml b/tests/golden/exoscale/appcat/appcat/apiserver/30_deployment.yaml index 147062192..a41bbed66 100644 --- a/tests/golden/exoscale/appcat/appcat/apiserver/30_deployment.yaml +++ b/tests/golden/exoscale/appcat/appcat/apiserver/30_deployment.yaml @@ -29,7 +29,7 @@ spec: - --secure-port=9443 - --tls-cert-file=/apiserver.local.config/certificates/tls.crt - --tls-private-key-file=/apiserver.local.config/certificates/tls.key - image: ghcr.io/vshn/appcat:v4.98.1 + image: ghcr.io/vshn/appcat:v4.99.0 livenessProbe: failureThreshold: 3 httpGet: diff --git a/tests/golden/minio/appcat/appcat/10_function_appcat.yaml b/tests/golden/minio/appcat/appcat/10_function_appcat.yaml index 0bee3abbc..799bb1852 100644 --- a/tests/golden/minio/appcat/appcat/10_function_appcat.yaml +++ b/tests/golden/minio/appcat/appcat/10_function_appcat.yaml @@ -3,6 +3,6 @@ kind: Function metadata: name: function-appcat spec: - package: ghcr.io/vshn/appcat:v4.98.1-func + package: ghcr.io/vshn/appcat:v4.99.0-func runtimeConfigRef: name: function-appcat diff --git a/tests/golden/minio/appcat/appcat/21_composition_vshn_minio.yaml b/tests/golden/minio/appcat/appcat/21_composition_vshn_minio.yaml index 28ecf4a89..1f107d504 100644 --- a/tests/golden/minio/appcat/appcat/21_composition_vshn_minio.yaml +++ b/tests/golden/minio/appcat/appcat/21_composition_vshn_minio.yaml @@ -38,7 +38,7 @@ spec: emailAlertingSmtpFromAddress: myuser@example.com emailAlertingSmtpHost: smtp.eu.mailgun.org:465 emailAlertingSmtpUsername: myuser@example.com - imageTag: v4.98.1 + imageTag: v4.99.0 isOpenshift: 'false' maintenanceSA: helm-based-service-maintenance minioChartRepository: https://charts.min.io diff --git a/tests/golden/minio/appcat/appcat/apiserver/30_deployment.yaml b/tests/golden/minio/appcat/appcat/apiserver/30_deployment.yaml index 1638e8957..e319efd50 100644 --- a/tests/golden/minio/appcat/appcat/apiserver/30_deployment.yaml +++ b/tests/golden/minio/appcat/appcat/apiserver/30_deployment.yaml @@ -29,7 +29,7 @@ spec: - --secure-port=9443 - --tls-cert-file=/apiserver.local.config/certificates/tls.crt - --tls-private-key-file=/apiserver.local.config/certificates/tls.key - image: ghcr.io/vshn/appcat:v4.98.1 + image: ghcr.io/vshn/appcat:v4.99.0 livenessProbe: failureThreshold: 3 httpGet: diff --git a/tests/golden/minio/appcat/appcat/controllers/appcat/30_deployment.yaml b/tests/golden/minio/appcat/appcat/controllers/appcat/30_deployment.yaml index c40d1e95e..f10b5caba 100644 --- a/tests/golden/minio/appcat/appcat/controllers/appcat/30_deployment.yaml +++ b/tests/golden/minio/appcat/appcat/controllers/appcat/30_deployment.yaml @@ -23,7 +23,7 @@ spec: env: - name: PLANS_NAMESPACE value: syn-appcat - image: ghcr.io/vshn/appcat:v4.98.1 + image: ghcr.io/vshn/appcat:v4.99.0 livenessProbe: httpGet: path: /healthz diff --git a/tests/golden/minio/appcat/appcat/sla_reporter/01_cronjob.yaml b/tests/golden/minio/appcat/appcat/sla_reporter/01_cronjob.yaml index e9487f241..89918d7e0 100644 --- a/tests/golden/minio/appcat/appcat/sla_reporter/01_cronjob.yaml +++ b/tests/golden/minio/appcat/appcat/sla_reporter/01_cronjob.yaml @@ -30,7 +30,7 @@ spec: envFrom: - secretRef: name: appcat-sla-reports-creds - image: ghcr.io/vshn/appcat:v4.98.1 + image: ghcr.io/vshn/appcat:v4.99.0 name: sla-reporter resources: limits: diff --git a/tests/golden/minio/appcat/appcat/sli_exporter/apps_v1_deployment_appcat-sliexporter-controller-manager.yaml b/tests/golden/minio/appcat/appcat/sli_exporter/apps_v1_deployment_appcat-sliexporter-controller-manager.yaml index 18eaee106..ebca3de55 100644 --- a/tests/golden/minio/appcat/appcat/sli_exporter/apps_v1_deployment_appcat-sliexporter-controller-manager.yaml +++ b/tests/golden/minio/appcat/appcat/sli_exporter/apps_v1_deployment_appcat-sliexporter-controller-manager.yaml @@ -36,7 +36,7 @@ spec: value: "false" - name: APPCAT_SLI_VSHNMARIADB value: "false" - image: ghcr.io/vshn/appcat:v4.98.1 + image: ghcr.io/vshn/appcat:v4.99.0 livenessProbe: httpGet: path: /healthz diff --git a/tests/golden/openshift/appcat/appcat/10_function_appcat.yaml b/tests/golden/openshift/appcat/appcat/10_function_appcat.yaml index 0bee3abbc..799bb1852 100644 --- a/tests/golden/openshift/appcat/appcat/10_function_appcat.yaml +++ b/tests/golden/openshift/appcat/appcat/10_function_appcat.yaml @@ -3,6 +3,6 @@ kind: Function metadata: name: function-appcat spec: - package: ghcr.io/vshn/appcat:v4.98.1-func + package: ghcr.io/vshn/appcat:v4.99.0-func runtimeConfigRef: name: function-appcat diff --git a/tests/golden/openshift/appcat/appcat/20_xrd_vshn_postgres.yaml b/tests/golden/openshift/appcat/appcat/20_xrd_vshn_postgres.yaml index 2885b64a6..235050985 100644 --- a/tests/golden/openshift/appcat/appcat/20_xrd_vshn_postgres.yaml +++ b/tests/golden/openshift/appcat/appcat/20_xrd_vshn_postgres.yaml @@ -5699,6 +5699,8 @@ spec: description: Service contains PostgreSQL DBaaS specific properties properties: access: + description: Access defines additional users and databases + for this instance. items: properties: database: diff --git a/tests/golden/openshift/appcat/appcat/21_composition_vshn_postgres.yaml b/tests/golden/openshift/appcat/appcat/21_composition_vshn_postgres.yaml index 0f5ba06bf..e086bc798 100644 --- a/tests/golden/openshift/appcat/appcat/21_composition_vshn_postgres.yaml +++ b/tests/golden/openshift/appcat/appcat/21_composition_vshn_postgres.yaml @@ -40,7 +40,7 @@ spec: emailAlertingSmtpHost: smtp.eu.mailgun.org:465 emailAlertingSmtpUsername: myuser@example.com externalDatabaseConnectionsEnabled: 'false' - imageTag: v4.98.1 + imageTag: v4.99.0 initContainers: '{"clusterReconciliationCycle": {"limits": {"cpu": "300m", "memory": "200Mi"}, "requests": {"cpu": "100m", "memory": "100Mi"}}, "pgbouncerAuthFile": {"limits": {"cpu": "300m", "memory": "500Mi"}, "requests": {"cpu": "100m", diff --git a/tests/golden/openshift/appcat/appcat/21_composition_vshn_redis.yaml b/tests/golden/openshift/appcat/appcat/21_composition_vshn_redis.yaml index 46904bd02..0350c7a6b 100644 --- a/tests/golden/openshift/appcat/appcat/21_composition_vshn_redis.yaml +++ b/tests/golden/openshift/appcat/appcat/21_composition_vshn_redis.yaml @@ -569,7 +569,7 @@ spec: emailAlertingSmtpFromAddress: myuser@example.com emailAlertingSmtpHost: smtp.eu.mailgun.org:465 emailAlertingSmtpUsername: myuser@example.com - imageTag: v4.98.1 + imageTag: v4.99.0 isOpenshift: 'true' maintenanceSA: helm-based-service-maintenance ownerGroup: vshn.appcat.vshn.io diff --git a/tests/golden/openshift/appcat/appcat/apiserver/30_deployment.yaml b/tests/golden/openshift/appcat/appcat/apiserver/30_deployment.yaml index 147062192..a41bbed66 100644 --- a/tests/golden/openshift/appcat/appcat/apiserver/30_deployment.yaml +++ b/tests/golden/openshift/appcat/appcat/apiserver/30_deployment.yaml @@ -29,7 +29,7 @@ spec: - --secure-port=9443 - --tls-cert-file=/apiserver.local.config/certificates/tls.crt - --tls-private-key-file=/apiserver.local.config/certificates/tls.key - image: ghcr.io/vshn/appcat:v4.98.1 + image: ghcr.io/vshn/appcat:v4.99.0 livenessProbe: failureThreshold: 3 httpGet: diff --git a/tests/golden/openshift/appcat/appcat/sli_exporter/apps_v1_deployment_appcat-sliexporter-controller-manager.yaml b/tests/golden/openshift/appcat/appcat/sli_exporter/apps_v1_deployment_appcat-sliexporter-controller-manager.yaml index d042fb12e..cc9a55c9a 100644 --- a/tests/golden/openshift/appcat/appcat/sli_exporter/apps_v1_deployment_appcat-sliexporter-controller-manager.yaml +++ b/tests/golden/openshift/appcat/appcat/sli_exporter/apps_v1_deployment_appcat-sliexporter-controller-manager.yaml @@ -36,7 +36,7 @@ spec: value: "false" - name: APPCAT_SLI_VSHNMARIADB value: "false" - image: ghcr.io/vshn/appcat:v4.98.1 + image: ghcr.io/vshn/appcat:v4.99.0 livenessProbe: httpGet: path: /healthz diff --git a/tests/golden/vshn/appcat/appcat/10_function_appcat.yaml b/tests/golden/vshn/appcat/appcat/10_function_appcat.yaml index 0bee3abbc..799bb1852 100644 --- a/tests/golden/vshn/appcat/appcat/10_function_appcat.yaml +++ b/tests/golden/vshn/appcat/appcat/10_function_appcat.yaml @@ -3,6 +3,6 @@ kind: Function metadata: name: function-appcat spec: - package: ghcr.io/vshn/appcat:v4.98.1-func + package: ghcr.io/vshn/appcat:v4.99.0-func runtimeConfigRef: name: function-appcat diff --git a/tests/golden/vshn/appcat/appcat/20_xrd_vshn_keycloak.yaml b/tests/golden/vshn/appcat/appcat/20_xrd_vshn_keycloak.yaml index 952a455e5..e4dcaa3ed 100644 --- a/tests/golden/vshn/appcat/appcat/20_xrd_vshn_keycloak.yaml +++ b/tests/golden/vshn/appcat/appcat/20_xrd_vshn_keycloak.yaml @@ -11723,6 +11723,8 @@ spec: properties properties: access: + description: Access defines additional users and + databases for this instance. items: properties: database: diff --git a/tests/golden/vshn/appcat/appcat/20_xrd_vshn_mariadb.yaml b/tests/golden/vshn/appcat/appcat/20_xrd_vshn_mariadb.yaml index 4baa6de34..0fb493c28 100644 --- a/tests/golden/vshn/appcat/appcat/20_xrd_vshn_mariadb.yaml +++ b/tests/golden/vshn/appcat/appcat/20_xrd_vshn_mariadb.yaml @@ -5606,6 +5606,49 @@ spec: default: {} description: Service contains MariaDB DBaaS specific properties properties: + access: + description: Access defines additional users and databases + for this instance. + items: + properties: + database: + description: Database is the name of the database + to create, defaults to user. + type: string + privileges: + description: |- + Privileges specifies the privileges to grant the user. Please check + the database's docs for available privileges. + items: + type: string + type: array + user: + description: |- + User specifies the username. If all other fields are left empty + then a new database with the same name and all permissions will be created. + type: string + writeConnectionSecretToRef: + description: |- + WriteConnectionSecretToReference specifies the namespace and name of a + Secret to which any connection details for this user should + be written. + If not specified, a secret with the name $claimname-$username will be + created in the namespace where the claim is located. + properties: + name: + description: Name of the secret. + type: string + namespace: + description: Namespace of the secret. + type: string + required: + - name + - namespace + type: object + required: + - user + type: object + type: array mariadbSettings: description: MariadbSettings contains additional MariaDB settings. diff --git a/tests/golden/vshn/appcat/appcat/20_xrd_vshn_nextcloud.yaml b/tests/golden/vshn/appcat/appcat/20_xrd_vshn_nextcloud.yaml index d6538d732..b17192448 100644 --- a/tests/golden/vshn/appcat/appcat/20_xrd_vshn_nextcloud.yaml +++ b/tests/golden/vshn/appcat/appcat/20_xrd_vshn_nextcloud.yaml @@ -11686,6 +11686,8 @@ spec: properties properties: access: + description: Access defines additional users and + databases for this instance. items: properties: database: diff --git a/tests/golden/vshn/appcat/appcat/20_xrd_vshn_postgres.yaml b/tests/golden/vshn/appcat/appcat/20_xrd_vshn_postgres.yaml index 2885b64a6..235050985 100644 --- a/tests/golden/vshn/appcat/appcat/20_xrd_vshn_postgres.yaml +++ b/tests/golden/vshn/appcat/appcat/20_xrd_vshn_postgres.yaml @@ -5699,6 +5699,8 @@ spec: description: Service contains PostgreSQL DBaaS specific properties properties: access: + description: Access defines additional users and databases + for this instance. items: properties: database: diff --git a/tests/golden/vshn/appcat/appcat/21_composition_vshn_keycloak.yaml b/tests/golden/vshn/appcat/appcat/21_composition_vshn_keycloak.yaml index aaca6c2d5..9aeadfc47 100644 --- a/tests/golden/vshn/appcat/appcat/21_composition_vshn_keycloak.yaml +++ b/tests/golden/vshn/appcat/appcat/21_composition_vshn_keycloak.yaml @@ -38,7 +38,7 @@ spec: emailAlertingSmtpFromAddress: myuser@example.com emailAlertingSmtpHost: smtp.eu.mailgun.org:465 emailAlertingSmtpUsername: myuser@example.com - imageTag: v4.98.1 + imageTag: v4.99.0 ingress_annotations: | nginx.ingress.kubernetes.io/backend-protocol: HTTPS cert-manager.io/cluster-issuer: letsencrypt-staging diff --git a/tests/golden/vshn/appcat/appcat/21_composition_vshn_mariadb.yaml b/tests/golden/vshn/appcat/appcat/21_composition_vshn_mariadb.yaml index 86adb30ec..72012a6d1 100644 --- a/tests/golden/vshn/appcat/appcat/21_composition_vshn_mariadb.yaml +++ b/tests/golden/vshn/appcat/appcat/21_composition_vshn_mariadb.yaml @@ -38,7 +38,7 @@ spec: emailAlertingSmtpFromAddress: myuser@example.com emailAlertingSmtpHost: smtp.eu.mailgun.org:465 emailAlertingSmtpUsername: myuser@example.com - imageTag: v4.98.1 + imageTag: v4.99.0 isOpenshift: 'false' maintenanceSA: helm-based-service-maintenance mode: standalone diff --git a/tests/golden/vshn/appcat/appcat/21_composition_vshn_nextcloud.yaml b/tests/golden/vshn/appcat/appcat/21_composition_vshn_nextcloud.yaml index 3cdf5fe9e..24b6633c9 100644 --- a/tests/golden/vshn/appcat/appcat/21_composition_vshn_nextcloud.yaml +++ b/tests/golden/vshn/appcat/appcat/21_composition_vshn_nextcloud.yaml @@ -38,7 +38,7 @@ spec: emailAlertingSmtpFromAddress: myuser@example.com emailAlertingSmtpHost: smtp.eu.mailgun.org:465 emailAlertingSmtpUsername: myuser@example.com - imageTag: v4.98.1 + imageTag: v4.99.0 ingress_annotations: | cert-manager.io/cluster-issuer: letsencrypt-staging nginx.ingress.kubernetes.io/enable-cors: "true" diff --git a/tests/golden/vshn/appcat/appcat/21_composition_vshn_postgres.yaml b/tests/golden/vshn/appcat/appcat/21_composition_vshn_postgres.yaml index 7482248c3..e8628a388 100644 --- a/tests/golden/vshn/appcat/appcat/21_composition_vshn_postgres.yaml +++ b/tests/golden/vshn/appcat/appcat/21_composition_vshn_postgres.yaml @@ -40,7 +40,7 @@ spec: emailAlertingSmtpHost: smtp.eu.mailgun.org:465 emailAlertingSmtpUsername: myuser@example.com externalDatabaseConnectionsEnabled: 'true' - imageTag: v4.98.1 + imageTag: v4.99.0 initContainers: '{"clusterReconciliationCycle": {"limits": {"cpu": "300m", "memory": "200Mi"}, "requests": {"cpu": "100m", "memory": "100Mi"}}, "pgbouncerAuthFile": {"limits": {"cpu": "300m", "memory": "500Mi"}, "requests": {"cpu": "100m", diff --git a/tests/golden/vshn/appcat/appcat/21_composition_vshn_redis.yaml b/tests/golden/vshn/appcat/appcat/21_composition_vshn_redis.yaml index 0ec5de812..0776d73a4 100644 --- a/tests/golden/vshn/appcat/appcat/21_composition_vshn_redis.yaml +++ b/tests/golden/vshn/appcat/appcat/21_composition_vshn_redis.yaml @@ -595,7 +595,7 @@ spec: emailAlertingSmtpFromAddress: myuser@example.com emailAlertingSmtpHost: smtp.eu.mailgun.org:465 emailAlertingSmtpUsername: myuser@example.com - imageTag: v4.98.1 + imageTag: v4.99.0 isOpenshift: 'false' maintenanceSA: helm-based-service-maintenance ownerGroup: vshn.appcat.vshn.io diff --git a/tests/golden/vshn/appcat/appcat/apiserver/30_deployment.yaml b/tests/golden/vshn/appcat/appcat/apiserver/30_deployment.yaml index 147062192..a41bbed66 100644 --- a/tests/golden/vshn/appcat/appcat/apiserver/30_deployment.yaml +++ b/tests/golden/vshn/appcat/appcat/apiserver/30_deployment.yaml @@ -29,7 +29,7 @@ spec: - --secure-port=9443 - --tls-cert-file=/apiserver.local.config/certificates/tls.crt - --tls-private-key-file=/apiserver.local.config/certificates/tls.key - image: ghcr.io/vshn/appcat:v4.98.1 + image: ghcr.io/vshn/appcat:v4.99.0 livenessProbe: failureThreshold: 3 httpGet: diff --git a/tests/golden/vshn/appcat/appcat/controllers/appcat/30_deployment.yaml b/tests/golden/vshn/appcat/appcat/controllers/appcat/30_deployment.yaml index c40d1e95e..f10b5caba 100644 --- a/tests/golden/vshn/appcat/appcat/controllers/appcat/30_deployment.yaml +++ b/tests/golden/vshn/appcat/appcat/controllers/appcat/30_deployment.yaml @@ -23,7 +23,7 @@ spec: env: - name: PLANS_NAMESPACE value: syn-appcat - image: ghcr.io/vshn/appcat:v4.98.1 + image: ghcr.io/vshn/appcat:v4.99.0 livenessProbe: httpGet: path: /healthz diff --git a/tests/golden/vshn/appcat/appcat/sla_reporter/01_cronjob.yaml b/tests/golden/vshn/appcat/appcat/sla_reporter/01_cronjob.yaml index 4fedc1d37..a8722463d 100644 --- a/tests/golden/vshn/appcat/appcat/sla_reporter/01_cronjob.yaml +++ b/tests/golden/vshn/appcat/appcat/sla_reporter/01_cronjob.yaml @@ -30,7 +30,7 @@ spec: envFrom: - secretRef: name: appcat-sla-reports-creds - image: ghcr.io/vshn/appcat:v4.98.1 + image: ghcr.io/vshn/appcat:v4.99.0 name: sla-reporter resources: limits: diff --git a/tests/golden/vshn/appcat/appcat/sli_exporter/apps_v1_deployment_appcat-sliexporter-controller-manager.yaml b/tests/golden/vshn/appcat/appcat/sli_exporter/apps_v1_deployment_appcat-sliexporter-controller-manager.yaml index 9bd788d81..68bfbb57a 100644 --- a/tests/golden/vshn/appcat/appcat/sli_exporter/apps_v1_deployment_appcat-sliexporter-controller-manager.yaml +++ b/tests/golden/vshn/appcat/appcat/sli_exporter/apps_v1_deployment_appcat-sliexporter-controller-manager.yaml @@ -36,7 +36,7 @@ spec: value: "true" - name: APPCAT_SLI_VSHNMARIADB value: "true" - image: ghcr.io/vshn/appcat:v4.98.1 + image: ghcr.io/vshn/appcat:v4.99.0 livenessProbe: httpGet: path: /healthz