From 7ccd659c44300603f49d344c2c142062ef4ee7ac Mon Sep 17 00:00:00 2001 From: keptn-bot <86361500+keptn-bot@users.noreply.github.com> Date: Mon, 15 Jan 2024 10:42:49 +0100 Subject: [PATCH] Update keptn-metrics-operator Helm chart (#111) Signed-off-by: GitHub Co-authored-by: odubajDT --- charts/keptn-metrics-operator/Chart.lock | 6 + charts/keptn-metrics-operator/Chart.yaml | 4 +- charts/keptn-metrics-operator/README.md | 4 +- .../templates/analysis-crd.yaml | 163 ++++++++- .../templates/analysisdefinition-crd.yaml | 334 +++++++++++++++++- .../templates/analysisvaluetemplate-crd.yaml | 60 +++- .../templates/deployment.yaml | 15 +- .../templates/keptnmetric-crd.yaml | 180 +++++++++- .../templates/keptnmetricsprovider-crd.yaml | 64 +++- .../templates/metrics-manager-config.yaml | 5 +- .../metrics-operator-hpa-controller-rbac.yaml | 9 +- ...metrics-operator-leader-election-rbac.yaml | 9 +- .../templates/metrics-operator-rbac.yaml | 13 +- ...etrics-operator-server-resources-rbac.yaml | 5 +- .../metrics-operator-service-account.yaml | 5 +- .../templates/metrics-operator-service.yaml | 5 +- ...rics-validating-webhook-configuration.yaml | 14 +- .../templates/metrics-webhook-service.yaml | 5 +- .../templates/system-auth-delegator-rbac.yaml | 5 +- .../v1beta1.custom.metrics.k8s.io.yaml | 9 +- .../v1beta2.custom.metrics.k8s.io.yaml | 9 +- charts/keptn-metrics-operator/values.yaml | 7 +- 22 files changed, 871 insertions(+), 59 deletions(-) create mode 100644 charts/keptn-metrics-operator/Chart.lock diff --git a/charts/keptn-metrics-operator/Chart.lock b/charts/keptn-metrics-operator/Chart.lock new file mode 100644 index 0000000..859e21a --- /dev/null +++ b/charts/keptn-metrics-operator/Chart.lock @@ -0,0 +1,6 @@ +dependencies: +- name: common + repository: https://charts.lifecycle.keptn.sh + version: 0.1.1 +digest: sha256:e23ec46850d32494b1956923b8cf43dd06187dfe49a7be033778be9938f092d1 +generated: "2024-01-08T11:50:17.289101+01:00" diff --git a/charts/keptn-metrics-operator/Chart.yaml b/charts/keptn-metrics-operator/Chart.yaml index 9296a77..9225e3f 100644 --- a/charts/keptn-metrics-operator/Chart.yaml +++ b/charts/keptn-metrics-operator/Chart.yaml @@ -40,8 +40,8 @@ version: 0.1.0 # incremented each time you make changes to the application. Versions are not expected to # follow Semantic Versioning. They should reflect the version the application is using. # It is recommended to use it with quotes. -appVersion: "v0.8.3" # x-release-please-version +appVersion: "v0.9.0" # x-release-please-version dependencies: - name: common repository: "https://charts.lifecycle.keptn.sh" - version: 0.1.0 + version: 0.1.1 diff --git a/charts/keptn-metrics-operator/README.md b/charts/keptn-metrics-operator/README.md index cc3dd94..3dea96e 100644 --- a/charts/keptn-metrics-operator/README.md +++ b/charts/keptn-metrics-operator/README.md @@ -56,6 +56,7 @@ Prometheus, Dynatrace, DataDog and K8s metric server... | `annotations` | add deployment level annotations | `{}` | | `podAnnotations` | adds pod level annotations | `{}` | | `kubernetesClusterDomain` | overrides cluster.local | `cluster.local` | +| `customMetricsAPIService.enabled` | enable/disable the K8s APIService installation | `true` | ### Keptn Metrics Operator controller @@ -70,12 +71,11 @@ Prometheus, Dynatrace, DataDog and K8s metric server... | `containerSecurityContext.runAsUser` | | `65532` | | `containerSecurityContext.seccompProfile.type` | | `RuntimeDefault` | | `env.exposeKeptnMetrics` | enable metrics exporter | `true` | -| `env.enableKeptnAnalysis` | enables/disables the analysis feature | `false` | | `env.metricsControllerLogLevel` | sets the log level of Metrics Controller | `0` | | `env.analysisControllerLogLevel` | sets the log level of Analysis Controller | `0` | | `image.registry` | specify the container registry for the metrics-operator image | `ghcr.io` | | `image.repository` | specify registry for manager image | `keptn/metrics-operator` | -| `image.tag` | select tag for manager image | `v0.8.3` | +| `image.tag` | select tag for manager image | `v0.9.0` | | `imagePullPolicy` | specify pull policy for manager image | `Always` | | `livenessProbe` | custom livenessprobe for manager container | | | `readinessProbe` | custom readinessprobe for manager container | | diff --git a/charts/keptn-metrics-operator/templates/analysis-crd.yaml b/charts/keptn-metrics-operator/templates/analysis-crd.yaml index 9094856..492b134 100644 --- a/charts/keptn-metrics-operator/templates/analysis-crd.yaml +++ b/charts/keptn-metrics-operator/templates/analysis-crd.yaml @@ -5,12 +5,12 @@ metadata: annotations: controller-gen.kubebuilder.io/version: v0.13.0 cert-manager.io/inject-ca-from: '{{ .Release.Namespace }}/keptn-certs' + {{- include "common.annotations" ( dict "context" . ) }} labels: - app.kubernetes.io/part-of: keptn-lifecycle-toolkit + app.kubernetes.io/part-of: keptn crdGroup: metrics.keptn.sh keptn.sh/inject-cert: "true" {{- include "common.labels.standard" ( dict "context" . ) | nindent 4 }} -{{- include "common.annotations" ( dict "context" . ) }} spec: group: metrics.keptn.sh names: @@ -176,6 +176,165 @@ spec: type: object type: object served: true + storage: false + subresources: + status: {} + - additionalPrinterColumns: + - jsonPath: .spec.analysisDefinition.name + name: AnalysisDefinition + type: string + - jsonPath: .status.state + name: State + type: string + - jsonPath: .status.warning + name: Warning + type: string + - jsonPath: .status.pass + name: Pass + type: string + name: v1beta1 + schema: + openAPIV3Schema: + description: Analysis is the Schema for the analyses API + properties: + apiVersion: + description: 'APIVersion defines the versioned schema of this representation + of an object. Servers should convert recognized schemas to the latest + internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources' + type: string + kind: + description: 'Kind is a string value representing the REST resource this + object represents. Servers may infer this from the endpoint the client + submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds' + type: string + metadata: + type: object + spec: + description: AnalysisSpec defines the desired state of Analysis + properties: + analysisDefinition: + description: AnalysisDefinition refers to the AnalysisDefinition, + a CRD that stores the AnalysisValuesTemplates + properties: + name: + description: Name defines the name of the referenced object + type: string + namespace: + description: Namespace defines the namespace of the referenced + object + type: string + required: + - name + type: object + args: + additionalProperties: + type: string + description: Args corresponds to a map of key/value pairs that can + be used to substitute placeholders in the AnalysisValueTemplate + query. i.e. for args foo:bar the query could be "query:percentile(95)?scope=tag(my_foo_label:{{.foo}})". + type: object + timeframe: + description: Timeframe specifies the range for the corresponding query + in the AnalysisValueTemplate. Please note that either a combination + of 'from' and 'to' or the 'recent' property may be set. If neither + is set, the Analysis can not be added to the cluster. + properties: + from: + description: From is the time of start for the query. This field + follows RFC3339 time format + format: date-time + type: string + recent: + description: Recent describes a recent timeframe using a duration + string. E.g. Setting this to '5m' provides an Analysis for the + last five minutes + pattern: ^0|([0-9]+(\.[0-9]+)?(ns|us|µs|ms|s|m|h))+$ + type: string + to: + description: To is the time of end for the query. This field follows + RFC3339 time format + format: date-time + type: string + type: object + required: + - analysisDefinition + - timeframe + type: object + status: + description: AnalysisStatus stores the status of the overall analysis + returns also pass or warnings + properties: + pass: + description: Pass returns whether the SLO is satisfied + type: boolean + raw: + description: Raw contains the raw result of the SLO computation + type: string + state: + description: State describes the current state of the Analysis (Pending/Progressing/Completed) + type: string + storedValues: + additionalProperties: + description: ProviderResult stores reference of already collected + provider query associated to its objective template + properties: + errMsg: + description: ErrMsg stores any possible error at retrieval time + type: string + objectiveReference: + description: Objective store reference to corresponding objective + template + properties: + name: + description: Name defines the name of the referenced object + type: string + namespace: + description: Namespace defines the namespace of the referenced + object + type: string + required: + - name + type: object + query: + description: Query represents the executed query + type: string + value: + description: Value is the value the provider returned + type: string + type: object + description: StoredValues contains all analysis values that have already + been retrieved successfully + type: object + timeframe: + description: Timeframe describes the time frame which is evaluated + by the Analysis + properties: + from: + description: From is the time of start for the query. This field + follows RFC3339 time format + format: date-time + type: string + recent: + description: Recent describes a recent timeframe using a duration + string. E.g. Setting this to '5m' provides an Analysis for the + last five minutes + pattern: ^0|([0-9]+(\.[0-9]+)?(ns|us|µs|ms|s|m|h))+$ + type: string + to: + description: To is the time of end for the query. This field follows + RFC3339 time format + format: date-time + type: string + type: object + warning: + description: Warning returns whether the analysis returned a warning + type: boolean + required: + - state + - timeframe + type: object + type: object + served: true storage: true subresources: status: {} diff --git a/charts/keptn-metrics-operator/templates/analysisdefinition-crd.yaml b/charts/keptn-metrics-operator/templates/analysisdefinition-crd.yaml index bd901f9..2e75e9e 100644 --- a/charts/keptn-metrics-operator/templates/analysisdefinition-crd.yaml +++ b/charts/keptn-metrics-operator/templates/analysisdefinition-crd.yaml @@ -5,12 +5,12 @@ metadata: annotations: controller-gen.kubebuilder.io/version: v0.13.0 cert-manager.io/inject-ca-from: '{{ .Release.Namespace }}/keptn-certs' + {{- include "common.annotations" ( dict "context" . ) }} labels: - app.kubernetes.io/part-of: keptn-lifecycle-toolkit + app.kubernetes.io/part-of: keptn crdGroup: metrics.keptn.sh keptn.sh/inject-cert: "true" {{- include "common.labels.standard" ( dict "context" . ) | nindent 4 }} -{{- include "common.annotations" ( dict "context" . ) }} spec: group: metrics.keptn.sh names: @@ -347,6 +347,336 @@ spec: type: string type: object served: true + storage: false + subresources: + status: {} + - name: v1beta1 + schema: + openAPIV3Schema: + description: AnalysisDefinition is the Schema for the analysisdefinitions + APIs + properties: + apiVersion: + description: 'APIVersion defines the versioned schema of this representation + of an object. Servers should convert recognized schemas to the latest + internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources' + type: string + kind: + description: 'Kind is a string value representing the REST resource this + object represents. Servers may infer this from the endpoint the client + submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds' + type: string + metadata: + type: object + spec: + description: AnalysisDefinitionSpec defines the desired state of AnalysisDefinition + properties: + objectives: + description: Objectives defines a list of objectives to evaluate for + an analysis + items: + description: Objective defines an objective for analysis + properties: + analysisValueTemplateRef: + description: AnalysisValueTemplateRef refers to the appropriate + AnalysisValueTemplate + properties: + name: + description: Name defines the name of the referenced object + type: string + namespace: + description: Namespace defines the namespace of the referenced + object + type: string + required: + - name + type: object + keyObjective: + default: false + description: KeyObjective defines whether the whole analysis + fails when this objective's target is not met + type: boolean + target: + description: Target defines failure or warning criteria + properties: + failure: + description: Failure defines limits up to which an analysis + fails + properties: + equalTo: + description: EqualTo represents '==' operator + properties: + fixedValue: + anyOf: + - type: integer + - type: string + description: FixedValue defines the value for comparison + pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$ + x-kubernetes-int-or-string: true + required: + - fixedValue + type: object + greaterThan: + description: GreaterThan represents '>' operator + properties: + fixedValue: + anyOf: + - type: integer + - type: string + description: FixedValue defines the value for comparison + pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$ + x-kubernetes-int-or-string: true + required: + - fixedValue + type: object + greaterThanOrEqual: + description: GreaterThanOrEqual represents '>=' operator + properties: + fixedValue: + anyOf: + - type: integer + - type: string + description: FixedValue defines the value for comparison + pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$ + x-kubernetes-int-or-string: true + required: + - fixedValue + type: object + inRange: + description: InRange represents operator checking the + value is inclusively in the defined range, e.g. 2 + <= x <= 5 + properties: + highBound: + anyOf: + - type: integer + - type: string + description: HighBound defines the higher bound + of the range + pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$ + x-kubernetes-int-or-string: true + lowBound: + anyOf: + - type: integer + - type: string + description: LowBound defines the lower bound of + the range + pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$ + x-kubernetes-int-or-string: true + required: + - highBound + - lowBound + type: object + lessThan: + description: LessThan represents '<' operator + properties: + fixedValue: + anyOf: + - type: integer + - type: string + description: FixedValue defines the value for comparison + pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$ + x-kubernetes-int-or-string: true + required: + - fixedValue + type: object + lessThanOrEqual: + description: LessThanOrEqual represents '<=' operator + properties: + fixedValue: + anyOf: + - type: integer + - type: string + description: FixedValue defines the value for comparison + pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$ + x-kubernetes-int-or-string: true + required: + - fixedValue + type: object + notInRange: + description: NotInRange represents operator checking + the value is exclusively out of the defined range, + e.g. x < 2 AND x > 5 + properties: + highBound: + anyOf: + - type: integer + - type: string + description: HighBound defines the higher bound + of the range + pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$ + x-kubernetes-int-or-string: true + lowBound: + anyOf: + - type: integer + - type: string + description: LowBound defines the lower bound of + the range + pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$ + x-kubernetes-int-or-string: true + required: + - highBound + - lowBound + type: object + type: object + warning: + description: Warning defines limits where the result does + not pass or fail + properties: + equalTo: + description: EqualTo represents '==' operator + properties: + fixedValue: + anyOf: + - type: integer + - type: string + description: FixedValue defines the value for comparison + pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$ + x-kubernetes-int-or-string: true + required: + - fixedValue + type: object + greaterThan: + description: GreaterThan represents '>' operator + properties: + fixedValue: + anyOf: + - type: integer + - type: string + description: FixedValue defines the value for comparison + pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$ + x-kubernetes-int-or-string: true + required: + - fixedValue + type: object + greaterThanOrEqual: + description: GreaterThanOrEqual represents '>=' operator + properties: + fixedValue: + anyOf: + - type: integer + - type: string + description: FixedValue defines the value for comparison + pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$ + x-kubernetes-int-or-string: true + required: + - fixedValue + type: object + inRange: + description: InRange represents operator checking the + value is inclusively in the defined range, e.g. 2 + <= x <= 5 + properties: + highBound: + anyOf: + - type: integer + - type: string + description: HighBound defines the higher bound + of the range + pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$ + x-kubernetes-int-or-string: true + lowBound: + anyOf: + - type: integer + - type: string + description: LowBound defines the lower bound of + the range + pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$ + x-kubernetes-int-or-string: true + required: + - highBound + - lowBound + type: object + lessThan: + description: LessThan represents '<' operator + properties: + fixedValue: + anyOf: + - type: integer + - type: string + description: FixedValue defines the value for comparison + pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$ + x-kubernetes-int-or-string: true + required: + - fixedValue + type: object + lessThanOrEqual: + description: LessThanOrEqual represents '<=' operator + properties: + fixedValue: + anyOf: + - type: integer + - type: string + description: FixedValue defines the value for comparison + pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$ + x-kubernetes-int-or-string: true + required: + - fixedValue + type: object + notInRange: + description: NotInRange represents operator checking + the value is exclusively out of the defined range, + e.g. x < 2 AND x > 5 + properties: + highBound: + anyOf: + - type: integer + - type: string + description: HighBound defines the higher bound + of the range + pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$ + x-kubernetes-int-or-string: true + lowBound: + anyOf: + - type: integer + - type: string + description: LowBound defines the lower bound of + the range + pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$ + x-kubernetes-int-or-string: true + required: + - highBound + - lowBound + type: object + type: object + type: object + weight: + default: 1 + description: Weight can be used to emphasize the importance + of one Objective over the others + type: integer + required: + - analysisValueTemplateRef + type: object + type: array + totalScore: + description: TotalScore defines the required score for an analysis + to be successful + properties: + passPercentage: + description: PassPercentage defines the threshold to reach for + an analysis to pass + maximum: 100 + minimum: 0 + type: integer + warningPercentage: + description: WarningPercentage defines the threshold to reach + for an analysis to pass with a 'warning' status + maximum: 100 + minimum: 0 + type: integer + required: + - passPercentage + - warningPercentage + type: object + required: + - totalScore + type: object + status: + description: unused field + type: string + type: object + served: true storage: true subresources: status: {} \ No newline at end of file diff --git a/charts/keptn-metrics-operator/templates/analysisvaluetemplate-crd.yaml b/charts/keptn-metrics-operator/templates/analysisvaluetemplate-crd.yaml index 9f0c555..e06ec85 100644 --- a/charts/keptn-metrics-operator/templates/analysisvaluetemplate-crd.yaml +++ b/charts/keptn-metrics-operator/templates/analysisvaluetemplate-crd.yaml @@ -5,12 +5,12 @@ metadata: annotations: controller-gen.kubebuilder.io/version: v0.13.0 cert-manager.io/inject-ca-from: '{{ .Release.Namespace }}/keptn-certs' + {{- include "common.annotations" ( dict "context" . ) }} labels: - app.kubernetes.io/part-of: keptn-lifecycle-toolkit + app.kubernetes.io/part-of: keptn crdGroup: metrics.keptn.sh keptn.sh/inject-cert: "true" {{- include "common.labels.standard" ( dict "context" . ) | nindent 4 }} -{{- include "common.annotations" ( dict "context" . ) }} spec: group: metrics.keptn.sh names: @@ -73,6 +73,62 @@ spec: type: string type: object served: true + storage: false + subresources: + status: {} + - additionalPrinterColumns: + - jsonPath: .spec.provider.name + name: Provider + type: string + name: v1beta1 + schema: + openAPIV3Schema: + description: AnalysisValueTemplate is the Schema for the analysisvaluetemplates + API + properties: + apiVersion: + description: 'APIVersion defines the versioned schema of this representation + of an object. Servers should convert recognized schemas to the latest + internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources' + type: string + kind: + description: 'Kind is a string value representing the REST resource this + object represents. Servers may infer this from the endpoint the client + submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds' + type: string + metadata: + type: object + spec: + description: Spec contains the specification for the AnalysisValueTemplate + properties: + provider: + description: Provider refers to the KeptnMetricsProvider which should + be used to retrieve the data + properties: + name: + description: Name defines the name of the referenced object + type: string + namespace: + description: Namespace defines the namespace of the referenced + object + type: string + required: + - name + type: object + query: + description: Query represents the query to be run. It can include + placeholders that are defined using the go template syntax. More + info on go templating - https://pkg.go.dev/text/template + type: string + required: + - provider + - query + type: object + status: + description: unused field + type: string + type: object + served: true storage: true subresources: status: {} diff --git a/charts/keptn-metrics-operator/templates/deployment.yaml b/charts/keptn-metrics-operator/templates/deployment.yaml index c42e942..5a16d36 100644 --- a/charts/keptn-metrics-operator/templates/deployment.yaml +++ b/charts/keptn-metrics-operator/templates/deployment.yaml @@ -3,13 +3,16 @@ kind: Deployment metadata: name: metrics-operator namespace: {{ .Release.Namespace | quote }} + {{- $annotations := include "common.annotations" (dict "context" .) }} + {{- with $annotations }} + annotations: {{- . -}} + {{- end }} labels: - app.kubernetes.io/part-of: keptn-lifecycle-toolkit + app.kubernetes.io/part-of: keptn app.kubernetes.io/component: metrics-operator control-plane: metrics-operator keptn.sh/inject-cert: "true" {{- include "common.labels.standard" ( dict "context" . ) | nindent 4 }} -{{- include "common.annotations" ( dict "context" . ) }} spec: replicas: {{ .Values.replicas }} selector: @@ -47,8 +50,8 @@ spec: fieldPath: metadata.name - name: EXPOSE_KEPTN_METRICS value: {{ .Values.env.exposeKeptnMetrics | quote }} - - name: ENABLE_ANALYSIS - value: {{ .Values.env.enableKeptnAnalysis | quote }} + - name: ENABLE_CUSTOM_METRICS_API_SERVICE + value: {{ .Values.customMetricsAPIService.enabled | quote }} - name: METRICS_CONTROLLER_LOG_LEVEL value: {{ .Values.env.metricsControllerLogLevel | quote }} @@ -87,8 +90,6 @@ spec: seccompProfile: {{- include "common.tplvalues.render" (dict "value" .Values.containerSecurityContext.seccompProfile "context" $) | nindent 12 }} volumeMounts: - - mountPath: /tmp/k8s-webhook-server/serving-certs/ - name: certs-dir - mountPath: /tmp/metrics-adapter/serving-certs name: adapter-certs-dir {{- if .Values.livenessProbe }} @@ -117,8 +118,6 @@ spec: serviceAccountName: metrics-operator terminationGracePeriodSeconds: 10 volumes: - - emptyDir: {} - name: certs-dir - emptyDir: {} name: adapter-certs-dir {{- if .Values.topologySpreadConstraints }} diff --git a/charts/keptn-metrics-operator/templates/keptnmetric-crd.yaml b/charts/keptn-metrics-operator/templates/keptnmetric-crd.yaml index 43789ca..5920c22 100644 --- a/charts/keptn-metrics-operator/templates/keptnmetric-crd.yaml +++ b/charts/keptn-metrics-operator/templates/keptnmetric-crd.yaml @@ -5,23 +5,13 @@ metadata: annotations: controller-gen.kubebuilder.io/version: v0.13.0 cert-manager.io/inject-ca-from: '{{ .Release.Namespace }}/keptn-certs' + {{- include "common.annotations" ( dict "context" . ) }} labels: - app.kubernetes.io/part-of: keptn-lifecycle-toolkit + app.kubernetes.io/part-of: keptn crdGroup: metrics.keptn.sh keptn.sh/inject-cert: "true" {{- include "common.labels.standard" ( dict "context" . ) | nindent 4 }} -{{- include "common.annotations" ( dict "context" . ) }} spec: - conversion: - strategy: Webhook - webhook: - clientConfig: - service: - name: 'metrics-webhook-service' - namespace: '{{ .Release.Namespace }}' - path: /convert - conversionReviewVersions: - - v1 group: metrics.keptn.sh names: kind: KeptnMetric @@ -345,6 +335,172 @@ spec: type: object type: object served: true + storage: false + subresources: + status: {} + - additionalPrinterColumns: + - jsonPath: .spec.provider.name + name: Provider + type: string + - jsonPath: .spec.query + name: Query + type: string + - jsonPath: .spec.range.interval + name: Interval + type: string + - jsonPath: .status.value + name: Value + type: string + name: v1beta1 + schema: + openAPIV3Schema: + description: KeptnMetric is the Schema for the keptnmetrics API + properties: + apiVersion: + description: 'APIVersion defines the versioned schema of this representation + of an object. Servers should convert recognized schemas to the latest + internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources' + type: string + kind: + description: 'Kind is a string value representing the REST resource this + object represents. Servers may infer this from the endpoint the client + submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds' + type: string + metadata: + type: object + spec: + description: KeptnMetricSpec defines the desired state of KeptnMetric + properties: + fetchIntervalSeconds: + description: FetchIntervalSeconds represents the update frequency + in seconds that is used to update the metric + type: integer + provider: + description: Provider represents the provider object + properties: + name: + description: Name of the provider + type: string + required: + - name + type: object + query: + description: Query represents the query to be run + type: string + range: + description: Range represents the time range for which data is to + be queried + properties: + aggregation: + description: 'Aggregation defines the type of aggregation function + to be applied on the data. Accepted values: p90, p95, p99, max, + min, avg, median' + enum: + - p90 + - p95 + - p99 + - max + - min + - avg + - median + type: string + interval: + default: 5m + description: Interval specifies the duration of the time interval + for the data query + type: string + step: + description: Step represents the query resolution step width for + the data query + type: string + storedResults: + description: StoredResults indicates the upper limit of how many + past results should be stored in the status of a KeptnMetric + maximum: 255 + type: integer + type: object + required: + - fetchIntervalSeconds + - provider + - query + type: object + status: + description: KeptnMetricStatus defines the observed state of KeptnMetric + properties: + errMsg: + description: ErrMsg represents the error details when the query could + not be evaluated + type: string + intervalResults: + description: IntervalResults contain a slice of all the interval results + items: + properties: + errMsg: + description: ErrMsg represents the error details when the query + could not be evaluated + type: string + lastUpdated: + description: LastUpdated represents the time when the status + data was last updated + format: date-time + type: string + range: + description: Range represents the time range for which this + data was queried + properties: + aggregation: + description: 'Aggregation defines the type of aggregation + function to be applied on the data. Accepted values: p90, + p95, p99, max, min, avg, median' + enum: + - p90 + - p95 + - p99 + - max + - min + - avg + - median + type: string + interval: + default: 5m + description: Interval specifies the duration of the time + interval for the data query + type: string + step: + description: Step represents the query resolution step width + for the data query + type: string + storedResults: + description: StoredResults indicates the upper limit of + how many past results should be stored in the status of + a KeptnMetric + maximum: 255 + type: integer + type: object + value: + description: Value represents the resulting value + type: string + required: + - lastUpdated + - range + - value + type: object + type: array + lastUpdated: + description: LastUpdated represents the time when the status data + was last updated + format: date-time + type: string + rawValue: + description: RawValue represents the resulting value in raw format + format: byte + type: string + value: + description: Value represents the resulting value + type: string + type: object + type: object + served: true storage: true subresources: status: {} \ No newline at end of file diff --git a/charts/keptn-metrics-operator/templates/keptnmetricsprovider-crd.yaml b/charts/keptn-metrics-operator/templates/keptnmetricsprovider-crd.yaml index f5cd43a..0d313f6 100644 --- a/charts/keptn-metrics-operator/templates/keptnmetricsprovider-crd.yaml +++ b/charts/keptn-metrics-operator/templates/keptnmetricsprovider-crd.yaml @@ -5,12 +5,12 @@ metadata: annotations: controller-gen.kubebuilder.io/version: v0.13.0 cert-manager.io/inject-ca-from: '{{ .Release.Namespace }}/keptn-certs' + {{- include "common.annotations" ( dict "context" . ) }} labels: - app.kubernetes.io/part-of: keptn-lifecycle-toolkit + app.kubernetes.io/part-of: keptn crdGroup: metrics.keptn.sh keptn.sh/inject-cert: "true" {{- include "common.labels.standard" ( dict "context" . ) | nindent 4 }} -{{- include "common.annotations" ( dict "context" . ) }} spec: group: metrics.keptn.sh names: @@ -131,6 +131,66 @@ spec: type: string type: object served: true + storage: false + subresources: + status: {} + - name: v1beta1 + schema: + openAPIV3Schema: + description: KeptnMetricsProvider is the Schema for the keptnmetricsproviders + API + properties: + apiVersion: + description: 'APIVersion defines the versioned schema of this representation + of an object. Servers should convert recognized schemas to the latest + internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources' + type: string + kind: + description: 'Kind is a string value representing the REST resource this + object represents. Servers may infer this from the endpoint the client + submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds' + type: string + metadata: + type: object + spec: + description: KeptnMetricsProviderSpec defines the desired state of KeptnMetricsProvider + properties: + secretKeyRef: + description: SecretKeyRef defines an optional secret for access credentials + to the metrics provider. + properties: + key: + description: The key of the secret to select from. Must be a + valid secret key. + type: string + name: + description: 'Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names + TODO: Add other useful fields. apiVersion, kind, uid?' + type: string + optional: + description: Specify whether the Secret or its key must be defined + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + targetServer: + description: TargetServer defines URL (including port and protocol) + at which the metrics provider is reachable. + type: string + type: + description: Type represents the provider type. This can be one of + prometheus, dynatrace, datadog, dql. + pattern: prometheus|dynatrace|datadog|dql + type: string + required: + - targetServer + type: object + status: + description: unused field + type: string + type: object + served: true storage: true subresources: status: {} \ No newline at end of file diff --git a/charts/keptn-metrics-operator/templates/metrics-manager-config.yaml b/charts/keptn-metrics-operator/templates/metrics-manager-config.yaml index ade4d59..cea28a2 100644 --- a/charts/keptn-metrics-operator/templates/metrics-manager-config.yaml +++ b/charts/keptn-metrics-operator/templates/metrics-manager-config.yaml @@ -3,9 +3,12 @@ kind: ConfigMap metadata: name: metrics-operator-config namespace: {{ .Release.Namespace | quote }} + {{- $annotations := include "common.annotations" (dict "context" .) }} + {{- with $annotations }} + annotations: {{- . -}} + {{- end }} labels: {{- include "common.labels.standard" ( dict "context" . ) | nindent 4 }} -{{- include "common.annotations" ( dict "context" . ) }} data: controller_manager_config.yaml: | apiVersion: controller-runtime.sigs.k8s.io/v1alpha1 diff --git a/charts/keptn-metrics-operator/templates/metrics-operator-hpa-controller-rbac.yaml b/charts/keptn-metrics-operator/templates/metrics-operator-hpa-controller-rbac.yaml index e77ea5f..b96c406 100644 --- a/charts/keptn-metrics-operator/templates/metrics-operator-hpa-controller-rbac.yaml +++ b/charts/keptn-metrics-operator/templates/metrics-operator-hpa-controller-rbac.yaml @@ -1,11 +1,15 @@ +{{- if eq .Values.customMetricsAPIService.enabled "true" }} apiVersion: rbac.authorization.k8s.io/v1 kind: ClusterRoleBinding metadata: name: metrics-operator-hpa-controller namespace: {{ .Release.Namespace | quote }} + {{- $annotations := include "common.annotations" (dict "context" .) }} + {{- with $annotations }} + annotations: {{- . -}} + {{- end }} labels: {{- include "common.labels.standard" ( dict "context" . ) | nindent 4 }} -{{- include "common.annotations" ( dict "context" . ) }} roleRef: apiGroup: rbac.authorization.k8s.io kind: ClusterRole @@ -13,4 +17,5 @@ roleRef: subjects: - kind: ServiceAccount name: horizontal-pod-autoscaler - namespace: '{{ .Release.Namespace }}' \ No newline at end of file + namespace: '{{ .Release.Namespace }}' +{{- end }} diff --git a/charts/keptn-metrics-operator/templates/metrics-operator-leader-election-rbac.yaml b/charts/keptn-metrics-operator/templates/metrics-operator-leader-election-rbac.yaml index c59624a..16d0e25 100644 --- a/charts/keptn-metrics-operator/templates/metrics-operator-leader-election-rbac.yaml +++ b/charts/keptn-metrics-operator/templates/metrics-operator-leader-election-rbac.yaml @@ -3,9 +3,12 @@ kind: Role metadata: name: metrics-operator-leader-election-role namespace: {{ .Release.Namespace | quote }} + {{- $annotations := include "common.annotations" (dict "context" .) }} + {{- with $annotations }} + annotations: {{- . -}} + {{- end }} labels: {{- include "common.labels.standard" ( dict "context" . ) | nindent 4 }} -{{- include "common.annotations" ( dict "context" . ) }} rules: - apiGroups: - "" @@ -44,9 +47,11 @@ kind: RoleBinding metadata: name: metrics-operator-leader-election-rolebinding namespace: {{ .Release.Namespace | quote }} + {{- with $annotations }} + annotations: {{- . -}} + {{- end }} labels: {{- include "common.labels.standard" ( dict "context" . ) | nindent 4 }} -{{- include "common.annotations" ( dict "context" . ) }} roleRef: apiGroup: rbac.authorization.k8s.io kind: Role diff --git a/charts/keptn-metrics-operator/templates/metrics-operator-rbac.yaml b/charts/keptn-metrics-operator/templates/metrics-operator-rbac.yaml index 59a4200..2c19791 100644 --- a/charts/keptn-metrics-operator/templates/metrics-operator-rbac.yaml +++ b/charts/keptn-metrics-operator/templates/metrics-operator-rbac.yaml @@ -3,9 +3,12 @@ kind: ClusterRole metadata: name: metrics-operator-role namespace: {{ .Release.Namespace | quote }} + {{- $annotations := include "common.annotations" (dict "context" .) }} + {{- with $annotations }} + annotations: {{- . -}} + {{- end }} labels: {{- include "common.labels.standard" ( dict "context" . ) | nindent 4 }} -{{- include "common.annotations" ( dict "context" . ) }} rules: - apiGroups: - "" @@ -107,9 +110,11 @@ kind: RoleBinding metadata: name: metrics-operator-rolebinding namespace: {{ .Release.Namespace | quote }} + {{- with $annotations }} + annotations: {{- . -}} + {{- end }} labels: {{- include "common.labels.standard" ( dict "context" . ) | nindent 4 }} -{{- include "common.annotations" ( dict "context" . ) }} roleRef: apiGroup: rbac.authorization.k8s.io kind: Role @@ -124,9 +129,11 @@ kind: ClusterRoleBinding metadata: name: metrics-operator-rolebinding namespace: {{ .Release.Namespace | quote }} + {{- with $annotations }} + annotations: {{- . -}} + {{- end }} labels: {{- include "common.labels.standard" ( dict "context" . ) | nindent 4 }} -{{- include "common.annotations" ( dict "context" . ) }} roleRef: apiGroup: rbac.authorization.k8s.io kind: ClusterRole diff --git a/charts/keptn-metrics-operator/templates/metrics-operator-server-resources-rbac.yaml b/charts/keptn-metrics-operator/templates/metrics-operator-server-resources-rbac.yaml index 67d2679..dafda64 100644 --- a/charts/keptn-metrics-operator/templates/metrics-operator-server-resources-rbac.yaml +++ b/charts/keptn-metrics-operator/templates/metrics-operator-server-resources-rbac.yaml @@ -3,9 +3,12 @@ kind: ClusterRole metadata: name: metrics-operator-server-resources namespace: {{ .Release.Namespace | quote }} + {{- $annotations := include "common.annotations" (dict "context" .) }} + {{- with $annotations }} + annotations: {{- . -}} + {{- end }} labels: {{- include "common.labels.standard" ( dict "context" . ) | nindent 4 }} -{{- include "common.annotations" ( dict "context" . ) }} rules: - apiGroups: - custom.metrics.k8s.io diff --git a/charts/keptn-metrics-operator/templates/metrics-operator-service-account.yaml b/charts/keptn-metrics-operator/templates/metrics-operator-service-account.yaml index c74e2cf..1860b1d 100644 --- a/charts/keptn-metrics-operator/templates/metrics-operator-service-account.yaml +++ b/charts/keptn-metrics-operator/templates/metrics-operator-service-account.yaml @@ -3,6 +3,9 @@ kind: ServiceAccount metadata: name: metrics-operator namespace: {{ .Release.Namespace | quote }} + {{- $annotations := include "common.annotations" (dict "context" .) }} + {{- with $annotations }} + annotations: {{- . -}} + {{- end }} labels: {{- include "common.labels.standard" ( dict "context" . ) | nindent 4 }} -{{- include "common.annotations" ( dict "context" . ) }} diff --git a/charts/keptn-metrics-operator/templates/metrics-operator-service.yaml b/charts/keptn-metrics-operator/templates/metrics-operator-service.yaml index 14e8270..996763f 100644 --- a/charts/keptn-metrics-operator/templates/metrics-operator-service.yaml +++ b/charts/keptn-metrics-operator/templates/metrics-operator-service.yaml @@ -3,10 +3,13 @@ kind: Service metadata: name: metrics-operator-service namespace: {{ .Release.Namespace | quote }} + {{- $annotations := include "common.annotations" (dict "context" .) }} + {{- with $annotations }} + annotations: {{- . -}} + {{- end }} labels: control-plane: metrics-operator {{- include "common.labels.standard" ( dict "context" . ) | nindent 4 }} -{{- include "common.annotations" ( dict "context" . ) }} spec: type: {{ .Values.operatorService.type }} selector: diff --git a/charts/keptn-metrics-operator/templates/metrics-validating-webhook-configuration.yaml b/charts/keptn-metrics-operator/templates/metrics-validating-webhook-configuration.yaml index 55cdef5..b402989 100644 --- a/charts/keptn-metrics-operator/templates/metrics-validating-webhook-configuration.yaml +++ b/charts/keptn-metrics-operator/templates/metrics-validating-webhook-configuration.yaml @@ -4,10 +4,10 @@ metadata: name: metrics-validating-webhook-configuration annotations: cert-manager.io/inject-ca-from: '{{ .Release.Namespace }}/keptn-certs' + {{- include "common.annotations" ( dict "context" . ) }} labels: keptn.sh/inject-cert: "true" {{- include "common.labels.standard" ( dict "context" . ) | nindent 4 }} -{{- include "common.annotations" ( dict "context" . ) }} webhooks: - admissionReviewVersions: - v1 @@ -15,14 +15,14 @@ webhooks: service: name: 'metrics-webhook-service' namespace: '{{ .Release.Namespace }}' - path: /validate-metrics-keptn-sh-v1alpha3-keptnmetric + path: /validate-metrics-keptn-sh-v1beta1-keptnmetric failurePolicy: Fail name: vkeptnmetric.kb.io rules: - apiGroups: - metrics.keptn.sh apiVersions: - - v1alpha3 + - v1beta1 operations: - CREATE - UPDATE @@ -35,14 +35,14 @@ webhooks: service: name: 'metrics-webhook-service' namespace: '{{ .Release.Namespace }}' - path: /validate-metrics-keptn-sh-v1alpha3-analysis + path: /validate-metrics-keptn-sh-v1beta1-analysis failurePolicy: Fail name: vanalysis.kb.io rules: - apiGroups: - metrics.keptn.sh apiVersions: - - v1alpha3 + - v1beta1 operations: - CREATE - UPDATE @@ -55,14 +55,14 @@ webhooks: service: name: 'metrics-webhook-service' namespace: '{{ .Release.Namespace }}' - path: /validate-metrics-keptn-sh-v1alpha3-analysisdefinition + path: /validate-metrics-keptn-sh-v1beta1-analysisdefinition failurePolicy: Fail name: vanalysisdefinition.kb.io rules: - apiGroups: - metrics.keptn.sh apiVersions: - - v1alpha3 + - v1beta1 operations: - CREATE - UPDATE diff --git a/charts/keptn-metrics-operator/templates/metrics-webhook-service.yaml b/charts/keptn-metrics-operator/templates/metrics-webhook-service.yaml index 47ef09f..1f0451a 100644 --- a/charts/keptn-metrics-operator/templates/metrics-webhook-service.yaml +++ b/charts/keptn-metrics-operator/templates/metrics-webhook-service.yaml @@ -3,9 +3,12 @@ kind: Service metadata: name: metrics-webhook-service namespace: {{ .Release.Namespace | quote }} + {{- $annotations := include "common.annotations" (dict "context" .) }} + {{- with $annotations }} + annotations: {{- . -}} + {{- end }} labels: {{- include "common.labels.standard" ( dict "context" . ) | nindent 4 }} -{{- include "common.annotations" ( dict "context" . ) }} spec: type: {{ .Values.webhookService.type }} selector: diff --git a/charts/keptn-metrics-operator/templates/system-auth-delegator-rbac.yaml b/charts/keptn-metrics-operator/templates/system-auth-delegator-rbac.yaml index b49c591..641a560 100644 --- a/charts/keptn-metrics-operator/templates/system-auth-delegator-rbac.yaml +++ b/charts/keptn-metrics-operator/templates/system-auth-delegator-rbac.yaml @@ -3,9 +3,12 @@ kind: ClusterRoleBinding metadata: name: system-auth-delegator namespace: {{ .Release.Namespace | quote }} + {{- $annotations := include "common.annotations" (dict "context" .) }} + {{- with $annotations }} + annotations: {{- . -}} + {{- end }} labels: {{- include "common.labels.standard" ( dict "context" . ) | nindent 4 }} -{{- include "common.annotations" ( dict "context" . ) }} roleRef: apiGroup: rbac.authorization.k8s.io kind: ClusterRole diff --git a/charts/keptn-metrics-operator/templates/v1beta1.custom.metrics.k8s.io.yaml b/charts/keptn-metrics-operator/templates/v1beta1.custom.metrics.k8s.io.yaml index a0880d9..b6f2462 100644 --- a/charts/keptn-metrics-operator/templates/v1beta1.custom.metrics.k8s.io.yaml +++ b/charts/keptn-metrics-operator/templates/v1beta1.custom.metrics.k8s.io.yaml @@ -1,11 +1,15 @@ +{{- if eq .Values.customMetricsAPIService.enabled "true" }} apiVersion: apiregistration.k8s.io/v1 kind: APIService metadata: name: v1beta1.custom.metrics.k8s.io namespace: {{ .Release.Namespace | quote }} + {{- $annotations := include "common.annotations" (dict "context" .) }} + {{- with $annotations }} + annotations: {{- . -}} + {{- end }} labels: {{- include "common.labels.standard" ( dict "context" . ) | nindent 4 }} -{{- include "common.annotations" ( dict "context" . ) }} spec: group: custom.metrics.k8s.io groupPriorityMinimum: 100 @@ -14,4 +18,5 @@ spec: name: 'metrics-operator-service' namespace: '{{ .Release.Namespace }}' version: v1beta1 - versionPriority: 100 \ No newline at end of file + versionPriority: 100 +{{- end }} diff --git a/charts/keptn-metrics-operator/templates/v1beta2.custom.metrics.k8s.io.yaml b/charts/keptn-metrics-operator/templates/v1beta2.custom.metrics.k8s.io.yaml index 672d2b9..7ffe0e7 100644 --- a/charts/keptn-metrics-operator/templates/v1beta2.custom.metrics.k8s.io.yaml +++ b/charts/keptn-metrics-operator/templates/v1beta2.custom.metrics.k8s.io.yaml @@ -1,11 +1,15 @@ +{{- if eq .Values.customMetricsAPIService.enabled "true" }} apiVersion: apiregistration.k8s.io/v1 kind: APIService metadata: name: v1beta2.custom.metrics.k8s.io namespace: {{ .Release.Namespace | quote }} + {{- $annotations := include "common.annotations" (dict "context" .) }} + {{- with $annotations }} + annotations: {{- . -}} + {{- end }} labels: {{- include "common.labels.standard" ( dict "context" . ) | nindent 4 }} -{{- include "common.annotations" ( dict "context" . ) }} spec: group: custom.metrics.k8s.io groupPriorityMinimum: 100 @@ -14,4 +18,5 @@ spec: name: 'metrics-operator-service' namespace: '{{ .Release.Namespace }}' version: v1beta2 - versionPriority: 200 \ No newline at end of file + versionPriority: 200 +{{- end }} diff --git a/charts/keptn-metrics-operator/values.yaml b/charts/keptn-metrics-operator/values.yaml index 784ef58..f0fbf81 100644 --- a/charts/keptn-metrics-operator/values.yaml +++ b/charts/keptn-metrics-operator/values.yaml @@ -93,6 +93,9 @@ annotations: {} podAnnotations: {} ## @param kubernetesClusterDomain overrides cluster.local kubernetesClusterDomain: cluster.local +customMetricsAPIService: +## @param customMetricsAPIService.enabled enable/disable the K8s APIService installation + enabled: "true" ## @section Keptn Metrics Operator controller ## @extra containerSecurityContext Sets security context privileges @@ -117,8 +120,6 @@ containerSecurityContext: env: ## @param env.exposeKeptnMetrics enable metrics exporter exposeKeptnMetrics: "true" -## @param env.enableKeptnAnalysis enables/disables the analysis feature - enableKeptnAnalysis: "false" ## @param env.metricsControllerLogLevel sets the log level of Metrics Controller metricsControllerLogLevel: "0" ## @param env.analysisControllerLogLevel sets the log level of Analysis Controller @@ -129,7 +130,7 @@ image: ## @param image.repository specify registry for manager image repository: keptn/metrics-operator ## @param image.tag select tag for manager image - tag: v0.8.3 # x-release-please-version + tag: v0.9.0 # x-release-please-version ## @param imagePullPolicy specify pull policy for manager image imagePullPolicy: Always ## @extra livenessProbe custom livenessprobe for manager container