From 3571f846bc7f66a3616079efd2f45cece8fddc05 Mon Sep 17 00:00:00 2001 From: Gabriel Bernal Date: Wed, 11 Feb 2026 16:35:37 +0100 Subject: [PATCH] feat: update perses dependencies Signed-off-by: Gabriel Bernal --- bundle/manifests/perses.dev_perses.yaml | 174 +++++++++++--- .../perses.dev_persesdashboards.yaml | 116 +++++++++- .../perses.dev_persesdatasources.yaml | 81 +++++-- .../perses.dev_persesglobaldatasources.yaml | 47 +++- deploy/perses/crds/perses.dev_perses.yaml | 219 +++++++++++++++--- .../crds/perses.dev_persesdashboards.yaml | 116 +++++++++- .../crds/perses.dev_persesdatasources.yaml | 81 +++++-- .../perses.dev_persesglobaldatasources.yaml | 47 +++- go.mod | 45 ++-- go.sum | 112 +++++---- pkg/controllers/uiplugin/monitoring.go | 15 -- 11 files changed, 811 insertions(+), 242 deletions(-) diff --git a/bundle/manifests/perses.dev_perses.yaml b/bundle/manifests/perses.dev_perses.yaml index 91a90e3e3..fcec662db 100644 --- a/bundle/manifests/perses.dev_perses.yaml +++ b/bundle/manifests/perses.dev_perses.yaml @@ -982,11 +982,12 @@ spec: secret or configmap) type: string namespace: - description: Namsespace of certificate k8s resource (when - type is secret or configmap) + description: Namespace of certificate k8s resource (when type + is secret or configmap) type: string password_path: description: Path to password + minLength: 1 type: string type: description: Type source type of secret @@ -997,6 +998,7 @@ spec: type: string username: description: Username for basic auth + minLength: 1 type: string required: - password_path @@ -1040,8 +1042,8 @@ spec: secret or configmap) type: string namespace: - description: Namsespace of certificate k8s resource (when - type is secret or configmap) + description: Namespace of certificate k8s resource (when type + is secret or configmap) type: string scopes: description: Scope specifies optional requested permissions. @@ -1052,6 +1054,7 @@ spec: description: |- TokenURL is the resource server's token endpoint URL. This is a constant specific to each server. + minLength: 1 type: string type: description: Type source type of secret @@ -1072,13 +1075,14 @@ spec: properties: certPath: description: Path to Certificate + minLength: 1 type: string name: description: Name of basic auth k8s resource (when type is secret or configmap) type: string namespace: - description: Namsespace of certificate k8s resource (when + description: Namespace of certificate k8s resource (when type is secret or configmap) type: string privateKeyPath: @@ -1106,13 +1110,14 @@ spec: properties: certPath: description: Path to Certificate + minLength: 1 type: string name: description: Name of basic auth k8s resource (when type is secret or configmap) type: string namespace: - description: Namsespace of certificate k8s resource (when + description: Namespace of certificate k8s resource (when type is secret or configmap) type: string privateKeyPath: @@ -1138,14 +1143,10 @@ spec: api_prefix: description: |- Use it in case you want to prefix the API path. - Warning: This parameter does not work anymore since the version v0.51.0. The functionality has been broken when changing the plugin system and it will be fixed in a future version. - Until then, please avoid using it and avoid using a reverse proxy with a path prefix to serve Perses. - Issues raised about this: - - https://github.com/rhobs/perses/issues/3166 - - https://github.com/rhobs/perses/issues/2579 - - https://github.com/rhobs/perses/issues/2589 - - https://github.com/rhobs/perses/issues/3384 - - https://github.com/rhobs/perses/issues/3396 + This can be useful if you are running Perses behind a reverse proxy. + By default, the API is served with the path /api. + With this config, it will be served with the path /api + Example: "/perses" type: string dashboard: description: Dashboard contains the configuration for the dashboard @@ -2324,7 +2325,10 @@ spec: type: object type: object containerPort: + default: 8080 format: int32 + maximum: 65535 + minimum: 1 type: integer image: description: Image specifies the container image that should be used @@ -2698,14 +2702,15 @@ spec: properties: certPath: description: Path to Certificate + minLength: 1 type: string name: description: Name of basic auth k8s resource (when type is secret or configmap) type: string namespace: - description: Namsespace of certificate k8s resource (when - type is secret or configmap) + description: Namespace of certificate k8s resource (when type + is secret or configmap) type: string privateKeyPath: description: Path to Private key certificate @@ -2732,14 +2737,15 @@ spec: properties: certPath: description: Path to Certificate + minLength: 1 type: string name: description: Name of basic auth k8s resource (when type is secret or configmap) type: string namespace: - description: Namsespace of certificate k8s resource (when - type is secret or configmap) + description: Namespace of certificate k8s resource (when type + is secret or configmap) type: string privateKeyPath: description: Path to Private key certificate @@ -3816,11 +3822,12 @@ spec: secret or configmap) type: string namespace: - description: Namsespace of certificate k8s resource (when - type is secret or configmap) + description: Namespace of certificate k8s resource (when type + is secret or configmap) type: string - password_path: + passwordPath: description: Path to password + minLength: 1 type: string type: description: Type source type of secret @@ -3831,9 +3838,10 @@ spec: type: string username: description: Username for basic auth + minLength: 1 type: string required: - - password_path + - passwordPath - type - username type: object @@ -3874,8 +3882,8 @@ spec: secret or configmap) type: string namespace: - description: Namsespace of certificate k8s resource (when - type is secret or configmap) + description: Namespace of certificate k8s resource (when type + is secret or configmap) type: string scopes: description: Scope specifies optional requested permissions. @@ -3886,6 +3894,7 @@ spec: description: |- TokenURL is the resource server's token endpoint URL. This is a constant specific to each server. + minLength: 1 type: string type: description: Type source type of secret @@ -3906,13 +3915,14 @@ spec: properties: certPath: description: Path to Certificate + minLength: 1 type: string name: description: Name of basic auth k8s resource (when type is secret or configmap) type: string namespace: - description: Namsespace of certificate k8s resource (when + description: Namespace of certificate k8s resource (when type is secret or configmap) type: string privateKeyPath: @@ -3940,13 +3950,14 @@ spec: properties: certPath: description: Path to Certificate + minLength: 1 type: string name: description: Name of basic auth k8s resource (when type is secret or configmap) type: string namespace: - description: Namsespace of certificate k8s resource (when + description: Namespace of certificate k8s resource (when type is secret or configmap) type: string privateKeyPath: @@ -3968,18 +3979,15 @@ spec: type: object type: object config: + description: Perses server configuration properties: api_prefix: description: |- Use it in case you want to prefix the API path. - Warning: This parameter does not work anymore since the version v0.51.0. The functionality has been broken when changing the plugin system and it will be fixed in a future version. - Until then, please avoid using it and avoid using a reverse proxy with a path prefix to serve Perses. - Issues raised about this: - - https://github.com/rhobs/perses/issues/3166 - - https://github.com/rhobs/perses/issues/2579 - - https://github.com/rhobs/perses/issues/2589 - - https://github.com/rhobs/perses/issues/3384 - - https://github.com/rhobs/perses/issues/3396 + This can be useful if you are running Perses behind a reverse proxy. + By default, the API is served with the path /api. + With this config, it will be served with the path /api + Example: "/perses" type: string dashboard: description: Dashboard contains the configuration for the dashboard @@ -5158,7 +5166,10 @@ spec: type: object type: object containerPort: + default: 8080 format: int32 + maximum: 65535 + minimum: 1 type: integer image: description: Image specifies the container image that should be used @@ -5317,21 +5328,41 @@ spec: format: int32 type: integer type: object + logLevel: + description: LogLevel defines the log level for Perses. + enum: + - panic + - fatal + - error + - warning + - info + - debug + - trace + type: string + logMethodTrace: + description: |- + LogMethodTrace when true, includes the calling method as a field in the log. + It can be useful to see immediately where the log comes from. + type: boolean metadata: description: Metadata to add to deployed pods properties: annotations: additionalProperties: type: string + description: Annotations are key/value pairs attached to pods + for non-identifying metadata type: object labels: additionalProperties: type: string + description: Labels are key/value pairs attached to pods type: object type: object nodeSelector: additionalProperties: type: string + description: NodeSelector constrains pods to nodes with matching labels type: object podSecurityContext: description: |- @@ -5723,6 +5754,66 @@ spec: replicas: format: int32 type: integer + resources: + description: Resources defines the compute resources configured for + the container. + properties: + claims: + description: |- + Claims lists the names of resources, defined in spec.resourceClaims, + that are used by this container. + + This field depends on the + DynamicResourceAllocation feature gate. + + This field is immutable. It can only be set for containers. + items: + description: ResourceClaim references one entry in PodSpec.ResourceClaims. + properties: + name: + description: |- + Name must match the name of one entry in pod.spec.resourceClaims of + the Pod where this field is used. It makes that resource available + inside a container. + type: string + request: + description: |- + Request is the name chosen for a request in the referenced claim. + If empty, everything from the claim is made available, otherwise + only the result of this request. + type: string + required: + - name + type: object + type: array + x-kubernetes-list-map-keys: + - name + x-kubernetes-list-type: map + limits: + additionalProperties: + anyOf: + - type: integer + - type: string + pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$ + x-kubernetes-int-or-string: true + description: |- + Limits describes the maximum amount of compute resources allowed. + More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/ + type: object + requests: + additionalProperties: + anyOf: + - type: integer + - type: string + pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$ + x-kubernetes-int-or-string: true + description: |- + Requests describes the minimum amount of compute resources required. + If Requests is omitted for a container, it defaults to Limits if that is explicitly specified, + otherwise to an implementation-defined value. Requests cannot exceed Limits. + More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/ + type: object + type: object service: description: service specifies the service configuration for the perses instance @@ -5730,8 +5821,11 @@ spec: annotations: additionalProperties: type: string + description: Annotations attached to the service for non-identifying + metadata type: object name: + description: Name of the Kubernetes service type: string type: object serviceAccountName: @@ -5766,14 +5860,15 @@ spec: properties: certPath: description: Path to Certificate + minLength: 1 type: string name: description: Name of basic auth k8s resource (when type is secret or configmap) type: string namespace: - description: Namsespace of certificate k8s resource (when - type is secret or configmap) + description: Namespace of certificate k8s resource (when type + is secret or configmap) type: string privateKeyPath: description: Path to Private key certificate @@ -5800,14 +5895,15 @@ spec: properties: certPath: description: Path to Certificate + minLength: 1 type: string name: description: Name of basic auth k8s resource (when type is secret or configmap) type: string namespace: - description: Namsespace of certificate k8s resource (when - type is secret or configmap) + description: Namespace of certificate k8s resource (when type + is secret or configmap) type: string privateKeyPath: description: Path to Private key certificate @@ -5870,6 +5966,8 @@ spec: description: PersesStatus defines the observed state of Perses properties: conditions: + description: Conditions represent the latest observations of the Perses + resource state items: description: Condition contains details for one aspect of the current state of this API Resource. diff --git a/bundle/manifests/perses.dev_persesdashboards.yaml b/bundle/manifests/perses.dev_persesdashboards.yaml index 65591f587..e2bd9b33c 100644 --- a/bundle/manifests/perses.dev_persesdashboards.yaml +++ b/bundle/manifests/perses.dev_persesdashboards.yaml @@ -71,7 +71,23 @@ spec: The data typed is available in Cue. properties: kind: + description: Kind is the type of the plugin (e.g., Panel, + Variable, Datasource, etc.). type: string + metadata: + description: Metadata is an optional field that contains + additional information such as version and registry of + the plugin. + properties: + registry: + description: 'Registry is optional. If not provided, + it means the default registry: "perses.dev".' + type: string + version: + description: Version is optional. If not provided, it + means the latest version available in the Perses instance. + type: string + type: object spec: x-kubernetes-preserve-unknown-fields: true required: @@ -143,7 +159,24 @@ spec: plugin: properties: kind: + description: Kind is the type of the plugin (e.g., Panel, + Variable, Datasource, etc.). type: string + metadata: + description: Metadata is an optional field that contains + additional information such as version and registry + of the plugin. + properties: + registry: + description: 'Registry is optional. If not provided, + it means the default registry: "perses.dev".' + type: string + version: + description: Version is optional. If not provided, + it means the latest version available in the Perses + instance. + type: string + type: object spec: x-kubernetes-preserve-unknown-fields: true required: @@ -160,7 +193,25 @@ spec: plugin: properties: kind: + description: Kind is the type of the plugin + (e.g., Panel, Variable, Datasource, etc.). type: string + metadata: + description: Metadata is an optional field + that contains additional information such + as version and registry of the plugin. + properties: + registry: + description: 'Registry is optional. If + not provided, it means the default registry: + "perses.dev".' + type: string + version: + description: Version is optional. If not + provided, it means the latest version + available in the Perses instance. + type: string + type: object spec: x-kubernetes-preserve-unknown-fields: true required: @@ -296,8 +347,10 @@ spec: metadata: type: object spec: + description: PersesDashboardSpec defines the desired state of PersesDashboard properties: config: + description: Perses dashboard configuration properties: datasources: additionalProperties: @@ -317,7 +370,24 @@ spec: The data typed is available in Cue. properties: kind: + description: Kind is the type of the plugin (e.g., Panel, + Variable, Datasource, etc.). type: string + metadata: + description: Metadata is an optional field that contains + additional information such as version and registry + of the plugin. + properties: + registry: + description: 'Registry is optional. If not provided, + it means the default registry: "perses.dev".' + type: string + version: + description: Version is optional. If not provided, + it means the latest version available in the Perses + instance. + type: string + type: object spec: x-kubernetes-preserve-unknown-fields: true required: @@ -389,7 +459,24 @@ spec: plugin: properties: kind: + description: Kind is the type of the plugin (e.g., + Panel, Variable, Datasource, etc.). type: string + metadata: + description: Metadata is an optional field that + contains additional information such as version + and registry of the plugin. + properties: + registry: + description: 'Registry is optional. If not provided, + it means the default registry: "perses.dev".' + type: string + version: + description: Version is optional. If not provided, + it means the latest version available in the + Perses instance. + type: string + type: object spec: x-kubernetes-preserve-unknown-fields: true required: @@ -406,7 +493,28 @@ spec: plugin: properties: kind: + description: Kind is the type of the plugin + (e.g., Panel, Variable, Datasource, + etc.). type: string + metadata: + description: Metadata is an optional field + that contains additional information + such as version and registry of the + plugin. + properties: + registry: + description: 'Registry is optional. + If not provided, it means the default + registry: "perses.dev".' + type: string + version: + description: Version is optional. + If not provided, it means the latest + version available in the Perses + instance. + type: string + type: object spec: x-kubernetes-preserve-unknown-fields: true required: @@ -455,10 +563,8 @@ spec: - panels type: object instanceSelector: - description: |- - A label selector is a label query over a set of resources. The result of matchLabels and - matchExpressions are ANDed. An empty label selector matches all objects. A null - label selector matches no objects. + description: InstanceSelector selects Perses instances where this + dashboard will be created properties: matchExpressions: description: matchExpressions is a list of label selector requirements. @@ -510,6 +616,8 @@ spec: description: PersesDashboardStatus defines the observed state of PersesDashboard properties: conditions: + description: Conditions represent the latest observations of the PersesDashboard + resource state items: description: Condition contains details for one aspect of the current state of this API Resource. diff --git a/bundle/manifests/perses.dev_persesdatasources.yaml b/bundle/manifests/perses.dev_persesdatasources.yaml index 1ce71b491..51ce12073 100644 --- a/bundle/manifests/perses.dev_persesdatasources.yaml +++ b/bundle/manifests/perses.dev_persesdatasources.yaml @@ -53,11 +53,12 @@ spec: secret or configmap) type: string namespace: - description: Namsespace of certificate k8s resource (when - type is secret or configmap) + description: Namespace of certificate k8s resource (when type + is secret or configmap) type: string password_path: description: Path to password + minLength: 1 type: string type: description: Type source type of secret @@ -68,6 +69,7 @@ spec: type: string username: description: Username for basic auth + minLength: 1 type: string required: - password_path @@ -111,8 +113,8 @@ spec: secret or configmap) type: string namespace: - description: Namsespace of certificate k8s resource (when - type is secret or configmap) + description: Namespace of certificate k8s resource (when type + is secret or configmap) type: string scopes: description: Scope specifies optional requested permissions. @@ -123,6 +125,7 @@ spec: description: |- TokenURL is the resource server's token endpoint URL. This is a constant specific to each server. + minLength: 1 type: string type: description: Type source type of secret @@ -143,13 +146,14 @@ spec: properties: certPath: description: Path to Certificate + minLength: 1 type: string name: description: Name of basic auth k8s resource (when type is secret or configmap) type: string namespace: - description: Namsespace of certificate k8s resource (when + description: Namespace of certificate k8s resource (when type is secret or configmap) type: string privateKeyPath: @@ -177,13 +181,14 @@ spec: properties: certPath: description: Path to Certificate + minLength: 1 type: string name: description: Name of basic auth k8s resource (when type is secret or configmap) type: string namespace: - description: Namsespace of certificate k8s resource (when + description: Namespace of certificate k8s resource (when type is secret or configmap) type: string privateKeyPath: @@ -221,7 +226,22 @@ spec: The data typed is available in Cue. properties: kind: + description: Kind is the type of the plugin (e.g., Panel, + Variable, Datasource, etc.). type: string + metadata: + description: Metadata is an optional field that contains additional + information such as version and registry of the plugin. + properties: + registry: + description: 'Registry is optional. If not provided, it + means the default registry: "perses.dev".' + type: string + version: + description: Version is optional. If not provided, it + means the latest version available in the Perses instance. + type: string + type: object spec: x-kubernetes-preserve-unknown-fields: true required: @@ -232,6 +252,8 @@ spec: - default - plugin type: object + required: + - config type: object status: description: PersesDatasourceStatus defines the observed state of PersesDatasource @@ -321,8 +343,10 @@ spec: metadata: type: object spec: + description: DatasourceSpec defines the desired state of a Perses datasource properties: client: + description: Client authentication and TLS configuration for the datasource properties: basicAuth: description: BasicAuth basic auth config for perses client @@ -332,11 +356,12 @@ spec: secret or configmap) type: string namespace: - description: Namsespace of certificate k8s resource (when - type is secret or configmap) + description: Namespace of certificate k8s resource (when type + is secret or configmap) type: string - password_path: + passwordPath: description: Path to password + minLength: 1 type: string type: description: Type source type of secret @@ -347,9 +372,10 @@ spec: type: string username: description: Username for basic auth + minLength: 1 type: string required: - - password_path + - passwordPath - type - username type: object @@ -390,8 +416,8 @@ spec: secret or configmap) type: string namespace: - description: Namsespace of certificate k8s resource (when - type is secret or configmap) + description: Namespace of certificate k8s resource (when type + is secret or configmap) type: string scopes: description: Scope specifies optional requested permissions. @@ -402,6 +428,7 @@ spec: description: |- TokenURL is the resource server's token endpoint URL. This is a constant specific to each server. + minLength: 1 type: string type: description: Type source type of secret @@ -422,13 +449,14 @@ spec: properties: certPath: description: Path to Certificate + minLength: 1 type: string name: description: Name of basic auth k8s resource (when type is secret or configmap) type: string namespace: - description: Namsespace of certificate k8s resource (when + description: Namespace of certificate k8s resource (when type is secret or configmap) type: string privateKeyPath: @@ -456,13 +484,14 @@ spec: properties: certPath: description: Path to Certificate + minLength: 1 type: string name: description: Name of basic auth k8s resource (when type is secret or configmap) type: string namespace: - description: Namsespace of certificate k8s resource (when + description: Namespace of certificate k8s resource (when type is secret or configmap) type: string privateKeyPath: @@ -484,6 +513,7 @@ spec: type: object type: object config: + description: Perses datasource configuration properties: default: type: boolean @@ -500,7 +530,22 @@ spec: The data typed is available in Cue. properties: kind: + description: Kind is the type of the plugin (e.g., Panel, + Variable, Datasource, etc.). type: string + metadata: + description: Metadata is an optional field that contains additional + information such as version and registry of the plugin. + properties: + registry: + description: 'Registry is optional. If not provided, it + means the default registry: "perses.dev".' + type: string + version: + description: Version is optional. If not provided, it + means the latest version available in the Perses instance. + type: string + type: object spec: x-kubernetes-preserve-unknown-fields: true required: @@ -512,10 +557,8 @@ spec: - plugin type: object instanceSelector: - description: |- - A label selector is a label query over a set of resources. The result of matchLabels and - matchExpressions are ANDed. An empty label selector matches all objects. A null - label selector matches no objects. + description: InstanceSelector selects Perses instances where this + datasource will be created properties: matchExpressions: description: matchExpressions is a list of label selector requirements. @@ -567,6 +610,8 @@ spec: description: PersesDatasourceStatus defines the observed state of PersesDatasource properties: conditions: + description: Conditions represent the latest observations of the PersesDatasource + resource state items: description: Condition contains details for one aspect of the current state of this API Resource. diff --git a/bundle/manifests/perses.dev_persesglobaldatasources.yaml b/bundle/manifests/perses.dev_persesglobaldatasources.yaml index 5e27a5b2b..3533929ea 100644 --- a/bundle/manifests/perses.dev_persesglobaldatasources.yaml +++ b/bundle/manifests/perses.dev_persesglobaldatasources.yaml @@ -51,8 +51,10 @@ spec: metadata: type: object spec: + description: DatasourceSpec defines the desired state of a Perses datasource properties: client: + description: Client authentication and TLS configuration for the datasource properties: basicAuth: description: BasicAuth basic auth config for perses client @@ -62,11 +64,12 @@ spec: secret or configmap) type: string namespace: - description: Namsespace of certificate k8s resource (when - type is secret or configmap) + description: Namespace of certificate k8s resource (when type + is secret or configmap) type: string - password_path: + passwordPath: description: Path to password + minLength: 1 type: string type: description: Type source type of secret @@ -77,9 +80,10 @@ spec: type: string username: description: Username for basic auth + minLength: 1 type: string required: - - password_path + - passwordPath - type - username type: object @@ -120,8 +124,8 @@ spec: secret or configmap) type: string namespace: - description: Namsespace of certificate k8s resource (when - type is secret or configmap) + description: Namespace of certificate k8s resource (when type + is secret or configmap) type: string scopes: description: Scope specifies optional requested permissions. @@ -132,6 +136,7 @@ spec: description: |- TokenURL is the resource server's token endpoint URL. This is a constant specific to each server. + minLength: 1 type: string type: description: Type source type of secret @@ -152,13 +157,14 @@ spec: properties: certPath: description: Path to Certificate + minLength: 1 type: string name: description: Name of basic auth k8s resource (when type is secret or configmap) type: string namespace: - description: Namsespace of certificate k8s resource (when + description: Namespace of certificate k8s resource (when type is secret or configmap) type: string privateKeyPath: @@ -186,13 +192,14 @@ spec: properties: certPath: description: Path to Certificate + minLength: 1 type: string name: description: Name of basic auth k8s resource (when type is secret or configmap) type: string namespace: - description: Namsespace of certificate k8s resource (when + description: Namespace of certificate k8s resource (when type is secret or configmap) type: string privateKeyPath: @@ -214,6 +221,7 @@ spec: type: object type: object config: + description: Perses datasource configuration properties: default: type: boolean @@ -230,7 +238,22 @@ spec: The data typed is available in Cue. properties: kind: + description: Kind is the type of the plugin (e.g., Panel, + Variable, Datasource, etc.). type: string + metadata: + description: Metadata is an optional field that contains additional + information such as version and registry of the plugin. + properties: + registry: + description: 'Registry is optional. If not provided, it + means the default registry: "perses.dev".' + type: string + version: + description: Version is optional. If not provided, it + means the latest version available in the Perses instance. + type: string + type: object spec: x-kubernetes-preserve-unknown-fields: true required: @@ -242,10 +265,8 @@ spec: - plugin type: object instanceSelector: - description: |- - A label selector is a label query over a set of resources. The result of matchLabels and - matchExpressions are ANDed. An empty label selector matches all objects. A null - label selector matches no objects. + description: InstanceSelector selects Perses instances where this + datasource will be created properties: matchExpressions: description: matchExpressions is a list of label selector requirements. @@ -298,6 +319,8 @@ spec: PersesGlobalDatasource properties: conditions: + description: Conditions represent the latest observations of the PersesGlobalDatasource + resource state items: description: Condition contains details for one aspect of the current state of this API Resource. diff --git a/deploy/perses/crds/perses.dev_perses.yaml b/deploy/perses/crds/perses.dev_perses.yaml index 6a3185141..d91e69dd8 100644 --- a/deploy/perses/crds/perses.dev_perses.yaml +++ b/deploy/perses/crds/perses.dev_perses.yaml @@ -971,11 +971,12 @@ spec: secret or configmap) type: string namespace: - description: Namsespace of certificate k8s resource (when - type is secret or configmap) + description: Namespace of certificate k8s resource (when type + is secret or configmap) type: string password_path: description: Path to password + minLength: 1 type: string type: description: Type source type of secret @@ -986,6 +987,7 @@ spec: type: string username: description: Username for basic auth + minLength: 1 type: string required: - password_path @@ -1029,8 +1031,8 @@ spec: secret or configmap) type: string namespace: - description: Namsespace of certificate k8s resource (when - type is secret or configmap) + description: Namespace of certificate k8s resource (when type + is secret or configmap) type: string scopes: description: Scope specifies optional requested permissions. @@ -1041,6 +1043,7 @@ spec: description: |- TokenURL is the resource server's token endpoint URL. This is a constant specific to each server. + minLength: 1 type: string type: description: Type source type of secret @@ -1061,13 +1064,14 @@ spec: properties: certPath: description: Path to Certificate + minLength: 1 type: string name: description: Name of basic auth k8s resource (when type is secret or configmap) type: string namespace: - description: Namsespace of certificate k8s resource (when + description: Namespace of certificate k8s resource (when type is secret or configmap) type: string privateKeyPath: @@ -1095,13 +1099,14 @@ spec: properties: certPath: description: Path to Certificate + minLength: 1 type: string name: description: Name of basic auth k8s resource (when type is secret or configmap) type: string namespace: - description: Namsespace of certificate k8s resource (when + description: Namespace of certificate k8s resource (when type is secret or configmap) type: string privateKeyPath: @@ -1127,14 +1132,10 @@ spec: api_prefix: description: |- Use it in case you want to prefix the API path. - Warning: This parameter does not work anymore since the version v0.51.0. The functionality has been broken when changing the plugin system and it will be fixed in a future version. - Until then, please avoid using it and avoid using a reverse proxy with a path prefix to serve Perses. - Issues raised about this: - - https://github.com/rhobs/perses/issues/3166 - - https://github.com/rhobs/perses/issues/2579 - - https://github.com/rhobs/perses/issues/2589 - - https://github.com/rhobs/perses/issues/3384 - - https://github.com/rhobs/perses/issues/3396 + This can be useful if you are running Perses behind a reverse proxy. + By default, the API is served with the path /api. + With this config, it will be served with the path /api + Example: "/perses" type: string dashboard: description: Dashboard contains the configuration for the dashboard @@ -2313,7 +2314,10 @@ spec: type: object type: object containerPort: + default: 8080 format: int32 + maximum: 65535 + minimum: 1 type: integer image: description: Image specifies the container image that should be used @@ -2687,14 +2691,15 @@ spec: properties: certPath: description: Path to Certificate + minLength: 1 type: string name: description: Name of basic auth k8s resource (when type is secret or configmap) type: string namespace: - description: Namsespace of certificate k8s resource (when - type is secret or configmap) + description: Namespace of certificate k8s resource (when type + is secret or configmap) type: string privateKeyPath: description: Path to Private key certificate @@ -2721,14 +2726,15 @@ spec: properties: certPath: description: Path to Certificate + minLength: 1 type: string name: description: Name of basic auth k8s resource (when type is secret or configmap) type: string namespace: - description: Namsespace of certificate k8s resource (when - type is secret or configmap) + description: Namespace of certificate k8s resource (when type + is secret or configmap) type: string privateKeyPath: description: Path to Private key certificate @@ -3805,11 +3811,12 @@ spec: secret or configmap) type: string namespace: - description: Namsespace of certificate k8s resource (when - type is secret or configmap) + description: Namespace of certificate k8s resource (when type + is secret or configmap) type: string - password_path: + passwordPath: description: Path to password + minLength: 1 type: string type: description: Type source type of secret @@ -3820,9 +3827,10 @@ spec: type: string username: description: Username for basic auth + minLength: 1 type: string required: - - password_path + - passwordPath - type - username type: object @@ -3863,8 +3871,8 @@ spec: secret or configmap) type: string namespace: - description: Namsespace of certificate k8s resource (when - type is secret or configmap) + description: Namespace of certificate k8s resource (when type + is secret or configmap) type: string scopes: description: Scope specifies optional requested permissions. @@ -3875,6 +3883,7 @@ spec: description: |- TokenURL is the resource server's token endpoint URL. This is a constant specific to each server. + minLength: 1 type: string type: description: Type source type of secret @@ -3895,13 +3904,14 @@ spec: properties: certPath: description: Path to Certificate + minLength: 1 type: string name: description: Name of basic auth k8s resource (when type is secret or configmap) type: string namespace: - description: Namsespace of certificate k8s resource (when + description: Namespace of certificate k8s resource (when type is secret or configmap) type: string privateKeyPath: @@ -3929,13 +3939,14 @@ spec: properties: certPath: description: Path to Certificate + minLength: 1 type: string name: description: Name of basic auth k8s resource (when type is secret or configmap) type: string namespace: - description: Namsespace of certificate k8s resource (when + description: Namespace of certificate k8s resource (when type is secret or configmap) type: string privateKeyPath: @@ -3957,18 +3968,15 @@ spec: type: object type: object config: + description: Perses server configuration properties: api_prefix: description: |- Use it in case you want to prefix the API path. - Warning: This parameter does not work anymore since the version v0.51.0. The functionality has been broken when changing the plugin system and it will be fixed in a future version. - Until then, please avoid using it and avoid using a reverse proxy with a path prefix to serve Perses. - Issues raised about this: - - https://github.com/rhobs/perses/issues/3166 - - https://github.com/rhobs/perses/issues/2579 - - https://github.com/rhobs/perses/issues/2589 - - https://github.com/rhobs/perses/issues/3384 - - https://github.com/rhobs/perses/issues/3396 + This can be useful if you are running Perses behind a reverse proxy. + By default, the API is served with the path /api. + With this config, it will be served with the path /api + Example: "/perses" type: string dashboard: description: Dashboard contains the configuration for the dashboard @@ -5147,7 +5155,10 @@ spec: type: object type: object containerPort: + default: 8080 format: int32 + maximum: 65535 + minimum: 1 type: integer image: description: Image specifies the container image that should be used @@ -5306,21 +5317,41 @@ spec: format: int32 type: integer type: object + logLevel: + description: LogLevel defines the log level for Perses. + enum: + - panic + - fatal + - error + - warning + - info + - debug + - trace + type: string + logMethodTrace: + description: |- + LogMethodTrace when true, includes the calling method as a field in the log. + It can be useful to see immediately where the log comes from. + type: boolean metadata: description: Metadata to add to deployed pods properties: annotations: additionalProperties: type: string + description: Annotations are key/value pairs attached to pods + for non-identifying metadata type: object labels: additionalProperties: type: string + description: Labels are key/value pairs attached to pods type: object type: object nodeSelector: additionalProperties: type: string + description: NodeSelector constrains pods to nodes with matching labels type: object podSecurityContext: description: |- @@ -5556,6 +5587,37 @@ spec: type: string type: object type: object + provisioning: + description: Provisioning configuration for provisioning secrets + properties: + secretRefs: + description: SecretRefs is a list of references to Kubernetes + secrets used for provisioning sensitive data. + items: + properties: + key: + description: The key of the secret to select from. Must + be a valid secret key. + type: string + name: + default: "" + description: |- + Name of the referent. + This field is effectively required, but due to backwards compatibility is + allowed to be empty. Instances of this type with an empty value here are + almost certainly wrong. + More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names + 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 + type: array + type: object readinessProbe: description: |- Probe describes a health check to be performed against a container to determine whether it is @@ -5712,6 +5774,66 @@ spec: replicas: format: int32 type: integer + resources: + description: Resources defines the compute resources configured for + the container. + properties: + claims: + description: |- + Claims lists the names of resources, defined in spec.resourceClaims, + that are used by this container. + + This field depends on the + DynamicResourceAllocation feature gate. + + This field is immutable. It can only be set for containers. + items: + description: ResourceClaim references one entry in PodSpec.ResourceClaims. + properties: + name: + description: |- + Name must match the name of one entry in pod.spec.resourceClaims of + the Pod where this field is used. It makes that resource available + inside a container. + type: string + request: + description: |- + Request is the name chosen for a request in the referenced claim. + If empty, everything from the claim is made available, otherwise + only the result of this request. + type: string + required: + - name + type: object + type: array + x-kubernetes-list-map-keys: + - name + x-kubernetes-list-type: map + limits: + additionalProperties: + anyOf: + - type: integer + - type: string + pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$ + x-kubernetes-int-or-string: true + description: |- + Limits describes the maximum amount of compute resources allowed. + More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/ + type: object + requests: + additionalProperties: + anyOf: + - type: integer + - type: string + pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$ + x-kubernetes-int-or-string: true + description: |- + Requests describes the minimum amount of compute resources required. + If Requests is omitted for a container, it defaults to Limits if that is explicitly specified, + otherwise to an implementation-defined value. Requests cannot exceed Limits. + More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/ + type: object + type: object service: description: service specifies the service configuration for the perses instance @@ -5719,8 +5841,11 @@ spec: annotations: additionalProperties: type: string + description: Annotations attached to the service for non-identifying + metadata type: object name: + description: Name of the Kubernetes service type: string type: object serviceAccountName: @@ -5755,14 +5880,15 @@ spec: properties: certPath: description: Path to Certificate + minLength: 1 type: string name: description: Name of basic auth k8s resource (when type is secret or configmap) type: string namespace: - description: Namsespace of certificate k8s resource (when - type is secret or configmap) + description: Namespace of certificate k8s resource (when type + is secret or configmap) type: string privateKeyPath: description: Path to Private key certificate @@ -5789,14 +5915,15 @@ spec: properties: certPath: description: Path to Certificate + minLength: 1 type: string name: description: Name of basic auth k8s resource (when type is secret or configmap) type: string namespace: - description: Namsespace of certificate k8s resource (when - type is secret or configmap) + description: Namespace of certificate k8s resource (when type + is secret or configmap) type: string privateKeyPath: description: Path to Private key certificate @@ -5859,6 +5986,8 @@ spec: description: PersesStatus defines the observed state of Perses properties: conditions: + description: Conditions represent the latest observations of the Perses + resource state items: description: Condition contains details for one aspect of the current state of this API Resource. @@ -5914,6 +6043,20 @@ spec: - type type: object type: array + provisioning: + description: Provisioning secrets versions + items: + description: SecretVersion represents a secret version + properties: + name: + type: string + version: + type: string + required: + - name + - version + type: object + type: array type: object type: object served: true diff --git a/deploy/perses/crds/perses.dev_persesdashboards.yaml b/deploy/perses/crds/perses.dev_persesdashboards.yaml index b3027388b..09eed432c 100644 --- a/deploy/perses/crds/perses.dev_persesdashboards.yaml +++ b/deploy/perses/crds/perses.dev_persesdashboards.yaml @@ -60,7 +60,23 @@ spec: The data typed is available in Cue. properties: kind: + description: Kind is the type of the plugin (e.g., Panel, + Variable, Datasource, etc.). type: string + metadata: + description: Metadata is an optional field that contains + additional information such as version and registry of + the plugin. + properties: + registry: + description: 'Registry is optional. If not provided, + it means the default registry: "perses.dev".' + type: string + version: + description: Version is optional. If not provided, it + means the latest version available in the Perses instance. + type: string + type: object spec: x-kubernetes-preserve-unknown-fields: true required: @@ -132,7 +148,24 @@ spec: plugin: properties: kind: + description: Kind is the type of the plugin (e.g., Panel, + Variable, Datasource, etc.). type: string + metadata: + description: Metadata is an optional field that contains + additional information such as version and registry + of the plugin. + properties: + registry: + description: 'Registry is optional. If not provided, + it means the default registry: "perses.dev".' + type: string + version: + description: Version is optional. If not provided, + it means the latest version available in the Perses + instance. + type: string + type: object spec: x-kubernetes-preserve-unknown-fields: true required: @@ -149,7 +182,25 @@ spec: plugin: properties: kind: + description: Kind is the type of the plugin + (e.g., Panel, Variable, Datasource, etc.). type: string + metadata: + description: Metadata is an optional field + that contains additional information such + as version and registry of the plugin. + properties: + registry: + description: 'Registry is optional. If + not provided, it means the default registry: + "perses.dev".' + type: string + version: + description: Version is optional. If not + provided, it means the latest version + available in the Perses instance. + type: string + type: object spec: x-kubernetes-preserve-unknown-fields: true required: @@ -285,8 +336,10 @@ spec: metadata: type: object spec: + description: PersesDashboardSpec defines the desired state of PersesDashboard properties: config: + description: Perses dashboard configuration properties: datasources: additionalProperties: @@ -306,7 +359,24 @@ spec: The data typed is available in Cue. properties: kind: + description: Kind is the type of the plugin (e.g., Panel, + Variable, Datasource, etc.). type: string + metadata: + description: Metadata is an optional field that contains + additional information such as version and registry + of the plugin. + properties: + registry: + description: 'Registry is optional. If not provided, + it means the default registry: "perses.dev".' + type: string + version: + description: Version is optional. If not provided, + it means the latest version available in the Perses + instance. + type: string + type: object spec: x-kubernetes-preserve-unknown-fields: true required: @@ -378,7 +448,24 @@ spec: plugin: properties: kind: + description: Kind is the type of the plugin (e.g., + Panel, Variable, Datasource, etc.). type: string + metadata: + description: Metadata is an optional field that + contains additional information such as version + and registry of the plugin. + properties: + registry: + description: 'Registry is optional. If not provided, + it means the default registry: "perses.dev".' + type: string + version: + description: Version is optional. If not provided, + it means the latest version available in the + Perses instance. + type: string + type: object spec: x-kubernetes-preserve-unknown-fields: true required: @@ -395,7 +482,28 @@ spec: plugin: properties: kind: + description: Kind is the type of the plugin + (e.g., Panel, Variable, Datasource, + etc.). type: string + metadata: + description: Metadata is an optional field + that contains additional information + such as version and registry of the + plugin. + properties: + registry: + description: 'Registry is optional. + If not provided, it means the default + registry: "perses.dev".' + type: string + version: + description: Version is optional. + If not provided, it means the latest + version available in the Perses + instance. + type: string + type: object spec: x-kubernetes-preserve-unknown-fields: true required: @@ -444,10 +552,8 @@ spec: - panels type: object instanceSelector: - description: |- - A label selector is a label query over a set of resources. The result of matchLabels and - matchExpressions are ANDed. An empty label selector matches all objects. A null - label selector matches no objects. + description: InstanceSelector selects Perses instances where this + dashboard will be created properties: matchExpressions: description: matchExpressions is a list of label selector requirements. @@ -499,6 +605,8 @@ spec: description: PersesDashboardStatus defines the observed state of PersesDashboard properties: conditions: + description: Conditions represent the latest observations of the PersesDashboard + resource state items: description: Condition contains details for one aspect of the current state of this API Resource. diff --git a/deploy/perses/crds/perses.dev_persesdatasources.yaml b/deploy/perses/crds/perses.dev_persesdatasources.yaml index d956ce389..9365f5d0f 100644 --- a/deploy/perses/crds/perses.dev_persesdatasources.yaml +++ b/deploy/perses/crds/perses.dev_persesdatasources.yaml @@ -52,11 +52,12 @@ spec: secret or configmap) type: string namespace: - description: Namsespace of certificate k8s resource (when - type is secret or configmap) + description: Namespace of certificate k8s resource (when type + is secret or configmap) type: string password_path: description: Path to password + minLength: 1 type: string type: description: Type source type of secret @@ -67,6 +68,7 @@ spec: type: string username: description: Username for basic auth + minLength: 1 type: string required: - password_path @@ -110,8 +112,8 @@ spec: secret or configmap) type: string namespace: - description: Namsespace of certificate k8s resource (when - type is secret or configmap) + description: Namespace of certificate k8s resource (when type + is secret or configmap) type: string scopes: description: Scope specifies optional requested permissions. @@ -122,6 +124,7 @@ spec: description: |- TokenURL is the resource server's token endpoint URL. This is a constant specific to each server. + minLength: 1 type: string type: description: Type source type of secret @@ -142,13 +145,14 @@ spec: properties: certPath: description: Path to Certificate + minLength: 1 type: string name: description: Name of basic auth k8s resource (when type is secret or configmap) type: string namespace: - description: Namsespace of certificate k8s resource (when + description: Namespace of certificate k8s resource (when type is secret or configmap) type: string privateKeyPath: @@ -176,13 +180,14 @@ spec: properties: certPath: description: Path to Certificate + minLength: 1 type: string name: description: Name of basic auth k8s resource (when type is secret or configmap) type: string namespace: - description: Namsespace of certificate k8s resource (when + description: Namespace of certificate k8s resource (when type is secret or configmap) type: string privateKeyPath: @@ -220,7 +225,22 @@ spec: The data typed is available in Cue. properties: kind: + description: Kind is the type of the plugin (e.g., Panel, + Variable, Datasource, etc.). type: string + metadata: + description: Metadata is an optional field that contains additional + information such as version and registry of the plugin. + properties: + registry: + description: 'Registry is optional. If not provided, it + means the default registry: "perses.dev".' + type: string + version: + description: Version is optional. If not provided, it + means the latest version available in the Perses instance. + type: string + type: object spec: x-kubernetes-preserve-unknown-fields: true required: @@ -231,6 +251,8 @@ spec: - default - plugin type: object + required: + - config type: object status: description: PersesDatasourceStatus defines the observed state of PersesDatasource @@ -320,8 +342,10 @@ spec: metadata: type: object spec: + description: DatasourceSpec defines the desired state of a Perses datasource properties: client: + description: Client authentication and TLS configuration for the datasource properties: basicAuth: description: BasicAuth basic auth config for perses client @@ -331,11 +355,12 @@ spec: secret or configmap) type: string namespace: - description: Namsespace of certificate k8s resource (when - type is secret or configmap) + description: Namespace of certificate k8s resource (when type + is secret or configmap) type: string - password_path: + passwordPath: description: Path to password + minLength: 1 type: string type: description: Type source type of secret @@ -346,9 +371,10 @@ spec: type: string username: description: Username for basic auth + minLength: 1 type: string required: - - password_path + - passwordPath - type - username type: object @@ -389,8 +415,8 @@ spec: secret or configmap) type: string namespace: - description: Namsespace of certificate k8s resource (when - type is secret or configmap) + description: Namespace of certificate k8s resource (when type + is secret or configmap) type: string scopes: description: Scope specifies optional requested permissions. @@ -401,6 +427,7 @@ spec: description: |- TokenURL is the resource server's token endpoint URL. This is a constant specific to each server. + minLength: 1 type: string type: description: Type source type of secret @@ -421,13 +448,14 @@ spec: properties: certPath: description: Path to Certificate + minLength: 1 type: string name: description: Name of basic auth k8s resource (when type is secret or configmap) type: string namespace: - description: Namsespace of certificate k8s resource (when + description: Namespace of certificate k8s resource (when type is secret or configmap) type: string privateKeyPath: @@ -455,13 +483,14 @@ spec: properties: certPath: description: Path to Certificate + minLength: 1 type: string name: description: Name of basic auth k8s resource (when type is secret or configmap) type: string namespace: - description: Namsespace of certificate k8s resource (when + description: Namespace of certificate k8s resource (when type is secret or configmap) type: string privateKeyPath: @@ -483,6 +512,7 @@ spec: type: object type: object config: + description: Perses datasource configuration properties: default: type: boolean @@ -499,7 +529,22 @@ spec: The data typed is available in Cue. properties: kind: + description: Kind is the type of the plugin (e.g., Panel, + Variable, Datasource, etc.). type: string + metadata: + description: Metadata is an optional field that contains additional + information such as version and registry of the plugin. + properties: + registry: + description: 'Registry is optional. If not provided, it + means the default registry: "perses.dev".' + type: string + version: + description: Version is optional. If not provided, it + means the latest version available in the Perses instance. + type: string + type: object spec: x-kubernetes-preserve-unknown-fields: true required: @@ -511,10 +556,8 @@ spec: - plugin type: object instanceSelector: - description: |- - A label selector is a label query over a set of resources. The result of matchLabels and - matchExpressions are ANDed. An empty label selector matches all objects. A null - label selector matches no objects. + description: InstanceSelector selects Perses instances where this + datasource will be created properties: matchExpressions: description: matchExpressions is a list of label selector requirements. @@ -566,6 +609,8 @@ spec: description: PersesDatasourceStatus defines the observed state of PersesDatasource properties: conditions: + description: Conditions represent the latest observations of the PersesDatasource + resource state items: description: Condition contains details for one aspect of the current state of this API Resource. diff --git a/deploy/perses/crds/perses.dev_persesglobaldatasources.yaml b/deploy/perses/crds/perses.dev_persesglobaldatasources.yaml index 5b683a64d..01daec3b1 100644 --- a/deploy/perses/crds/perses.dev_persesglobaldatasources.yaml +++ b/deploy/perses/crds/perses.dev_persesglobaldatasources.yaml @@ -40,8 +40,10 @@ spec: metadata: type: object spec: + description: DatasourceSpec defines the desired state of a Perses datasource properties: client: + description: Client authentication and TLS configuration for the datasource properties: basicAuth: description: BasicAuth basic auth config for perses client @@ -51,11 +53,12 @@ spec: secret or configmap) type: string namespace: - description: Namsespace of certificate k8s resource (when - type is secret or configmap) + description: Namespace of certificate k8s resource (when type + is secret or configmap) type: string - password_path: + passwordPath: description: Path to password + minLength: 1 type: string type: description: Type source type of secret @@ -66,9 +69,10 @@ spec: type: string username: description: Username for basic auth + minLength: 1 type: string required: - - password_path + - passwordPath - type - username type: object @@ -109,8 +113,8 @@ spec: secret or configmap) type: string namespace: - description: Namsespace of certificate k8s resource (when - type is secret or configmap) + description: Namespace of certificate k8s resource (when type + is secret or configmap) type: string scopes: description: Scope specifies optional requested permissions. @@ -121,6 +125,7 @@ spec: description: |- TokenURL is the resource server's token endpoint URL. This is a constant specific to each server. + minLength: 1 type: string type: description: Type source type of secret @@ -141,13 +146,14 @@ spec: properties: certPath: description: Path to Certificate + minLength: 1 type: string name: description: Name of basic auth k8s resource (when type is secret or configmap) type: string namespace: - description: Namsespace of certificate k8s resource (when + description: Namespace of certificate k8s resource (when type is secret or configmap) type: string privateKeyPath: @@ -175,13 +181,14 @@ spec: properties: certPath: description: Path to Certificate + minLength: 1 type: string name: description: Name of basic auth k8s resource (when type is secret or configmap) type: string namespace: - description: Namsespace of certificate k8s resource (when + description: Namespace of certificate k8s resource (when type is secret or configmap) type: string privateKeyPath: @@ -203,6 +210,7 @@ spec: type: object type: object config: + description: Perses datasource configuration properties: default: type: boolean @@ -219,7 +227,22 @@ spec: The data typed is available in Cue. properties: kind: + description: Kind is the type of the plugin (e.g., Panel, + Variable, Datasource, etc.). type: string + metadata: + description: Metadata is an optional field that contains additional + information such as version and registry of the plugin. + properties: + registry: + description: 'Registry is optional. If not provided, it + means the default registry: "perses.dev".' + type: string + version: + description: Version is optional. If not provided, it + means the latest version available in the Perses instance. + type: string + type: object spec: x-kubernetes-preserve-unknown-fields: true required: @@ -231,10 +254,8 @@ spec: - plugin type: object instanceSelector: - description: |- - A label selector is a label query over a set of resources. The result of matchLabels and - matchExpressions are ANDed. An empty label selector matches all objects. A null - label selector matches no objects. + description: InstanceSelector selects Perses instances where this + datasource will be created properties: matchExpressions: description: matchExpressions is a list of label selector requirements. @@ -287,6 +308,8 @@ spec: PersesGlobalDatasource properties: conditions: + description: Conditions represent the latest observations of the PersesGlobalDatasource + resource state items: description: Condition contains details for one aspect of the current state of this API Resource. diff --git a/go.mod b/go.mod index 415434367..dd43550eb 100644 --- a/go.mod +++ b/go.mod @@ -17,22 +17,22 @@ require ( github.com/perses/plugins/timeserieschart v0.12.0-rc.0 github.com/pkg/errors v0.9.1 github.com/prometheus-operator/prometheus-operator/pkg/apis/monitoring v0.87.0 - github.com/prometheus/common v0.67.4 + github.com/prometheus/common v0.67.5 github.com/rhobs/obo-prometheus-operator v0.87.0-rhobs1 github.com/rhobs/obo-prometheus-operator/pkg/apis/monitoring v0.87.0-rhobs1 github.com/rhobs/observability-operator/pkg/apis v0.0.0-20251009091129-76135c924ed6 - github.com/rhobs/perses v0.0.0-20260113083341-bce6f0039b5d - github.com/rhobs/perses-operator v0.1.10-0.20260119104604-801af29f7716 + github.com/rhobs/perses v0.0.0-20260211103119-9d12bc08ae5c + github.com/rhobs/perses-operator v0.1.10-0.20260211150843-54aef905ff3b github.com/stretchr/testify v1.11.1 go.uber.org/zap v1.27.1 golang.org/x/exp v0.0.0-20251219203646-944ab1f22d93 - golang.org/x/mod v0.31.0 + golang.org/x/mod v0.32.0 gopkg.in/yaml.v3 v3.0.1 gotest.tools/v3 v3.5.2 k8s.io/api v0.35.0 k8s.io/apiextensions-apiserver v0.34.3 k8s.io/apimachinery v0.35.0 - k8s.io/apiserver v0.34.3 + k8s.io/apiserver v0.35.0 k8s.io/client-go v0.35.0 k8s.io/component-base v0.35.0 k8s.io/utils v0.0.0-20251002143259-bc988d571ff4 @@ -92,9 +92,9 @@ require ( github.com/go-openapi/validate v0.25.0 // indirect github.com/go-viper/mapstructure/v2 v2.4.0 // indirect github.com/gogo/protobuf v1.3.2 // indirect - github.com/golang-jwt/jwt/v5 v5.3.0 // indirect + github.com/golang-jwt/jwt/v5 v5.3.1 // indirect github.com/google/btree v1.1.3 // indirect - github.com/google/cel-go v0.26.1 // indirect + github.com/google/cel-go v0.27.0 // indirect github.com/google/gnostic-models v0.7.0 // indirect github.com/google/uuid v1.6.0 // indirect github.com/gorilla/websocket v1.5.4-0.20250319132907-e064f32e3674 // indirect @@ -121,7 +121,7 @@ require ( github.com/novln/docker-parser v1.0.0 // indirect github.com/oklog/ulid v1.3.1 // indirect github.com/opencontainers/go-digest v1.0.0 // indirect - github.com/perses/common v0.28.1 // indirect + github.com/perses/common v0.29.1 // indirect github.com/pmezard/go-difflib v1.0.1-0.20181226105442-5d4384ee4fb2 // indirect github.com/prometheus-community/prom-label-proxy v0.12.1 // indirect github.com/prometheus/alertmanager v0.29.0 // indirect @@ -135,18 +135,17 @@ require ( github.com/sirupsen/logrus v1.9.4 // indirect github.com/spf13/cobra v1.10.2 // indirect github.com/spf13/pflag v1.0.10 // indirect - github.com/stoewer/go-strcase v1.3.1 // indirect github.com/stretchr/objx v0.5.2 // indirect github.com/valyala/bytebufferpool v1.0.0 // indirect github.com/valyala/fasttemplate v1.2.2 // indirect github.com/x448/float16 v0.8.4 // indirect - github.com/zitadel/oidc/v3 v3.45.1 // indirect - github.com/zitadel/schema v1.3.1 // indirect + github.com/zitadel/oidc/v3 v3.45.3 // indirect + github.com/zitadel/schema v1.3.2 // indirect go.mongodb.org/mongo-driver v1.17.4 // indirect go.opentelemetry.io/auto/sdk v1.2.1 // indirect go.opentelemetry.io/collector/featuregate v1.42.0 // indirect go.opentelemetry.io/contrib/otelconf v0.18.0 // indirect - go.opentelemetry.io/otel v1.38.0 // indirect + go.opentelemetry.io/otel v1.39.0 // indirect go.opentelemetry.io/otel/exporters/otlp/otlplog/otlploggrpc v0.14.0 // indirect go.opentelemetry.io/otel/exporters/otlp/otlplog/otlploghttp v0.14.0 // indirect go.opentelemetry.io/otel/exporters/otlp/otlpmetric/otlpmetricgrpc v1.38.0 // indirect @@ -159,29 +158,29 @@ require ( go.opentelemetry.io/otel/exporters/stdout/stdoutmetric v1.38.0 // indirect go.opentelemetry.io/otel/exporters/stdout/stdouttrace v1.38.0 // indirect go.opentelemetry.io/otel/log v0.14.0 // indirect - go.opentelemetry.io/otel/metric v1.38.0 // indirect - go.opentelemetry.io/otel/sdk v1.38.0 // indirect + go.opentelemetry.io/otel/metric v1.39.0 // indirect + go.opentelemetry.io/otel/sdk v1.39.0 // indirect go.opentelemetry.io/otel/sdk/log v0.14.0 // indirect - go.opentelemetry.io/otel/sdk/metric v1.38.0 // indirect - go.opentelemetry.io/otel/trace v1.38.0 // indirect + go.opentelemetry.io/otel/sdk/metric v1.39.0 // indirect + go.opentelemetry.io/otel/trace v1.39.0 // indirect go.opentelemetry.io/proto/otlp v1.7.1 // indirect go.uber.org/atomic v1.11.0 // indirect go.uber.org/multierr v1.11.0 // indirect go.yaml.in/yaml/v2 v2.4.3 // indirect go.yaml.in/yaml/v3 v3.0.4 // indirect - golang.org/x/crypto v0.46.0 // indirect - golang.org/x/net v0.48.0 // indirect - golang.org/x/oauth2 v0.34.0 // indirect + golang.org/x/crypto v0.47.0 // indirect + golang.org/x/net v0.49.0 // indirect + golang.org/x/oauth2 v0.35.0 // indirect golang.org/x/sync v0.19.0 // indirect - golang.org/x/sys v0.39.0 // indirect - golang.org/x/term v0.38.0 // indirect - golang.org/x/text v0.32.0 // indirect + golang.org/x/sys v0.40.0 // indirect + golang.org/x/term v0.39.0 // indirect + golang.org/x/text v0.33.0 // indirect golang.org/x/time v0.14.0 // indirect gomodules.xyz/jsonpatch/v2 v2.5.0 // indirect google.golang.org/genproto/googleapis/api v0.0.0-20250929231259-57b25ae835d4 // indirect google.golang.org/genproto/googleapis/rpc v0.0.0-20251006185510-65f7160b3a87 // indirect google.golang.org/grpc v1.76.0 // indirect - google.golang.org/protobuf v1.36.10 // indirect + google.golang.org/protobuf v1.36.11 // indirect gopkg.in/evanphx/json-patch.v4 v4.13.0 // indirect gopkg.in/inf.v0 v0.9.1 // indirect gopkg.in/yaml.v2 v2.4.0 // indirect diff --git a/go.sum b/go.sum index 80da54613..14aad55c1 100644 --- a/go.sum +++ b/go.sum @@ -213,8 +213,8 @@ github.com/goccy/go-yaml v1.19.0/go.mod h1:XBurs7gK8ATbW4ZPGKgcbrY1Br56PdM69F7Lk github.com/gogo/protobuf v1.1.1/go.mod h1:r8qH/GZQm5c6nD/R0oafs1akxWv10x8SbQlK7atdtwQ= github.com/gogo/protobuf v1.3.2 h1:Ov1cvc58UF3b5XjBnZv7+opcTcQFZebYjWzi34vdm4Q= github.com/gogo/protobuf v1.3.2/go.mod h1:P1XiOD3dCwIKUDQYPy72D8LYyHL2YPYrpS2s69NZV8Q= -github.com/golang-jwt/jwt/v5 v5.3.0 h1:pv4AsKCKKZuqlgs5sUmn4x8UlGa0kEVt/puTpKx9vvo= -github.com/golang-jwt/jwt/v5 v5.3.0/go.mod h1:fxCRLWMO43lRc8nhHWY6LGqRcf+1gQWArsqaEUEa5bE= +github.com/golang-jwt/jwt/v5 v5.3.1 h1:kYf81DTWFe7t+1VvL7eS+jKFVWaUnK9cB1qbwn63YCY= +github.com/golang-jwt/jwt/v5 v5.3.1/go.mod h1:fxCRLWMO43lRc8nhHWY6LGqRcf+1gQWArsqaEUEa5bE= github.com/golang/protobuf v1.2.0/go.mod h1:6lQm79b+lXiMfvg/cZm0SGofjICqVBUtrP5yJMmIC1U= github.com/golang/protobuf v1.3.1/go.mod h1:6lQm79b+lXiMfvg/cZm0SGofjICqVBUtrP5yJMmIC1U= github.com/golang/protobuf v1.3.2/go.mod h1:6lQm79b+lXiMfvg/cZm0SGofjICqVBUtrP5yJMmIC1U= @@ -224,8 +224,8 @@ github.com/golang/snappy v1.0.0 h1:Oy607GVXHs7RtbggtPBnr2RmDArIsAefDwvrdWvRhGs= github.com/golang/snappy v1.0.0/go.mod h1:/XxbfmMg8lxefKM7IXC3fBNl/7bRcc72aCRzEWrmP2Q= github.com/google/btree v1.1.3 h1:CVpQJjYgC4VbzxeGVHfvZrv1ctoYCAI8vbl07Fcxlyg= github.com/google/btree v1.1.3/go.mod h1:qOPhT0dTNdNzV6Z/lhRX0YXUafgPLFUh+gZMl761Gm4= -github.com/google/cel-go v0.26.1 h1:iPbVVEdkhTX++hpe3lzSk7D3G3QSYqLGoHOcEio+UXQ= -github.com/google/cel-go v0.26.1/go.mod h1:A9O8OU9rdvrK5MQyrqfIxo1a0u4g3sF8KB6PUIaryMM= +github.com/google/cel-go v0.27.0 h1:e7ih85+4qVrBuqQWTW4FKSqZYokVuc3HnhH5keboFTo= +github.com/google/cel-go v0.27.0/go.mod h1:tTJ11FWqnhw5KKpnWpvW9CJC3Y9GK4EIS0WXnBbebzw= github.com/google/gnostic-models v0.7.0 h1:qwTtogB15McXDaNqTZdzPJRHvaVJlAl+HVQnLmJEJxo= github.com/google/gnostic-models v0.7.0/go.mod h1:whL5G0m6dmc5cPxKc5bdKdEN3UjI7OUGxBlw57miDrQ= github.com/google/go-cmp v0.3.1/go.mod h1:8QqcDgzrUqlUb/G2PQTWiueGozuR1884gddMywk6iLU= @@ -238,8 +238,8 @@ github.com/google/go-querystring v1.1.0/go.mod h1:Kcdr2DB4koayq7X8pmAG4sNG59So17 github.com/google/gofuzz v1.0.0/go.mod h1:dBl0BpW6vV/+mYPU4Po3pmUjxk6FQPldtuIdl/M65Eg= github.com/google/gofuzz v1.2.0 h1:xRy4A+RhZaiKjJ1bPfwQ8sedCA+YS2YcCHW6ec7JMi0= github.com/google/gofuzz v1.2.0/go.mod h1:dBl0BpW6vV/+mYPU4Po3pmUjxk6FQPldtuIdl/M65Eg= -github.com/google/pprof v0.0.0-20250923004556-9e5a51aed1e8 h1:ZI8gCoCjGzPsum4L21jHdQs8shFBIQih1TM9Rd/c+EQ= -github.com/google/pprof v0.0.0-20250923004556-9e5a51aed1e8/go.mod h1:I6V7YzU0XDpsHqbsyrghnFZLO1gwK6NPTNvmetQIk9U= +github.com/google/pprof v0.0.0-20260115054156-294ebfa9ad83 h1:z2ogiKUYzX5Is6zr/vP9vJGqPwcdqsWjOt+V8J7+bTc= +github.com/google/pprof v0.0.0-20260115054156-294ebfa9ad83/go.mod h1:MxpfABSjhmINe3F1It9d+8exIHFvUqtLIRCdOGNXqiI= github.com/google/s2a-go v0.1.9 h1:LGD7gtMgezd8a/Xak7mEWL0PjoTQFvpRudN895yqKW0= github.com/google/s2a-go v0.1.9/go.mod h1:YA0Ei2ZQL3acow2O62kdp9UlnvMmU7kA6Eutn0dXayM= github.com/google/uuid v1.6.0 h1:NIvaJDMOsjHA8n1jAhLSgzrAzy1Hgr+hNrb57e+94F0= @@ -364,10 +364,10 @@ github.com/oklog/ulid v1.3.1/go.mod h1:CirwcVhetQ6Lv90oh/F+FBtV6XMibvdAFo93nm5qn github.com/oklog/ulid/v2 v2.1.1 h1:suPZ4ARWLOJLegGFiZZ1dFAkqzhMjL3J1TzI+5wHz8s= github.com/oklog/ulid/v2 v2.1.1/go.mod h1:rcEKHmBBKfef9DhnvX7y1HZBYxjXb0cP5ExxNsTT1QQ= github.com/onsi/ginkgo v1.16.4 h1:29JGrr5oVBm5ulCWet69zQkzWipVXIol6ygQUe/EzNc= -github.com/onsi/ginkgo/v2 v2.27.2 h1:LzwLj0b89qtIy6SSASkzlNvX6WktqurSHwkk2ipF/Ns= -github.com/onsi/ginkgo/v2 v2.27.2/go.mod h1:ArE1D/XhNXBXCBkKOLkbsb2c81dQHCRcF5zwn/ykDRo= -github.com/onsi/gomega v1.38.2 h1:eZCjf2xjZAqe+LeWvKb5weQ+NcPwX84kqJ0cZNxok2A= -github.com/onsi/gomega v1.38.2/go.mod h1:W2MJcYxRGV63b418Ai34Ud0hEdTVXq9NW9+Sx6uXf3k= +github.com/onsi/ginkgo/v2 v2.28.0 h1:Rrf+lVLmtlBIKv6KrIGJCjyY8N36vDVcutbGJkyqjJc= +github.com/onsi/ginkgo/v2 v2.28.0/go.mod h1:ArE1D/XhNXBXCBkKOLkbsb2c81dQHCRcF5zwn/ykDRo= +github.com/onsi/gomega v1.39.1 h1:1IJLAad4zjPn2PsnhH70V4DKRFlrCzGBNrNaru+Vf28= +github.com/onsi/gomega v1.39.1/go.mod h1:hL6yVALoTOxeWudERyfppUcZXjMwIMLnuSfruD2lcfg= github.com/open-telemetry/opentelemetry-operator v0.135.0 h1:YS2WL6r3emKRDRwZ63ZK8QSpJthYC/nUCIIzNyslZZE= github.com/open-telemetry/opentelemetry-operator v0.135.0/go.mod h1:RuM1oKvL0W9gNONH1mpV/1g08jGu7LugSl0BOkhuQhk= github.com/opencontainers/go-digest v1.0.0 h1:apOUWs51W5PlhuyGyz9FCeeBIOUDA/6nW8Oi/yOhh5U= @@ -382,8 +382,8 @@ github.com/operator-framework/operator-lib v0.18.0 h1:6OaWemt/CuyrjFMkLyk4O8Vj4C github.com/operator-framework/operator-lib v0.18.0/go.mod h1:EWS6xGYBcMn04wj81j0bluAYbFHl3cJcar++poQMzqE= github.com/ovh/go-ovh v1.9.0 h1:6K8VoL3BYjVV3In9tPJUdT7qMx9h0GExN9EXx1r2kKE= github.com/ovh/go-ovh v1.9.0/go.mod h1:cTVDnl94z4tl8pP1uZ/8jlVxntjSIf09bNcQ5TJSC7c= -github.com/perses/common v0.28.1 h1:GNqv6eM5QL7d4RQvUnfLh0Zfkoxr/+fOb0Fwm8zIkLY= -github.com/perses/common v0.28.1/go.mod h1:4dtPoryEAcBacDMwYWvlVjctvut8VbsiOjDzJArGDPg= +github.com/perses/common v0.29.1 h1:Pq+1Et9sW+2S2ZQ1W4uLktx8mNzWwCsuUMb1L20+wMU= +github.com/perses/common v0.29.1/go.mod h1:pvg9bGOBqE8b9w84sgedPaixGuyeYRn1zq3eGZWRqs0= github.com/perses/perses v0.53.0-rc.0 h1:f3V1j6EqnKyXUY0mNt4Zp/T6+5U/5SjtCzLHxj9sJDQ= github.com/perses/perses v0.53.0-rc.0/go.mod h1:q+gB4M2yT//cO6GlCjhOTJLDoSrqtkMLul72Z0WOueI= github.com/perses/plugins/prometheus v0.57.0-rc.0 h1:0yHyYBEEUfTKsdVtNpKGUlhyGFt/1IJYVlXRo6Bpp7M= @@ -421,8 +421,8 @@ github.com/prometheus/client_model v0.6.2 h1:oBsgwpGs7iVziMvrGhE53c/GrLUsZdHnqNw github.com/prometheus/client_model v0.6.2/go.mod h1:y3m2F6Gdpfy6Ut/GBsUqTWZqCUvMVzSfMLjcu6wAwpE= github.com/prometheus/common v0.4.1/go.mod h1:TNfzLD0ON7rHzMJeJkieUDPYmFC7Snx/y86RQel1bk4= github.com/prometheus/common v0.9.1/go.mod h1:yhUN8i9wzaXS3w1O07YhxHEBxD+W35wd8bs7vj7HSQ4= -github.com/prometheus/common v0.67.4 h1:yR3NqWO1/UyO1w2PhUvXlGQs/PtFmoveVO0KZ4+Lvsc= -github.com/prometheus/common v0.67.4/go.mod h1:gP0fq6YjjNCLssJCQp0yk4M8W6ikLURwkdd/YKtTbyI= +github.com/prometheus/common v0.67.5 h1:pIgK94WWlQt1WLwAC5j2ynLaBRDiinoAb86HZHTUGI4= +github.com/prometheus/common v0.67.5/go.mod h1:SjE/0MzDEEAyrdr5Gqc6G+sXI67maCxzaT3A2+HqjUw= github.com/prometheus/otlptranslator v1.0.0 h1:s0LJW/iN9dkIH+EnhiD3BlkkP5QVIUVEoIwkU+A6qos= github.com/prometheus/otlptranslator v1.0.0/go.mod h1:vRYWnXvI6aWGpsdY/mOT/cbeVRBlPWtBNDb7kGR3uKM= github.com/prometheus/procfs v0.0.0-20181005140218-185b4288413d/go.mod h1:c3At6R/oaqEKCNdg8wHV1ftS6bRYblBhIjjI8uT2IGk= @@ -440,10 +440,10 @@ github.com/rhobs/obo-prometheus-operator/pkg/apis/monitoring v0.87.0-rhobs1 h1:f github.com/rhobs/obo-prometheus-operator/pkg/apis/monitoring v0.87.0-rhobs1/go.mod h1:amf29isbT7UfgLWDCamPG6jaELHKoXyCd25Nx3DBlNY= github.com/rhobs/obo-prometheus-operator/pkg/client v0.87.0-rhobs1 h1:/3w2Mky/kVuzNH19uT6vsSgmCuZwEFftjF0A7LuX+Mo= github.com/rhobs/obo-prometheus-operator/pkg/client v0.87.0-rhobs1/go.mod h1:FMfzfWcCGBtflg+gT1SNchG243iywu015rJskh1U+/c= -github.com/rhobs/perses v0.0.0-20260113083341-bce6f0039b5d h1:hagDxkfSvy6vGxH0qPFIOQoPjdblKCfNAhjqCgsuy7Q= -github.com/rhobs/perses v0.0.0-20260113083341-bce6f0039b5d/go.mod h1:t5HVls3hnD2zn9pg/sjVd3n1ULHUizAn69lX7Wf9wUE= -github.com/rhobs/perses-operator v0.1.10-0.20260119104604-801af29f7716 h1:fFiorvTDcBHhT/FSfrlEHrtHKg+p8h7nhPzP6bRY93c= -github.com/rhobs/perses-operator v0.1.10-0.20260119104604-801af29f7716/go.mod h1:7XmXHWocDHqOerp3lmggbQzbBZ9VkK1+FCv/LGGMHvE= +github.com/rhobs/perses v0.0.0-20260211103119-9d12bc08ae5c h1:zxIoMuoUc0XKAMofEjcjnd/B3+aMTIge3WlIp4Z5Zcw= +github.com/rhobs/perses v0.0.0-20260211103119-9d12bc08ae5c/go.mod h1:i+UfD/baRJH2VtuF2YHxhmvo0+tmsAd8nTIUs2lrx7Y= +github.com/rhobs/perses-operator v0.1.10-0.20260211150843-54aef905ff3b h1:GAgKbSCZPT3WhJttcEzqteUg1F/TfZO2FGIeseuGEwk= +github.com/rhobs/perses-operator v0.1.10-0.20260211150843-54aef905ff3b/go.mod h1:RFxfrcMF9ZaMAWiQ4dI3AssTZpARdmA9Fe3uSldvaTE= github.com/rogpeppe/go-internal v1.14.1 h1:UQB4HGPB6osV0SQTLymcB4TgvyWu6ZyliaW0tI/otEQ= github.com/rogpeppe/go-internal v1.14.1/go.mod h1:MaRKkUm5W0goXpeCfT7UZI6fk/L7L7so1lCWt35ZSgc= github.com/russross/blackfriday/v2 v2.1.0/go.mod h1:+Rmxgy9KzJVeS9/2gXHxylqXiyQDYRxCVz55jmeOWTM= @@ -463,21 +463,14 @@ github.com/spf13/pflag v1.0.10 h1:4EBh2KAYBwaONj6b2Ye1GiHfwjqyROoF4RwYO+vPwFk= github.com/spf13/pflag v1.0.10/go.mod h1:McXfInJRrz4CZXVZOBLb0bTZqETkiAhM9Iw0y3An2Bg= github.com/stackitcloud/stackit-sdk-go/core v0.17.3 h1:GsZGmRRc/3GJLmCUnsZswirr5wfLRrwavbnL/renOqg= github.com/stackitcloud/stackit-sdk-go/core v0.17.3/go.mod h1:HBCXJGPgdRulplDzhrmwC+Dak9B/x0nzNtmOpu+1Ahg= -github.com/stoewer/go-strcase v1.3.1 h1:iS0MdW+kVTxgMoE1LAZyMiYJFKlOzLooE4MxjirtkAs= -github.com/stoewer/go-strcase v1.3.1/go.mod h1:fAH5hQ5pehh+j3nZfvwdk2RgEgQjAoM8wodgtPmh1xo= github.com/stretchr/objx v0.1.0/go.mod h1:HFkY916IF+rwdDfMAkV7OtwuqBVzrE8GR6GFx+wExME= github.com/stretchr/objx v0.1.1/go.mod h1:HFkY916IF+rwdDfMAkV7OtwuqBVzrE8GR6GFx+wExME= -github.com/stretchr/objx v0.4.0/go.mod h1:YvHI0jy2hoMjB+UWwv71VJQ9isScKT/TqJzVSSt89Yw= -github.com/stretchr/objx v0.5.0/go.mod h1:Yh+to48EsGEfYuaHDzXPcE3xhTkx73EhmCGUpEOglKo= github.com/stretchr/objx v0.5.2 h1:xuMeJ0Sdp5ZMRXx/aWO6RZxdr3beISkG5/G/aIRr3pY= github.com/stretchr/objx v0.5.2/go.mod h1:FRsXN1f5AsAjCGJKqEizvkpNtU+EGNCLh3NxZ/8L+MA= github.com/stretchr/testify v1.2.2/go.mod h1:a8OnRcib4nhh0OaRAV+Yts87kKdq0PP7pXfy6kDkUVs= github.com/stretchr/testify v1.3.0/go.mod h1:M5WIy9Dh21IEIfnGCwXGc5bZfKNJtfHm1UVUgZn+9EI= github.com/stretchr/testify v1.4.0/go.mod h1:j7eGeouHqKxXV5pUuKE4zz7dFj8WfuZ+81PSLYec5m4= github.com/stretchr/testify v1.5.1/go.mod h1:5W2xD1RspED5o8YsWQXVCued0rvSQ+mT+I5cxcmMvtA= -github.com/stretchr/testify v1.7.1/go.mod h1:6Fq8oRcR53rry900zMqJjRRixrwX3KX962/h/Wwjteg= -github.com/stretchr/testify v1.8.0/go.mod h1:yNjHg4UonilssWZ8iaSj1OCr/vHnekPRkoO+kdMU+MU= -github.com/stretchr/testify v1.8.1/go.mod h1:w2LPCIKwWwSfY2zedu0+kehJoqGctiVI29o6fzry7u4= github.com/stretchr/testify v1.11.1 h1:7s2iGBzp5EwR7/aIZr8ao5+dra3wiQyKjjFuvgVKu7U= github.com/stretchr/testify v1.11.1/go.mod h1:wZwfW3scLgRK+23gO65QZefKpKQRnfz6sD981Nm4B6U= github.com/valyala/bytebufferpool v1.0.0 h1:GqA5TC/0021Y/b9FG4Oi9Mr3q7XYx6KllzawFIhcdPw= @@ -490,10 +483,10 @@ github.com/x448/float16 v0.8.4 h1:qLwI1I70+NjRFUR3zs1JPUCgaCXSh3SW62uAKT1mSBM= github.com/x448/float16 v0.8.4/go.mod h1:14CWIYCyZA/cWjXOioeEpHeN/83MdbZDRQHoFcYsOfg= github.com/yuin/goldmark v1.1.27/go.mod h1:3hX8gzYuyVAZsxl0MRgGTJEmQBFcNTphYh9decYSb74= github.com/yuin/goldmark v1.2.1/go.mod h1:3hX8gzYuyVAZsxl0MRgGTJEmQBFcNTphYh9decYSb74= -github.com/zitadel/oidc/v3 v3.45.1 h1:x7J8NywTUtLR9T5uu2dufae3gJrl6VVpIfvGZy+kzJg= -github.com/zitadel/oidc/v3 v3.45.1/go.mod h1:oFArtAPTXEA4ajkIe/JfBjv7hhlD0kr///UqaO3Uzd0= -github.com/zitadel/schema v1.3.1 h1:QT3kwiRIRXXLVAs6gCK/u044WmUVh6IlbLXUsn6yRQU= -github.com/zitadel/schema v1.3.1/go.mod h1:071u7D2LQacy1HAN+YnMd/mx1qVE2isb0Mjeqg46xnU= +github.com/zitadel/oidc/v3 v3.45.3 h1:iaicqH5M7L5a973DTaG9UVSE14Z6Nj6hN41pp7kYBIw= +github.com/zitadel/oidc/v3 v3.45.3/go.mod h1:yerW4/1YA5rUgjSjHsJ4HRnMbaKsyeIJkzyQrwDQ4t8= +github.com/zitadel/schema v1.3.2 h1:gfJvt7dOMfTmxzhscZ9KkapKo3Nei3B6cAxjav+lyjI= +github.com/zitadel/schema v1.3.2/go.mod h1:IZmdfF9Wu62Zu6tJJTH3UsArevs3Y4smfJIj3L8fzxw= go.mongodb.org/mongo-driver v1.17.4 h1:jUorfmVzljjr0FLzYQsGP8cgN/qzzxlY9Vh0C9KFXVw= go.mongodb.org/mongo-driver v1.17.4/go.mod h1:Hy04i7O2kC4RS06ZrhPRqj/u4DTYkFDAAccj+rVKqgQ= go.opentelemetry.io/auto/sdk v1.2.1 h1:jXsnJ4Lmnqd11kwkBV2LgLoFMZKizbCi5fNZ/ipaZ64= @@ -504,8 +497,8 @@ go.opentelemetry.io/contrib/instrumentation/net/http/otelhttp v0.63.0 h1:RbKq8BG go.opentelemetry.io/contrib/instrumentation/net/http/otelhttp v0.63.0/go.mod h1:h06DGIukJOevXaj/xrNjhi/2098RZzcLTbc0jDAUbsg= go.opentelemetry.io/contrib/otelconf v0.18.0 h1:ciF2Gf00BWs0DnexKFZXcxg9kJ8r3SUW1LOzW3CsKA8= go.opentelemetry.io/contrib/otelconf v0.18.0/go.mod h1:FcP7k+JLwBLdOxS6qY6VQ/4b5VBntI6L6o80IMwhAeI= -go.opentelemetry.io/otel v1.38.0 h1:RkfdswUDRimDg0m2Az18RKOsnI8UDzppJAtj01/Ymk8= -go.opentelemetry.io/otel v1.38.0/go.mod h1:zcmtmQ1+YmQM9wrNsTGV/q/uyusom3P8RxwExxkZhjM= +go.opentelemetry.io/otel v1.39.0 h1:8yPrr/S0ND9QEfTfdP9V+SiwT4E0G7Y5MO7p85nis48= +go.opentelemetry.io/otel v1.39.0/go.mod h1:kLlFTywNWrFyEdH0oj2xK0bFYZtHRYUdv1NklR/tgc8= go.opentelemetry.io/otel/exporters/otlp/otlplog/otlploggrpc v0.14.0 h1:OMqPldHt79PqWKOMYIAQs3CxAi7RLgPxwfFSwr4ZxtM= go.opentelemetry.io/otel/exporters/otlp/otlplog/otlploggrpc v0.14.0/go.mod h1:1biG4qiqTxKiUCtoWDPpL3fB3KxVwCiGw81j3nKMuHE= go.opentelemetry.io/otel/exporters/otlp/otlplog/otlploghttp v0.14.0 h1:QQqYw3lkrzwVsoEX0w//EhH/TCnpRdEenKBOOEIMjWc= @@ -530,18 +523,18 @@ go.opentelemetry.io/otel/exporters/stdout/stdouttrace v1.38.0 h1:kJxSDN4SgWWTjG/ go.opentelemetry.io/otel/exporters/stdout/stdouttrace v1.38.0/go.mod h1:mgIOzS7iZeKJdeB8/NYHrJ48fdGc71Llo5bJ1J4DWUE= go.opentelemetry.io/otel/log v0.14.0 h1:2rzJ+pOAZ8qmZ3DDHg73NEKzSZkhkGIua9gXtxNGgrM= go.opentelemetry.io/otel/log v0.14.0/go.mod h1:5jRG92fEAgx0SU/vFPxmJvhIuDU9E1SUnEQrMlJpOno= -go.opentelemetry.io/otel/metric v1.38.0 h1:Kl6lzIYGAh5M159u9NgiRkmoMKjvbsKtYRwgfrA6WpA= -go.opentelemetry.io/otel/metric v1.38.0/go.mod h1:kB5n/QoRM8YwmUahxvI3bO34eVtQf2i4utNVLr9gEmI= -go.opentelemetry.io/otel/sdk v1.38.0 h1:l48sr5YbNf2hpCUj/FoGhW9yDkl+Ma+LrVl8qaM5b+E= -go.opentelemetry.io/otel/sdk v1.38.0/go.mod h1:ghmNdGlVemJI3+ZB5iDEuk4bWA3GkTpW+DOoZMYBVVg= +go.opentelemetry.io/otel/metric v1.39.0 h1:d1UzonvEZriVfpNKEVmHXbdf909uGTOQjA0HF0Ls5Q0= +go.opentelemetry.io/otel/metric v1.39.0/go.mod h1:jrZSWL33sD7bBxg1xjrqyDjnuzTUB0x1nBERXd7Ftcs= +go.opentelemetry.io/otel/sdk v1.39.0 h1:nMLYcjVsvdui1B/4FRkwjzoRVsMK8uL/cj0OyhKzt18= +go.opentelemetry.io/otel/sdk v1.39.0/go.mod h1:vDojkC4/jsTJsE+kh+LXYQlbL8CgrEcwmt1ENZszdJE= go.opentelemetry.io/otel/sdk/log v0.14.0 h1:JU/U3O7N6fsAXj0+CXz21Czg532dW2V4gG1HE/e8Zrg= go.opentelemetry.io/otel/sdk/log v0.14.0/go.mod h1:imQvII+0ZylXfKU7/wtOND8Hn4OpT3YUoIgqJVksUkM= go.opentelemetry.io/otel/sdk/log/logtest v0.14.0 h1:Ijbtz+JKXl8T2MngiwqBlPaHqc4YCaP/i13Qrow6gAM= go.opentelemetry.io/otel/sdk/log/logtest v0.14.0/go.mod h1:dCU8aEL6q+L9cYTqcVOk8rM9Tp8WdnHOPLiBgp0SGOA= -go.opentelemetry.io/otel/sdk/metric v1.38.0 h1:aSH66iL0aZqo//xXzQLYozmWrXxyFkBJ6qT5wthqPoM= -go.opentelemetry.io/otel/sdk/metric v1.38.0/go.mod h1:dg9PBnW9XdQ1Hd6ZnRz689CbtrUp0wMMs9iPcgT9EZA= -go.opentelemetry.io/otel/trace v1.38.0 h1:Fxk5bKrDZJUH+AMyyIXGcFAPah0oRcT+LuNtJrmcNLE= -go.opentelemetry.io/otel/trace v1.38.0/go.mod h1:j1P9ivuFsTceSWe1oY+EeW3sc+Pp42sO++GHkg4wwhs= +go.opentelemetry.io/otel/sdk/metric v1.39.0 h1:cXMVVFVgsIf2YL6QkRF4Urbr/aMInf+2WKg+sEJTtB8= +go.opentelemetry.io/otel/sdk/metric v1.39.0/go.mod h1:xq9HEVH7qeX69/JnwEfp6fVq5wosJsY1mt4lLfYdVew= +go.opentelemetry.io/otel/trace v1.39.0 h1:2d2vfpEDmCJ5zVYz7ijaJdOF59xLomrvj7bjt6/qCJI= +go.opentelemetry.io/otel/trace v1.39.0/go.mod h1:88w4/PnZSazkGzz/w84VHpQafiU4EtqqlVdxWy+rNOA= go.opentelemetry.io/proto/otlp v1.7.1 h1:gTOMpGDb0WTBOP8JaO72iL3auEZhVmAQg4ipjOVAtj4= go.opentelemetry.io/proto/otlp v1.7.1/go.mod h1:b2rVh6rfI/s2pHWNlB7ILJcRALpcNDzKhACevjI+ZnE= go.uber.org/atomic v1.11.0 h1:ZvwS0R+56ePWxUNi+Atn9dWONBPp/AUETXlHW0DxSjE= @@ -560,24 +553,24 @@ golang.org/x/crypto v0.0.0-20180904163835-0709b304e793/go.mod h1:6SG95UA2DQfeDnf golang.org/x/crypto v0.0.0-20190308221718-c2843e01d9a2/go.mod h1:djNgcEr1/C05ACkg1iLfiJU5Ep61QUkGW8qpdssI0+w= golang.org/x/crypto v0.0.0-20191011191535-87dc89f01550/go.mod h1:yigFU9vqHzYiE8UmvKecakEJjdnWj3jj499lnFckfCI= golang.org/x/crypto v0.0.0-20200622213623-75b288015ac9/go.mod h1:LzIPMQfyMNhhGPhUkYOs5KpL4U8rLKemX1yGLhDgUto= -golang.org/x/crypto v0.46.0 h1:cKRW/pmt1pKAfetfu+RCEvjvZkA9RimPbh7bhFjGVBU= -golang.org/x/crypto v0.46.0/go.mod h1:Evb/oLKmMraqjZ2iQTwDwvCtJkczlDuTmdJXoZVzqU0= +golang.org/x/crypto v0.47.0 h1:V6e3FRj+n4dbpw86FJ8Fv7XVOql7TEwpHapKoMJ/GO8= +golang.org/x/crypto v0.47.0/go.mod h1:ff3Y9VzzKbwSSEzWqJsJVBnWmRwRSHt/6Op5n9bQc4A= golang.org/x/exp v0.0.0-20251219203646-944ab1f22d93 h1:fQsdNF2N+/YewlRZiricy4P1iimyPKZ/xwniHj8Q2a0= golang.org/x/exp v0.0.0-20251219203646-944ab1f22d93/go.mod h1:EPRbTFwzwjXj9NpYyyrvenVh9Y+GFeEvMNh7Xuz7xgU= golang.org/x/mod v0.2.0/go.mod h1:s0Qsj1ACt9ePp/hMypM3fl4fZqREWJwdYDEqhRiZZUA= golang.org/x/mod v0.3.0/go.mod h1:s0Qsj1ACt9ePp/hMypM3fl4fZqREWJwdYDEqhRiZZUA= -golang.org/x/mod v0.31.0 h1:HaW9xtz0+kOcWKwli0ZXy79Ix+UW/vOfmWI5QVd2tgI= -golang.org/x/mod v0.31.0/go.mod h1:43JraMp9cGx1Rx3AqioxrbrhNsLl2l/iNAvuBkrezpg= +golang.org/x/mod v0.32.0 h1:9F4d3PHLljb6x//jOyokMv3eX+YDeepZSEo3mFJy93c= +golang.org/x/mod v0.32.0/go.mod h1:SgipZ/3h2Ci89DlEtEXWUk/HteuRin+HHhN+WbNhguU= golang.org/x/net v0.0.0-20181114220301-adae6a3d119a/go.mod h1:mL1N/T3taQHkDXs73rZJwtUhF3w3ftmwwsq0BUmARs4= golang.org/x/net v0.0.0-20190404232315-eb5bcb51f2a3/go.mod h1:t9HGtf8HONx5eT2rtn7q6eTqICYqUVnKs3thJo3Qplg= golang.org/x/net v0.0.0-20190613194153-d28f0bde5980/go.mod h1:z5CRVTTTmAJ677TzLLGU+0bjPO0LkuOLi4/5GtJWs/s= golang.org/x/net v0.0.0-20190620200207-3b0461eec859/go.mod h1:z5CRVTTTmAJ677TzLLGU+0bjPO0LkuOLi4/5GtJWs/s= golang.org/x/net v0.0.0-20200226121028-0de0cce0169b/go.mod h1:z5CRVTTTmAJ677TzLLGU+0bjPO0LkuOLi4/5GtJWs/s= golang.org/x/net v0.0.0-20201021035429-f5854403a974/go.mod h1:sp8m0HH+o8qH0wwXwYZr8TS3Oi6o0r6Gce1SSxlDquU= -golang.org/x/net v0.48.0 h1:zyQRTTrjc33Lhh0fBgT/H3oZq9WuvRR5gPC70xpDiQU= -golang.org/x/net v0.48.0/go.mod h1:+ndRgGjkh8FGtu1w1FGbEC31if4VrNVMuKTgcAAnQRY= -golang.org/x/oauth2 v0.34.0 h1:hqK/t4AKgbqWkdkcAeI8XLmbK+4m4G5YeQRrmiotGlw= -golang.org/x/oauth2 v0.34.0/go.mod h1:lzm5WQJQwKZ3nwavOZ3IS5Aulzxi68dUSgRHujetwEA= +golang.org/x/net v0.49.0 h1:eeHFmOGUTtaaPSGNmjBKpbng9MulQsJURQUAfUwY++o= +golang.org/x/net v0.49.0/go.mod h1:/ysNB2EvaqvesRkuLAyjI1ycPZlQHM3q01F02UY/MV8= +golang.org/x/oauth2 v0.35.0 h1:Mv2mzuHuZuY2+bkyWXIHMfhNdJAdwW3FuWeCPYN5GVQ= +golang.org/x/oauth2 v0.35.0/go.mod h1:lzm5WQJQwKZ3nwavOZ3IS5Aulzxi68dUSgRHujetwEA= golang.org/x/sync v0.0.0-20181108010431-42b317875d0f/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= golang.org/x/sync v0.0.0-20181221193216-37e7f081c4d4/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= golang.org/x/sync v0.0.0-20190423024810-112230192c58/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= @@ -593,22 +586,22 @@ golang.org/x/sys v0.0.0-20190422165155-953cdadca894/go.mod h1:h1NjWce9XRLGQEsW7w golang.org/x/sys v0.0.0-20200122134326-e047566fdf82/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= golang.org/x/sys v0.0.0-20200930185726-fdedc70b468f/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= golang.org/x/sys v0.6.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= -golang.org/x/sys v0.39.0 h1:CvCKL8MeisomCi6qNZ+wbb0DN9E5AATixKsvNtMoMFk= -golang.org/x/sys v0.39.0/go.mod h1:OgkHotnGiDImocRcuBABYBEXf8A9a87e/uXjp9XT3ks= -golang.org/x/term v0.38.0 h1:PQ5pkm/rLO6HnxFR7N2lJHOZX6Kez5Y1gDSJla6jo7Q= -golang.org/x/term v0.38.0/go.mod h1:bSEAKrOT1W+VSu9TSCMtoGEOUcKxOKgl3LE5QEF/xVg= +golang.org/x/sys v0.40.0 h1:DBZZqJ2Rkml6QMQsZywtnjnnGvHza6BTfYFWY9kjEWQ= +golang.org/x/sys v0.40.0/go.mod h1:OgkHotnGiDImocRcuBABYBEXf8A9a87e/uXjp9XT3ks= +golang.org/x/term v0.39.0 h1:RclSuaJf32jOqZz74CkPA9qFuVTX7vhLlpfj/IGWlqY= +golang.org/x/term v0.39.0/go.mod h1:yxzUCTP/U+FzoxfdKmLaA0RV1WgE0VY7hXBwKtY/4ww= golang.org/x/text v0.3.0/go.mod h1:NqM8EUOU14njkJ3fqMW+pc6Ldnwhi/IjpwHt7yyuwOQ= golang.org/x/text v0.3.3/go.mod h1:5Zoc/QRtKVWzQhOtBMvqHzDpF6irO9z98xDceosuGiQ= -golang.org/x/text v0.32.0 h1:ZD01bjUt1FQ9WJ0ClOL5vxgxOI/sVCNgX1YtKwcY0mU= -golang.org/x/text v0.32.0/go.mod h1:o/rUWzghvpD5TXrTIBuJU77MTaN0ljMWE47kxGJQ7jY= +golang.org/x/text v0.33.0 h1:B3njUFyqtHDUI5jMn1YIr5B0IE2U0qck04r6d4KPAxE= +golang.org/x/text v0.33.0/go.mod h1:LuMebE6+rBincTi9+xWTY8TztLzKHc/9C1uBCG27+q8= golang.org/x/time v0.14.0 h1:MRx4UaLrDotUKUdCIqzPC48t1Y9hANFKIRpNx+Te8PI= golang.org/x/time v0.14.0/go.mod h1:eL/Oa2bBBK0TkX57Fyni+NgnyQQN4LitPmob2Hjnqw4= golang.org/x/tools v0.0.0-20180917221912-90fa682c2a6e/go.mod h1:n7NCudcB/nEzxVGmLbDWY5pfWTLqBcC2KZ6jyYvM4mQ= golang.org/x/tools v0.0.0-20191119224855-298f0cb1881e/go.mod h1:b+2E5dAYhXwXZwtnZ6UAqBI28+e2cm9otk0dWdXHAEo= golang.org/x/tools v0.0.0-20200619180055-7c47624df98f/go.mod h1:EkVYQZoAsY45+roYkvgYkIh4xh/qjgUK9TdY2XT94GE= golang.org/x/tools v0.0.0-20210106214847-113979e3529a/go.mod h1:emZCQorbCU4vsT4fOWvOPXz4eW1wZW4PmDk9uLelYpA= -golang.org/x/tools v0.40.0 h1:yLkxfA+Qnul4cs9QA3KnlFu0lVmd8JJfoq+E41uSutA= -golang.org/x/tools v0.40.0/go.mod h1:Ik/tzLRlbscWpqqMRjyWYDisX8bG13FrdXp3o4Sr9lc= +golang.org/x/tools v0.41.0 h1:a9b8iMweWG+S0OBnlU36rzLp20z1Rp10w+IY2czHTQc= +golang.org/x/tools v0.41.0/go.mod h1:XSY6eDqxVNiYgezAVqqCeihT4j1U2CCsqvH3WhQpnlg= golang.org/x/xerrors v0.0.0-20190717185122-a985d3407aa7/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0= golang.org/x/xerrors v0.0.0-20191011141410-1b5146add898/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0= golang.org/x/xerrors v0.0.0-20191204190536-9bdfabe68543/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0= @@ -625,8 +618,8 @@ google.golang.org/genproto/googleapis/rpc v0.0.0-20251006185510-65f7160b3a87 h1: google.golang.org/genproto/googleapis/rpc v0.0.0-20251006185510-65f7160b3a87/go.mod h1:7i2o+ce6H/6BluujYR+kqX3GKH+dChPTQU19wjRPiGk= google.golang.org/grpc v1.76.0 h1:UnVkv1+uMLYXoIz6o7chp59WfQUYA2ex/BXQ9rHZu7A= google.golang.org/grpc v1.76.0/go.mod h1:Ju12QI8M6iQJtbcsV+awF5a4hfJMLi4X0JLo94ULZ6c= -google.golang.org/protobuf v1.36.10 h1:AYd7cD/uASjIL6Q9LiTjz8JLcrh/88q5UObnmY3aOOE= -google.golang.org/protobuf v1.36.10/go.mod h1:HTf+CrKn2C3g5S8VImy6tdcUvCska2kB7j23XfzDpco= +google.golang.org/protobuf v1.36.11 h1:fV6ZwhNocDyBLK0dj+fg8ektcVegBBuEolpbTQyBNVE= +google.golang.org/protobuf v1.36.11/go.mod h1:HTf+CrKn2C3g5S8VImy6tdcUvCska2kB7j23XfzDpco= gopkg.in/alecthomas/kingpin.v2 v2.2.6/go.mod h1:FMv+mEhP44yOT+4EoQTLFTRgOQ1FBLkstjWtayDeSgw= gopkg.in/check.v1 v0.0.0-20161208181325-20d25e280405/go.mod h1:Co6ibVJAznAaIkqp8huTwlJQCZ016jof/cbN4VW5Yz0= gopkg.in/check.v1 v1.0.0-20190902080502-41f04d3bba15/go.mod h1:Co6ibVJAznAaIkqp8huTwlJQCZ016jof/cbN4VW5Yz0= @@ -644,7 +637,6 @@ gopkg.in/yaml.v2 v2.2.4/go.mod h1:hI93XBmqTisBFMUTm0b8Fm+jr3Dg1NNxqwp+5A1VGuI= gopkg.in/yaml.v2 v2.2.5/go.mod h1:hI93XBmqTisBFMUTm0b8Fm+jr3Dg1NNxqwp+5A1VGuI= gopkg.in/yaml.v2 v2.4.0 h1:D8xgwECY7CYvx+Y2n4sBz93Jn9JRvxdiyyo8CTfuKaY= gopkg.in/yaml.v2 v2.4.0/go.mod h1:RDklbk79AGWmwhnvt/jBztapEOGDOx6ZbXqjP6csGnQ= -gopkg.in/yaml.v3 v3.0.0-20200313102051-9f266ea9e77c/go.mod h1:K4uyk7z7BCEPqu6E+C64Yfv1cQ7kz7rIZviUmN+EgEM= gopkg.in/yaml.v3 v3.0.1 h1:fxVm/GzAzEWqLHuvctI91KS9hhNmmWOoWu0XTYJS7CA= gopkg.in/yaml.v3 v3.0.1/go.mod h1:K4uyk7z7BCEPqu6E+C64Yfv1cQ7kz7rIZviUmN+EgEM= gotest.tools/v3 v3.5.2 h1:7koQfIKdy+I8UTetycgUqXWSDwpgv193Ka+qRsmBY8Q= @@ -655,8 +647,8 @@ k8s.io/apiextensions-apiserver v0.34.3 h1:p10fGlkDY09eWKOTeUSioxwLukJnm+KuDZdrW7 k8s.io/apiextensions-apiserver v0.34.3/go.mod h1:aujxvqGFRdb/cmXYfcRTeppN7S2XV/t7WMEc64zB5A0= k8s.io/apimachinery v0.35.0 h1:Z2L3IHvPVv/MJ7xRxHEtk6GoJElaAqDCCU0S6ncYok8= k8s.io/apimachinery v0.35.0/go.mod h1:jQCgFZFR1F4Ik7hvr2g84RTJSZegBc8yHgFWKn//hns= -k8s.io/apiserver v0.34.3 h1:uGH1qpDvSiYG4HVFqc6A3L4CKiX+aBWDrrsxHYK0Bdo= -k8s.io/apiserver v0.34.3/go.mod h1:QPnnahMO5C2m3lm6fPW3+JmyQbvHZQ8uudAu/493P2w= +k8s.io/apiserver v0.35.0 h1:CUGo5o+7hW9GcAEF3x3usT3fX4f9r8xmgQeCBDaOgX4= +k8s.io/apiserver v0.35.0/go.mod h1:QUy1U4+PrzbJaM3XGu2tQ7U9A4udRRo5cyxkFX0GEds= k8s.io/client-go v0.35.0 h1:IAW0ifFbfQQwQmga0UdoH0yvdqrbwMdq9vIFEhRpxBE= k8s.io/client-go v0.35.0/go.mod h1:q2E5AAyqcbeLGPdoRB+Nxe3KYTfPce1Dnu1myQdqz9o= k8s.io/component-base v0.35.0 h1:+yBrOhzri2S1BVqyVSvcM3PtPyx5GUxCK2tinZz1G94= diff --git a/pkg/controllers/uiplugin/monitoring.go b/pkg/controllers/uiplugin/monitoring.go index 99459b2db..44db0f9d0 100644 --- a/pkg/controllers/uiplugin/monitoring.go +++ b/pkg/controllers/uiplugin/monitoring.go @@ -8,7 +8,6 @@ import ( osv1alpha1 "github.com/openshift/api/console/v1alpha1" persesv1alpha2 "github.com/rhobs/perses-operator/api/v1alpha2" persesconfig "github.com/rhobs/perses/pkg/model/api/config" - persesrole "github.com/rhobs/perses/pkg/model/api/v1/role" "golang.org/x/mod/semver" corev1 "k8s.io/api/core/v1" rbacv1 "k8s.io/api/rbac/v1" @@ -310,20 +309,6 @@ func newPerses(namespace string, persesImage string) *persesv1alpha2.Perses { Enable: true, }, }, - GuestPermissions: []*persesrole.Permission{ - { - Actions: []persesrole.Action{ - "*", - }, - Scopes: []persesrole.Scope{ - "Folder", - "GlobalSecret", - "GlobalVariable", - "Secret", - "Variable", - }, - }, - }, }, Authentication: persesconfig.AuthenticationConfig{ DisableSignUp: true,