Browse Source

fix: make port in the schema file either a string of an integer (#5439)

* fix: make port in the schema file either a string of an integer

Signed-off-by: Gergely Brautigam <182850+Skarlso@users.noreply.github.com>

* run make check-diff

Signed-off-by: Gergely Brautigam <182850+Skarlso@users.noreply.github.com>

---------

Signed-off-by: Gergely Brautigam <182850+Skarlso@users.noreply.github.com>
Gergely Brautigam 7 months ago
parent
commit
f340ba93f8

+ 4 - 3
deploy/charts/external-secrets/README.md

@@ -132,11 +132,12 @@ The command removes all the Kubernetes components associated with the chart and
 | installCRDs | bool | `true` | If set, install and upgrade CRDs through helm chart. |
 | leaderElect | bool | `false` | If true, external-secrets will perform leader election between instances to ensure no more than one instance of external-secrets operates at a time. |
 | livenessProbe.enabled | bool | `false` | Enabled determines if the liveness probe should be used or not. By default it's disabled. |
-| livenessProbe.spec | object | `{"address":"","failureThreshold":5,"httpGet":{"path":"/healthz","port":"8082"},"initialDelaySeconds":10,"periodSeconds":10,"successThreshold":1,"timeoutSeconds":5}` | The body of the liveness probe settings. |
+| livenessProbe.spec | object | `{"address":"","failureThreshold":5,"httpGet":{"path":"/healthz","port":8082},"initialDelaySeconds":10,"periodSeconds":10,"successThreshold":1,"timeoutSeconds":5}` | The body of the liveness probe settings. |
 | livenessProbe.spec.address | string | `""` | Address for liveness probe. |
 | livenessProbe.spec.failureThreshold | int | `5` | Number of consecutive probe failures that should occur before considering the probe as failed. |
-| livenessProbe.spec.httpGet | object | `{"path":"/healthz","port":"8082"}` | Handler for liveness probe. |
-| livenessProbe.spec.httpGet.port | string | `"8082"` | Set this value to 8082 to active liveness probes. |
+| livenessProbe.spec.httpGet | object | `{"path":"/healthz","port":8082}` | Handler for liveness probe. |
+| livenessProbe.spec.httpGet.path | string | `"/healthz"` | Path for liveness probe. |
+| livenessProbe.spec.httpGet.port | int | `8082` | Set this value to 8082 to active liveness probes. @schema type: [string, integer] |
 | livenessProbe.spec.initialDelaySeconds | int | `10` | Delay in seconds for the container to start before performing the initial probe. |
 | livenessProbe.spec.periodSeconds | int | `10` | Period in seconds for K8s to start performing probes. |
 | livenessProbe.spec.successThreshold | int | `1` | Number of successful probes to mark probe successful. |

+ 1 - 7
deploy/charts/external-secrets/tests/__snapshot__/cert_controller_test.yaml.snap

@@ -41,7 +41,7 @@ should match snapshot of default values:
                 - --loglevel=info
                 - --zap-time-encoding=epoch
                 - --enable-partial-cache=true
-              image: oci.external-secrets.io/external-secrets/external-secrets:v0.19.2
+              image: oci.external-secrets.io/external-secrets/external-secrets:v0.20.2
               imagePullPolicy: IfNotPresent
               name: cert-controller
               ports:
@@ -64,11 +64,5 @@ should match snapshot of default values:
                 runAsUser: 1000
                 seccompProfile:
                   type: RuntimeDefault
-              startupProbe:
-                httpGet:
-                  path: /readyz
-                  port: 8081
-                initialDelaySeconds: 20
-                periodSeconds: 5
           hostNetwork: false
           serviceAccountName: external-secrets-cert-controller

+ 1 - 1
deploy/charts/external-secrets/tests/__snapshot__/controller_test.yaml.snap

@@ -34,7 +34,7 @@ should match snapshot of default values:
                 - --metrics-addr=:8080
                 - --loglevel=info
                 - --zap-time-encoding=epoch
-              image: oci.external-secrets.io/external-secrets/external-secrets:v0.19.2
+              image: oci.external-secrets.io/external-secrets/external-secrets:v0.20.2
               imagePullPolicy: IfNotPresent
               name: external-secrets
               ports:

+ 176 - 1
deploy/charts/external-secrets/tests/__snapshot__/crds_test.yaml.snap

@@ -1932,9 +1932,20 @@ should match snapshot of default values:
                             projectID:
                               description: ProjectID project where secret is located
                               type: string
+                            secretVersionSelectionPolicy:
+                              default: LatestOrFail
+                              description: |-
+                                SecretVersionSelectionPolicy specifies how the provider selects a secret version
+                                when "latest" is disabled or destroyed.
+                                Possible values are:
+                                - LatestOrFail: the provider always uses "latest", or fails if that version is disabled/destroyed.
+                                - LatestOrFetch: the provider falls back to fetching the latest version if the version is DESTROYED or DISABLED
+                              type: string
                           type: object
                         github:
-                          description: Github configures this store to push Github Action secrets using Github API provider
+                          description: |-
+                            Github configures this store to push GitHub Action secrets using GitHub API provider.
+                            Note: This provider only supports write operations (PushSecret) and cannot fetch secrets from GitHub
                           properties:
                             appID:
                               description: appID specifies the Github APP that will be used to authenticate the client
@@ -3144,6 +3155,62 @@ should match snapshot of default values:
                                   type: string
                               type: object
                           type: object
+                        ngrok:
+                          description: Ngrok configures this store to sync secrets using the ngrok provider.
+                          properties:
+                            apiUrl:
+                              default: https://api.ngrok.com
+                              description: APIURL is the URL of the ngrok API.
+                              type: string
+                            auth:
+                              description: Auth configures how the ngrok provider authenticates with the ngrok API.
+                              maxProperties: 1
+                              minProperties: 1
+                              properties:
+                                apiKey:
+                                  description: APIKey is the API Key used to authenticate with ngrok. See https://ngrok.com/docs/api/#authentication
+                                  properties:
+                                    secretRef:
+                                      description: SecretRef is a reference to a secret containing the ngrok API key.
+                                      properties:
+                                        key:
+                                          description: |-
+                                            A key in the referenced Secret.
+                                            Some instances of this field may be defaulted, in others it may be required.
+                                          maxLength: 253
+                                          minLength: 1
+                                          pattern: ^[-._a-zA-Z0-9]+$
+                                          type: string
+                                        name:
+                                          description: The name of the Secret resource being referred to.
+                                          maxLength: 253
+                                          minLength: 1
+                                          pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
+                                          type: string
+                                        namespace:
+                                          description: |-
+                                            The namespace of the Secret resource being referred to.
+                                            Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
+                                          maxLength: 63
+                                          minLength: 1
+                                          pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
+                                          type: string
+                                      type: object
+                                  type: object
+                              type: object
+                            vault:
+                              description: Vault configures the ngrok vault to sync secrets with.
+                              properties:
+                                name:
+                                  description: Name is the name of the ngrok vault to sync secrets with.
+                                  type: string
+                              required:
+                                - name
+                              type: object
+                          required:
+                            - auth
+                            - vault
+                          type: object
                         onboardbase:
                           description: Onboardbase configures this store to sync secrets using the Onboardbase provider
                           properties:
@@ -4040,6 +4107,12 @@ should match snapshot of default values:
                                           pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
                                           type: string
                                       type: object
+                                    path:
+                                      default: cert
+                                      description: |-
+                                        Path where the Certificate authentication backend is mounted
+                                        in Vault, e.g: "cert"
+                                      type: string
                                     secretRef:
                                       description: |-
                                         SecretRef to a key in a Secret resource containing client private key to
@@ -4693,6 +4766,108 @@ should match snapshot of default values:
                           required:
                             - server
                           type: object
+                        volcengine:
+                          description: Volcengine configures this store to sync secrets using the Volcengine provider
+                          properties:
+                            auth:
+                              description: |-
+                                Auth defines the authentication method to use.
+                                If not specified, the provider will try to use IRSA (IAM Role for Service Account).
+                              properties:
+                                secretRef:
+                                  description: |-
+                                    SecretRef defines the static credentials to use for authentication.
+                                    If not set, IRSA is used.
+                                  properties:
+                                    accessKeyID:
+                                      description: AccessKeyID is the reference to the secret containing the Access Key ID.
+                                      properties:
+                                        key:
+                                          description: |-
+                                            A key in the referenced Secret.
+                                            Some instances of this field may be defaulted, in others it may be required.
+                                          maxLength: 253
+                                          minLength: 1
+                                          pattern: ^[-._a-zA-Z0-9]+$
+                                          type: string
+                                        name:
+                                          description: The name of the Secret resource being referred to.
+                                          maxLength: 253
+                                          minLength: 1
+                                          pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
+                                          type: string
+                                        namespace:
+                                          description: |-
+                                            The namespace of the Secret resource being referred to.
+                                            Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
+                                          maxLength: 63
+                                          minLength: 1
+                                          pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
+                                          type: string
+                                      type: object
+                                    secretAccessKey:
+                                      description: SecretAccessKey is the reference to the secret containing the Secret Access Key.
+                                      properties:
+                                        key:
+                                          description: |-
+                                            A key in the referenced Secret.
+                                            Some instances of this field may be defaulted, in others it may be required.
+                                          maxLength: 253
+                                          minLength: 1
+                                          pattern: ^[-._a-zA-Z0-9]+$
+                                          type: string
+                                        name:
+                                          description: The name of the Secret resource being referred to.
+                                          maxLength: 253
+                                          minLength: 1
+                                          pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
+                                          type: string
+                                        namespace:
+                                          description: |-
+                                            The namespace of the Secret resource being referred to.
+                                            Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
+                                          maxLength: 63
+                                          minLength: 1
+                                          pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
+                                          type: string
+                                      type: object
+                                    token:
+                                      description: Token is the reference to the secret containing the STS(Security Token Service) Token.
+                                      properties:
+                                        key:
+                                          description: |-
+                                            A key in the referenced Secret.
+                                            Some instances of this field may be defaulted, in others it may be required.
+                                          maxLength: 253
+                                          minLength: 1
+                                          pattern: ^[-._a-zA-Z0-9]+$
+                                          type: string
+                                        name:
+                                          description: The name of the Secret resource being referred to.
+                                          maxLength: 253
+                                          minLength: 1
+                                          pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
+                                          type: string
+                                        namespace:
+                                          description: |-
+                                            The namespace of the Secret resource being referred to.
+                                            Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
+                                          maxLength: 63
+                                          minLength: 1
+                                          pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
+                                          type: string
+                                      type: object
+                                  required:
+                                    - accessKeyID
+                                    - secretAccessKey
+                                  type: object
+                              type: object
+                            region:
+                              description: Region specifies the Volcengine region to connect to.
+                              type: string
+                          required:
+                            - region
+                          type: object
                         webhook:
                           description: Webhook configures this store to sync secrets using a generic templated webhook
                           properties:

+ 1 - 1
deploy/charts/external-secrets/tests/__snapshot__/webhook_test.yaml.snap

@@ -39,7 +39,7 @@ should match snapshot of default values:
                 - --healthz-addr=:8081
                 - --loglevel=info
                 - --zap-time-encoding=epoch
-              image: oci.external-secrets.io/external-secrets/external-secrets:v0.19.2
+              image: oci.external-secrets.io/external-secrets/external-secrets:v0.20.2
               imagePullPolicy: IfNotPresent
               name: webhook
               ports:

+ 2 - 2
deploy/charts/external-secrets/tests/controller_test.yaml

@@ -112,12 +112,12 @@ tests:
           successThreshold: 10
           httpGet:
             path: /healthz
-            port: "8080"
+            port: 8080
             scheme: HTTP
     asserts:
       - equal:
           path: spec.template.spec.containers[0].livenessProbe.httpGet.port
-          value: "8080"
+          value: 8080
   - it: should update args with enableHTTP2=true
     set:
       enableHTTP2: true

+ 4 - 1
deploy/charts/external-secrets/values.schema.json

@@ -445,7 +445,10 @@
                                     "type": "string"
                                 },
                                 "port": {
-                                    "type": "string"
+                                    "type": [
+                                        "string",
+                                        "integer"
+                                    ]
                                 }
                             }
                         },

+ 3 - 1
deploy/charts/external-secrets/values.yaml

@@ -315,7 +315,9 @@ livenessProbe:
     # -- Handler for liveness probe.
     httpGet:
       # -- Set this value to 8082 to active liveness probes.
-      port: "8082"
+      # @schema type: [string, integer]
+      port: 8082
+      # -- Path for liveness probe.
       path: /healthz
 
 nodeSelector: {}