From a76418b6503251f84949759db06097350ea48f20 Mon Sep 17 00:00:00 2001 From: "github-actions[bot]" Date: Sat, 25 Apr 2026 07:00:11 +0000 Subject: [PATCH 1/2] chore: update CRDs from upstream Updated CRD files: - test/crds/observability/monitoring.rhobs_monitoringstacks.yaml --- test/crds/observability/monitoring.rhobs_monitoringstacks.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/test/crds/observability/monitoring.rhobs_monitoringstacks.yaml b/test/crds/observability/monitoring.rhobs_monitoringstacks.yaml index a8746abb..3eb49939 100644 --- a/test/crds/observability/monitoring.rhobs_monitoringstacks.yaml +++ b/test/crds/observability/monitoring.rhobs_monitoringstacks.yaml @@ -3,7 +3,7 @@ kind: CustomResourceDefinition metadata: annotations: controller-gen.kubebuilder.io/version: v0.19.0 - observability.openshift.io/api-support: TechPreview + observability.openshift.io/api-support: GeneralAvailability creationTimestamp: null name: monitoringstacks.monitoring.rhobs spec: From 65cf4ada85c893a1cf4beeb09c1f5b89363b96e2 Mon Sep 17 00:00:00 2001 From: "github-actions[bot]" Date: Tue, 28 Apr 2026 08:01:12 +0000 Subject: [PATCH 2/2] chore: update CRDs from upstream Updated CRD files: - test/crds/observability/perses.dev_persesdashboards.yaml - test/crds/observability/perses.dev_persesdatasources.yaml - test/crds/operators/forklift.konveyor.io_forkliftcontrollers.yaml --- .../perses.dev_persesdashboards.yaml | 19 +- .../perses.dev_persesdatasources.yaml | 185 ++++++++++++------ ...klift.konveyor.io_forkliftcontrollers.yaml | 9 + 3 files changed, 153 insertions(+), 60 deletions(-) diff --git a/test/crds/observability/perses.dev_persesdashboards.yaml b/test/crds/observability/perses.dev_persesdashboards.yaml index aae41427..e0b29408 100644 --- a/test/crds/observability/perses.dev_persesdashboards.yaml +++ b/test/crds/observability/perses.dev_persesdashboards.yaml @@ -209,6 +209,8 @@ spec: type: string spec: properties: + name: + type: string plugin: properties: kind: @@ -366,10 +368,10 @@ spec: metadata: type: object spec: - description: PersesDashboardSpec defines the desired state of PersesDashboard + description: spec is the desired state of the PersesDashboard resource properties: config: - description: Perses dashboard configuration + description: config specifies the Perses dashboard configuration properties: datasources: additionalProperties: @@ -528,6 +530,8 @@ spec: type: string spec: properties: + name: + type: string plugin: properties: kind: @@ -601,7 +605,7 @@ spec: - panels type: object instanceSelector: - description: InstanceSelector selects Perses instances where this + description: instanceSelector selects Perses instances where this dashboard will be created properties: matchExpressions: @@ -651,10 +655,10 @@ spec: - config type: object status: - description: PersesDashboardStatus defines the observed state of PersesDashboard + description: status is the observed state of the PersesDashboard resource properties: conditions: - description: Conditions represent the latest observations of the PersesDashboard + description: conditions represent the latest observations of the PersesDashboard resource state items: description: Condition contains details for one aspect of the current @@ -711,7 +715,12 @@ spec: - type type: object type: array + x-kubernetes-list-map-keys: + - type + x-kubernetes-list-type: map type: object + required: + - spec type: object served: true storage: true diff --git a/test/crds/observability/perses.dev_persesdatasources.yaml b/test/crds/observability/perses.dev_persesdatasources.yaml index 51ce1207..d3c294ef 100644 --- a/test/crds/observability/perses.dev_persesdatasources.yaml +++ b/test/crds/observability/perses.dev_persesdatasources.yaml @@ -343,35 +343,45 @@ spec: metadata: type: object spec: - description: DatasourceSpec defines the desired state of a Perses datasource + description: spec is the desired state of the PersesDatasource resource properties: client: - description: Client authentication and TLS configuration for the datasource + description: client specifies authentication and TLS configuration + for the datasource properties: basicAuth: - description: BasicAuth basic auth config for perses client + description: basicAuth provides username/password authentication + configuration for the Perses client properties: name: - description: Name of basic auth k8s resource (when type is - secret or configmap) + description: |- + name is the name of the Kubernetes Secret or ConfigMap resource + Required when Type is "secret" or "configmap", ignored when Type is "file" + minLength: 1 type: string namespace: - description: Namespace of certificate k8s resource (when type - is secret or configmap) + description: |- + namespace is the namespace of the Kubernetes Secret or ConfigMap resource + Required when Type is "secret" or "configmap", ignored when Type is "file" + minLength: 1 type: string passwordPath: - description: Path to password + description: |- + passwordPath specifies the key name within the secret/configmap or filesystem path + (depending on SecretSource.Type) where the password is stored minLength: 1 type: string type: - description: Type source type of secret + description: type specifies the source type for secret data + (secret, configmap, or file) enum: - secret - configmap - file type: string username: - description: Username for basic auth + description: username is the username credential for basic + authentication minLength: 1 type: string required: @@ -379,59 +389,76 @@ spec: - type - username type: object + x-kubernetes-validations: + - message: name is required when type is secret or configmap + rule: self.type != 'secret' && self.type != 'configmap' || has(self.name) + - message: namespace is required when type is secret or configmap + rule: self.type != 'secret' && self.type != 'configmap' || has(self.namespace) kubernetesAuth: - description: KubernetesAuth configuration for perses client + description: kubernetesAuth enables Kubernetes native authentication + for the Perses client properties: enable: - description: Enable kubernetes auth for perses client + description: enable determines whether Kubernetes authentication + is enabled for the Perses client type: boolean - required: - - enable type: object oauth: - description: OAuth configuration for perses client + description: oauth provides OAuth 2.0 authentication configuration + for the Perses client properties: authStyle: description: |- - AuthStyle optionally specifies how the endpoint wants the - client ID & client secret sent. The zero value means to - auto-detect. + authStyle specifies how the endpoint wants the client ID and client secret sent + The zero value means to auto-detect + format: int32 type: integer clientIDPath: - description: Path to client id + description: |- + clientIDPath specifies the key name within the secret/configmap or filesystem path + (depending on SecretSource.Type) where the OAuth client ID is stored type: string clientSecretPath: - description: Path to client secret + description: |- + clientSecretPath specifies the key name within the secret/configmap or filesystem path + (depending on SecretSource.Type) where the OAuth client secret is stored type: string endpointParams: additionalProperties: items: type: string type: array - description: EndpointParams specifies additional parameters - for requests to the token endpoint. + description: endpointParams specifies additional parameters + to include in requests to the token endpoint type: object name: - description: Name of basic auth k8s resource (when type is - secret or configmap) + description: |- + name is the name of the Kubernetes Secret or ConfigMap resource + Required when Type is "secret" or "configmap", ignored when Type is "file" + minLength: 1 type: string namespace: - description: Namespace of certificate k8s resource (when type - is secret or configmap) + description: |- + namespace is the namespace of the Kubernetes Secret or ConfigMap resource + Required when Type is "secret" or "configmap", ignored when Type is "file" + minLength: 1 type: string scopes: - description: Scope specifies optional requested permissions. + description: scopes specifies optional requested permissions + for the OAuth token items: type: string type: array + x-kubernetes-list-type: atomic tokenURL: description: |- - TokenURL is the resource server's token endpoint - URL. This is a constant specific to each server. + tokenURL is the OAuth 2.0 provider's token endpoint URL + This is a constant specific to each OAuth provider minLength: 1 type: string type: - description: Type source type of secret + description: type specifies the source type for secret data + (secret, configmap, or file) enum: - secret - configmap @@ -441,29 +468,46 @@ spec: - tokenURL - type type: object + x-kubernetes-validations: + - message: name is required when type is secret or configmap + rule: self.type != 'secret' && self.type != 'configmap' || has(self.name) + - message: namespace is required when type is secret or configmap + rule: self.type != 'secret' && self.type != 'configmap' || has(self.namespace) tls: - description: TLS the equivalent to the tls_config for perses client + description: tls provides TLS/SSL configuration for secure connections + to Perses properties: caCert: - description: CaCert to verify the perses certificate + description: caCert specifies the CA certificate to verify + the Perses server's certificate properties: certPath: - description: Path to Certificate + description: |- + certPath specifies the key name within the secret/configmap or filesystem path + (depending on SecretSource.Type) where the certificate is stored minLength: 1 type: string name: - description: Name of basic auth k8s resource (when type - is secret or configmap) + description: |- + name is the name of the Kubernetes Secret or ConfigMap resource + Required when Type is "secret" or "configmap", ignored when Type is "file" + minLength: 1 type: string namespace: - description: Namespace of certificate k8s resource (when - type is secret or configmap) + description: |- + namespace is the namespace of the Kubernetes Secret or ConfigMap resource + Required when Type is "secret" or "configmap", ignored when Type is "file" + minLength: 1 type: string privateKeyPath: - description: Path to Private key certificate + description: |- + privateKeyPath specifies the key name within the secret/configmap or filesystem path + (depending on SecretSource.Type) where the private key is stored + Required for client certificates (UserCert), optional for CA certificates (CaCert) type: string type: - description: Type source type of secret + description: type specifies the source type for secret + data (secret, configmap, or file) enum: - secret - configmap @@ -473,32 +517,53 @@ spec: - certPath - type type: object + x-kubernetes-validations: + - message: name is required when type is secret or configmap + rule: self.type != 'secret' && self.type != 'configmap' + || has(self.name) + - message: namespace is required when type is secret or configmap + rule: self.type != 'secret' && self.type != 'configmap' + || has(self.namespace) enable: - description: Enable TLS connection to perses + description: enable determines whether TLS is enabled for + connections to Perses type: boolean insecureSkipVerify: - description: InsecureSkipVerify skip verify of perses certificate + description: |- + insecureSkipVerify determines whether to skip verification of the Perses server's certificate + Setting this to true is insecure and should only be used for testing type: boolean userCert: - description: UserCert client cert/key for mTLS + description: userCert specifies the client certificate and + key for mutual TLS (mTLS) authentication properties: certPath: - description: Path to Certificate + description: |- + certPath specifies the key name within the secret/configmap or filesystem path + (depending on SecretSource.Type) where the certificate is stored minLength: 1 type: string name: - description: Name of basic auth k8s resource (when type - is secret or configmap) + description: |- + name is the name of the Kubernetes Secret or ConfigMap resource + Required when Type is "secret" or "configmap", ignored when Type is "file" + minLength: 1 type: string namespace: - description: Namespace of certificate k8s resource (when - type is secret or configmap) + description: |- + namespace is the namespace of the Kubernetes Secret or ConfigMap resource + Required when Type is "secret" or "configmap", ignored when Type is "file" + minLength: 1 type: string privateKeyPath: - description: Path to Private key certificate + description: |- + privateKeyPath specifies the key name within the secret/configmap or filesystem path + (depending on SecretSource.Type) where the private key is stored + Required for client certificates (UserCert), optional for CA certificates (CaCert) type: string type: - description: Type source type of secret + description: type specifies the source type for secret + data (secret, configmap, or file) enum: - secret - configmap @@ -508,12 +573,17 @@ spec: - certPath - type type: object - required: - - enable + x-kubernetes-validations: + - message: name is required when type is secret or configmap + rule: self.type != 'secret' && self.type != 'configmap' + || has(self.name) + - message: namespace is required when type is secret or configmap + rule: self.type != 'secret' && self.type != 'configmap' + || has(self.namespace) type: object type: object config: - description: Perses datasource configuration + description: config specifies the Perses datasource configuration properties: default: type: boolean @@ -557,7 +627,7 @@ spec: - plugin type: object instanceSelector: - description: InstanceSelector selects Perses instances where this + description: instanceSelector selects Perses instances where this datasource will be created properties: matchExpressions: @@ -607,10 +677,10 @@ spec: - config type: object status: - description: PersesDatasourceStatus defines the observed state of PersesDatasource + description: status is the observed state of the PersesDatasource resource properties: conditions: - description: Conditions represent the latest observations of the PersesDatasource + description: conditions represent the latest observations of the PersesDatasource resource state items: description: Condition contains details for one aspect of the current @@ -667,7 +737,12 @@ spec: - type type: object type: array + x-kubernetes-list-map-keys: + - type + x-kubernetes-list-type: map type: object + required: + - spec type: object served: true storage: true diff --git a/test/crds/operators/forklift.konveyor.io_forkliftcontrollers.yaml b/test/crds/operators/forklift.konveyor.io_forkliftcontrollers.yaml index 9e247196..afcadd95 100644 --- a/test/crds/operators/forklift.konveyor.io_forkliftcontrollers.yaml +++ b/test/crds/operators/forklift.konveyor.io_forkliftcontrollers.yaml @@ -336,6 +336,15 @@ spec: controller_max_parent_backing_retries: x-kubernetes-int-or-string: true description: "Max retries when getting parent disks (default: 10)" + aap_url: + type: string + description: "Ansible Automation Platform base URL (e.g. https://aap.example.com). Required for centralized AAP connection together with aap_token_secret_name; omit when hooks use spec.aap.url and spec.aap.tokenSecret." + aap_token_secret_name: + type: string + description: "Name of the Secret in the operator namespace containing the AAP API Bearer token (data key: token). Required for centralized AAP connection together with aap_url; omit when hooks use per-hook spec.aap.url and tokenSecret." + aap_timeout: + x-kubernetes-int-or-string: true + description: "Default timeout in seconds for AAP HTTP calls and job polling when Hook spec.deadline is 0 (optional)." # Migration Feature-Specific Settings controller_vsphere_incremental_backup: