From ce0a6768383a0228d37f0fc4677d2a9cc4e0777c Mon Sep 17 00:00:00 2001 From: Jorden_Reuter <149687553+JordenReuter@users.noreply.github.com> Date: Wed, 5 Nov 2025 12:15:14 +0100 Subject: [PATCH] feat: added template for parameter operator --- templates/operator-microfrontend.yaml | 2 +- templates/operator-parameter.yaml | 27 ++++++++++++++++++++++ tests/parameter-empty.yaml | 5 ++++ tests/parameter-product.yaml | 12 ++++++++++ tests/parameter.yaml | 33 +++++++++++++++++++++++++++ values.yaml | 21 +++++++++++++++++ 6 files changed, 99 insertions(+), 1 deletion(-) create mode 100644 templates/operator-parameter.yaml create mode 100644 tests/parameter-empty.yaml create mode 100644 tests/parameter-product.yaml create mode 100644 tests/parameter.yaml diff --git a/templates/operator-microfrontend.yaml b/templates/operator-microfrontend.yaml index 3fac55f..a930f60 100644 --- a/templates/operator-microfrontend.yaml +++ b/templates/operator-microfrontend.yaml @@ -33,5 +33,5 @@ spec: path: {{ $item.path }} {{- end }} {{- end }} -{{- end }} +{{- end }} {{- end }} diff --git a/templates/operator-parameter.yaml b/templates/operator-parameter.yaml new file mode 100644 index 0000000..d6e19c3 --- /dev/null +++ b/templates/operator-parameter.yaml @@ -0,0 +1,27 @@ +{{ if .Values.operator.parameter.enabled }} +{{ if .Values.operator.parameter.spec.parameters }} +{{- range $orgId, $parameters := .Values.operator.parameter.spec.parameters }} +--- +apiVersion: onecx.tkit.org/v1 +kind: Parameter +metadata: + name: {{ include "app-angular.fullname" $ }}-{{ $orgId }} + labels: + app: {{ include "app-angular.fullname" $ }} +{{ include "app-angular.labels.common" $ | indent 4 }} +spec: + productName: {{ $.Values.operator.parameter.spec.productName | default (include "app-angular.product.name" $) }} + applicationId: {{ $.Values.operator.parameter.spec.appId | default (include "app-angular.fullname" $) }} + key: {{ $.Values.operator.parameter.spec.key | default "onecx" }} + orgId: {{ $orgId }} + parameters: + {{- range $name, $parameter := $parameters }} + {{ $name }}: + description: {{ $parameter.description }} + displayName: {{ $parameter.displayName }} + value: {{ $parameter.value | toJson | squote }} + {{- end }} + +{{- end }} +{{- end }} +{{- end }} \ No newline at end of file diff --git a/tests/parameter-empty.yaml b/tests/parameter-empty.yaml new file mode 100644 index 0000000..49098ec --- /dev/null +++ b/tests/parameter-empty.yaml @@ -0,0 +1,5 @@ +operator: + parameter: + enabled: true + spec: + parameters: \ No newline at end of file diff --git a/tests/parameter-product.yaml b/tests/parameter-product.yaml new file mode 100644 index 0000000..a75a694 --- /dev/null +++ b/tests/parameter-product.yaml @@ -0,0 +1,12 @@ +operator: + parameter: + enabled: true + spec: + productName: my-product + applicationId: my-app + parameters: + default: + param1: + displayName: + description: + value: true \ No newline at end of file diff --git a/tests/parameter.yaml b/tests/parameter.yaml new file mode 100644 index 0000000..a30d500 --- /dev/null +++ b/tests/parameter.yaml @@ -0,0 +1,33 @@ +operator: + parameter: + enabled: true + spec: + parameters: + default: + param1: + displayName: + description: + value: true + param2: + displayName: + description: + value: 100 + param3: + displayName: + description: + value: "text" + param4: + displayName: + description: + value: + custom: 123 + a: true + c: text + d: + f: false + e: 100 + onecx: + param1: + displayName: + description: + value: text text \ No newline at end of file diff --git a/values.yaml b/values.yaml index bc74e0f..c5dfee5 100644 --- a/values.yaml +++ b/values.yaml @@ -156,6 +156,27 @@ operator: # action: description permissions: + # parameters + parameter: + # enable or disable configuration for operator + enabed: false + # definnition and default values for the list of parameters + spec: + # operator key + key: onecx + # default release name (product name) + productName: + # default deployment name (release_name-name) + appId: + # map of parameters + # parameters: + # orgId: + # name: + # displayName: + # description: + # value: bool | number | string | object + parameters: + # slot slot: # enable or disable configuration for operator