diff --git a/Makefile b/Makefile index abdae96..c080b11 100644 --- a/Makefile +++ b/Makefile @@ -6,9 +6,9 @@ PROJECT_REPO ?= github.com/tagesjump/$(PROJECT_NAME) export TERRAFORM_VERSION ?= 1.6.1 export TERRAFORM_PROVIDER_SOURCE ?= yandex-cloud/yandex -export TERRAFORM_PROVIDER_REPO ?= https://github.com/yandex-cloud/terraform-provider-yandex -export TERRAFORM_PROVIDER_VERSION ?= 0.123.0 -export TERRAFORM_DOCS_PATH ?= website/docs/r +export TERRAFORM_PROVIDER_REPO ?= https://github.com/yandex-cloud/terraform-provider-yandex/ +export TERRAFORM_PROVIDER_VERSION ?= 0.130.0 +export TERRAFORM_DOCS_PATH ?= docs/resources PLATFORMS ?= linux_amd64 linux_arm64 @@ -47,7 +47,7 @@ GO_SUBDIRS += cmd internal apis # Setup Kubernetes tools KIND_VERSION = v0.24.0 -UP_VERSION = v0.31.0 +UP_VERSION = v0.33.0 UP_CHANNEL = stable UPTEST_VERSION = v0.11.1 -include build/makelib/k8s_tools.mk diff --git a/apis/alb/v1alpha1/zz_backendgroup_types.go b/apis/alb/v1alpha1/zz_backendgroup_types.go index c111891..1d0a6d0 100755 --- a/apis/alb/v1alpha1/zz_backendgroup_types.go +++ b/apis/alb/v1alpha1/zz_backendgroup_types.go @@ -443,7 +443,7 @@ type HTTPBackendLoadBalancingConfigInitParameters struct { // Load balancing mode for the backend. Possible values: "ROUND_ROBIN", "RANDOM", "LEAST_REQUEST", "MAGLEV_HASH". Mode *string `json:"mode,omitempty" tf:"mode,omitempty"` - // If percentage of healthy hosts in the backend is lower than panic_threshold, traffic will be routed to all backends no matter what the health status is. This helps to avoid healthy backends overloading when everything is bad. Zero means no panic threshold. + // If percentage of healthy hosts in the backend is lower than panic_threshold, traffic will be routed to all backends no matter what the health status is. This helps to avoid healthy backends overloading when everything is bad. Zero means no panic threshold. PanicThreshold *float64 `json:"panicThreshold,omitempty" tf:"panic_threshold,omitempty"` // If set, will route requests only to the same availability zone. Balancer won't know about endpoints in other zones. @@ -458,7 +458,7 @@ type HTTPBackendLoadBalancingConfigObservation struct { // Load balancing mode for the backend. Possible values: "ROUND_ROBIN", "RANDOM", "LEAST_REQUEST", "MAGLEV_HASH". Mode *string `json:"mode,omitempty" tf:"mode,omitempty"` - // If percentage of healthy hosts in the backend is lower than panic_threshold, traffic will be routed to all backends no matter what the health status is. This helps to avoid healthy backends overloading when everything is bad. Zero means no panic threshold. + // If percentage of healthy hosts in the backend is lower than panic_threshold, traffic will be routed to all backends no matter what the health status is. This helps to avoid healthy backends overloading when everything is bad. Zero means no panic threshold. PanicThreshold *float64 `json:"panicThreshold,omitempty" tf:"panic_threshold,omitempty"` // If set, will route requests only to the same availability zone. Balancer won't know about endpoints in other zones. @@ -475,7 +475,7 @@ type HTTPBackendLoadBalancingConfigParameters struct { // +kubebuilder:validation:Optional Mode *string `json:"mode,omitempty" tf:"mode,omitempty"` - // If percentage of healthy hosts in the backend is lower than panic_threshold, traffic will be routed to all backends no matter what the health status is. This helps to avoid healthy backends overloading when everything is bad. Zero means no panic threshold. + // If percentage of healthy hosts in the backend is lower than panic_threshold, traffic will be routed to all backends no matter what the health status is. This helps to avoid healthy backends overloading when everything is bad. Zero means no panic threshold. // +kubebuilder:validation:Optional PanicThreshold *float64 `json:"panicThreshold,omitempty" tf:"panic_threshold,omitempty"` @@ -809,7 +809,7 @@ type HealthcheckStreamHealthcheckInitParameters struct { // Data that must be contained in the messages received from targets for a successful health check. If not specified, no messages are expected from targets, and those that are received are not checked. Receive *string `json:"receive,omitempty" tf:"receive,omitempty"` - // Message sent to targets during TCP data transfer. If not specified, no data is sent to the target. + // Message sent to targets during TCP data transfer. If not specified, no data is sent to the target. Send *string `json:"send,omitempty" tf:"send,omitempty"` } @@ -818,7 +818,7 @@ type HealthcheckStreamHealthcheckObservation struct { // Data that must be contained in the messages received from targets for a successful health check. If not specified, no messages are expected from targets, and those that are received are not checked. Receive *string `json:"receive,omitempty" tf:"receive,omitempty"` - // Message sent to targets during TCP data transfer. If not specified, no data is sent to the target. + // Message sent to targets during TCP data transfer. If not specified, no data is sent to the target. Send *string `json:"send,omitempty" tf:"send,omitempty"` } @@ -828,7 +828,7 @@ type HealthcheckStreamHealthcheckParameters struct { // +kubebuilder:validation:Optional Receive *string `json:"receive,omitempty" tf:"receive,omitempty"` - // Message sent to targets during TCP data transfer. If not specified, no data is sent to the target. + // Message sent to targets during TCP data transfer. If not specified, no data is sent to the target. // +kubebuilder:validation:Optional Send *string `json:"send,omitempty" tf:"send,omitempty"` } @@ -841,7 +841,7 @@ type LoadBalancingConfigInitParameters struct { // Load balancing mode for the backend. Possible values: "ROUND_ROBIN", "RANDOM", "LEAST_REQUEST", "MAGLEV_HASH". Mode *string `json:"mode,omitempty" tf:"mode,omitempty"` - // If percentage of healthy hosts in the backend is lower than panic_threshold, traffic will be routed to all backends no matter what the health status is. This helps to avoid healthy backends overloading when everything is bad. Zero means no panic threshold. + // If percentage of healthy hosts in the backend is lower than panic_threshold, traffic will be routed to all backends no matter what the health status is. This helps to avoid healthy backends overloading when everything is bad. Zero means no panic threshold. PanicThreshold *float64 `json:"panicThreshold,omitempty" tf:"panic_threshold,omitempty"` // If set, will route requests only to the same availability zone. Balancer won't know about endpoints in other zones. @@ -856,7 +856,7 @@ type LoadBalancingConfigObservation struct { // Load balancing mode for the backend. Possible values: "ROUND_ROBIN", "RANDOM", "LEAST_REQUEST", "MAGLEV_HASH". Mode *string `json:"mode,omitempty" tf:"mode,omitempty"` - // If percentage of healthy hosts in the backend is lower than panic_threshold, traffic will be routed to all backends no matter what the health status is. This helps to avoid healthy backends overloading when everything is bad. Zero means no panic threshold. + // If percentage of healthy hosts in the backend is lower than panic_threshold, traffic will be routed to all backends no matter what the health status is. This helps to avoid healthy backends overloading when everything is bad. Zero means no panic threshold. PanicThreshold *float64 `json:"panicThreshold,omitempty" tf:"panic_threshold,omitempty"` // If set, will route requests only to the same availability zone. Balancer won't know about endpoints in other zones. @@ -873,7 +873,7 @@ type LoadBalancingConfigParameters struct { // +kubebuilder:validation:Optional Mode *string `json:"mode,omitempty" tf:"mode,omitempty"` - // If percentage of healthy hosts in the backend is lower than panic_threshold, traffic will be routed to all backends no matter what the health status is. This helps to avoid healthy backends overloading when everything is bad. Zero means no panic threshold. + // If percentage of healthy hosts in the backend is lower than panic_threshold, traffic will be routed to all backends no matter what the health status is. This helps to avoid healthy backends overloading when everything is bad. Zero means no panic threshold. // +kubebuilder:validation:Optional PanicThreshold *float64 `json:"panicThreshold,omitempty" tf:"panic_threshold,omitempty"` @@ -1092,7 +1092,7 @@ type StreamBackendHealthcheckStreamHealthcheckInitParameters struct { // Data that must be contained in the messages received from targets for a successful health check. If not specified, no messages are expected from targets, and those that are received are not checked. Receive *string `json:"receive,omitempty" tf:"receive,omitempty"` - // Message sent to targets during TCP data transfer. If not specified, no data is sent to the target. + // Message sent to targets during TCP data transfer. If not specified, no data is sent to the target. Send *string `json:"send,omitempty" tf:"send,omitempty"` } @@ -1101,7 +1101,7 @@ type StreamBackendHealthcheckStreamHealthcheckObservation struct { // Data that must be contained in the messages received from targets for a successful health check. If not specified, no messages are expected from targets, and those that are received are not checked. Receive *string `json:"receive,omitempty" tf:"receive,omitempty"` - // Message sent to targets during TCP data transfer. If not specified, no data is sent to the target. + // Message sent to targets during TCP data transfer. If not specified, no data is sent to the target. Send *string `json:"send,omitempty" tf:"send,omitempty"` } @@ -1111,7 +1111,7 @@ type StreamBackendHealthcheckStreamHealthcheckParameters struct { // +kubebuilder:validation:Optional Receive *string `json:"receive,omitempty" tf:"receive,omitempty"` - // Message sent to targets during TCP data transfer. If not specified, no data is sent to the target. + // Message sent to targets during TCP data transfer. If not specified, no data is sent to the target. // +kubebuilder:validation:Optional Send *string `json:"send,omitempty" tf:"send,omitempty"` } @@ -1158,7 +1158,7 @@ type StreamBackendLoadBalancingConfigInitParameters struct { // Load balancing mode for the backend. Possible values: "ROUND_ROBIN", "RANDOM", "LEAST_REQUEST", "MAGLEV_HASH". Mode *string `json:"mode,omitempty" tf:"mode,omitempty"` - // If percentage of healthy hosts in the backend is lower than panic_threshold, traffic will be routed to all backends no matter what the health status is. This helps to avoid healthy backends overloading when everything is bad. Zero means no panic threshold. + // If percentage of healthy hosts in the backend is lower than panic_threshold, traffic will be routed to all backends no matter what the health status is. This helps to avoid healthy backends overloading when everything is bad. Zero means no panic threshold. PanicThreshold *float64 `json:"panicThreshold,omitempty" tf:"panic_threshold,omitempty"` // If set, will route requests only to the same availability zone. Balancer won't know about endpoints in other zones. @@ -1173,7 +1173,7 @@ type StreamBackendLoadBalancingConfigObservation struct { // Load balancing mode for the backend. Possible values: "ROUND_ROBIN", "RANDOM", "LEAST_REQUEST", "MAGLEV_HASH". Mode *string `json:"mode,omitempty" tf:"mode,omitempty"` - // If percentage of healthy hosts in the backend is lower than panic_threshold, traffic will be routed to all backends no matter what the health status is. This helps to avoid healthy backends overloading when everything is bad. Zero means no panic threshold. + // If percentage of healthy hosts in the backend is lower than panic_threshold, traffic will be routed to all backends no matter what the health status is. This helps to avoid healthy backends overloading when everything is bad. Zero means no panic threshold. PanicThreshold *float64 `json:"panicThreshold,omitempty" tf:"panic_threshold,omitempty"` // If set, will route requests only to the same availability zone. Balancer won't know about endpoints in other zones. @@ -1190,7 +1190,7 @@ type StreamBackendLoadBalancingConfigParameters struct { // +kubebuilder:validation:Optional Mode *string `json:"mode,omitempty" tf:"mode,omitempty"` - // If percentage of healthy hosts in the backend is lower than panic_threshold, traffic will be routed to all backends no matter what the health status is. This helps to avoid healthy backends overloading when everything is bad. Zero means no panic threshold. + // If percentage of healthy hosts in the backend is lower than panic_threshold, traffic will be routed to all backends no matter what the health status is. This helps to avoid healthy backends overloading when everything is bad. Zero means no panic threshold. // +kubebuilder:validation:Optional PanicThreshold *float64 `json:"panicThreshold,omitempty" tf:"panic_threshold,omitempty"` @@ -1327,7 +1327,7 @@ type StreamHealthcheckInitParameters struct { // Data that must be contained in the messages received from targets for a successful health check. If not specified, no messages are expected from targets, and those that are received are not checked. Receive *string `json:"receive,omitempty" tf:"receive,omitempty"` - // Message sent to targets during TCP data transfer. If not specified, no data is sent to the target. + // Message sent to targets during TCP data transfer. If not specified, no data is sent to the target. Send *string `json:"send,omitempty" tf:"send,omitempty"` } @@ -1336,7 +1336,7 @@ type StreamHealthcheckObservation struct { // Data that must be contained in the messages received from targets for a successful health check. If not specified, no messages are expected from targets, and those that are received are not checked. Receive *string `json:"receive,omitempty" tf:"receive,omitempty"` - // Message sent to targets during TCP data transfer. If not specified, no data is sent to the target. + // Message sent to targets during TCP data transfer. If not specified, no data is sent to the target. Send *string `json:"send,omitempty" tf:"send,omitempty"` } @@ -1346,7 +1346,7 @@ type StreamHealthcheckParameters struct { // +kubebuilder:validation:Optional Receive *string `json:"receive,omitempty" tf:"receive,omitempty"` - // Message sent to targets during TCP data transfer. If not specified, no data is sent to the target. + // Message sent to targets during TCP data transfer. If not specified, no data is sent to the target. // +kubebuilder:validation:Optional Send *string `json:"send,omitempty" tf:"send,omitempty"` } diff --git a/apis/alb/v1alpha1/zz_httprouter_types.go b/apis/alb/v1alpha1/zz_httprouter_types.go index dc1bf33..2306ce2 100755 --- a/apis/alb/v1alpha1/zz_httprouter_types.go +++ b/apis/alb/v1alpha1/zz_httprouter_types.go @@ -65,12 +65,10 @@ type AndPrincipalsParameters struct { type HTTPRouterInitParameters struct { - // An optional description of the HTTP Router. Provide this property when - // you create the resource. + // An optional description of the HTTP Router. Provide this property when you create the resource. Description *string `json:"description,omitempty" tf:"description,omitempty"` - // The ID of the folder to which the resource belongs. - // If omitted, the provider folder is used. + // The ID of the folder to which the resource belongs. If omitted, the provider folder is used. // +crossplane:generate:reference:type=github.com/tagesjump/provider-upjet-yc/apis/resourcemanager/v1alpha1.Folder FolderID *string `json:"folderId,omitempty" tf:"folder_id,omitempty"` @@ -97,12 +95,10 @@ type HTTPRouterObservation struct { // The HTTP Router creation timestamp. CreatedAt *string `json:"createdAt,omitempty" tf:"created_at,omitempty"` - // An optional description of the HTTP Router. Provide this property when - // you create the resource. + // An optional description of the HTTP Router. Provide this property when you create the resource. Description *string `json:"description,omitempty" tf:"description,omitempty"` - // The ID of the folder to which the resource belongs. - // If omitted, the provider folder is used. + // The ID of the folder to which the resource belongs. If omitted, the provider folder is used. FolderID *string `json:"folderId,omitempty" tf:"folder_id,omitempty"` // The ID of the HTTP Router. @@ -120,13 +116,11 @@ type HTTPRouterObservation struct { type HTTPRouterParameters struct { - // An optional description of the HTTP Router. Provide this property when - // you create the resource. + // An optional description of the HTTP Router. Provide this property when you create the resource. // +kubebuilder:validation:Optional Description *string `json:"description,omitempty" tf:"description,omitempty"` - // The ID of the folder to which the resource belongs. - // If omitted, the provider folder is used. + // The ID of the folder to which the resource belongs. If omitted, the provider folder is used. // +crossplane:generate:reference:type=github.com/tagesjump/provider-upjet-yc/apis/resourcemanager/v1alpha1.Folder // +kubebuilder:validation:Optional FolderID *string `json:"folderId,omitempty" tf:"folder_id,omitempty"` diff --git a/apis/alb/v1alpha1/zz_loadbalancer_types.go b/apis/alb/v1alpha1/zz_loadbalancer_types.go index c48a0a3..4b5ae4c 100755 --- a/apis/alb/v1alpha1/zz_loadbalancer_types.go +++ b/apis/alb/v1alpha1/zz_loadbalancer_types.go @@ -69,8 +69,7 @@ type AllocationPolicyParameters struct { type DefaultHandlerInitParameters struct { - // Certificate IDs in the Certificate Manager. Multiple TLS certificates can be associated - // with the same context to allow both RSA and ECDSA certificates. Only the first certificate of each type will be used. + // Certificate IDs in the Certificate Manager. Multiple TLS certificates can be associated with the same context to allow both RSA and ECDSA certificates. Only the first certificate of each type will be used. // +listType=set CertificateIds []*string `json:"certificateIds,omitempty" tf:"certificate_ids,omitempty"` @@ -83,8 +82,7 @@ type DefaultHandlerInitParameters struct { type DefaultHandlerObservation struct { - // Certificate IDs in the Certificate Manager. Multiple TLS certificates can be associated - // with the same context to allow both RSA and ECDSA certificates. Only the first certificate of each type will be used. + // Certificate IDs in the Certificate Manager. Multiple TLS certificates can be associated with the same context to allow both RSA and ECDSA certificates. Only the first certificate of each type will be used. // +listType=set CertificateIds []*string `json:"certificateIds,omitempty" tf:"certificate_ids,omitempty"` @@ -97,8 +95,7 @@ type DefaultHandlerObservation struct { type DefaultHandlerParameters struct { - // Certificate IDs in the Certificate Manager. Multiple TLS certificates can be associated - // with the same context to allow both RSA and ECDSA certificates. Only the first certificate of each type will be used. + // Certificate IDs in the Certificate Manager. Multiple TLS certificates can be associated with the same context to allow both RSA and ECDSA certificates. Only the first certificate of each type will be used. // +kubebuilder:validation:Optional // +listType=set CertificateIds []*string `json:"certificateIds" tf:"certificate_ids,omitempty"` @@ -945,8 +942,7 @@ type RedirectsParameters struct { type SniHandlerHandlerInitParameters struct { - // Certificate IDs in the Certificate Manager. Multiple TLS certificates can be associated - // with the same context to allow both RSA and ECDSA certificates. Only the first certificate of each type will be used. + // Certificate IDs in the Certificate Manager. Multiple TLS certificates can be associated with the same context to allow both RSA and ECDSA certificates. Only the first certificate of each type will be used. // +listType=set CertificateIds []*string `json:"certificateIds,omitempty" tf:"certificate_ids,omitempty"` @@ -959,8 +955,7 @@ type SniHandlerHandlerInitParameters struct { type SniHandlerHandlerObservation struct { - // Certificate IDs in the Certificate Manager. Multiple TLS certificates can be associated - // with the same context to allow both RSA and ECDSA certificates. Only the first certificate of each type will be used. + // Certificate IDs in the Certificate Manager. Multiple TLS certificates can be associated with the same context to allow both RSA and ECDSA certificates. Only the first certificate of each type will be used. // +listType=set CertificateIds []*string `json:"certificateIds,omitempty" tf:"certificate_ids,omitempty"` @@ -973,8 +968,7 @@ type SniHandlerHandlerObservation struct { type SniHandlerHandlerParameters struct { - // Certificate IDs in the Certificate Manager. Multiple TLS certificates can be associated - // with the same context to allow both RSA and ECDSA certificates. Only the first certificate of each type will be used. + // Certificate IDs in the Certificate Manager. Multiple TLS certificates can be associated with the same context to allow both RSA and ECDSA certificates. Only the first certificate of each type will be used. // +kubebuilder:validation:Optional // +listType=set CertificateIds []*string `json:"certificateIds" tf:"certificate_ids,omitempty"` diff --git a/apis/alb/v1alpha1/zz_targetgroup_types.go b/apis/alb/v1alpha1/zz_targetgroup_types.go index 02d548f..b2d8246 100755 --- a/apis/alb/v1alpha1/zz_targetgroup_types.go +++ b/apis/alb/v1alpha1/zz_targetgroup_types.go @@ -11,12 +11,10 @@ import ( type TargetGroupInitParameters struct { - // An optional description of the target group. Provide this property when - // you create the resource. + // An optional description of the target group. Provide this property when you create the resource. Description *string `json:"description,omitempty" tf:"description,omitempty"` - // The ID of the folder to which the resource belongs. - // If omitted, the provider folder is used. + // The ID of the folder to which the resource belongs. If omitted, the provider folder is used. // +crossplane:generate:reference:type=github.com/tagesjump/provider-upjet-yc/apis/resourcemanager/v1alpha1.Folder FolderID *string `json:"folderId,omitempty" tf:"folder_id,omitempty"` @@ -44,12 +42,10 @@ type TargetGroupObservation struct { // The target group creation timestamp. CreatedAt *string `json:"createdAt,omitempty" tf:"created_at,omitempty"` - // An optional description of the target group. Provide this property when - // you create the resource. + // An optional description of the target group. Provide this property when you create the resource. Description *string `json:"description,omitempty" tf:"description,omitempty"` - // The ID of the folder to which the resource belongs. - // If omitted, the provider folder is used. + // The ID of the folder to which the resource belongs. If omitted, the provider folder is used. FolderID *string `json:"folderId,omitempty" tf:"folder_id,omitempty"` // The ID of the target group. @@ -68,13 +64,11 @@ type TargetGroupObservation struct { type TargetGroupParameters struct { - // An optional description of the target group. Provide this property when - // you create the resource. + // An optional description of the target group. Provide this property when you create the resource. // +kubebuilder:validation:Optional Description *string `json:"description,omitempty" tf:"description,omitempty"` - // The ID of the folder to which the resource belongs. - // If omitted, the provider folder is used. + // The ID of the folder to which the resource belongs. If omitted, the provider folder is used. // +crossplane:generate:reference:type=github.com/tagesjump/provider-upjet-yc/apis/resourcemanager/v1alpha1.Folder // +kubebuilder:validation:Optional FolderID *string `json:"folderId,omitempty" tf:"folder_id,omitempty"` @@ -108,8 +102,7 @@ type TargetInitParameters struct { PrivateIPv4Address *bool `json:"privateIpv4Address,omitempty" tf:"private_ipv4_address,omitempty"` - // ID of the subnet that targets are connected to. - // All targets in the target group must be connected to the same subnet within a single availability zone. + // ID of the subnet that targets are connected to. All targets in the target group must be connected to the same subnet within a single availability zone. // +crossplane:generate:reference:type=github.com/tagesjump/provider-upjet-yc/apis/vpc/v1alpha1.Subnet SubnetID *string `json:"subnetId,omitempty" tf:"subnet_id,omitempty"` @@ -129,8 +122,7 @@ type TargetObservation struct { PrivateIPv4Address *bool `json:"privateIpv4Address,omitempty" tf:"private_ipv4_address,omitempty"` - // ID of the subnet that targets are connected to. - // All targets in the target group must be connected to the same subnet within a single availability zone. + // ID of the subnet that targets are connected to. All targets in the target group must be connected to the same subnet within a single availability zone. SubnetID *string `json:"subnetId,omitempty" tf:"subnet_id,omitempty"` } @@ -143,8 +135,7 @@ type TargetParameters struct { // +kubebuilder:validation:Optional PrivateIPv4Address *bool `json:"privateIpv4Address,omitempty" tf:"private_ipv4_address,omitempty"` - // ID of the subnet that targets are connected to. - // All targets in the target group must be connected to the same subnet within a single availability zone. + // ID of the subnet that targets are connected to. All targets in the target group must be connected to the same subnet within a single availability zone. // +crossplane:generate:reference:type=github.com/tagesjump/provider-upjet-yc/apis/vpc/v1alpha1.Subnet // +kubebuilder:validation:Optional SubnetID *string `json:"subnetId,omitempty" tf:"subnet_id,omitempty"` diff --git a/apis/alb/v1alpha1/zz_virtualhost_types.go b/apis/alb/v1alpha1/zz_virtualhost_types.go index b768c2f..6e835f1 100755 --- a/apis/alb/v1alpha1/zz_virtualhost_types.go +++ b/apis/alb/v1alpha1/zz_virtualhost_types.go @@ -53,8 +53,7 @@ type DirectResponseActionInitParameters struct { // Response body text. Body *string `json:"body,omitempty" tf:"body,omitempty"` - // The status of the response. Supported values are: ok, invalid_argumet, not_found, - // permission_denied, unauthenticated, unimplemented, internal, unavailable. + // The status of the response. Supported values are: ok, invalid_argumet, not_found, permission_denied, unauthenticated, unimplemented, internal, unavailable. Status *float64 `json:"status,omitempty" tf:"status,omitempty"` } @@ -63,8 +62,7 @@ type DirectResponseActionObservation struct { // Response body text. Body *string `json:"body,omitempty" tf:"body,omitempty"` - // The status of the response. Supported values are: ok, invalid_argumet, not_found, - // permission_denied, unauthenticated, unimplemented, internal, unavailable. + // The status of the response. Supported values are: ok, invalid_argumet, not_found, permission_denied, unauthenticated, unimplemented, internal, unavailable. Status *float64 `json:"status,omitempty" tf:"status,omitempty"` } @@ -74,8 +72,7 @@ type DirectResponseActionParameters struct { // +kubebuilder:validation:Optional Body *string `json:"body,omitempty" tf:"body,omitempty"` - // The status of the response. Supported values are: ok, invalid_argumet, not_found, - // permission_denied, unauthenticated, unimplemented, internal, unavailable. + // The status of the response. Supported values are: ok, invalid_argumet, not_found, permission_denied, unauthenticated, unimplemented, internal, unavailable. // +kubebuilder:validation:Optional Status *float64 `json:"status,omitempty" tf:"status,omitempty"` } @@ -158,14 +155,10 @@ type GRPCRouteActionInitParameters struct { // Host rewrite specifier. HostRewrite *string `json:"hostRewrite,omitempty" tf:"host_rewrite,omitempty"` - // Specifies the idle timeout (time without any data transfer for the active request) for the - // route. It is useful for streaming scenarios (i.e. long-polling, server-sent events) - one should set idle_timeout to - // something meaningful and timeout to the maximum time the stream is allowed to be alive. If not specified, there is no - // per-route idle timeout. + // Specifies the idle timeout (time without any data transfer for the active request) for the route. It is useful for streaming scenarios (i.e. long-polling, server-sent events) - one should set idle_timeout to something meaningful and timeout to the maximum time the stream is allowed to be alive. If not specified, there is no per-route idle timeout. IdleTimeout *string `json:"idleTimeout,omitempty" tf:"idle_timeout,omitempty"` - // Lower timeout may be specified by the client (using grpc-timeout header). If not set, default is - // 60 seconds. + // Lower timeout may be specified by the client (using grpc-timeout header). If not set, default is 60 seconds. MaxTimeout *string `json:"maxTimeout,omitempty" tf:"max_timeout,omitempty"` } @@ -180,14 +173,10 @@ type GRPCRouteActionObservation struct { // Host rewrite specifier. HostRewrite *string `json:"hostRewrite,omitempty" tf:"host_rewrite,omitempty"` - // Specifies the idle timeout (time without any data transfer for the active request) for the - // route. It is useful for streaming scenarios (i.e. long-polling, server-sent events) - one should set idle_timeout to - // something meaningful and timeout to the maximum time the stream is allowed to be alive. If not specified, there is no - // per-route idle timeout. + // Specifies the idle timeout (time without any data transfer for the active request) for the route. It is useful for streaming scenarios (i.e. long-polling, server-sent events) - one should set idle_timeout to something meaningful and timeout to the maximum time the stream is allowed to be alive. If not specified, there is no per-route idle timeout. IdleTimeout *string `json:"idleTimeout,omitempty" tf:"idle_timeout,omitempty"` - // Lower timeout may be specified by the client (using grpc-timeout header). If not set, default is - // 60 seconds. + // Lower timeout may be specified by the client (using grpc-timeout header). If not set, default is 60 seconds. MaxTimeout *string `json:"maxTimeout,omitempty" tf:"max_timeout,omitempty"` } @@ -214,15 +203,11 @@ type GRPCRouteActionParameters struct { // +kubebuilder:validation:Optional HostRewrite *string `json:"hostRewrite,omitempty" tf:"host_rewrite,omitempty"` - // Specifies the idle timeout (time without any data transfer for the active request) for the - // route. It is useful for streaming scenarios (i.e. long-polling, server-sent events) - one should set idle_timeout to - // something meaningful and timeout to the maximum time the stream is allowed to be alive. If not specified, there is no - // per-route idle timeout. + // Specifies the idle timeout (time without any data transfer for the active request) for the route. It is useful for streaming scenarios (i.e. long-polling, server-sent events) - one should set idle_timeout to something meaningful and timeout to the maximum time the stream is allowed to be alive. If not specified, there is no per-route idle timeout. // +kubebuilder:validation:Optional IdleTimeout *string `json:"idleTimeout,omitempty" tf:"idle_timeout,omitempty"` - // Lower timeout may be specified by the client (using grpc-timeout header). If not set, default is - // 60 seconds. + // Lower timeout may be specified by the client (using grpc-timeout header). If not set, default is 60 seconds. // +kubebuilder:validation:Optional MaxTimeout *string `json:"maxTimeout,omitempty" tf:"max_timeout,omitempty"` } @@ -268,22 +253,19 @@ type GRPCRouteParameters struct { type GRPCStatusResponseActionInitParameters struct { - // The status of the response. Supported values are: ok, invalid_argumet, not_found, - // permission_denied, unauthenticated, unimplemented, internal, unavailable. + // The status of the response. Supported values are: ok, invalid_argumet, not_found, permission_denied, unauthenticated, unimplemented, internal, unavailable. Status *string `json:"status,omitempty" tf:"status,omitempty"` } type GRPCStatusResponseActionObservation struct { - // The status of the response. Supported values are: ok, invalid_argumet, not_found, - // permission_denied, unauthenticated, unimplemented, internal, unavailable. + // The status of the response. Supported values are: ok, invalid_argumet, not_found, permission_denied, unauthenticated, unimplemented, internal, unavailable. Status *string `json:"status,omitempty" tf:"status,omitempty"` } type GRPCStatusResponseActionParameters struct { - // The status of the response. Supported values are: ok, invalid_argumet, not_found, - // permission_denied, unauthenticated, unimplemented, internal, unavailable. + // The status of the response. Supported values are: ok, invalid_argumet, not_found, permission_denied, unauthenticated, unimplemented, internal, unavailable. // +kubebuilder:validation:Optional Status *string `json:"status,omitempty" tf:"status,omitempty"` } @@ -340,21 +322,16 @@ type HTTPRouteActionInitParameters struct { // Host rewrite specifier. HostRewrite *string `json:"hostRewrite,omitempty" tf:"host_rewrite,omitempty"` - // Specifies the idle timeout (time without any data transfer for the active request) for the - // route. It is useful for streaming scenarios (i.e. long-polling, server-sent events) - one should set idle_timeout to - // something meaningful and timeout to the maximum time the stream is allowed to be alive. If not specified, there is no - // per-route idle timeout. + // Specifies the idle timeout (time without any data transfer for the active request) for the route. It is useful for streaming scenarios (i.e. long-polling, server-sent events) - one should set idle_timeout to something meaningful and timeout to the maximum time the stream is allowed to be alive. If not specified, there is no per-route idle timeout. IdleTimeout *string `json:"idleTimeout,omitempty" tf:"idle_timeout,omitempty"` // If not empty, matched path prefix will be replaced by this value. PrefixRewrite *string `json:"prefixRewrite,omitempty" tf:"prefix_rewrite,omitempty"` - // Specifies the request timeout (overall time request processing is allowed to take) for the - // route. If not set, default is 60 seconds. + // Specifies the request timeout (overall time request processing is allowed to take) for the route. If not set, default is 60 seconds. Timeout *string `json:"timeout,omitempty" tf:"timeout,omitempty"` - // List of upgrade types. Only specified upgrade types will be allowed. For example, - // "websocket". + // List of upgrade types. Only specified upgrade types will be allowed. For example, "websocket". // +listType=set UpgradeTypes []*string `json:"upgradeTypes,omitempty" tf:"upgrade_types,omitempty"` } @@ -370,21 +347,16 @@ type HTTPRouteActionObservation struct { // Host rewrite specifier. HostRewrite *string `json:"hostRewrite,omitempty" tf:"host_rewrite,omitempty"` - // Specifies the idle timeout (time without any data transfer for the active request) for the - // route. It is useful for streaming scenarios (i.e. long-polling, server-sent events) - one should set idle_timeout to - // something meaningful and timeout to the maximum time the stream is allowed to be alive. If not specified, there is no - // per-route idle timeout. + // Specifies the idle timeout (time without any data transfer for the active request) for the route. It is useful for streaming scenarios (i.e. long-polling, server-sent events) - one should set idle_timeout to something meaningful and timeout to the maximum time the stream is allowed to be alive. If not specified, there is no per-route idle timeout. IdleTimeout *string `json:"idleTimeout,omitempty" tf:"idle_timeout,omitempty"` // If not empty, matched path prefix will be replaced by this value. PrefixRewrite *string `json:"prefixRewrite,omitempty" tf:"prefix_rewrite,omitempty"` - // Specifies the request timeout (overall time request processing is allowed to take) for the - // route. If not set, default is 60 seconds. + // Specifies the request timeout (overall time request processing is allowed to take) for the route. If not set, default is 60 seconds. Timeout *string `json:"timeout,omitempty" tf:"timeout,omitempty"` - // List of upgrade types. Only specified upgrade types will be allowed. For example, - // "websocket". + // List of upgrade types. Only specified upgrade types will be allowed. For example, "websocket". // +listType=set UpgradeTypes []*string `json:"upgradeTypes,omitempty" tf:"upgrade_types,omitempty"` } @@ -412,10 +384,7 @@ type HTTPRouteActionParameters struct { // +kubebuilder:validation:Optional HostRewrite *string `json:"hostRewrite,omitempty" tf:"host_rewrite,omitempty"` - // Specifies the idle timeout (time without any data transfer for the active request) for the - // route. It is useful for streaming scenarios (i.e. long-polling, server-sent events) - one should set idle_timeout to - // something meaningful and timeout to the maximum time the stream is allowed to be alive. If not specified, there is no - // per-route idle timeout. + // Specifies the idle timeout (time without any data transfer for the active request) for the route. It is useful for streaming scenarios (i.e. long-polling, server-sent events) - one should set idle_timeout to something meaningful and timeout to the maximum time the stream is allowed to be alive. If not specified, there is no per-route idle timeout. // +kubebuilder:validation:Optional IdleTimeout *string `json:"idleTimeout,omitempty" tf:"idle_timeout,omitempty"` @@ -423,13 +392,11 @@ type HTTPRouteActionParameters struct { // +kubebuilder:validation:Optional PrefixRewrite *string `json:"prefixRewrite,omitempty" tf:"prefix_rewrite,omitempty"` - // Specifies the request timeout (overall time request processing is allowed to take) for the - // route. If not set, default is 60 seconds. + // Specifies the request timeout (overall time request processing is allowed to take) for the route. If not set, default is 60 seconds. // +kubebuilder:validation:Optional Timeout *string `json:"timeout,omitempty" tf:"timeout,omitempty"` - // List of upgrade types. Only specified upgrade types will be allowed. For example, - // "websocket". + // List of upgrade types. Only specified upgrade types will be allowed. For example, "websocket". // +kubebuilder:validation:Optional // +listType=set UpgradeTypes []*string `json:"upgradeTypes,omitempty" tf:"upgrade_types,omitempty"` @@ -534,8 +501,7 @@ type ModifyRequestHeadersInitParameters struct { // If set, remove the header. Remove *bool `json:"remove,omitempty" tf:"remove,omitempty"` - // New value for a header. Header values support the following - // formatters. + // New value for a header. Header values support the following formatters. Replace *string `json:"replace,omitempty" tf:"replace,omitempty"` } @@ -550,8 +516,7 @@ type ModifyRequestHeadersObservation struct { // If set, remove the header. Remove *bool `json:"remove,omitempty" tf:"remove,omitempty"` - // New value for a header. Header values support the following - // formatters. + // New value for a header. Header values support the following formatters. Replace *string `json:"replace,omitempty" tf:"replace,omitempty"` } @@ -569,8 +534,7 @@ type ModifyRequestHeadersParameters struct { // +kubebuilder:validation:Optional Remove *bool `json:"remove,omitempty" tf:"remove,omitempty"` - // New value for a header. Header values support the following - // formatters. + // New value for a header. Header values support the following formatters. // +kubebuilder:validation:Optional Replace *string `json:"replace,omitempty" tf:"replace,omitempty"` } @@ -586,8 +550,7 @@ type ModifyResponseHeadersInitParameters struct { // If set, remove the header. Remove *bool `json:"remove,omitempty" tf:"remove,omitempty"` - // New value for a header. Header values support the following - // formatters. + // New value for a header. Header values support the following formatters. Replace *string `json:"replace,omitempty" tf:"replace,omitempty"` } @@ -602,8 +565,7 @@ type ModifyResponseHeadersObservation struct { // If set, remove the header. Remove *bool `json:"remove,omitempty" tf:"remove,omitempty"` - // New value for a header. Header values support the following - // formatters. + // New value for a header. Header values support the following formatters. Replace *string `json:"replace,omitempty" tf:"replace,omitempty"` } @@ -621,8 +583,7 @@ type ModifyResponseHeadersParameters struct { // +kubebuilder:validation:Optional Remove *bool `json:"remove,omitempty" tf:"remove,omitempty"` - // New value for a header. Header values support the following - // formatters. + // New value for a header. Header values support the following formatters. // +kubebuilder:validation:Optional Replace *string `json:"replace,omitempty" tf:"replace,omitempty"` } @@ -800,16 +761,13 @@ type RedirectActionInitParameters struct { // Replaces port. ReplacePort *float64 `json:"replacePort,omitempty" tf:"replace_port,omitempty"` - // Replace only matched prefix. Example: match:{ prefix_match: "/some" } - // redirect: { replace_prefix: "/other" } will redirect "/something" to "/otherthing". + // Replace only matched prefix. Example: match:{ prefix_match: "/some" } redirect: { replace_prefix: "/other" } will redirect "/something" to "/otherthing". ReplacePrefix *string `json:"replacePrefix,omitempty" tf:"replace_prefix,omitempty"` - // Replaces scheme. If the original scheme is http or https, will also remove the - // 80 or 443 port, if present. + // Replaces scheme. If the original scheme is http or https, will also remove the 80 or 443 port, if present. ReplaceScheme *string `json:"replaceScheme,omitempty" tf:"replace_scheme,omitempty"` - // The HTTP status code to use in the redirect response. Supported values are: - // moved_permanently, found, see_other, temporary_redirect, permanent_redirect. + // The HTTP status code to use in the redirect response. Supported values are: moved_permanently, found, see_other, temporary_redirect, permanent_redirect. ResponseCode *string `json:"responseCode,omitempty" tf:"response_code,omitempty"` } @@ -825,16 +783,13 @@ type RedirectActionObservation struct { // Replaces port. ReplacePort *float64 `json:"replacePort,omitempty" tf:"replace_port,omitempty"` - // Replace only matched prefix. Example: match:{ prefix_match: "/some" } - // redirect: { replace_prefix: "/other" } will redirect "/something" to "/otherthing". + // Replace only matched prefix. Example: match:{ prefix_match: "/some" } redirect: { replace_prefix: "/other" } will redirect "/something" to "/otherthing". ReplacePrefix *string `json:"replacePrefix,omitempty" tf:"replace_prefix,omitempty"` - // Replaces scheme. If the original scheme is http or https, will also remove the - // 80 or 443 port, if present. + // Replaces scheme. If the original scheme is http or https, will also remove the 80 or 443 port, if present. ReplaceScheme *string `json:"replaceScheme,omitempty" tf:"replace_scheme,omitempty"` - // The HTTP status code to use in the redirect response. Supported values are: - // moved_permanently, found, see_other, temporary_redirect, permanent_redirect. + // The HTTP status code to use in the redirect response. Supported values are: moved_permanently, found, see_other, temporary_redirect, permanent_redirect. ResponseCode *string `json:"responseCode,omitempty" tf:"response_code,omitempty"` } @@ -855,18 +810,15 @@ type RedirectActionParameters struct { // +kubebuilder:validation:Optional ReplacePort *float64 `json:"replacePort,omitempty" tf:"replace_port,omitempty"` - // Replace only matched prefix. Example: match:{ prefix_match: "/some" } - // redirect: { replace_prefix: "/other" } will redirect "/something" to "/otherthing". + // Replace only matched prefix. Example: match:{ prefix_match: "/some" } redirect: { replace_prefix: "/other" } will redirect "/something" to "/otherthing". // +kubebuilder:validation:Optional ReplacePrefix *string `json:"replacePrefix,omitempty" tf:"replace_prefix,omitempty"` - // Replaces scheme. If the original scheme is http or https, will also remove the - // 80 or 443 port, if present. + // Replaces scheme. If the original scheme is http or https, will also remove the 80 or 443 port, if present. // +kubebuilder:validation:Optional ReplaceScheme *string `json:"replaceScheme,omitempty" tf:"replace_scheme,omitempty"` - // The HTTP status code to use in the redirect response. Supported values are: - // moved_permanently, found, see_other, temporary_redirect, permanent_redirect. + // The HTTP status code to use in the redirect response. Supported values are: moved_permanently, found, see_other, temporary_redirect, permanent_redirect. // +kubebuilder:validation:Optional ResponseCode *string `json:"responseCode,omitempty" tf:"response_code,omitempty"` } @@ -986,8 +938,7 @@ type RouteRouteOptionsParameters struct { type VirtualHostInitParameters struct { - // A list of domains (host/authority header) that will be matched to this virtual host. Wildcard - // hosts are supported in the form of '.foo.com' or '-bar.foo.com'. If not specified, all domains will be matched. + // A list of domains (host/authority header) that will be matched to this virtual host. Wildcard hosts are supported in the form of '.foo.com' or '-bar.foo.com'. If not specified, all domains will be matched. // +listType=set Authority []*string `json:"authority,omitempty" tf:"authority,omitempty"` @@ -1003,19 +954,16 @@ type VirtualHostInitParameters struct { // +kubebuilder:validation:Optional HTTPRouterIDSelector *v1.Selector `json:"httpRouterIdSelector,omitempty" tf:"-"` - // Apply the following modifications to the request - // headers. The structure is documented below. + // Apply the following modifications to the request headers. The structure is documented below. ModifyRequestHeaders []ModifyRequestHeadersInitParameters `json:"modifyRequestHeaders,omitempty" tf:"modify_request_headers,omitempty"` - // Apply the following modifications to the response - // headers. The structure is documented below. + // Apply the following modifications to the response headers. The structure is documented below. ModifyResponseHeaders []ModifyResponseHeadersInitParameters `json:"modifyResponseHeaders,omitempty" tf:"modify_response_headers,omitempty"` // Name of the virtual host. Provided by the client when the virtual host is created. Name *string `json:"name,omitempty" tf:"name,omitempty"` - // A Route resource. Routes are matched in-order. Be careful when adding them to the end. For instance, having - // http '/' match first makes all other routes unused. The structure is documented below. + // A Route resource. Routes are matched in-order. Be careful when adding them to the end. For instance, having http '/' match first makes all other routes unused. The structure is documented below. Route []RouteInitParameters `json:"route,omitempty" tf:"route,omitempty"` // Route options for the virtual host. The structure is documented below. @@ -1024,8 +972,7 @@ type VirtualHostInitParameters struct { type VirtualHostObservation struct { - // A list of domains (host/authority header) that will be matched to this virtual host. Wildcard - // hosts are supported in the form of '.foo.com' or '-bar.foo.com'. If not specified, all domains will be matched. + // A list of domains (host/authority header) that will be matched to this virtual host. Wildcard hosts are supported in the form of '.foo.com' or '-bar.foo.com'. If not specified, all domains will be matched. // +listType=set Authority []*string `json:"authority,omitempty" tf:"authority,omitempty"` @@ -1035,19 +982,16 @@ type VirtualHostObservation struct { // The ID of the virtual host. ID *string `json:"id,omitempty" tf:"id,omitempty"` - // Apply the following modifications to the request - // headers. The structure is documented below. + // Apply the following modifications to the request headers. The structure is documented below. ModifyRequestHeaders []ModifyRequestHeadersObservation `json:"modifyRequestHeaders,omitempty" tf:"modify_request_headers,omitempty"` - // Apply the following modifications to the response - // headers. The structure is documented below. + // Apply the following modifications to the response headers. The structure is documented below. ModifyResponseHeaders []ModifyResponseHeadersObservation `json:"modifyResponseHeaders,omitempty" tf:"modify_response_headers,omitempty"` // Name of the virtual host. Provided by the client when the virtual host is created. Name *string `json:"name,omitempty" tf:"name,omitempty"` - // A Route resource. Routes are matched in-order. Be careful when adding them to the end. For instance, having - // http '/' match first makes all other routes unused. The structure is documented below. + // A Route resource. Routes are matched in-order. Be careful when adding them to the end. For instance, having http '/' match first makes all other routes unused. The structure is documented below. Route []RouteObservation `json:"route,omitempty" tf:"route,omitempty"` // Route options for the virtual host. The structure is documented below. @@ -1056,8 +1000,7 @@ type VirtualHostObservation struct { type VirtualHostParameters struct { - // A list of domains (host/authority header) that will be matched to this virtual host. Wildcard - // hosts are supported in the form of '.foo.com' or '-bar.foo.com'. If not specified, all domains will be matched. + // A list of domains (host/authority header) that will be matched to this virtual host. Wildcard hosts are supported in the form of '.foo.com' or '-bar.foo.com'. If not specified, all domains will be matched. // +kubebuilder:validation:Optional // +listType=set Authority []*string `json:"authority,omitempty" tf:"authority,omitempty"` @@ -1075,13 +1018,11 @@ type VirtualHostParameters struct { // +kubebuilder:validation:Optional HTTPRouterIDSelector *v1.Selector `json:"httpRouterIdSelector,omitempty" tf:"-"` - // Apply the following modifications to the request - // headers. The structure is documented below. + // Apply the following modifications to the request headers. The structure is documented below. // +kubebuilder:validation:Optional ModifyRequestHeaders []ModifyRequestHeadersParameters `json:"modifyRequestHeaders,omitempty" tf:"modify_request_headers,omitempty"` - // Apply the following modifications to the response - // headers. The structure is documented below. + // Apply the following modifications to the response headers. The structure is documented below. // +kubebuilder:validation:Optional ModifyResponseHeaders []ModifyResponseHeadersParameters `json:"modifyResponseHeaders,omitempty" tf:"modify_response_headers,omitempty"` @@ -1089,8 +1030,7 @@ type VirtualHostParameters struct { // +kubebuilder:validation:Optional Name *string `json:"name,omitempty" tf:"name,omitempty"` - // A Route resource. Routes are matched in-order. Be careful when adding them to the end. For instance, having - // http '/' match first makes all other routes unused. The structure is documented below. + // A Route resource. Routes are matched in-order. Be careful when adding them to the end. For instance, having http '/' match first makes all other routes unused. The structure is documented below. // +kubebuilder:validation:Optional Route []RouteParameters `json:"route,omitempty" tf:"route,omitempty"` diff --git a/apis/audit/v1alpha1/zz_generated.deepcopy.go b/apis/audit/v1alpha1/zz_generated.deepcopy.go index 896a90a..9411c2c 100644 --- a/apis/audit/v1alpha1/zz_generated.deepcopy.go +++ b/apis/audit/v1alpha1/zz_generated.deepcopy.go @@ -234,6 +234,153 @@ func (in *CategoriesParameters) DeepCopy() *CategoriesParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *DataEventsFilterInitParameters) DeepCopyInto(out *DataEventsFilterInitParameters) { + *out = *in + if in.ExcludedEvents != nil { + in, out := &in.ExcludedEvents, &out.ExcludedEvents + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.IncludedEvents != nil { + in, out := &in.IncludedEvents, &out.IncludedEvents + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.ResourceScope != nil { + in, out := &in.ResourceScope, &out.ResourceScope + *out = make([]ResourceScopeInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Service != nil { + in, out := &in.Service, &out.Service + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DataEventsFilterInitParameters. +func (in *DataEventsFilterInitParameters) DeepCopy() *DataEventsFilterInitParameters { + if in == nil { + return nil + } + out := new(DataEventsFilterInitParameters) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *DataEventsFilterObservation) DeepCopyInto(out *DataEventsFilterObservation) { + *out = *in + if in.ExcludedEvents != nil { + in, out := &in.ExcludedEvents, &out.ExcludedEvents + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.IncludedEvents != nil { + in, out := &in.IncludedEvents, &out.IncludedEvents + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.ResourceScope != nil { + in, out := &in.ResourceScope, &out.ResourceScope + *out = make([]ResourceScopeObservation, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Service != nil { + in, out := &in.Service, &out.Service + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DataEventsFilterObservation. +func (in *DataEventsFilterObservation) DeepCopy() *DataEventsFilterObservation { + if in == nil { + return nil + } + out := new(DataEventsFilterObservation) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *DataEventsFilterParameters) DeepCopyInto(out *DataEventsFilterParameters) { + *out = *in + if in.ExcludedEvents != nil { + in, out := &in.ExcludedEvents, &out.ExcludedEvents + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.IncludedEvents != nil { + in, out := &in.IncludedEvents, &out.IncludedEvents + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.ResourceScope != nil { + in, out := &in.ResourceScope, &out.ResourceScope + *out = make([]ResourceScopeParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Service != nil { + in, out := &in.Service, &out.Service + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DataEventsFilterParameters. +func (in *DataEventsFilterParameters) DeepCopy() *DataEventsFilterParameters { + if in == nil { + return nil + } + out := new(DataEventsFilterParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *DataStreamDestinationInitParameters) DeepCopyInto(out *DataStreamDestinationInitParameters) { *out = *in @@ -585,6 +732,93 @@ func (in *FilterPathFilterParameters) DeepCopy() *FilterPathFilterParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *FilteringPolicyInitParameters) DeepCopyInto(out *FilteringPolicyInitParameters) { + *out = *in + if in.DataEventsFilter != nil { + in, out := &in.DataEventsFilter, &out.DataEventsFilter + *out = make([]DataEventsFilterInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.ManagementEventsFilter != nil { + in, out := &in.ManagementEventsFilter, &out.ManagementEventsFilter + *out = make([]ManagementEventsFilterInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new FilteringPolicyInitParameters. +func (in *FilteringPolicyInitParameters) DeepCopy() *FilteringPolicyInitParameters { + if in == nil { + return nil + } + out := new(FilteringPolicyInitParameters) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *FilteringPolicyObservation) DeepCopyInto(out *FilteringPolicyObservation) { + *out = *in + if in.DataEventsFilter != nil { + in, out := &in.DataEventsFilter, &out.DataEventsFilter + *out = make([]DataEventsFilterObservation, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.ManagementEventsFilter != nil { + in, out := &in.ManagementEventsFilter, &out.ManagementEventsFilter + *out = make([]ManagementEventsFilterObservation, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new FilteringPolicyObservation. +func (in *FilteringPolicyObservation) DeepCopy() *FilteringPolicyObservation { + if in == nil { + return nil + } + out := new(FilteringPolicyObservation) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *FilteringPolicyParameters) DeepCopyInto(out *FilteringPolicyParameters) { + *out = *in + if in.DataEventsFilter != nil { + in, out := &in.DataEventsFilter, &out.DataEventsFilter + *out = make([]DataEventsFilterParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.ManagementEventsFilter != nil { + in, out := &in.ManagementEventsFilter, &out.ManagementEventsFilter + *out = make([]ManagementEventsFilterParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new FilteringPolicyParameters. +func (in *FilteringPolicyParameters) DeepCopy() *FilteringPolicyParameters { + if in == nil { + return nil + } + out := new(FilteringPolicyParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *LoggingDestinationInitParameters) DeepCopyInto(out *LoggingDestinationInitParameters) { *out = *in @@ -645,6 +879,147 @@ func (in *LoggingDestinationParameters) DeepCopy() *LoggingDestinationParameters return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *ManagementEventsFilterInitParameters) DeepCopyInto(out *ManagementEventsFilterInitParameters) { + *out = *in + if in.ResourceScope != nil { + in, out := &in.ResourceScope, &out.ResourceScope + *out = make([]ManagementEventsFilterResourceScopeInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ManagementEventsFilterInitParameters. +func (in *ManagementEventsFilterInitParameters) DeepCopy() *ManagementEventsFilterInitParameters { + if in == nil { + return nil + } + out := new(ManagementEventsFilterInitParameters) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *ManagementEventsFilterObservation) DeepCopyInto(out *ManagementEventsFilterObservation) { + *out = *in + if in.ResourceScope != nil { + in, out := &in.ResourceScope, &out.ResourceScope + *out = make([]ManagementEventsFilterResourceScopeObservation, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ManagementEventsFilterObservation. +func (in *ManagementEventsFilterObservation) DeepCopy() *ManagementEventsFilterObservation { + if in == nil { + return nil + } + out := new(ManagementEventsFilterObservation) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *ManagementEventsFilterParameters) DeepCopyInto(out *ManagementEventsFilterParameters) { + *out = *in + if in.ResourceScope != nil { + in, out := &in.ResourceScope, &out.ResourceScope + *out = make([]ManagementEventsFilterResourceScopeParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ManagementEventsFilterParameters. +func (in *ManagementEventsFilterParameters) DeepCopy() *ManagementEventsFilterParameters { + if in == nil { + return nil + } + out := new(ManagementEventsFilterParameters) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *ManagementEventsFilterResourceScopeInitParameters) DeepCopyInto(out *ManagementEventsFilterResourceScopeInitParameters) { + *out = *in + if in.ResourceID != nil { + in, out := &in.ResourceID, &out.ResourceID + *out = new(string) + **out = **in + } + if in.ResourceType != nil { + in, out := &in.ResourceType, &out.ResourceType + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ManagementEventsFilterResourceScopeInitParameters. +func (in *ManagementEventsFilterResourceScopeInitParameters) DeepCopy() *ManagementEventsFilterResourceScopeInitParameters { + if in == nil { + return nil + } + out := new(ManagementEventsFilterResourceScopeInitParameters) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *ManagementEventsFilterResourceScopeObservation) DeepCopyInto(out *ManagementEventsFilterResourceScopeObservation) { + *out = *in + if in.ResourceID != nil { + in, out := &in.ResourceID, &out.ResourceID + *out = new(string) + **out = **in + } + if in.ResourceType != nil { + in, out := &in.ResourceType, &out.ResourceType + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ManagementEventsFilterResourceScopeObservation. +func (in *ManagementEventsFilterResourceScopeObservation) DeepCopy() *ManagementEventsFilterResourceScopeObservation { + if in == nil { + return nil + } + out := new(ManagementEventsFilterResourceScopeObservation) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *ManagementEventsFilterResourceScopeParameters) DeepCopyInto(out *ManagementEventsFilterResourceScopeParameters) { + *out = *in + if in.ResourceID != nil { + in, out := &in.ResourceID, &out.ResourceID + *out = new(string) + **out = **in + } + if in.ResourceType != nil { + in, out := &in.ResourceType, &out.ResourceType + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ManagementEventsFilterResourceScopeParameters. +func (in *ManagementEventsFilterResourceScopeParameters) DeepCopy() *ManagementEventsFilterResourceScopeParameters { + if in == nil { + return nil + } + out := new(ManagementEventsFilterResourceScopeParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *PathFilterAnyFilterInitParameters) DeepCopyInto(out *PathFilterAnyFilterInitParameters) { *out = *in @@ -903,6 +1278,81 @@ func (in *PathFilterSomeFilterParameters) DeepCopy() *PathFilterSomeFilterParame return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *ResourceScopeInitParameters) DeepCopyInto(out *ResourceScopeInitParameters) { + *out = *in + if in.ResourceID != nil { + in, out := &in.ResourceID, &out.ResourceID + *out = new(string) + **out = **in + } + if in.ResourceType != nil { + in, out := &in.ResourceType, &out.ResourceType + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ResourceScopeInitParameters. +func (in *ResourceScopeInitParameters) DeepCopy() *ResourceScopeInitParameters { + if in == nil { + return nil + } + out := new(ResourceScopeInitParameters) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *ResourceScopeObservation) DeepCopyInto(out *ResourceScopeObservation) { + *out = *in + if in.ResourceID != nil { + in, out := &in.ResourceID, &out.ResourceID + *out = new(string) + **out = **in + } + if in.ResourceType != nil { + in, out := &in.ResourceType, &out.ResourceType + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ResourceScopeObservation. +func (in *ResourceScopeObservation) DeepCopy() *ResourceScopeObservation { + if in == nil { + return nil + } + out := new(ResourceScopeObservation) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *ResourceScopeParameters) DeepCopyInto(out *ResourceScopeParameters) { + *out = *in + if in.ResourceID != nil { + in, out := &in.ResourceID, &out.ResourceID + *out = new(string) + **out = **in + } + if in.ResourceType != nil { + in, out := &in.ResourceType, &out.ResourceType + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ResourceScopeParameters. +func (in *ResourceScopeParameters) DeepCopy() *ResourceScopeParameters { + if in == nil { + return nil + } + out := new(ResourceScopeParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *SomeFilterAnyFiltersInitParameters) DeepCopyInto(out *SomeFilterAnyFiltersInitParameters) { *out = *in @@ -1198,6 +1648,13 @@ func (in *TrailsTrailInitParameters) DeepCopyInto(out *TrailsTrailInitParameters (*in)[i].DeepCopyInto(&(*out)[i]) } } + if in.FilteringPolicy != nil { + in, out := &in.FilteringPolicy, &out.FilteringPolicy + *out = make([]FilteringPolicyInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } if in.FolderID != nil { in, out := &in.FolderID, &out.FolderID *out = new(string) @@ -1319,6 +1776,13 @@ func (in *TrailsTrailObservation) DeepCopyInto(out *TrailsTrailObservation) { (*in)[i].DeepCopyInto(&(*out)[i]) } } + if in.FilteringPolicy != nil { + in, out := &in.FilteringPolicy, &out.FilteringPolicy + *out = make([]FilteringPolicyObservation, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } if in.FolderID != nil { in, out := &in.FolderID, &out.FolderID *out = new(string) @@ -1413,6 +1877,13 @@ func (in *TrailsTrailParameters) DeepCopyInto(out *TrailsTrailParameters) { (*in)[i].DeepCopyInto(&(*out)[i]) } } + if in.FilteringPolicy != nil { + in, out := &in.FilteringPolicy, &out.FilteringPolicy + *out = make([]FilteringPolicyParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } if in.FolderID != nil { in, out := &in.FolderID, &out.FolderID *out = new(string) diff --git a/apis/audit/v1alpha1/zz_trailstrail_terraformed.go b/apis/audit/v1alpha1/zz_trailstrail_terraformed.go index bba3437..79cd7f7 100755 --- a/apis/audit/v1alpha1/zz_trailstrail_terraformed.go +++ b/apis/audit/v1alpha1/zz_trailstrail_terraformed.go @@ -121,5 +121,5 @@ func (tr *TrailsTrail) LateInitialize(attrs []byte) (bool, error) { // GetTerraformSchemaVersion returns the associated Terraform schema version func (tr *TrailsTrail) GetTerraformSchemaVersion() int { - return 0 + return 1 } diff --git a/apis/audit/v1alpha1/zz_trailstrail_types.go b/apis/audit/v1alpha1/zz_trailstrail_types.go index 5c838cc..c2e2853 100755 --- a/apis/audit/v1alpha1/zz_trailstrail_types.go +++ b/apis/audit/v1alpha1/zz_trailstrail_types.go @@ -69,33 +69,82 @@ type AnyFiltersParameters struct { type CategoriesInitParameters struct { - // Type of the event by its relation to the cloud resource model. Possible values: CONTROL_PLANE/DATA_PLANE + // Type of the event by its relation to the cloud resource model. Possible values: CONTROL_PLANE/DATA_PLANE. Plane *string `json:"plane,omitempty" tf:"plane,omitempty"` - // Type of the event by its operation effect on the resource. Possible values: READ/WRITE + // Type of the event by its operation effect on the resource. Possible values: READ/WRITE. Type *string `json:"type,omitempty" tf:"type,omitempty"` } type CategoriesObservation struct { - // Type of the event by its relation to the cloud resource model. Possible values: CONTROL_PLANE/DATA_PLANE + // Type of the event by its relation to the cloud resource model. Possible values: CONTROL_PLANE/DATA_PLANE. Plane *string `json:"plane,omitempty" tf:"plane,omitempty"` - // Type of the event by its operation effect on the resource. Possible values: READ/WRITE + // Type of the event by its operation effect on the resource. Possible values: READ/WRITE. Type *string `json:"type,omitempty" tf:"type,omitempty"` } type CategoriesParameters struct { - // Type of the event by its relation to the cloud resource model. Possible values: CONTROL_PLANE/DATA_PLANE + // Type of the event by its relation to the cloud resource model. Possible values: CONTROL_PLANE/DATA_PLANE. // +kubebuilder:validation:Optional Plane *string `json:"plane" tf:"plane,omitempty"` - // Type of the event by its operation effect on the resource. Possible values: READ/WRITE + // Type of the event by its operation effect on the resource. Possible values: READ/WRITE. // +kubebuilder:validation:Optional Type *string `json:"type" tf:"type,omitempty"` } +type DataEventsFilterInitParameters struct { + + // A list of events that won't be gathered by the trail from this service. New events will be automatically gathered when this option is specified. Mutually exclusive with included_events. + ExcludedEvents []*string `json:"excludedEvents,omitempty" tf:"excluded_events,omitempty"` + + // A list of events that will be gathered by the trail from this service. New events won't be gathered by default when this option is specified. Mutually exclusive with excluded_events. + IncludedEvents []*string `json:"includedEvents,omitempty" tf:"included_events,omitempty"` + + // Structure describing that events will be gathered from the specified resource. + ResourceScope []ResourceScopeInitParameters `json:"resourceScope,omitempty" tf:"resource_scope,omitempty"` + + // ID of the service which events will be gathered. + Service *string `json:"service,omitempty" tf:"service,omitempty"` +} + +type DataEventsFilterObservation struct { + + // A list of events that won't be gathered by the trail from this service. New events will be automatically gathered when this option is specified. Mutually exclusive with included_events. + ExcludedEvents []*string `json:"excludedEvents,omitempty" tf:"excluded_events,omitempty"` + + // A list of events that will be gathered by the trail from this service. New events won't be gathered by default when this option is specified. Mutually exclusive with excluded_events. + IncludedEvents []*string `json:"includedEvents,omitempty" tf:"included_events,omitempty"` + + // Structure describing that events will be gathered from the specified resource. + ResourceScope []ResourceScopeObservation `json:"resourceScope,omitempty" tf:"resource_scope,omitempty"` + + // ID of the service which events will be gathered. + Service *string `json:"service,omitempty" tf:"service,omitempty"` +} + +type DataEventsFilterParameters struct { + + // A list of events that won't be gathered by the trail from this service. New events will be automatically gathered when this option is specified. Mutually exclusive with included_events. + // +kubebuilder:validation:Optional + ExcludedEvents []*string `json:"excludedEvents,omitempty" tf:"excluded_events,omitempty"` + + // A list of events that will be gathered by the trail from this service. New events won't be gathered by default when this option is specified. Mutually exclusive with excluded_events. + // +kubebuilder:validation:Optional + IncludedEvents []*string `json:"includedEvents,omitempty" tf:"included_events,omitempty"` + + // Structure describing that events will be gathered from the specified resource. + // +kubebuilder:validation:Optional + ResourceScope []ResourceScopeParameters `json:"resourceScope" tf:"resource_scope,omitempty"` + + // ID of the service which events will be gathered. + // +kubebuilder:validation:Optional + Service *string `json:"service" tf:"service,omitempty"` +} + type DataStreamDestinationInitParameters struct { // ID of the YDB hosting the destination data stream. @@ -127,68 +176,68 @@ type DataStreamDestinationParameters struct { type EventFiltersInitParameters struct { - // List of structures describing categories of gathered data plane events + // blocks. With the introduction of included_events/excluded_events you can configure filtering per each event type. Categories []CategoriesInitParameters `json:"categories,omitempty" tf:"categories,omitempty"` - // Structure describing filtering process for default control plane events. If omitted, the trail will not deliver this category + // with the appropriate resource_scope blocks. You have to account that resource_scope does not support specifying relations between resources, so your configuration will simplify to only the actual resources, that will be monitored. PathFilter []PathFilterInitParameters `json:"pathFilter,omitempty" tf:"path_filter,omitempty"` - // ID of the service which events will be gathered + // ID of the service which events will be gathered. Service *string `json:"service,omitempty" tf:"service,omitempty"` } type EventFiltersObservation struct { - // List of structures describing categories of gathered data plane events + // blocks. With the introduction of included_events/excluded_events you can configure filtering per each event type. Categories []CategoriesObservation `json:"categories,omitempty" tf:"categories,omitempty"` - // Structure describing filtering process for default control plane events. If omitted, the trail will not deliver this category + // with the appropriate resource_scope blocks. You have to account that resource_scope does not support specifying relations between resources, so your configuration will simplify to only the actual resources, that will be monitored. PathFilter []PathFilterObservation `json:"pathFilter,omitempty" tf:"path_filter,omitempty"` - // ID of the service which events will be gathered + // ID of the service which events will be gathered. Service *string `json:"service,omitempty" tf:"service,omitempty"` } type EventFiltersParameters struct { - // List of structures describing categories of gathered data plane events + // blocks. With the introduction of included_events/excluded_events you can configure filtering per each event type. // +kubebuilder:validation:Optional Categories []CategoriesParameters `json:"categories" tf:"categories,omitempty"` - // Structure describing filtering process for default control plane events. If omitted, the trail will not deliver this category + // with the appropriate resource_scope blocks. You have to account that resource_scope does not support specifying relations between resources, so your configuration will simplify to only the actual resources, that will be monitored. // +kubebuilder:validation:Optional PathFilter []PathFilterParameters `json:"pathFilter" tf:"path_filter,omitempty"` - // ID of the service which events will be gathered + // ID of the service which events will be gathered. // +kubebuilder:validation:Optional Service *string `json:"service" tf:"service,omitempty"` } type FilterInitParameters struct { - // Structure describing filtering process for the service-specific data plane events + // Structure describing filtering process for the service-specific data plane events. EventFilters []EventFiltersInitParameters `json:"eventFilters,omitempty" tf:"event_filters,omitempty"` - // Structure describing filtering process for default control plane events. If omitted, the trail will not deliver this category + // block with the filtering_policy.management_events_filter. New API states management events filtration in a more clear way. The resources, that were specified, must migrate into the filtering_policy.management_events_filter.resource_scope PathFilter []FilterPathFilterInitParameters `json:"pathFilter,omitempty" tf:"path_filter,omitempty"` } type FilterObservation struct { - // Structure describing filtering process for the service-specific data plane events + // Structure describing filtering process for the service-specific data plane events. EventFilters []EventFiltersObservation `json:"eventFilters,omitempty" tf:"event_filters,omitempty"` - // Structure describing filtering process for default control plane events. If omitted, the trail will not deliver this category + // block with the filtering_policy.management_events_filter. New API states management events filtration in a more clear way. The resources, that were specified, must migrate into the filtering_policy.management_events_filter.resource_scope PathFilter []FilterPathFilterObservation `json:"pathFilter,omitempty" tf:"path_filter,omitempty"` } type FilterParameters struct { - // Structure describing filtering process for the service-specific data plane events + // Structure describing filtering process for the service-specific data plane events. // +kubebuilder:validation:Optional EventFilters []EventFiltersParameters `json:"eventFilters,omitempty" tf:"event_filters,omitempty"` - // Structure describing filtering process for default control plane events. If omitted, the trail will not deliver this category + // block with the filtering_policy.management_events_filter. New API states management events filtration in a more clear way. The resources, that were specified, must migrate into the filtering_policy.management_events_filter.resource_scope // +kubebuilder:validation:Optional PathFilter []FilterPathFilterParameters `json:"pathFilter,omitempty" tf:"path_filter,omitempty"` } @@ -222,25 +271,102 @@ type FilterPathFilterParameters struct { SomeFilter []PathFilterSomeFilterParameters `json:"someFilter,omitempty" tf:"some_filter,omitempty"` } +type FilteringPolicyInitParameters struct { + + // Structure describing filtering process for the service-specific data events. + DataEventsFilter []DataEventsFilterInitParameters `json:"dataEventsFilter,omitempty" tf:"data_events_filter,omitempty"` + + // Structure describing filtering process for management events. + ManagementEventsFilter []ManagementEventsFilterInitParameters `json:"managementEventsFilter,omitempty" tf:"management_events_filter,omitempty"` +} + +type FilteringPolicyObservation struct { + + // Structure describing filtering process for the service-specific data events. + DataEventsFilter []DataEventsFilterObservation `json:"dataEventsFilter,omitempty" tf:"data_events_filter,omitempty"` + + // Structure describing filtering process for management events. + ManagementEventsFilter []ManagementEventsFilterObservation `json:"managementEventsFilter,omitempty" tf:"management_events_filter,omitempty"` +} + +type FilteringPolicyParameters struct { + + // Structure describing filtering process for the service-specific data events. + // +kubebuilder:validation:Optional + DataEventsFilter []DataEventsFilterParameters `json:"dataEventsFilter,omitempty" tf:"data_events_filter,omitempty"` + + // Structure describing filtering process for management events. + // +kubebuilder:validation:Optional + ManagementEventsFilter []ManagementEventsFilterParameters `json:"managementEventsFilter,omitempty" tf:"management_events_filter,omitempty"` +} + type LoggingDestinationInitParameters struct { - // ID of the destination Cloud Logging Group + // ID of the destination Cloud Logging Group. LogGroupID *string `json:"logGroupId,omitempty" tf:"log_group_id,omitempty"` } type LoggingDestinationObservation struct { - // ID of the destination Cloud Logging Group + // ID of the destination Cloud Logging Group. LogGroupID *string `json:"logGroupId,omitempty" tf:"log_group_id,omitempty"` } type LoggingDestinationParameters struct { - // ID of the destination Cloud Logging Group + // ID of the destination Cloud Logging Group. // +kubebuilder:validation:Optional LogGroupID *string `json:"logGroupId" tf:"log_group_id,omitempty"` } +type ManagementEventsFilterInitParameters struct { + + // Structure describing that events will be gathered from the specified resource. + ResourceScope []ManagementEventsFilterResourceScopeInitParameters `json:"resourceScope,omitempty" tf:"resource_scope,omitempty"` +} + +type ManagementEventsFilterObservation struct { + + // Structure describing that events will be gathered from the specified resource. + ResourceScope []ManagementEventsFilterResourceScopeObservation `json:"resourceScope,omitempty" tf:"resource_scope,omitempty"` +} + +type ManagementEventsFilterParameters struct { + + // Structure describing that events will be gathered from the specified resource. + // +kubebuilder:validation:Optional + ResourceScope []ManagementEventsFilterResourceScopeParameters `json:"resourceScope" tf:"resource_scope,omitempty"` +} + +type ManagementEventsFilterResourceScopeInitParameters struct { + + // ID of the parent resource. + ResourceID *string `json:"resourceId,omitempty" tf:"resource_id,omitempty"` + + // Resource type of the parent resource. + ResourceType *string `json:"resourceType,omitempty" tf:"resource_type,omitempty"` +} + +type ManagementEventsFilterResourceScopeObservation struct { + + // ID of the parent resource. + ResourceID *string `json:"resourceId,omitempty" tf:"resource_id,omitempty"` + + // Resource type of the parent resource. + ResourceType *string `json:"resourceType,omitempty" tf:"resource_type,omitempty"` +} + +type ManagementEventsFilterResourceScopeParameters struct { + + // ID of the parent resource. + // +kubebuilder:validation:Optional + ResourceID *string `json:"resourceId" tf:"resource_id,omitempty"` + + // Resource type of the parent resource. + // +kubebuilder:validation:Optional + ResourceType *string `json:"resourceType" tf:"resource_type,omitempty"` +} + type PathFilterAnyFilterInitParameters struct { // ID of the parent resource. @@ -301,7 +427,7 @@ type PathFilterParameters struct { type PathFilterSomeFilterInitParameters struct { - // List of child resources from which events will be gathered + // List of child resources from which events will be gathered. AnyFilters []SomeFilterAnyFiltersInitParameters `json:"anyFilters,omitempty" tf:"any_filters,omitempty"` // ID of the parent resource. @@ -313,7 +439,7 @@ type PathFilterSomeFilterInitParameters struct { type PathFilterSomeFilterObservation struct { - // List of child resources from which events will be gathered + // List of child resources from which events will be gathered. AnyFilters []SomeFilterAnyFiltersObservation `json:"anyFilters,omitempty" tf:"any_filters,omitempty"` // ID of the parent resource. @@ -325,7 +451,7 @@ type PathFilterSomeFilterObservation struct { type PathFilterSomeFilterParameters struct { - // List of child resources from which events will be gathered + // List of child resources from which events will be gathered. // +kubebuilder:validation:Optional AnyFilters []SomeFilterAnyFiltersParameters `json:"anyFilters" tf:"any_filters,omitempty"` @@ -338,6 +464,35 @@ type PathFilterSomeFilterParameters struct { ResourceType *string `json:"resourceType" tf:"resource_type,omitempty"` } +type ResourceScopeInitParameters struct { + + // ID of the parent resource. + ResourceID *string `json:"resourceId,omitempty" tf:"resource_id,omitempty"` + + // Resource type of the parent resource. + ResourceType *string `json:"resourceType,omitempty" tf:"resource_type,omitempty"` +} + +type ResourceScopeObservation struct { + + // ID of the parent resource. + ResourceID *string `json:"resourceId,omitempty" tf:"resource_id,omitempty"` + + // Resource type of the parent resource. + ResourceType *string `json:"resourceType,omitempty" tf:"resource_type,omitempty"` +} + +type ResourceScopeParameters struct { + + // ID of the parent resource. + // +kubebuilder:validation:Optional + ResourceID *string `json:"resourceId" tf:"resource_id,omitempty"` + + // Resource type of the parent resource. + // +kubebuilder:validation:Optional + ResourceType *string `json:"resourceType" tf:"resource_type,omitempty"` +} + type SomeFilterAnyFiltersInitParameters struct { // ID of the parent resource. @@ -369,7 +524,7 @@ type SomeFilterAnyFiltersParameters struct { type SomeFilterInitParameters struct { - // List of child resources from which events will be gathered + // List of child resources from which events will be gathered. AnyFilters []AnyFiltersInitParameters `json:"anyFilters,omitempty" tf:"any_filters,omitempty"` // ID of the parent resource. @@ -381,7 +536,7 @@ type SomeFilterInitParameters struct { type SomeFilterObservation struct { - // List of child resources from which events will be gathered + // List of child resources from which events will be gathered. AnyFilters []AnyFiltersObservation `json:"anyFilters,omitempty" tf:"any_filters,omitempty"` // ID of the parent resource. @@ -393,7 +548,7 @@ type SomeFilterObservation struct { type SomeFilterParameters struct { - // List of child resources from which events will be gathered + // List of child resources from which events will be gathered. // +kubebuilder:validation:Optional AnyFilters []AnyFiltersParameters `json:"anyFilters" tf:"any_filters,omitempty"` @@ -408,29 +563,29 @@ type SomeFilterParameters struct { type StorageDestinationInitParameters struct { - // Name of the destination bucket + // Name of the destination bucket. BucketName *string `json:"bucketName,omitempty" tf:"bucket_name,omitempty"` - // Additional prefix of the uploaded objects. If not specified, objects will be uploaded with prefix equal to trail_id + // Additional prefix of the uploaded objects. If not specified, objects will be uploaded with prefix equal to trail_id. ObjectPrefix *string `json:"objectPrefix,omitempty" tf:"object_prefix,omitempty"` } type StorageDestinationObservation struct { - // Name of the destination bucket + // Name of the destination bucket. BucketName *string `json:"bucketName,omitempty" tf:"bucket_name,omitempty"` - // Additional prefix of the uploaded objects. If not specified, objects will be uploaded with prefix equal to trail_id + // Additional prefix of the uploaded objects. If not specified, objects will be uploaded with prefix equal to trail_id. ObjectPrefix *string `json:"objectPrefix,omitempty" tf:"object_prefix,omitempty"` } type StorageDestinationParameters struct { - // Name of the destination bucket + // Name of the destination bucket. // +kubebuilder:validation:Optional BucketName *string `json:"bucketName" tf:"bucket_name,omitempty"` - // Additional prefix of the uploaded objects. If not specified, objects will be uploaded with prefix equal to trail_id + // Additional prefix of the uploaded objects. If not specified, objects will be uploaded with prefix equal to trail_id. // +kubebuilder:validation:Optional ObjectPrefix *string `json:"objectPrefix,omitempty" tf:"object_prefix,omitempty"` } @@ -446,6 +601,9 @@ type TrailsTrailInitParameters struct { // Structure describing event filtering process for the trail. Filter []FilterInitParameters `json:"filter,omitempty" tf:"filter,omitempty"` + // Structure describing event filtering process for the trail. Mutually exclusive with filter. At least one of the management_events_filter or data_events_filter fields will be filled. + FilteringPolicy []FilteringPolicyInitParameters `json:"filteringPolicy,omitempty" tf:"filtering_policy,omitempty"` + // ID of the folder to which the trail belongs. // +crossplane:generate:reference:type=github.com/tagesjump/provider-upjet-yc/apis/resourcemanager/v1alpha1.Folder FolderID *string `json:"folderId,omitempty" tf:"folder_id,omitempty"` @@ -486,6 +644,9 @@ type TrailsTrailObservation struct { // Structure describing event filtering process for the trail. Filter []FilterObservation `json:"filter,omitempty" tf:"filter,omitempty"` + // Structure describing event filtering process for the trail. Mutually exclusive with filter. At least one of the management_events_filter or data_events_filter fields will be filled. + FilteringPolicy []FilteringPolicyObservation `json:"filteringPolicy,omitempty" tf:"filtering_policy,omitempty"` + // ID of the folder to which the trail belongs. FolderID *string `json:"folderId,omitempty" tf:"folder_id,omitempty"` @@ -528,6 +689,10 @@ type TrailsTrailParameters struct { // +kubebuilder:validation:Optional Filter []FilterParameters `json:"filter,omitempty" tf:"filter,omitempty"` + // Structure describing event filtering process for the trail. Mutually exclusive with filter. At least one of the management_events_filter or data_events_filter fields will be filled. + // +kubebuilder:validation:Optional + FilteringPolicy []FilteringPolicyParameters `json:"filteringPolicy,omitempty" tf:"filtering_policy,omitempty"` + // ID of the folder to which the trail belongs. // +crossplane:generate:reference:type=github.com/tagesjump/provider-upjet-yc/apis/resourcemanager/v1alpha1.Folder // +kubebuilder:validation:Optional @@ -599,7 +764,6 @@ type TrailsTrailStatus struct { type TrailsTrail struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.filter) || (has(self.initProvider) && has(self.initProvider.filter))",message="spec.forProvider.filter is a required parameter" // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.name) || (has(self.initProvider) && has(self.initProvider.name))",message="spec.forProvider.name is a required parameter" // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.serviceAccountId) || (has(self.initProvider) && has(self.initProvider.serviceAccountId))",message="spec.forProvider.serviceAccountId is a required parameter" Spec TrailsTrailSpec `json:"spec"` diff --git a/apis/backup/v1alpha1/zz_generated.conversion_hubs.go b/apis/backup/v1alpha1/zz_generated.conversion_hubs.go index 753e5b1..18651b0 100755 --- a/apis/backup/v1alpha1/zz_generated.conversion_hubs.go +++ b/apis/backup/v1alpha1/zz_generated.conversion_hubs.go @@ -4,3 +4,6 @@ package v1alpha1 // Hub marks this type as a conversion hub. func (tr *Policy) Hub() {} + +// Hub marks this type as a conversion hub. +func (tr *PolicyBindings) Hub() {} diff --git a/apis/backup/v1alpha1/zz_generated.deepcopy.go b/apis/backup/v1alpha1/zz_generated.deepcopy.go index 68811ce..af1f5d7 100644 --- a/apis/backup/v1alpha1/zz_generated.deepcopy.go +++ b/apis/backup/v1alpha1/zz_generated.deepcopy.go @@ -9,6 +9,102 @@ import ( runtime "k8s.io/apimachinery/pkg/runtime" ) +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *BackupSetsInitParameters) DeepCopyInto(out *BackupSetsInitParameters) { + *out = *in + if in.ExecuteByInterval != nil { + in, out := &in.ExecuteByInterval, &out.ExecuteByInterval + *out = new(float64) + **out = **in + } + if in.ExecuteByTime != nil { + in, out := &in.ExecuteByTime, &out.ExecuteByTime + *out = make([]ExecuteByTimeInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Type != nil { + in, out := &in.Type, &out.Type + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new BackupSetsInitParameters. +func (in *BackupSetsInitParameters) DeepCopy() *BackupSetsInitParameters { + if in == nil { + return nil + } + out := new(BackupSetsInitParameters) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *BackupSetsObservation) DeepCopyInto(out *BackupSetsObservation) { + *out = *in + if in.ExecuteByInterval != nil { + in, out := &in.ExecuteByInterval, &out.ExecuteByInterval + *out = new(float64) + **out = **in + } + if in.ExecuteByTime != nil { + in, out := &in.ExecuteByTime, &out.ExecuteByTime + *out = make([]ExecuteByTimeObservation, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Type != nil { + in, out := &in.Type, &out.Type + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new BackupSetsObservation. +func (in *BackupSetsObservation) DeepCopy() *BackupSetsObservation { + if in == nil { + return nil + } + out := new(BackupSetsObservation) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *BackupSetsParameters) DeepCopyInto(out *BackupSetsParameters) { + *out = *in + if in.ExecuteByInterval != nil { + in, out := &in.ExecuteByInterval, &out.ExecuteByInterval + *out = new(float64) + **out = **in + } + if in.ExecuteByTime != nil { + in, out := &in.ExecuteByTime, &out.ExecuteByTime + *out = make([]ExecuteByTimeParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Type != nil { + in, out := &in.Type, &out.Type + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new BackupSetsParameters. +func (in *BackupSetsParameters) DeepCopy() *BackupSetsParameters { + if in == nil { + return nil + } + out := new(BackupSetsParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *ExecuteByTimeInitParameters) DeepCopyInto(out *ExecuteByTimeInitParameters) { *out = *in @@ -258,6 +354,215 @@ func (in *Policy) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *PolicyBindings) DeepCopyInto(out *PolicyBindings) { + *out = *in + out.TypeMeta = in.TypeMeta + in.ObjectMeta.DeepCopyInto(&out.ObjectMeta) + in.Spec.DeepCopyInto(&out.Spec) + in.Status.DeepCopyInto(&out.Status) +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PolicyBindings. +func (in *PolicyBindings) DeepCopy() *PolicyBindings { + if in == nil { + return nil + } + out := new(PolicyBindings) + in.DeepCopyInto(out) + return out +} + +// DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object. +func (in *PolicyBindings) DeepCopyObject() runtime.Object { + if c := in.DeepCopy(); c != nil { + return c + } + return nil +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *PolicyBindingsInitParameters) DeepCopyInto(out *PolicyBindingsInitParameters) { + *out = *in + if in.InstanceID != nil { + in, out := &in.InstanceID, &out.InstanceID + *out = new(string) + **out = **in + } + if in.InstanceIDRef != nil { + in, out := &in.InstanceIDRef, &out.InstanceIDRef + *out = new(v1.Reference) + (*in).DeepCopyInto(*out) + } + if in.InstanceIDSelector != nil { + in, out := &in.InstanceIDSelector, &out.InstanceIDSelector + *out = new(v1.Selector) + (*in).DeepCopyInto(*out) + } + if in.PolicyID != nil { + in, out := &in.PolicyID, &out.PolicyID + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PolicyBindingsInitParameters. +func (in *PolicyBindingsInitParameters) DeepCopy() *PolicyBindingsInitParameters { + if in == nil { + return nil + } + out := new(PolicyBindingsInitParameters) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *PolicyBindingsList) DeepCopyInto(out *PolicyBindingsList) { + *out = *in + out.TypeMeta = in.TypeMeta + in.ListMeta.DeepCopyInto(&out.ListMeta) + if in.Items != nil { + in, out := &in.Items, &out.Items + *out = make([]PolicyBindings, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PolicyBindingsList. +func (in *PolicyBindingsList) DeepCopy() *PolicyBindingsList { + if in == nil { + return nil + } + out := new(PolicyBindingsList) + in.DeepCopyInto(out) + return out +} + +// DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object. +func (in *PolicyBindingsList) DeepCopyObject() runtime.Object { + if c := in.DeepCopy(); c != nil { + return c + } + return nil +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *PolicyBindingsObservation) DeepCopyInto(out *PolicyBindingsObservation) { + *out = *in + if in.CreatedAt != nil { + in, out := &in.CreatedAt, &out.CreatedAt + *out = new(string) + **out = **in + } + if in.Enabled != nil { + in, out := &in.Enabled, &out.Enabled + *out = new(bool) + **out = **in + } + if in.ID != nil { + in, out := &in.ID, &out.ID + *out = new(string) + **out = **in + } + if in.InstanceID != nil { + in, out := &in.InstanceID, &out.InstanceID + *out = new(string) + **out = **in + } + if in.PolicyID != nil { + in, out := &in.PolicyID, &out.PolicyID + *out = new(string) + **out = **in + } + if in.Processing != nil { + in, out := &in.Processing, &out.Processing + *out = new(bool) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PolicyBindingsObservation. +func (in *PolicyBindingsObservation) DeepCopy() *PolicyBindingsObservation { + if in == nil { + return nil + } + out := new(PolicyBindingsObservation) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *PolicyBindingsParameters) DeepCopyInto(out *PolicyBindingsParameters) { + *out = *in + if in.InstanceID != nil { + in, out := &in.InstanceID, &out.InstanceID + *out = new(string) + **out = **in + } + if in.InstanceIDRef != nil { + in, out := &in.InstanceIDRef, &out.InstanceIDRef + *out = new(v1.Reference) + (*in).DeepCopyInto(*out) + } + if in.InstanceIDSelector != nil { + in, out := &in.InstanceIDSelector, &out.InstanceIDSelector + *out = new(v1.Selector) + (*in).DeepCopyInto(*out) + } + if in.PolicyID != nil { + in, out := &in.PolicyID, &out.PolicyID + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PolicyBindingsParameters. +func (in *PolicyBindingsParameters) DeepCopy() *PolicyBindingsParameters { + if in == nil { + return nil + } + out := new(PolicyBindingsParameters) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *PolicyBindingsSpec) DeepCopyInto(out *PolicyBindingsSpec) { + *out = *in + in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) + in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PolicyBindingsSpec. +func (in *PolicyBindingsSpec) DeepCopy() *PolicyBindingsSpec { + if in == nil { + return nil + } + out := new(PolicyBindingsSpec) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *PolicyBindingsStatus) DeepCopyInto(out *PolicyBindingsStatus) { + *out = *in + in.ResourceStatus.DeepCopyInto(&out.ResourceStatus) + in.AtProvider.DeepCopyInto(&out.AtProvider) +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PolicyBindingsStatus. +func (in *PolicyBindingsStatus) DeepCopy() *PolicyBindingsStatus { + if in == nil { + return nil + } + out := new(PolicyBindingsStatus) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *PolicyInitParameters) DeepCopyInto(out *PolicyInitParameters) { *out = *in @@ -983,9 +1288,238 @@ func (in *RulesParameters) DeepCopy() *RulesParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *SchedulingExecuteByTimeInitParameters) DeepCopyInto(out *SchedulingExecuteByTimeInitParameters) { + *out = *in + if in.IncludeLastDayOfMonth != nil { + in, out := &in.IncludeLastDayOfMonth, &out.IncludeLastDayOfMonth + *out = new(bool) + **out = **in + } + if in.Monthdays != nil { + in, out := &in.Monthdays, &out.Monthdays + *out = make([]*float64, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(float64) + **out = **in + } + } + } + if in.Months != nil { + in, out := &in.Months, &out.Months + *out = make([]*float64, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(float64) + **out = **in + } + } + } + if in.RepeatAt != nil { + in, out := &in.RepeatAt, &out.RepeatAt + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.RepeatEvery != nil { + in, out := &in.RepeatEvery, &out.RepeatEvery + *out = new(string) + **out = **in + } + if in.Type != nil { + in, out := &in.Type, &out.Type + *out = new(string) + **out = **in + } + if in.Weekdays != nil { + in, out := &in.Weekdays, &out.Weekdays + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SchedulingExecuteByTimeInitParameters. +func (in *SchedulingExecuteByTimeInitParameters) DeepCopy() *SchedulingExecuteByTimeInitParameters { + if in == nil { + return nil + } + out := new(SchedulingExecuteByTimeInitParameters) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *SchedulingExecuteByTimeObservation) DeepCopyInto(out *SchedulingExecuteByTimeObservation) { + *out = *in + if in.IncludeLastDayOfMonth != nil { + in, out := &in.IncludeLastDayOfMonth, &out.IncludeLastDayOfMonth + *out = new(bool) + **out = **in + } + if in.Monthdays != nil { + in, out := &in.Monthdays, &out.Monthdays + *out = make([]*float64, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(float64) + **out = **in + } + } + } + if in.Months != nil { + in, out := &in.Months, &out.Months + *out = make([]*float64, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(float64) + **out = **in + } + } + } + if in.RepeatAt != nil { + in, out := &in.RepeatAt, &out.RepeatAt + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.RepeatEvery != nil { + in, out := &in.RepeatEvery, &out.RepeatEvery + *out = new(string) + **out = **in + } + if in.Type != nil { + in, out := &in.Type, &out.Type + *out = new(string) + **out = **in + } + if in.Weekdays != nil { + in, out := &in.Weekdays, &out.Weekdays + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SchedulingExecuteByTimeObservation. +func (in *SchedulingExecuteByTimeObservation) DeepCopy() *SchedulingExecuteByTimeObservation { + if in == nil { + return nil + } + out := new(SchedulingExecuteByTimeObservation) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *SchedulingExecuteByTimeParameters) DeepCopyInto(out *SchedulingExecuteByTimeParameters) { + *out = *in + if in.IncludeLastDayOfMonth != nil { + in, out := &in.IncludeLastDayOfMonth, &out.IncludeLastDayOfMonth + *out = new(bool) + **out = **in + } + if in.Monthdays != nil { + in, out := &in.Monthdays, &out.Monthdays + *out = make([]*float64, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(float64) + **out = **in + } + } + } + if in.Months != nil { + in, out := &in.Months, &out.Months + *out = make([]*float64, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(float64) + **out = **in + } + } + } + if in.RepeatAt != nil { + in, out := &in.RepeatAt, &out.RepeatAt + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.RepeatEvery != nil { + in, out := &in.RepeatEvery, &out.RepeatEvery + *out = new(string) + **out = **in + } + if in.Type != nil { + in, out := &in.Type, &out.Type + *out = new(string) + **out = **in + } + if in.Weekdays != nil { + in, out := &in.Weekdays, &out.Weekdays + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SchedulingExecuteByTimeParameters. +func (in *SchedulingExecuteByTimeParameters) DeepCopy() *SchedulingExecuteByTimeParameters { + if in == nil { + return nil + } + out := new(SchedulingExecuteByTimeParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *SchedulingInitParameters) DeepCopyInto(out *SchedulingInitParameters) { *out = *in + if in.BackupSets != nil { + in, out := &in.BackupSets, &out.BackupSets + *out = make([]BackupSetsInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } if in.Enabled != nil { in, out := &in.Enabled, &out.Enabled *out = new(bool) @@ -998,7 +1532,7 @@ func (in *SchedulingInitParameters) DeepCopyInto(out *SchedulingInitParameters) } if in.ExecuteByTime != nil { in, out := &in.ExecuteByTime, &out.ExecuteByTime - *out = make([]ExecuteByTimeInitParameters, len(*in)) + *out = make([]SchedulingExecuteByTimeInitParameters, len(*in)) for i := range *in { (*in)[i].DeepCopyInto(&(*out)[i]) } @@ -1038,6 +1572,13 @@ func (in *SchedulingInitParameters) DeepCopy() *SchedulingInitParameters { // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *SchedulingObservation) DeepCopyInto(out *SchedulingObservation) { *out = *in + if in.BackupSets != nil { + in, out := &in.BackupSets, &out.BackupSets + *out = make([]BackupSetsObservation, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } if in.Enabled != nil { in, out := &in.Enabled, &out.Enabled *out = new(bool) @@ -1050,7 +1591,7 @@ func (in *SchedulingObservation) DeepCopyInto(out *SchedulingObservation) { } if in.ExecuteByTime != nil { in, out := &in.ExecuteByTime, &out.ExecuteByTime - *out = make([]ExecuteByTimeObservation, len(*in)) + *out = make([]SchedulingExecuteByTimeObservation, len(*in)) for i := range *in { (*in)[i].DeepCopyInto(&(*out)[i]) } @@ -1090,6 +1631,13 @@ func (in *SchedulingObservation) DeepCopy() *SchedulingObservation { // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *SchedulingParameters) DeepCopyInto(out *SchedulingParameters) { *out = *in + if in.BackupSets != nil { + in, out := &in.BackupSets, &out.BackupSets + *out = make([]BackupSetsParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } if in.Enabled != nil { in, out := &in.Enabled, &out.Enabled *out = new(bool) @@ -1102,7 +1650,7 @@ func (in *SchedulingParameters) DeepCopyInto(out *SchedulingParameters) { } if in.ExecuteByTime != nil { in, out := &in.ExecuteByTime, &out.ExecuteByTime - *out = make([]ExecuteByTimeParameters, len(*in)) + *out = make([]SchedulingExecuteByTimeParameters, len(*in)) for i := range *in { (*in)[i].DeepCopyInto(&(*out)[i]) } diff --git a/apis/backup/v1alpha1/zz_generated.managed.go b/apis/backup/v1alpha1/zz_generated.managed.go index 0f27a8d..3d43534 100644 --- a/apis/backup/v1alpha1/zz_generated.managed.go +++ b/apis/backup/v1alpha1/zz_generated.managed.go @@ -63,3 +63,63 @@ func (mg *Policy) SetPublishConnectionDetailsTo(r *xpv1.PublishConnectionDetails func (mg *Policy) SetWriteConnectionSecretToReference(r *xpv1.SecretReference) { mg.Spec.WriteConnectionSecretToReference = r } + +// GetCondition of this PolicyBindings. +func (mg *PolicyBindings) GetCondition(ct xpv1.ConditionType) xpv1.Condition { + return mg.Status.GetCondition(ct) +} + +// GetDeletionPolicy of this PolicyBindings. +func (mg *PolicyBindings) GetDeletionPolicy() xpv1.DeletionPolicy { + return mg.Spec.DeletionPolicy +} + +// GetManagementPolicies of this PolicyBindings. +func (mg *PolicyBindings) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies +} + +// GetProviderConfigReference of this PolicyBindings. +func (mg *PolicyBindings) GetProviderConfigReference() *xpv1.Reference { + return mg.Spec.ProviderConfigReference +} + +// GetPublishConnectionDetailsTo of this PolicyBindings. +func (mg *PolicyBindings) GetPublishConnectionDetailsTo() *xpv1.PublishConnectionDetailsTo { + return mg.Spec.PublishConnectionDetailsTo +} + +// GetWriteConnectionSecretToReference of this PolicyBindings. +func (mg *PolicyBindings) GetWriteConnectionSecretToReference() *xpv1.SecretReference { + return mg.Spec.WriteConnectionSecretToReference +} + +// SetConditions of this PolicyBindings. +func (mg *PolicyBindings) SetConditions(c ...xpv1.Condition) { + mg.Status.SetConditions(c...) +} + +// SetDeletionPolicy of this PolicyBindings. +func (mg *PolicyBindings) SetDeletionPolicy(r xpv1.DeletionPolicy) { + mg.Spec.DeletionPolicy = r +} + +// SetManagementPolicies of this PolicyBindings. +func (mg *PolicyBindings) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r +} + +// SetProviderConfigReference of this PolicyBindings. +func (mg *PolicyBindings) SetProviderConfigReference(r *xpv1.Reference) { + mg.Spec.ProviderConfigReference = r +} + +// SetPublishConnectionDetailsTo of this PolicyBindings. +func (mg *PolicyBindings) SetPublishConnectionDetailsTo(r *xpv1.PublishConnectionDetailsTo) { + mg.Spec.PublishConnectionDetailsTo = r +} + +// SetWriteConnectionSecretToReference of this PolicyBindings. +func (mg *PolicyBindings) SetWriteConnectionSecretToReference(r *xpv1.SecretReference) { + mg.Spec.WriteConnectionSecretToReference = r +} diff --git a/apis/backup/v1alpha1/zz_generated.managedlist.go b/apis/backup/v1alpha1/zz_generated.managedlist.go index cbc784b..c6b56f4 100644 --- a/apis/backup/v1alpha1/zz_generated.managedlist.go +++ b/apis/backup/v1alpha1/zz_generated.managedlist.go @@ -4,6 +4,15 @@ package v1alpha1 import resource "github.com/crossplane/crossplane-runtime/pkg/resource" +// GetItems of this PolicyBindingsList. +func (l *PolicyBindingsList) GetItems() []resource.Managed { + items := make([]resource.Managed, len(l.Items)) + for i := range l.Items { + items[i] = &l.Items[i] + } + return items +} + // GetItems of this PolicyList. func (l *PolicyList) GetItems() []resource.Managed { items := make([]resource.Managed, len(l.Items)) diff --git a/apis/backup/v1alpha1/zz_generated.resolvers.go b/apis/backup/v1alpha1/zz_generated.resolvers.go index e01964e..f1adc77 100644 --- a/apis/backup/v1alpha1/zz_generated.resolvers.go +++ b/apis/backup/v1alpha1/zz_generated.resolvers.go @@ -5,7 +5,9 @@ package v1alpha1 import ( "context" reference "github.com/crossplane/crossplane-runtime/pkg/reference" + resource "github.com/crossplane/upjet/pkg/resource" errors "github.com/pkg/errors" + v1alpha11 "github.com/tagesjump/provider-upjet-yc/apis/compute/v1alpha1" v1alpha1 "github.com/tagesjump/provider-upjet-yc/apis/resourcemanager/v1alpha1" client "sigs.k8s.io/controller-runtime/pkg/client" ) @@ -51,3 +53,45 @@ func (mg *Policy) ResolveReferences(ctx context.Context, c client.Reader) error return nil } + +// ResolveReferences of this PolicyBindings. +func (mg *PolicyBindings) ResolveReferences(ctx context.Context, c client.Reader) error { + r := reference.NewAPIResolver(c, mg) + + var rsp reference.ResolutionResponse + var err error + + rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ + CurrentValue: reference.FromPtrValue(mg.Spec.ForProvider.InstanceID), + Extract: resource.ExtractResourceID(), + Reference: mg.Spec.ForProvider.InstanceIDRef, + Selector: mg.Spec.ForProvider.InstanceIDSelector, + To: reference.To{ + List: &v1alpha11.InstanceList{}, + Managed: &v1alpha11.Instance{}, + }, + }) + if err != nil { + return errors.Wrap(err, "mg.Spec.ForProvider.InstanceID") + } + mg.Spec.ForProvider.InstanceID = reference.ToPtrValue(rsp.ResolvedValue) + mg.Spec.ForProvider.InstanceIDRef = rsp.ResolvedReference + + rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ + CurrentValue: reference.FromPtrValue(mg.Spec.InitProvider.InstanceID), + Extract: resource.ExtractResourceID(), + Reference: mg.Spec.InitProvider.InstanceIDRef, + Selector: mg.Spec.InitProvider.InstanceIDSelector, + To: reference.To{ + List: &v1alpha11.InstanceList{}, + Managed: &v1alpha11.Instance{}, + }, + }) + if err != nil { + return errors.Wrap(err, "mg.Spec.InitProvider.InstanceID") + } + mg.Spec.InitProvider.InstanceID = reference.ToPtrValue(rsp.ResolvedValue) + mg.Spec.InitProvider.InstanceIDRef = rsp.ResolvedReference + + return nil +} diff --git a/apis/backup/v1alpha1/zz_policy_types.go b/apis/backup/v1alpha1/zz_policy_types.go index dc6165e..a1c0f7e 100755 --- a/apis/backup/v1alpha1/zz_policy_types.go +++ b/apis/backup/v1alpha1/zz_policy_types.go @@ -9,10 +9,48 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type BackupSetsInitParameters struct { + + // — Perform backup by interval, since last backup of the host. Maximum value is: 9999 days. See interval_type for available values. Exactly on of options should be set: execute_by_interval or execute_by_time. + ExecuteByInterval *float64 `json:"executeByInterval,omitempty" tf:"execute_by_interval,omitempty"` + + // — Perform backup periodically at specific time. Exactly on of options should be set: execute_by_interval or execute_by_time. + ExecuteByTime []ExecuteByTimeInitParameters `json:"executeByTime,omitempty" tf:"execute_by_time,omitempty"` + + // — Type of the scheduling. Available values are: "HOURLY", "DAILY", "WEEKLY", "MONTHLY". + Type *string `json:"type,omitempty" tf:"type,omitempty"` +} + +type BackupSetsObservation struct { + + // — Perform backup by interval, since last backup of the host. Maximum value is: 9999 days. See interval_type for available values. Exactly on of options should be set: execute_by_interval or execute_by_time. + ExecuteByInterval *float64 `json:"executeByInterval,omitempty" tf:"execute_by_interval,omitempty"` + + // — Perform backup periodically at specific time. Exactly on of options should be set: execute_by_interval or execute_by_time. + ExecuteByTime []ExecuteByTimeObservation `json:"executeByTime,omitempty" tf:"execute_by_time,omitempty"` + + // — Type of the scheduling. Available values are: "HOURLY", "DAILY", "WEEKLY", "MONTHLY". + Type *string `json:"type,omitempty" tf:"type,omitempty"` +} + +type BackupSetsParameters struct { + + // — Perform backup by interval, since last backup of the host. Maximum value is: 9999 days. See interval_type for available values. Exactly on of options should be set: execute_by_interval or execute_by_time. + // +kubebuilder:validation:Optional + ExecuteByInterval *float64 `json:"executeByInterval,omitempty" tf:"execute_by_interval,omitempty"` + + // — Perform backup periodically at specific time. Exactly on of options should be set: execute_by_interval or execute_by_time. + // +kubebuilder:validation:Optional + ExecuteByTime []ExecuteByTimeParameters `json:"executeByTime,omitempty" tf:"execute_by_time,omitempty"` + + // — Type of the scheduling. Available values are: "HOURLY", "DAILY", "WEEKLY", "MONTHLY". + // +kubebuilder:validation:Optional + Type *string `json:"type,omitempty" tf:"type,omitempty"` +} + type ExecuteByTimeInitParameters struct { - // — If true, schedule will be applied on the last day of month. - // See day_type for available values. + // — If true, schedule will be applied on the last day of month. See day_type for available values. IncludeLastDayOfMonth *bool `json:"includeLastDayOfMonth,omitempty" tf:"include_last_day_of_month,omitempty"` // — List of days when schedule applies. Used in "MONTHLY" type. @@ -36,8 +74,7 @@ type ExecuteByTimeInitParameters struct { type ExecuteByTimeObservation struct { - // — If true, schedule will be applied on the last day of month. - // See day_type for available values. + // — If true, schedule will be applied on the last day of month. See day_type for available values. IncludeLastDayOfMonth *bool `json:"includeLastDayOfMonth,omitempty" tf:"include_last_day_of_month,omitempty"` // — List of days when schedule applies. Used in "MONTHLY" type. @@ -61,8 +98,7 @@ type ExecuteByTimeObservation struct { type ExecuteByTimeParameters struct { - // — If true, schedule will be applied on the last day of month. - // See day_type for available values. + // — If true, schedule will be applied on the last day of month. See day_type for available values. // +kubebuilder:validation:Optional IncludeLastDayOfMonth *bool `json:"includeLastDayOfMonth,omitempty" tf:"include_last_day_of_month,omitempty"` @@ -96,12 +132,10 @@ type PolicyInitParameters struct { // [Plan ID]-[Unique ID]a) — The name of generated archives. ArchiveName *string `json:"archiveName,omitempty" tf:"archive_name,omitempty"` - // — Configuration of Changed Block Tracking. - // Available values are: "USE_IF_ENABLED", "ENABLED_AND_USE", "DO_NOT_USE". + // — Configuration of Changed Block Tracking. Available values are: "USE_IF_ENABLED", "ENABLED_AND_USE", "DO_NOT_USE". Cbt *string `json:"cbt,omitempty" tf:"cbt,omitempty"` - // — Archive compression level. Affects CPU. - // Available values: "NORMAL", "HIGH", "MAX", "OFF". + // — Archive compression level. Affects CPU. Available values: "NORMAL", "HIGH", "MAX", "OFF". Compression *string `json:"compression,omitempty" tf:"compression,omitempty"` // — Enable flag @@ -119,8 +153,7 @@ type PolicyInitParameters struct { // +kubebuilder:validation:Optional FolderIDSelector *v1.Selector `json:"folderIdSelector,omitempty" tf:"-"` - // — Format of the backup. It's strongly recommend to leave this option empty or "AUTO". - // Available values: "AUTO", "VERSION_11", "VERSION_12". + // — Format of the backup. It's strongly recommend to leave this option empty or "AUTO". Available values: "AUTO", "VERSION_11", "VERSION_12". Format *string `json:"format,omitempty" tf:"format,omitempty"` // — If true, snapshots of multiple volumes will be taken simultaneously. @@ -138,12 +171,10 @@ type PolicyInitParameters struct { // — If true, a quiesced snapshot of the virtual machine will be taken. QuiesceSnapshottingEnabled *bool `json:"quiesceSnapshottingEnabled,omitempty" tf:"quiesce_snapshotting_enabled,omitempty"` - // — Amount of reattempts that should be performed while trying to make backup at the host. - // This attribute consists of the following parameters: + // — Amount of reattempts that should be performed while trying to make backup at the host. This attribute consists of the following parameters: Reattempts []ReattemptsInitParameters `json:"reattempts,omitempty" tf:"reattempts,omitempty"` - // — Retention policy for backups. Allows to setup backups lifecycle. - // This attribute consists of the following parameters: + // — Retention policy for backups. Allows to setup backups lifecycle. This attribute consists of the following parameters: Retention []RetentionInitParameters `json:"retention,omitempty" tf:"retention,omitempty"` // — Schedule settings for creating backups on the host. @@ -155,12 +186,10 @@ type PolicyInitParameters struct { // — determines the size to split backups. It's better to leave this option unchanged. SplittingBytes *string `json:"splittingBytes,omitempty" tf:"splitting_bytes,omitempty"` - // (Requied) — Amount of reattempts that should be performed while trying to make snapshot. - // This attribute consists of the following parameters: + // (Requied) — Amount of reattempts that should be performed while trying to make snapshot. This attribute consists of the following parameters: VMSnapshotReattempts []VMSnapshotReattemptsInitParameters `json:"vmSnapshotReattempts,omitempty" tf:"vm_snapshot_reattempts,omitempty"` - // — Settings for the volume shadow copy service. - // Available values are: "NATIVE", "TARGET_SYSTEM_DEFINED" + // — Settings for the volume shadow copy service. Available values are: "NATIVE", "TARGET_SYSTEM_DEFINED" VssProvider *string `json:"vssProvider,omitempty" tf:"vss_provider,omitempty"` } @@ -169,12 +198,10 @@ type PolicyObservation struct { // [Plan ID]-[Unique ID]a) — The name of generated archives. ArchiveName *string `json:"archiveName,omitempty" tf:"archive_name,omitempty"` - // — Configuration of Changed Block Tracking. - // Available values are: "USE_IF_ENABLED", "ENABLED_AND_USE", "DO_NOT_USE". + // — Configuration of Changed Block Tracking. Available values are: "USE_IF_ENABLED", "ENABLED_AND_USE", "DO_NOT_USE". Cbt *string `json:"cbt,omitempty" tf:"cbt,omitempty"` - // — Archive compression level. Affects CPU. - // Available values: "NORMAL", "HIGH", "MAX", "OFF". + // — Archive compression level. Affects CPU. Available values: "NORMAL", "HIGH", "MAX", "OFF". Compression *string `json:"compression,omitempty" tf:"compression,omitempty"` CreatedAt *string `json:"createdAt,omitempty" tf:"created_at,omitempty"` @@ -188,8 +215,7 @@ type PolicyObservation struct { // — days FolderID *string `json:"folderId,omitempty" tf:"folder_id,omitempty"` - // — Format of the backup. It's strongly recommend to leave this option empty or "AUTO". - // Available values: "AUTO", "VERSION_11", "VERSION_12". + // — Format of the backup. It's strongly recommend to leave this option empty or "AUTO". Available values: "AUTO", "VERSION_11", "VERSION_12". Format *string `json:"format,omitempty" tf:"format,omitempty"` // — days @@ -210,12 +236,10 @@ type PolicyObservation struct { // — If true, a quiesced snapshot of the virtual machine will be taken. QuiesceSnapshottingEnabled *bool `json:"quiesceSnapshottingEnabled,omitempty" tf:"quiesce_snapshotting_enabled,omitempty"` - // — Amount of reattempts that should be performed while trying to make backup at the host. - // This attribute consists of the following parameters: + // — Amount of reattempts that should be performed while trying to make backup at the host. This attribute consists of the following parameters: Reattempts []ReattemptsObservation `json:"reattempts,omitempty" tf:"reattempts,omitempty"` - // — Retention policy for backups. Allows to setup backups lifecycle. - // This attribute consists of the following parameters: + // — Retention policy for backups. Allows to setup backups lifecycle. This attribute consists of the following parameters: Retention []RetentionObservation `json:"retention,omitempty" tf:"retention,omitempty"` // — Schedule settings for creating backups on the host. @@ -229,12 +253,10 @@ type PolicyObservation struct { UpdatedAt *string `json:"updatedAt,omitempty" tf:"updated_at,omitempty"` - // (Requied) — Amount of reattempts that should be performed while trying to make snapshot. - // This attribute consists of the following parameters: + // (Requied) — Amount of reattempts that should be performed while trying to make snapshot. This attribute consists of the following parameters: VMSnapshotReattempts []VMSnapshotReattemptsObservation `json:"vmSnapshotReattempts,omitempty" tf:"vm_snapshot_reattempts,omitempty"` - // — Settings for the volume shadow copy service. - // Available values are: "NATIVE", "TARGET_SYSTEM_DEFINED" + // — Settings for the volume shadow copy service. Available values are: "NATIVE", "TARGET_SYSTEM_DEFINED" VssProvider *string `json:"vssProvider,omitempty" tf:"vss_provider,omitempty"` } @@ -244,13 +266,11 @@ type PolicyParameters struct { // +kubebuilder:validation:Optional ArchiveName *string `json:"archiveName,omitempty" tf:"archive_name,omitempty"` - // — Configuration of Changed Block Tracking. - // Available values are: "USE_IF_ENABLED", "ENABLED_AND_USE", "DO_NOT_USE". + // — Configuration of Changed Block Tracking. Available values are: "USE_IF_ENABLED", "ENABLED_AND_USE", "DO_NOT_USE". // +kubebuilder:validation:Optional Cbt *string `json:"cbt,omitempty" tf:"cbt,omitempty"` - // — Archive compression level. Affects CPU. - // Available values: "NORMAL", "HIGH", "MAX", "OFF". + // — Archive compression level. Affects CPU. Available values: "NORMAL", "HIGH", "MAX", "OFF". // +kubebuilder:validation:Optional Compression *string `json:"compression,omitempty" tf:"compression,omitempty"` @@ -271,8 +291,7 @@ type PolicyParameters struct { // +kubebuilder:validation:Optional FolderIDSelector *v1.Selector `json:"folderIdSelector,omitempty" tf:"-"` - // — Format of the backup. It's strongly recommend to leave this option empty or "AUTO". - // Available values: "AUTO", "VERSION_11", "VERSION_12". + // — Format of the backup. It's strongly recommend to leave this option empty or "AUTO". Available values: "AUTO", "VERSION_11", "VERSION_12". // +kubebuilder:validation:Optional Format *string `json:"format,omitempty" tf:"format,omitempty"` @@ -296,13 +315,11 @@ type PolicyParameters struct { // +kubebuilder:validation:Optional QuiesceSnapshottingEnabled *bool `json:"quiesceSnapshottingEnabled,omitempty" tf:"quiesce_snapshotting_enabled,omitempty"` - // — Amount of reattempts that should be performed while trying to make backup at the host. - // This attribute consists of the following parameters: + // — Amount of reattempts that should be performed while trying to make backup at the host. This attribute consists of the following parameters: // +kubebuilder:validation:Optional Reattempts []ReattemptsParameters `json:"reattempts,omitempty" tf:"reattempts,omitempty"` - // — Retention policy for backups. Allows to setup backups lifecycle. - // This attribute consists of the following parameters: + // — Retention policy for backups. Allows to setup backups lifecycle. This attribute consists of the following parameters: // +kubebuilder:validation:Optional Retention []RetentionParameters `json:"retention,omitempty" tf:"retention,omitempty"` @@ -318,13 +335,11 @@ type PolicyParameters struct { // +kubebuilder:validation:Optional SplittingBytes *string `json:"splittingBytes,omitempty" tf:"splitting_bytes,omitempty"` - // (Requied) — Amount of reattempts that should be performed while trying to make snapshot. - // This attribute consists of the following parameters: + // (Requied) — Amount of reattempts that should be performed while trying to make snapshot. This attribute consists of the following parameters: // +kubebuilder:validation:Optional VMSnapshotReattempts []VMSnapshotReattemptsParameters `json:"vmSnapshotReattempts,omitempty" tf:"vm_snapshot_reattempts,omitempty"` - // — Settings for the volume shadow copy service. - // Available values are: "NATIVE", "TARGET_SYSTEM_DEFINED" + // — Settings for the volume shadow copy service. Available values are: "NATIVE", "TARGET_SYSTEM_DEFINED" // +kubebuilder:validation:Optional VssProvider *string `json:"vssProvider,omitempty" tf:"vss_provider,omitempty"` } @@ -436,93 +451,170 @@ type RulesParameters struct { RepeatPeriod []*string `json:"repeatPeriod,omitempty" tf:"repeat_period,omitempty"` } +type SchedulingExecuteByTimeInitParameters struct { + + // — If true, schedule will be applied on the last day of month. See day_type for available values. + IncludeLastDayOfMonth *bool `json:"includeLastDayOfMonth,omitempty" tf:"include_last_day_of_month,omitempty"` + + // — List of days when schedule applies. Used in "MONTHLY" type. + Monthdays []*float64 `json:"monthdays,omitempty" tf:"monthdays,omitempty"` + + // — seconds + Months []*float64 `json:"months,omitempty" tf:"months,omitempty"` + + // hours format), when the schedule applies. + RepeatAt []*string `json:"repeatAt,omitempty" tf:"repeat_at,omitempty"` + + // — Frequency of backup repetition. See interval_type for available values. + RepeatEvery *string `json:"repeatEvery,omitempty" tf:"repeat_every,omitempty"` + + // — Type of the scheduling. Available values are: "HOURLY", "DAILY", "WEEKLY", "MONTHLY". + Type *string `json:"type,omitempty" tf:"type,omitempty"` + + // — List of weekdays when the backup will be applied. Used in "WEEKLY" type. + Weekdays []*string `json:"weekdays,omitempty" tf:"weekdays,omitempty"` +} + +type SchedulingExecuteByTimeObservation struct { + + // — If true, schedule will be applied on the last day of month. See day_type for available values. + IncludeLastDayOfMonth *bool `json:"includeLastDayOfMonth,omitempty" tf:"include_last_day_of_month,omitempty"` + + // — List of days when schedule applies. Used in "MONTHLY" type. + Monthdays []*float64 `json:"monthdays,omitempty" tf:"monthdays,omitempty"` + + // — seconds + Months []*float64 `json:"months,omitempty" tf:"months,omitempty"` + + // hours format), when the schedule applies. + RepeatAt []*string `json:"repeatAt,omitempty" tf:"repeat_at,omitempty"` + + // — Frequency of backup repetition. See interval_type for available values. + RepeatEvery *string `json:"repeatEvery,omitempty" tf:"repeat_every,omitempty"` + + // — Type of the scheduling. Available values are: "HOURLY", "DAILY", "WEEKLY", "MONTHLY". + Type *string `json:"type,omitempty" tf:"type,omitempty"` + + // — List of weekdays when the backup will be applied. Used in "WEEKLY" type. + Weekdays []*string `json:"weekdays,omitempty" tf:"weekdays,omitempty"` +} + +type SchedulingExecuteByTimeParameters struct { + + // — If true, schedule will be applied on the last day of month. See day_type for available values. + // +kubebuilder:validation:Optional + IncludeLastDayOfMonth *bool `json:"includeLastDayOfMonth,omitempty" tf:"include_last_day_of_month,omitempty"` + + // — List of days when schedule applies. Used in "MONTHLY" type. + // +kubebuilder:validation:Optional + Monthdays []*float64 `json:"monthdays,omitempty" tf:"monthdays,omitempty"` + + // — seconds + // +kubebuilder:validation:Optional + Months []*float64 `json:"months,omitempty" tf:"months,omitempty"` + + // hours format), when the schedule applies. + // +kubebuilder:validation:Optional + RepeatAt []*string `json:"repeatAt,omitempty" tf:"repeat_at,omitempty"` + + // — Frequency of backup repetition. See interval_type for available values. + // +kubebuilder:validation:Optional + RepeatEvery *string `json:"repeatEvery,omitempty" tf:"repeat_every,omitempty"` + + // — Type of the scheduling. Available values are: "HOURLY", "DAILY", "WEEKLY", "MONTHLY". + // +kubebuilder:validation:Optional + Type *string `json:"type" tf:"type,omitempty"` + + // — List of weekdays when the backup will be applied. Used in "WEEKLY" type. + // +kubebuilder:validation:Optional + Weekdays []*string `json:"weekdays,omitempty" tf:"weekdays,omitempty"` +} + type SchedulingInitParameters struct { + // A list of schedules with backup sets that compose the whole scheme. + BackupSets []BackupSetsInitParameters `json:"backupSets,omitempty" tf:"backup_sets,omitempty"` + // — Enable flag Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"` - // — Perform backup by interval, since last backup of the host. Maximum value is: 9999 days. - // See interval_type for available values. Exactly on of options should be set: execute_by_interval or execute_by_time. + // — Perform backup by interval, since last backup of the host. Maximum value is: 9999 days. See interval_type for available values. Exactly on of options should be set: execute_by_interval or execute_by_time. ExecuteByInterval *float64 `json:"executeByInterval,omitempty" tf:"execute_by_interval,omitempty"` // — Perform backup periodically at specific time. Exactly on of options should be set: execute_by_interval or execute_by_time. - ExecuteByTime []ExecuteByTimeInitParameters `json:"executeByTime,omitempty" tf:"execute_by_time,omitempty"` + ExecuteByTime []SchedulingExecuteByTimeInitParameters `json:"executeByTime,omitempty" tf:"execute_by_time,omitempty"` // — Maximum number of backup processes allowed to run in parallel. 0 for unlimited. MaxParallelBackups *float64 `json:"maxParallelBackups,omitempty" tf:"max_parallel_backups,omitempty"` - // — Configuration of the random delay between the execution of parallel tasks. - // See interval_type for available values. + // — Configuration of the random delay between the execution of parallel tasks. See interval_type for available values. RandomMaxDelay *string `json:"randomMaxDelay,omitempty" tf:"random_max_delay,omitempty"` - // — Scheme of the backups. - // Available values are: "ALWAYS_INCREMENTAL", "ALWAYS_FULL", "WEEKLY_FULL_DAILY_INCREMENTAL", 'WEEKLY_INCREMENTAL". + // — Scheme of the backups. Available values are: "ALWAYS_INCREMENTAL", "ALWAYS_FULL", "WEEKLY_FULL_DAILY_INCREMENTAL", 'WEEKLY_INCREMENTAL". Scheme *string `json:"scheme,omitempty" tf:"scheme,omitempty"` - // — A day of week to start weekly backups. - // See day_type for available values. + // — A day of week to start weekly backups. See day_type for available values. WeeklyBackupDay *string `json:"weeklyBackupDay,omitempty" tf:"weekly_backup_day,omitempty"` } type SchedulingObservation struct { + // A list of schedules with backup sets that compose the whole scheme. + BackupSets []BackupSetsObservation `json:"backupSets,omitempty" tf:"backup_sets,omitempty"` + // — Enable flag Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"` - // — Perform backup by interval, since last backup of the host. Maximum value is: 9999 days. - // See interval_type for available values. Exactly on of options should be set: execute_by_interval or execute_by_time. + // — Perform backup by interval, since last backup of the host. Maximum value is: 9999 days. See interval_type for available values. Exactly on of options should be set: execute_by_interval or execute_by_time. ExecuteByInterval *float64 `json:"executeByInterval,omitempty" tf:"execute_by_interval,omitempty"` // — Perform backup periodically at specific time. Exactly on of options should be set: execute_by_interval or execute_by_time. - ExecuteByTime []ExecuteByTimeObservation `json:"executeByTime,omitempty" tf:"execute_by_time,omitempty"` + ExecuteByTime []SchedulingExecuteByTimeObservation `json:"executeByTime,omitempty" tf:"execute_by_time,omitempty"` // — Maximum number of backup processes allowed to run in parallel. 0 for unlimited. MaxParallelBackups *float64 `json:"maxParallelBackups,omitempty" tf:"max_parallel_backups,omitempty"` - // — Configuration of the random delay between the execution of parallel tasks. - // See interval_type for available values. + // — Configuration of the random delay between the execution of parallel tasks. See interval_type for available values. RandomMaxDelay *string `json:"randomMaxDelay,omitempty" tf:"random_max_delay,omitempty"` - // — Scheme of the backups. - // Available values are: "ALWAYS_INCREMENTAL", "ALWAYS_FULL", "WEEKLY_FULL_DAILY_INCREMENTAL", 'WEEKLY_INCREMENTAL". + // — Scheme of the backups. Available values are: "ALWAYS_INCREMENTAL", "ALWAYS_FULL", "WEEKLY_FULL_DAILY_INCREMENTAL", 'WEEKLY_INCREMENTAL". Scheme *string `json:"scheme,omitempty" tf:"scheme,omitempty"` - // — A day of week to start weekly backups. - // See day_type for available values. + // — A day of week to start weekly backups. See day_type for available values. WeeklyBackupDay *string `json:"weeklyBackupDay,omitempty" tf:"weekly_backup_day,omitempty"` } type SchedulingParameters struct { + // A list of schedules with backup sets that compose the whole scheme. + // +kubebuilder:validation:Optional + BackupSets []BackupSetsParameters `json:"backupSets,omitempty" tf:"backup_sets,omitempty"` + // — Enable flag // +kubebuilder:validation:Optional Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"` - // — Perform backup by interval, since last backup of the host. Maximum value is: 9999 days. - // See interval_type for available values. Exactly on of options should be set: execute_by_interval or execute_by_time. + // — Perform backup by interval, since last backup of the host. Maximum value is: 9999 days. See interval_type for available values. Exactly on of options should be set: execute_by_interval or execute_by_time. // +kubebuilder:validation:Optional ExecuteByInterval *float64 `json:"executeByInterval,omitempty" tf:"execute_by_interval,omitempty"` // — Perform backup periodically at specific time. Exactly on of options should be set: execute_by_interval or execute_by_time. // +kubebuilder:validation:Optional - ExecuteByTime []ExecuteByTimeParameters `json:"executeByTime,omitempty" tf:"execute_by_time,omitempty"` + ExecuteByTime []SchedulingExecuteByTimeParameters `json:"executeByTime,omitempty" tf:"execute_by_time,omitempty"` // — Maximum number of backup processes allowed to run in parallel. 0 for unlimited. // +kubebuilder:validation:Optional MaxParallelBackups *float64 `json:"maxParallelBackups,omitempty" tf:"max_parallel_backups,omitempty"` - // — Configuration of the random delay between the execution of parallel tasks. - // See interval_type for available values. + // — Configuration of the random delay between the execution of parallel tasks. See interval_type for available values. // +kubebuilder:validation:Optional RandomMaxDelay *string `json:"randomMaxDelay,omitempty" tf:"random_max_delay,omitempty"` - // — Scheme of the backups. - // Available values are: "ALWAYS_INCREMENTAL", "ALWAYS_FULL", "WEEKLY_FULL_DAILY_INCREMENTAL", 'WEEKLY_INCREMENTAL". + // — Scheme of the backups. Available values are: "ALWAYS_INCREMENTAL", "ALWAYS_FULL", "WEEKLY_FULL_DAILY_INCREMENTAL", 'WEEKLY_INCREMENTAL". // +kubebuilder:validation:Optional Scheme *string `json:"scheme,omitempty" tf:"scheme,omitempty"` - // — A day of week to start weekly backups. - // See day_type for available values. + // — A day of week to start weekly backups. See day_type for available values. // +kubebuilder:validation:Optional WeeklyBackupDay *string `json:"weeklyBackupDay,omitempty" tf:"weekly_backup_day,omitempty"` } diff --git a/apis/backup/v1alpha1/zz_policybindings_terraformed.go b/apis/backup/v1alpha1/zz_policybindings_terraformed.go new file mode 100755 index 0000000..5286b2f --- /dev/null +++ b/apis/backup/v1alpha1/zz_policybindings_terraformed.go @@ -0,0 +1,125 @@ +// Code generated by upjet. DO NOT EDIT. + +package v1alpha1 + +import ( + "dario.cat/mergo" + "github.com/pkg/errors" + + "github.com/crossplane/upjet/pkg/resource" + "github.com/crossplane/upjet/pkg/resource/json" +) + +// GetTerraformResourceType returns Terraform resource type for this PolicyBindings +func (mg *PolicyBindings) GetTerraformResourceType() string { + return "yandex_backup_policy_bindings" +} + +// GetConnectionDetailsMapping for this PolicyBindings +func (tr *PolicyBindings) GetConnectionDetailsMapping() map[string]string { + return nil +} + +// GetObservation of this PolicyBindings +func (tr *PolicyBindings) GetObservation() (map[string]any, error) { + o, err := json.TFParser.Marshal(tr.Status.AtProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(o, &base) +} + +// SetObservation for this PolicyBindings +func (tr *PolicyBindings) SetObservation(obs map[string]any) error { + p, err := json.TFParser.Marshal(obs) + if err != nil { + return err + } + return json.TFParser.Unmarshal(p, &tr.Status.AtProvider) +} + +// GetID returns ID of underlying Terraform resource of this PolicyBindings +func (tr *PolicyBindings) GetID() string { + if tr.Status.AtProvider.ID == nil { + return "" + } + return *tr.Status.AtProvider.ID +} + +// GetParameters of this PolicyBindings +func (tr *PolicyBindings) GetParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.ForProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + +// SetParameters for this PolicyBindings +func (tr *PolicyBindings) SetParameters(params map[string]any) error { + p, err := json.TFParser.Marshal(params) + if err != nil { + return err + } + return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) +} + +// GetInitParameters of this PolicyBindings +func (tr *PolicyBindings) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + +// GetInitParameters of this PolicyBindings +func (tr *PolicyBindings) GetMergedParameters(shouldMergeInitProvider bool) (map[string]any, error) { + params, err := tr.GetParameters() + if err != nil { + return nil, errors.Wrapf(err, "cannot get parameters for resource '%q'", tr.GetName()) + } + if !shouldMergeInitProvider { + return params, nil + } + + initParams, err := tr.GetInitParameters() + if err != nil { + return nil, errors.Wrapf(err, "cannot get init parameters for resource '%q'", tr.GetName()) + } + + // Note(lsviben): mergo.WithSliceDeepCopy is needed to merge the + // slices from the initProvider to forProvider. As it also sets + // overwrite to true, we need to set it back to false, we don't + // want to overwrite the forProvider fields with the initProvider + // fields. + err = mergo.Merge(¶ms, initParams, mergo.WithSliceDeepCopy, func(c *mergo.Config) { + c.Overwrite = false + }) + if err != nil { + return nil, errors.Wrapf(err, "cannot merge spec.initProvider and spec.forProvider parameters for resource '%q'", tr.GetName()) + } + + return params, nil +} + +// LateInitialize this PolicyBindings using its observed tfState. +// returns True if there are any spec changes for the resource. +func (tr *PolicyBindings) LateInitialize(attrs []byte) (bool, error) { + params := &PolicyBindingsParameters{} + if err := json.TFParser.Unmarshal(attrs, params); err != nil { + return false, errors.Wrap(err, "failed to unmarshal Terraform state parameters for late-initialization") + } + opts := []resource.GenericLateInitializerOption{resource.WithZeroValueJSONOmitEmptyFilter(resource.CNameWildcard)} + + li := resource.NewGenericLateInitializer(opts...) + return li.LateInitialize(&tr.Spec.ForProvider, params) +} + +// GetTerraformSchemaVersion returns the associated Terraform schema version +func (tr *PolicyBindings) GetTerraformSchemaVersion() int { + return 0 +} diff --git a/apis/backup/v1alpha1/zz_policybindings_types.go b/apis/backup/v1alpha1/zz_policybindings_types.go new file mode 100755 index 0000000..61858e0 --- /dev/null +++ b/apis/backup/v1alpha1/zz_policybindings_types.go @@ -0,0 +1,132 @@ +// Code generated by upjet. DO NOT EDIT. + +package v1alpha1 + +import ( + metav1 "k8s.io/apimachinery/pkg/apis/meta/v1" + "k8s.io/apimachinery/pkg/runtime/schema" + + v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" +) + +type PolicyBindingsInitParameters struct { + + // — Compute Cloud instance ID. + // +crossplane:generate:reference:type=github.com/tagesjump/provider-upjet-yc/apis/compute/v1alpha1.Instance + // +crossplane:generate:reference:extractor=github.com/crossplane/upjet/pkg/resource.ExtractResourceID() + InstanceID *string `json:"instanceId,omitempty" tf:"instance_id,omitempty"` + + // Reference to a Instance in compute to populate instanceId. + // +kubebuilder:validation:Optional + InstanceIDRef *v1.Reference `json:"instanceIdRef,omitempty" tf:"-"` + + // Selector for a Instance in compute to populate instanceId. + // +kubebuilder:validation:Optional + InstanceIDSelector *v1.Selector `json:"instanceIdSelector,omitempty" tf:"-"` + + // — Backup Policy ID. + PolicyID *string `json:"policyId,omitempty" tf:"policy_id,omitempty"` +} + +type PolicyBindingsObservation struct { + + // Creation timestamp of the Yandex Cloud Policy Bindings. + CreatedAt *string `json:"createdAt,omitempty" tf:"created_at,omitempty"` + + // Boolean flag that specifies whether the policy application is enabled. May be false if processing flag is true. + Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"` + + ID *string `json:"id,omitempty" tf:"id,omitempty"` + + // — Compute Cloud instance ID. + InstanceID *string `json:"instanceId,omitempty" tf:"instance_id,omitempty"` + + // — Backup Policy ID. + PolicyID *string `json:"policyId,omitempty" tf:"policy_id,omitempty"` + + // Boolean flag that specifies whether the policy is in the process of binding to an instance. + Processing *bool `json:"processing,omitempty" tf:"processing,omitempty"` +} + +type PolicyBindingsParameters struct { + + // — Compute Cloud instance ID. + // +crossplane:generate:reference:type=github.com/tagesjump/provider-upjet-yc/apis/compute/v1alpha1.Instance + // +crossplane:generate:reference:extractor=github.com/crossplane/upjet/pkg/resource.ExtractResourceID() + // +kubebuilder:validation:Optional + InstanceID *string `json:"instanceId,omitempty" tf:"instance_id,omitempty"` + + // Reference to a Instance in compute to populate instanceId. + // +kubebuilder:validation:Optional + InstanceIDRef *v1.Reference `json:"instanceIdRef,omitempty" tf:"-"` + + // Selector for a Instance in compute to populate instanceId. + // +kubebuilder:validation:Optional + InstanceIDSelector *v1.Selector `json:"instanceIdSelector,omitempty" tf:"-"` + + // — Backup Policy ID. + // +kubebuilder:validation:Optional + PolicyID *string `json:"policyId,omitempty" tf:"policy_id,omitempty"` +} + +// PolicyBindingsSpec defines the desired state of PolicyBindings +type PolicyBindingsSpec struct { + v1.ResourceSpec `json:",inline"` + ForProvider PolicyBindingsParameters `json:"forProvider"` + // THIS IS A BETA FIELD. It will be honored + // unless the Management Policies feature flag is disabled. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider PolicyBindingsInitParameters `json:"initProvider,omitempty"` +} + +// PolicyBindingsStatus defines the observed state of PolicyBindings. +type PolicyBindingsStatus struct { + v1.ResourceStatus `json:",inline"` + AtProvider PolicyBindingsObservation `json:"atProvider,omitempty"` +} + +// +kubebuilder:object:root=true +// +kubebuilder:subresource:status +// +kubebuilder:storageversion + +// PolicyBindings is the Schema for the PolicyBindingss API. Allows to bind compute instance with backup policy. +// +kubebuilder:printcolumn:name="SYNCED",type="string",JSONPath=".status.conditions[?(@.type=='Synced')].status" +// +kubebuilder:printcolumn:name="READY",type="string",JSONPath=".status.conditions[?(@.type=='Ready')].status" +// +kubebuilder:printcolumn:name="EXTERNAL-NAME",type="string",JSONPath=".metadata.annotations.crossplane\\.io/external-name" +// +kubebuilder:printcolumn:name="AGE",type="date",JSONPath=".metadata.creationTimestamp" +// +kubebuilder:resource:scope=Cluster,categories={crossplane,managed,yandex-cloud} +type PolicyBindings struct { + metav1.TypeMeta `json:",inline"` + metav1.ObjectMeta `json:"metadata,omitempty"` + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.policyId) || (has(self.initProvider) && has(self.initProvider.policyId))",message="spec.forProvider.policyId is a required parameter" + Spec PolicyBindingsSpec `json:"spec"` + Status PolicyBindingsStatus `json:"status,omitempty"` +} + +// +kubebuilder:object:root=true + +// PolicyBindingsList contains a list of PolicyBindingss +type PolicyBindingsList struct { + metav1.TypeMeta `json:",inline"` + metav1.ListMeta `json:"metadata,omitempty"` + Items []PolicyBindings `json:"items"` +} + +// Repository type metadata. +var ( + PolicyBindings_Kind = "PolicyBindings" + PolicyBindings_GroupKind = schema.GroupKind{Group: CRDGroup, Kind: PolicyBindings_Kind}.String() + PolicyBindings_KindAPIVersion = PolicyBindings_Kind + "." + CRDGroupVersion.String() + PolicyBindings_GroupVersionKind = CRDGroupVersion.WithKind(PolicyBindings_Kind) +) + +func init() { + SchemeBuilder.Register(&PolicyBindings{}, &PolicyBindingsList{}) +} diff --git a/apis/cm/v1alpha1/zz_certificate_types.go b/apis/cm/v1alpha1/zz_certificate_types.go index 14d27f9..d11d0e4 100755 --- a/apis/cm/v1alpha1/zz_certificate_types.go +++ b/apis/cm/v1alpha1/zz_certificate_types.go @@ -94,7 +94,7 @@ type CertificateObservation struct { // Certificate serial number. Serial *string `json:"serial,omitempty" tf:"serial,omitempty"` - // Certificate status: "VALIDATING", "INVALID", "ISSUED", "REVOKED", "RENEWING" or "RENEWAL_FAILED". + // Certificate status: "VALIDATING", "INVALID", "ISSUED", "REVOKED", "RENEWING" or "RENEWAL_FAILED". Status *string `json:"status,omitempty" tf:"status,omitempty"` // Certificate subject. @@ -192,9 +192,7 @@ type ChallengesParameters struct { type ManagedInitParameters struct { - // . Expected number of challenge count needed to validate certificate. - // Resource creation will fail if the specified value does not match the actual number of challenges received from issue provider. - // This argument is helpful for safe automatic resource creation for passing challenges for multi-domain certificates. + // . Expected number of challenge count needed to validate certificate. Resource creation will fail if the specified value does not match the actual number of challenges received from issue provider. This argument is helpful for safe automatic resource creation for passing challenges for multi-domain certificates. ChallengeCount *float64 `json:"challengeCount,omitempty" tf:"challenge_count,omitempty"` // Domain owner-check method. Possible values: @@ -203,9 +201,7 @@ type ManagedInitParameters struct { type ManagedObservation struct { - // . Expected number of challenge count needed to validate certificate. - // Resource creation will fail if the specified value does not match the actual number of challenges received from issue provider. - // This argument is helpful for safe automatic resource creation for passing challenges for multi-domain certificates. + // . Expected number of challenge count needed to validate certificate. Resource creation will fail if the specified value does not match the actual number of challenges received from issue provider. This argument is helpful for safe automatic resource creation for passing challenges for multi-domain certificates. ChallengeCount *float64 `json:"challengeCount,omitempty" tf:"challenge_count,omitempty"` // Domain owner-check method. Possible values: @@ -214,9 +210,7 @@ type ManagedObservation struct { type ManagedParameters struct { - // . Expected number of challenge count needed to validate certificate. - // Resource creation will fail if the specified value does not match the actual number of challenges received from issue provider. - // This argument is helpful for safe automatic resource creation for passing challenges for multi-domain certificates. + // . Expected number of challenge count needed to validate certificate. Resource creation will fail if the specified value does not match the actual number of challenges received from issue provider. This argument is helpful for safe automatic resource creation for passing challenges for multi-domain certificates. // +kubebuilder:validation:Optional ChallengeCount *float64 `json:"challengeCount,omitempty" tf:"challenge_count,omitempty"` diff --git a/apis/compute/v1alpha1/zz_disk_types.go b/apis/compute/v1alpha1/zz_disk_types.go index 90db228..84256d2 100755 --- a/apis/compute/v1alpha1/zz_disk_types.go +++ b/apis/compute/v1alpha1/zz_disk_types.go @@ -17,15 +17,13 @@ type DiskInitParameters struct { // Block size of the disk, specified in bytes. BlockSize *float64 `json:"blockSize,omitempty" tf:"block_size,omitempty"` - // Description of the disk. Provide this property when - // you create a resource. + // Description of the disk. Provide this property when you create a resource. Description *string `json:"description,omitempty" tf:"description,omitempty"` // Disk placement policy configuration. The structure is documented below. DiskPlacementPolicy []DiskPlacementPolicyInitParameters `json:"diskPlacementPolicy,omitempty" tf:"disk_placement_policy,omitempty"` - // The ID of the folder that the disk belongs to. - // If it is not provided, the default provider folder is used. + // The ID of the folder that the disk belongs to. If it is not provided, the default provider folder is used. // +crossplane:generate:reference:type=github.com/tagesjump/provider-upjet-yc/apis/resourcemanager/v1alpha1.Folder FolderID *string `json:"folderId,omitempty" tf:"folder_id,omitempty"` @@ -37,6 +35,12 @@ type DiskInitParameters struct { // +kubebuilder:validation:Optional FolderIDSelector *v1.Selector `json:"folderIdSelector,omitempty" tf:"-"` + // Hardware generation and its features, + // which will be applied to the instance when this disk is used as a boot + // disk. Provide this property if you wish to override this value, which + // otherwise is inherited from the source. The structure is documented below. + HardwareGeneration []HardwareGenerationInitParameters `json:"hardwareGeneration,omitempty" tf:"hardware_generation,omitempty"` + // The source image to use for disk creation. // +crossplane:generate:reference:type=Image ImageID *string `json:"imageId,omitempty" tf:"image_id,omitempty"` @@ -53,16 +57,10 @@ type DiskInitParameters struct { // +mapType=granular Labels map[string]*string `json:"labels,omitempty" tf:"labels,omitempty"` - // Name of the disk. Provide this property when - // you create a resource. + // Name of the disk. Provide this property when you create a resource. Name *string `json:"name,omitempty" tf:"name,omitempty"` - // Size of the persistent disk, specified in GB. You can specify this - // field when creating a persistent disk using the image_id or snapshot_id - // parameter, or specify it alone to create an empty persistent disk. - // If you specify this field along with image_id or snapshot_id, - // the size value must not be less than the size of the source image - // or the size of the snapshot. + // Size of the persistent disk, specified in GB. You can specify this field when creating a persistent disk using the image_id or snapshot_id parameter, or specify it alone to create an empty persistent disk. If you specify this field along with image_id or snapshot_id, the size value must not be less than the size of the source image or the size of the snapshot. Size *float64 `json:"size,omitempty" tf:"size,omitempty"` // The source snapshot to use for disk creation. @@ -86,17 +84,21 @@ type DiskObservation struct { // Creation timestamp of the disk. CreatedAt *string `json:"createdAt,omitempty" tf:"created_at,omitempty"` - // Description of the disk. Provide this property when - // you create a resource. + // Description of the disk. Provide this property when you create a resource. Description *string `json:"description,omitempty" tf:"description,omitempty"` // Disk placement policy configuration. The structure is documented below. DiskPlacementPolicy []DiskPlacementPolicyObservation `json:"diskPlacementPolicy,omitempty" tf:"disk_placement_policy,omitempty"` - // The ID of the folder that the disk belongs to. - // If it is not provided, the default provider folder is used. + // The ID of the folder that the disk belongs to. If it is not provided, the default provider folder is used. FolderID *string `json:"folderId,omitempty" tf:"folder_id,omitempty"` + // Hardware generation and its features, + // which will be applied to the instance when this disk is used as a boot + // disk. Provide this property if you wish to override this value, which + // otherwise is inherited from the source. The structure is documented below. + HardwareGeneration []HardwareGenerationObservation `json:"hardwareGeneration,omitempty" tf:"hardware_generation,omitempty"` + ID *string `json:"id,omitempty" tf:"id,omitempty"` // The source image to use for disk creation. @@ -106,18 +108,12 @@ type DiskObservation struct { // +mapType=granular Labels map[string]*string `json:"labels,omitempty" tf:"labels,omitempty"` - // Name of the disk. Provide this property when - // you create a resource. + // Name of the disk. Provide this property when you create a resource. Name *string `json:"name,omitempty" tf:"name,omitempty"` ProductIds []*string `json:"productIds,omitempty" tf:"product_ids,omitempty"` - // Size of the persistent disk, specified in GB. You can specify this - // field when creating a persistent disk using the image_id or snapshot_id - // parameter, or specify it alone to create an empty persistent disk. - // If you specify this field along with image_id or snapshot_id, - // the size value must not be less than the size of the source image - // or the size of the snapshot. + // Size of the persistent disk, specified in GB. You can specify this field when creating a persistent disk using the image_id or snapshot_id parameter, or specify it alone to create an empty persistent disk. If you specify this field along with image_id or snapshot_id, the size value must not be less than the size of the source image or the size of the snapshot. Size *float64 `json:"size,omitempty" tf:"size,omitempty"` // The source snapshot to use for disk creation. @@ -143,8 +139,7 @@ type DiskParameters struct { // +kubebuilder:validation:Optional BlockSize *float64 `json:"blockSize,omitempty" tf:"block_size,omitempty"` - // Description of the disk. Provide this property when - // you create a resource. + // Description of the disk. Provide this property when you create a resource. // +kubebuilder:validation:Optional Description *string `json:"description,omitempty" tf:"description,omitempty"` @@ -152,8 +147,7 @@ type DiskParameters struct { // +kubebuilder:validation:Optional DiskPlacementPolicy []DiskPlacementPolicyParameters `json:"diskPlacementPolicy,omitempty" tf:"disk_placement_policy,omitempty"` - // The ID of the folder that the disk belongs to. - // If it is not provided, the default provider folder is used. + // The ID of the folder that the disk belongs to. If it is not provided, the default provider folder is used. // +crossplane:generate:reference:type=github.com/tagesjump/provider-upjet-yc/apis/resourcemanager/v1alpha1.Folder // +kubebuilder:validation:Optional FolderID *string `json:"folderId,omitempty" tf:"folder_id,omitempty"` @@ -166,6 +160,13 @@ type DiskParameters struct { // +kubebuilder:validation:Optional FolderIDSelector *v1.Selector `json:"folderIdSelector,omitempty" tf:"-"` + // Hardware generation and its features, + // which will be applied to the instance when this disk is used as a boot + // disk. Provide this property if you wish to override this value, which + // otherwise is inherited from the source. The structure is documented below. + // +kubebuilder:validation:Optional + HardwareGeneration []HardwareGenerationParameters `json:"hardwareGeneration,omitempty" tf:"hardware_generation,omitempty"` + // The source image to use for disk creation. // +crossplane:generate:reference:type=Image // +kubebuilder:validation:Optional @@ -184,17 +185,11 @@ type DiskParameters struct { // +mapType=granular Labels map[string]*string `json:"labels,omitempty" tf:"labels,omitempty"` - // Name of the disk. Provide this property when - // you create a resource. + // Name of the disk. Provide this property when you create a resource. // +kubebuilder:validation:Optional Name *string `json:"name,omitempty" tf:"name,omitempty"` - // Size of the persistent disk, specified in GB. You can specify this - // field when creating a persistent disk using the image_id or snapshot_id - // parameter, or specify it alone to create an empty persistent disk. - // If you specify this field along with image_id or snapshot_id, - // the size value must not be less than the size of the source image - // or the size of the snapshot. + // Size of the persistent disk, specified in GB. You can specify this field when creating a persistent disk using the image_id or snapshot_id parameter, or specify it alone to create an empty persistent disk. If you specify this field along with image_id or snapshot_id, the size value must not be less than the size of the source image or the size of the snapshot. // +kubebuilder:validation:Optional Size *float64 `json:"size,omitempty" tf:"size,omitempty"` @@ -250,6 +245,63 @@ type DiskPlacementPolicyParameters struct { DiskPlacementGroupIDSelector *v1.Selector `json:"diskPlacementGroupIdSelector,omitempty" tf:"-"` } +type Generation2FeaturesInitParameters struct { +} + +type Generation2FeaturesObservation struct { +} + +type Generation2FeaturesParameters struct { +} + +type HardwareGenerationInitParameters struct { + + // A newer hardware generation, which always uses PCI_TOPOLOGY_V2 and UEFI boot. + Generation2Features []Generation2FeaturesInitParameters `json:"generation2Features,omitempty" tf:"generation2_features,omitempty"` + + // Defines the first known hardware generation and its features, which are: + LegacyFeatures []LegacyFeaturesInitParameters `json:"legacyFeatures,omitempty" tf:"legacy_features,omitempty"` +} + +type HardwareGenerationObservation struct { + + // A newer hardware generation, which always uses PCI_TOPOLOGY_V2 and UEFI boot. + Generation2Features []Generation2FeaturesParameters `json:"generation2Features,omitempty" tf:"generation2_features,omitempty"` + + // Defines the first known hardware generation and its features, which are: + LegacyFeatures []LegacyFeaturesObservation `json:"legacyFeatures,omitempty" tf:"legacy_features,omitempty"` +} + +type HardwareGenerationParameters struct { + + // A newer hardware generation, which always uses PCI_TOPOLOGY_V2 and UEFI boot. + // +kubebuilder:validation:Optional + Generation2Features []Generation2FeaturesParameters `json:"generation2Features,omitempty" tf:"generation2_features,omitempty"` + + // Defines the first known hardware generation and its features, which are: + // +kubebuilder:validation:Optional + LegacyFeatures []LegacyFeaturesParameters `json:"legacyFeatures,omitempty" tf:"legacy_features,omitempty"` +} + +type LegacyFeaturesInitParameters struct { + + // A variant of PCI topology, one of PCI_TOPOLOGY_V1 or PCI_TOPOLOGY_V2. + PciTopology *string `json:"pciTopology,omitempty" tf:"pci_topology,omitempty"` +} + +type LegacyFeaturesObservation struct { + + // A variant of PCI topology, one of PCI_TOPOLOGY_V1 or PCI_TOPOLOGY_V2. + PciTopology *string `json:"pciTopology,omitempty" tf:"pci_topology,omitempty"` +} + +type LegacyFeaturesParameters struct { + + // A variant of PCI topology, one of PCI_TOPOLOGY_V1 or PCI_TOPOLOGY_V2. + // +kubebuilder:validation:Optional + PciTopology *string `json:"pciTopology,omitempty" tf:"pci_topology,omitempty"` +} + // DiskSpec defines the desired state of Disk type DiskSpec struct { v1.ResourceSpec `json:",inline"` diff --git a/apis/compute/v1alpha1/zz_diskiambinding_types.go b/apis/compute/v1alpha1/zz_diskiambinding_types.go index 0999949..65a86d8 100755 --- a/apis/compute/v1alpha1/zz_diskiambinding_types.go +++ b/apis/compute/v1alpha1/zz_diskiambinding_types.go @@ -14,13 +14,11 @@ type DiskIAMBindingInitParameters struct { // ID of the disk to attach the policy to. DiskID *string `json:"diskId,omitempty" tf:"disk_id,omitempty"` - // An array of identities that will be granted the privilege in the role. - // Each entry can have one of the following values: + // An array of identities that will be granted the privilege in the role. Each entry can have one of the following values: // +listType=set Members []*string `json:"members,omitempty" tf:"members,omitempty"` - // The role that should be assigned. Only one - // yandex_compute_disk_iam_binding can be used per role. + // The role that should be assigned. Only one yandex_compute_disk_iam_binding can be used per role. Role *string `json:"role,omitempty" tf:"role,omitempty"` } @@ -31,13 +29,11 @@ type DiskIAMBindingObservation struct { ID *string `json:"id,omitempty" tf:"id,omitempty"` - // An array of identities that will be granted the privilege in the role. - // Each entry can have one of the following values: + // An array of identities that will be granted the privilege in the role. Each entry can have one of the following values: // +listType=set Members []*string `json:"members,omitempty" tf:"members,omitempty"` - // The role that should be assigned. Only one - // yandex_compute_disk_iam_binding can be used per role. + // The role that should be assigned. Only one yandex_compute_disk_iam_binding can be used per role. Role *string `json:"role,omitempty" tf:"role,omitempty"` } @@ -47,14 +43,12 @@ type DiskIAMBindingParameters struct { // +kubebuilder:validation:Optional DiskID *string `json:"diskId,omitempty" tf:"disk_id,omitempty"` - // An array of identities that will be granted the privilege in the role. - // Each entry can have one of the following values: + // An array of identities that will be granted the privilege in the role. Each entry can have one of the following values: // +kubebuilder:validation:Optional // +listType=set Members []*string `json:"members,omitempty" tf:"members,omitempty"` - // The role that should be assigned. Only one - // yandex_compute_disk_iam_binding can be used per role. + // The role that should be assigned. Only one yandex_compute_disk_iam_binding can be used per role. // +kubebuilder:validation:Optional Role *string `json:"role,omitempty" tf:"role,omitempty"` } diff --git a/apis/compute/v1alpha1/zz_diskplacementgroup_types.go b/apis/compute/v1alpha1/zz_diskplacementgroup_types.go index fc7bbc8..6017ae4 100755 --- a/apis/compute/v1alpha1/zz_diskplacementgroup_types.go +++ b/apis/compute/v1alpha1/zz_diskplacementgroup_types.go @@ -33,7 +33,7 @@ type DiskPlacementGroupInitParameters struct { // The name of the Disk Placement Group. Name *string `json:"name,omitempty" tf:"name,omitempty"` - // ID of the zone where the Disk Placement Group resides. + // ID of the zone where the Disk Placement Group resides. Default is ru-central1-b Zone *string `json:"zone,omitempty" tf:"zone,omitempty"` } @@ -58,7 +58,7 @@ type DiskPlacementGroupObservation struct { // Status of the Disk Placement Group. Status *string `json:"status,omitempty" tf:"status,omitempty"` - // ID of the zone where the Disk Placement Group resides. + // ID of the zone where the Disk Placement Group resides. Default is ru-central1-b Zone *string `json:"zone,omitempty" tf:"zone,omitempty"` } @@ -90,7 +90,7 @@ type DiskPlacementGroupParameters struct { // +kubebuilder:validation:Optional Name *string `json:"name,omitempty" tf:"name,omitempty"` - // ID of the zone where the Disk Placement Group resides. + // ID of the zone where the Disk Placement Group resides. Default is ru-central1-b // +kubebuilder:validation:Optional Zone *string `json:"zone,omitempty" tf:"zone,omitempty"` } diff --git a/apis/compute/v1alpha1/zz_diskplacementgroupiambinding_types.go b/apis/compute/v1alpha1/zz_diskplacementgroupiambinding_types.go index 796ce8a..898704f 100755 --- a/apis/compute/v1alpha1/zz_diskplacementgroupiambinding_types.go +++ b/apis/compute/v1alpha1/zz_diskplacementgroupiambinding_types.go @@ -14,13 +14,11 @@ type DiskPlacementGroupIAMBindingInitParameters struct { // ID of the disk placement group to attach the policy to. DiskPlacementGroupID *string `json:"diskPlacementGroupId,omitempty" tf:"disk_placement_group_id,omitempty"` - // An array of identities that will be granted the privilege in the role. - // Each entry can have one of the following values: + // An array of identities that will be granted the privilege in the role. Each entry can have one of the following values: // +listType=set Members []*string `json:"members,omitempty" tf:"members,omitempty"` - // The role that should be assigned. Only one - // yandex_compute_disk_placement_group_iam_binding can be used per role. + // The role that should be assigned. Only one yandex_compute_disk_placement_group_iam_binding can be used per role. Role *string `json:"role,omitempty" tf:"role,omitempty"` } @@ -31,13 +29,11 @@ type DiskPlacementGroupIAMBindingObservation struct { ID *string `json:"id,omitempty" tf:"id,omitempty"` - // An array of identities that will be granted the privilege in the role. - // Each entry can have one of the following values: + // An array of identities that will be granted the privilege in the role. Each entry can have one of the following values: // +listType=set Members []*string `json:"members,omitempty" tf:"members,omitempty"` - // The role that should be assigned. Only one - // yandex_compute_disk_placement_group_iam_binding can be used per role. + // The role that should be assigned. Only one yandex_compute_disk_placement_group_iam_binding can be used per role. Role *string `json:"role,omitempty" tf:"role,omitempty"` } @@ -47,14 +43,12 @@ type DiskPlacementGroupIAMBindingParameters struct { // +kubebuilder:validation:Optional DiskPlacementGroupID *string `json:"diskPlacementGroupId,omitempty" tf:"disk_placement_group_id,omitempty"` - // An array of identities that will be granted the privilege in the role. - // Each entry can have one of the following values: + // An array of identities that will be granted the privilege in the role. Each entry can have one of the following values: // +kubebuilder:validation:Optional // +listType=set Members []*string `json:"members,omitempty" tf:"members,omitempty"` - // The role that should be assigned. Only one - // yandex_compute_disk_placement_group_iam_binding can be used per role. + // The role that should be assigned. Only one yandex_compute_disk_placement_group_iam_binding can be used per role. // +kubebuilder:validation:Optional Role *string `json:"role,omitempty" tf:"role,omitempty"` } diff --git a/apis/compute/v1alpha1/zz_filesystem_types.go b/apis/compute/v1alpha1/zz_filesystem_types.go index 15e9c74..48e3eee 100755 --- a/apis/compute/v1alpha1/zz_filesystem_types.go +++ b/apis/compute/v1alpha1/zz_filesystem_types.go @@ -17,8 +17,7 @@ type FilesystemInitParameters struct { // Description of the filesystem. Provide this property when you create a resource. Description *string `json:"description,omitempty" tf:"description,omitempty"` - // The ID of the folder that the filesystem belongs to. If it is not provided, the default - // provider folder is used. + // The ID of the folder that the filesystem belongs to. If it is not provided, the default provider folder is used. // +crossplane:generate:reference:type=github.com/tagesjump/provider-upjet-yc/apis/resourcemanager/v1alpha1.Folder FolderID *string `json:"folderId,omitempty" tf:"folder_id,omitempty"` @@ -30,8 +29,7 @@ type FilesystemInitParameters struct { // +kubebuilder:validation:Optional FolderIDSelector *v1.Selector `json:"folderIdSelector,omitempty" tf:"-"` - // Labels to assign to this filesystem. A list of key/value pairs. For details about the concept, - // see documentation. + // Labels to assign to this filesystem. A list of key/value pairs. For details about the concept, see documentation. // +mapType=granular Labels map[string]*string `json:"labels,omitempty" tf:"labels,omitempty"` @@ -59,14 +57,12 @@ type FilesystemObservation struct { // Description of the filesystem. Provide this property when you create a resource. Description *string `json:"description,omitempty" tf:"description,omitempty"` - // The ID of the folder that the filesystem belongs to. If it is not provided, the default - // provider folder is used. + // The ID of the folder that the filesystem belongs to. If it is not provided, the default provider folder is used. FolderID *string `json:"folderId,omitempty" tf:"folder_id,omitempty"` ID *string `json:"id,omitempty" tf:"id,omitempty"` - // Labels to assign to this filesystem. A list of key/value pairs. For details about the concept, - // see documentation. + // Labels to assign to this filesystem. A list of key/value pairs. For details about the concept, see documentation. // +mapType=granular Labels map[string]*string `json:"labels,omitempty" tf:"labels,omitempty"` @@ -96,8 +92,7 @@ type FilesystemParameters struct { // +kubebuilder:validation:Optional Description *string `json:"description,omitempty" tf:"description,omitempty"` - // The ID of the folder that the filesystem belongs to. If it is not provided, the default - // provider folder is used. + // The ID of the folder that the filesystem belongs to. If it is not provided, the default provider folder is used. // +crossplane:generate:reference:type=github.com/tagesjump/provider-upjet-yc/apis/resourcemanager/v1alpha1.Folder // +kubebuilder:validation:Optional FolderID *string `json:"folderId,omitempty" tf:"folder_id,omitempty"` @@ -110,8 +105,7 @@ type FilesystemParameters struct { // +kubebuilder:validation:Optional FolderIDSelector *v1.Selector `json:"folderIdSelector,omitempty" tf:"-"` - // Labels to assign to this filesystem. A list of key/value pairs. For details about the concept, - // see documentation. + // Labels to assign to this filesystem. A list of key/value pairs. For details about the concept, see documentation. // +kubebuilder:validation:Optional // +mapType=granular Labels map[string]*string `json:"labels,omitempty" tf:"labels,omitempty"` diff --git a/apis/compute/v1alpha1/zz_filesystemiambinding_types.go b/apis/compute/v1alpha1/zz_filesystemiambinding_types.go index d586eaf..612c656 100755 --- a/apis/compute/v1alpha1/zz_filesystemiambinding_types.go +++ b/apis/compute/v1alpha1/zz_filesystemiambinding_types.go @@ -14,13 +14,11 @@ type FilesystemIAMBindingInitParameters struct { // ID of the filesystem to attach the policy to. FilesystemID *string `json:"filesystemId,omitempty" tf:"filesystem_id,omitempty"` - // An array of identities that will be granted the privilege in the role. - // Each entry can have one of the following values: + // An array of identities that will be granted the privilege in the role. Each entry can have one of the following values: // +listType=set Members []*string `json:"members,omitempty" tf:"members,omitempty"` - // The role that should be assigned. Only one - // yandex_compute_filesystem_iam_binding can be used per role. + // The role that should be assigned. Only one yandex_compute_filesystem_iam_binding can be used per role. Role *string `json:"role,omitempty" tf:"role,omitempty"` } @@ -31,13 +29,11 @@ type FilesystemIAMBindingObservation struct { ID *string `json:"id,omitempty" tf:"id,omitempty"` - // An array of identities that will be granted the privilege in the role. - // Each entry can have one of the following values: + // An array of identities that will be granted the privilege in the role. Each entry can have one of the following values: // +listType=set Members []*string `json:"members,omitempty" tf:"members,omitempty"` - // The role that should be assigned. Only one - // yandex_compute_filesystem_iam_binding can be used per role. + // The role that should be assigned. Only one yandex_compute_filesystem_iam_binding can be used per role. Role *string `json:"role,omitempty" tf:"role,omitempty"` } @@ -47,14 +43,12 @@ type FilesystemIAMBindingParameters struct { // +kubebuilder:validation:Optional FilesystemID *string `json:"filesystemId,omitempty" tf:"filesystem_id,omitempty"` - // An array of identities that will be granted the privilege in the role. - // Each entry can have one of the following values: + // An array of identities that will be granted the privilege in the role. Each entry can have one of the following values: // +kubebuilder:validation:Optional // +listType=set Members []*string `json:"members,omitempty" tf:"members,omitempty"` - // The role that should be assigned. Only one - // yandex_compute_filesystem_iam_binding can be used per role. + // The role that should be assigned. Only one yandex_compute_filesystem_iam_binding can be used per role. // +kubebuilder:validation:Optional Role *string `json:"role,omitempty" tf:"role,omitempty"` } diff --git a/apis/compute/v1alpha1/zz_generated.deepcopy.go b/apis/compute/v1alpha1/zz_generated.deepcopy.go index aa3ec91..bd62306 100644 --- a/apis/compute/v1alpha1/zz_generated.deepcopy.go +++ b/apis/compute/v1alpha1/zz_generated.deepcopy.go @@ -274,6 +274,11 @@ func (in *ApplicationLoadBalancerParameters) DeepCopy() *ApplicationLoadBalancer // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *AutoScaleInitParameters) DeepCopyInto(out *AutoScaleInitParameters) { *out = *in + if in.AutoScaleType != nil { + in, out := &in.AutoScaleType, &out.AutoScaleType + *out = new(string) + **out = **in + } if in.CPUUtilizationTarget != nil { in, out := &in.CPUUtilizationTarget, &out.CPUUtilizationTarget *out = new(float64) @@ -331,6 +336,11 @@ func (in *AutoScaleInitParameters) DeepCopy() *AutoScaleInitParameters { // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *AutoScaleObservation) DeepCopyInto(out *AutoScaleObservation) { *out = *in + if in.AutoScaleType != nil { + in, out := &in.AutoScaleType, &out.AutoScaleType + *out = new(string) + **out = **in + } if in.CPUUtilizationTarget != nil { in, out := &in.CPUUtilizationTarget, &out.CPUUtilizationTarget *out = new(float64) @@ -388,6 +398,11 @@ func (in *AutoScaleObservation) DeepCopy() *AutoScaleObservation { // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *AutoScaleParameters) DeepCopyInto(out *AutoScaleParameters) { *out = *in + if in.AutoScaleType != nil { + in, out := &in.AutoScaleType, &out.AutoScaleType + *out = new(string) + **out = **in + } if in.CPUUtilizationTarget != nil { in, out := &in.CPUUtilizationTarget, &out.CPUUtilizationTarget *out = new(float64) @@ -1425,6 +1440,13 @@ func (in *DiskInitParameters) DeepCopyInto(out *DiskInitParameters) { *out = new(v1.Selector) (*in).DeepCopyInto(*out) } + if in.HardwareGeneration != nil { + in, out := &in.HardwareGeneration, &out.HardwareGeneration + *out = make([]HardwareGenerationInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } if in.ImageID != nil { in, out := &in.ImageID, &out.ImageID *out = new(string) @@ -1560,6 +1582,13 @@ func (in *DiskObservation) DeepCopyInto(out *DiskObservation) { *out = new(string) **out = **in } + if in.HardwareGeneration != nil { + in, out := &in.HardwareGeneration, &out.HardwareGeneration + *out = make([]HardwareGenerationObservation, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } if in.ID != nil { in, out := &in.ID, &out.ID *out = new(string) @@ -1679,6 +1708,13 @@ func (in *DiskParameters) DeepCopyInto(out *DiskParameters) { *out = new(v1.Selector) (*in).DeepCopyInto(*out) } + if in.HardwareGeneration != nil { + in, out := &in.HardwareGeneration, &out.HardwareGeneration + *out = make([]HardwareGenerationParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } if in.ImageID != nil { in, out := &in.ImageID, &out.ImageID *out = new(string) @@ -2945,6 +2981,51 @@ func (in *FixedScaleParameters) DeepCopy() *FixedScaleParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *Generation2FeaturesInitParameters) DeepCopyInto(out *Generation2FeaturesInitParameters) { + *out = *in +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Generation2FeaturesInitParameters. +func (in *Generation2FeaturesInitParameters) DeepCopy() *Generation2FeaturesInitParameters { + if in == nil { + return nil + } + out := new(Generation2FeaturesInitParameters) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *Generation2FeaturesObservation) DeepCopyInto(out *Generation2FeaturesObservation) { + *out = *in +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Generation2FeaturesObservation. +func (in *Generation2FeaturesObservation) DeepCopy() *Generation2FeaturesObservation { + if in == nil { + return nil + } + out := new(Generation2FeaturesObservation) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *Generation2FeaturesParameters) DeepCopyInto(out *Generation2FeaturesParameters) { + *out = *in +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Generation2FeaturesParameters. +func (in *Generation2FeaturesParameters) DeepCopy() *Generation2FeaturesParameters { + if in == nil { + return nil + } + out := new(Generation2FeaturesParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *GpuCluster) DeepCopyInto(out *GpuCluster) { *out = *in @@ -3524,6 +3605,192 @@ func (in *HTTPOptionsParameters) DeepCopy() *HTTPOptionsParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *HardwareGenerationGeneration2FeaturesInitParameters) DeepCopyInto(out *HardwareGenerationGeneration2FeaturesInitParameters) { + *out = *in +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new HardwareGenerationGeneration2FeaturesInitParameters. +func (in *HardwareGenerationGeneration2FeaturesInitParameters) DeepCopy() *HardwareGenerationGeneration2FeaturesInitParameters { + if in == nil { + return nil + } + out := new(HardwareGenerationGeneration2FeaturesInitParameters) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *HardwareGenerationGeneration2FeaturesObservation) DeepCopyInto(out *HardwareGenerationGeneration2FeaturesObservation) { + *out = *in +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new HardwareGenerationGeneration2FeaturesObservation. +func (in *HardwareGenerationGeneration2FeaturesObservation) DeepCopy() *HardwareGenerationGeneration2FeaturesObservation { + if in == nil { + return nil + } + out := new(HardwareGenerationGeneration2FeaturesObservation) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *HardwareGenerationGeneration2FeaturesParameters) DeepCopyInto(out *HardwareGenerationGeneration2FeaturesParameters) { + *out = *in +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new HardwareGenerationGeneration2FeaturesParameters. +func (in *HardwareGenerationGeneration2FeaturesParameters) DeepCopy() *HardwareGenerationGeneration2FeaturesParameters { + if in == nil { + return nil + } + out := new(HardwareGenerationGeneration2FeaturesParameters) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *HardwareGenerationInitParameters) DeepCopyInto(out *HardwareGenerationInitParameters) { + *out = *in + if in.Generation2Features != nil { + in, out := &in.Generation2Features, &out.Generation2Features + *out = make([]Generation2FeaturesInitParameters, len(*in)) + copy(*out, *in) + } + if in.LegacyFeatures != nil { + in, out := &in.LegacyFeatures, &out.LegacyFeatures + *out = make([]LegacyFeaturesInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new HardwareGenerationInitParameters. +func (in *HardwareGenerationInitParameters) DeepCopy() *HardwareGenerationInitParameters { + if in == nil { + return nil + } + out := new(HardwareGenerationInitParameters) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *HardwareGenerationLegacyFeaturesInitParameters) DeepCopyInto(out *HardwareGenerationLegacyFeaturesInitParameters) { + *out = *in + if in.PciTopology != nil { + in, out := &in.PciTopology, &out.PciTopology + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new HardwareGenerationLegacyFeaturesInitParameters. +func (in *HardwareGenerationLegacyFeaturesInitParameters) DeepCopy() *HardwareGenerationLegacyFeaturesInitParameters { + if in == nil { + return nil + } + out := new(HardwareGenerationLegacyFeaturesInitParameters) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *HardwareGenerationLegacyFeaturesObservation) DeepCopyInto(out *HardwareGenerationLegacyFeaturesObservation) { + *out = *in + if in.PciTopology != nil { + in, out := &in.PciTopology, &out.PciTopology + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new HardwareGenerationLegacyFeaturesObservation. +func (in *HardwareGenerationLegacyFeaturesObservation) DeepCopy() *HardwareGenerationLegacyFeaturesObservation { + if in == nil { + return nil + } + out := new(HardwareGenerationLegacyFeaturesObservation) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *HardwareGenerationLegacyFeaturesParameters) DeepCopyInto(out *HardwareGenerationLegacyFeaturesParameters) { + *out = *in + if in.PciTopology != nil { + in, out := &in.PciTopology, &out.PciTopology + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new HardwareGenerationLegacyFeaturesParameters. +func (in *HardwareGenerationLegacyFeaturesParameters) DeepCopy() *HardwareGenerationLegacyFeaturesParameters { + if in == nil { + return nil + } + out := new(HardwareGenerationLegacyFeaturesParameters) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *HardwareGenerationObservation) DeepCopyInto(out *HardwareGenerationObservation) { + *out = *in + if in.Generation2Features != nil { + in, out := &in.Generation2Features, &out.Generation2Features + *out = make([]Generation2FeaturesParameters, len(*in)) + copy(*out, *in) + } + if in.LegacyFeatures != nil { + in, out := &in.LegacyFeatures, &out.LegacyFeatures + *out = make([]LegacyFeaturesObservation, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new HardwareGenerationObservation. +func (in *HardwareGenerationObservation) DeepCopy() *HardwareGenerationObservation { + if in == nil { + return nil + } + out := new(HardwareGenerationObservation) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *HardwareGenerationParameters) DeepCopyInto(out *HardwareGenerationParameters) { + *out = *in + if in.Generation2Features != nil { + in, out := &in.Generation2Features, &out.Generation2Features + *out = make([]Generation2FeaturesParameters, len(*in)) + copy(*out, *in) + } + if in.LegacyFeatures != nil { + in, out := &in.LegacyFeatures, &out.LegacyFeatures + *out = make([]LegacyFeaturesParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new HardwareGenerationParameters. +func (in *HardwareGenerationParameters) DeepCopy() *HardwareGenerationParameters { + if in == nil { + return nil + } + out := new(HardwareGenerationParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *HealthCheckInitParameters) DeepCopyInto(out *HealthCheckInitParameters) { *out = *in @@ -3911,6 +4178,87 @@ func (in *Image) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *ImageHardwareGenerationInitParameters) DeepCopyInto(out *ImageHardwareGenerationInitParameters) { + *out = *in + if in.Generation2Features != nil { + in, out := &in.Generation2Features, &out.Generation2Features + *out = make([]HardwareGenerationGeneration2FeaturesInitParameters, len(*in)) + copy(*out, *in) + } + if in.LegacyFeatures != nil { + in, out := &in.LegacyFeatures, &out.LegacyFeatures + *out = make([]HardwareGenerationLegacyFeaturesInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ImageHardwareGenerationInitParameters. +func (in *ImageHardwareGenerationInitParameters) DeepCopy() *ImageHardwareGenerationInitParameters { + if in == nil { + return nil + } + out := new(ImageHardwareGenerationInitParameters) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *ImageHardwareGenerationObservation) DeepCopyInto(out *ImageHardwareGenerationObservation) { + *out = *in + if in.Generation2Features != nil { + in, out := &in.Generation2Features, &out.Generation2Features + *out = make([]HardwareGenerationGeneration2FeaturesParameters, len(*in)) + copy(*out, *in) + } + if in.LegacyFeatures != nil { + in, out := &in.LegacyFeatures, &out.LegacyFeatures + *out = make([]HardwareGenerationLegacyFeaturesObservation, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ImageHardwareGenerationObservation. +func (in *ImageHardwareGenerationObservation) DeepCopy() *ImageHardwareGenerationObservation { + if in == nil { + return nil + } + out := new(ImageHardwareGenerationObservation) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *ImageHardwareGenerationParameters) DeepCopyInto(out *ImageHardwareGenerationParameters) { + *out = *in + if in.Generation2Features != nil { + in, out := &in.Generation2Features, &out.Generation2Features + *out = make([]HardwareGenerationGeneration2FeaturesParameters, len(*in)) + copy(*out, *in) + } + if in.LegacyFeatures != nil { + in, out := &in.LegacyFeatures, &out.LegacyFeatures + *out = make([]HardwareGenerationLegacyFeaturesParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ImageHardwareGenerationParameters. +func (in *ImageHardwareGenerationParameters) DeepCopy() *ImageHardwareGenerationParameters { + if in == nil { + return nil + } + out := new(ImageHardwareGenerationParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *ImageIAMBinding) DeepCopyInto(out *ImageIAMBinding) { *out = *in @@ -4146,6 +4494,13 @@ func (in *ImageInitParameters) DeepCopyInto(out *ImageInitParameters) { *out = new(v1.Selector) (*in).DeepCopyInto(*out) } + if in.HardwareGeneration != nil { + in, out := &in.HardwareGeneration, &out.HardwareGeneration + *out = make([]ImageHardwareGenerationInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } if in.Labels != nil { in, out := &in.Labels, &out.Labels *out = make(map[string]*string, len(*in)) @@ -4285,6 +4640,13 @@ func (in *ImageObservation) DeepCopyInto(out *ImageObservation) { *out = new(string) **out = **in } + if in.HardwareGeneration != nil { + in, out := &in.HardwareGeneration, &out.HardwareGeneration + *out = make([]ImageHardwareGenerationObservation, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } if in.ID != nil { in, out := &in.ID, &out.ID *out = new(string) @@ -4412,6 +4774,13 @@ func (in *ImageParameters) DeepCopyInto(out *ImageParameters) { *out = new(v1.Selector) (*in).DeepCopyInto(*out) } + if in.HardwareGeneration != nil { + in, out := &in.HardwareGeneration, &out.HardwareGeneration + *out = make([]ImageHardwareGenerationParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } if in.Labels != nil { in, out := &in.Labels, &out.Labels *out = make(map[string]*string, len(*in)) @@ -5274,80 +5643,232 @@ func (in *InstanceGroupParameters) DeepCopyInto(out *InstanceGroupParameters) { (*in)[i].DeepCopyInto(&(*out)[i]) } } - if in.ServiceAccountID != nil { - in, out := &in.ServiceAccountID, &out.ServiceAccountID + if in.ServiceAccountID != nil { + in, out := &in.ServiceAccountID, &out.ServiceAccountID + *out = new(string) + **out = **in + } + if in.ServiceAccountIDRef != nil { + in, out := &in.ServiceAccountIDRef, &out.ServiceAccountIDRef + *out = new(v1.Reference) + (*in).DeepCopyInto(*out) + } + if in.ServiceAccountIDSelector != nil { + in, out := &in.ServiceAccountIDSelector, &out.ServiceAccountIDSelector + *out = new(v1.Selector) + (*in).DeepCopyInto(*out) + } + if in.Variables != nil { + in, out := &in.Variables, &out.Variables + *out = make(map[string]*string, len(*in)) + for key, val := range *in { + var outVal *string + if val == nil { + (*out)[key] = nil + } else { + inVal := (*in)[key] + in, out := &inVal, &outVal + *out = new(string) + **out = **in + } + (*out)[key] = outVal + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new InstanceGroupParameters. +func (in *InstanceGroupParameters) DeepCopy() *InstanceGroupParameters { + if in == nil { + return nil + } + out := new(InstanceGroupParameters) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *InstanceGroupSpec) DeepCopyInto(out *InstanceGroupSpec) { + *out = *in + in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) + in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new InstanceGroupSpec. +func (in *InstanceGroupSpec) DeepCopy() *InstanceGroupSpec { + if in == nil { + return nil + } + out := new(InstanceGroupSpec) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *InstanceGroupStatus) DeepCopyInto(out *InstanceGroupStatus) { + *out = *in + in.ResourceStatus.DeepCopyInto(&out.ResourceStatus) + in.AtProvider.DeepCopyInto(&out.AtProvider) +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new InstanceGroupStatus. +func (in *InstanceGroupStatus) DeepCopy() *InstanceGroupStatus { + if in == nil { + return nil + } + out := new(InstanceGroupStatus) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *InstanceHardwareGenerationGeneration2FeaturesInitParameters) DeepCopyInto(out *InstanceHardwareGenerationGeneration2FeaturesInitParameters) { + *out = *in +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new InstanceHardwareGenerationGeneration2FeaturesInitParameters. +func (in *InstanceHardwareGenerationGeneration2FeaturesInitParameters) DeepCopy() *InstanceHardwareGenerationGeneration2FeaturesInitParameters { + if in == nil { + return nil + } + out := new(InstanceHardwareGenerationGeneration2FeaturesInitParameters) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *InstanceHardwareGenerationGeneration2FeaturesObservation) DeepCopyInto(out *InstanceHardwareGenerationGeneration2FeaturesObservation) { + *out = *in +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new InstanceHardwareGenerationGeneration2FeaturesObservation. +func (in *InstanceHardwareGenerationGeneration2FeaturesObservation) DeepCopy() *InstanceHardwareGenerationGeneration2FeaturesObservation { + if in == nil { + return nil + } + out := new(InstanceHardwareGenerationGeneration2FeaturesObservation) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *InstanceHardwareGenerationGeneration2FeaturesParameters) DeepCopyInto(out *InstanceHardwareGenerationGeneration2FeaturesParameters) { + *out = *in +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new InstanceHardwareGenerationGeneration2FeaturesParameters. +func (in *InstanceHardwareGenerationGeneration2FeaturesParameters) DeepCopy() *InstanceHardwareGenerationGeneration2FeaturesParameters { + if in == nil { + return nil + } + out := new(InstanceHardwareGenerationGeneration2FeaturesParameters) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *InstanceHardwareGenerationInitParameters) DeepCopyInto(out *InstanceHardwareGenerationInitParameters) { + *out = *in +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new InstanceHardwareGenerationInitParameters. +func (in *InstanceHardwareGenerationInitParameters) DeepCopy() *InstanceHardwareGenerationInitParameters { + if in == nil { + return nil + } + out := new(InstanceHardwareGenerationInitParameters) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *InstanceHardwareGenerationLegacyFeaturesInitParameters) DeepCopyInto(out *InstanceHardwareGenerationLegacyFeaturesInitParameters) { + *out = *in +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new InstanceHardwareGenerationLegacyFeaturesInitParameters. +func (in *InstanceHardwareGenerationLegacyFeaturesInitParameters) DeepCopy() *InstanceHardwareGenerationLegacyFeaturesInitParameters { + if in == nil { + return nil + } + out := new(InstanceHardwareGenerationLegacyFeaturesInitParameters) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *InstanceHardwareGenerationLegacyFeaturesObservation) DeepCopyInto(out *InstanceHardwareGenerationLegacyFeaturesObservation) { + *out = *in + if in.PciTopology != nil { + in, out := &in.PciTopology, &out.PciTopology *out = new(string) **out = **in } - if in.ServiceAccountIDRef != nil { - in, out := &in.ServiceAccountIDRef, &out.ServiceAccountIDRef - *out = new(v1.Reference) - (*in).DeepCopyInto(*out) - } - if in.ServiceAccountIDSelector != nil { - in, out := &in.ServiceAccountIDSelector, &out.ServiceAccountIDSelector - *out = new(v1.Selector) - (*in).DeepCopyInto(*out) - } - if in.Variables != nil { - in, out := &in.Variables, &out.Variables - *out = make(map[string]*string, len(*in)) - for key, val := range *in { - var outVal *string - if val == nil { - (*out)[key] = nil - } else { - inVal := (*in)[key] - in, out := &inVal, &outVal - *out = new(string) - **out = **in - } - (*out)[key] = outVal - } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new InstanceHardwareGenerationLegacyFeaturesObservation. +func (in *InstanceHardwareGenerationLegacyFeaturesObservation) DeepCopy() *InstanceHardwareGenerationLegacyFeaturesObservation { + if in == nil { + return nil } + out := new(InstanceHardwareGenerationLegacyFeaturesObservation) + in.DeepCopyInto(out) + return out } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new InstanceGroupParameters. -func (in *InstanceGroupParameters) DeepCopy() *InstanceGroupParameters { +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *InstanceHardwareGenerationLegacyFeaturesParameters) DeepCopyInto(out *InstanceHardwareGenerationLegacyFeaturesParameters) { + *out = *in +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new InstanceHardwareGenerationLegacyFeaturesParameters. +func (in *InstanceHardwareGenerationLegacyFeaturesParameters) DeepCopy() *InstanceHardwareGenerationLegacyFeaturesParameters { if in == nil { return nil } - out := new(InstanceGroupParameters) + out := new(InstanceHardwareGenerationLegacyFeaturesParameters) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *InstanceGroupSpec) DeepCopyInto(out *InstanceGroupSpec) { +func (in *InstanceHardwareGenerationObservation) DeepCopyInto(out *InstanceHardwareGenerationObservation) { *out = *in - in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) - in.ForProvider.DeepCopyInto(&out.ForProvider) - in.InitProvider.DeepCopyInto(&out.InitProvider) + if in.Generation2Features != nil { + in, out := &in.Generation2Features, &out.Generation2Features + *out = make([]InstanceHardwareGenerationGeneration2FeaturesObservation, len(*in)) + copy(*out, *in) + } + if in.LegacyFeatures != nil { + in, out := &in.LegacyFeatures, &out.LegacyFeatures + *out = make([]InstanceHardwareGenerationLegacyFeaturesObservation, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new InstanceGroupSpec. -func (in *InstanceGroupSpec) DeepCopy() *InstanceGroupSpec { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new InstanceHardwareGenerationObservation. +func (in *InstanceHardwareGenerationObservation) DeepCopy() *InstanceHardwareGenerationObservation { if in == nil { return nil } - out := new(InstanceGroupSpec) + out := new(InstanceHardwareGenerationObservation) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *InstanceGroupStatus) DeepCopyInto(out *InstanceGroupStatus) { +func (in *InstanceHardwareGenerationParameters) DeepCopyInto(out *InstanceHardwareGenerationParameters) { *out = *in - in.ResourceStatus.DeepCopyInto(&out.ResourceStatus) - in.AtProvider.DeepCopyInto(&out.AtProvider) } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new InstanceGroupStatus. -func (in *InstanceGroupStatus) DeepCopy() *InstanceGroupStatus { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new InstanceHardwareGenerationParameters. +func (in *InstanceHardwareGenerationParameters) DeepCopy() *InstanceHardwareGenerationParameters { if in == nil { return nil } - out := new(InstanceGroupStatus) + out := new(InstanceHardwareGenerationParameters) in.DeepCopyInto(out) return out } @@ -5838,6 +6359,13 @@ func (in *InstanceObservation) DeepCopyInto(out *InstanceObservation) { *out = new(string) **out = **in } + if in.HardwareGeneration != nil { + in, out := &in.HardwareGeneration, &out.HardwareGeneration + *out = make([]InstanceHardwareGenerationObservation, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } if in.Hostname != nil { in, out := &in.Hostname, &out.Hostname *out = new(string) @@ -7915,6 +8443,66 @@ func (in *InstancesParameters) DeepCopy() *InstancesParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *LegacyFeaturesInitParameters) DeepCopyInto(out *LegacyFeaturesInitParameters) { + *out = *in + if in.PciTopology != nil { + in, out := &in.PciTopology, &out.PciTopology + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LegacyFeaturesInitParameters. +func (in *LegacyFeaturesInitParameters) DeepCopy() *LegacyFeaturesInitParameters { + if in == nil { + return nil + } + out := new(LegacyFeaturesInitParameters) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *LegacyFeaturesObservation) DeepCopyInto(out *LegacyFeaturesObservation) { + *out = *in + if in.PciTopology != nil { + in, out := &in.PciTopology, &out.PciTopology + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LegacyFeaturesObservation. +func (in *LegacyFeaturesObservation) DeepCopy() *LegacyFeaturesObservation { + if in == nil { + return nil + } + out := new(LegacyFeaturesObservation) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *LegacyFeaturesParameters) DeepCopyInto(out *LegacyFeaturesParameters) { + *out = *in + if in.PciTopology != nil { + in, out := &in.PciTopology, &out.PciTopology + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LegacyFeaturesParameters. +func (in *LegacyFeaturesParameters) DeepCopy() *LegacyFeaturesParameters { + if in == nil { + return nil + } + out := new(LegacyFeaturesParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *LoadBalancerInitParameters) DeepCopyInto(out *LoadBalancerInitParameters) { *out = *in @@ -10238,6 +10826,192 @@ func (in *Snapshot) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *SnapshotHardwareGenerationGeneration2FeaturesInitParameters) DeepCopyInto(out *SnapshotHardwareGenerationGeneration2FeaturesInitParameters) { + *out = *in +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SnapshotHardwareGenerationGeneration2FeaturesInitParameters. +func (in *SnapshotHardwareGenerationGeneration2FeaturesInitParameters) DeepCopy() *SnapshotHardwareGenerationGeneration2FeaturesInitParameters { + if in == nil { + return nil + } + out := new(SnapshotHardwareGenerationGeneration2FeaturesInitParameters) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *SnapshotHardwareGenerationGeneration2FeaturesObservation) DeepCopyInto(out *SnapshotHardwareGenerationGeneration2FeaturesObservation) { + *out = *in +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SnapshotHardwareGenerationGeneration2FeaturesObservation. +func (in *SnapshotHardwareGenerationGeneration2FeaturesObservation) DeepCopy() *SnapshotHardwareGenerationGeneration2FeaturesObservation { + if in == nil { + return nil + } + out := new(SnapshotHardwareGenerationGeneration2FeaturesObservation) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *SnapshotHardwareGenerationGeneration2FeaturesParameters) DeepCopyInto(out *SnapshotHardwareGenerationGeneration2FeaturesParameters) { + *out = *in +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SnapshotHardwareGenerationGeneration2FeaturesParameters. +func (in *SnapshotHardwareGenerationGeneration2FeaturesParameters) DeepCopy() *SnapshotHardwareGenerationGeneration2FeaturesParameters { + if in == nil { + return nil + } + out := new(SnapshotHardwareGenerationGeneration2FeaturesParameters) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *SnapshotHardwareGenerationInitParameters) DeepCopyInto(out *SnapshotHardwareGenerationInitParameters) { + *out = *in + if in.Generation2Features != nil { + in, out := &in.Generation2Features, &out.Generation2Features + *out = make([]SnapshotHardwareGenerationGeneration2FeaturesInitParameters, len(*in)) + copy(*out, *in) + } + if in.LegacyFeatures != nil { + in, out := &in.LegacyFeatures, &out.LegacyFeatures + *out = make([]SnapshotHardwareGenerationLegacyFeaturesInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SnapshotHardwareGenerationInitParameters. +func (in *SnapshotHardwareGenerationInitParameters) DeepCopy() *SnapshotHardwareGenerationInitParameters { + if in == nil { + return nil + } + out := new(SnapshotHardwareGenerationInitParameters) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *SnapshotHardwareGenerationLegacyFeaturesInitParameters) DeepCopyInto(out *SnapshotHardwareGenerationLegacyFeaturesInitParameters) { + *out = *in + if in.PciTopology != nil { + in, out := &in.PciTopology, &out.PciTopology + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SnapshotHardwareGenerationLegacyFeaturesInitParameters. +func (in *SnapshotHardwareGenerationLegacyFeaturesInitParameters) DeepCopy() *SnapshotHardwareGenerationLegacyFeaturesInitParameters { + if in == nil { + return nil + } + out := new(SnapshotHardwareGenerationLegacyFeaturesInitParameters) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *SnapshotHardwareGenerationLegacyFeaturesObservation) DeepCopyInto(out *SnapshotHardwareGenerationLegacyFeaturesObservation) { + *out = *in + if in.PciTopology != nil { + in, out := &in.PciTopology, &out.PciTopology + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SnapshotHardwareGenerationLegacyFeaturesObservation. +func (in *SnapshotHardwareGenerationLegacyFeaturesObservation) DeepCopy() *SnapshotHardwareGenerationLegacyFeaturesObservation { + if in == nil { + return nil + } + out := new(SnapshotHardwareGenerationLegacyFeaturesObservation) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *SnapshotHardwareGenerationLegacyFeaturesParameters) DeepCopyInto(out *SnapshotHardwareGenerationLegacyFeaturesParameters) { + *out = *in + if in.PciTopology != nil { + in, out := &in.PciTopology, &out.PciTopology + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SnapshotHardwareGenerationLegacyFeaturesParameters. +func (in *SnapshotHardwareGenerationLegacyFeaturesParameters) DeepCopy() *SnapshotHardwareGenerationLegacyFeaturesParameters { + if in == nil { + return nil + } + out := new(SnapshotHardwareGenerationLegacyFeaturesParameters) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *SnapshotHardwareGenerationObservation) DeepCopyInto(out *SnapshotHardwareGenerationObservation) { + *out = *in + if in.Generation2Features != nil { + in, out := &in.Generation2Features, &out.Generation2Features + *out = make([]SnapshotHardwareGenerationGeneration2FeaturesParameters, len(*in)) + copy(*out, *in) + } + if in.LegacyFeatures != nil { + in, out := &in.LegacyFeatures, &out.LegacyFeatures + *out = make([]SnapshotHardwareGenerationLegacyFeaturesObservation, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SnapshotHardwareGenerationObservation. +func (in *SnapshotHardwareGenerationObservation) DeepCopy() *SnapshotHardwareGenerationObservation { + if in == nil { + return nil + } + out := new(SnapshotHardwareGenerationObservation) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *SnapshotHardwareGenerationParameters) DeepCopyInto(out *SnapshotHardwareGenerationParameters) { + *out = *in + if in.Generation2Features != nil { + in, out := &in.Generation2Features, &out.Generation2Features + *out = make([]SnapshotHardwareGenerationGeneration2FeaturesParameters, len(*in)) + copy(*out, *in) + } + if in.LegacyFeatures != nil { + in, out := &in.LegacyFeatures, &out.LegacyFeatures + *out = make([]SnapshotHardwareGenerationLegacyFeaturesParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SnapshotHardwareGenerationParameters. +func (in *SnapshotHardwareGenerationParameters) DeepCopy() *SnapshotHardwareGenerationParameters { + if in == nil { + return nil + } + out := new(SnapshotHardwareGenerationParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *SnapshotIAMBinding) DeepCopyInto(out *SnapshotIAMBinding) { *out = *in @@ -10468,6 +11242,13 @@ func (in *SnapshotInitParameters) DeepCopyInto(out *SnapshotInitParameters) { *out = new(v1.Selector) (*in).DeepCopyInto(*out) } + if in.HardwareGeneration != nil { + in, out := &in.HardwareGeneration, &out.HardwareGeneration + *out = make([]SnapshotHardwareGenerationInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } if in.Labels != nil { in, out := &in.Labels, &out.Labels *out = make(map[string]*string, len(*in)) @@ -10571,6 +11352,13 @@ func (in *SnapshotObservation) DeepCopyInto(out *SnapshotObservation) { *out = new(string) **out = **in } + if in.HardwareGeneration != nil { + in, out := &in.HardwareGeneration, &out.HardwareGeneration + *out = make([]SnapshotHardwareGenerationObservation, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } if in.ID != nil { in, out := &in.ID, &out.ID *out = new(string) @@ -10642,6 +11430,13 @@ func (in *SnapshotParameters) DeepCopyInto(out *SnapshotParameters) { *out = new(v1.Selector) (*in).DeepCopyInto(*out) } + if in.HardwareGeneration != nil { + in, out := &in.HardwareGeneration, &out.HardwareGeneration + *out = make([]SnapshotHardwareGenerationParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } if in.Labels != nil { in, out := &in.Labels, &out.Labels *out = make(map[string]*string, len(*in)) @@ -11682,6 +12477,11 @@ func (in *TestAutoScaleCustomRuleParameters) DeepCopy() *TestAutoScaleCustomRule // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *TestAutoScaleInitParameters) DeepCopyInto(out *TestAutoScaleInitParameters) { *out = *in + if in.AutoScaleType != nil { + in, out := &in.AutoScaleType, &out.AutoScaleType + *out = new(string) + **out = **in + } if in.CPUUtilizationTarget != nil { in, out := &in.CPUUtilizationTarget, &out.CPUUtilizationTarget *out = new(float64) @@ -11739,6 +12539,11 @@ func (in *TestAutoScaleInitParameters) DeepCopy() *TestAutoScaleInitParameters { // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *TestAutoScaleObservation) DeepCopyInto(out *TestAutoScaleObservation) { *out = *in + if in.AutoScaleType != nil { + in, out := &in.AutoScaleType, &out.AutoScaleType + *out = new(string) + **out = **in + } if in.CPUUtilizationTarget != nil { in, out := &in.CPUUtilizationTarget, &out.CPUUtilizationTarget *out = new(float64) @@ -11796,6 +12601,11 @@ func (in *TestAutoScaleObservation) DeepCopy() *TestAutoScaleObservation { // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *TestAutoScaleParameters) DeepCopyInto(out *TestAutoScaleParameters) { *out = *in + if in.AutoScaleType != nil { + in, out := &in.AutoScaleType, &out.AutoScaleType + *out = new(string) + **out = **in + } if in.CPUUtilizationTarget != nil { in, out := &in.CPUUtilizationTarget, &out.CPUUtilizationTarget *out = new(float64) diff --git a/apis/compute/v1alpha1/zz_gpucluster_types.go b/apis/compute/v1alpha1/zz_gpucluster_types.go index eebea42..91b1a15 100755 --- a/apis/compute/v1alpha1/zz_gpucluster_types.go +++ b/apis/compute/v1alpha1/zz_gpucluster_types.go @@ -14,8 +14,7 @@ type GpuClusterInitParameters struct { // Description of the GPU cluster. Provide this property when you create a resource. Description *string `json:"description,omitempty" tf:"description,omitempty"` - // The ID of the folder that the GPU cluster belongs to. If it is not provided, the default - // provider folder is used. + // The ID of the folder that the GPU cluster belongs to. If it is not provided, the default provider folder is used. // +crossplane:generate:reference:type=github.com/tagesjump/provider-upjet-yc/apis/resourcemanager/v1alpha1.Folder FolderID *string `json:"folderId,omitempty" tf:"folder_id,omitempty"` @@ -27,12 +26,10 @@ type GpuClusterInitParameters struct { // +kubebuilder:validation:Optional FolderIDSelector *v1.Selector `json:"folderIdSelector,omitempty" tf:"-"` - // Type of interconnect between nodes to use in GPU cluster. Type infiniband is set by default, - // and it is the only one available at the moment. + // Type of interconnect between nodes to use in GPU cluster. Type infiniband is set by default, and it is the only one available at the moment. InterconnectType *string `json:"interconnectType,omitempty" tf:"interconnect_type,omitempty"` - // Labels to assign to this GPU cluster. A list of key/value pairs. For details about the concept, - // see documentation. + // Labels to assign to this GPU cluster. A list of key/value pairs. For details about the concept, see documentation. // +mapType=granular Labels map[string]*string `json:"labels,omitempty" tf:"labels,omitempty"` @@ -51,18 +48,15 @@ type GpuClusterObservation struct { // Description of the GPU cluster. Provide this property when you create a resource. Description *string `json:"description,omitempty" tf:"description,omitempty"` - // The ID of the folder that the GPU cluster belongs to. If it is not provided, the default - // provider folder is used. + // The ID of the folder that the GPU cluster belongs to. If it is not provided, the default provider folder is used. FolderID *string `json:"folderId,omitempty" tf:"folder_id,omitempty"` ID *string `json:"id,omitempty" tf:"id,omitempty"` - // Type of interconnect between nodes to use in GPU cluster. Type infiniband is set by default, - // and it is the only one available at the moment. + // Type of interconnect between nodes to use in GPU cluster. Type infiniband is set by default, and it is the only one available at the moment. InterconnectType *string `json:"interconnectType,omitempty" tf:"interconnect_type,omitempty"` - // Labels to assign to this GPU cluster. A list of key/value pairs. For details about the concept, - // see documentation. + // Labels to assign to this GPU cluster. A list of key/value pairs. For details about the concept, see documentation. // +mapType=granular Labels map[string]*string `json:"labels,omitempty" tf:"labels,omitempty"` @@ -82,8 +76,7 @@ type GpuClusterParameters struct { // +kubebuilder:validation:Optional Description *string `json:"description,omitempty" tf:"description,omitempty"` - // The ID of the folder that the GPU cluster belongs to. If it is not provided, the default - // provider folder is used. + // The ID of the folder that the GPU cluster belongs to. If it is not provided, the default provider folder is used. // +crossplane:generate:reference:type=github.com/tagesjump/provider-upjet-yc/apis/resourcemanager/v1alpha1.Folder // +kubebuilder:validation:Optional FolderID *string `json:"folderId,omitempty" tf:"folder_id,omitempty"` @@ -96,13 +89,11 @@ type GpuClusterParameters struct { // +kubebuilder:validation:Optional FolderIDSelector *v1.Selector `json:"folderIdSelector,omitempty" tf:"-"` - // Type of interconnect between nodes to use in GPU cluster. Type infiniband is set by default, - // and it is the only one available at the moment. + // Type of interconnect between nodes to use in GPU cluster. Type infiniband is set by default, and it is the only one available at the moment. // +kubebuilder:validation:Optional InterconnectType *string `json:"interconnectType,omitempty" tf:"interconnect_type,omitempty"` - // Labels to assign to this GPU cluster. A list of key/value pairs. For details about the concept, - // see documentation. + // Labels to assign to this GPU cluster. A list of key/value pairs. For details about the concept, see documentation. // +kubebuilder:validation:Optional // +mapType=granular Labels map[string]*string `json:"labels,omitempty" tf:"labels,omitempty"` diff --git a/apis/compute/v1alpha1/zz_gpuclusteriambinding_types.go b/apis/compute/v1alpha1/zz_gpuclusteriambinding_types.go index 84d7905..50ba9aa 100755 --- a/apis/compute/v1alpha1/zz_gpuclusteriambinding_types.go +++ b/apis/compute/v1alpha1/zz_gpuclusteriambinding_types.go @@ -14,13 +14,11 @@ type GpuClusterIAMBindingInitParameters struct { // ID of the gpu cluster to attach the policy to. GpuClusterID *string `json:"gpuClusterId,omitempty" tf:"gpu_cluster_id,omitempty"` - // An array of identities that will be granted the privilege in the role. - // Each entry can have one of the following values: + // An array of identities that will be granted the privilege in the role. Each entry can have one of the following values: // +listType=set Members []*string `json:"members,omitempty" tf:"members,omitempty"` - // The role that should be assigned. Only one - // yandex_compute_gpu_cluster_iam_binding can be used per role. + // The role that should be assigned. Only one yandex_compute_gpu_cluster_iam_binding can be used per role. Role *string `json:"role,omitempty" tf:"role,omitempty"` } @@ -31,13 +29,11 @@ type GpuClusterIAMBindingObservation struct { ID *string `json:"id,omitempty" tf:"id,omitempty"` - // An array of identities that will be granted the privilege in the role. - // Each entry can have one of the following values: + // An array of identities that will be granted the privilege in the role. Each entry can have one of the following values: // +listType=set Members []*string `json:"members,omitempty" tf:"members,omitempty"` - // The role that should be assigned. Only one - // yandex_compute_gpu_cluster_iam_binding can be used per role. + // The role that should be assigned. Only one yandex_compute_gpu_cluster_iam_binding can be used per role. Role *string `json:"role,omitempty" tf:"role,omitempty"` } @@ -47,14 +43,12 @@ type GpuClusterIAMBindingParameters struct { // +kubebuilder:validation:Optional GpuClusterID *string `json:"gpuClusterId,omitempty" tf:"gpu_cluster_id,omitempty"` - // An array of identities that will be granted the privilege in the role. - // Each entry can have one of the following values: + // An array of identities that will be granted the privilege in the role. Each entry can have one of the following values: // +kubebuilder:validation:Optional // +listType=set Members []*string `json:"members,omitempty" tf:"members,omitempty"` - // The role that should be assigned. Only one - // yandex_compute_gpu_cluster_iam_binding can be used per role. + // The role that should be assigned. Only one yandex_compute_gpu_cluster_iam_binding can be used per role. // +kubebuilder:validation:Optional Role *string `json:"role,omitempty" tf:"role,omitempty"` } diff --git a/apis/compute/v1alpha1/zz_image_types.go b/apis/compute/v1alpha1/zz_image_types.go index d3ea54d..aeb5cab 100755 --- a/apis/compute/v1alpha1/zz_image_types.go +++ b/apis/compute/v1alpha1/zz_image_types.go @@ -9,17 +9,59 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type HardwareGenerationGeneration2FeaturesInitParameters struct { +} + +type HardwareGenerationGeneration2FeaturesObservation struct { +} + +type HardwareGenerationGeneration2FeaturesParameters struct { +} + +type HardwareGenerationLegacyFeaturesInitParameters struct { + PciTopology *string `json:"pciTopology,omitempty" tf:"pci_topology,omitempty"` +} + +type HardwareGenerationLegacyFeaturesObservation struct { + PciTopology *string `json:"pciTopology,omitempty" tf:"pci_topology,omitempty"` +} + +type HardwareGenerationLegacyFeaturesParameters struct { + + // +kubebuilder:validation:Optional + PciTopology *string `json:"pciTopology,omitempty" tf:"pci_topology,omitempty"` +} + +type ImageHardwareGenerationInitParameters struct { + Generation2Features []HardwareGenerationGeneration2FeaturesInitParameters `json:"generation2Features,omitempty" tf:"generation2_features,omitempty"` + + LegacyFeatures []HardwareGenerationLegacyFeaturesInitParameters `json:"legacyFeatures,omitempty" tf:"legacy_features,omitempty"` +} + +type ImageHardwareGenerationObservation struct { + Generation2Features []HardwareGenerationGeneration2FeaturesParameters `json:"generation2Features,omitempty" tf:"generation2_features,omitempty"` + + LegacyFeatures []HardwareGenerationLegacyFeaturesObservation `json:"legacyFeatures,omitempty" tf:"legacy_features,omitempty"` +} + +type ImageHardwareGenerationParameters struct { + + // +kubebuilder:validation:Optional + Generation2Features []HardwareGenerationGeneration2FeaturesParameters `json:"generation2Features,omitempty" tf:"generation2_features,omitempty"` + + // +kubebuilder:validation:Optional + LegacyFeatures []HardwareGenerationLegacyFeaturesParameters `json:"legacyFeatures,omitempty" tf:"legacy_features,omitempty"` +} + type ImageInitParameters struct { - // An optional description of the image. Provide this property when - // you create a resource. + // An optional description of the image. Provide this property when you create a resource. Description *string `json:"description,omitempty" tf:"description,omitempty"` // The name of the image family to which this image belongs. Family *string `json:"family,omitempty" tf:"family,omitempty"` - // The ID of the folder that the resource belongs to. If it - // is not provided, the default provider folder is used. + // The ID of the folder that the resource belongs to. If it is not provided, the default provider folder is used. // +crossplane:generate:reference:type=github.com/tagesjump/provider-upjet-yc/apis/resourcemanager/v1alpha1.Folder FolderID *string `json:"folderId,omitempty" tf:"folder_id,omitempty"` @@ -31,6 +73,8 @@ type ImageInitParameters struct { // +kubebuilder:validation:Optional FolderIDSelector *v1.Selector `json:"folderIdSelector,omitempty" tf:"-"` + HardwareGeneration []ImageHardwareGenerationInitParameters `json:"hardwareGeneration,omitempty" tf:"hardware_generation,omitempty"` + // A set of key/value label pairs to assign to the image. // +mapType=granular Labels map[string]*string `json:"labels,omitempty" tf:"labels,omitempty"` @@ -47,30 +91,23 @@ type ImageInitParameters struct { // Optimize the image to create a disk. Pooled *bool `json:"pooled,omitempty" tf:"pooled,omitempty"` - // License IDs that indicate which licenses are - // attached to this image. + // License IDs that indicate which licenses are attached to this image. // +listType=set ProductIds []*string `json:"productIds,omitempty" tf:"product_ids,omitempty"` - // The ID of a disk to use as the source of the - // image. Changing this ID forces a new resource to be created. + // The ID of a disk to use as the source of the image. Changing this ID forces a new resource to be created. SourceDisk *string `json:"sourceDisk,omitempty" tf:"source_disk,omitempty"` - // The name of the family to use as the source of the new image. - // The ID of the latest image is taken from the "standard-images" folder. Changing the family forces - // a new resource to be created. + // The name of the family to use as the source of the new image. The ID of the latest image is taken from the "standard-images" folder. Changing the family forces a new resource to be created. SourceFamily *string `json:"sourceFamily,omitempty" tf:"source_family,omitempty"` - // The ID of an existing image to use as the source of the - // image. Changing this ID forces a new resource to be created. + // The ID of an existing image to use as the source of the image. Changing this ID forces a new resource to be created. SourceImage *string `json:"sourceImage,omitempty" tf:"source_image,omitempty"` - // The ID of a snapshot to use as the source of the - // image. Changing this ID forces a new resource to be created. + // The ID of a snapshot to use as the source of the image. Changing this ID forces a new resource to be created. SourceSnapshot *string `json:"sourceSnapshot,omitempty" tf:"source_snapshot,omitempty"` - // The URL to use as the source of the - // image. Changing this URL forces a new resource to be created. + // The URL to use as the source of the image. Changing this URL forces a new resource to be created. SourceURL *string `json:"sourceUrl,omitempty" tf:"source_url,omitempty"` } @@ -79,17 +116,17 @@ type ImageObservation struct { // Creation timestamp of the image. CreatedAt *string `json:"createdAt,omitempty" tf:"created_at,omitempty"` - // An optional description of the image. Provide this property when - // you create a resource. + // An optional description of the image. Provide this property when you create a resource. Description *string `json:"description,omitempty" tf:"description,omitempty"` // The name of the image family to which this image belongs. Family *string `json:"family,omitempty" tf:"family,omitempty"` - // The ID of the folder that the resource belongs to. If it - // is not provided, the default provider folder is used. + // The ID of the folder that the resource belongs to. If it is not provided, the default provider folder is used. FolderID *string `json:"folderId,omitempty" tf:"folder_id,omitempty"` + HardwareGeneration []ImageHardwareGenerationObservation `json:"hardwareGeneration,omitempty" tf:"hardware_generation,omitempty"` + ID *string `json:"id,omitempty" tf:"id,omitempty"` // A set of key/value label pairs to assign to the image. @@ -108,33 +145,26 @@ type ImageObservation struct { // Optimize the image to create a disk. Pooled *bool `json:"pooled,omitempty" tf:"pooled,omitempty"` - // License IDs that indicate which licenses are - // attached to this image. + // License IDs that indicate which licenses are attached to this image. // +listType=set ProductIds []*string `json:"productIds,omitempty" tf:"product_ids,omitempty"` // The size of the image, specified in GB. Size *float64 `json:"size,omitempty" tf:"size,omitempty"` - // The ID of a disk to use as the source of the - // image. Changing this ID forces a new resource to be created. + // The ID of a disk to use as the source of the image. Changing this ID forces a new resource to be created. SourceDisk *string `json:"sourceDisk,omitempty" tf:"source_disk,omitempty"` - // The name of the family to use as the source of the new image. - // The ID of the latest image is taken from the "standard-images" folder. Changing the family forces - // a new resource to be created. + // The name of the family to use as the source of the new image. The ID of the latest image is taken from the "standard-images" folder. Changing the family forces a new resource to be created. SourceFamily *string `json:"sourceFamily,omitempty" tf:"source_family,omitempty"` - // The ID of an existing image to use as the source of the - // image. Changing this ID forces a new resource to be created. + // The ID of an existing image to use as the source of the image. Changing this ID forces a new resource to be created. SourceImage *string `json:"sourceImage,omitempty" tf:"source_image,omitempty"` - // The ID of a snapshot to use as the source of the - // image. Changing this ID forces a new resource to be created. + // The ID of a snapshot to use as the source of the image. Changing this ID forces a new resource to be created. SourceSnapshot *string `json:"sourceSnapshot,omitempty" tf:"source_snapshot,omitempty"` - // The URL to use as the source of the - // image. Changing this URL forces a new resource to be created. + // The URL to use as the source of the image. Changing this URL forces a new resource to be created. SourceURL *string `json:"sourceUrl,omitempty" tf:"source_url,omitempty"` // The status of the image. @@ -143,8 +173,7 @@ type ImageObservation struct { type ImageParameters struct { - // An optional description of the image. Provide this property when - // you create a resource. + // An optional description of the image. Provide this property when you create a resource. // +kubebuilder:validation:Optional Description *string `json:"description,omitempty" tf:"description,omitempty"` @@ -152,8 +181,7 @@ type ImageParameters struct { // +kubebuilder:validation:Optional Family *string `json:"family,omitempty" tf:"family,omitempty"` - // The ID of the folder that the resource belongs to. If it - // is not provided, the default provider folder is used. + // The ID of the folder that the resource belongs to. If it is not provided, the default provider folder is used. // +crossplane:generate:reference:type=github.com/tagesjump/provider-upjet-yc/apis/resourcemanager/v1alpha1.Folder // +kubebuilder:validation:Optional FolderID *string `json:"folderId,omitempty" tf:"folder_id,omitempty"` @@ -166,6 +194,9 @@ type ImageParameters struct { // +kubebuilder:validation:Optional FolderIDSelector *v1.Selector `json:"folderIdSelector,omitempty" tf:"-"` + // +kubebuilder:validation:Optional + HardwareGeneration []ImageHardwareGenerationParameters `json:"hardwareGeneration,omitempty" tf:"hardware_generation,omitempty"` + // A set of key/value label pairs to assign to the image. // +kubebuilder:validation:Optional // +mapType=granular @@ -187,35 +218,28 @@ type ImageParameters struct { // +kubebuilder:validation:Optional Pooled *bool `json:"pooled,omitempty" tf:"pooled,omitempty"` - // License IDs that indicate which licenses are - // attached to this image. + // License IDs that indicate which licenses are attached to this image. // +kubebuilder:validation:Optional // +listType=set ProductIds []*string `json:"productIds,omitempty" tf:"product_ids,omitempty"` - // The ID of a disk to use as the source of the - // image. Changing this ID forces a new resource to be created. + // The ID of a disk to use as the source of the image. Changing this ID forces a new resource to be created. // +kubebuilder:validation:Optional SourceDisk *string `json:"sourceDisk,omitempty" tf:"source_disk,omitempty"` - // The name of the family to use as the source of the new image. - // The ID of the latest image is taken from the "standard-images" folder. Changing the family forces - // a new resource to be created. + // The name of the family to use as the source of the new image. The ID of the latest image is taken from the "standard-images" folder. Changing the family forces a new resource to be created. // +kubebuilder:validation:Optional SourceFamily *string `json:"sourceFamily,omitempty" tf:"source_family,omitempty"` - // The ID of an existing image to use as the source of the - // image. Changing this ID forces a new resource to be created. + // The ID of an existing image to use as the source of the image. Changing this ID forces a new resource to be created. // +kubebuilder:validation:Optional SourceImage *string `json:"sourceImage,omitempty" tf:"source_image,omitempty"` - // The ID of a snapshot to use as the source of the - // image. Changing this ID forces a new resource to be created. + // The ID of a snapshot to use as the source of the image. Changing this ID forces a new resource to be created. // +kubebuilder:validation:Optional SourceSnapshot *string `json:"sourceSnapshot,omitempty" tf:"source_snapshot,omitempty"` - // The URL to use as the source of the - // image. Changing this URL forces a new resource to be created. + // The URL to use as the source of the image. Changing this URL forces a new resource to be created. // +kubebuilder:validation:Optional SourceURL *string `json:"sourceUrl,omitempty" tf:"source_url,omitempty"` } diff --git a/apis/compute/v1alpha1/zz_imageiambinding_types.go b/apis/compute/v1alpha1/zz_imageiambinding_types.go index 3868682..61f92d6 100755 --- a/apis/compute/v1alpha1/zz_imageiambinding_types.go +++ b/apis/compute/v1alpha1/zz_imageiambinding_types.go @@ -14,13 +14,11 @@ type ImageIAMBindingInitParameters struct { // ID of the image to attach the policy to. ImageID *string `json:"imageId,omitempty" tf:"image_id,omitempty"` - // An array of identities that will be granted the privilege in the role. - // Each entry can have one of the following values: + // An array of identities that will be granted the privilege in the role. Each entry can have one of the following values: // +listType=set Members []*string `json:"members,omitempty" tf:"members,omitempty"` - // The role that should be assigned. Only one - // yandex_compute_image_iam_binding can be used per role. + // The role that should be assigned. Only one yandex_compute_image_iam_binding can be used per role. Role *string `json:"role,omitempty" tf:"role,omitempty"` } @@ -30,13 +28,11 @@ type ImageIAMBindingObservation struct { // ID of the image to attach the policy to. ImageID *string `json:"imageId,omitempty" tf:"image_id,omitempty"` - // An array of identities that will be granted the privilege in the role. - // Each entry can have one of the following values: + // An array of identities that will be granted the privilege in the role. Each entry can have one of the following values: // +listType=set Members []*string `json:"members,omitempty" tf:"members,omitempty"` - // The role that should be assigned. Only one - // yandex_compute_image_iam_binding can be used per role. + // The role that should be assigned. Only one yandex_compute_image_iam_binding can be used per role. Role *string `json:"role,omitempty" tf:"role,omitempty"` } @@ -46,14 +42,12 @@ type ImageIAMBindingParameters struct { // +kubebuilder:validation:Optional ImageID *string `json:"imageId,omitempty" tf:"image_id,omitempty"` - // An array of identities that will be granted the privilege in the role. - // Each entry can have one of the following values: + // An array of identities that will be granted the privilege in the role. Each entry can have one of the following values: // +kubebuilder:validation:Optional // +listType=set Members []*string `json:"members,omitempty" tf:"members,omitempty"` - // The role that should be assigned. Only one - // yandex_compute_image_iam_binding can be used per role. + // The role that should be assigned. Only one yandex_compute_image_iam_binding can be used per role. // +kubebuilder:validation:Optional Role *string `json:"role,omitempty" tf:"role,omitempty"` } diff --git a/apis/compute/v1alpha1/zz_instance_types.go b/apis/compute/v1alpha1/zz_instance_types.go index 48db930..5862968 100755 --- a/apis/compute/v1alpha1/zz_instance_types.go +++ b/apis/compute/v1alpha1/zz_instance_types.go @@ -11,15 +11,13 @@ import ( type BootDiskInitParameters struct { - // Defines whether the disk will be auto-deleted when the instance - // is deleted. The default value is True. + // Defines whether the disk will be auto-deleted when the instance is deleted. The default value is True. AutoDelete *bool `json:"autoDelete,omitempty" tf:"auto_delete,omitempty"` // Name that can be used to access an attached disk. DeviceName *string `json:"deviceName,omitempty" tf:"device_name,omitempty"` - // The ID of the existing disk (such as those managed by - // yandex_compute_disk) to attach as a boot disk. + // The ID of the existing disk (such as those managed by yandex_compute_disk) to attach as a boot disk. // +crossplane:generate:reference:type=Disk DiskID *string `json:"diskId,omitempty" tf:"disk_id,omitempty"` @@ -31,8 +29,7 @@ type BootDiskInitParameters struct { // +kubebuilder:validation:Optional DiskIDSelector *v1.Selector `json:"diskIdSelector,omitempty" tf:"-"` - // Parameters for a new disk that will be created - // alongside the new instance. Either initialize_params or disk_id must be set. The structure is documented below. + // Parameters for a new disk that will be created alongside the new instance. Either initialize_params or disk_id must be set. The structure is documented below. InitializeParams []InitializeParamsInitParameters `json:"initializeParams,omitempty" tf:"initialize_params,omitempty"` // Type of access to the disk resource. By default, a disk is attached in READ_WRITE mode. @@ -41,19 +38,16 @@ type BootDiskInitParameters struct { type BootDiskObservation struct { - // Defines whether the disk will be auto-deleted when the instance - // is deleted. The default value is True. + // Defines whether the disk will be auto-deleted when the instance is deleted. The default value is True. AutoDelete *bool `json:"autoDelete,omitempty" tf:"auto_delete,omitempty"` // Name that can be used to access an attached disk. DeviceName *string `json:"deviceName,omitempty" tf:"device_name,omitempty"` - // The ID of the existing disk (such as those managed by - // yandex_compute_disk) to attach as a boot disk. + // The ID of the existing disk (such as those managed by yandex_compute_disk) to attach as a boot disk. DiskID *string `json:"diskId,omitempty" tf:"disk_id,omitempty"` - // Parameters for a new disk that will be created - // alongside the new instance. Either initialize_params or disk_id must be set. The structure is documented below. + // Parameters for a new disk that will be created alongside the new instance. Either initialize_params or disk_id must be set. The structure is documented below. InitializeParams []InitializeParamsObservation `json:"initializeParams,omitempty" tf:"initialize_params,omitempty"` // Type of access to the disk resource. By default, a disk is attached in READ_WRITE mode. @@ -62,8 +56,7 @@ type BootDiskObservation struct { type BootDiskParameters struct { - // Defines whether the disk will be auto-deleted when the instance - // is deleted. The default value is True. + // Defines whether the disk will be auto-deleted when the instance is deleted. The default value is True. // +kubebuilder:validation:Optional AutoDelete *bool `json:"autoDelete,omitempty" tf:"auto_delete,omitempty"` @@ -71,8 +64,7 @@ type BootDiskParameters struct { // +kubebuilder:validation:Optional DeviceName *string `json:"deviceName,omitempty" tf:"device_name,omitempty"` - // The ID of the existing disk (such as those managed by - // yandex_compute_disk) to attach as a boot disk. + // The ID of the existing disk (such as those managed by yandex_compute_disk) to attach as a boot disk. // +crossplane:generate:reference:type=Disk // +kubebuilder:validation:Optional DiskID *string `json:"diskId,omitempty" tf:"disk_id,omitempty"` @@ -85,8 +77,7 @@ type BootDiskParameters struct { // +kubebuilder:validation:Optional DiskIDSelector *v1.Selector `json:"diskIdSelector,omitempty" tf:"-"` - // Parameters for a new disk that will be created - // alongside the new instance. Either initialize_params or disk_id must be set. The structure is documented below. + // Parameters for a new disk that will be created alongside the new instance. Either initialize_params or disk_id must be set. The structure is documented below. // +kubebuilder:validation:Optional InitializeParams []InitializeParamsParameters `json:"initializeParams,omitempty" tf:"initialize_params,omitempty"` @@ -334,8 +325,7 @@ type InstanceFilesystemInitParameters struct { // ID of the filesystem that should be attached. FilesystemID *string `json:"filesystemId,omitempty" tf:"filesystem_id,omitempty"` - // Mode of access to the filesystem that should be attached. By default, filesystem is attached - // in READ_WRITE mode. + // Mode of access to the filesystem that should be attached. By default, filesystem is attached in READ_WRITE mode. Mode *string `json:"mode,omitempty" tf:"mode,omitempty"` } @@ -347,8 +337,7 @@ type InstanceFilesystemObservation struct { // ID of the filesystem that should be attached. FilesystemID *string `json:"filesystemId,omitempty" tf:"filesystem_id,omitempty"` - // Mode of access to the filesystem that should be attached. By default, filesystem is attached - // in READ_WRITE mode. + // Mode of access to the filesystem that should be attached. By default, filesystem is attached in READ_WRITE mode. Mode *string `json:"mode,omitempty" tf:"mode,omitempty"` } @@ -362,12 +351,42 @@ type InstanceFilesystemParameters struct { // +kubebuilder:validation:Optional FilesystemID *string `json:"filesystemId" tf:"filesystem_id,omitempty"` - // Mode of access to the filesystem that should be attached. By default, filesystem is attached - // in READ_WRITE mode. + // Mode of access to the filesystem that should be attached. By default, filesystem is attached in READ_WRITE mode. // +kubebuilder:validation:Optional Mode *string `json:"mode,omitempty" tf:"mode,omitempty"` } +type InstanceHardwareGenerationGeneration2FeaturesInitParameters struct { +} + +type InstanceHardwareGenerationGeneration2FeaturesObservation struct { +} + +type InstanceHardwareGenerationGeneration2FeaturesParameters struct { +} + +type InstanceHardwareGenerationInitParameters struct { +} + +type InstanceHardwareGenerationLegacyFeaturesInitParameters struct { +} + +type InstanceHardwareGenerationLegacyFeaturesObservation struct { + PciTopology *string `json:"pciTopology,omitempty" tf:"pci_topology,omitempty"` +} + +type InstanceHardwareGenerationLegacyFeaturesParameters struct { +} + +type InstanceHardwareGenerationObservation struct { + Generation2Features []InstanceHardwareGenerationGeneration2FeaturesObservation `json:"generation2Features,omitempty" tf:"generation2_features,omitempty"` + + LegacyFeatures []InstanceHardwareGenerationLegacyFeaturesObservation `json:"legacyFeatures,omitempty" tf:"legacy_features,omitempty"` +} + +type InstanceHardwareGenerationParameters struct { +} + type InstanceInitParameters struct { // Default 5 minutes @@ -385,8 +404,7 @@ type InstanceInitParameters struct { // List of filesystems that are attached to the instance. Structure is documented below. Filesystem []InstanceFilesystemInitParameters `json:"filesystem,omitempty" tf:"filesystem,omitempty"` - // The ID of the folder that the resource belongs to. If it - // is not provided, the default provider folder is used. + // The ID of the folder that the resource belongs to. If it is not provided, the default provider folder is used. // +crossplane:generate:reference:type=github.com/tagesjump/provider-upjet-yc/apis/resourcemanager/v1alpha1.Folder FolderID *string `json:"folderId,omitempty" tf:"folder_id,omitempty"` @@ -401,10 +419,7 @@ type InstanceInitParameters struct { // ID of the GPU cluster to attach this instance to. The GPU cluster must exist in the same zone as the instance. GpuClusterID *string `json:"gpuClusterId,omitempty" tf:"gpu_cluster_id,omitempty"` - // Host name for the instance. This field is used to generate the instance fqdn value. - // The host name must be unique within the network and region. If not specified, the host name will be equal - // to id of the instance and fqdn will be .auto.internal. - // Otherwise FQDN will be ..internal. + // Host name for the instance. This field is used to generate the instance fqdn value. The host name must be unique within the network and region. If not specified, the host name will be equal to id of the instance and fqdn will be .auto.internal. Otherwise FQDN will be ..internal. Hostname *string `json:"hostname,omitempty" tf:"hostname,omitempty"` // A set of key/value label pairs to assign to the instance. @@ -420,8 +435,7 @@ type InstanceInitParameters struct { // Behaviour on maintenance events. The default is unspecified. Values: unspecified, migrate, restart. MaintenancePolicy *string `json:"maintenancePolicy,omitempty" tf:"maintenance_policy,omitempty"` - // Metadata key/value pairs to make available from - // within the instance. + // Metadata key/value pairs to make available from within the instance. // +mapType=granular Metadata map[string]*string `json:"metadata,omitempty" tf:"metadata,omitempty"` @@ -434,8 +448,7 @@ type InstanceInitParameters struct { // Type of network acceleration. The default is standard. Values: standard, software_accelerated NetworkAccelerationType *string `json:"networkAccelerationType,omitempty" tf:"network_acceleration_type,omitempty"` - // Networks to attach to the instance. This can - // be specified multiple times. The structure is documented below. + // Networks to attach to the instance. This can be specified multiple times. The structure is documented below. NetworkInterface []NetworkInterfaceInitParameters `json:"networkInterface,omitempty" tf:"network_interface,omitempty"` // The placement policy configuration. The structure is documented below. @@ -450,8 +463,7 @@ type InstanceInitParameters struct { // Scheduling policy configuration. The structure is documented below. SchedulingPolicy []SchedulingPolicyInitParameters `json:"schedulingPolicy,omitempty" tf:"scheduling_policy,omitempty"` - // A set of disks to attach to the instance. The structure is documented below. - // Note: The allow_stopping_for_update property must be set to true in order to update this structure. + // A set of disks to attach to the instance. The structure is documented below. Note: The allow_stopping_for_update property must be set to true in order to update this structure. SecondaryDisk []SecondaryDiskInitParameters `json:"secondaryDisk,omitempty" tf:"secondary_disk,omitempty"` // ID of the service account authorized for this instance. @@ -466,8 +478,7 @@ type InstanceInitParameters struct { // +kubebuilder:validation:Optional ServiceAccountIDSelector *v1.Selector `json:"serviceAccountIdSelector,omitempty" tf:"-"` - // The availability zone where the virtual machine will be created. If it is not provided, - // the default provider folder is used. + // The availability zone where the virtual machine will be created. If it is not provided, the default provider folder is used. Zone *string `json:"zone,omitempty" tf:"zone,omitempty"` } @@ -491,8 +502,7 @@ type InstanceObservation struct { // List of filesystems that are attached to the instance. Structure is documented below. Filesystem []InstanceFilesystemObservation `json:"filesystem,omitempty" tf:"filesystem,omitempty"` - // The ID of the folder that the resource belongs to. If it - // is not provided, the default provider folder is used. + // The ID of the folder that the resource belongs to. If it is not provided, the default provider folder is used. FolderID *string `json:"folderId,omitempty" tf:"folder_id,omitempty"` // The fully qualified DNS name of this instance. @@ -501,10 +511,9 @@ type InstanceObservation struct { // ID of the GPU cluster to attach this instance to. The GPU cluster must exist in the same zone as the instance. GpuClusterID *string `json:"gpuClusterId,omitempty" tf:"gpu_cluster_id,omitempty"` - // Host name for the instance. This field is used to generate the instance fqdn value. - // The host name must be unique within the network and region. If not specified, the host name will be equal - // to id of the instance and fqdn will be .auto.internal. - // Otherwise FQDN will be ..internal. + HardwareGeneration []InstanceHardwareGenerationObservation `json:"hardwareGeneration,omitempty" tf:"hardware_generation,omitempty"` + + // Host name for the instance. This field is used to generate the instance fqdn value. The host name must be unique within the network and region. If not specified, the host name will be equal to id of the instance and fqdn will be .auto.internal. Otherwise FQDN will be ..internal. Hostname *string `json:"hostname,omitempty" tf:"hostname,omitempty"` ID *string `json:"id,omitempty" tf:"id,omitempty"` @@ -522,8 +531,7 @@ type InstanceObservation struct { // Behaviour on maintenance events. The default is unspecified. Values: unspecified, migrate, restart. MaintenancePolicy *string `json:"maintenancePolicy,omitempty" tf:"maintenance_policy,omitempty"` - // Metadata key/value pairs to make available from - // within the instance. + // Metadata key/value pairs to make available from within the instance. // +mapType=granular Metadata map[string]*string `json:"metadata,omitempty" tf:"metadata,omitempty"` @@ -536,8 +544,7 @@ type InstanceObservation struct { // Type of network acceleration. The default is standard. Values: standard, software_accelerated NetworkAccelerationType *string `json:"networkAccelerationType,omitempty" tf:"network_acceleration_type,omitempty"` - // Networks to attach to the instance. This can - // be specified multiple times. The structure is documented below. + // Networks to attach to the instance. This can be specified multiple times. The structure is documented below. NetworkInterface []NetworkInterfaceObservation `json:"networkInterface,omitempty" tf:"network_interface,omitempty"` // The placement policy configuration. The structure is documented below. @@ -552,8 +559,7 @@ type InstanceObservation struct { // Scheduling policy configuration. The structure is documented below. SchedulingPolicy []SchedulingPolicyObservation `json:"schedulingPolicy,omitempty" tf:"scheduling_policy,omitempty"` - // A set of disks to attach to the instance. The structure is documented below. - // Note: The allow_stopping_for_update property must be set to true in order to update this structure. + // A set of disks to attach to the instance. The structure is documented below. Note: The allow_stopping_for_update property must be set to true in order to update this structure. SecondaryDisk []SecondaryDiskObservation `json:"secondaryDisk,omitempty" tf:"secondary_disk,omitempty"` // ID of the service account authorized for this instance. @@ -562,8 +568,7 @@ type InstanceObservation struct { // The status of this instance. Status *string `json:"status,omitempty" tf:"status,omitempty"` - // The availability zone where the virtual machine will be created. If it is not provided, - // the default provider folder is used. + // The availability zone where the virtual machine will be created. If it is not provided, the default provider folder is used. Zone *string `json:"zone,omitempty" tf:"zone,omitempty"` } @@ -589,8 +594,7 @@ type InstanceParameters struct { // +kubebuilder:validation:Optional Filesystem []InstanceFilesystemParameters `json:"filesystem,omitempty" tf:"filesystem,omitempty"` - // The ID of the folder that the resource belongs to. If it - // is not provided, the default provider folder is used. + // The ID of the folder that the resource belongs to. If it is not provided, the default provider folder is used. // +crossplane:generate:reference:type=github.com/tagesjump/provider-upjet-yc/apis/resourcemanager/v1alpha1.Folder // +kubebuilder:validation:Optional FolderID *string `json:"folderId,omitempty" tf:"folder_id,omitempty"` @@ -607,10 +611,7 @@ type InstanceParameters struct { // +kubebuilder:validation:Optional GpuClusterID *string `json:"gpuClusterId,omitempty" tf:"gpu_cluster_id,omitempty"` - // Host name for the instance. This field is used to generate the instance fqdn value. - // The host name must be unique within the network and region. If not specified, the host name will be equal - // to id of the instance and fqdn will be .auto.internal. - // Otherwise FQDN will be ..internal. + // Host name for the instance. This field is used to generate the instance fqdn value. The host name must be unique within the network and region. If not specified, the host name will be equal to id of the instance and fqdn will be .auto.internal. Otherwise FQDN will be ..internal. // +kubebuilder:validation:Optional Hostname *string `json:"hostname,omitempty" tf:"hostname,omitempty"` @@ -631,8 +632,7 @@ type InstanceParameters struct { // +kubebuilder:validation:Optional MaintenancePolicy *string `json:"maintenancePolicy,omitempty" tf:"maintenance_policy,omitempty"` - // Metadata key/value pairs to make available from - // within the instance. + // Metadata key/value pairs to make available from within the instance. // +kubebuilder:validation:Optional // +mapType=granular Metadata map[string]*string `json:"metadata,omitempty" tf:"metadata,omitempty"` @@ -649,8 +649,7 @@ type InstanceParameters struct { // +kubebuilder:validation:Optional NetworkAccelerationType *string `json:"networkAccelerationType,omitempty" tf:"network_acceleration_type,omitempty"` - // Networks to attach to the instance. This can - // be specified multiple times. The structure is documented below. + // Networks to attach to the instance. This can be specified multiple times. The structure is documented below. // +kubebuilder:validation:Optional NetworkInterface []NetworkInterfaceParameters `json:"networkInterface,omitempty" tf:"network_interface,omitempty"` @@ -670,8 +669,7 @@ type InstanceParameters struct { // +kubebuilder:validation:Optional SchedulingPolicy []SchedulingPolicyParameters `json:"schedulingPolicy,omitempty" tf:"scheduling_policy,omitempty"` - // A set of disks to attach to the instance. The structure is documented below. - // Note: The allow_stopping_for_update property must be set to true in order to update this structure. + // A set of disks to attach to the instance. The structure is documented below. Note: The allow_stopping_for_update property must be set to true in order to update this structure. // +kubebuilder:validation:Optional SecondaryDisk []SecondaryDiskParameters `json:"secondaryDisk,omitempty" tf:"secondary_disk,omitempty"` @@ -688,8 +686,7 @@ type InstanceParameters struct { // +kubebuilder:validation:Optional ServiceAccountIDSelector *v1.Selector `json:"serviceAccountIdSelector,omitempty" tf:"-"` - // The availability zone where the virtual machine will be created. If it is not provided, - // the default provider folder is used. + // The availability zone where the virtual machine will be created. If it is not provided, the default provider folder is used. // +kubebuilder:validation:Optional Zone *string `json:"zone,omitempty" tf:"zone,omitempty"` } @@ -805,15 +802,13 @@ type NetworkInterfaceInitParameters struct { // List of configurations for creating ipv4 DNS records. The structure is documented below. DNSRecord []DNSRecordInitParameters `json:"dnsRecord,omitempty" tf:"dns_record,omitempty"` - // The private IP address to assign to the instance. If - // empty, the address will be automatically assigned from the specified subnet. + // The private IP address to assign to the instance. If empty, the address will be automatically assigned from the specified subnet. IPAddress *string `json:"ipAddress,omitempty" tf:"ip_address,omitempty"` // Allocate an IPv4 address for the interface. The default value is true. IPv4 *bool `json:"ipv4,omitempty" tf:"ipv4,omitempty"` - // If true, allocate an IPv6 address for the interface. - // The address will be automatically assigned from the specified subnet. + // If true, allocate an IPv6 address for the interface. The address will be automatically assigned from the specified subnet. IPv6 *bool `json:"ipv6,omitempty" tf:"ipv6,omitempty"` // The private IPv6 address to assign to the instance. @@ -822,8 +817,7 @@ type NetworkInterfaceInitParameters struct { // List of configurations for creating ipv6 DNS records. The structure is documented below. IPv6DNSRecord []IPv6DNSRecordInitParameters `json:"ipv6DnsRecord,omitempty" tf:"ipv6_dns_record,omitempty"` - // Index of network interface, will be calculated automatically for instance create or update operations - // if not specified. Required for attach/detach operations. + // Index of network interface, will be calculated automatically for instance create or update operations if not specified. Required for attach/detach operations. Index *float64 `json:"index,omitempty" tf:"index,omitempty"` // Provide a public address, for instance, to access the internet over NAT. @@ -848,9 +842,7 @@ type NetworkInterfaceInitParameters struct { // +kubebuilder:validation:Optional SecurityGroupIdsSelector *v1.Selector `json:"securityGroupIdsSelector,omitempty" tf:"-"` - // ID of the subnet to attach this - // interface to. The subnet must exist in the same zone where this instance will be - // created. + // ID of the subnet to attach this interface to. The subnet must exist in the same zone where this instance will be created. // +crossplane:generate:reference:type=github.com/tagesjump/provider-upjet-yc/apis/vpc/v1alpha1.Subnet SubnetID *string `json:"subnetId,omitempty" tf:"subnet_id,omitempty"` @@ -868,15 +860,13 @@ type NetworkInterfaceObservation struct { // List of configurations for creating ipv4 DNS records. The structure is documented below. DNSRecord []DNSRecordObservation `json:"dnsRecord,omitempty" tf:"dns_record,omitempty"` - // The private IP address to assign to the instance. If - // empty, the address will be automatically assigned from the specified subnet. + // The private IP address to assign to the instance. If empty, the address will be automatically assigned from the specified subnet. IPAddress *string `json:"ipAddress,omitempty" tf:"ip_address,omitempty"` // Allocate an IPv4 address for the interface. The default value is true. IPv4 *bool `json:"ipv4,omitempty" tf:"ipv4,omitempty"` - // If true, allocate an IPv6 address for the interface. - // The address will be automatically assigned from the specified subnet. + // If true, allocate an IPv6 address for the interface. The address will be automatically assigned from the specified subnet. IPv6 *bool `json:"ipv6,omitempty" tf:"ipv6,omitempty"` // The private IPv6 address to assign to the instance. @@ -885,8 +875,7 @@ type NetworkInterfaceObservation struct { // List of configurations for creating ipv6 DNS records. The structure is documented below. IPv6DNSRecord []IPv6DNSRecordObservation `json:"ipv6DnsRecord,omitempty" tf:"ipv6_dns_record,omitempty"` - // Index of network interface, will be calculated automatically for instance create or update operations - // if not specified. Required for attach/detach operations. + // Index of network interface, will be calculated automatically for instance create or update operations if not specified. Required for attach/detach operations. Index *float64 `json:"index,omitempty" tf:"index,omitempty"` MacAddress *string `json:"macAddress,omitempty" tf:"mac_address,omitempty"` @@ -906,9 +895,7 @@ type NetworkInterfaceObservation struct { // +listType=set SecurityGroupIds []*string `json:"securityGroupIds,omitempty" tf:"security_group_ids,omitempty"` - // ID of the subnet to attach this - // interface to. The subnet must exist in the same zone where this instance will be - // created. + // ID of the subnet to attach this interface to. The subnet must exist in the same zone where this instance will be created. SubnetID *string `json:"subnetId,omitempty" tf:"subnet_id,omitempty"` } @@ -918,8 +905,7 @@ type NetworkInterfaceParameters struct { // +kubebuilder:validation:Optional DNSRecord []DNSRecordParameters `json:"dnsRecord,omitempty" tf:"dns_record,omitempty"` - // The private IP address to assign to the instance. If - // empty, the address will be automatically assigned from the specified subnet. + // The private IP address to assign to the instance. If empty, the address will be automatically assigned from the specified subnet. // +kubebuilder:validation:Optional IPAddress *string `json:"ipAddress,omitempty" tf:"ip_address,omitempty"` @@ -927,8 +913,7 @@ type NetworkInterfaceParameters struct { // +kubebuilder:validation:Optional IPv4 *bool `json:"ipv4,omitempty" tf:"ipv4,omitempty"` - // If true, allocate an IPv6 address for the interface. - // The address will be automatically assigned from the specified subnet. + // If true, allocate an IPv6 address for the interface. The address will be automatically assigned from the specified subnet. // +kubebuilder:validation:Optional IPv6 *bool `json:"ipv6,omitempty" tf:"ipv6,omitempty"` @@ -940,8 +925,7 @@ type NetworkInterfaceParameters struct { // +kubebuilder:validation:Optional IPv6DNSRecord []IPv6DNSRecordParameters `json:"ipv6DnsRecord,omitempty" tf:"ipv6_dns_record,omitempty"` - // Index of network interface, will be calculated automatically for instance create or update operations - // if not specified. Required for attach/detach operations. + // Index of network interface, will be calculated automatically for instance create or update operations if not specified. Required for attach/detach operations. // +kubebuilder:validation:Optional Index *float64 `json:"index,omitempty" tf:"index,omitempty"` @@ -971,9 +955,7 @@ type NetworkInterfaceParameters struct { // +kubebuilder:validation:Optional SecurityGroupIdsSelector *v1.Selector `json:"securityGroupIdsSelector,omitempty" tf:"-"` - // ID of the subnet to attach this - // interface to. The subnet must exist in the same zone where this instance will be - // created. + // ID of the subnet to attach this interface to. The subnet must exist in the same zone where this instance will be created. // +crossplane:generate:reference:type=github.com/tagesjump/provider-upjet-yc/apis/vpc/v1alpha1.Subnet // +kubebuilder:validation:Optional SubnetID *string `json:"subnetId,omitempty" tf:"subnet_id,omitempty"` @@ -1093,12 +1075,10 @@ type SchedulingPolicyParameters struct { type SecondaryDiskInitParameters struct { - // Whether the disk is auto-deleted when the instance - // is deleted. The default value is false. + // Whether the disk is auto-deleted when the instance is deleted. The default value is false. AutoDelete *bool `json:"autoDelete,omitempty" tf:"auto_delete,omitempty"` - // Name that can be used to access an attached disk - // under /dev/disk/by-id/. + // Name that can be used to access an attached disk under /dev/disk/by-id/. DeviceName *string `json:"deviceName,omitempty" tf:"device_name,omitempty"` // ID of the disk that is attached to the instance. @@ -1110,12 +1090,10 @@ type SecondaryDiskInitParameters struct { type SecondaryDiskObservation struct { - // Whether the disk is auto-deleted when the instance - // is deleted. The default value is false. + // Whether the disk is auto-deleted when the instance is deleted. The default value is false. AutoDelete *bool `json:"autoDelete,omitempty" tf:"auto_delete,omitempty"` - // Name that can be used to access an attached disk - // under /dev/disk/by-id/. + // Name that can be used to access an attached disk under /dev/disk/by-id/. DeviceName *string `json:"deviceName,omitempty" tf:"device_name,omitempty"` // ID of the disk that is attached to the instance. @@ -1127,13 +1105,11 @@ type SecondaryDiskObservation struct { type SecondaryDiskParameters struct { - // Whether the disk is auto-deleted when the instance - // is deleted. The default value is false. + // Whether the disk is auto-deleted when the instance is deleted. The default value is false. // +kubebuilder:validation:Optional AutoDelete *bool `json:"autoDelete,omitempty" tf:"auto_delete,omitempty"` - // Name that can be used to access an attached disk - // under /dev/disk/by-id/. + // Name that can be used to access an attached disk under /dev/disk/by-id/. // +kubebuilder:validation:Optional DeviceName *string `json:"deviceName,omitempty" tf:"device_name,omitempty"` diff --git a/apis/compute/v1alpha1/zz_instancegroup_types.go b/apis/compute/v1alpha1/zz_instancegroup_types.go index 6d66c6d..1f75bc7 100755 --- a/apis/compute/v1alpha1/zz_instancegroup_types.go +++ b/apis/compute/v1alpha1/zz_instancegroup_types.go @@ -111,6 +111,9 @@ type ApplicationLoadBalancerParameters struct { type AutoScaleInitParameters struct { + // . Autoscale type, can be ZONAL or REGIONAL. By default ZONAL type is used. + AutoScaleType *string `json:"autoScaleType,omitempty" tf:"auto_scale_type,omitempty"` + // Target CPU load level. CPUUtilizationTarget *float64 `json:"cpuUtilizationTarget,omitempty" tf:"cpu_utilization_target,omitempty"` @@ -123,26 +126,24 @@ type AutoScaleInitParameters struct { // The maximum number of virtual machines in the group. MaxSize *float64 `json:"maxSize,omitempty" tf:"max_size,omitempty"` - // The amount of time, in seconds, that metrics are averaged for. - // If the average value at the end of the interval is higher than the cpu_utilization_target, - // the instance group will increase the number of virtual machines in the group. + // The amount of time, in seconds, that metrics are averaged for. If the average value at the end of the interval is higher than the cpu_utilization_target, the instance group will increase the number of virtual machines in the group. MeasurementDuration *float64 `json:"measurementDuration,omitempty" tf:"measurement_duration,omitempty"` // The minimum number of virtual machines in a single availability zone. MinZoneSize *float64 `json:"minZoneSize,omitempty" tf:"min_zone_size,omitempty"` - // The minimum time interval, in seconds, to monitor the load before - // an instance group can reduce the number of virtual machines in the group. During this time, the group - // will not decrease even if the average load falls below the value of cpu_utilization_target. + // The minimum time interval, in seconds, to monitor the load before an instance group can reduce the number of virtual machines in the group. During this time, the group will not decrease even if the average load falls below the value of cpu_utilization_target. StabilizationDuration *float64 `json:"stabilizationDuration,omitempty" tf:"stabilization_duration,omitempty"` - // The warm-up time of the virtual machine, in seconds. During this time, - // traffic is fed to the virtual machine, but load metrics are not taken into account. + // The warm-up time of the virtual machine, in seconds. During this time, traffic is fed to the virtual machine, but load metrics are not taken into account. WarmupDuration *float64 `json:"warmupDuration,omitempty" tf:"warmup_duration,omitempty"` } type AutoScaleObservation struct { + // . Autoscale type, can be ZONAL or REGIONAL. By default ZONAL type is used. + AutoScaleType *string `json:"autoScaleType,omitempty" tf:"auto_scale_type,omitempty"` + // Target CPU load level. CPUUtilizationTarget *float64 `json:"cpuUtilizationTarget,omitempty" tf:"cpu_utilization_target,omitempty"` @@ -155,26 +156,25 @@ type AutoScaleObservation struct { // The maximum number of virtual machines in the group. MaxSize *float64 `json:"maxSize,omitempty" tf:"max_size,omitempty"` - // The amount of time, in seconds, that metrics are averaged for. - // If the average value at the end of the interval is higher than the cpu_utilization_target, - // the instance group will increase the number of virtual machines in the group. + // The amount of time, in seconds, that metrics are averaged for. If the average value at the end of the interval is higher than the cpu_utilization_target, the instance group will increase the number of virtual machines in the group. MeasurementDuration *float64 `json:"measurementDuration,omitempty" tf:"measurement_duration,omitempty"` // The minimum number of virtual machines in a single availability zone. MinZoneSize *float64 `json:"minZoneSize,omitempty" tf:"min_zone_size,omitempty"` - // The minimum time interval, in seconds, to monitor the load before - // an instance group can reduce the number of virtual machines in the group. During this time, the group - // will not decrease even if the average load falls below the value of cpu_utilization_target. + // The minimum time interval, in seconds, to monitor the load before an instance group can reduce the number of virtual machines in the group. During this time, the group will not decrease even if the average load falls below the value of cpu_utilization_target. StabilizationDuration *float64 `json:"stabilizationDuration,omitempty" tf:"stabilization_duration,omitempty"` - // The warm-up time of the virtual machine, in seconds. During this time, - // traffic is fed to the virtual machine, but load metrics are not taken into account. + // The warm-up time of the virtual machine, in seconds. During this time, traffic is fed to the virtual machine, but load metrics are not taken into account. WarmupDuration *float64 `json:"warmupDuration,omitempty" tf:"warmup_duration,omitempty"` } type AutoScaleParameters struct { + // . Autoscale type, can be ZONAL or REGIONAL. By default ZONAL type is used. + // +kubebuilder:validation:Optional + AutoScaleType *string `json:"autoScaleType,omitempty" tf:"auto_scale_type,omitempty"` + // Target CPU load level. // +kubebuilder:validation:Optional CPUUtilizationTarget *float64 `json:"cpuUtilizationTarget,omitempty" tf:"cpu_utilization_target,omitempty"` @@ -191,9 +191,7 @@ type AutoScaleParameters struct { // +kubebuilder:validation:Optional MaxSize *float64 `json:"maxSize,omitempty" tf:"max_size,omitempty"` - // The amount of time, in seconds, that metrics are averaged for. - // If the average value at the end of the interval is higher than the cpu_utilization_target, - // the instance group will increase the number of virtual machines in the group. + // The amount of time, in seconds, that metrics are averaged for. If the average value at the end of the interval is higher than the cpu_utilization_target, the instance group will increase the number of virtual machines in the group. // +kubebuilder:validation:Optional MeasurementDuration *float64 `json:"measurementDuration" tf:"measurement_duration,omitempty"` @@ -201,14 +199,11 @@ type AutoScaleParameters struct { // +kubebuilder:validation:Optional MinZoneSize *float64 `json:"minZoneSize,omitempty" tf:"min_zone_size,omitempty"` - // The minimum time interval, in seconds, to monitor the load before - // an instance group can reduce the number of virtual machines in the group. During this time, the group - // will not decrease even if the average load falls below the value of cpu_utilization_target. + // The minimum time interval, in seconds, to monitor the load before an instance group can reduce the number of virtual machines in the group. During this time, the group will not decrease even if the average load falls below the value of cpu_utilization_target. // +kubebuilder:validation:Optional StabilizationDuration *float64 `json:"stabilizationDuration,omitempty" tf:"stabilization_duration,omitempty"` - // The warm-up time of the virtual machine, in seconds. During this time, - // traffic is fed to the virtual machine, but load metrics are not taken into account. + // The warm-up time of the virtual machine, in seconds. During this time, traffic is fed to the virtual machine, but load metrics are not taken into account. // +kubebuilder:validation:Optional WarmupDuration *float64 `json:"warmupDuration,omitempty" tf:"warmup_duration,omitempty"` } @@ -305,11 +300,7 @@ type CustomRuleInitParameters struct { // Metric type, GAUGE or COUNTER. MetricType *string `json:"metricType,omitempty" tf:"metric_type,omitempty"` - // Rule type: UTILIZATION - This type means that the metric applies to one instance. - // First, Instance Groups calculates the average metric value for each instance, - // then averages the values for instances in one availability zone. - // This type of metric must have the instance_id label. WORKLOAD - This type means that the metric applies to instances in one availability zone. - // This type of metric must have the zone_id label. + // Rule type: UTILIZATION - This type means that the metric applies to one instance. First, Instance Groups calculates the average metric value for each instance, then averages the values for instances in one availability zone. This type of metric must have the instance_id label. WORKLOAD - This type means that the metric applies to instances in one availability zone. This type of metric must have the zone_id label. RuleType *string `json:"ruleType,omitempty" tf:"rule_type,omitempty"` // Service of custom metric in Yandex Monitoring that should be used for scaling. @@ -334,11 +325,7 @@ type CustomRuleObservation struct { // Metric type, GAUGE or COUNTER. MetricType *string `json:"metricType,omitempty" tf:"metric_type,omitempty"` - // Rule type: UTILIZATION - This type means that the metric applies to one instance. - // First, Instance Groups calculates the average metric value for each instance, - // then averages the values for instances in one availability zone. - // This type of metric must have the instance_id label. WORKLOAD - This type means that the metric applies to instances in one availability zone. - // This type of metric must have the zone_id label. + // Rule type: UTILIZATION - This type means that the metric applies to one instance. First, Instance Groups calculates the average metric value for each instance, then averages the values for instances in one availability zone. This type of metric must have the instance_id label. WORKLOAD - This type means that the metric applies to instances in one availability zone. This type of metric must have the zone_id label. RuleType *string `json:"ruleType,omitempty" tf:"rule_type,omitempty"` // Service of custom metric in Yandex Monitoring that should be used for scaling. @@ -367,11 +354,7 @@ type CustomRuleParameters struct { // +kubebuilder:validation:Optional MetricType *string `json:"metricType" tf:"metric_type,omitempty"` - // Rule type: UTILIZATION - This type means that the metric applies to one instance. - // First, Instance Groups calculates the average metric value for each instance, - // then averages the values for instances in one availability zone. - // This type of metric must have the instance_id label. WORKLOAD - This type means that the metric applies to instances in one availability zone. - // This type of metric must have the zone_id label. + // Rule type: UTILIZATION - This type means that the metric applies to one instance. First, Instance Groups calculates the average metric value for each instance, then averages the values for instances in one availability zone. This type of metric must have the instance_id label. WORKLOAD - This type means that the metric applies to instances in one availability zone. This type of metric must have the zone_id label. // +kubebuilder:validation:Optional RuleType *string `json:"ruleType" tf:"rule_type,omitempty"` @@ -392,22 +375,16 @@ type DeployPolicyInitParameters struct { // The maximum number of instances that can be deleted at the same time. MaxDeleting *float64 `json:"maxDeleting,omitempty" tf:"max_deleting,omitempty"` - // The maximum number of instances that can be temporarily allocated above the group's target size - // during the update process. + // The maximum number of instances that can be temporarily allocated above the group's target size during the update process. MaxExpansion *float64 `json:"maxExpansion,omitempty" tf:"max_expansion,omitempty"` - // The maximum number of running instances that can be taken offline (stopped or deleted) at the same time - // during the update process. + // The maximum number of running instances that can be taken offline (stopped or deleted) at the same time during the update process. MaxUnavailable *float64 `json:"maxUnavailable,omitempty" tf:"max_unavailable,omitempty"` - // The amount of time in seconds to allow for an instance to start. - // Instance will be considered up and running (and start receiving traffic) only after the startup_duration - // has elapsed and all health checks are passed. + // The amount of time in seconds to allow for an instance to start. Instance will be considered up and running (and start receiving traffic) only after the startup_duration has elapsed and all health checks are passed. StartupDuration *float64 `json:"startupDuration,omitempty" tf:"startup_duration,omitempty"` - // Affects the lifecycle of the instance during deployment. If set to proactive (default), Instance Groups - // can forcefully stop a running instance. If opportunistic, Instance Groups does not stop a running instance. Instead, - // it will wait until the instance stops itself or becomes unhealthy. + // Affects the lifecycle of the instance during deployment. If set to proactive (default), Instance Groups can forcefully stop a running instance. If opportunistic, Instance Groups does not stop a running instance. Instead, it will wait until the instance stops itself or becomes unhealthy. Strategy *string `json:"strategy,omitempty" tf:"strategy,omitempty"` } @@ -419,22 +396,16 @@ type DeployPolicyObservation struct { // The maximum number of instances that can be deleted at the same time. MaxDeleting *float64 `json:"maxDeleting,omitempty" tf:"max_deleting,omitempty"` - // The maximum number of instances that can be temporarily allocated above the group's target size - // during the update process. + // The maximum number of instances that can be temporarily allocated above the group's target size during the update process. MaxExpansion *float64 `json:"maxExpansion,omitempty" tf:"max_expansion,omitempty"` - // The maximum number of running instances that can be taken offline (stopped or deleted) at the same time - // during the update process. + // The maximum number of running instances that can be taken offline (stopped or deleted) at the same time during the update process. MaxUnavailable *float64 `json:"maxUnavailable,omitempty" tf:"max_unavailable,omitempty"` - // The amount of time in seconds to allow for an instance to start. - // Instance will be considered up and running (and start receiving traffic) only after the startup_duration - // has elapsed and all health checks are passed. + // The amount of time in seconds to allow for an instance to start. Instance will be considered up and running (and start receiving traffic) only after the startup_duration has elapsed and all health checks are passed. StartupDuration *float64 `json:"startupDuration,omitempty" tf:"startup_duration,omitempty"` - // Affects the lifecycle of the instance during deployment. If set to proactive (default), Instance Groups - // can forcefully stop a running instance. If opportunistic, Instance Groups does not stop a running instance. Instead, - // it will wait until the instance stops itself or becomes unhealthy. + // Affects the lifecycle of the instance during deployment. If set to proactive (default), Instance Groups can forcefully stop a running instance. If opportunistic, Instance Groups does not stop a running instance. Instead, it will wait until the instance stops itself or becomes unhealthy. Strategy *string `json:"strategy,omitempty" tf:"strategy,omitempty"` } @@ -448,25 +419,19 @@ type DeployPolicyParameters struct { // +kubebuilder:validation:Optional MaxDeleting *float64 `json:"maxDeleting,omitempty" tf:"max_deleting,omitempty"` - // The maximum number of instances that can be temporarily allocated above the group's target size - // during the update process. + // The maximum number of instances that can be temporarily allocated above the group's target size during the update process. // +kubebuilder:validation:Optional MaxExpansion *float64 `json:"maxExpansion" tf:"max_expansion,omitempty"` - // The maximum number of running instances that can be taken offline (stopped or deleted) at the same time - // during the update process. + // The maximum number of running instances that can be taken offline (stopped or deleted) at the same time during the update process. // +kubebuilder:validation:Optional MaxUnavailable *float64 `json:"maxUnavailable" tf:"max_unavailable,omitempty"` - // The amount of time in seconds to allow for an instance to start. - // Instance will be considered up and running (and start receiving traffic) only after the startup_duration - // has elapsed and all health checks are passed. + // The amount of time in seconds to allow for an instance to start. Instance will be considered up and running (and start receiving traffic) only after the startup_duration has elapsed and all health checks are passed. // +kubebuilder:validation:Optional StartupDuration *float64 `json:"startupDuration,omitempty" tf:"startup_duration,omitempty"` - // Affects the lifecycle of the instance during deployment. If set to proactive (default), Instance Groups - // can forcefully stop a running instance. If opportunistic, Instance Groups does not stop a running instance. Instead, - // it will wait until the instance stops itself or becomes unhealthy. + // Affects the lifecycle of the instance during deployment. If set to proactive (default), Instance Groups can forcefully stop a running instance. If opportunistic, Instance Groups does not stop a running instance. Instead, it will wait until the instance stops itself or becomes unhealthy. // +kubebuilder:validation:Optional Strategy *string `json:"strategy,omitempty" tf:"strategy,omitempty"` } @@ -651,7 +616,7 @@ type InstanceGroupInitParameters struct { // +kubebuilder:validation:Optional ServiceAccountIDSelector *v1.Selector `json:"serviceAccountIdSelector,omitempty" tf:"-"` - // A set of key/value variables pairs to assign to the instance group. + // A set of key/value variables pairs to assign to the instance group. // +mapType=granular Variables map[string]*string `json:"variables,omitempty" tf:"variables,omitempty"` } @@ -712,7 +677,7 @@ type InstanceGroupObservation struct { // The status of the instance. Status *string `json:"status,omitempty" tf:"status,omitempty"` - // A set of key/value variables pairs to assign to the instance group. + // A set of key/value variables pairs to assign to the instance group. // +mapType=granular Variables map[string]*string `json:"variables,omitempty" tf:"variables,omitempty"` } @@ -794,7 +759,7 @@ type InstanceGroupParameters struct { // +kubebuilder:validation:Optional ServiceAccountIDSelector *v1.Selector `json:"serviceAccountIdSelector,omitempty" tf:"-"` - // A set of key/value variables pairs to assign to the instance group. + // A set of key/value variables pairs to assign to the instance group. // +kubebuilder:validation:Optional // +mapType=granular Variables map[string]*string `json:"variables,omitempty" tf:"variables,omitempty"` @@ -1035,7 +1000,7 @@ type InstanceTemplateMetadataOptionsParameters struct { type InstanceTemplateNetworkInterfaceInitParameters struct { - // List of dns records. The structure is documented below. + // List of dns records. The structure is documented below. DNSRecord []NetworkInterfaceDNSRecordInitParameters `json:"dnsRecord,omitempty" tf:"dns_record,omitempty"` // Manual set static IP address. @@ -1049,13 +1014,13 @@ type InstanceTemplateNetworkInterfaceInitParameters struct { // Manual set static IPv6 address. IPv6Address *string `json:"ipv6Address,omitempty" tf:"ipv6_address,omitempty"` - // List of ipv6 dns records. The structure is documented below. + // List of ipv6 dns records. The structure is documented below. IPv6DNSRecord []NetworkInterfaceIPv6DNSRecordInitParameters `json:"ipv6DnsRecord,omitempty" tf:"ipv6_dns_record,omitempty"` // Flag for using NAT. NAT *bool `json:"nat,omitempty" tf:"nat,omitempty"` - // List of nat dns records. The structure is documented below. + // List of nat dns records. The structure is documented below. NATDNSRecord []NetworkInterfaceNATDNSRecordInitParameters `json:"natDnsRecord,omitempty" tf:"nat_dns_record,omitempty"` // A public address that can be used to access the internet over NAT. Use variables to set. @@ -1102,7 +1067,7 @@ type InstanceTemplateNetworkInterfaceInitParameters struct { type InstanceTemplateNetworkInterfaceObservation struct { - // List of dns records. The structure is documented below. + // List of dns records. The structure is documented below. DNSRecord []NetworkInterfaceDNSRecordObservation `json:"dnsRecord,omitempty" tf:"dns_record,omitempty"` // Manual set static IP address. @@ -1116,13 +1081,13 @@ type InstanceTemplateNetworkInterfaceObservation struct { // Manual set static IPv6 address. IPv6Address *string `json:"ipv6Address,omitempty" tf:"ipv6_address,omitempty"` - // List of ipv6 dns records. The structure is documented below. + // List of ipv6 dns records. The structure is documented below. IPv6DNSRecord []NetworkInterfaceIPv6DNSRecordObservation `json:"ipv6DnsRecord,omitempty" tf:"ipv6_dns_record,omitempty"` // Flag for using NAT. NAT *bool `json:"nat,omitempty" tf:"nat,omitempty"` - // List of nat dns records. The structure is documented below. + // List of nat dns records. The structure is documented below. NATDNSRecord []NetworkInterfaceNATDNSRecordObservation `json:"natDnsRecord,omitempty" tf:"nat_dns_record,omitempty"` // A public address that can be used to access the internet over NAT. Use variables to set. @@ -1142,7 +1107,7 @@ type InstanceTemplateNetworkInterfaceObservation struct { type InstanceTemplateNetworkInterfaceParameters struct { - // List of dns records. The structure is documented below. + // List of dns records. The structure is documented below. // +kubebuilder:validation:Optional DNSRecord []NetworkInterfaceDNSRecordParameters `json:"dnsRecord,omitempty" tf:"dns_record,omitempty"` @@ -1161,7 +1126,7 @@ type InstanceTemplateNetworkInterfaceParameters struct { // +kubebuilder:validation:Optional IPv6Address *string `json:"ipv6Address,omitempty" tf:"ipv6_address,omitempty"` - // List of ipv6 dns records. The structure is documented below. + // List of ipv6 dns records. The structure is documented below. // +kubebuilder:validation:Optional IPv6DNSRecord []NetworkInterfaceIPv6DNSRecordParameters `json:"ipv6DnsRecord,omitempty" tf:"ipv6_dns_record,omitempty"` @@ -1169,7 +1134,7 @@ type InstanceTemplateNetworkInterfaceParameters struct { // +kubebuilder:validation:Optional NAT *bool `json:"nat,omitempty" tf:"nat,omitempty"` - // List of nat dns records. The structure is documented below. + // List of nat dns records. The structure is documented below. // +kubebuilder:validation:Optional NATDNSRecord []NetworkInterfaceNATDNSRecordParameters `json:"natDnsRecord,omitempty" tf:"nat_dns_record,omitempty"` @@ -1958,11 +1923,7 @@ type TestAutoScaleCustomRuleInitParameters struct { // Metric type, GAUGE or COUNTER. MetricType *string `json:"metricType,omitempty" tf:"metric_type,omitempty"` - // Rule type: UTILIZATION - This type means that the metric applies to one instance. - // First, Instance Groups calculates the average metric value for each instance, - // then averages the values for instances in one availability zone. - // This type of metric must have the instance_id label. WORKLOAD - This type means that the metric applies to instances in one availability zone. - // This type of metric must have the zone_id label. + // Rule type: UTILIZATION - This type means that the metric applies to one instance. First, Instance Groups calculates the average metric value for each instance, then averages the values for instances in one availability zone. This type of metric must have the instance_id label. WORKLOAD - This type means that the metric applies to instances in one availability zone. This type of metric must have the zone_id label. RuleType *string `json:"ruleType,omitempty" tf:"rule_type,omitempty"` // Service of custom metric in Yandex Monitoring that should be used for scaling. @@ -1987,11 +1948,7 @@ type TestAutoScaleCustomRuleObservation struct { // Metric type, GAUGE or COUNTER. MetricType *string `json:"metricType,omitempty" tf:"metric_type,omitempty"` - // Rule type: UTILIZATION - This type means that the metric applies to one instance. - // First, Instance Groups calculates the average metric value for each instance, - // then averages the values for instances in one availability zone. - // This type of metric must have the instance_id label. WORKLOAD - This type means that the metric applies to instances in one availability zone. - // This type of metric must have the zone_id label. + // Rule type: UTILIZATION - This type means that the metric applies to one instance. First, Instance Groups calculates the average metric value for each instance, then averages the values for instances in one availability zone. This type of metric must have the instance_id label. WORKLOAD - This type means that the metric applies to instances in one availability zone. This type of metric must have the zone_id label. RuleType *string `json:"ruleType,omitempty" tf:"rule_type,omitempty"` // Service of custom metric in Yandex Monitoring that should be used for scaling. @@ -2020,11 +1977,7 @@ type TestAutoScaleCustomRuleParameters struct { // +kubebuilder:validation:Optional MetricType *string `json:"metricType" tf:"metric_type,omitempty"` - // Rule type: UTILIZATION - This type means that the metric applies to one instance. - // First, Instance Groups calculates the average metric value for each instance, - // then averages the values for instances in one availability zone. - // This type of metric must have the instance_id label. WORKLOAD - This type means that the metric applies to instances in one availability zone. - // This type of metric must have the zone_id label. + // Rule type: UTILIZATION - This type means that the metric applies to one instance. First, Instance Groups calculates the average metric value for each instance, then averages the values for instances in one availability zone. This type of metric must have the instance_id label. WORKLOAD - This type means that the metric applies to instances in one availability zone. This type of metric must have the zone_id label. // +kubebuilder:validation:Optional RuleType *string `json:"ruleType" tf:"rule_type,omitempty"` @@ -2039,6 +1992,9 @@ type TestAutoScaleCustomRuleParameters struct { type TestAutoScaleInitParameters struct { + // . Autoscale type, can be ZONAL or REGIONAL. By default ZONAL type is used. + AutoScaleType *string `json:"autoScaleType,omitempty" tf:"auto_scale_type,omitempty"` + // Target CPU load level. CPUUtilizationTarget *float64 `json:"cpuUtilizationTarget,omitempty" tf:"cpu_utilization_target,omitempty"` @@ -2051,26 +2007,24 @@ type TestAutoScaleInitParameters struct { // The maximum number of virtual machines in the group. MaxSize *float64 `json:"maxSize,omitempty" tf:"max_size,omitempty"` - // The amount of time, in seconds, that metrics are averaged for. - // If the average value at the end of the interval is higher than the cpu_utilization_target, - // the instance group will increase the number of virtual machines in the group. + // The amount of time, in seconds, that metrics are averaged for. If the average value at the end of the interval is higher than the cpu_utilization_target, the instance group will increase the number of virtual machines in the group. MeasurementDuration *float64 `json:"measurementDuration,omitempty" tf:"measurement_duration,omitempty"` // The minimum number of virtual machines in a single availability zone. MinZoneSize *float64 `json:"minZoneSize,omitempty" tf:"min_zone_size,omitempty"` - // The minimum time interval, in seconds, to monitor the load before - // an instance group can reduce the number of virtual machines in the group. During this time, the group - // will not decrease even if the average load falls below the value of cpu_utilization_target. + // The minimum time interval, in seconds, to monitor the load before an instance group can reduce the number of virtual machines in the group. During this time, the group will not decrease even if the average load falls below the value of cpu_utilization_target. StabilizationDuration *float64 `json:"stabilizationDuration,omitempty" tf:"stabilization_duration,omitempty"` - // The warm-up time of the virtual machine, in seconds. During this time, - // traffic is fed to the virtual machine, but load metrics are not taken into account. + // The warm-up time of the virtual machine, in seconds. During this time, traffic is fed to the virtual machine, but load metrics are not taken into account. WarmupDuration *float64 `json:"warmupDuration,omitempty" tf:"warmup_duration,omitempty"` } type TestAutoScaleObservation struct { + // . Autoscale type, can be ZONAL or REGIONAL. By default ZONAL type is used. + AutoScaleType *string `json:"autoScaleType,omitempty" tf:"auto_scale_type,omitempty"` + // Target CPU load level. CPUUtilizationTarget *float64 `json:"cpuUtilizationTarget,omitempty" tf:"cpu_utilization_target,omitempty"` @@ -2083,26 +2037,25 @@ type TestAutoScaleObservation struct { // The maximum number of virtual machines in the group. MaxSize *float64 `json:"maxSize,omitempty" tf:"max_size,omitempty"` - // The amount of time, in seconds, that metrics are averaged for. - // If the average value at the end of the interval is higher than the cpu_utilization_target, - // the instance group will increase the number of virtual machines in the group. + // The amount of time, in seconds, that metrics are averaged for. If the average value at the end of the interval is higher than the cpu_utilization_target, the instance group will increase the number of virtual machines in the group. MeasurementDuration *float64 `json:"measurementDuration,omitempty" tf:"measurement_duration,omitempty"` // The minimum number of virtual machines in a single availability zone. MinZoneSize *float64 `json:"minZoneSize,omitempty" tf:"min_zone_size,omitempty"` - // The minimum time interval, in seconds, to monitor the load before - // an instance group can reduce the number of virtual machines in the group. During this time, the group - // will not decrease even if the average load falls below the value of cpu_utilization_target. + // The minimum time interval, in seconds, to monitor the load before an instance group can reduce the number of virtual machines in the group. During this time, the group will not decrease even if the average load falls below the value of cpu_utilization_target. StabilizationDuration *float64 `json:"stabilizationDuration,omitempty" tf:"stabilization_duration,omitempty"` - // The warm-up time of the virtual machine, in seconds. During this time, - // traffic is fed to the virtual machine, but load metrics are not taken into account. + // The warm-up time of the virtual machine, in seconds. During this time, traffic is fed to the virtual machine, but load metrics are not taken into account. WarmupDuration *float64 `json:"warmupDuration,omitempty" tf:"warmup_duration,omitempty"` } type TestAutoScaleParameters struct { + // . Autoscale type, can be ZONAL or REGIONAL. By default ZONAL type is used. + // +kubebuilder:validation:Optional + AutoScaleType *string `json:"autoScaleType,omitempty" tf:"auto_scale_type,omitempty"` + // Target CPU load level. // +kubebuilder:validation:Optional CPUUtilizationTarget *float64 `json:"cpuUtilizationTarget,omitempty" tf:"cpu_utilization_target,omitempty"` @@ -2119,9 +2072,7 @@ type TestAutoScaleParameters struct { // +kubebuilder:validation:Optional MaxSize *float64 `json:"maxSize,omitempty" tf:"max_size,omitempty"` - // The amount of time, in seconds, that metrics are averaged for. - // If the average value at the end of the interval is higher than the cpu_utilization_target, - // the instance group will increase the number of virtual machines in the group. + // The amount of time, in seconds, that metrics are averaged for. If the average value at the end of the interval is higher than the cpu_utilization_target, the instance group will increase the number of virtual machines in the group. // +kubebuilder:validation:Optional MeasurementDuration *float64 `json:"measurementDuration" tf:"measurement_duration,omitempty"` @@ -2129,14 +2080,11 @@ type TestAutoScaleParameters struct { // +kubebuilder:validation:Optional MinZoneSize *float64 `json:"minZoneSize,omitempty" tf:"min_zone_size,omitempty"` - // The minimum time interval, in seconds, to monitor the load before - // an instance group can reduce the number of virtual machines in the group. During this time, the group - // will not decrease even if the average load falls below the value of cpu_utilization_target. + // The minimum time interval, in seconds, to monitor the load before an instance group can reduce the number of virtual machines in the group. During this time, the group will not decrease even if the average load falls below the value of cpu_utilization_target. // +kubebuilder:validation:Optional StabilizationDuration *float64 `json:"stabilizationDuration,omitempty" tf:"stabilization_duration,omitempty"` - // The warm-up time of the virtual machine, in seconds. During this time, - // traffic is fed to the virtual machine, but load metrics are not taken into account. + // The warm-up time of the virtual machine, in seconds. During this time, traffic is fed to the virtual machine, but load metrics are not taken into account. // +kubebuilder:validation:Optional WarmupDuration *float64 `json:"warmupDuration,omitempty" tf:"warmup_duration,omitempty"` } diff --git a/apis/compute/v1alpha1/zz_instanceiambinding_types.go b/apis/compute/v1alpha1/zz_instanceiambinding_types.go index d915c30..6fb659b 100755 --- a/apis/compute/v1alpha1/zz_instanceiambinding_types.go +++ b/apis/compute/v1alpha1/zz_instanceiambinding_types.go @@ -14,13 +14,11 @@ type InstanceIAMBindingInitParameters struct { // ID of the instance to attach the policy to. InstanceID *string `json:"instanceId,omitempty" tf:"instance_id,omitempty"` - // An array of identities that will be granted the privilege in the role. - // Each entry can have one of the following values: + // An array of identities that will be granted the privilege in the role. Each entry can have one of the following values: // +listType=set Members []*string `json:"members,omitempty" tf:"members,omitempty"` - // The role that should be assigned. Only one - // yandex_compute_instance_iam_binding can be used per role. + // The role that should be assigned. Only one yandex_compute_instance_iam_binding can be used per role. Role *string `json:"role,omitempty" tf:"role,omitempty"` } @@ -30,13 +28,11 @@ type InstanceIAMBindingObservation struct { // ID of the instance to attach the policy to. InstanceID *string `json:"instanceId,omitempty" tf:"instance_id,omitempty"` - // An array of identities that will be granted the privilege in the role. - // Each entry can have one of the following values: + // An array of identities that will be granted the privilege in the role. Each entry can have one of the following values: // +listType=set Members []*string `json:"members,omitempty" tf:"members,omitempty"` - // The role that should be assigned. Only one - // yandex_compute_instance_iam_binding can be used per role. + // The role that should be assigned. Only one yandex_compute_instance_iam_binding can be used per role. Role *string `json:"role,omitempty" tf:"role,omitempty"` } @@ -46,14 +42,12 @@ type InstanceIAMBindingParameters struct { // +kubebuilder:validation:Optional InstanceID *string `json:"instanceId,omitempty" tf:"instance_id,omitempty"` - // An array of identities that will be granted the privilege in the role. - // Each entry can have one of the following values: + // An array of identities that will be granted the privilege in the role. Each entry can have one of the following values: // +kubebuilder:validation:Optional // +listType=set Members []*string `json:"members,omitempty" tf:"members,omitempty"` - // The role that should be assigned. Only one - // yandex_compute_instance_iam_binding can be used per role. + // The role that should be assigned. Only one yandex_compute_instance_iam_binding can be used per role. // +kubebuilder:validation:Optional Role *string `json:"role,omitempty" tf:"role,omitempty"` } diff --git a/apis/compute/v1alpha1/zz_placementgroupiambinding_types.go b/apis/compute/v1alpha1/zz_placementgroupiambinding_types.go index 97a0edb..9e90c79 100755 --- a/apis/compute/v1alpha1/zz_placementgroupiambinding_types.go +++ b/apis/compute/v1alpha1/zz_placementgroupiambinding_types.go @@ -11,39 +11,34 @@ import ( type PlacementGroupIAMBindingInitParameters struct { - // An array of identities that will be granted the privilege in the role. - // Each entry can have one of the following values: + // An array of identities that will be granted the privilege in the role. Each entry can have one of the following values: // +listType=set Members []*string `json:"members,omitempty" tf:"members,omitempty"` // ID of the placement group to attach the policy to. PlacementGroupID *string `json:"placementGroupId,omitempty" tf:"placement_group_id,omitempty"` - // The role that should be assigned. Only one - // yandex_compute_placement_group_iam_binding can be used per role. + // The role that should be assigned. Only one yandex_compute_placement_group_iam_binding can be used per role. Role *string `json:"role,omitempty" tf:"role,omitempty"` } type PlacementGroupIAMBindingObservation struct { ID *string `json:"id,omitempty" tf:"id,omitempty"` - // An array of identities that will be granted the privilege in the role. - // Each entry can have one of the following values: + // An array of identities that will be granted the privilege in the role. Each entry can have one of the following values: // +listType=set Members []*string `json:"members,omitempty" tf:"members,omitempty"` // ID of the placement group to attach the policy to. PlacementGroupID *string `json:"placementGroupId,omitempty" tf:"placement_group_id,omitempty"` - // The role that should be assigned. Only one - // yandex_compute_placement_group_iam_binding can be used per role. + // The role that should be assigned. Only one yandex_compute_placement_group_iam_binding can be used per role. Role *string `json:"role,omitempty" tf:"role,omitempty"` } type PlacementGroupIAMBindingParameters struct { - // An array of identities that will be granted the privilege in the role. - // Each entry can have one of the following values: + // An array of identities that will be granted the privilege in the role. Each entry can have one of the following values: // +kubebuilder:validation:Optional // +listType=set Members []*string `json:"members,omitempty" tf:"members,omitempty"` @@ -52,8 +47,7 @@ type PlacementGroupIAMBindingParameters struct { // +kubebuilder:validation:Optional PlacementGroupID *string `json:"placementGroupId,omitempty" tf:"placement_group_id,omitempty"` - // The role that should be assigned. Only one - // yandex_compute_placement_group_iam_binding can be used per role. + // The role that should be assigned. Only one yandex_compute_placement_group_iam_binding can be used per role. // +kubebuilder:validation:Optional Role *string `json:"role,omitempty" tf:"role,omitempty"` } diff --git a/apis/compute/v1alpha1/zz_snapshot_types.go b/apis/compute/v1alpha1/zz_snapshot_types.go index 8edc46e..e5cd568 100755 --- a/apis/compute/v1alpha1/zz_snapshot_types.go +++ b/apis/compute/v1alpha1/zz_snapshot_types.go @@ -9,13 +9,69 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type SnapshotHardwareGenerationGeneration2FeaturesInitParameters struct { +} + +type SnapshotHardwareGenerationGeneration2FeaturesObservation struct { +} + +type SnapshotHardwareGenerationGeneration2FeaturesParameters struct { +} + +type SnapshotHardwareGenerationInitParameters struct { + + // A newer hardware generation, which always uses PCI_TOPOLOGY_V2 and UEFI boot. + Generation2Features []SnapshotHardwareGenerationGeneration2FeaturesInitParameters `json:"generation2Features,omitempty" tf:"generation2_features,omitempty"` + + // Defines the first known hardware generation and its features, which are: + LegacyFeatures []SnapshotHardwareGenerationLegacyFeaturesInitParameters `json:"legacyFeatures,omitempty" tf:"legacy_features,omitempty"` +} + +type SnapshotHardwareGenerationLegacyFeaturesInitParameters struct { + + // A variant of PCI topology, one of PCI_TOPOLOGY_V1 or PCI_TOPOLOGY_V2. + PciTopology *string `json:"pciTopology,omitempty" tf:"pci_topology,omitempty"` +} + +type SnapshotHardwareGenerationLegacyFeaturesObservation struct { + + // A variant of PCI topology, one of PCI_TOPOLOGY_V1 or PCI_TOPOLOGY_V2. + PciTopology *string `json:"pciTopology,omitempty" tf:"pci_topology,omitempty"` +} + +type SnapshotHardwareGenerationLegacyFeaturesParameters struct { + + // A variant of PCI topology, one of PCI_TOPOLOGY_V1 or PCI_TOPOLOGY_V2. + // +kubebuilder:validation:Optional + PciTopology *string `json:"pciTopology,omitempty" tf:"pci_topology,omitempty"` +} + +type SnapshotHardwareGenerationObservation struct { + + // A newer hardware generation, which always uses PCI_TOPOLOGY_V2 and UEFI boot. + Generation2Features []SnapshotHardwareGenerationGeneration2FeaturesParameters `json:"generation2Features,omitempty" tf:"generation2_features,omitempty"` + + // Defines the first known hardware generation and its features, which are: + LegacyFeatures []SnapshotHardwareGenerationLegacyFeaturesObservation `json:"legacyFeatures,omitempty" tf:"legacy_features,omitempty"` +} + +type SnapshotHardwareGenerationParameters struct { + + // A newer hardware generation, which always uses PCI_TOPOLOGY_V2 and UEFI boot. + // +kubebuilder:validation:Optional + Generation2Features []SnapshotHardwareGenerationGeneration2FeaturesParameters `json:"generation2Features,omitempty" tf:"generation2_features,omitempty"` + + // Defines the first known hardware generation and its features, which are: + // +kubebuilder:validation:Optional + LegacyFeatures []SnapshotHardwareGenerationLegacyFeaturesParameters `json:"legacyFeatures,omitempty" tf:"legacy_features,omitempty"` +} + type SnapshotInitParameters struct { // Description of the resource. Description *string `json:"description,omitempty" tf:"description,omitempty"` - // The ID of the folder that the resource belongs to. If it - // is not provided, the default provider folder is used. + // The ID of the folder that the resource belongs to. If it is not provided, the default provider folder is used. // +crossplane:generate:reference:type=github.com/tagesjump/provider-upjet-yc/apis/resourcemanager/v1alpha1.Folder FolderID *string `json:"folderId,omitempty" tf:"folder_id,omitempty"` @@ -27,6 +83,12 @@ type SnapshotInitParameters struct { // +kubebuilder:validation:Optional FolderIDSelector *v1.Selector `json:"folderIdSelector,omitempty" tf:"-"` + // Hardware generation and its features, + // which will be applied to the instance when this snapshot is used as a boot + // disk source. Provide this property if you wish to override this value, which + // otherwise is inherited from the source. The structure is documented below. + HardwareGeneration []SnapshotHardwareGenerationInitParameters `json:"hardwareGeneration,omitempty" tf:"hardware_generation,omitempty"` + // A set of key/value label pairs to assign to the snapshot. // +mapType=granular Labels map[string]*string `json:"labels,omitempty" tf:"labels,omitempty"` @@ -58,10 +120,15 @@ type SnapshotObservation struct { // Size of the disk when the snapshot was created, specified in GB. DiskSize *float64 `json:"diskSize,omitempty" tf:"disk_size,omitempty"` - // The ID of the folder that the resource belongs to. If it - // is not provided, the default provider folder is used. + // The ID of the folder that the resource belongs to. If it is not provided, the default provider folder is used. FolderID *string `json:"folderId,omitempty" tf:"folder_id,omitempty"` + // Hardware generation and its features, + // which will be applied to the instance when this snapshot is used as a boot + // disk source. Provide this property if you wish to override this value, which + // otherwise is inherited from the source. The structure is documented below. + HardwareGeneration []SnapshotHardwareGenerationObservation `json:"hardwareGeneration,omitempty" tf:"hardware_generation,omitempty"` + ID *string `json:"id,omitempty" tf:"id,omitempty"` // A set of key/value label pairs to assign to the snapshot. @@ -84,8 +151,7 @@ type SnapshotParameters struct { // +kubebuilder:validation:Optional Description *string `json:"description,omitempty" tf:"description,omitempty"` - // The ID of the folder that the resource belongs to. If it - // is not provided, the default provider folder is used. + // The ID of the folder that the resource belongs to. If it is not provided, the default provider folder is used. // +crossplane:generate:reference:type=github.com/tagesjump/provider-upjet-yc/apis/resourcemanager/v1alpha1.Folder // +kubebuilder:validation:Optional FolderID *string `json:"folderId,omitempty" tf:"folder_id,omitempty"` @@ -98,6 +164,13 @@ type SnapshotParameters struct { // +kubebuilder:validation:Optional FolderIDSelector *v1.Selector `json:"folderIdSelector,omitempty" tf:"-"` + // Hardware generation and its features, + // which will be applied to the instance when this snapshot is used as a boot + // disk source. Provide this property if you wish to override this value, which + // otherwise is inherited from the source. The structure is documented below. + // +kubebuilder:validation:Optional + HardwareGeneration []SnapshotHardwareGenerationParameters `json:"hardwareGeneration,omitempty" tf:"hardware_generation,omitempty"` + // A set of key/value label pairs to assign to the snapshot. // +kubebuilder:validation:Optional // +mapType=granular diff --git a/apis/compute/v1alpha1/zz_snapshotiambinding_types.go b/apis/compute/v1alpha1/zz_snapshotiambinding_types.go index e16c933..18afb05 100755 --- a/apis/compute/v1alpha1/zz_snapshotiambinding_types.go +++ b/apis/compute/v1alpha1/zz_snapshotiambinding_types.go @@ -11,13 +11,11 @@ import ( type SnapshotIAMBindingInitParameters struct { - // An array of identities that will be granted the privilege in the role. - // Each entry can have one of the following values: + // An array of identities that will be granted the privilege in the role. Each entry can have one of the following values: // +listType=set Members []*string `json:"members,omitempty" tf:"members,omitempty"` - // The role that should be assigned. Only one - // yandex_compute_snapshot_iam_binding can be used per role. + // The role that should be assigned. Only one yandex_compute_snapshot_iam_binding can be used per role. Role *string `json:"role,omitempty" tf:"role,omitempty"` // ID of the snapshot to attach the policy to. @@ -27,13 +25,11 @@ type SnapshotIAMBindingInitParameters struct { type SnapshotIAMBindingObservation struct { ID *string `json:"id,omitempty" tf:"id,omitempty"` - // An array of identities that will be granted the privilege in the role. - // Each entry can have one of the following values: + // An array of identities that will be granted the privilege in the role. Each entry can have one of the following values: // +listType=set Members []*string `json:"members,omitempty" tf:"members,omitempty"` - // The role that should be assigned. Only one - // yandex_compute_snapshot_iam_binding can be used per role. + // The role that should be assigned. Only one yandex_compute_snapshot_iam_binding can be used per role. Role *string `json:"role,omitempty" tf:"role,omitempty"` // ID of the snapshot to attach the policy to. @@ -42,14 +38,12 @@ type SnapshotIAMBindingObservation struct { type SnapshotIAMBindingParameters struct { - // An array of identities that will be granted the privilege in the role. - // Each entry can have one of the following values: + // An array of identities that will be granted the privilege in the role. Each entry can have one of the following values: // +kubebuilder:validation:Optional // +listType=set Members []*string `json:"members,omitempty" tf:"members,omitempty"` - // The role that should be assigned. Only one - // yandex_compute_snapshot_iam_binding can be used per role. + // The role that should be assigned. Only one yandex_compute_snapshot_iam_binding can be used per role. // +kubebuilder:validation:Optional Role *string `json:"role,omitempty" tf:"role,omitempty"` diff --git a/apis/compute/v1alpha1/zz_snapshotschedule_types.go b/apis/compute/v1alpha1/zz_snapshotschedule_types.go index d741365..bea64e0 100755 --- a/apis/compute/v1alpha1/zz_snapshotschedule_types.go +++ b/apis/compute/v1alpha1/zz_snapshotschedule_types.go @@ -56,8 +56,7 @@ type SnapshotScheduleInitParameters struct { // +kubebuilder:validation:Optional DiskIdsSelector *v1.Selector `json:"diskIdsSelector,omitempty" tf:"-"` - // The ID of the folder that the resource belongs to. If it - // is not provided, the default provider folder is used. + // The ID of the folder that the resource belongs to. If it is not provided, the default provider folder is used. // +crossplane:generate:reference:type=github.com/tagesjump/provider-upjet-yc/apis/resourcemanager/v1alpha1.Folder FolderID *string `json:"folderId,omitempty" tf:"folder_id,omitempty"` @@ -101,8 +100,7 @@ type SnapshotScheduleObservation struct { // +listType=set DiskIds []*string `json:"diskIds,omitempty" tf:"disk_ids,omitempty"` - // The ID of the folder that the resource belongs to. If it - // is not provided, the default provider folder is used. + // The ID of the folder that the resource belongs to. If it is not provided, the default provider folder is used. FolderID *string `json:"folderId,omitempty" tf:"folder_id,omitempty"` ID *string `json:"id,omitempty" tf:"id,omitempty"` @@ -150,8 +148,7 @@ type SnapshotScheduleParameters struct { // +kubebuilder:validation:Optional DiskIdsSelector *v1.Selector `json:"diskIdsSelector,omitempty" tf:"-"` - // The ID of the folder that the resource belongs to. If it - // is not provided, the default provider folder is used. + // The ID of the folder that the resource belongs to. If it is not provided, the default provider folder is used. // +crossplane:generate:reference:type=github.com/tagesjump/provider-upjet-yc/apis/resourcemanager/v1alpha1.Folder // +kubebuilder:validation:Optional FolderID *string `json:"folderId,omitempty" tf:"folder_id,omitempty"` diff --git a/apis/compute/v1alpha1/zz_snapshotscheduleiambinding_types.go b/apis/compute/v1alpha1/zz_snapshotscheduleiambinding_types.go index a089a8d..354de9e 100755 --- a/apis/compute/v1alpha1/zz_snapshotscheduleiambinding_types.go +++ b/apis/compute/v1alpha1/zz_snapshotscheduleiambinding_types.go @@ -11,13 +11,11 @@ import ( type SnapshotScheduleIAMBindingInitParameters struct { - // An array of identities that will be granted the privilege in the role. - // Each entry can have one of the following values: + // An array of identities that will be granted the privilege in the role. Each entry can have one of the following values: // +listType=set Members []*string `json:"members,omitempty" tf:"members,omitempty"` - // The role that should be assigned. Only one - // yandex_compute_snapshot_schedule_iam_binding can be used per role. + // The role that should be assigned. Only one yandex_compute_snapshot_schedule_iam_binding can be used per role. Role *string `json:"role,omitempty" tf:"role,omitempty"` // ID of the snapshot schedule to attach the policy to. @@ -27,13 +25,11 @@ type SnapshotScheduleIAMBindingInitParameters struct { type SnapshotScheduleIAMBindingObservation struct { ID *string `json:"id,omitempty" tf:"id,omitempty"` - // An array of identities that will be granted the privilege in the role. - // Each entry can have one of the following values: + // An array of identities that will be granted the privilege in the role. Each entry can have one of the following values: // +listType=set Members []*string `json:"members,omitempty" tf:"members,omitempty"` - // The role that should be assigned. Only one - // yandex_compute_snapshot_schedule_iam_binding can be used per role. + // The role that should be assigned. Only one yandex_compute_snapshot_schedule_iam_binding can be used per role. Role *string `json:"role,omitempty" tf:"role,omitempty"` // ID of the snapshot schedule to attach the policy to. @@ -42,14 +38,12 @@ type SnapshotScheduleIAMBindingObservation struct { type SnapshotScheduleIAMBindingParameters struct { - // An array of identities that will be granted the privilege in the role. - // Each entry can have one of the following values: + // An array of identities that will be granted the privilege in the role. Each entry can have one of the following values: // +kubebuilder:validation:Optional // +listType=set Members []*string `json:"members,omitempty" tf:"members,omitempty"` - // The role that should be assigned. Only one - // yandex_compute_snapshot_schedule_iam_binding can be used per role. + // The role that should be assigned. Only one yandex_compute_snapshot_schedule_iam_binding can be used per role. // +kubebuilder:validation:Optional Role *string `json:"role,omitempty" tf:"role,omitempty"` diff --git a/apis/container/v1alpha1/zz_registryiambinding_types.go b/apis/container/v1alpha1/zz_registryiambinding_types.go index e9ec50d..e7ec391 100755 --- a/apis/container/v1alpha1/zz_registryiambinding_types.go +++ b/apis/container/v1alpha1/zz_registryiambinding_types.go @@ -11,8 +11,7 @@ import ( type RegistryIAMBindingInitParameters struct { - // Identities that will be granted the privilege in role. - // Each entry can have one of the following values: + // Identities that will be granted the privilege in role. Each entry can have one of the following values: // +crossplane:generate:reference:type=github.com/tagesjump/provider-upjet-yc/apis/iam/v1alpha1.ServiceAccount // +crossplane:generate:reference:extractor=github.com/tagesjump/provider-upjet-yc/config/iam.ServiceAccountRefValue() // +crossplane:generate:reference:refFieldName=ServiceAccountRef @@ -49,8 +48,7 @@ type RegistryIAMBindingInitParameters struct { type RegistryIAMBindingObservation struct { ID *string `json:"id,omitempty" tf:"id,omitempty"` - // Identities that will be granted the privilege in role. - // Each entry can have one of the following values: + // Identities that will be granted the privilege in role. Each entry can have one of the following values: // +listType=set Members []*string `json:"members,omitempty" tf:"members,omitempty"` @@ -65,8 +63,7 @@ type RegistryIAMBindingObservation struct { type RegistryIAMBindingParameters struct { - // Identities that will be granted the privilege in role. - // Each entry can have one of the following values: + // Identities that will be granted the privilege in role. Each entry can have one of the following values: // +crossplane:generate:reference:type=github.com/tagesjump/provider-upjet-yc/apis/iam/v1alpha1.ServiceAccount // +crossplane:generate:reference:extractor=github.com/tagesjump/provider-upjet-yc/config/iam.ServiceAccountRefValue() // +crossplane:generate:reference:refFieldName=ServiceAccountRef diff --git a/apis/container/v1alpha1/zz_repository_types.go b/apis/container/v1alpha1/zz_repository_types.go index a76c685..b34ec15 100755 --- a/apis/container/v1alpha1/zz_repository_types.go +++ b/apis/container/v1alpha1/zz_repository_types.go @@ -11,20 +11,22 @@ import ( type RepositoryInitParameters struct { - // A name of the repository. The name of the repository should start with id of a container registry and match the name of the images that will be pushed in the repository. + // (String) Name *string `json:"name,omitempty" tf:"name,omitempty"` } type RepositoryObservation struct { + + // (String) The ID of this resource. ID *string `json:"id,omitempty" tf:"id,omitempty"` - // A name of the repository. The name of the repository should start with id of a container registry and match the name of the images that will be pushed in the repository. + // (String) Name *string `json:"name,omitempty" tf:"name,omitempty"` } type RepositoryParameters struct { - // A name of the repository. The name of the repository should start with id of a container registry and match the name of the images that will be pushed in the repository. + // (String) // +kubebuilder:validation:Optional Name *string `json:"name,omitempty" tf:"name,omitempty"` } @@ -56,7 +58,7 @@ type RepositoryStatus struct { // +kubebuilder:subresource:status // +kubebuilder:storageversion -// Repository is the Schema for the Repositorys API. Creates a new container repository. +// Repository is the Schema for the Repositorys API. // +kubebuilder:printcolumn:name="SYNCED",type="string",JSONPath=".status.conditions[?(@.type=='Synced')].status" // +kubebuilder:printcolumn:name="READY",type="string",JSONPath=".status.conditions[?(@.type=='Ready')].status" // +kubebuilder:printcolumn:name="EXTERNAL-NAME",type="string",JSONPath=".metadata.annotations.crossplane\\.io/external-name" diff --git a/apis/container/v1alpha1/zz_repositoryiambinding_types.go b/apis/container/v1alpha1/zz_repositoryiambinding_types.go index d92c052..ced5566 100755 --- a/apis/container/v1alpha1/zz_repositoryiambinding_types.go +++ b/apis/container/v1alpha1/zz_repositoryiambinding_types.go @@ -11,8 +11,7 @@ import ( type RepositoryIAMBindingInitParameters struct { - // Identities that will be granted the privilege in role. - // Each entry can have one of the following values: + // (Set of String) // +crossplane:generate:reference:type=github.com/tagesjump/provider-upjet-yc/apis/iam/v1alpha1.ServiceAccount // +crossplane:generate:reference:extractor=github.com/tagesjump/provider-upjet-yc/config/iam.ServiceAccountRefValue() // +crossplane:generate:reference:refFieldName=ServiceAccountRef @@ -20,7 +19,7 @@ type RepositoryIAMBindingInitParameters struct { // +listType=set Members []*string `json:"members,omitempty" tf:"members,omitempty"` - // The Yandex Container Repository ID to apply a binding to. + // (String) // +crossplane:generate:reference:type=Repository RepositoryID *string `json:"repositoryId,omitempty" tf:"repository_id,omitempty"` @@ -32,7 +31,7 @@ type RepositoryIAMBindingInitParameters struct { // +kubebuilder:validation:Optional RepositoryIDSelector *v1.Selector `json:"repositoryIdSelector,omitempty" tf:"-"` - // The role that should be applied. See roles. + // (String) Role *string `json:"role,omitempty" tf:"role,omitempty"` // References to ServiceAccount in iam to populate members. @@ -43,30 +42,32 @@ type RepositoryIAMBindingInitParameters struct { // +kubebuilder:validation:Optional ServiceAccountSelector *v1.Selector `json:"serviceAccountSelector,omitempty" tf:"-"` + // (Number) SleepAfter *float64 `json:"sleepAfter,omitempty" tf:"sleep_after,omitempty"` } type RepositoryIAMBindingObservation struct { + + // (String) The ID of this resource. ID *string `json:"id,omitempty" tf:"id,omitempty"` - // Identities that will be granted the privilege in role. - // Each entry can have one of the following values: + // (Set of String) // +listType=set Members []*string `json:"members,omitempty" tf:"members,omitempty"` - // The Yandex Container Repository ID to apply a binding to. + // (String) RepositoryID *string `json:"repositoryId,omitempty" tf:"repository_id,omitempty"` - // The role that should be applied. See roles. + // (String) Role *string `json:"role,omitempty" tf:"role,omitempty"` + // (Number) SleepAfter *float64 `json:"sleepAfter,omitempty" tf:"sleep_after,omitempty"` } type RepositoryIAMBindingParameters struct { - // Identities that will be granted the privilege in role. - // Each entry can have one of the following values: + // (Set of String) // +crossplane:generate:reference:type=github.com/tagesjump/provider-upjet-yc/apis/iam/v1alpha1.ServiceAccount // +crossplane:generate:reference:extractor=github.com/tagesjump/provider-upjet-yc/config/iam.ServiceAccountRefValue() // +crossplane:generate:reference:refFieldName=ServiceAccountRef @@ -75,7 +76,7 @@ type RepositoryIAMBindingParameters struct { // +listType=set Members []*string `json:"members,omitempty" tf:"members,omitempty"` - // The Yandex Container Repository ID to apply a binding to. + // (String) // +crossplane:generate:reference:type=Repository // +kubebuilder:validation:Optional RepositoryID *string `json:"repositoryId,omitempty" tf:"repository_id,omitempty"` @@ -88,7 +89,7 @@ type RepositoryIAMBindingParameters struct { // +kubebuilder:validation:Optional RepositoryIDSelector *v1.Selector `json:"repositoryIdSelector,omitempty" tf:"-"` - // The role that should be applied. See roles. + // (String) // +kubebuilder:validation:Optional Role *string `json:"role,omitempty" tf:"role,omitempty"` @@ -100,6 +101,7 @@ type RepositoryIAMBindingParameters struct { // +kubebuilder:validation:Optional ServiceAccountSelector *v1.Selector `json:"serviceAccountSelector,omitempty" tf:"-"` + // (Number) // +kubebuilder:validation:Optional SleepAfter *float64 `json:"sleepAfter,omitempty" tf:"sleep_after,omitempty"` } @@ -131,7 +133,7 @@ type RepositoryIAMBindingStatus struct { // +kubebuilder:subresource:status // +kubebuilder:storageversion -// RepositoryIAMBinding is the Schema for the RepositoryIAMBindings API. Allows management of a single IAM binding for a +// RepositoryIAMBinding is the Schema for the RepositoryIAMBindings API. // +kubebuilder:printcolumn:name="SYNCED",type="string",JSONPath=".status.conditions[?(@.type=='Synced')].status" // +kubebuilder:printcolumn:name="READY",type="string",JSONPath=".status.conditions[?(@.type=='Ready')].status" // +kubebuilder:printcolumn:name="EXTERNAL-NAME",type="string",JSONPath=".metadata.annotations.crossplane\\.io/external-name" diff --git a/apis/container/v1alpha1/zz_repositorylifecyclepolicy_types.go b/apis/container/v1alpha1/zz_repositorylifecyclepolicy_types.go index 6888f3e..3562db9 100755 --- a/apis/container/v1alpha1/zz_repositorylifecyclepolicy_types.go +++ b/apis/container/v1alpha1/zz_repositorylifecyclepolicy_types.go @@ -11,13 +11,13 @@ import ( type RepositoryLifecyclePolicyInitParameters struct { - // Description of the lifecycle policy. + // (String) Description *string `json:"description,omitempty" tf:"description,omitempty"` - // Lifecycle policy name. + // (String) Name *string `json:"name,omitempty" tf:"name,omitempty"` - // The ID of the repository that the resource belongs to. + // (String) // +crossplane:generate:reference:type=Repository RepositoryID *string `json:"repositoryId,omitempty" tf:"repository_id,omitempty"` @@ -29,45 +29,48 @@ type RepositoryLifecyclePolicyInitParameters struct { // +kubebuilder:validation:Optional RepositoryIDSelector *v1.Selector `json:"repositoryIdSelector,omitempty" tf:"-"` + // (Block List) (see below for nested schema) Rule []RuleInitParameters `json:"rule,omitempty" tf:"rule,omitempty"` - // The status of lifecycle policy. Must be active or disabled. + // (String) Status *string `json:"status,omitempty" tf:"status,omitempty"` } type RepositoryLifecyclePolicyObservation struct { - // Creation timestamp of the instance. + // (String) CreatedAt *string `json:"createdAt,omitempty" tf:"created_at,omitempty"` - // Description of the lifecycle policy. + // (String) Description *string `json:"description,omitempty" tf:"description,omitempty"` + // (String) The ID of this resource. ID *string `json:"id,omitempty" tf:"id,omitempty"` - // Lifecycle policy name. + // (String) Name *string `json:"name,omitempty" tf:"name,omitempty"` - // The ID of the repository that the resource belongs to. + // (String) RepositoryID *string `json:"repositoryId,omitempty" tf:"repository_id,omitempty"` + // (Block List) (see below for nested schema) Rule []RuleObservation `json:"rule,omitempty" tf:"rule,omitempty"` - // The status of lifecycle policy. Must be active or disabled. + // (String) Status *string `json:"status,omitempty" tf:"status,omitempty"` } type RepositoryLifecyclePolicyParameters struct { - // Description of the lifecycle policy. + // (String) // +kubebuilder:validation:Optional Description *string `json:"description,omitempty" tf:"description,omitempty"` - // Lifecycle policy name. + // (String) // +kubebuilder:validation:Optional Name *string `json:"name,omitempty" tf:"name,omitempty"` - // The ID of the repository that the resource belongs to. + // (String) // +crossplane:generate:reference:type=Repository // +kubebuilder:validation:Optional RepositoryID *string `json:"repositoryId,omitempty" tf:"repository_id,omitempty"` @@ -80,69 +83,70 @@ type RepositoryLifecyclePolicyParameters struct { // +kubebuilder:validation:Optional RepositoryIDSelector *v1.Selector `json:"repositoryIdSelector,omitempty" tf:"-"` + // (Block List) (see below for nested schema) // +kubebuilder:validation:Optional Rule []RuleParameters `json:"rule,omitempty" tf:"rule,omitempty"` - // The status of lifecycle policy. Must be active or disabled. + // (String) // +kubebuilder:validation:Optional Status *string `json:"status,omitempty" tf:"status,omitempty"` } type RuleInitParameters struct { - // Description of the lifecycle policy. + // (String) Description *string `json:"description,omitempty" tf:"description,omitempty"` - // The period of time that must pass after creating a image for it to suit the automatic deletion criteria. It must be a multiple of 24 hours. + // (String) ExpirePeriod *string `json:"expirePeriod,omitempty" tf:"expire_period,omitempty"` - // The number of images to be retained even if the expire_period already expired. + // (Number) RetainedTop *float64 `json:"retainedTop,omitempty" tf:"retained_top,omitempty"` - // Tag to specify a filter as a regular expression. For example .* - all images with tags. + // (String) TagRegexp *string `json:"tagRegexp,omitempty" tf:"tag_regexp,omitempty"` - // If enabled, rules apply to untagged Docker images. + // (Boolean) Untagged *bool `json:"untagged,omitempty" tf:"untagged,omitempty"` } type RuleObservation struct { - // Description of the lifecycle policy. + // (String) Description *string `json:"description,omitempty" tf:"description,omitempty"` - // The period of time that must pass after creating a image for it to suit the automatic deletion criteria. It must be a multiple of 24 hours. + // (String) ExpirePeriod *string `json:"expirePeriod,omitempty" tf:"expire_period,omitempty"` - // The number of images to be retained even if the expire_period already expired. + // (Number) RetainedTop *float64 `json:"retainedTop,omitempty" tf:"retained_top,omitempty"` - // Tag to specify a filter as a regular expression. For example .* - all images with tags. + // (String) TagRegexp *string `json:"tagRegexp,omitempty" tf:"tag_regexp,omitempty"` - // If enabled, rules apply to untagged Docker images. + // (Boolean) Untagged *bool `json:"untagged,omitempty" tf:"untagged,omitempty"` } type RuleParameters struct { - // Description of the lifecycle policy. + // (String) // +kubebuilder:validation:Optional Description *string `json:"description,omitempty" tf:"description,omitempty"` - // The period of time that must pass after creating a image for it to suit the automatic deletion criteria. It must be a multiple of 24 hours. + // (String) // +kubebuilder:validation:Optional ExpirePeriod *string `json:"expirePeriod,omitempty" tf:"expire_period,omitempty"` - // The number of images to be retained even if the expire_period already expired. + // (Number) // +kubebuilder:validation:Optional RetainedTop *float64 `json:"retainedTop,omitempty" tf:"retained_top,omitempty"` - // Tag to specify a filter as a regular expression. For example .* - all images with tags. + // (String) // +kubebuilder:validation:Optional TagRegexp *string `json:"tagRegexp,omitempty" tf:"tag_regexp,omitempty"` - // If enabled, rules apply to untagged Docker images. + // (Boolean) // +kubebuilder:validation:Optional Untagged *bool `json:"untagged,omitempty" tf:"untagged,omitempty"` } @@ -174,7 +178,7 @@ type RepositoryLifecyclePolicyStatus struct { // +kubebuilder:subresource:status // +kubebuilder:storageversion -// RepositoryLifecyclePolicy is the Schema for the RepositoryLifecyclePolicys API. Creates a new container repository lifecycle policy. +// RepositoryLifecyclePolicy is the Schema for the RepositoryLifecyclePolicys API. // +kubebuilder:printcolumn:name="SYNCED",type="string",JSONPath=".status.conditions[?(@.type=='Synced')].status" // +kubebuilder:printcolumn:name="READY",type="string",JSONPath=".status.conditions[?(@.type=='Ready')].status" // +kubebuilder:printcolumn:name="EXTERNAL-NAME",type="string",JSONPath=".metadata.annotations.crossplane\\.io/external-name" diff --git a/apis/dataproc/v1alpha1/zz_cluster_types.go b/apis/dataproc/v1alpha1/zz_cluster_types.go index ff131e5..7ecd1ff 100755 --- a/apis/dataproc/v1alpha1/zz_cluster_types.go +++ b/apis/dataproc/v1alpha1/zz_cluster_types.go @@ -145,7 +145,7 @@ type ClusterInitParameters struct { // Configuration and resources for hosts that should be created with the cluster. The structure is documented below. ClusterConfig []ClusterConfigInitParameters `json:"clusterConfig,omitempty" tf:"cluster_config,omitempty"` - // Inhibits deletion of the cluster. Can be either true or false. + // Inhibits deletion of the cluster. Can be either true or false. DeletionProtection *bool `json:"deletionProtection,omitempty" tf:"deletion_protection,omitempty"` // Description of the Data Proc cluster. @@ -209,7 +209,7 @@ type ClusterObservation struct { // (Computed) The Data Proc cluster creation timestamp. CreatedAt *string `json:"createdAt,omitempty" tf:"created_at,omitempty"` - // Inhibits deletion of the cluster. Can be either true or false. + // Inhibits deletion of the cluster. Can be either true or false. DeletionProtection *bool `json:"deletionProtection,omitempty" tf:"deletion_protection,omitempty"` // Description of the Data Proc cluster. @@ -266,7 +266,7 @@ type ClusterParameters struct { // +kubebuilder:validation:Optional ClusterConfig []ClusterConfigParameters `json:"clusterConfig,omitempty" tf:"cluster_config,omitempty"` - // Inhibits deletion of the cluster. Can be either true or false. + // Inhibits deletion of the cluster. Can be either true or false. // +kubebuilder:validation:Optional DeletionProtection *bool `json:"deletionProtection,omitempty" tf:"deletion_protection,omitempty"` diff --git a/apis/datatransfer/v1alpha1/zz_endpoint_types.go b/apis/datatransfer/v1alpha1/zz_endpoint_types.go index 7c3847a..4672956 100755 --- a/apis/datatransfer/v1alpha1/zz_endpoint_types.go +++ b/apis/datatransfer/v1alpha1/zz_endpoint_types.go @@ -11,29 +11,29 @@ import ( type AltNamesInitParameters struct { - // Name of the endpoint. + // (String) FromName *string `json:"fromName,omitempty" tf:"from_name,omitempty"` - // Name of the endpoint. + // (String) ToName *string `json:"toName,omitempty" tf:"to_name,omitempty"` } type AltNamesObservation struct { - // Name of the endpoint. + // (String) FromName *string `json:"fromName,omitempty" tf:"from_name,omitempty"` - // Name of the endpoint. + // (String) ToName *string `json:"toName,omitempty" tf:"to_name,omitempty"` } type AltNamesParameters struct { - // Name of the endpoint. + // (String) // +kubebuilder:validation:Optional FromName *string `json:"fromName,omitempty" tf:"from_name,omitempty"` - // Name of the endpoint. + // (String) // +kubebuilder:validation:Optional ToName *string `json:"toName,omitempty" tf:"to_name,omitempty"` } @@ -49,10 +49,10 @@ type AuditTrailsV1ParserParameters struct { type AuthInitParameters struct { - // Connection without authentication data. + // (Block List, Max: 1) (see below for nested schema) NoAuth []NoAuthInitParameters `json:"noAuth,omitempty" tf:"no_auth,omitempty"` - // Authentication using sasl. + // (Block List, Max: 1) (see below for nested schema) Sasl []SaslInitParameters `json:"sasl,omitempty" tf:"sasl,omitempty"` } @@ -67,59 +67,66 @@ type AuthNoAuthParameters struct { type AuthObservation struct { - // Connection without authentication data. + // (Block List, Max: 1) (see below for nested schema) NoAuth []NoAuthParameters `json:"noAuth,omitempty" tf:"no_auth,omitempty"` - // Authentication using sasl. + // (Block List, Max: 1) (see below for nested schema) Sasl []SaslObservation `json:"sasl,omitempty" tf:"sasl,omitempty"` } type AuthParameters struct { - // Connection without authentication data. + // (Block List, Max: 1) (see below for nested schema) // +kubebuilder:validation:Optional NoAuth []NoAuthParameters `json:"noAuth,omitempty" tf:"no_auth,omitempty"` - // Authentication using sasl. + // (Block List, Max: 1) (see below for nested schema) // +kubebuilder:validation:Optional Sasl []SaslParameters `json:"sasl,omitempty" tf:"sasl,omitempty"` } type AuthSaslInitParameters struct { + + // (String) Mechanism *string `json:"mechanism,omitempty" tf:"mechanism,omitempty"` - // Password for the database access. This is a block with a single field named raw which should contain the password. + // (Block List, Max: 1) (see below for nested schema) Password []AuthSaslPasswordInitParameters `json:"password,omitempty" tf:"password,omitempty"` - // User for the database access. + // (String) User *string `json:"user,omitempty" tf:"user,omitempty"` } type AuthSaslObservation struct { + + // (String) Mechanism *string `json:"mechanism,omitempty" tf:"mechanism,omitempty"` - // Password for the database access. This is a block with a single field named raw which should contain the password. + // (Block List, Max: 1) (see below for nested schema) Password []AuthSaslPasswordParameters `json:"password,omitempty" tf:"password,omitempty"` - // User for the database access. + // (String) User *string `json:"user,omitempty" tf:"user,omitempty"` } type AuthSaslParameters struct { + // (String) // +kubebuilder:validation:Optional Mechanism *string `json:"mechanism,omitempty" tf:"mechanism,omitempty"` - // Password for the database access. This is a block with a single field named raw which should contain the password. + // (Block List, Max: 1) (see below for nested schema) // +kubebuilder:validation:Optional Password []AuthSaslPasswordParameters `json:"password,omitempty" tf:"password,omitempty"` - // User for the database access. + // (String) // +kubebuilder:validation:Optional User *string `json:"user,omitempty" tf:"user,omitempty"` } type AuthSaslPasswordInitParameters struct { + + // (String, Sensitive) RawSecretRef *v1.SecretKeySelector `json:"rawSecretRef,omitempty" tf:"-"` } @@ -128,25 +135,29 @@ type AuthSaslPasswordObservation struct { type AuthSaslPasswordParameters struct { + // (String, Sensitive) // +kubebuilder:validation:Optional RawSecretRef *v1.SecretKeySelector `json:"rawSecretRef,omitempty" tf:"-"` } type ClickhouseSourceInitParameters struct { - // Connection settings. + // (String) + ClickhouseClusterName *string `json:"clickhouseClusterName,omitempty" tf:"clickhouse_cluster_name,omitempty"` + + // (Block List, Max: 1) (see below for nested schema) Connection []ConnectionInitParameters `json:"connection,omitempty" tf:"connection,omitempty"` - // List of tables which will not be transfered, formatted as schemaname.tablename. + // (List of String) ExcludeTables []*string `json:"excludeTables,omitempty" tf:"exclude_tables,omitempty"` - // List of tables to transfer, formatted as schemaname.tablename. If omitted or an empty list is specified, all tables will be transferred. + // (List of String) IncludeTables []*string `json:"includeTables,omitempty" tf:"include_tables,omitempty"` - // - List of security groups that the transfer associated with this endpoint should use. + // (List of String) SecurityGroups []*string `json:"securityGroups,omitempty" tf:"security_groups,omitempty"` - // - Identifier of the Yandex Cloud VPC subnetwork to user for accessing the database. If omitted, the server has to be accessible via Internet. + // (String) // +crossplane:generate:reference:type=github.com/tagesjump/provider-upjet-yc/apis/vpc/v1alpha1.Subnet SubnetID *string `json:"subnetId,omitempty" tf:"subnet_id,omitempty"` @@ -161,41 +172,48 @@ type ClickhouseSourceInitParameters struct { type ClickhouseSourceObservation struct { - // Connection settings. + // (String) + ClickhouseClusterName *string `json:"clickhouseClusterName,omitempty" tf:"clickhouse_cluster_name,omitempty"` + + // (Block List, Max: 1) (see below for nested schema) Connection []ConnectionObservation `json:"connection,omitempty" tf:"connection,omitempty"` - // List of tables which will not be transfered, formatted as schemaname.tablename. + // (List of String) ExcludeTables []*string `json:"excludeTables,omitempty" tf:"exclude_tables,omitempty"` - // List of tables to transfer, formatted as schemaname.tablename. If omitted or an empty list is specified, all tables will be transferred. + // (List of String) IncludeTables []*string `json:"includeTables,omitempty" tf:"include_tables,omitempty"` - // - List of security groups that the transfer associated with this endpoint should use. + // (List of String) SecurityGroups []*string `json:"securityGroups,omitempty" tf:"security_groups,omitempty"` - // - Identifier of the Yandex Cloud VPC subnetwork to user for accessing the database. If omitted, the server has to be accessible via Internet. + // (String) SubnetID *string `json:"subnetId,omitempty" tf:"subnet_id,omitempty"` } type ClickhouseSourceParameters struct { - // Connection settings. + // (String) + // +kubebuilder:validation:Optional + ClickhouseClusterName *string `json:"clickhouseClusterName,omitempty" tf:"clickhouse_cluster_name,omitempty"` + + // (Block List, Max: 1) (see below for nested schema) // +kubebuilder:validation:Optional Connection []ConnectionParameters `json:"connection,omitempty" tf:"connection,omitempty"` - // List of tables which will not be transfered, formatted as schemaname.tablename. + // (List of String) // +kubebuilder:validation:Optional ExcludeTables []*string `json:"excludeTables,omitempty" tf:"exclude_tables,omitempty"` - // List of tables to transfer, formatted as schemaname.tablename. If omitted or an empty list is specified, all tables will be transferred. + // (List of String) // +kubebuilder:validation:Optional IncludeTables []*string `json:"includeTables,omitempty" tf:"include_tables,omitempty"` - // - List of security groups that the transfer associated with this endpoint should use. + // (List of String) // +kubebuilder:validation:Optional SecurityGroups []*string `json:"securityGroups,omitempty" tf:"security_groups,omitempty"` - // - Identifier of the Yandex Cloud VPC subnetwork to user for accessing the database. If omitted, the server has to be accessible via Internet. + // (String) // +crossplane:generate:reference:type=github.com/tagesjump/provider-upjet-yc/apis/vpc/v1alpha1.Subnet // +kubebuilder:validation:Optional SubnetID *string `json:"subnetId,omitempty" tf:"subnet_id,omitempty"` @@ -211,44 +229,44 @@ type ClickhouseSourceParameters struct { type ClickhouseTargetConnectionInitParameters struct { - // Connection options. The structure is documented below. + // (Block List, Max: 1) (see below for nested schema) ConnectionOptions []ConnectionConnectionOptionsInitParameters `json:"connectionOptions,omitempty" tf:"connection_options,omitempty"` } type ClickhouseTargetConnectionObservation struct { - // Connection options. The structure is documented below. + // (Block List, Max: 1) (see below for nested schema) ConnectionOptions []ConnectionConnectionOptionsObservation `json:"connectionOptions,omitempty" tf:"connection_options,omitempty"` } type ClickhouseTargetConnectionParameters struct { - // Connection options. The structure is documented below. + // (Block List, Max: 1) (see below for nested schema) // +kubebuilder:validation:Optional ConnectionOptions []ConnectionConnectionOptionsParameters `json:"connectionOptions,omitempty" tf:"connection_options,omitempty"` } type ClickhouseTargetInitParameters struct { - // Table renaming rules. The structure is documented below. + // (Block List) (see below for nested schema) AltNames []AltNamesInitParameters `json:"altNames,omitempty" tf:"alt_names,omitempty"` - // - How to clean collections when activating the transfer. One of "YDB_CLEANUP_POLICY_DISABLED" or "YDB_CLEANUP_POLICY_DROP". + // (String) CleanupPolicy *string `json:"cleanupPolicy,omitempty" tf:"cleanup_policy,omitempty"` - // Name of the ClickHouse cluster. For managed ClickHouse clusters defaults to managed cluster ID. + // (String) ClickhouseClusterName *string `json:"clickhouseClusterName,omitempty" tf:"clickhouse_cluster_name,omitempty"` - // Connection settings. + // (Block List, Max: 1) (see below for nested schema) Connection []ClickhouseTargetConnectionInitParameters `json:"connection,omitempty" tf:"connection,omitempty"` - // - List of security groups that the transfer associated with this endpoint should use. + // (List of String) SecurityGroups []*string `json:"securityGroups,omitempty" tf:"security_groups,omitempty"` - // Shard selection rules for the data being transferred. The structure is documented below. + // (Block List, Max: 1) (see below for nested schema) Sharding []ShardingInitParameters `json:"sharding,omitempty" tf:"sharding,omitempty"` - // - Identifier of the Yandex Cloud VPC subnetwork to user for accessing the database. If omitted, the server has to be accessible via Internet. + // (String) // +crossplane:generate:reference:type=github.com/tagesjump/provider-upjet-yc/apis/vpc/v1alpha1.Subnet SubnetID *string `json:"subnetId,omitempty" tf:"subnet_id,omitempty"` @@ -263,55 +281,55 @@ type ClickhouseTargetInitParameters struct { type ClickhouseTargetObservation struct { - // Table renaming rules. The structure is documented below. + // (Block List) (see below for nested schema) AltNames []AltNamesObservation `json:"altNames,omitempty" tf:"alt_names,omitempty"` - // - How to clean collections when activating the transfer. One of "YDB_CLEANUP_POLICY_DISABLED" or "YDB_CLEANUP_POLICY_DROP". + // (String) CleanupPolicy *string `json:"cleanupPolicy,omitempty" tf:"cleanup_policy,omitempty"` - // Name of the ClickHouse cluster. For managed ClickHouse clusters defaults to managed cluster ID. + // (String) ClickhouseClusterName *string `json:"clickhouseClusterName,omitempty" tf:"clickhouse_cluster_name,omitempty"` - // Connection settings. + // (Block List, Max: 1) (see below for nested schema) Connection []ClickhouseTargetConnectionObservation `json:"connection,omitempty" tf:"connection,omitempty"` - // - List of security groups that the transfer associated with this endpoint should use. + // (List of String) SecurityGroups []*string `json:"securityGroups,omitempty" tf:"security_groups,omitempty"` - // Shard selection rules for the data being transferred. The structure is documented below. + // (Block List, Max: 1) (see below for nested schema) Sharding []ShardingObservation `json:"sharding,omitempty" tf:"sharding,omitempty"` - // - Identifier of the Yandex Cloud VPC subnetwork to user for accessing the database. If omitted, the server has to be accessible via Internet. + // (String) SubnetID *string `json:"subnetId,omitempty" tf:"subnet_id,omitempty"` } type ClickhouseTargetParameters struct { - // Table renaming rules. The structure is documented below. + // (Block List) (see below for nested schema) // +kubebuilder:validation:Optional AltNames []AltNamesParameters `json:"altNames,omitempty" tf:"alt_names,omitempty"` - // - How to clean collections when activating the transfer. One of "YDB_CLEANUP_POLICY_DISABLED" or "YDB_CLEANUP_POLICY_DROP". + // (String) // +kubebuilder:validation:Optional CleanupPolicy *string `json:"cleanupPolicy,omitempty" tf:"cleanup_policy,omitempty"` - // Name of the ClickHouse cluster. For managed ClickHouse clusters defaults to managed cluster ID. + // (String) // +kubebuilder:validation:Optional ClickhouseClusterName *string `json:"clickhouseClusterName,omitempty" tf:"clickhouse_cluster_name,omitempty"` - // Connection settings. + // (Block List, Max: 1) (see below for nested schema) // +kubebuilder:validation:Optional Connection []ClickhouseTargetConnectionParameters `json:"connection,omitempty" tf:"connection,omitempty"` - // - List of security groups that the transfer associated with this endpoint should use. + // (List of String) // +kubebuilder:validation:Optional SecurityGroups []*string `json:"securityGroups,omitempty" tf:"security_groups,omitempty"` - // Shard selection rules for the data being transferred. The structure is documented below. + // (Block List, Max: 1) (see below for nested schema) // +kubebuilder:validation:Optional Sharding []ShardingParameters `json:"sharding,omitempty" tf:"sharding,omitempty"` - // - Identifier of the Yandex Cloud VPC subnetwork to user for accessing the database. If omitted, the server has to be accessible via Internet. + // (String) // +crossplane:generate:reference:type=github.com/tagesjump/provider-upjet-yc/apis/vpc/v1alpha1.Subnet // +kubebuilder:validation:Optional SubnetID *string `json:"subnetId,omitempty" tf:"subnet_id,omitempty"` @@ -336,152 +354,152 @@ type CloudLoggingParserParameters struct { type CollectionsInitParameters struct { - // Collection name. + // (String) CollectionName *string `json:"collectionName,omitempty" tf:"collection_name,omitempty"` - // Database name. + // (String) DatabaseName *string `json:"databaseName,omitempty" tf:"database_name,omitempty"` } type CollectionsObservation struct { - // Collection name. + // (String) CollectionName *string `json:"collectionName,omitempty" tf:"collection_name,omitempty"` - // Database name. + // (String) DatabaseName *string `json:"databaseName,omitempty" tf:"database_name,omitempty"` } type CollectionsParameters struct { - // Collection name. + // (String) // +kubebuilder:validation:Optional CollectionName *string `json:"collectionName,omitempty" tf:"collection_name,omitempty"` - // Database name. + // (String) // +kubebuilder:validation:Optional DatabaseName *string `json:"databaseName,omitempty" tf:"database_name,omitempty"` } type ColumnValueHashInitParameters struct { - // The name of the column to calculate hash from. + // (String) ColumnName *string `json:"columnName,omitempty" tf:"column_name,omitempty"` } type ColumnValueHashObservation struct { - // The name of the column to calculate hash from. + // (String) ColumnName *string `json:"columnName,omitempty" tf:"column_name,omitempty"` } type ColumnValueHashParameters struct { - // The name of the column to calculate hash from. + // (String) // +kubebuilder:validation:Optional ColumnName *string `json:"columnName,omitempty" tf:"column_name,omitempty"` } type ColumnValueInitParameters struct { - // The string value of the column. + // (String) StringValue *string `json:"stringValue,omitempty" tf:"string_value,omitempty"` } type ColumnValueObservation struct { - // The string value of the column. + // (String) StringValue *string `json:"stringValue,omitempty" tf:"string_value,omitempty"` } type ColumnValueParameters struct { - // The string value of the column. + // (String) // +kubebuilder:validation:Optional StringValue *string `json:"stringValue,omitempty" tf:"string_value,omitempty"` } type ConnectionConnectionOptionsInitParameters struct { - // - Database. + // (String) Database *string `json:"database,omitempty" tf:"database,omitempty"` - // Identifier of the Managed PostgreSQL cluster. + // (String) MdbClusterID *string `json:"mdbClusterId,omitempty" tf:"mdb_cluster_id,omitempty"` - // Connection settings of the on-premise PostgreSQL server. + // (Block List, Max: 1) (see below for nested schema) OnPremise []ConnectionOptionsOnPremiseInitParameters `json:"onPremise,omitempty" tf:"on_premise,omitempty"` - // Password for the database access. This is a block with a single field named raw which should contain the password. + // (Block List, Max: 1) (see below for nested schema) Password []ConnectionOptionsPasswordInitParameters `json:"password,omitempty" tf:"password,omitempty"` - // User for the database access. + // (String) User *string `json:"user,omitempty" tf:"user,omitempty"` } type ConnectionConnectionOptionsObservation struct { - // - Database. + // (String) Database *string `json:"database,omitempty" tf:"database,omitempty"` - // Identifier of the Managed PostgreSQL cluster. + // (String) MdbClusterID *string `json:"mdbClusterId,omitempty" tf:"mdb_cluster_id,omitempty"` - // Connection settings of the on-premise PostgreSQL server. + // (Block List, Max: 1) (see below for nested schema) OnPremise []ConnectionOptionsOnPremiseObservation `json:"onPremise,omitempty" tf:"on_premise,omitempty"` - // Password for the database access. This is a block with a single field named raw which should contain the password. + // (Block List, Max: 1) (see below for nested schema) Password []ConnectionOptionsPasswordParameters `json:"password,omitempty" tf:"password,omitempty"` - // User for the database access. + // (String) User *string `json:"user,omitempty" tf:"user,omitempty"` } type ConnectionConnectionOptionsOnPremiseInitParameters struct { - // List of host names of the PostgreSQL server. Exactly one host is expected currently. + // (List of String) Hosts []*string `json:"hosts,omitempty" tf:"hosts,omitempty"` - // Port for the database connection. + // (Number) Port *float64 `json:"port,omitempty" tf:"port,omitempty"` - // Replica set name. + // (String) ReplicaSet *string `json:"replicaSet,omitempty" tf:"replica_set,omitempty"` - // TLS settings for the server connection. Empty implies plaintext connection. The structure is documented below. + // (Block List, Max: 1) (see below for nested schema) TLSMode []ConnectionOptionsOnPremiseTLSModeInitParameters `json:"tlsMode,omitempty" tf:"tls_mode,omitempty"` } type ConnectionConnectionOptionsOnPremiseObservation struct { - // List of host names of the PostgreSQL server. Exactly one host is expected currently. + // (List of String) Hosts []*string `json:"hosts,omitempty" tf:"hosts,omitempty"` - // Port for the database connection. + // (Number) Port *float64 `json:"port,omitempty" tf:"port,omitempty"` - // Replica set name. + // (String) ReplicaSet *string `json:"replicaSet,omitempty" tf:"replica_set,omitempty"` - // TLS settings for the server connection. Empty implies plaintext connection. The structure is documented below. + // (Block List, Max: 1) (see below for nested schema) TLSMode []ConnectionOptionsOnPremiseTLSModeObservation `json:"tlsMode,omitempty" tf:"tls_mode,omitempty"` } type ConnectionConnectionOptionsOnPremiseParameters struct { - // List of host names of the PostgreSQL server. Exactly one host is expected currently. + // (List of String) // +kubebuilder:validation:Optional Hosts []*string `json:"hosts,omitempty" tf:"hosts,omitempty"` - // Port for the database connection. + // (Number) // +kubebuilder:validation:Optional Port *float64 `json:"port,omitempty" tf:"port,omitempty"` - // Replica set name. + // (String) // +kubebuilder:validation:Optional ReplicaSet *string `json:"replicaSet,omitempty" tf:"replica_set,omitempty"` - // TLS settings for the server connection. Empty implies plaintext connection. The structure is documented below. + // (Block List, Max: 1) (see below for nested schema) // +kubebuilder:validation:Optional TLSMode []ConnectionOptionsOnPremiseTLSModeParameters `json:"tlsMode,omitempty" tf:"tls_mode,omitempty"` } @@ -497,76 +515,78 @@ type ConnectionConnectionOptionsOnPremiseTLSModeDisabledParameters struct { type ConnectionConnectionOptionsOnPremiseTLSModeEnabledInitParameters struct { - // X.509 certificate of the certificate authority which issued the server's certificate, in PEM format. If empty, the server's certificate must be signed by a well-known CA. + // (String) CACertificate *string `json:"caCertificate,omitempty" tf:"ca_certificate,omitempty"` } type ConnectionConnectionOptionsOnPremiseTLSModeEnabledObservation struct { - // X.509 certificate of the certificate authority which issued the server's certificate, in PEM format. If empty, the server's certificate must be signed by a well-known CA. + // (String) CACertificate *string `json:"caCertificate,omitempty" tf:"ca_certificate,omitempty"` } type ConnectionConnectionOptionsOnPremiseTLSModeEnabledParameters struct { - // X.509 certificate of the certificate authority which issued the server's certificate, in PEM format. If empty, the server's certificate must be signed by a well-known CA. + // (String) // +kubebuilder:validation:Optional CACertificate *string `json:"caCertificate,omitempty" tf:"ca_certificate,omitempty"` } type ConnectionConnectionOptionsOnPremiseTLSModeInitParameters struct { - // Empty block designating that the connection is not secured, i.e. plaintext connection. + // (Block List, Max: 1) (see below for nested schema) Disabled []ConnectionConnectionOptionsOnPremiseTLSModeDisabledInitParameters `json:"disabled,omitempty" tf:"disabled,omitempty"` - // If this attribute is not an empty block, then TLS is used for the server connection. The structure is documented below. + // (Block List, Max: 1) (see below for nested schema) Enabled []ConnectionConnectionOptionsOnPremiseTLSModeEnabledInitParameters `json:"enabled,omitempty" tf:"enabled,omitempty"` } type ConnectionConnectionOptionsOnPremiseTLSModeObservation struct { - // Empty block designating that the connection is not secured, i.e. plaintext connection. + // (Block List, Max: 1) (see below for nested schema) Disabled []ConnectionConnectionOptionsOnPremiseTLSModeDisabledParameters `json:"disabled,omitempty" tf:"disabled,omitempty"` - // If this attribute is not an empty block, then TLS is used for the server connection. The structure is documented below. + // (Block List, Max: 1) (see below for nested schema) Enabled []ConnectionConnectionOptionsOnPremiseTLSModeEnabledObservation `json:"enabled,omitempty" tf:"enabled,omitempty"` } type ConnectionConnectionOptionsOnPremiseTLSModeParameters struct { - // Empty block designating that the connection is not secured, i.e. plaintext connection. + // (Block List, Max: 1) (see below for nested schema) // +kubebuilder:validation:Optional Disabled []ConnectionConnectionOptionsOnPremiseTLSModeDisabledParameters `json:"disabled,omitempty" tf:"disabled,omitempty"` - // If this attribute is not an empty block, then TLS is used for the server connection. The structure is documented below. + // (Block List, Max: 1) (see below for nested schema) // +kubebuilder:validation:Optional Enabled []ConnectionConnectionOptionsOnPremiseTLSModeEnabledParameters `json:"enabled,omitempty" tf:"enabled,omitempty"` } type ConnectionConnectionOptionsParameters struct { - // - Database. + // (String) // +kubebuilder:validation:Optional Database *string `json:"database,omitempty" tf:"database,omitempty"` - // Identifier of the Managed PostgreSQL cluster. + // (String) // +kubebuilder:validation:Optional MdbClusterID *string `json:"mdbClusterId,omitempty" tf:"mdb_cluster_id,omitempty"` - // Connection settings of the on-premise PostgreSQL server. + // (Block List, Max: 1) (see below for nested schema) // +kubebuilder:validation:Optional OnPremise []ConnectionOptionsOnPremiseParameters `json:"onPremise,omitempty" tf:"on_premise,omitempty"` - // Password for the database access. This is a block with a single field named raw which should contain the password. + // (Block List, Max: 1) (see below for nested schema) // +kubebuilder:validation:Optional Password []ConnectionOptionsPasswordParameters `json:"password,omitempty" tf:"password,omitempty"` - // User for the database access. + // (String) // +kubebuilder:validation:Optional User *string `json:"user,omitempty" tf:"user,omitempty"` } type ConnectionConnectionOptionsPasswordInitParameters struct { + + // (String, Sensitive) RawSecretRef *v1.SecretKeySelector `json:"rawSecretRef,omitempty" tf:"-"` } @@ -575,57 +595,58 @@ type ConnectionConnectionOptionsPasswordObservation struct { type ConnectionConnectionOptionsPasswordParameters struct { + // (String, Sensitive) // +kubebuilder:validation:Optional RawSecretRef *v1.SecretKeySelector `json:"rawSecretRef,omitempty" tf:"-"` } type ConnectionInitParameters struct { - // Connection options. The structure is documented below. + // (Block List, Max: 1) (see below for nested schema) ConnectionOptions []ConnectionOptionsInitParameters `json:"connectionOptions,omitempty" tf:"connection_options,omitempty"` } type ConnectionObservation struct { - // Connection options. The structure is documented below. + // (Block List, Max: 1) (see below for nested schema) ConnectionOptions []ConnectionOptionsObservation `json:"connectionOptions,omitempty" tf:"connection_options,omitempty"` } type ConnectionOnPremiseInitParameters struct { - // List of Kafka broker URLs. + // (List of String) BrokerUrls []*string `json:"brokerUrls,omitempty" tf:"broker_urls,omitempty"` - // - Identifier of the Yandex Cloud VPC subnetwork to user for accessing the database. If omitted, the server has to be accessible via Internet. + // (String) SubnetID *string `json:"subnetId,omitempty" tf:"subnet_id,omitempty"` - // TLS settings for the server connection. Empty implies plaintext connection. The structure is documented below. + // (Block List, Max: 1) (see below for nested schema) TLSMode []ConnectionOnPremiseTLSModeInitParameters `json:"tlsMode,omitempty" tf:"tls_mode,omitempty"` } type ConnectionOnPremiseObservation struct { - // List of Kafka broker URLs. + // (List of String) BrokerUrls []*string `json:"brokerUrls,omitempty" tf:"broker_urls,omitempty"` - // - Identifier of the Yandex Cloud VPC subnetwork to user for accessing the database. If omitted, the server has to be accessible via Internet. + // (String) SubnetID *string `json:"subnetId,omitempty" tf:"subnet_id,omitempty"` - // TLS settings for the server connection. Empty implies plaintext connection. The structure is documented below. + // (Block List, Max: 1) (see below for nested schema) TLSMode []ConnectionOnPremiseTLSModeObservation `json:"tlsMode,omitempty" tf:"tls_mode,omitempty"` } type ConnectionOnPremiseParameters struct { - // List of Kafka broker URLs. + // (List of String) // +kubebuilder:validation:Optional BrokerUrls []*string `json:"brokerUrls,omitempty" tf:"broker_urls,omitempty"` - // - Identifier of the Yandex Cloud VPC subnetwork to user for accessing the database. If omitted, the server has to be accessible via Internet. + // (String) // +kubebuilder:validation:Optional SubnetID *string `json:"subnetId,omitempty" tf:"subnet_id,omitempty"` - // TLS settings for the server connection. Empty implies plaintext connection. The structure is documented below. + // (Block List, Max: 1) (see below for nested schema) // +kubebuilder:validation:Optional TLSMode []ConnectionOnPremiseTLSModeParameters `json:"tlsMode,omitempty" tf:"tls_mode,omitempty"` } @@ -641,133 +662,133 @@ type ConnectionOnPremiseTLSModeDisabledParameters struct { type ConnectionOnPremiseTLSModeEnabledInitParameters struct { - // X.509 certificate of the certificate authority which issued the server's certificate, in PEM format. If empty, the server's certificate must be signed by a well-known CA. + // (String) CACertificate *string `json:"caCertificate,omitempty" tf:"ca_certificate,omitempty"` } type ConnectionOnPremiseTLSModeEnabledObservation struct { - // X.509 certificate of the certificate authority which issued the server's certificate, in PEM format. If empty, the server's certificate must be signed by a well-known CA. + // (String) CACertificate *string `json:"caCertificate,omitempty" tf:"ca_certificate,omitempty"` } type ConnectionOnPremiseTLSModeEnabledParameters struct { - // X.509 certificate of the certificate authority which issued the server's certificate, in PEM format. If empty, the server's certificate must be signed by a well-known CA. + // (String) // +kubebuilder:validation:Optional CACertificate *string `json:"caCertificate,omitempty" tf:"ca_certificate,omitempty"` } type ConnectionOnPremiseTLSModeInitParameters struct { - // Empty block designating that the connection is not secured, i.e. plaintext connection. + // (Block List, Max: 1) (see below for nested schema) Disabled []OnPremiseTLSModeDisabledInitParameters `json:"disabled,omitempty" tf:"disabled,omitempty"` - // If this attribute is not an empty block, then TLS is used for the server connection. The structure is documented below. + // (Block List, Max: 1) (see below for nested schema) Enabled []OnPremiseTLSModeEnabledInitParameters `json:"enabled,omitempty" tf:"enabled,omitempty"` } type ConnectionOnPremiseTLSModeObservation struct { - // Empty block designating that the connection is not secured, i.e. plaintext connection. + // (Block List, Max: 1) (see below for nested schema) Disabled []OnPremiseTLSModeDisabledParameters `json:"disabled,omitempty" tf:"disabled,omitempty"` - // If this attribute is not an empty block, then TLS is used for the server connection. The structure is documented below. + // (Block List, Max: 1) (see below for nested schema) Enabled []OnPremiseTLSModeEnabledObservation `json:"enabled,omitempty" tf:"enabled,omitempty"` } type ConnectionOnPremiseTLSModeParameters struct { - // Empty block designating that the connection is not secured, i.e. plaintext connection. + // (Block List, Max: 1) (see below for nested schema) // +kubebuilder:validation:Optional Disabled []OnPremiseTLSModeDisabledParameters `json:"disabled,omitempty" tf:"disabled,omitempty"` - // If this attribute is not an empty block, then TLS is used for the server connection. The structure is documented below. + // (Block List, Max: 1) (see below for nested schema) // +kubebuilder:validation:Optional Enabled []OnPremiseTLSModeEnabledParameters `json:"enabled,omitempty" tf:"enabled,omitempty"` } type ConnectionOptionsInitParameters struct { - // - Database. + // (String) Database *string `json:"database,omitempty" tf:"database,omitempty"` - // Identifier of the Managed PostgreSQL cluster. + // (String) MdbClusterID *string `json:"mdbClusterId,omitempty" tf:"mdb_cluster_id,omitempty"` - // Connection settings of the on-premise PostgreSQL server. + // (Block List, Max: 1) (see below for nested schema) OnPremise []OnPremiseInitParameters `json:"onPremise,omitempty" tf:"on_premise,omitempty"` - // Password for the database access. This is a block with a single field named raw which should contain the password. + // (Block List, Max: 1) (see below for nested schema) Password []PasswordInitParameters `json:"password,omitempty" tf:"password,omitempty"` - // User for the database access. + // (String) User *string `json:"user,omitempty" tf:"user,omitempty"` } type ConnectionOptionsObservation struct { - // - Database. + // (String) Database *string `json:"database,omitempty" tf:"database,omitempty"` - // Identifier of the Managed PostgreSQL cluster. + // (String) MdbClusterID *string `json:"mdbClusterId,omitempty" tf:"mdb_cluster_id,omitempty"` - // Connection settings of the on-premise PostgreSQL server. + // (Block List, Max: 1) (see below for nested schema) OnPremise []OnPremiseObservation `json:"onPremise,omitempty" tf:"on_premise,omitempty"` - // Password for the database access. This is a block with a single field named raw which should contain the password. + // (Block List, Max: 1) (see below for nested schema) Password []PasswordParameters `json:"password,omitempty" tf:"password,omitempty"` - // User for the database access. + // (String) User *string `json:"user,omitempty" tf:"user,omitempty"` } type ConnectionOptionsOnPremiseInitParameters struct { - // TCP port number for the HTTP interface of the ClickHouse server. + // (Number) HTTPPort *float64 `json:"httpPort,omitempty" tf:"http_port,omitempty"` - // TCP port number for the native interface of the ClickHouse server. + // (Number) NativePort *float64 `json:"nativePort,omitempty" tf:"native_port,omitempty"` - // The list of ClickHouse shards. The structure is documented below. + // (Block List) (see below for nested schema) Shards []OnPremiseShardsInitParameters `json:"shards,omitempty" tf:"shards,omitempty"` - // TLS settings for the server connection. Empty implies plaintext connection. The structure is documented below. + // (Block List, Max: 1) (see below for nested schema) TLSMode []OnPremiseTLSModeInitParameters `json:"tlsMode,omitempty" tf:"tls_mode,omitempty"` } type ConnectionOptionsOnPremiseObservation struct { - // TCP port number for the HTTP interface of the ClickHouse server. + // (Number) HTTPPort *float64 `json:"httpPort,omitempty" tf:"http_port,omitempty"` - // TCP port number for the native interface of the ClickHouse server. + // (Number) NativePort *float64 `json:"nativePort,omitempty" tf:"native_port,omitempty"` - // The list of ClickHouse shards. The structure is documented below. + // (Block List) (see below for nested schema) Shards []OnPremiseShardsObservation `json:"shards,omitempty" tf:"shards,omitempty"` - // TLS settings for the server connection. Empty implies plaintext connection. The structure is documented below. + // (Block List, Max: 1) (see below for nested schema) TLSMode []OnPremiseTLSModeObservation `json:"tlsMode,omitempty" tf:"tls_mode,omitempty"` } type ConnectionOptionsOnPremiseParameters struct { - // TCP port number for the HTTP interface of the ClickHouse server. + // (Number) // +kubebuilder:validation:Optional HTTPPort *float64 `json:"httpPort,omitempty" tf:"http_port,omitempty"` - // TCP port number for the native interface of the ClickHouse server. + // (Number) // +kubebuilder:validation:Optional NativePort *float64 `json:"nativePort,omitempty" tf:"native_port,omitempty"` - // The list of ClickHouse shards. The structure is documented below. + // (Block List) (see below for nested schema) // +kubebuilder:validation:Optional Shards []OnPremiseShardsParameters `json:"shards,omitempty" tf:"shards,omitempty"` - // TLS settings for the server connection. Empty implies plaintext connection. The structure is documented below. + // (Block List, Max: 1) (see below for nested schema) // +kubebuilder:validation:Optional TLSMode []OnPremiseTLSModeParameters `json:"tlsMode,omitempty" tf:"tls_mode,omitempty"` } @@ -783,76 +804,78 @@ type ConnectionOptionsOnPremiseTLSModeDisabledParameters struct { type ConnectionOptionsOnPremiseTLSModeEnabledInitParameters struct { - // X.509 certificate of the certificate authority which issued the server's certificate, in PEM format. If empty, the server's certificate must be signed by a well-known CA. + // (String) CACertificate *string `json:"caCertificate,omitempty" tf:"ca_certificate,omitempty"` } type ConnectionOptionsOnPremiseTLSModeEnabledObservation struct { - // X.509 certificate of the certificate authority which issued the server's certificate, in PEM format. If empty, the server's certificate must be signed by a well-known CA. + // (String) CACertificate *string `json:"caCertificate,omitempty" tf:"ca_certificate,omitempty"` } type ConnectionOptionsOnPremiseTLSModeEnabledParameters struct { - // X.509 certificate of the certificate authority which issued the server's certificate, in PEM format. If empty, the server's certificate must be signed by a well-known CA. + // (String) // +kubebuilder:validation:Optional CACertificate *string `json:"caCertificate,omitempty" tf:"ca_certificate,omitempty"` } type ConnectionOptionsOnPremiseTLSModeInitParameters struct { - // Empty block designating that the connection is not secured, i.e. plaintext connection. + // (Block List, Max: 1) (see below for nested schema) Disabled []ConnectionOptionsOnPremiseTLSModeDisabledInitParameters `json:"disabled,omitempty" tf:"disabled,omitempty"` - // If this attribute is not an empty block, then TLS is used for the server connection. The structure is documented below. + // (Block List, Max: 1) (see below for nested schema) Enabled []ConnectionOptionsOnPremiseTLSModeEnabledInitParameters `json:"enabled,omitempty" tf:"enabled,omitempty"` } type ConnectionOptionsOnPremiseTLSModeObservation struct { - // Empty block designating that the connection is not secured, i.e. plaintext connection. + // (Block List, Max: 1) (see below for nested schema) Disabled []ConnectionOptionsOnPremiseTLSModeDisabledParameters `json:"disabled,omitempty" tf:"disabled,omitempty"` - // If this attribute is not an empty block, then TLS is used for the server connection. The structure is documented below. + // (Block List, Max: 1) (see below for nested schema) Enabled []ConnectionOptionsOnPremiseTLSModeEnabledObservation `json:"enabled,omitempty" tf:"enabled,omitempty"` } type ConnectionOptionsOnPremiseTLSModeParameters struct { - // Empty block designating that the connection is not secured, i.e. plaintext connection. + // (Block List, Max: 1) (see below for nested schema) // +kubebuilder:validation:Optional Disabled []ConnectionOptionsOnPremiseTLSModeDisabledParameters `json:"disabled,omitempty" tf:"disabled,omitempty"` - // If this attribute is not an empty block, then TLS is used for the server connection. The structure is documented below. + // (Block List, Max: 1) (see below for nested schema) // +kubebuilder:validation:Optional Enabled []ConnectionOptionsOnPremiseTLSModeEnabledParameters `json:"enabled,omitempty" tf:"enabled,omitempty"` } type ConnectionOptionsParameters struct { - // - Database. + // (String) // +kubebuilder:validation:Optional Database *string `json:"database,omitempty" tf:"database,omitempty"` - // Identifier of the Managed PostgreSQL cluster. + // (String) // +kubebuilder:validation:Optional MdbClusterID *string `json:"mdbClusterId,omitempty" tf:"mdb_cluster_id,omitempty"` - // Connection settings of the on-premise PostgreSQL server. + // (Block List, Max: 1) (see below for nested schema) // +kubebuilder:validation:Optional OnPremise []OnPremiseParameters `json:"onPremise,omitempty" tf:"on_premise,omitempty"` - // Password for the database access. This is a block with a single field named raw which should contain the password. + // (Block List, Max: 1) (see below for nested schema) // +kubebuilder:validation:Optional Password []PasswordParameters `json:"password,omitempty" tf:"password,omitempty"` - // User for the database access. + // (String) // +kubebuilder:validation:Optional User *string `json:"user,omitempty" tf:"user,omitempty"` } type ConnectionOptionsPasswordInitParameters struct { + + // (String, Sensitive) RawSecretRef *v1.SecretKeySelector `json:"rawSecretRef,omitempty" tf:"-"` } @@ -861,149 +884,150 @@ type ConnectionOptionsPasswordObservation struct { type ConnectionOptionsPasswordParameters struct { + // (String, Sensitive) // +kubebuilder:validation:Optional RawSecretRef *v1.SecretKeySelector `json:"rawSecretRef,omitempty" tf:"-"` } type ConnectionParameters struct { - // Connection options. The structure is documented below. + // (Block List, Max: 1) (see below for nested schema) // +kubebuilder:validation:Optional ConnectionOptions []ConnectionOptionsParameters `json:"connectionOptions,omitempty" tf:"connection_options,omitempty"` } type CustomMappingInitParameters struct { - // The name of the column to calculate hash from. + // (String) ColumnName *string `json:"columnName,omitempty" tf:"column_name,omitempty"` - // The mapping of the specified column values to the shard names. The structure is documented below. + // (Block List) (see below for nested schema) Mapping []MappingInitParameters `json:"mapping,omitempty" tf:"mapping,omitempty"` } type CustomMappingObservation struct { - // The name of the column to calculate hash from. + // (String) ColumnName *string `json:"columnName,omitempty" tf:"column_name,omitempty"` - // The mapping of the specified column values to the shard names. The structure is documented below. + // (Block List) (see below for nested schema) Mapping []MappingObservation `json:"mapping,omitempty" tf:"mapping,omitempty"` } type CustomMappingParameters struct { - // The name of the column to calculate hash from. + // (String) // +kubebuilder:validation:Optional ColumnName *string `json:"columnName,omitempty" tf:"column_name,omitempty"` - // The mapping of the specified column values to the shard names. The structure is documented below. + // (Block List) (see below for nested schema) // +kubebuilder:validation:Optional Mapping []MappingParameters `json:"mapping,omitempty" tf:"mapping,omitempty"` } type DataSchemaFieldsFieldsInitParameters struct { - // Mark field as Primary Key. + // (Boolean) Key *bool `json:"key,omitempty" tf:"key,omitempty"` - // Field name. + // (String) Name *string `json:"name,omitempty" tf:"name,omitempty"` - // - A path where resulting tables are stored. + // (String) Path *string `json:"path,omitempty" tf:"path,omitempty"` - // Mark field as required. + // (Boolean) Required *bool `json:"required,omitempty" tf:"required,omitempty"` - // Field type, one of: INT64, INT32, INT16, INT8, UINT64, UINT32, UINT16, UINT8, DOUBLE, BOOLEAN, STRING, UTF8, ANY, DATETIME. + // (String) Type *string `json:"type,omitempty" tf:"type,omitempty"` } type DataSchemaFieldsFieldsObservation struct { - // Mark field as Primary Key. + // (Boolean) Key *bool `json:"key,omitempty" tf:"key,omitempty"` - // Field name. + // (String) Name *string `json:"name,omitempty" tf:"name,omitempty"` - // - A path where resulting tables are stored. + // (String) Path *string `json:"path,omitempty" tf:"path,omitempty"` - // Mark field as required. + // (Boolean) Required *bool `json:"required,omitempty" tf:"required,omitempty"` - // Field type, one of: INT64, INT32, INT16, INT8, UINT64, UINT32, UINT16, UINT8, DOUBLE, BOOLEAN, STRING, UTF8, ANY, DATETIME. + // (String) Type *string `json:"type,omitempty" tf:"type,omitempty"` } type DataSchemaFieldsFieldsParameters struct { - // Mark field as Primary Key. + // (Boolean) // +kubebuilder:validation:Optional Key *bool `json:"key,omitempty" tf:"key,omitempty"` - // Field name. + // (String) // +kubebuilder:validation:Optional Name *string `json:"name,omitempty" tf:"name,omitempty"` - // - A path where resulting tables are stored. + // (String) // +kubebuilder:validation:Optional Path *string `json:"path,omitempty" tf:"path,omitempty"` - // Mark field as required. + // (Boolean) // +kubebuilder:validation:Optional Required *bool `json:"required,omitempty" tf:"required,omitempty"` - // Field type, one of: INT64, INT32, INT16, INT8, UINT64, UINT32, UINT16, UINT8, DOUBLE, BOOLEAN, STRING, UTF8, ANY, DATETIME. + // (String) // +kubebuilder:validation:Optional Type *string `json:"type,omitempty" tf:"type,omitempty"` } type DataSchemaFieldsInitParameters struct { - // Description of the data schema in the array of fields structure (documented below). + // (Block List, Max: 1) (see below for nested schema) Fields []DataSchemaFieldsFieldsInitParameters `json:"fields,omitempty" tf:"fields,omitempty"` } type DataSchemaFieldsObservation struct { - // Description of the data schema in the array of fields structure (documented below). + // (Block List, Max: 1) (see below for nested schema) Fields []DataSchemaFieldsFieldsObservation `json:"fields,omitempty" tf:"fields,omitempty"` } type DataSchemaFieldsParameters struct { - // Description of the data schema in the array of fields structure (documented below). + // (Block List, Max: 1) (see below for nested schema) // +kubebuilder:validation:Optional Fields []DataSchemaFieldsFieldsParameters `json:"fields,omitempty" tf:"fields,omitempty"` } type DataSchemaInitParameters struct { - // Description of the data schema in the array of fields structure (documented below). + // (Block List, Max: 1) (see below for nested schema) Fields []FieldsInitParameters `json:"fields,omitempty" tf:"fields,omitempty"` - // Description of the data schema as JSON specification. + // (String) JSONFields *string `json:"jsonFields,omitempty" tf:"json_fields,omitempty"` } type DataSchemaObservation struct { - // Description of the data schema in the array of fields structure (documented below). + // (Block List, Max: 1) (see below for nested schema) Fields []FieldsObservation `json:"fields,omitempty" tf:"fields,omitempty"` - // Description of the data schema as JSON specification. + // (String) JSONFields *string `json:"jsonFields,omitempty" tf:"json_fields,omitempty"` } type DataSchemaParameters struct { - // Description of the data schema in the array of fields structure (documented below). + // (Block List, Max: 1) (see below for nested schema) // +kubebuilder:validation:Optional Fields []FieldsParameters `json:"fields,omitempty" tf:"fields,omitempty"` - // Description of the data schema as JSON specification. + // (String) // +kubebuilder:validation:Optional JSONFields *string `json:"jsonFields,omitempty" tf:"json_fields,omitempty"` } @@ -1019,29 +1043,29 @@ type DisabledParameters struct { type EnabledInitParameters struct { - // X.509 certificate of the certificate authority which issued the server's certificate, in PEM format. If empty, the server's certificate must be signed by a well-known CA. + // (String) CACertificate *string `json:"caCertificate,omitempty" tf:"ca_certificate,omitempty"` } type EnabledObservation struct { - // X.509 certificate of the certificate authority which issued the server's certificate, in PEM format. If empty, the server's certificate must be signed by a well-known CA. + // (String) CACertificate *string `json:"caCertificate,omitempty" tf:"ca_certificate,omitempty"` } type EnabledParameters struct { - // X.509 certificate of the certificate authority which issued the server's certificate, in PEM format. If empty, the server's certificate must be signed by a well-known CA. + // (String) // +kubebuilder:validation:Optional CACertificate *string `json:"caCertificate,omitempty" tf:"ca_certificate,omitempty"` } type EndpointInitParameters struct { - // Arbitrary description text for the endpoint. + // (String) Description *string `json:"description,omitempty" tf:"description,omitempty"` - // ID of the folder to create the endpoint in. If it is not provided, the default provider folder is used. + // (String) // +crossplane:generate:reference:type=github.com/tagesjump/provider-upjet-yc/apis/resourcemanager/v1alpha1.Folder FolderID *string `json:"folderId,omitempty" tf:"folder_id,omitempty"` @@ -1053,46 +1077,46 @@ type EndpointInitParameters struct { // +kubebuilder:validation:Optional FolderIDSelector *v1.Selector `json:"folderIdSelector,omitempty" tf:"-"` - // A set of key/value label pairs to assign to the Data Transfer endpoint. + // (Map of String) // +mapType=granular Labels map[string]*string `json:"labels,omitempty" tf:"labels,omitempty"` - // Name of the endpoint. + // (String) Name *string `json:"name,omitempty" tf:"name,omitempty"` - // Settings for the endpoint. The structure is documented below. + // (Block List, Max: 1) (see below for nested schema) Settings []SettingsInitParameters `json:"settings,omitempty" tf:"settings,omitempty"` } type EndpointObservation struct { - // Arbitrary description text for the endpoint. + // (String) Description *string `json:"description,omitempty" tf:"description,omitempty"` - // ID of the folder to create the endpoint in. If it is not provided, the default provider folder is used. + // (String) FolderID *string `json:"folderId,omitempty" tf:"folder_id,omitempty"` - // (Computed) Identifier of a new Data Transfer endpoint. + // (String) The ID of this resource. ID *string `json:"id,omitempty" tf:"id,omitempty"` - // A set of key/value label pairs to assign to the Data Transfer endpoint. + // (Map of String) // +mapType=granular Labels map[string]*string `json:"labels,omitempty" tf:"labels,omitempty"` - // Name of the endpoint. + // (String) Name *string `json:"name,omitempty" tf:"name,omitempty"` - // Settings for the endpoint. The structure is documented below. + // (Block List, Max: 1) (see below for nested schema) Settings []SettingsObservation `json:"settings,omitempty" tf:"settings,omitempty"` } type EndpointParameters struct { - // Arbitrary description text for the endpoint. + // (String) // +kubebuilder:validation:Optional Description *string `json:"description,omitempty" tf:"description,omitempty"` - // ID of the folder to create the endpoint in. If it is not provided, the default provider folder is used. + // (String) // +crossplane:generate:reference:type=github.com/tagesjump/provider-upjet-yc/apis/resourcemanager/v1alpha1.Folder // +kubebuilder:validation:Optional FolderID *string `json:"folderId,omitempty" tf:"folder_id,omitempty"` @@ -1105,639 +1129,650 @@ type EndpointParameters struct { // +kubebuilder:validation:Optional FolderIDSelector *v1.Selector `json:"folderIdSelector,omitempty" tf:"-"` - // A set of key/value label pairs to assign to the Data Transfer endpoint. + // (Map of String) // +kubebuilder:validation:Optional // +mapType=granular Labels map[string]*string `json:"labels,omitempty" tf:"labels,omitempty"` - // Name of the endpoint. + // (String) // +kubebuilder:validation:Optional Name *string `json:"name,omitempty" tf:"name,omitempty"` - // Settings for the endpoint. The structure is documented below. + // (Block List, Max: 1) (see below for nested schema) // +kubebuilder:validation:Optional Settings []SettingsParameters `json:"settings,omitempty" tf:"settings,omitempty"` } type ExcludedCollectionsInitParameters struct { - // Collection name. + // (String) CollectionName *string `json:"collectionName,omitempty" tf:"collection_name,omitempty"` - // Database name. + // (String) DatabaseName *string `json:"databaseName,omitempty" tf:"database_name,omitempty"` } type ExcludedCollectionsObservation struct { - // Collection name. + // (String) CollectionName *string `json:"collectionName,omitempty" tf:"collection_name,omitempty"` - // Database name. + // (String) DatabaseName *string `json:"databaseName,omitempty" tf:"database_name,omitempty"` } type ExcludedCollectionsParameters struct { - // Collection name. + // (String) // +kubebuilder:validation:Optional CollectionName *string `json:"collectionName,omitempty" tf:"collection_name,omitempty"` - // Database name. + // (String) // +kubebuilder:validation:Optional DatabaseName *string `json:"databaseName,omitempty" tf:"database_name,omitempty"` } type FieldsFieldsInitParameters struct { - // Mark field as Primary Key. + // (Boolean) Key *bool `json:"key,omitempty" tf:"key,omitempty"` - // Field name. + // (String) Name *string `json:"name,omitempty" tf:"name,omitempty"` - // - A path where resulting tables are stored. + // (String) Path *string `json:"path,omitempty" tf:"path,omitempty"` - // Mark field as required. + // (Boolean) Required *bool `json:"required,omitempty" tf:"required,omitempty"` - // Field type, one of: INT64, INT32, INT16, INT8, UINT64, UINT32, UINT16, UINT8, DOUBLE, BOOLEAN, STRING, UTF8, ANY, DATETIME. + // (String) Type *string `json:"type,omitempty" tf:"type,omitempty"` } type FieldsFieldsObservation struct { - // Mark field as Primary Key. + // (Boolean) Key *bool `json:"key,omitempty" tf:"key,omitempty"` - // Field name. + // (String) Name *string `json:"name,omitempty" tf:"name,omitempty"` - // - A path where resulting tables are stored. + // (String) Path *string `json:"path,omitempty" tf:"path,omitempty"` - // Mark field as required. + // (Boolean) Required *bool `json:"required,omitempty" tf:"required,omitempty"` - // Field type, one of: INT64, INT32, INT16, INT8, UINT64, UINT32, UINT16, UINT8, DOUBLE, BOOLEAN, STRING, UTF8, ANY, DATETIME. + // (String) Type *string `json:"type,omitempty" tf:"type,omitempty"` } type FieldsFieldsParameters struct { - // Mark field as Primary Key. + // (Boolean) // +kubebuilder:validation:Optional Key *bool `json:"key,omitempty" tf:"key,omitempty"` - // Field name. + // (String) // +kubebuilder:validation:Optional Name *string `json:"name,omitempty" tf:"name,omitempty"` - // - A path where resulting tables are stored. + // (String) // +kubebuilder:validation:Optional Path *string `json:"path,omitempty" tf:"path,omitempty"` - // Mark field as required. + // (Boolean) // +kubebuilder:validation:Optional Required *bool `json:"required,omitempty" tf:"required,omitempty"` - // Field type, one of: INT64, INT32, INT16, INT8, UINT64, UINT32, UINT16, UINT8, DOUBLE, BOOLEAN, STRING, UTF8, ANY, DATETIME. + // (String) // +kubebuilder:validation:Optional Type *string `json:"type,omitempty" tf:"type,omitempty"` } type FieldsInitParameters struct { - // Description of the data schema in the array of fields structure (documented below). + // (Block List, Max: 1) (see below for nested schema) Fields []FieldsFieldsInitParameters `json:"fields,omitempty" tf:"fields,omitempty"` } type FieldsObservation struct { - // Description of the data schema in the array of fields structure (documented below). + // (Block List, Max: 1) (see below for nested schema) Fields []FieldsFieldsObservation `json:"fields,omitempty" tf:"fields,omitempty"` } type FieldsParameters struct { - // Description of the data schema in the array of fields structure (documented below). + // (Block List, Max: 1) (see below for nested schema) // +kubebuilder:validation:Optional Fields []FieldsFieldsParameters `json:"fields,omitempty" tf:"fields,omitempty"` } type JSONParserDataSchemaFieldsFieldsInitParameters struct { - // Mark field as Primary Key. + // (Boolean) Key *bool `json:"key,omitempty" tf:"key,omitempty"` - // Field name. + // (String) Name *string `json:"name,omitempty" tf:"name,omitempty"` - // - A path where resulting tables are stored. + // (String) Path *string `json:"path,omitempty" tf:"path,omitempty"` - // Mark field as required. + // (Boolean) Required *bool `json:"required,omitempty" tf:"required,omitempty"` - // Field type, one of: INT64, INT32, INT16, INT8, UINT64, UINT32, UINT16, UINT8, DOUBLE, BOOLEAN, STRING, UTF8, ANY, DATETIME. + // (String) Type *string `json:"type,omitempty" tf:"type,omitempty"` } type JSONParserDataSchemaFieldsFieldsObservation struct { - // Mark field as Primary Key. + // (Boolean) Key *bool `json:"key,omitempty" tf:"key,omitempty"` - // Field name. + // (String) Name *string `json:"name,omitempty" tf:"name,omitempty"` - // - A path where resulting tables are stored. + // (String) Path *string `json:"path,omitempty" tf:"path,omitempty"` - // Mark field as required. + // (Boolean) Required *bool `json:"required,omitempty" tf:"required,omitempty"` - // Field type, one of: INT64, INT32, INT16, INT8, UINT64, UINT32, UINT16, UINT8, DOUBLE, BOOLEAN, STRING, UTF8, ANY, DATETIME. + // (String) Type *string `json:"type,omitempty" tf:"type,omitempty"` } type JSONParserDataSchemaFieldsFieldsParameters struct { - // Mark field as Primary Key. + // (Boolean) // +kubebuilder:validation:Optional Key *bool `json:"key,omitempty" tf:"key,omitempty"` - // Field name. + // (String) // +kubebuilder:validation:Optional Name *string `json:"name,omitempty" tf:"name,omitempty"` - // - A path where resulting tables are stored. + // (String) // +kubebuilder:validation:Optional Path *string `json:"path,omitempty" tf:"path,omitempty"` - // Mark field as required. + // (Boolean) // +kubebuilder:validation:Optional Required *bool `json:"required,omitempty" tf:"required,omitempty"` - // Field type, one of: INT64, INT32, INT16, INT8, UINT64, UINT32, UINT16, UINT8, DOUBLE, BOOLEAN, STRING, UTF8, ANY, DATETIME. + // (String) // +kubebuilder:validation:Optional Type *string `json:"type,omitempty" tf:"type,omitempty"` } type JSONParserDataSchemaFieldsInitParameters struct { - // Description of the data schema in the array of fields structure (documented below). + // (Block List, Max: 1) (see below for nested schema) Fields []JSONParserDataSchemaFieldsFieldsInitParameters `json:"fields,omitempty" tf:"fields,omitempty"` } type JSONParserDataSchemaFieldsObservation struct { - // Description of the data schema in the array of fields structure (documented below). + // (Block List, Max: 1) (see below for nested schema) Fields []JSONParserDataSchemaFieldsFieldsObservation `json:"fields,omitempty" tf:"fields,omitempty"` } type JSONParserDataSchemaFieldsParameters struct { - // Description of the data schema in the array of fields structure (documented below). + // (Block List, Max: 1) (see below for nested schema) // +kubebuilder:validation:Optional Fields []JSONParserDataSchemaFieldsFieldsParameters `json:"fields,omitempty" tf:"fields,omitempty"` } type JSONParserDataSchemaInitParameters struct { - // Description of the data schema in the array of fields structure (documented below). + // (Block List, Max: 1) (see below for nested schema) Fields []JSONParserDataSchemaFieldsInitParameters `json:"fields,omitempty" tf:"fields,omitempty"` - // Description of the data schema as JSON specification. + // (String) JSONFields *string `json:"jsonFields,omitempty" tf:"json_fields,omitempty"` } type JSONParserDataSchemaObservation struct { - // Description of the data schema in the array of fields structure (documented below). + // (Block List, Max: 1) (see below for nested schema) Fields []JSONParserDataSchemaFieldsObservation `json:"fields,omitempty" tf:"fields,omitempty"` - // Description of the data schema as JSON specification. + // (String) JSONFields *string `json:"jsonFields,omitempty" tf:"json_fields,omitempty"` } type JSONParserDataSchemaParameters struct { - // Description of the data schema in the array of fields structure (documented below). + // (Block List, Max: 1) (see below for nested schema) // +kubebuilder:validation:Optional Fields []JSONParserDataSchemaFieldsParameters `json:"fields,omitempty" tf:"fields,omitempty"` - // Description of the data schema as JSON specification. + // (String) // +kubebuilder:validation:Optional JSONFields *string `json:"jsonFields,omitempty" tf:"json_fields,omitempty"` } type JSONParserInitParameters struct { - // Add fields, that are not in the schema, into the _rest column. + // (Boolean) AddRestColumn *bool `json:"addRestColumn,omitempty" tf:"add_rest_column,omitempty"` - // Data parsing scheme.The structure is documented below. + // (Block List, Max: 1) (see below for nested schema) DataSchema []DataSchemaInitParameters `json:"dataSchema,omitempty" tf:"data_schema,omitempty"` - // Allow null keys. If false - null keys will be putted to unparsed data + // (Boolean) NullKeysAllowed *bool `json:"nullKeysAllowed,omitempty" tf:"null_keys_allowed,omitempty"` - // Allow unescape string values. + // (Boolean) UnescapeStringValues *bool `json:"unescapeStringValues,omitempty" tf:"unescape_string_values,omitempty"` } type JSONParserObservation struct { - // Add fields, that are not in the schema, into the _rest column. + // (Boolean) AddRestColumn *bool `json:"addRestColumn,omitempty" tf:"add_rest_column,omitempty"` - // Data parsing scheme.The structure is documented below. + // (Block List, Max: 1) (see below for nested schema) DataSchema []DataSchemaObservation `json:"dataSchema,omitempty" tf:"data_schema,omitempty"` - // Allow null keys. If false - null keys will be putted to unparsed data + // (Boolean) NullKeysAllowed *bool `json:"nullKeysAllowed,omitempty" tf:"null_keys_allowed,omitempty"` - // Allow unescape string values. + // (Boolean) UnescapeStringValues *bool `json:"unescapeStringValues,omitempty" tf:"unescape_string_values,omitempty"` } type JSONParserParameters struct { - // Add fields, that are not in the schema, into the _rest column. + // (Boolean) // +kubebuilder:validation:Optional AddRestColumn *bool `json:"addRestColumn,omitempty" tf:"add_rest_column,omitempty"` - // Data parsing scheme.The structure is documented below. + // (Block List, Max: 1) (see below for nested schema) // +kubebuilder:validation:Optional DataSchema []DataSchemaParameters `json:"dataSchema,omitempty" tf:"data_schema,omitempty"` - // Allow null keys. If false - null keys will be putted to unparsed data + // (Boolean) // +kubebuilder:validation:Optional NullKeysAllowed *bool `json:"nullKeysAllowed,omitempty" tf:"null_keys_allowed,omitempty"` - // Allow unescape string values. + // (Boolean) // +kubebuilder:validation:Optional UnescapeStringValues *bool `json:"unescapeStringValues,omitempty" tf:"unescape_string_values,omitempty"` } type KafkaSourceConnectionInitParameters struct { - // Identifier of the Managed Kafka cluster. + // (String) ClusterID *string `json:"clusterId,omitempty" tf:"cluster_id,omitempty"` - // Connection settings of the on-premise PostgreSQL server. + // (Block List, Max: 1) (see below for nested schema) OnPremise []ConnectionOnPremiseInitParameters `json:"onPremise,omitempty" tf:"on_premise,omitempty"` } type KafkaSourceConnectionObservation struct { - // Identifier of the Managed Kafka cluster. + // (String) ClusterID *string `json:"clusterId,omitempty" tf:"cluster_id,omitempty"` - // Connection settings of the on-premise PostgreSQL server. + // (Block List, Max: 1) (see below for nested schema) OnPremise []ConnectionOnPremiseObservation `json:"onPremise,omitempty" tf:"on_premise,omitempty"` } type KafkaSourceConnectionParameters struct { - // Identifier of the Managed Kafka cluster. + // (String) // +kubebuilder:validation:Optional ClusterID *string `json:"clusterId,omitempty" tf:"cluster_id,omitempty"` - // Connection settings of the on-premise PostgreSQL server. + // (Block List, Max: 1) (see below for nested schema) // +kubebuilder:validation:Optional OnPremise []ConnectionOnPremiseParameters `json:"onPremise,omitempty" tf:"on_premise,omitempty"` } type KafkaSourceInitParameters struct { - // Authentication data. + // (Block List, Max: 1) (see below for nested schema) Auth []AuthInitParameters `json:"auth,omitempty" tf:"auth,omitempty"` - // Connection settings. + // (Block List, Max: 1) (see below for nested schema) Connection []KafkaSourceConnectionInitParameters `json:"connection,omitempty" tf:"connection,omitempty"` - // - Data parsing rules. + // (Block List, Max: 1) (see below for nested schema) Parser []ParserInitParameters `json:"parser,omitempty" tf:"parser,omitempty"` - // - List of security groups that the transfer associated with this endpoint should use. + // (List of String) SecurityGroups []*string `json:"securityGroups,omitempty" tf:"security_groups,omitempty"` - // Full topic name + // (String) TopicName *string `json:"topicName,omitempty" tf:"topic_name,omitempty"` - // The list of full source topic names. + // (List of String) TopicNames []*string `json:"topicNames,omitempty" tf:"topic_names,omitempty"` - // Transform data with a custom Cloud Function. + // (Block List, Max: 1) (see below for nested schema) Transformer []TransformerInitParameters `json:"transformer,omitempty" tf:"transformer,omitempty"` } type KafkaSourceObservation struct { - // Authentication data. + // (Block List, Max: 1) (see below for nested schema) Auth []AuthObservation `json:"auth,omitempty" tf:"auth,omitempty"` - // Connection settings. + // (Block List, Max: 1) (see below for nested schema) Connection []KafkaSourceConnectionObservation `json:"connection,omitempty" tf:"connection,omitempty"` - // - Data parsing rules. + // (Block List, Max: 1) (see below for nested schema) Parser []ParserObservation `json:"parser,omitempty" tf:"parser,omitempty"` - // - List of security groups that the transfer associated with this endpoint should use. + // (List of String) SecurityGroups []*string `json:"securityGroups,omitempty" tf:"security_groups,omitempty"` - // Full topic name + // (String) TopicName *string `json:"topicName,omitempty" tf:"topic_name,omitempty"` - // The list of full source topic names. + // (List of String) TopicNames []*string `json:"topicNames,omitempty" tf:"topic_names,omitempty"` - // Transform data with a custom Cloud Function. + // (Block List, Max: 1) (see below for nested schema) Transformer []TransformerObservation `json:"transformer,omitempty" tf:"transformer,omitempty"` } type KafkaSourceParameters struct { - // Authentication data. + // (Block List, Max: 1) (see below for nested schema) // +kubebuilder:validation:Optional Auth []AuthParameters `json:"auth,omitempty" tf:"auth,omitempty"` - // Connection settings. + // (Block List, Max: 1) (see below for nested schema) // +kubebuilder:validation:Optional Connection []KafkaSourceConnectionParameters `json:"connection,omitempty" tf:"connection,omitempty"` - // - Data parsing rules. + // (Block List, Max: 1) (see below for nested schema) // +kubebuilder:validation:Optional Parser []ParserParameters `json:"parser,omitempty" tf:"parser,omitempty"` - // - List of security groups that the transfer associated with this endpoint should use. + // (List of String) // +kubebuilder:validation:Optional SecurityGroups []*string `json:"securityGroups,omitempty" tf:"security_groups,omitempty"` - // Full topic name + // (String) // +kubebuilder:validation:Optional TopicName *string `json:"topicName,omitempty" tf:"topic_name,omitempty"` - // The list of full source topic names. + // (List of String) // +kubebuilder:validation:Optional TopicNames []*string `json:"topicNames,omitempty" tf:"topic_names,omitempty"` - // Transform data with a custom Cloud Function. + // (Block List, Max: 1) (see below for nested schema) // +kubebuilder:validation:Optional Transformer []TransformerParameters `json:"transformer,omitempty" tf:"transformer,omitempty"` } type KafkaTargetAuthInitParameters struct { - // Connection without authentication data. + // (Block List, Max: 1) (see below for nested schema) NoAuth []AuthNoAuthInitParameters `json:"noAuth,omitempty" tf:"no_auth,omitempty"` - // Authentication using sasl. + // (Block List, Max: 1) (see below for nested schema) Sasl []AuthSaslInitParameters `json:"sasl,omitempty" tf:"sasl,omitempty"` } type KafkaTargetAuthObservation struct { - // Connection without authentication data. + // (Block List, Max: 1) (see below for nested schema) NoAuth []AuthNoAuthParameters `json:"noAuth,omitempty" tf:"no_auth,omitempty"` - // Authentication using sasl. + // (Block List, Max: 1) (see below for nested schema) Sasl []AuthSaslObservation `json:"sasl,omitempty" tf:"sasl,omitempty"` } type KafkaTargetAuthParameters struct { - // Connection without authentication data. + // (Block List, Max: 1) (see below for nested schema) // +kubebuilder:validation:Optional NoAuth []AuthNoAuthParameters `json:"noAuth,omitempty" tf:"no_auth,omitempty"` - // Authentication using sasl. + // (Block List, Max: 1) (see below for nested schema) // +kubebuilder:validation:Optional Sasl []AuthSaslParameters `json:"sasl,omitempty" tf:"sasl,omitempty"` } type KafkaTargetConnectionInitParameters struct { - // Identifier of the Managed Kafka cluster. + // (String) ClusterID *string `json:"clusterId,omitempty" tf:"cluster_id,omitempty"` - // Connection settings of the on-premise PostgreSQL server. + // (Block List, Max: 1) (see below for nested schema) OnPremise []KafkaTargetConnectionOnPremiseInitParameters `json:"onPremise,omitempty" tf:"on_premise,omitempty"` } type KafkaTargetConnectionObservation struct { - // Identifier of the Managed Kafka cluster. + // (String) ClusterID *string `json:"clusterId,omitempty" tf:"cluster_id,omitempty"` - // Connection settings of the on-premise PostgreSQL server. + // (Block List, Max: 1) (see below for nested schema) OnPremise []KafkaTargetConnectionOnPremiseObservation `json:"onPremise,omitempty" tf:"on_premise,omitempty"` } type KafkaTargetConnectionOnPremiseInitParameters struct { - // List of Kafka broker URLs. + // (List of String) BrokerUrls []*string `json:"brokerUrls,omitempty" tf:"broker_urls,omitempty"` - // - Identifier of the Yandex Cloud VPC subnetwork to user for accessing the database. If omitted, the server has to be accessible via Internet. + // (String) SubnetID *string `json:"subnetId,omitempty" tf:"subnet_id,omitempty"` - // TLS settings for the server connection. Empty implies plaintext connection. The structure is documented below. + // (Block List, Max: 1) (see below for nested schema) TLSMode []KafkaTargetConnectionOnPremiseTLSModeInitParameters `json:"tlsMode,omitempty" tf:"tls_mode,omitempty"` } type KafkaTargetConnectionOnPremiseObservation struct { - // List of Kafka broker URLs. + // (List of String) BrokerUrls []*string `json:"brokerUrls,omitempty" tf:"broker_urls,omitempty"` - // - Identifier of the Yandex Cloud VPC subnetwork to user for accessing the database. If omitted, the server has to be accessible via Internet. + // (String) SubnetID *string `json:"subnetId,omitempty" tf:"subnet_id,omitempty"` - // TLS settings for the server connection. Empty implies plaintext connection. The structure is documented below. + // (Block List, Max: 1) (see below for nested schema) TLSMode []KafkaTargetConnectionOnPremiseTLSModeObservation `json:"tlsMode,omitempty" tf:"tls_mode,omitempty"` } type KafkaTargetConnectionOnPremiseParameters struct { - // List of Kafka broker URLs. + // (List of String) // +kubebuilder:validation:Optional BrokerUrls []*string `json:"brokerUrls,omitempty" tf:"broker_urls,omitempty"` - // - Identifier of the Yandex Cloud VPC subnetwork to user for accessing the database. If omitted, the server has to be accessible via Internet. + // (String) // +kubebuilder:validation:Optional SubnetID *string `json:"subnetId,omitempty" tf:"subnet_id,omitempty"` - // TLS settings for the server connection. Empty implies plaintext connection. The structure is documented below. + // (Block List, Max: 1) (see below for nested schema) // +kubebuilder:validation:Optional TLSMode []KafkaTargetConnectionOnPremiseTLSModeParameters `json:"tlsMode,omitempty" tf:"tls_mode,omitempty"` } type KafkaTargetConnectionOnPremiseTLSModeInitParameters struct { - // Empty block designating that the connection is not secured, i.e. plaintext connection. + // (Block List, Max: 1) (see below for nested schema) Disabled []ConnectionOnPremiseTLSModeDisabledInitParameters `json:"disabled,omitempty" tf:"disabled,omitempty"` - // If this attribute is not an empty block, then TLS is used for the server connection. The structure is documented below. + // (Block List, Max: 1) (see below for nested schema) Enabled []ConnectionOnPremiseTLSModeEnabledInitParameters `json:"enabled,omitempty" tf:"enabled,omitempty"` } type KafkaTargetConnectionOnPremiseTLSModeObservation struct { - // Empty block designating that the connection is not secured, i.e. plaintext connection. + // (Block List, Max: 1) (see below for nested schema) Disabled []ConnectionOnPremiseTLSModeDisabledParameters `json:"disabled,omitempty" tf:"disabled,omitempty"` - // If this attribute is not an empty block, then TLS is used for the server connection. The structure is documented below. + // (Block List, Max: 1) (see below for nested schema) Enabled []ConnectionOnPremiseTLSModeEnabledObservation `json:"enabled,omitempty" tf:"enabled,omitempty"` } type KafkaTargetConnectionOnPremiseTLSModeParameters struct { - // Empty block designating that the connection is not secured, i.e. plaintext connection. + // (Block List, Max: 1) (see below for nested schema) // +kubebuilder:validation:Optional Disabled []ConnectionOnPremiseTLSModeDisabledParameters `json:"disabled,omitempty" tf:"disabled,omitempty"` - // If this attribute is not an empty block, then TLS is used for the server connection. The structure is documented below. + // (Block List, Max: 1) (see below for nested schema) // +kubebuilder:validation:Optional Enabled []ConnectionOnPremiseTLSModeEnabledParameters `json:"enabled,omitempty" tf:"enabled,omitempty"` } type KafkaTargetConnectionParameters struct { - // Identifier of the Managed Kafka cluster. + // (String) // +kubebuilder:validation:Optional ClusterID *string `json:"clusterId,omitempty" tf:"cluster_id,omitempty"` - // Connection settings of the on-premise PostgreSQL server. + // (Block List, Max: 1) (see below for nested schema) // +kubebuilder:validation:Optional OnPremise []KafkaTargetConnectionOnPremiseParameters `json:"onPremise,omitempty" tf:"on_premise,omitempty"` } type KafkaTargetInitParameters struct { - // Authentication data. + // (Block List, Max: 1) (see below for nested schema) Auth []KafkaTargetAuthInitParameters `json:"auth,omitempty" tf:"auth,omitempty"` - // Connection settings. + // (Block List, Max: 1) (see below for nested schema) Connection []KafkaTargetConnectionInitParameters `json:"connection,omitempty" tf:"connection,omitempty"` - // - List of security groups that the transfer associated with this endpoint should use. + // (List of String) SecurityGroups []*string `json:"securityGroups,omitempty" tf:"security_groups,omitempty"` - // - Data serialization format. + // (Block List, Max: 1) (see below for nested schema) Serializer []SerializerInitParameters `json:"serializer,omitempty" tf:"serializer,omitempty"` - // Target topic settings. + // (Block List, Max: 1) (see below for nested schema) TopicSettings []TopicSettingsInitParameters `json:"topicSettings,omitempty" tf:"topic_settings,omitempty"` } type KafkaTargetObservation struct { - // Authentication data. + // (Block List, Max: 1) (see below for nested schema) Auth []KafkaTargetAuthObservation `json:"auth,omitempty" tf:"auth,omitempty"` - // Connection settings. + // (Block List, Max: 1) (see below for nested schema) Connection []KafkaTargetConnectionObservation `json:"connection,omitempty" tf:"connection,omitempty"` - // - List of security groups that the transfer associated with this endpoint should use. + // (List of String) SecurityGroups []*string `json:"securityGroups,omitempty" tf:"security_groups,omitempty"` - // - Data serialization format. + // (Block List, Max: 1) (see below for nested schema) Serializer []SerializerObservation `json:"serializer,omitempty" tf:"serializer,omitempty"` - // Target topic settings. + // (Block List, Max: 1) (see below for nested schema) TopicSettings []TopicSettingsObservation `json:"topicSettings,omitempty" tf:"topic_settings,omitempty"` } type KafkaTargetParameters struct { - // Authentication data. + // (Block List, Max: 1) (see below for nested schema) // +kubebuilder:validation:Optional Auth []KafkaTargetAuthParameters `json:"auth,omitempty" tf:"auth,omitempty"` - // Connection settings. + // (Block List, Max: 1) (see below for nested schema) // +kubebuilder:validation:Optional Connection []KafkaTargetConnectionParameters `json:"connection,omitempty" tf:"connection,omitempty"` - // - List of security groups that the transfer associated with this endpoint should use. + // (List of String) // +kubebuilder:validation:Optional SecurityGroups []*string `json:"securityGroups,omitempty" tf:"security_groups,omitempty"` - // - Data serialization format. + // (Block List, Max: 1) (see below for nested schema) // +kubebuilder:validation:Optional Serializer []SerializerParameters `json:"serializer,omitempty" tf:"serializer,omitempty"` - // Target topic settings. + // (Block List, Max: 1) (see below for nested schema) // +kubebuilder:validation:Optional TopicSettings []TopicSettingsParameters `json:"topicSettings,omitempty" tf:"topic_settings,omitempty"` } type MappingInitParameters struct { - // The value of the column. Currently only the string columns are supported. The structure is documented below. + // (Block List, Max: 1) (see below for nested schema) ColumnValue []ColumnValueInitParameters `json:"columnValue,omitempty" tf:"column_value,omitempty"` - // The name of the shard into which all the rows with the specified column_value will be written. + // (String) ShardName *string `json:"shardName,omitempty" tf:"shard_name,omitempty"` } type MappingObservation struct { - // The value of the column. Currently only the string columns are supported. The structure is documented below. + // (Block List, Max: 1) (see below for nested schema) ColumnValue []ColumnValueObservation `json:"columnValue,omitempty" tf:"column_value,omitempty"` - // The name of the shard into which all the rows with the specified column_value will be written. + // (String) ShardName *string `json:"shardName,omitempty" tf:"shard_name,omitempty"` } type MappingParameters struct { - // The value of the column. Currently only the string columns are supported. The structure is documented below. + // (Block List, Max: 1) (see below for nested schema) // +kubebuilder:validation:Optional ColumnValue []ColumnValueParameters `json:"columnValue,omitempty" tf:"column_value,omitempty"` - // The name of the shard into which all the rows with the specified column_value will be written. + // (String) // +kubebuilder:validation:Optional ShardName *string `json:"shardName,omitempty" tf:"shard_name,omitempty"` } type MetrikaSourceInitParameters struct { + + // (List of Number) CounterIds []*float64 `json:"counterIds,omitempty" tf:"counter_ids,omitempty"` + // (Block List) (see below for nested schema) Streams []StreamsInitParameters `json:"streams,omitempty" tf:"streams,omitempty"` + // (Block List, Max: 1) (see below for nested schema) Token []TokenInitParameters `json:"token,omitempty" tf:"token,omitempty"` } type MetrikaSourceObservation struct { + + // (List of Number) CounterIds []*float64 `json:"counterIds,omitempty" tf:"counter_ids,omitempty"` + // (Block List) (see below for nested schema) Streams []StreamsObservation `json:"streams,omitempty" tf:"streams,omitempty"` + // (Block List, Max: 1) (see below for nested schema) Token []TokenParameters `json:"token,omitempty" tf:"token,omitempty"` } type MetrikaSourceParameters struct { + // (List of Number) // +kubebuilder:validation:Optional CounterIds []*float64 `json:"counterIds,omitempty" tf:"counter_ids,omitempty"` + // (Block List) (see below for nested schema) // +kubebuilder:validation:Optional Streams []StreamsParameters `json:"streams,omitempty" tf:"streams,omitempty"` + // (Block List, Max: 1) (see below for nested schema) // +kubebuilder:validation:Optional Token []TokenParameters `json:"token,omitempty" tf:"token,omitempty"` } type MongoSourceConnectionConnectionOptionsInitParameters struct { - // Name of the database associated with the credentials. + // (String) AuthSource *string `json:"authSource,omitempty" tf:"auth_source,omitempty"` - // Identifier of the Managed PostgreSQL cluster. + // (String) // +crossplane:generate:reference:type=github.com/tagesjump/provider-upjet-yc/apis/mdb/v1alpha1.MongodbCluster MdbClusterID *string `json:"mdbClusterId,omitempty" tf:"mdb_cluster_id,omitempty"` @@ -1749,41 +1784,41 @@ type MongoSourceConnectionConnectionOptionsInitParameters struct { // +kubebuilder:validation:Optional MdbClusterIDSelector *v1.Selector `json:"mdbClusterIdSelector,omitempty" tf:"-"` - // Connection settings of the on-premise PostgreSQL server. + // (Block List, Max: 1) (see below for nested schema) OnPremise []ConnectionConnectionOptionsOnPremiseInitParameters `json:"onPremise,omitempty" tf:"on_premise,omitempty"` - // Password for the database access. This is a block with a single field named raw which should contain the password. + // (Block List, Max: 1) (see below for nested schema) Password []ConnectionConnectionOptionsPasswordInitParameters `json:"password,omitempty" tf:"password,omitempty"` - // User for the database access. + // (String) User *string `json:"user,omitempty" tf:"user,omitempty"` } type MongoSourceConnectionConnectionOptionsObservation struct { - // Name of the database associated with the credentials. + // (String) AuthSource *string `json:"authSource,omitempty" tf:"auth_source,omitempty"` - // Identifier of the Managed PostgreSQL cluster. + // (String) MdbClusterID *string `json:"mdbClusterId,omitempty" tf:"mdb_cluster_id,omitempty"` - // Connection settings of the on-premise PostgreSQL server. + // (Block List, Max: 1) (see below for nested schema) OnPremise []ConnectionConnectionOptionsOnPremiseObservation `json:"onPremise,omitempty" tf:"on_premise,omitempty"` - // Password for the database access. This is a block with a single field named raw which should contain the password. + // (Block List, Max: 1) (see below for nested schema) Password []ConnectionConnectionOptionsPasswordParameters `json:"password,omitempty" tf:"password,omitempty"` - // User for the database access. + // (String) User *string `json:"user,omitempty" tf:"user,omitempty"` } type MongoSourceConnectionConnectionOptionsParameters struct { - // Name of the database associated with the credentials. + // (String) // +kubebuilder:validation:Optional AuthSource *string `json:"authSource,omitempty" tf:"auth_source,omitempty"` - // Identifier of the Managed PostgreSQL cluster. + // (String) // +crossplane:generate:reference:type=github.com/tagesjump/provider-upjet-yc/apis/mdb/v1alpha1.MongodbCluster // +kubebuilder:validation:Optional MdbClusterID *string `json:"mdbClusterId,omitempty" tf:"mdb_cluster_id,omitempty"` @@ -1796,56 +1831,56 @@ type MongoSourceConnectionConnectionOptionsParameters struct { // +kubebuilder:validation:Optional MdbClusterIDSelector *v1.Selector `json:"mdbClusterIdSelector,omitempty" tf:"-"` - // Connection settings of the on-premise PostgreSQL server. + // (Block List, Max: 1) (see below for nested schema) // +kubebuilder:validation:Optional OnPremise []ConnectionConnectionOptionsOnPremiseParameters `json:"onPremise,omitempty" tf:"on_premise,omitempty"` - // Password for the database access. This is a block with a single field named raw which should contain the password. + // (Block List, Max: 1) (see below for nested schema) // +kubebuilder:validation:Optional Password []ConnectionConnectionOptionsPasswordParameters `json:"password,omitempty" tf:"password,omitempty"` - // User for the database access. + // (String) // +kubebuilder:validation:Optional User *string `json:"user,omitempty" tf:"user,omitempty"` } type MongoSourceConnectionInitParameters struct { - // Connection options. The structure is documented below. + // (Block List, Max: 1) (see below for nested schema) ConnectionOptions []MongoSourceConnectionConnectionOptionsInitParameters `json:"connectionOptions,omitempty" tf:"connection_options,omitempty"` } type MongoSourceConnectionObservation struct { - // Connection options. The structure is documented below. + // (Block List, Max: 1) (see below for nested schema) ConnectionOptions []MongoSourceConnectionConnectionOptionsObservation `json:"connectionOptions,omitempty" tf:"connection_options,omitempty"` } type MongoSourceConnectionParameters struct { - // Connection options. The structure is documented below. + // (Block List, Max: 1) (see below for nested schema) // +kubebuilder:validation:Optional ConnectionOptions []MongoSourceConnectionConnectionOptionsParameters `json:"connectionOptions,omitempty" tf:"connection_options,omitempty"` } type MongoSourceInitParameters struct { - // The list of the MongoDB collections that should be transferred. If omitted, all available collections will be transferred. The structure of the list item is documented below. + // (Block List) (see below for nested schema) Collections []CollectionsInitParameters `json:"collections,omitempty" tf:"collections,omitempty"` - // Connection settings. + // (Block List, Max: 1) (see below for nested schema) Connection []MongoSourceConnectionInitParameters `json:"connection,omitempty" tf:"connection,omitempty"` - // The list of the MongoDB collections that should not be transferred. + // (Block List) (see below for nested schema) ExcludedCollections []ExcludedCollectionsInitParameters `json:"excludedCollections,omitempty" tf:"excluded_collections,omitempty"` - // whether the secondary server should be preferred to the primary when copying data. + // (Boolean) SecondaryPreferredMode *bool `json:"secondaryPreferredMode,omitempty" tf:"secondary_preferred_mode,omitempty"` - // - List of security groups that the transfer associated with this endpoint should use. + // (List of String) SecurityGroups []*string `json:"securityGroups,omitempty" tf:"security_groups,omitempty"` - // - Identifier of the Yandex Cloud VPC subnetwork to user for accessing the database. If omitted, the server has to be accessible via Internet. + // (String) // +crossplane:generate:reference:type=github.com/tagesjump/provider-upjet-yc/apis/vpc/v1alpha1.Subnet SubnetID *string `json:"subnetId,omitempty" tf:"subnet_id,omitempty"` @@ -1860,48 +1895,48 @@ type MongoSourceInitParameters struct { type MongoSourceObservation struct { - // The list of the MongoDB collections that should be transferred. If omitted, all available collections will be transferred. The structure of the list item is documented below. + // (Block List) (see below for nested schema) Collections []CollectionsObservation `json:"collections,omitempty" tf:"collections,omitempty"` - // Connection settings. + // (Block List, Max: 1) (see below for nested schema) Connection []MongoSourceConnectionObservation `json:"connection,omitempty" tf:"connection,omitempty"` - // The list of the MongoDB collections that should not be transferred. + // (Block List) (see below for nested schema) ExcludedCollections []ExcludedCollectionsObservation `json:"excludedCollections,omitempty" tf:"excluded_collections,omitempty"` - // whether the secondary server should be preferred to the primary when copying data. + // (Boolean) SecondaryPreferredMode *bool `json:"secondaryPreferredMode,omitempty" tf:"secondary_preferred_mode,omitempty"` - // - List of security groups that the transfer associated with this endpoint should use. + // (List of String) SecurityGroups []*string `json:"securityGroups,omitempty" tf:"security_groups,omitempty"` - // - Identifier of the Yandex Cloud VPC subnetwork to user for accessing the database. If omitted, the server has to be accessible via Internet. + // (String) SubnetID *string `json:"subnetId,omitempty" tf:"subnet_id,omitempty"` } type MongoSourceParameters struct { - // The list of the MongoDB collections that should be transferred. If omitted, all available collections will be transferred. The structure of the list item is documented below. + // (Block List) (see below for nested schema) // +kubebuilder:validation:Optional Collections []CollectionsParameters `json:"collections,omitempty" tf:"collections,omitempty"` - // Connection settings. + // (Block List, Max: 1) (see below for nested schema) // +kubebuilder:validation:Optional Connection []MongoSourceConnectionParameters `json:"connection,omitempty" tf:"connection,omitempty"` - // The list of the MongoDB collections that should not be transferred. + // (Block List) (see below for nested schema) // +kubebuilder:validation:Optional ExcludedCollections []ExcludedCollectionsParameters `json:"excludedCollections,omitempty" tf:"excluded_collections,omitempty"` - // whether the secondary server should be preferred to the primary when copying data. + // (Boolean) // +kubebuilder:validation:Optional SecondaryPreferredMode *bool `json:"secondaryPreferredMode,omitempty" tf:"secondary_preferred_mode,omitempty"` - // - List of security groups that the transfer associated with this endpoint should use. + // (List of String) // +kubebuilder:validation:Optional SecurityGroups []*string `json:"securityGroups,omitempty" tf:"security_groups,omitempty"` - // - Identifier of the Yandex Cloud VPC subnetwork to user for accessing the database. If omitted, the server has to be accessible via Internet. + // (String) // +crossplane:generate:reference:type=github.com/tagesjump/provider-upjet-yc/apis/vpc/v1alpha1.Subnet // +kubebuilder:validation:Optional SubnetID *string `json:"subnetId,omitempty" tf:"subnet_id,omitempty"` @@ -1917,10 +1952,10 @@ type MongoSourceParameters struct { type MongoTargetConnectionConnectionOptionsInitParameters struct { - // Name of the database associated with the credentials. + // (String) AuthSource *string `json:"authSource,omitempty" tf:"auth_source,omitempty"` - // Identifier of the Managed PostgreSQL cluster. + // (String) // +crossplane:generate:reference:type=github.com/tagesjump/provider-upjet-yc/apis/mdb/v1alpha1.MongodbCluster MdbClusterID *string `json:"mdbClusterId,omitempty" tf:"mdb_cluster_id,omitempty"` @@ -1932,90 +1967,90 @@ type MongoTargetConnectionConnectionOptionsInitParameters struct { // +kubebuilder:validation:Optional MdbClusterIDSelector *v1.Selector `json:"mdbClusterIdSelector,omitempty" tf:"-"` - // Connection settings of the on-premise PostgreSQL server. + // (Block List, Max: 1) (see below for nested schema) OnPremise []MongoTargetConnectionConnectionOptionsOnPremiseInitParameters `json:"onPremise,omitempty" tf:"on_premise,omitempty"` - // Password for the database access. This is a block with a single field named raw which should contain the password. + // (Block List, Max: 1) (see below for nested schema) Password []MongoTargetConnectionConnectionOptionsPasswordInitParameters `json:"password,omitempty" tf:"password,omitempty"` - // User for the database access. + // (String) User *string `json:"user,omitempty" tf:"user,omitempty"` } type MongoTargetConnectionConnectionOptionsObservation struct { - // Name of the database associated with the credentials. + // (String) AuthSource *string `json:"authSource,omitempty" tf:"auth_source,omitempty"` - // Identifier of the Managed PostgreSQL cluster. + // (String) MdbClusterID *string `json:"mdbClusterId,omitempty" tf:"mdb_cluster_id,omitempty"` - // Connection settings of the on-premise PostgreSQL server. + // (Block List, Max: 1) (see below for nested schema) OnPremise []MongoTargetConnectionConnectionOptionsOnPremiseObservation `json:"onPremise,omitempty" tf:"on_premise,omitempty"` - // Password for the database access. This is a block with a single field named raw which should contain the password. + // (Block List, Max: 1) (see below for nested schema) Password []MongoTargetConnectionConnectionOptionsPasswordParameters `json:"password,omitempty" tf:"password,omitempty"` - // User for the database access. + // (String) User *string `json:"user,omitempty" tf:"user,omitempty"` } type MongoTargetConnectionConnectionOptionsOnPremiseInitParameters struct { - // List of host names of the PostgreSQL server. Exactly one host is expected currently. + // (List of String) Hosts []*string `json:"hosts,omitempty" tf:"hosts,omitempty"` - // Port for the database connection. + // (Number) Port *float64 `json:"port,omitempty" tf:"port,omitempty"` - // Replica set name. + // (String) ReplicaSet *string `json:"replicaSet,omitempty" tf:"replica_set,omitempty"` - // TLS settings for the server connection. Empty implies plaintext connection. The structure is documented below. + // (Block List, Max: 1) (see below for nested schema) TLSMode []ConnectionConnectionOptionsOnPremiseTLSModeInitParameters `json:"tlsMode,omitempty" tf:"tls_mode,omitempty"` } type MongoTargetConnectionConnectionOptionsOnPremiseObservation struct { - // List of host names of the PostgreSQL server. Exactly one host is expected currently. + // (List of String) Hosts []*string `json:"hosts,omitempty" tf:"hosts,omitempty"` - // Port for the database connection. + // (Number) Port *float64 `json:"port,omitempty" tf:"port,omitempty"` - // Replica set name. + // (String) ReplicaSet *string `json:"replicaSet,omitempty" tf:"replica_set,omitempty"` - // TLS settings for the server connection. Empty implies plaintext connection. The structure is documented below. + // (Block List, Max: 1) (see below for nested schema) TLSMode []ConnectionConnectionOptionsOnPremiseTLSModeObservation `json:"tlsMode,omitempty" tf:"tls_mode,omitempty"` } type MongoTargetConnectionConnectionOptionsOnPremiseParameters struct { - // List of host names of the PostgreSQL server. Exactly one host is expected currently. + // (List of String) // +kubebuilder:validation:Optional Hosts []*string `json:"hosts,omitempty" tf:"hosts,omitempty"` - // Port for the database connection. + // (Number) // +kubebuilder:validation:Optional Port *float64 `json:"port,omitempty" tf:"port,omitempty"` - // Replica set name. + // (String) // +kubebuilder:validation:Optional ReplicaSet *string `json:"replicaSet,omitempty" tf:"replica_set,omitempty"` - // TLS settings for the server connection. Empty implies plaintext connection. The structure is documented below. + // (Block List, Max: 1) (see below for nested schema) // +kubebuilder:validation:Optional TLSMode []ConnectionConnectionOptionsOnPremiseTLSModeParameters `json:"tlsMode,omitempty" tf:"tls_mode,omitempty"` } type MongoTargetConnectionConnectionOptionsParameters struct { - // Name of the database associated with the credentials. + // (String) // +kubebuilder:validation:Optional AuthSource *string `json:"authSource,omitempty" tf:"auth_source,omitempty"` - // Identifier of the Managed PostgreSQL cluster. + // (String) // +crossplane:generate:reference:type=github.com/tagesjump/provider-upjet-yc/apis/mdb/v1alpha1.MongodbCluster // +kubebuilder:validation:Optional MdbClusterID *string `json:"mdbClusterId,omitempty" tf:"mdb_cluster_id,omitempty"` @@ -2028,20 +2063,22 @@ type MongoTargetConnectionConnectionOptionsParameters struct { // +kubebuilder:validation:Optional MdbClusterIDSelector *v1.Selector `json:"mdbClusterIdSelector,omitempty" tf:"-"` - // Connection settings of the on-premise PostgreSQL server. + // (Block List, Max: 1) (see below for nested schema) // +kubebuilder:validation:Optional OnPremise []MongoTargetConnectionConnectionOptionsOnPremiseParameters `json:"onPremise,omitempty" tf:"on_premise,omitempty"` - // Password for the database access. This is a block with a single field named raw which should contain the password. + // (Block List, Max: 1) (see below for nested schema) // +kubebuilder:validation:Optional Password []MongoTargetConnectionConnectionOptionsPasswordParameters `json:"password,omitempty" tf:"password,omitempty"` - // User for the database access. + // (String) // +kubebuilder:validation:Optional User *string `json:"user,omitempty" tf:"user,omitempty"` } type MongoTargetConnectionConnectionOptionsPasswordInitParameters struct { + + // (String, Sensitive) RawSecretRef *v1.SecretKeySelector `json:"rawSecretRef,omitempty" tf:"-"` } @@ -2050,44 +2087,45 @@ type MongoTargetConnectionConnectionOptionsPasswordObservation struct { type MongoTargetConnectionConnectionOptionsPasswordParameters struct { + // (String, Sensitive) // +kubebuilder:validation:Optional RawSecretRef *v1.SecretKeySelector `json:"rawSecretRef,omitempty" tf:"-"` } type MongoTargetConnectionInitParameters struct { - // Connection options. The structure is documented below. + // (Block List, Max: 1) (see below for nested schema) ConnectionOptions []MongoTargetConnectionConnectionOptionsInitParameters `json:"connectionOptions,omitempty" tf:"connection_options,omitempty"` } type MongoTargetConnectionObservation struct { - // Connection options. The structure is documented below. + // (Block List, Max: 1) (see below for nested schema) ConnectionOptions []MongoTargetConnectionConnectionOptionsObservation `json:"connectionOptions,omitempty" tf:"connection_options,omitempty"` } type MongoTargetConnectionParameters struct { - // Connection options. The structure is documented below. + // (Block List, Max: 1) (see below for nested schema) // +kubebuilder:validation:Optional ConnectionOptions []MongoTargetConnectionConnectionOptionsParameters `json:"connectionOptions,omitempty" tf:"connection_options,omitempty"` } type MongoTargetInitParameters struct { - // - How to clean collections when activating the transfer. One of "YDB_CLEANUP_POLICY_DISABLED" or "YDB_CLEANUP_POLICY_DROP". + // (String) CleanupPolicy *string `json:"cleanupPolicy,omitempty" tf:"cleanup_policy,omitempty"` - // Connection settings. + // (Block List, Max: 1) (see below for nested schema) Connection []MongoTargetConnectionInitParameters `json:"connection,omitempty" tf:"connection,omitempty"` - // - Database. + // (String) Database *string `json:"database,omitempty" tf:"database,omitempty"` - // - List of security groups that the transfer associated with this endpoint should use. + // (List of String) SecurityGroups []*string `json:"securityGroups,omitempty" tf:"security_groups,omitempty"` - // - Identifier of the Yandex Cloud VPC subnetwork to user for accessing the database. If omitted, the server has to be accessible via Internet. + // (String) // +crossplane:generate:reference:type=github.com/tagesjump/provider-upjet-yc/apis/vpc/v1alpha1.Subnet SubnetID *string `json:"subnetId,omitempty" tf:"subnet_id,omitempty"` @@ -2102,41 +2140,41 @@ type MongoTargetInitParameters struct { type MongoTargetObservation struct { - // - How to clean collections when activating the transfer. One of "YDB_CLEANUP_POLICY_DISABLED" or "YDB_CLEANUP_POLICY_DROP". + // (String) CleanupPolicy *string `json:"cleanupPolicy,omitempty" tf:"cleanup_policy,omitempty"` - // Connection settings. + // (Block List, Max: 1) (see below for nested schema) Connection []MongoTargetConnectionObservation `json:"connection,omitempty" tf:"connection,omitempty"` - // - Database. + // (String) Database *string `json:"database,omitempty" tf:"database,omitempty"` - // - List of security groups that the transfer associated with this endpoint should use. + // (List of String) SecurityGroups []*string `json:"securityGroups,omitempty" tf:"security_groups,omitempty"` - // - Identifier of the Yandex Cloud VPC subnetwork to user for accessing the database. If omitted, the server has to be accessible via Internet. + // (String) SubnetID *string `json:"subnetId,omitempty" tf:"subnet_id,omitempty"` } type MongoTargetParameters struct { - // - How to clean collections when activating the transfer. One of "YDB_CLEANUP_POLICY_DISABLED" or "YDB_CLEANUP_POLICY_DROP". + // (String) // +kubebuilder:validation:Optional CleanupPolicy *string `json:"cleanupPolicy,omitempty" tf:"cleanup_policy,omitempty"` - // Connection settings. + // (Block List, Max: 1) (see below for nested schema) // +kubebuilder:validation:Optional Connection []MongoTargetConnectionParameters `json:"connection,omitempty" tf:"connection,omitempty"` - // - Database. + // (String) // +kubebuilder:validation:Optional Database *string `json:"database,omitempty" tf:"database,omitempty"` - // - List of security groups that the transfer associated with this endpoint should use. + // (List of String) // +kubebuilder:validation:Optional SecurityGroups []*string `json:"securityGroups,omitempty" tf:"security_groups,omitempty"` - // - Identifier of the Yandex Cloud VPC subnetwork to user for accessing the database. If omitted, the server has to be accessible via Internet. + // (String) // +crossplane:generate:reference:type=github.com/tagesjump/provider-upjet-yc/apis/vpc/v1alpha1.Subnet // +kubebuilder:validation:Optional SubnetID *string `json:"subnetId,omitempty" tf:"subnet_id,omitempty"` @@ -2152,7 +2190,7 @@ type MongoTargetParameters struct { type MySQLSourceConnectionInitParameters struct { - // Identifier of the Managed PostgreSQL cluster. + // (String) // +crossplane:generate:reference:type=github.com/tagesjump/provider-upjet-yc/apis/mdb/v1alpha1.MySQLCluster MdbClusterID *string `json:"mdbClusterId,omitempty" tf:"mdb_cluster_id,omitempty"` @@ -2164,28 +2202,28 @@ type MySQLSourceConnectionInitParameters struct { // +kubebuilder:validation:Optional MdbClusterIDSelector *v1.Selector `json:"mdbClusterIdSelector,omitempty" tf:"-"` - // Connection settings of the on-premise PostgreSQL server. + // (Block List, Max: 1) (see below for nested schema) OnPremise []MySQLSourceConnectionOnPremiseInitParameters `json:"onPremise,omitempty" tf:"on_premise,omitempty"` } type MySQLSourceConnectionObservation struct { - // Identifier of the Managed PostgreSQL cluster. + // (String) MdbClusterID *string `json:"mdbClusterId,omitempty" tf:"mdb_cluster_id,omitempty"` - // Connection settings of the on-premise PostgreSQL server. + // (Block List, Max: 1) (see below for nested schema) OnPremise []MySQLSourceConnectionOnPremiseObservation `json:"onPremise,omitempty" tf:"on_premise,omitempty"` } type MySQLSourceConnectionOnPremiseInitParameters struct { - // List of host names of the PostgreSQL server. Exactly one host is expected currently. + // (List of String) Hosts []*string `json:"hosts,omitempty" tf:"hosts,omitempty"` - // Port for the database connection. + // (Number) Port *float64 `json:"port,omitempty" tf:"port,omitempty"` - // - Identifier of the Yandex Cloud VPC subnetwork to user for accessing the database. If omitted, the server has to be accessible via Internet. + // (String) // +crossplane:generate:reference:type=github.com/tagesjump/provider-upjet-yc/apis/vpc/v1alpha1.Subnet SubnetID *string `json:"subnetId,omitempty" tf:"subnet_id,omitempty"` @@ -2197,36 +2235,36 @@ type MySQLSourceConnectionOnPremiseInitParameters struct { // +kubebuilder:validation:Optional SubnetIDSelector *v1.Selector `json:"subnetIdSelector,omitempty" tf:"-"` - // TLS settings for the server connection. Empty implies plaintext connection. The structure is documented below. + // (Block List, Max: 1) (see below for nested schema) TLSMode []MySQLSourceConnectionOnPremiseTLSModeInitParameters `json:"tlsMode,omitempty" tf:"tls_mode,omitempty"` } type MySQLSourceConnectionOnPremiseObservation struct { - // List of host names of the PostgreSQL server. Exactly one host is expected currently. + // (List of String) Hosts []*string `json:"hosts,omitempty" tf:"hosts,omitempty"` - // Port for the database connection. + // (Number) Port *float64 `json:"port,omitempty" tf:"port,omitempty"` - // - Identifier of the Yandex Cloud VPC subnetwork to user for accessing the database. If omitted, the server has to be accessible via Internet. + // (String) SubnetID *string `json:"subnetId,omitempty" tf:"subnet_id,omitempty"` - // TLS settings for the server connection. Empty implies plaintext connection. The structure is documented below. + // (Block List, Max: 1) (see below for nested schema) TLSMode []MySQLSourceConnectionOnPremiseTLSModeObservation `json:"tlsMode,omitempty" tf:"tls_mode,omitempty"` } type MySQLSourceConnectionOnPremiseParameters struct { - // List of host names of the PostgreSQL server. Exactly one host is expected currently. + // (List of String) // +kubebuilder:validation:Optional Hosts []*string `json:"hosts,omitempty" tf:"hosts,omitempty"` - // Port for the database connection. + // (Number) // +kubebuilder:validation:Optional Port *float64 `json:"port,omitempty" tf:"port,omitempty"` - // - Identifier of the Yandex Cloud VPC subnetwork to user for accessing the database. If omitted, the server has to be accessible via Internet. + // (String) // +crossplane:generate:reference:type=github.com/tagesjump/provider-upjet-yc/apis/vpc/v1alpha1.Subnet // +kubebuilder:validation:Optional SubnetID *string `json:"subnetId,omitempty" tf:"subnet_id,omitempty"` @@ -2239,7 +2277,7 @@ type MySQLSourceConnectionOnPremiseParameters struct { // +kubebuilder:validation:Optional SubnetIDSelector *v1.Selector `json:"subnetIdSelector,omitempty" tf:"-"` - // TLS settings for the server connection. Empty implies plaintext connection. The structure is documented below. + // (Block List, Max: 1) (see below for nested schema) // +kubebuilder:validation:Optional TLSMode []MySQLSourceConnectionOnPremiseTLSModeParameters `json:"tlsMode,omitempty" tf:"tls_mode,omitempty"` } @@ -2255,55 +2293,55 @@ type MySQLSourceConnectionOnPremiseTLSModeDisabledParameters struct { type MySQLSourceConnectionOnPremiseTLSModeEnabledInitParameters struct { - // X.509 certificate of the certificate authority which issued the server's certificate, in PEM format. If empty, the server's certificate must be signed by a well-known CA. + // (String) CACertificate *string `json:"caCertificate,omitempty" tf:"ca_certificate,omitempty"` } type MySQLSourceConnectionOnPremiseTLSModeEnabledObservation struct { - // X.509 certificate of the certificate authority which issued the server's certificate, in PEM format. If empty, the server's certificate must be signed by a well-known CA. + // (String) CACertificate *string `json:"caCertificate,omitempty" tf:"ca_certificate,omitempty"` } type MySQLSourceConnectionOnPremiseTLSModeEnabledParameters struct { - // X.509 certificate of the certificate authority which issued the server's certificate, in PEM format. If empty, the server's certificate must be signed by a well-known CA. + // (String) // +kubebuilder:validation:Optional CACertificate *string `json:"caCertificate,omitempty" tf:"ca_certificate,omitempty"` } type MySQLSourceConnectionOnPremiseTLSModeInitParameters struct { - // Empty block designating that the connection is not secured, i.e. plaintext connection. + // (Block List, Max: 1) (see below for nested schema) Disabled []MySQLSourceConnectionOnPremiseTLSModeDisabledInitParameters `json:"disabled,omitempty" tf:"disabled,omitempty"` - // If this attribute is not an empty block, then TLS is used for the server connection. The structure is documented below. + // (Block List, Max: 1) (see below for nested schema) Enabled []MySQLSourceConnectionOnPremiseTLSModeEnabledInitParameters `json:"enabled,omitempty" tf:"enabled,omitempty"` } type MySQLSourceConnectionOnPremiseTLSModeObservation struct { - // Empty block designating that the connection is not secured, i.e. plaintext connection. + // (Block List, Max: 1) (see below for nested schema) Disabled []MySQLSourceConnectionOnPremiseTLSModeDisabledParameters `json:"disabled,omitempty" tf:"disabled,omitempty"` - // If this attribute is not an empty block, then TLS is used for the server connection. The structure is documented below. + // (Block List, Max: 1) (see below for nested schema) Enabled []MySQLSourceConnectionOnPremiseTLSModeEnabledObservation `json:"enabled,omitempty" tf:"enabled,omitempty"` } type MySQLSourceConnectionOnPremiseTLSModeParameters struct { - // Empty block designating that the connection is not secured, i.e. plaintext connection. + // (Block List, Max: 1) (see below for nested schema) // +kubebuilder:validation:Optional Disabled []MySQLSourceConnectionOnPremiseTLSModeDisabledParameters `json:"disabled,omitempty" tf:"disabled,omitempty"` - // If this attribute is not an empty block, then TLS is used for the server connection. The structure is documented below. + // (Block List, Max: 1) (see below for nested schema) // +kubebuilder:validation:Optional Enabled []MySQLSourceConnectionOnPremiseTLSModeEnabledParameters `json:"enabled,omitempty" tf:"enabled,omitempty"` } type MySQLSourceConnectionParameters struct { - // Identifier of the Managed PostgreSQL cluster. + // (String) // +crossplane:generate:reference:type=github.com/tagesjump/provider-upjet-yc/apis/mdb/v1alpha1.MySQLCluster // +kubebuilder:validation:Optional MdbClusterID *string `json:"mdbClusterId,omitempty" tf:"mdb_cluster_id,omitempty"` @@ -2316,17 +2354,17 @@ type MySQLSourceConnectionParameters struct { // +kubebuilder:validation:Optional MdbClusterIDSelector *v1.Selector `json:"mdbClusterIdSelector,omitempty" tf:"-"` - // Connection settings of the on-premise PostgreSQL server. + // (Block List, Max: 1) (see below for nested schema) // +kubebuilder:validation:Optional OnPremise []MySQLSourceConnectionOnPremiseParameters `json:"onPremise,omitempty" tf:"on_premise,omitempty"` } type MySQLSourceInitParameters struct { - // Connection settings. + // (Block List, Max: 1) (see below for nested schema) Connection []MySQLSourceConnectionInitParameters `json:"connection,omitempty" tf:"connection,omitempty"` - // - Database. + // (String) // +crossplane:generate:reference:type=github.com/tagesjump/provider-upjet-yc/apis/mdb/v1alpha1.MySQLDatabase // +crossplane:generate:reference:extractor=github.com/tagesjump/provider-upjet-yc/config/common.ExtractSpecName() Database *string `json:"database,omitempty" tf:"database,omitempty"` @@ -2339,19 +2377,19 @@ type MySQLSourceInitParameters struct { // +kubebuilder:validation:Optional DatabaseSelector *v1.Selector `json:"databaseSelector,omitempty" tf:"-"` - // Opposite of include_table_regex. The tables matching the specified regular expressions will not be transferred. + // (List of String) ExcludeTablesRegex []*string `json:"excludeTablesRegex,omitempty" tf:"exclude_tables_regex,omitempty"` - // List of regular expressions of table names which should be transferred. A table name is formatted as schemaname.tablename. For example, a single regular expression may look like ^mydb.employees$. + // (List of String) IncludeTablesRegex []*string `json:"includeTablesRegex,omitempty" tf:"include_tables_regex,omitempty"` - // Defines which database schema objects should be transferred, e.g. views, functions, etc. + // (Block List, Max: 1) (see below for nested schema) ObjectTransferSettings []ObjectTransferSettingsInitParameters `json:"objectTransferSettings,omitempty" tf:"object_transfer_settings,omitempty"` - // Password for the database access. This is a block with a single field named raw which should contain the password. + // (Block List, Max: 1) (see below for nested schema) Password []MySQLSourcePasswordInitParameters `json:"password,omitempty" tf:"password,omitempty"` - // - List of security groups that the transfer associated with this endpoint should use. + // (List of String) // +crossplane:generate:reference:type=github.com/tagesjump/provider-upjet-yc/apis/vpc/v1alpha1.SecurityGroup SecurityGroups []*string `json:"securityGroups,omitempty" tf:"security_groups,omitempty"` @@ -2363,13 +2401,13 @@ type MySQLSourceInitParameters struct { // +kubebuilder:validation:Optional SecurityGroupsSelector *v1.Selector `json:"securityGroupsSelector,omitempty" tf:"-"` - // The name of the database where technical tables (__tm_keeper, __tm_gtid_keeper) will be created. Default is the value of the attribute database. + // (String) ServiceDatabase *string `json:"serviceDatabase,omitempty" tf:"service_database,omitempty"` - // Timezone to use for parsing timestamps for saving source timezones. Accepts values from IANA timezone database. Default: local timezone. + // (String) Timezone *string `json:"timezone,omitempty" tf:"timezone,omitempty"` - // User for the database access. + // (String) // +crossplane:generate:reference:type=github.com/tagesjump/provider-upjet-yc/apis/mdb/v1alpha1.MySQLUser // +crossplane:generate:reference:extractor=github.com/tagesjump/provider-upjet-yc/config/common.ExtractSpecName() User *string `json:"user,omitempty" tf:"user,omitempty"` @@ -2385,44 +2423,44 @@ type MySQLSourceInitParameters struct { type MySQLSourceObservation struct { - // Connection settings. + // (Block List, Max: 1) (see below for nested schema) Connection []MySQLSourceConnectionObservation `json:"connection,omitempty" tf:"connection,omitempty"` - // - Database. + // (String) Database *string `json:"database,omitempty" tf:"database,omitempty"` - // Opposite of include_table_regex. The tables matching the specified regular expressions will not be transferred. + // (List of String) ExcludeTablesRegex []*string `json:"excludeTablesRegex,omitempty" tf:"exclude_tables_regex,omitempty"` - // List of regular expressions of table names which should be transferred. A table name is formatted as schemaname.tablename. For example, a single regular expression may look like ^mydb.employees$. + // (List of String) IncludeTablesRegex []*string `json:"includeTablesRegex,omitempty" tf:"include_tables_regex,omitempty"` - // Defines which database schema objects should be transferred, e.g. views, functions, etc. + // (Block List, Max: 1) (see below for nested schema) ObjectTransferSettings []ObjectTransferSettingsObservation `json:"objectTransferSettings,omitempty" tf:"object_transfer_settings,omitempty"` - // Password for the database access. This is a block with a single field named raw which should contain the password. + // (Block List, Max: 1) (see below for nested schema) Password []MySQLSourcePasswordParameters `json:"password,omitempty" tf:"password,omitempty"` - // - List of security groups that the transfer associated with this endpoint should use. + // (List of String) SecurityGroups []*string `json:"securityGroups,omitempty" tf:"security_groups,omitempty"` - // The name of the database where technical tables (__tm_keeper, __tm_gtid_keeper) will be created. Default is the value of the attribute database. + // (String) ServiceDatabase *string `json:"serviceDatabase,omitempty" tf:"service_database,omitempty"` - // Timezone to use for parsing timestamps for saving source timezones. Accepts values from IANA timezone database. Default: local timezone. + // (String) Timezone *string `json:"timezone,omitempty" tf:"timezone,omitempty"` - // User for the database access. + // (String) User *string `json:"user,omitempty" tf:"user,omitempty"` } type MySQLSourceParameters struct { - // Connection settings. + // (Block List, Max: 1) (see below for nested schema) // +kubebuilder:validation:Optional Connection []MySQLSourceConnectionParameters `json:"connection,omitempty" tf:"connection,omitempty"` - // - Database. + // (String) // +crossplane:generate:reference:type=github.com/tagesjump/provider-upjet-yc/apis/mdb/v1alpha1.MySQLDatabase // +crossplane:generate:reference:extractor=github.com/tagesjump/provider-upjet-yc/config/common.ExtractSpecName() // +kubebuilder:validation:Optional @@ -2436,23 +2474,23 @@ type MySQLSourceParameters struct { // +kubebuilder:validation:Optional DatabaseSelector *v1.Selector `json:"databaseSelector,omitempty" tf:"-"` - // Opposite of include_table_regex. The tables matching the specified regular expressions will not be transferred. + // (List of String) // +kubebuilder:validation:Optional ExcludeTablesRegex []*string `json:"excludeTablesRegex,omitempty" tf:"exclude_tables_regex,omitempty"` - // List of regular expressions of table names which should be transferred. A table name is formatted as schemaname.tablename. For example, a single regular expression may look like ^mydb.employees$. + // (List of String) // +kubebuilder:validation:Optional IncludeTablesRegex []*string `json:"includeTablesRegex,omitempty" tf:"include_tables_regex,omitempty"` - // Defines which database schema objects should be transferred, e.g. views, functions, etc. + // (Block List, Max: 1) (see below for nested schema) // +kubebuilder:validation:Optional ObjectTransferSettings []ObjectTransferSettingsParameters `json:"objectTransferSettings,omitempty" tf:"object_transfer_settings,omitempty"` - // Password for the database access. This is a block with a single field named raw which should contain the password. + // (Block List, Max: 1) (see below for nested schema) // +kubebuilder:validation:Optional Password []MySQLSourcePasswordParameters `json:"password,omitempty" tf:"password,omitempty"` - // - List of security groups that the transfer associated with this endpoint should use. + // (List of String) // +crossplane:generate:reference:type=github.com/tagesjump/provider-upjet-yc/apis/vpc/v1alpha1.SecurityGroup // +kubebuilder:validation:Optional SecurityGroups []*string `json:"securityGroups,omitempty" tf:"security_groups,omitempty"` @@ -2465,15 +2503,15 @@ type MySQLSourceParameters struct { // +kubebuilder:validation:Optional SecurityGroupsSelector *v1.Selector `json:"securityGroupsSelector,omitempty" tf:"-"` - // The name of the database where technical tables (__tm_keeper, __tm_gtid_keeper) will be created. Default is the value of the attribute database. + // (String) // +kubebuilder:validation:Optional ServiceDatabase *string `json:"serviceDatabase,omitempty" tf:"service_database,omitempty"` - // Timezone to use for parsing timestamps for saving source timezones. Accepts values from IANA timezone database. Default: local timezone. + // (String) // +kubebuilder:validation:Optional Timezone *string `json:"timezone,omitempty" tf:"timezone,omitempty"` - // User for the database access. + // (String) // +crossplane:generate:reference:type=github.com/tagesjump/provider-upjet-yc/apis/mdb/v1alpha1.MySQLUser // +crossplane:generate:reference:extractor=github.com/tagesjump/provider-upjet-yc/config/common.ExtractSpecName() // +kubebuilder:validation:Optional @@ -2489,6 +2527,8 @@ type MySQLSourceParameters struct { } type MySQLSourcePasswordInitParameters struct { + + // (String, Sensitive) RawSecretRef *v1.SecretKeySelector `json:"rawSecretRef,omitempty" tf:"-"` } @@ -2497,13 +2537,14 @@ type MySQLSourcePasswordObservation struct { type MySQLSourcePasswordParameters struct { + // (String, Sensitive) // +kubebuilder:validation:Optional RawSecretRef *v1.SecretKeySelector `json:"rawSecretRef,omitempty" tf:"-"` } type MySQLTargetConnectionInitParameters struct { - // Identifier of the Managed PostgreSQL cluster. + // (String) // +crossplane:generate:reference:type=github.com/tagesjump/provider-upjet-yc/apis/mdb/v1alpha1.MySQLCluster MdbClusterID *string `json:"mdbClusterId,omitempty" tf:"mdb_cluster_id,omitempty"` @@ -2515,28 +2556,28 @@ type MySQLTargetConnectionInitParameters struct { // +kubebuilder:validation:Optional MdbClusterIDSelector *v1.Selector `json:"mdbClusterIdSelector,omitempty" tf:"-"` - // Connection settings of the on-premise PostgreSQL server. + // (Block List, Max: 1) (see below for nested schema) OnPremise []MySQLTargetConnectionOnPremiseInitParameters `json:"onPremise,omitempty" tf:"on_premise,omitempty"` } type MySQLTargetConnectionObservation struct { - // Identifier of the Managed PostgreSQL cluster. + // (String) MdbClusterID *string `json:"mdbClusterId,omitempty" tf:"mdb_cluster_id,omitempty"` - // Connection settings of the on-premise PostgreSQL server. + // (Block List, Max: 1) (see below for nested schema) OnPremise []MySQLTargetConnectionOnPremiseObservation `json:"onPremise,omitempty" tf:"on_premise,omitempty"` } type MySQLTargetConnectionOnPremiseInitParameters struct { - // List of host names of the PostgreSQL server. Exactly one host is expected currently. + // (List of String) Hosts []*string `json:"hosts,omitempty" tf:"hosts,omitempty"` - // Port for the database connection. + // (Number) Port *float64 `json:"port,omitempty" tf:"port,omitempty"` - // - Identifier of the Yandex Cloud VPC subnetwork to user for accessing the database. If omitted, the server has to be accessible via Internet. + // (String) // +crossplane:generate:reference:type=github.com/tagesjump/provider-upjet-yc/apis/vpc/v1alpha1.Subnet SubnetID *string `json:"subnetId,omitempty" tf:"subnet_id,omitempty"` @@ -2548,36 +2589,36 @@ type MySQLTargetConnectionOnPremiseInitParameters struct { // +kubebuilder:validation:Optional SubnetIDSelector *v1.Selector `json:"subnetIdSelector,omitempty" tf:"-"` - // TLS settings for the server connection. Empty implies plaintext connection. The structure is documented below. + // (Block List, Max: 1) (see below for nested schema) TLSMode []MySQLTargetConnectionOnPremiseTLSModeInitParameters `json:"tlsMode,omitempty" tf:"tls_mode,omitempty"` } type MySQLTargetConnectionOnPremiseObservation struct { - // List of host names of the PostgreSQL server. Exactly one host is expected currently. + // (List of String) Hosts []*string `json:"hosts,omitempty" tf:"hosts,omitempty"` - // Port for the database connection. + // (Number) Port *float64 `json:"port,omitempty" tf:"port,omitempty"` - // - Identifier of the Yandex Cloud VPC subnetwork to user for accessing the database. If omitted, the server has to be accessible via Internet. + // (String) SubnetID *string `json:"subnetId,omitempty" tf:"subnet_id,omitempty"` - // TLS settings for the server connection. Empty implies plaintext connection. The structure is documented below. + // (Block List, Max: 1) (see below for nested schema) TLSMode []MySQLTargetConnectionOnPremiseTLSModeObservation `json:"tlsMode,omitempty" tf:"tls_mode,omitempty"` } type MySQLTargetConnectionOnPremiseParameters struct { - // List of host names of the PostgreSQL server. Exactly one host is expected currently. + // (List of String) // +kubebuilder:validation:Optional Hosts []*string `json:"hosts,omitempty" tf:"hosts,omitempty"` - // Port for the database connection. + // (Number) // +kubebuilder:validation:Optional Port *float64 `json:"port,omitempty" tf:"port,omitempty"` - // - Identifier of the Yandex Cloud VPC subnetwork to user for accessing the database. If omitted, the server has to be accessible via Internet. + // (String) // +crossplane:generate:reference:type=github.com/tagesjump/provider-upjet-yc/apis/vpc/v1alpha1.Subnet // +kubebuilder:validation:Optional SubnetID *string `json:"subnetId,omitempty" tf:"subnet_id,omitempty"` @@ -2590,7 +2631,7 @@ type MySQLTargetConnectionOnPremiseParameters struct { // +kubebuilder:validation:Optional SubnetIDSelector *v1.Selector `json:"subnetIdSelector,omitempty" tf:"-"` - // TLS settings for the server connection. Empty implies plaintext connection. The structure is documented below. + // (Block List, Max: 1) (see below for nested schema) // +kubebuilder:validation:Optional TLSMode []MySQLTargetConnectionOnPremiseTLSModeParameters `json:"tlsMode,omitempty" tf:"tls_mode,omitempty"` } @@ -2606,55 +2647,55 @@ type MySQLTargetConnectionOnPremiseTLSModeDisabledParameters struct { type MySQLTargetConnectionOnPremiseTLSModeEnabledInitParameters struct { - // X.509 certificate of the certificate authority which issued the server's certificate, in PEM format. If empty, the server's certificate must be signed by a well-known CA. + // (String) CACertificate *string `json:"caCertificate,omitempty" tf:"ca_certificate,omitempty"` } type MySQLTargetConnectionOnPremiseTLSModeEnabledObservation struct { - // X.509 certificate of the certificate authority which issued the server's certificate, in PEM format. If empty, the server's certificate must be signed by a well-known CA. + // (String) CACertificate *string `json:"caCertificate,omitempty" tf:"ca_certificate,omitempty"` } type MySQLTargetConnectionOnPremiseTLSModeEnabledParameters struct { - // X.509 certificate of the certificate authority which issued the server's certificate, in PEM format. If empty, the server's certificate must be signed by a well-known CA. + // (String) // +kubebuilder:validation:Optional CACertificate *string `json:"caCertificate,omitempty" tf:"ca_certificate,omitempty"` } type MySQLTargetConnectionOnPremiseTLSModeInitParameters struct { - // Empty block designating that the connection is not secured, i.e. plaintext connection. + // (Block List, Max: 1) (see below for nested schema) Disabled []MySQLTargetConnectionOnPremiseTLSModeDisabledInitParameters `json:"disabled,omitempty" tf:"disabled,omitempty"` - // If this attribute is not an empty block, then TLS is used for the server connection. The structure is documented below. + // (Block List, Max: 1) (see below for nested schema) Enabled []MySQLTargetConnectionOnPremiseTLSModeEnabledInitParameters `json:"enabled,omitempty" tf:"enabled,omitempty"` } type MySQLTargetConnectionOnPremiseTLSModeObservation struct { - // Empty block designating that the connection is not secured, i.e. plaintext connection. + // (Block List, Max: 1) (see below for nested schema) Disabled []MySQLTargetConnectionOnPremiseTLSModeDisabledParameters `json:"disabled,omitempty" tf:"disabled,omitempty"` - // If this attribute is not an empty block, then TLS is used for the server connection. The structure is documented below. + // (Block List, Max: 1) (see below for nested schema) Enabled []MySQLTargetConnectionOnPremiseTLSModeEnabledObservation `json:"enabled,omitempty" tf:"enabled,omitempty"` } type MySQLTargetConnectionOnPremiseTLSModeParameters struct { - // Empty block designating that the connection is not secured, i.e. plaintext connection. + // (Block List, Max: 1) (see below for nested schema) // +kubebuilder:validation:Optional Disabled []MySQLTargetConnectionOnPremiseTLSModeDisabledParameters `json:"disabled,omitempty" tf:"disabled,omitempty"` - // If this attribute is not an empty block, then TLS is used for the server connection. The structure is documented below. + // (Block List, Max: 1) (see below for nested schema) // +kubebuilder:validation:Optional Enabled []MySQLTargetConnectionOnPremiseTLSModeEnabledParameters `json:"enabled,omitempty" tf:"enabled,omitempty"` } type MySQLTargetConnectionParameters struct { - // Identifier of the Managed PostgreSQL cluster. + // (String) // +crossplane:generate:reference:type=github.com/tagesjump/provider-upjet-yc/apis/mdb/v1alpha1.MySQLCluster // +kubebuilder:validation:Optional MdbClusterID *string `json:"mdbClusterId,omitempty" tf:"mdb_cluster_id,omitempty"` @@ -2667,20 +2708,20 @@ type MySQLTargetConnectionParameters struct { // +kubebuilder:validation:Optional MdbClusterIDSelector *v1.Selector `json:"mdbClusterIdSelector,omitempty" tf:"-"` - // Connection settings of the on-premise PostgreSQL server. + // (Block List, Max: 1) (see below for nested schema) // +kubebuilder:validation:Optional OnPremise []MySQLTargetConnectionOnPremiseParameters `json:"onPremise,omitempty" tf:"on_premise,omitempty"` } type MySQLTargetInitParameters struct { - // - How to clean collections when activating the transfer. One of "YDB_CLEANUP_POLICY_DISABLED" or "YDB_CLEANUP_POLICY_DROP". + // (String) CleanupPolicy *string `json:"cleanupPolicy,omitempty" tf:"cleanup_policy,omitempty"` - // Connection settings. + // (Block List, Max: 1) (see below for nested schema) Connection []MySQLTargetConnectionInitParameters `json:"connection,omitempty" tf:"connection,omitempty"` - // - Database. + // (String) // +crossplane:generate:reference:type=github.com/tagesjump/provider-upjet-yc/apis/mdb/v1alpha1.MySQLDatabase // +crossplane:generate:reference:extractor=github.com/tagesjump/provider-upjet-yc/config/common.ExtractSpecName() Database *string `json:"database,omitempty" tf:"database,omitempty"` @@ -2693,13 +2734,13 @@ type MySQLTargetInitParameters struct { // +kubebuilder:validation:Optional DatabaseSelector *v1.Selector `json:"databaseSelector,omitempty" tf:"-"` - // Password for the database access. This is a block with a single field named raw which should contain the password. + // (Block List, Max: 1) (see below for nested schema) Password []MySQLTargetPasswordInitParameters `json:"password,omitempty" tf:"password,omitempty"` - // sql_mode to use when interacting with the server. Defaults to "NO_AUTO_VALUE_ON_ZERO,NO_DIR_IN_CREATE,NO_ENGINE_SUBSTITUTION". + // (String) SQLMode *string `json:"sqlMode,omitempty" tf:"sql_mode,omitempty"` - // - List of security groups that the transfer associated with this endpoint should use. + // (List of String) // +crossplane:generate:reference:type=github.com/tagesjump/provider-upjet-yc/apis/vpc/v1alpha1.SecurityGroup SecurityGroups []*string `json:"securityGroups,omitempty" tf:"security_groups,omitempty"` @@ -2711,16 +2752,16 @@ type MySQLTargetInitParameters struct { // +kubebuilder:validation:Optional SecurityGroupsSelector *v1.Selector `json:"securityGroupsSelector,omitempty" tf:"-"` - // The name of the database where technical tables (__tm_keeper, __tm_gtid_keeper) will be created. Default is the value of the attribute database. + // (String) ServiceDatabase *string `json:"serviceDatabase,omitempty" tf:"service_database,omitempty"` - // When true, disables foreign key checks. See foreign_key_checks. False by default. + // (Boolean) SkipConstraintChecks *bool `json:"skipConstraintChecks,omitempty" tf:"skip_constraint_checks,omitempty"` - // Timezone to use for parsing timestamps for saving source timezones. Accepts values from IANA timezone database. Default: local timezone. + // (String) Timezone *string `json:"timezone,omitempty" tf:"timezone,omitempty"` - // User for the database access. + // (String) // +crossplane:generate:reference:type=github.com/tagesjump/provider-upjet-yc/apis/mdb/v1alpha1.MySQLUser // +crossplane:generate:reference:extractor=github.com/tagesjump/provider-upjet-yc/config/common.ExtractSpecName() User *string `json:"user,omitempty" tf:"user,omitempty"` @@ -2736,48 +2777,48 @@ type MySQLTargetInitParameters struct { type MySQLTargetObservation struct { - // - How to clean collections when activating the transfer. One of "YDB_CLEANUP_POLICY_DISABLED" or "YDB_CLEANUP_POLICY_DROP". + // (String) CleanupPolicy *string `json:"cleanupPolicy,omitempty" tf:"cleanup_policy,omitempty"` - // Connection settings. + // (Block List, Max: 1) (see below for nested schema) Connection []MySQLTargetConnectionObservation `json:"connection,omitempty" tf:"connection,omitempty"` - // - Database. + // (String) Database *string `json:"database,omitempty" tf:"database,omitempty"` - // Password for the database access. This is a block with a single field named raw which should contain the password. + // (Block List, Max: 1) (see below for nested schema) Password []MySQLTargetPasswordParameters `json:"password,omitempty" tf:"password,omitempty"` - // sql_mode to use when interacting with the server. Defaults to "NO_AUTO_VALUE_ON_ZERO,NO_DIR_IN_CREATE,NO_ENGINE_SUBSTITUTION". + // (String) SQLMode *string `json:"sqlMode,omitempty" tf:"sql_mode,omitempty"` - // - List of security groups that the transfer associated with this endpoint should use. + // (List of String) SecurityGroups []*string `json:"securityGroups,omitempty" tf:"security_groups,omitempty"` - // The name of the database where technical tables (__tm_keeper, __tm_gtid_keeper) will be created. Default is the value of the attribute database. + // (String) ServiceDatabase *string `json:"serviceDatabase,omitempty" tf:"service_database,omitempty"` - // When true, disables foreign key checks. See foreign_key_checks. False by default. + // (Boolean) SkipConstraintChecks *bool `json:"skipConstraintChecks,omitempty" tf:"skip_constraint_checks,omitempty"` - // Timezone to use for parsing timestamps for saving source timezones. Accepts values from IANA timezone database. Default: local timezone. + // (String) Timezone *string `json:"timezone,omitempty" tf:"timezone,omitempty"` - // User for the database access. + // (String) User *string `json:"user,omitempty" tf:"user,omitempty"` } type MySQLTargetParameters struct { - // - How to clean collections when activating the transfer. One of "YDB_CLEANUP_POLICY_DISABLED" or "YDB_CLEANUP_POLICY_DROP". + // (String) // +kubebuilder:validation:Optional CleanupPolicy *string `json:"cleanupPolicy,omitempty" tf:"cleanup_policy,omitempty"` - // Connection settings. + // (Block List, Max: 1) (see below for nested schema) // +kubebuilder:validation:Optional Connection []MySQLTargetConnectionParameters `json:"connection,omitempty" tf:"connection,omitempty"` - // - Database. + // (String) // +crossplane:generate:reference:type=github.com/tagesjump/provider-upjet-yc/apis/mdb/v1alpha1.MySQLDatabase // +crossplane:generate:reference:extractor=github.com/tagesjump/provider-upjet-yc/config/common.ExtractSpecName() // +kubebuilder:validation:Optional @@ -2791,15 +2832,15 @@ type MySQLTargetParameters struct { // +kubebuilder:validation:Optional DatabaseSelector *v1.Selector `json:"databaseSelector,omitempty" tf:"-"` - // Password for the database access. This is a block with a single field named raw which should contain the password. + // (Block List, Max: 1) (see below for nested schema) // +kubebuilder:validation:Optional Password []MySQLTargetPasswordParameters `json:"password,omitempty" tf:"password,omitempty"` - // sql_mode to use when interacting with the server. Defaults to "NO_AUTO_VALUE_ON_ZERO,NO_DIR_IN_CREATE,NO_ENGINE_SUBSTITUTION". + // (String) // +kubebuilder:validation:Optional SQLMode *string `json:"sqlMode,omitempty" tf:"sql_mode,omitempty"` - // - List of security groups that the transfer associated with this endpoint should use. + // (List of String) // +crossplane:generate:reference:type=github.com/tagesjump/provider-upjet-yc/apis/vpc/v1alpha1.SecurityGroup // +kubebuilder:validation:Optional SecurityGroups []*string `json:"securityGroups,omitempty" tf:"security_groups,omitempty"` @@ -2812,19 +2853,19 @@ type MySQLTargetParameters struct { // +kubebuilder:validation:Optional SecurityGroupsSelector *v1.Selector `json:"securityGroupsSelector,omitempty" tf:"-"` - // The name of the database where technical tables (__tm_keeper, __tm_gtid_keeper) will be created. Default is the value of the attribute database. + // (String) // +kubebuilder:validation:Optional ServiceDatabase *string `json:"serviceDatabase,omitempty" tf:"service_database,omitempty"` - // When true, disables foreign key checks. See foreign_key_checks. False by default. + // (Boolean) // +kubebuilder:validation:Optional SkipConstraintChecks *bool `json:"skipConstraintChecks,omitempty" tf:"skip_constraint_checks,omitempty"` - // Timezone to use for parsing timestamps for saving source timezones. Accepts values from IANA timezone database. Default: local timezone. + // (String) // +kubebuilder:validation:Optional Timezone *string `json:"timezone,omitempty" tf:"timezone,omitempty"` - // User for the database access. + // (String) // +crossplane:generate:reference:type=github.com/tagesjump/provider-upjet-yc/apis/mdb/v1alpha1.MySQLUser // +crossplane:generate:reference:extractor=github.com/tagesjump/provider-upjet-yc/config/common.ExtractSpecName() // +kubebuilder:validation:Optional @@ -2840,6 +2881,8 @@ type MySQLTargetParameters struct { } type MySQLTargetPasswordInitParameters struct { + + // (String, Sensitive) RawSecretRef *v1.SecretKeySelector `json:"rawSecretRef,omitempty" tf:"-"` } @@ -2848,6 +2891,7 @@ type MySQLTargetPasswordObservation struct { type MySQLTargetPasswordParameters struct { + // (String, Sensitive) // +kubebuilder:validation:Optional RawSecretRef *v1.SecretKeySelector `json:"rawSecretRef,omitempty" tf:"-"` } @@ -2862,117 +2906,128 @@ type NoAuthParameters struct { } type ObjectTransferSettingsInitParameters struct { + + // (String) Routine *string `json:"routine,omitempty" tf:"routine,omitempty"` + // (String) Tables *string `json:"tables,omitempty" tf:"tables,omitempty"` - // All of the attrubutes are optional and should be either "BEFORE_DATA", "AFTER_DATA" or "NEVER". + // (String) Trigger *string `json:"trigger,omitempty" tf:"trigger,omitempty"` + // (String) View *string `json:"view,omitempty" tf:"view,omitempty"` } type ObjectTransferSettingsObservation struct { + + // (String) Routine *string `json:"routine,omitempty" tf:"routine,omitempty"` + // (String) Tables *string `json:"tables,omitempty" tf:"tables,omitempty"` - // All of the attrubutes are optional and should be either "BEFORE_DATA", "AFTER_DATA" or "NEVER". + // (String) Trigger *string `json:"trigger,omitempty" tf:"trigger,omitempty"` + // (String) View *string `json:"view,omitempty" tf:"view,omitempty"` } type ObjectTransferSettingsParameters struct { + // (String) // +kubebuilder:validation:Optional Routine *string `json:"routine,omitempty" tf:"routine,omitempty"` + // (String) // +kubebuilder:validation:Optional Tables *string `json:"tables,omitempty" tf:"tables,omitempty"` - // All of the attrubutes are optional and should be either "BEFORE_DATA", "AFTER_DATA" or "NEVER". + // (String) // +kubebuilder:validation:Optional Trigger *string `json:"trigger,omitempty" tf:"trigger,omitempty"` + // (String) // +kubebuilder:validation:Optional View *string `json:"view,omitempty" tf:"view,omitempty"` } type OnPremiseInitParameters struct { - // TCP port number for the HTTP interface of the ClickHouse server. + // (Number) HTTPPort *float64 `json:"httpPort,omitempty" tf:"http_port,omitempty"` - // TCP port number for the native interface of the ClickHouse server. + // (Number) NativePort *float64 `json:"nativePort,omitempty" tf:"native_port,omitempty"` - // The list of ClickHouse shards. The structure is documented below. + // (Block List) (see below for nested schema) Shards []ShardsInitParameters `json:"shards,omitempty" tf:"shards,omitempty"` - // TLS settings for the server connection. Empty implies plaintext connection. The structure is documented below. + // (Block List, Max: 1) (see below for nested schema) TLSMode []TLSModeInitParameters `json:"tlsMode,omitempty" tf:"tls_mode,omitempty"` } type OnPremiseObservation struct { - // TCP port number for the HTTP interface of the ClickHouse server. + // (Number) HTTPPort *float64 `json:"httpPort,omitempty" tf:"http_port,omitempty"` - // TCP port number for the native interface of the ClickHouse server. + // (Number) NativePort *float64 `json:"nativePort,omitempty" tf:"native_port,omitempty"` - // The list of ClickHouse shards. The structure is documented below. + // (Block List) (see below for nested schema) Shards []ShardsObservation `json:"shards,omitempty" tf:"shards,omitempty"` - // TLS settings for the server connection. Empty implies plaintext connection. The structure is documented below. + // (Block List, Max: 1) (see below for nested schema) TLSMode []TLSModeObservation `json:"tlsMode,omitempty" tf:"tls_mode,omitempty"` } type OnPremiseParameters struct { - // TCP port number for the HTTP interface of the ClickHouse server. + // (Number) // +kubebuilder:validation:Optional HTTPPort *float64 `json:"httpPort,omitempty" tf:"http_port,omitempty"` - // TCP port number for the native interface of the ClickHouse server. + // (Number) // +kubebuilder:validation:Optional NativePort *float64 `json:"nativePort,omitempty" tf:"native_port,omitempty"` - // The list of ClickHouse shards. The structure is documented below. + // (Block List) (see below for nested schema) // +kubebuilder:validation:Optional Shards []ShardsParameters `json:"shards,omitempty" tf:"shards,omitempty"` - // TLS settings for the server connection. Empty implies plaintext connection. The structure is documented below. + // (Block List, Max: 1) (see below for nested schema) // +kubebuilder:validation:Optional TLSMode []TLSModeParameters `json:"tlsMode,omitempty" tf:"tls_mode,omitempty"` } type OnPremiseShardsInitParameters struct { - // List of host names of the PostgreSQL server. Exactly one host is expected currently. + // (List of String) Hosts []*string `json:"hosts,omitempty" tf:"hosts,omitempty"` - // Field name. + // (String) Name *string `json:"name,omitempty" tf:"name,omitempty"` } type OnPremiseShardsObservation struct { - // List of host names of the PostgreSQL server. Exactly one host is expected currently. + // (List of String) Hosts []*string `json:"hosts,omitempty" tf:"hosts,omitempty"` - // Field name. + // (String) Name *string `json:"name,omitempty" tf:"name,omitempty"` } type OnPremiseShardsParameters struct { - // List of host names of the PostgreSQL server. Exactly one host is expected currently. + // (List of String) // +kubebuilder:validation:Optional Hosts []*string `json:"hosts,omitempty" tf:"hosts,omitempty"` - // Field name. + // (String) // +kubebuilder:validation:Optional Name *string `json:"name,omitempty" tf:"name,omitempty"` } @@ -2988,48 +3043,48 @@ type OnPremiseTLSModeDisabledParameters struct { type OnPremiseTLSModeEnabledInitParameters struct { - // X.509 certificate of the certificate authority which issued the server's certificate, in PEM format. If empty, the server's certificate must be signed by a well-known CA. + // (String) CACertificate *string `json:"caCertificate,omitempty" tf:"ca_certificate,omitempty"` } type OnPremiseTLSModeEnabledObservation struct { - // X.509 certificate of the certificate authority which issued the server's certificate, in PEM format. If empty, the server's certificate must be signed by a well-known CA. + // (String) CACertificate *string `json:"caCertificate,omitempty" tf:"ca_certificate,omitempty"` } type OnPremiseTLSModeEnabledParameters struct { - // X.509 certificate of the certificate authority which issued the server's certificate, in PEM format. If empty, the server's certificate must be signed by a well-known CA. + // (String) // +kubebuilder:validation:Optional CACertificate *string `json:"caCertificate,omitempty" tf:"ca_certificate,omitempty"` } type OnPremiseTLSModeInitParameters struct { - // Empty block designating that the connection is not secured, i.e. plaintext connection. + // (Block List, Max: 1) (see below for nested schema) Disabled []TLSModeDisabledInitParameters `json:"disabled,omitempty" tf:"disabled,omitempty"` - // If this attribute is not an empty block, then TLS is used for the server connection. The structure is documented below. + // (Block List, Max: 1) (see below for nested schema) Enabled []TLSModeEnabledInitParameters `json:"enabled,omitempty" tf:"enabled,omitempty"` } type OnPremiseTLSModeObservation struct { - // Empty block designating that the connection is not secured, i.e. plaintext connection. + // (Block List, Max: 1) (see below for nested schema) Disabled []TLSModeDisabledParameters `json:"disabled,omitempty" tf:"disabled,omitempty"` - // If this attribute is not an empty block, then TLS is used for the server connection. The structure is documented below. + // (Block List, Max: 1) (see below for nested schema) Enabled []TLSModeEnabledObservation `json:"enabled,omitempty" tf:"enabled,omitempty"` } type OnPremiseTLSModeParameters struct { - // Empty block designating that the connection is not secured, i.e. plaintext connection. + // (Block List, Max: 1) (see below for nested schema) // +kubebuilder:validation:Optional Disabled []TLSModeDisabledParameters `json:"disabled,omitempty" tf:"disabled,omitempty"` - // If this attribute is not an empty block, then TLS is used for the server connection. The structure is documented below. + // (Block List, Max: 1) (see below for nested schema) // +kubebuilder:validation:Optional Enabled []TLSModeEnabledParameters `json:"enabled,omitempty" tf:"enabled,omitempty"` } @@ -3054,181 +3109,183 @@ type ParserCloudLoggingParserParameters struct { type ParserInitParameters struct { - // Parse Audit Trails data. Empty struct. + // (Block List, Max: 1) (see below for nested schema) AuditTrailsV1Parser []AuditTrailsV1ParserInitParameters `json:"auditTrailsV1Parser,omitempty" tf:"audit_trails_v1_parser,omitempty"` - // Parse Cloud Logging data. Empty struct. + // (Block List, Max: 1) (see below for nested schema) CloudLoggingParser []CloudLoggingParserInitParameters `json:"cloudLoggingParser,omitempty" tf:"cloud_logging_parser,omitempty"` - // Parse data in json format. + // (Block List, Max: 1) (see below for nested schema) JSONParser []JSONParserInitParameters `json:"jsonParser,omitempty" tf:"json_parser,omitempty"` - // Parse data if tskv format. + // (Block List, Max: 1) (see below for nested schema) TskvParser []TskvParserInitParameters `json:"tskvParser,omitempty" tf:"tskv_parser,omitempty"` } type ParserJSONParserInitParameters struct { - // Add fields, that are not in the schema, into the _rest column. + // (Boolean) AddRestColumn *bool `json:"addRestColumn,omitempty" tf:"add_rest_column,omitempty"` - // Data parsing scheme.The structure is documented below. + // (Block List, Max: 1) (see below for nested schema) DataSchema []JSONParserDataSchemaInitParameters `json:"dataSchema,omitempty" tf:"data_schema,omitempty"` - // Allow null keys. If false - null keys will be putted to unparsed data + // (Boolean) NullKeysAllowed *bool `json:"nullKeysAllowed,omitempty" tf:"null_keys_allowed,omitempty"` - // Allow unescape string values. + // (Boolean) UnescapeStringValues *bool `json:"unescapeStringValues,omitempty" tf:"unescape_string_values,omitempty"` } type ParserJSONParserObservation struct { - // Add fields, that are not in the schema, into the _rest column. + // (Boolean) AddRestColumn *bool `json:"addRestColumn,omitempty" tf:"add_rest_column,omitempty"` - // Data parsing scheme.The structure is documented below. + // (Block List, Max: 1) (see below for nested schema) DataSchema []JSONParserDataSchemaObservation `json:"dataSchema,omitempty" tf:"data_schema,omitempty"` - // Allow null keys. If false - null keys will be putted to unparsed data + // (Boolean) NullKeysAllowed *bool `json:"nullKeysAllowed,omitempty" tf:"null_keys_allowed,omitempty"` - // Allow unescape string values. + // (Boolean) UnescapeStringValues *bool `json:"unescapeStringValues,omitempty" tf:"unescape_string_values,omitempty"` } type ParserJSONParserParameters struct { - // Add fields, that are not in the schema, into the _rest column. + // (Boolean) // +kubebuilder:validation:Optional AddRestColumn *bool `json:"addRestColumn,omitempty" tf:"add_rest_column,omitempty"` - // Data parsing scheme.The structure is documented below. + // (Block List, Max: 1) (see below for nested schema) // +kubebuilder:validation:Optional DataSchema []JSONParserDataSchemaParameters `json:"dataSchema,omitempty" tf:"data_schema,omitempty"` - // Allow null keys. If false - null keys will be putted to unparsed data + // (Boolean) // +kubebuilder:validation:Optional NullKeysAllowed *bool `json:"nullKeysAllowed,omitempty" tf:"null_keys_allowed,omitempty"` - // Allow unescape string values. + // (Boolean) // +kubebuilder:validation:Optional UnescapeStringValues *bool `json:"unescapeStringValues,omitempty" tf:"unescape_string_values,omitempty"` } type ParserObservation struct { - // Parse Audit Trails data. Empty struct. + // (Block List, Max: 1) (see below for nested schema) AuditTrailsV1Parser []AuditTrailsV1ParserParameters `json:"auditTrailsV1Parser,omitempty" tf:"audit_trails_v1_parser,omitempty"` - // Parse Cloud Logging data. Empty struct. + // (Block List, Max: 1) (see below for nested schema) CloudLoggingParser []CloudLoggingParserParameters `json:"cloudLoggingParser,omitempty" tf:"cloud_logging_parser,omitempty"` - // Parse data in json format. + // (Block List, Max: 1) (see below for nested schema) JSONParser []JSONParserObservation `json:"jsonParser,omitempty" tf:"json_parser,omitempty"` - // Parse data if tskv format. + // (Block List, Max: 1) (see below for nested schema) TskvParser []TskvParserObservation `json:"tskvParser,omitempty" tf:"tskv_parser,omitempty"` } type ParserParameters struct { - // Parse Audit Trails data. Empty struct. + // (Block List, Max: 1) (see below for nested schema) // +kubebuilder:validation:Optional AuditTrailsV1Parser []AuditTrailsV1ParserParameters `json:"auditTrailsV1Parser,omitempty" tf:"audit_trails_v1_parser,omitempty"` - // Parse Cloud Logging data. Empty struct. + // (Block List, Max: 1) (see below for nested schema) // +kubebuilder:validation:Optional CloudLoggingParser []CloudLoggingParserParameters `json:"cloudLoggingParser,omitempty" tf:"cloud_logging_parser,omitempty"` - // Parse data in json format. + // (Block List, Max: 1) (see below for nested schema) // +kubebuilder:validation:Optional JSONParser []JSONParserParameters `json:"jsonParser,omitempty" tf:"json_parser,omitempty"` - // Parse data if tskv format. + // (Block List, Max: 1) (see below for nested schema) // +kubebuilder:validation:Optional TskvParser []TskvParserParameters `json:"tskvParser,omitempty" tf:"tskv_parser,omitempty"` } type ParserTskvParserDataSchemaInitParameters struct { - // Description of the data schema in the array of fields structure (documented below). + // (Block List, Max: 1) (see below for nested schema) Fields []TskvParserDataSchemaFieldsInitParameters `json:"fields,omitempty" tf:"fields,omitempty"` - // Description of the data schema as JSON specification. + // (String) JSONFields *string `json:"jsonFields,omitempty" tf:"json_fields,omitempty"` } type ParserTskvParserDataSchemaObservation struct { - // Description of the data schema in the array of fields structure (documented below). + // (Block List, Max: 1) (see below for nested schema) Fields []TskvParserDataSchemaFieldsObservation `json:"fields,omitempty" tf:"fields,omitempty"` - // Description of the data schema as JSON specification. + // (String) JSONFields *string `json:"jsonFields,omitempty" tf:"json_fields,omitempty"` } type ParserTskvParserDataSchemaParameters struct { - // Description of the data schema in the array of fields structure (documented below). + // (Block List, Max: 1) (see below for nested schema) // +kubebuilder:validation:Optional Fields []TskvParserDataSchemaFieldsParameters `json:"fields,omitempty" tf:"fields,omitempty"` - // Description of the data schema as JSON specification. + // (String) // +kubebuilder:validation:Optional JSONFields *string `json:"jsonFields,omitempty" tf:"json_fields,omitempty"` } type ParserTskvParserInitParameters struct { - // Add fields, that are not in the schema, into the _rest column. + // (Boolean) AddRestColumn *bool `json:"addRestColumn,omitempty" tf:"add_rest_column,omitempty"` - // Data parsing scheme.The structure is documented below. + // (Block List, Max: 1) (see below for nested schema) DataSchema []ParserTskvParserDataSchemaInitParameters `json:"dataSchema,omitempty" tf:"data_schema,omitempty"` - // Allow null keys. If false - null keys will be putted to unparsed data + // (Boolean) NullKeysAllowed *bool `json:"nullKeysAllowed,omitempty" tf:"null_keys_allowed,omitempty"` - // Allow unescape string values. + // (Boolean) UnescapeStringValues *bool `json:"unescapeStringValues,omitempty" tf:"unescape_string_values,omitempty"` } type ParserTskvParserObservation struct { - // Add fields, that are not in the schema, into the _rest column. + // (Boolean) AddRestColumn *bool `json:"addRestColumn,omitempty" tf:"add_rest_column,omitempty"` - // Data parsing scheme.The structure is documented below. + // (Block List, Max: 1) (see below for nested schema) DataSchema []ParserTskvParserDataSchemaObservation `json:"dataSchema,omitempty" tf:"data_schema,omitempty"` - // Allow null keys. If false - null keys will be putted to unparsed data + // (Boolean) NullKeysAllowed *bool `json:"nullKeysAllowed,omitempty" tf:"null_keys_allowed,omitempty"` - // Allow unescape string values. + // (Boolean) UnescapeStringValues *bool `json:"unescapeStringValues,omitempty" tf:"unescape_string_values,omitempty"` } type ParserTskvParserParameters struct { - // Add fields, that are not in the schema, into the _rest column. + // (Boolean) // +kubebuilder:validation:Optional AddRestColumn *bool `json:"addRestColumn,omitempty" tf:"add_rest_column,omitempty"` - // Data parsing scheme.The structure is documented below. + // (Block List, Max: 1) (see below for nested schema) // +kubebuilder:validation:Optional DataSchema []ParserTskvParserDataSchemaParameters `json:"dataSchema,omitempty" tf:"data_schema,omitempty"` - // Allow null keys. If false - null keys will be putted to unparsed data + // (Boolean) // +kubebuilder:validation:Optional NullKeysAllowed *bool `json:"nullKeysAllowed,omitempty" tf:"null_keys_allowed,omitempty"` - // Allow unescape string values. + // (Boolean) // +kubebuilder:validation:Optional UnescapeStringValues *bool `json:"unescapeStringValues,omitempty" tf:"unescape_string_values,omitempty"` } type PasswordInitParameters struct { + + // (String, Sensitive) RawSecretRef *v1.SecretKeySelector `json:"rawSecretRef,omitempty" tf:"-"` } @@ -3237,13 +3294,14 @@ type PasswordObservation struct { type PasswordParameters struct { + // (String, Sensitive) // +kubebuilder:validation:Optional RawSecretRef *v1.SecretKeySelector `json:"rawSecretRef,omitempty" tf:"-"` } type PostgresSourceConnectionInitParameters struct { - // Identifier of the Managed PostgreSQL cluster. + // (String) // +crossplane:generate:reference:type=github.com/tagesjump/provider-upjet-yc/apis/mdb/v1alpha1.PostgresqlCluster MdbClusterID *string `json:"mdbClusterId,omitempty" tf:"mdb_cluster_id,omitempty"` @@ -3255,28 +3313,28 @@ type PostgresSourceConnectionInitParameters struct { // +kubebuilder:validation:Optional MdbClusterIDSelector *v1.Selector `json:"mdbClusterIdSelector,omitempty" tf:"-"` - // Connection settings of the on-premise PostgreSQL server. + // (Block List, Max: 1) (see below for nested schema) OnPremise []PostgresSourceConnectionOnPremiseInitParameters `json:"onPremise,omitempty" tf:"on_premise,omitempty"` } type PostgresSourceConnectionObservation struct { - // Identifier of the Managed PostgreSQL cluster. + // (String) MdbClusterID *string `json:"mdbClusterId,omitempty" tf:"mdb_cluster_id,omitempty"` - // Connection settings of the on-premise PostgreSQL server. + // (Block List, Max: 1) (see below for nested schema) OnPremise []PostgresSourceConnectionOnPremiseObservation `json:"onPremise,omitempty" tf:"on_premise,omitempty"` } type PostgresSourceConnectionOnPremiseInitParameters struct { - // List of host names of the PostgreSQL server. Exactly one host is expected currently. + // (List of String) Hosts []*string `json:"hosts,omitempty" tf:"hosts,omitempty"` - // Port for the database connection. + // (Number) Port *float64 `json:"port,omitempty" tf:"port,omitempty"` - // - Identifier of the Yandex Cloud VPC subnetwork to user for accessing the database. If omitted, the server has to be accessible via Internet. + // (String) // +crossplane:generate:reference:type=github.com/tagesjump/provider-upjet-yc/apis/vpc/v1alpha1.Subnet SubnetID *string `json:"subnetId,omitempty" tf:"subnet_id,omitempty"` @@ -3288,36 +3346,36 @@ type PostgresSourceConnectionOnPremiseInitParameters struct { // +kubebuilder:validation:Optional SubnetIDSelector *v1.Selector `json:"subnetIdSelector,omitempty" tf:"-"` - // TLS settings for the server connection. Empty implies plaintext connection. The structure is documented below. + // (Block List, Max: 1) (see below for nested schema) TLSMode []PostgresSourceConnectionOnPremiseTLSModeInitParameters `json:"tlsMode,omitempty" tf:"tls_mode,omitempty"` } type PostgresSourceConnectionOnPremiseObservation struct { - // List of host names of the PostgreSQL server. Exactly one host is expected currently. + // (List of String) Hosts []*string `json:"hosts,omitempty" tf:"hosts,omitempty"` - // Port for the database connection. + // (Number) Port *float64 `json:"port,omitempty" tf:"port,omitempty"` - // - Identifier of the Yandex Cloud VPC subnetwork to user for accessing the database. If omitted, the server has to be accessible via Internet. + // (String) SubnetID *string `json:"subnetId,omitempty" tf:"subnet_id,omitempty"` - // TLS settings for the server connection. Empty implies plaintext connection. The structure is documented below. + // (Block List, Max: 1) (see below for nested schema) TLSMode []PostgresSourceConnectionOnPremiseTLSModeObservation `json:"tlsMode,omitempty" tf:"tls_mode,omitempty"` } type PostgresSourceConnectionOnPremiseParameters struct { - // List of host names of the PostgreSQL server. Exactly one host is expected currently. + // (List of String) // +kubebuilder:validation:Optional Hosts []*string `json:"hosts,omitempty" tf:"hosts,omitempty"` - // Port for the database connection. + // (Number) // +kubebuilder:validation:Optional Port *float64 `json:"port,omitempty" tf:"port,omitempty"` - // - Identifier of the Yandex Cloud VPC subnetwork to user for accessing the database. If omitted, the server has to be accessible via Internet. + // (String) // +crossplane:generate:reference:type=github.com/tagesjump/provider-upjet-yc/apis/vpc/v1alpha1.Subnet // +kubebuilder:validation:Optional SubnetID *string `json:"subnetId,omitempty" tf:"subnet_id,omitempty"` @@ -3330,7 +3388,7 @@ type PostgresSourceConnectionOnPremiseParameters struct { // +kubebuilder:validation:Optional SubnetIDSelector *v1.Selector `json:"subnetIdSelector,omitempty" tf:"-"` - // TLS settings for the server connection. Empty implies plaintext connection. The structure is documented below. + // (Block List, Max: 1) (see below for nested schema) // +kubebuilder:validation:Optional TLSMode []PostgresSourceConnectionOnPremiseTLSModeParameters `json:"tlsMode,omitempty" tf:"tls_mode,omitempty"` } @@ -3346,55 +3404,55 @@ type PostgresSourceConnectionOnPremiseTLSModeDisabledParameters struct { type PostgresSourceConnectionOnPremiseTLSModeEnabledInitParameters struct { - // X.509 certificate of the certificate authority which issued the server's certificate, in PEM format. If empty, the server's certificate must be signed by a well-known CA. + // (String) CACertificate *string `json:"caCertificate,omitempty" tf:"ca_certificate,omitempty"` } type PostgresSourceConnectionOnPremiseTLSModeEnabledObservation struct { - // X.509 certificate of the certificate authority which issued the server's certificate, in PEM format. If empty, the server's certificate must be signed by a well-known CA. + // (String) CACertificate *string `json:"caCertificate,omitempty" tf:"ca_certificate,omitempty"` } type PostgresSourceConnectionOnPremiseTLSModeEnabledParameters struct { - // X.509 certificate of the certificate authority which issued the server's certificate, in PEM format. If empty, the server's certificate must be signed by a well-known CA. + // (String) // +kubebuilder:validation:Optional CACertificate *string `json:"caCertificate,omitempty" tf:"ca_certificate,omitempty"` } type PostgresSourceConnectionOnPremiseTLSModeInitParameters struct { - // Empty block designating that the connection is not secured, i.e. plaintext connection. + // (Block List, Max: 1) (see below for nested schema) Disabled []PostgresSourceConnectionOnPremiseTLSModeDisabledInitParameters `json:"disabled,omitempty" tf:"disabled,omitempty"` - // If this attribute is not an empty block, then TLS is used for the server connection. The structure is documented below. + // (Block List, Max: 1) (see below for nested schema) Enabled []PostgresSourceConnectionOnPremiseTLSModeEnabledInitParameters `json:"enabled,omitempty" tf:"enabled,omitempty"` } type PostgresSourceConnectionOnPremiseTLSModeObservation struct { - // Empty block designating that the connection is not secured, i.e. plaintext connection. + // (Block List, Max: 1) (see below for nested schema) Disabled []PostgresSourceConnectionOnPremiseTLSModeDisabledParameters `json:"disabled,omitempty" tf:"disabled,omitempty"` - // If this attribute is not an empty block, then TLS is used for the server connection. The structure is documented below. + // (Block List, Max: 1) (see below for nested schema) Enabled []PostgresSourceConnectionOnPremiseTLSModeEnabledObservation `json:"enabled,omitempty" tf:"enabled,omitempty"` } type PostgresSourceConnectionOnPremiseTLSModeParameters struct { - // Empty block designating that the connection is not secured, i.e. plaintext connection. + // (Block List, Max: 1) (see below for nested schema) // +kubebuilder:validation:Optional Disabled []PostgresSourceConnectionOnPremiseTLSModeDisabledParameters `json:"disabled,omitempty" tf:"disabled,omitempty"` - // If this attribute is not an empty block, then TLS is used for the server connection. The structure is documented below. + // (Block List, Max: 1) (see below for nested schema) // +kubebuilder:validation:Optional Enabled []PostgresSourceConnectionOnPremiseTLSModeEnabledParameters `json:"enabled,omitempty" tf:"enabled,omitempty"` } type PostgresSourceConnectionParameters struct { - // Identifier of the Managed PostgreSQL cluster. + // (String) // +crossplane:generate:reference:type=github.com/tagesjump/provider-upjet-yc/apis/mdb/v1alpha1.PostgresqlCluster // +kubebuilder:validation:Optional MdbClusterID *string `json:"mdbClusterId,omitempty" tf:"mdb_cluster_id,omitempty"` @@ -3407,17 +3465,17 @@ type PostgresSourceConnectionParameters struct { // +kubebuilder:validation:Optional MdbClusterIDSelector *v1.Selector `json:"mdbClusterIdSelector,omitempty" tf:"-"` - // Connection settings of the on-premise PostgreSQL server. + // (Block List, Max: 1) (see below for nested schema) // +kubebuilder:validation:Optional OnPremise []PostgresSourceConnectionOnPremiseParameters `json:"onPremise,omitempty" tf:"on_premise,omitempty"` } type PostgresSourceInitParameters struct { - // Connection settings. The structure is documented below. + // (Block List, Max: 1) (see below for nested schema) Connection []PostgresSourceConnectionInitParameters `json:"connection,omitempty" tf:"connection,omitempty"` - // Name of the database to transfer. + // (String) // +crossplane:generate:reference:type=github.com/tagesjump/provider-upjet-yc/apis/mdb/v1alpha1.PostgresqlDatabase // +crossplane:generate:reference:extractor=github.com/tagesjump/provider-upjet-yc/config/common.ExtractSpecName() Database *string `json:"database,omitempty" tf:"database,omitempty"` @@ -3430,19 +3488,19 @@ type PostgresSourceInitParameters struct { // +kubebuilder:validation:Optional DatabaseSelector *v1.Selector `json:"databaseSelector,omitempty" tf:"-"` - // List of tables which will not be transfered, formatted as schemaname.tablename. + // (List of String) ExcludeTables []*string `json:"excludeTables,omitempty" tf:"exclude_tables,omitempty"` - // List of tables to transfer, formatted as schemaname.tablename. If omitted or an empty list is specified, all tables will be transferred. + // (List of String) IncludeTables []*string `json:"includeTables,omitempty" tf:"include_tables,omitempty"` - // Defines which database schema objects should be transferred, e.g. views, functions, etc. + // (Block List, Max: 1) (see below for nested schema) ObjectTransferSettings []PostgresSourceObjectTransferSettingsInitParameters `json:"objectTransferSettings,omitempty" tf:"object_transfer_settings,omitempty"` - // Password for the database access. This is a block with a single field named raw which should contain the password. + // (Block List, Max: 1) (see below for nested schema) Password []PostgresSourcePasswordInitParameters `json:"password,omitempty" tf:"password,omitempty"` - // List of security groups that the transfer associated with this endpoint should use. + // (List of String) // +crossplane:generate:reference:type=github.com/tagesjump/provider-upjet-yc/apis/vpc/v1alpha1.SecurityGroup SecurityGroups []*string `json:"securityGroups,omitempty" tf:"security_groups,omitempty"` @@ -3454,13 +3512,13 @@ type PostgresSourceInitParameters struct { // +kubebuilder:validation:Optional SecurityGroupsSelector *v1.Selector `json:"securityGroupsSelector,omitempty" tf:"-"` - // Name of the database schema in which auxiliary tables needed for the transfer will be created. Empty service_schema implies schema "public". + // (String) ServiceSchema *string `json:"serviceSchema,omitempty" tf:"service_schema,omitempty"` - // Maximum WAL size held by the replication slot, in gigabytes. Exceeding this limit will result in a replication failure and deletion of the replication slot. Unlimited by default. + // (Number) SlotGigabyteLagLimit *float64 `json:"slotGigabyteLagLimit,omitempty" tf:"slot_gigabyte_lag_limit,omitempty"` - // User for the database access. + // (String) // +crossplane:generate:reference:type=github.com/tagesjump/provider-upjet-yc/apis/mdb/v1alpha1.PostgresqlUser // +crossplane:generate:reference:extractor=github.com/tagesjump/provider-upjet-yc/config/common.ExtractSpecName() User *string `json:"user,omitempty" tf:"user,omitempty"` @@ -3476,188 +3534,233 @@ type PostgresSourceInitParameters struct { type PostgresSourceObjectTransferSettingsInitParameters struct { - // All of the attrubutes are optional and should be either "BEFORE_DATA", "AFTER_DATA" or "NEVER". + // (String) Cast *string `json:"cast,omitempty" tf:"cast,omitempty"` + // (String) Collation *string `json:"collation,omitempty" tf:"collation,omitempty"` + // (String) Constraint *string `json:"constraint,omitempty" tf:"constraint,omitempty"` + // (String) DefaultValues *string `json:"defaultValues,omitempty" tf:"default_values,omitempty"` + // (String) FkConstraint *string `json:"fkConstraint,omitempty" tf:"fk_constraint,omitempty"` + // (String) Function *string `json:"function,omitempty" tf:"function,omitempty"` + // (String) Index *string `json:"index,omitempty" tf:"index,omitempty"` + // (String) MaterializedView *string `json:"materializedView,omitempty" tf:"materialized_view,omitempty"` + // (String) Policy *string `json:"policy,omitempty" tf:"policy,omitempty"` + // (String) PrimaryKey *string `json:"primaryKey,omitempty" tf:"primary_key,omitempty"` + // (String) Rule *string `json:"rule,omitempty" tf:"rule,omitempty"` + // (String) Sequence *string `json:"sequence,omitempty" tf:"sequence,omitempty"` + // (String) SequenceOwnedBy *string `json:"sequenceOwnedBy,omitempty" tf:"sequence_owned_by,omitempty"` + // (String) SequenceSet *string `json:"sequenceSet,omitempty" tf:"sequence_set,omitempty"` + // (String) Table *string `json:"table,omitempty" tf:"table,omitempty"` - // All of the attrubutes are optional and should be either "BEFORE_DATA", "AFTER_DATA" or "NEVER". + // (String) Trigger *string `json:"trigger,omitempty" tf:"trigger,omitempty"` - // Field type, one of: INT64, INT32, INT16, INT8, UINT64, UINT32, UINT16, UINT8, DOUBLE, BOOLEAN, STRING, UTF8, ANY, DATETIME. + // (String) Type *string `json:"type,omitempty" tf:"type,omitempty"` + // (String) View *string `json:"view,omitempty" tf:"view,omitempty"` } type PostgresSourceObjectTransferSettingsObservation struct { - // All of the attrubutes are optional and should be either "BEFORE_DATA", "AFTER_DATA" or "NEVER". + // (String) Cast *string `json:"cast,omitempty" tf:"cast,omitempty"` + // (String) Collation *string `json:"collation,omitempty" tf:"collation,omitempty"` + // (String) Constraint *string `json:"constraint,omitempty" tf:"constraint,omitempty"` + // (String) DefaultValues *string `json:"defaultValues,omitempty" tf:"default_values,omitempty"` + // (String) FkConstraint *string `json:"fkConstraint,omitempty" tf:"fk_constraint,omitempty"` + // (String) Function *string `json:"function,omitempty" tf:"function,omitempty"` + // (String) Index *string `json:"index,omitempty" tf:"index,omitempty"` + // (String) MaterializedView *string `json:"materializedView,omitempty" tf:"materialized_view,omitempty"` + // (String) Policy *string `json:"policy,omitempty" tf:"policy,omitempty"` + // (String) PrimaryKey *string `json:"primaryKey,omitempty" tf:"primary_key,omitempty"` + // (String) Rule *string `json:"rule,omitempty" tf:"rule,omitempty"` + // (String) Sequence *string `json:"sequence,omitempty" tf:"sequence,omitempty"` + // (String) SequenceOwnedBy *string `json:"sequenceOwnedBy,omitempty" tf:"sequence_owned_by,omitempty"` + // (String) SequenceSet *string `json:"sequenceSet,omitempty" tf:"sequence_set,omitempty"` + // (String) Table *string `json:"table,omitempty" tf:"table,omitempty"` - // All of the attrubutes are optional and should be either "BEFORE_DATA", "AFTER_DATA" or "NEVER". + // (String) Trigger *string `json:"trigger,omitempty" tf:"trigger,omitempty"` - // Field type, one of: INT64, INT32, INT16, INT8, UINT64, UINT32, UINT16, UINT8, DOUBLE, BOOLEAN, STRING, UTF8, ANY, DATETIME. + // (String) Type *string `json:"type,omitempty" tf:"type,omitempty"` + // (String) View *string `json:"view,omitempty" tf:"view,omitempty"` } type PostgresSourceObjectTransferSettingsParameters struct { - // All of the attrubutes are optional and should be either "BEFORE_DATA", "AFTER_DATA" or "NEVER". + // (String) // +kubebuilder:validation:Optional Cast *string `json:"cast,omitempty" tf:"cast,omitempty"` + // (String) // +kubebuilder:validation:Optional Collation *string `json:"collation,omitempty" tf:"collation,omitempty"` + // (String) // +kubebuilder:validation:Optional Constraint *string `json:"constraint,omitempty" tf:"constraint,omitempty"` + // (String) // +kubebuilder:validation:Optional DefaultValues *string `json:"defaultValues,omitempty" tf:"default_values,omitempty"` + // (String) // +kubebuilder:validation:Optional FkConstraint *string `json:"fkConstraint,omitempty" tf:"fk_constraint,omitempty"` + // (String) // +kubebuilder:validation:Optional Function *string `json:"function,omitempty" tf:"function,omitempty"` + // (String) // +kubebuilder:validation:Optional Index *string `json:"index,omitempty" tf:"index,omitempty"` + // (String) // +kubebuilder:validation:Optional MaterializedView *string `json:"materializedView,omitempty" tf:"materialized_view,omitempty"` + // (String) // +kubebuilder:validation:Optional Policy *string `json:"policy,omitempty" tf:"policy,omitempty"` + // (String) // +kubebuilder:validation:Optional PrimaryKey *string `json:"primaryKey,omitempty" tf:"primary_key,omitempty"` + // (String) // +kubebuilder:validation:Optional Rule *string `json:"rule,omitempty" tf:"rule,omitempty"` + // (String) // +kubebuilder:validation:Optional Sequence *string `json:"sequence,omitempty" tf:"sequence,omitempty"` + // (String) // +kubebuilder:validation:Optional SequenceOwnedBy *string `json:"sequenceOwnedBy,omitempty" tf:"sequence_owned_by,omitempty"` + // (String) // +kubebuilder:validation:Optional SequenceSet *string `json:"sequenceSet,omitempty" tf:"sequence_set,omitempty"` + // (String) // +kubebuilder:validation:Optional Table *string `json:"table,omitempty" tf:"table,omitempty"` - // All of the attrubutes are optional and should be either "BEFORE_DATA", "AFTER_DATA" or "NEVER". + // (String) // +kubebuilder:validation:Optional Trigger *string `json:"trigger,omitempty" tf:"trigger,omitempty"` - // Field type, one of: INT64, INT32, INT16, INT8, UINT64, UINT32, UINT16, UINT8, DOUBLE, BOOLEAN, STRING, UTF8, ANY, DATETIME. + // (String) // +kubebuilder:validation:Optional Type *string `json:"type,omitempty" tf:"type,omitempty"` + // (String) // +kubebuilder:validation:Optional View *string `json:"view,omitempty" tf:"view,omitempty"` } type PostgresSourceObservation struct { - // Connection settings. The structure is documented below. + // (Block List, Max: 1) (see below for nested schema) Connection []PostgresSourceConnectionObservation `json:"connection,omitempty" tf:"connection,omitempty"` - // Name of the database to transfer. + // (String) Database *string `json:"database,omitempty" tf:"database,omitempty"` - // List of tables which will not be transfered, formatted as schemaname.tablename. + // (List of String) ExcludeTables []*string `json:"excludeTables,omitempty" tf:"exclude_tables,omitempty"` - // List of tables to transfer, formatted as schemaname.tablename. If omitted or an empty list is specified, all tables will be transferred. + // (List of String) IncludeTables []*string `json:"includeTables,omitempty" tf:"include_tables,omitempty"` - // Defines which database schema objects should be transferred, e.g. views, functions, etc. + // (Block List, Max: 1) (see below for nested schema) ObjectTransferSettings []PostgresSourceObjectTransferSettingsObservation `json:"objectTransferSettings,omitempty" tf:"object_transfer_settings,omitempty"` - // Password for the database access. This is a block with a single field named raw which should contain the password. + // (Block List, Max: 1) (see below for nested schema) Password []PostgresSourcePasswordParameters `json:"password,omitempty" tf:"password,omitempty"` - // List of security groups that the transfer associated with this endpoint should use. + // (List of String) SecurityGroups []*string `json:"securityGroups,omitempty" tf:"security_groups,omitempty"` - // Name of the database schema in which auxiliary tables needed for the transfer will be created. Empty service_schema implies schema "public". + // (String) ServiceSchema *string `json:"serviceSchema,omitempty" tf:"service_schema,omitempty"` - // Maximum WAL size held by the replication slot, in gigabytes. Exceeding this limit will result in a replication failure and deletion of the replication slot. Unlimited by default. + // (Number) SlotGigabyteLagLimit *float64 `json:"slotGigabyteLagLimit,omitempty" tf:"slot_gigabyte_lag_limit,omitempty"` - // User for the database access. + // (String) User *string `json:"user,omitempty" tf:"user,omitempty"` } type PostgresSourceParameters struct { - // Connection settings. The structure is documented below. + // (Block List, Max: 1) (see below for nested schema) // +kubebuilder:validation:Optional Connection []PostgresSourceConnectionParameters `json:"connection,omitempty" tf:"connection,omitempty"` - // Name of the database to transfer. + // (String) // +crossplane:generate:reference:type=github.com/tagesjump/provider-upjet-yc/apis/mdb/v1alpha1.PostgresqlDatabase // +crossplane:generate:reference:extractor=github.com/tagesjump/provider-upjet-yc/config/common.ExtractSpecName() // +kubebuilder:validation:Optional @@ -3671,23 +3774,23 @@ type PostgresSourceParameters struct { // +kubebuilder:validation:Optional DatabaseSelector *v1.Selector `json:"databaseSelector,omitempty" tf:"-"` - // List of tables which will not be transfered, formatted as schemaname.tablename. + // (List of String) // +kubebuilder:validation:Optional ExcludeTables []*string `json:"excludeTables,omitempty" tf:"exclude_tables,omitempty"` - // List of tables to transfer, formatted as schemaname.tablename. If omitted or an empty list is specified, all tables will be transferred. + // (List of String) // +kubebuilder:validation:Optional IncludeTables []*string `json:"includeTables,omitempty" tf:"include_tables,omitempty"` - // Defines which database schema objects should be transferred, e.g. views, functions, etc. + // (Block List, Max: 1) (see below for nested schema) // +kubebuilder:validation:Optional ObjectTransferSettings []PostgresSourceObjectTransferSettingsParameters `json:"objectTransferSettings,omitempty" tf:"object_transfer_settings,omitempty"` - // Password for the database access. This is a block with a single field named raw which should contain the password. + // (Block List, Max: 1) (see below for nested schema) // +kubebuilder:validation:Optional Password []PostgresSourcePasswordParameters `json:"password,omitempty" tf:"password,omitempty"` - // List of security groups that the transfer associated with this endpoint should use. + // (List of String) // +crossplane:generate:reference:type=github.com/tagesjump/provider-upjet-yc/apis/vpc/v1alpha1.SecurityGroup // +kubebuilder:validation:Optional SecurityGroups []*string `json:"securityGroups,omitempty" tf:"security_groups,omitempty"` @@ -3700,15 +3803,15 @@ type PostgresSourceParameters struct { // +kubebuilder:validation:Optional SecurityGroupsSelector *v1.Selector `json:"securityGroupsSelector,omitempty" tf:"-"` - // Name of the database schema in which auxiliary tables needed for the transfer will be created. Empty service_schema implies schema "public". + // (String) // +kubebuilder:validation:Optional ServiceSchema *string `json:"serviceSchema,omitempty" tf:"service_schema,omitempty"` - // Maximum WAL size held by the replication slot, in gigabytes. Exceeding this limit will result in a replication failure and deletion of the replication slot. Unlimited by default. + // (Number) // +kubebuilder:validation:Optional SlotGigabyteLagLimit *float64 `json:"slotGigabyteLagLimit,omitempty" tf:"slot_gigabyte_lag_limit,omitempty"` - // User for the database access. + // (String) // +crossplane:generate:reference:type=github.com/tagesjump/provider-upjet-yc/apis/mdb/v1alpha1.PostgresqlUser // +crossplane:generate:reference:extractor=github.com/tagesjump/provider-upjet-yc/config/common.ExtractSpecName() // +kubebuilder:validation:Optional @@ -3724,6 +3827,8 @@ type PostgresSourceParameters struct { } type PostgresSourcePasswordInitParameters struct { + + // (String, Sensitive) RawSecretRef *v1.SecretKeySelector `json:"rawSecretRef,omitempty" tf:"-"` } @@ -3732,13 +3837,14 @@ type PostgresSourcePasswordObservation struct { type PostgresSourcePasswordParameters struct { + // (String, Sensitive) // +kubebuilder:validation:Optional RawSecretRef *v1.SecretKeySelector `json:"rawSecretRef,omitempty" tf:"-"` } type PostgresTargetConnectionInitParameters struct { - // Identifier of the Managed PostgreSQL cluster. + // (String) // +crossplane:generate:reference:type=github.com/tagesjump/provider-upjet-yc/apis/mdb/v1alpha1.PostgresqlCluster MdbClusterID *string `json:"mdbClusterId,omitempty" tf:"mdb_cluster_id,omitempty"` @@ -3750,28 +3856,28 @@ type PostgresTargetConnectionInitParameters struct { // +kubebuilder:validation:Optional MdbClusterIDSelector *v1.Selector `json:"mdbClusterIdSelector,omitempty" tf:"-"` - // Connection settings of the on-premise PostgreSQL server. + // (Block List, Max: 1) (see below for nested schema) OnPremise []PostgresTargetConnectionOnPremiseInitParameters `json:"onPremise,omitempty" tf:"on_premise,omitempty"` } type PostgresTargetConnectionObservation struct { - // Identifier of the Managed PostgreSQL cluster. + // (String) MdbClusterID *string `json:"mdbClusterId,omitempty" tf:"mdb_cluster_id,omitempty"` - // Connection settings of the on-premise PostgreSQL server. + // (Block List, Max: 1) (see below for nested schema) OnPremise []PostgresTargetConnectionOnPremiseObservation `json:"onPremise,omitempty" tf:"on_premise,omitempty"` } type PostgresTargetConnectionOnPremiseInitParameters struct { - // List of host names of the PostgreSQL server. Exactly one host is expected currently. + // (List of String) Hosts []*string `json:"hosts,omitempty" tf:"hosts,omitempty"` - // Port for the database connection. + // (Number) Port *float64 `json:"port,omitempty" tf:"port,omitempty"` - // - Identifier of the Yandex Cloud VPC subnetwork to user for accessing the database. If omitted, the server has to be accessible via Internet. + // (String) // +crossplane:generate:reference:type=github.com/tagesjump/provider-upjet-yc/apis/vpc/v1alpha1.Subnet SubnetID *string `json:"subnetId,omitempty" tf:"subnet_id,omitempty"` @@ -3783,36 +3889,36 @@ type PostgresTargetConnectionOnPremiseInitParameters struct { // +kubebuilder:validation:Optional SubnetIDSelector *v1.Selector `json:"subnetIdSelector,omitempty" tf:"-"` - // TLS settings for the server connection. Empty implies plaintext connection. The structure is documented below. + // (Block List, Max: 1) (see below for nested schema) TLSMode []PostgresTargetConnectionOnPremiseTLSModeInitParameters `json:"tlsMode,omitempty" tf:"tls_mode,omitempty"` } type PostgresTargetConnectionOnPremiseObservation struct { - // List of host names of the PostgreSQL server. Exactly one host is expected currently. + // (List of String) Hosts []*string `json:"hosts,omitempty" tf:"hosts,omitempty"` - // Port for the database connection. + // (Number) Port *float64 `json:"port,omitempty" tf:"port,omitempty"` - // - Identifier of the Yandex Cloud VPC subnetwork to user for accessing the database. If omitted, the server has to be accessible via Internet. + // (String) SubnetID *string `json:"subnetId,omitempty" tf:"subnet_id,omitempty"` - // TLS settings for the server connection. Empty implies plaintext connection. The structure is documented below. + // (Block List, Max: 1) (see below for nested schema) TLSMode []PostgresTargetConnectionOnPremiseTLSModeObservation `json:"tlsMode,omitempty" tf:"tls_mode,omitempty"` } type PostgresTargetConnectionOnPremiseParameters struct { - // List of host names of the PostgreSQL server. Exactly one host is expected currently. + // (List of String) // +kubebuilder:validation:Optional Hosts []*string `json:"hosts,omitempty" tf:"hosts,omitempty"` - // Port for the database connection. + // (Number) // +kubebuilder:validation:Optional Port *float64 `json:"port,omitempty" tf:"port,omitempty"` - // - Identifier of the Yandex Cloud VPC subnetwork to user for accessing the database. If omitted, the server has to be accessible via Internet. + // (String) // +crossplane:generate:reference:type=github.com/tagesjump/provider-upjet-yc/apis/vpc/v1alpha1.Subnet // +kubebuilder:validation:Optional SubnetID *string `json:"subnetId,omitempty" tf:"subnet_id,omitempty"` @@ -3825,7 +3931,7 @@ type PostgresTargetConnectionOnPremiseParameters struct { // +kubebuilder:validation:Optional SubnetIDSelector *v1.Selector `json:"subnetIdSelector,omitempty" tf:"-"` - // TLS settings for the server connection. Empty implies plaintext connection. The structure is documented below. + // (Block List, Max: 1) (see below for nested schema) // +kubebuilder:validation:Optional TLSMode []PostgresTargetConnectionOnPremiseTLSModeParameters `json:"tlsMode,omitempty" tf:"tls_mode,omitempty"` } @@ -3841,55 +3947,55 @@ type PostgresTargetConnectionOnPremiseTLSModeDisabledParameters struct { type PostgresTargetConnectionOnPremiseTLSModeEnabledInitParameters struct { - // X.509 certificate of the certificate authority which issued the server's certificate, in PEM format. If empty, the server's certificate must be signed by a well-known CA. + // (String) CACertificate *string `json:"caCertificate,omitempty" tf:"ca_certificate,omitempty"` } type PostgresTargetConnectionOnPremiseTLSModeEnabledObservation struct { - // X.509 certificate of the certificate authority which issued the server's certificate, in PEM format. If empty, the server's certificate must be signed by a well-known CA. + // (String) CACertificate *string `json:"caCertificate,omitempty" tf:"ca_certificate,omitempty"` } type PostgresTargetConnectionOnPremiseTLSModeEnabledParameters struct { - // X.509 certificate of the certificate authority which issued the server's certificate, in PEM format. If empty, the server's certificate must be signed by a well-known CA. + // (String) // +kubebuilder:validation:Optional CACertificate *string `json:"caCertificate,omitempty" tf:"ca_certificate,omitempty"` } type PostgresTargetConnectionOnPremiseTLSModeInitParameters struct { - // Empty block designating that the connection is not secured, i.e. plaintext connection. + // (Block List, Max: 1) (see below for nested schema) Disabled []PostgresTargetConnectionOnPremiseTLSModeDisabledInitParameters `json:"disabled,omitempty" tf:"disabled,omitempty"` - // If this attribute is not an empty block, then TLS is used for the server connection. The structure is documented below. + // (Block List, Max: 1) (see below for nested schema) Enabled []PostgresTargetConnectionOnPremiseTLSModeEnabledInitParameters `json:"enabled,omitempty" tf:"enabled,omitempty"` } type PostgresTargetConnectionOnPremiseTLSModeObservation struct { - // Empty block designating that the connection is not secured, i.e. plaintext connection. + // (Block List, Max: 1) (see below for nested schema) Disabled []PostgresTargetConnectionOnPremiseTLSModeDisabledParameters `json:"disabled,omitempty" tf:"disabled,omitempty"` - // If this attribute is not an empty block, then TLS is used for the server connection. The structure is documented below. + // (Block List, Max: 1) (see below for nested schema) Enabled []PostgresTargetConnectionOnPremiseTLSModeEnabledObservation `json:"enabled,omitempty" tf:"enabled,omitempty"` } type PostgresTargetConnectionOnPremiseTLSModeParameters struct { - // Empty block designating that the connection is not secured, i.e. plaintext connection. + // (Block List, Max: 1) (see below for nested schema) // +kubebuilder:validation:Optional Disabled []PostgresTargetConnectionOnPremiseTLSModeDisabledParameters `json:"disabled,omitempty" tf:"disabled,omitempty"` - // If this attribute is not an empty block, then TLS is used for the server connection. The structure is documented below. + // (Block List, Max: 1) (see below for nested schema) // +kubebuilder:validation:Optional Enabled []PostgresTargetConnectionOnPremiseTLSModeEnabledParameters `json:"enabled,omitempty" tf:"enabled,omitempty"` } type PostgresTargetConnectionParameters struct { - // Identifier of the Managed PostgreSQL cluster. + // (String) // +crossplane:generate:reference:type=github.com/tagesjump/provider-upjet-yc/apis/mdb/v1alpha1.PostgresqlCluster // +kubebuilder:validation:Optional MdbClusterID *string `json:"mdbClusterId,omitempty" tf:"mdb_cluster_id,omitempty"` @@ -3902,20 +4008,20 @@ type PostgresTargetConnectionParameters struct { // +kubebuilder:validation:Optional MdbClusterIDSelector *v1.Selector `json:"mdbClusterIdSelector,omitempty" tf:"-"` - // Connection settings of the on-premise PostgreSQL server. + // (Block List, Max: 1) (see below for nested schema) // +kubebuilder:validation:Optional OnPremise []PostgresTargetConnectionOnPremiseParameters `json:"onPremise,omitempty" tf:"on_premise,omitempty"` } type PostgresTargetInitParameters struct { - // - How to clean collections when activating the transfer. One of "YDB_CLEANUP_POLICY_DISABLED" or "YDB_CLEANUP_POLICY_DROP". + // (String) CleanupPolicy *string `json:"cleanupPolicy,omitempty" tf:"cleanup_policy,omitempty"` - // Connection settings. + // (Block List, Max: 1) (see below for nested schema) Connection []PostgresTargetConnectionInitParameters `json:"connection,omitempty" tf:"connection,omitempty"` - // - Database. + // (String) // +crossplane:generate:reference:type=github.com/tagesjump/provider-upjet-yc/apis/mdb/v1alpha1.PostgresqlDatabase // +crossplane:generate:reference:extractor=github.com/tagesjump/provider-upjet-yc/config/common.ExtractSpecName() Database *string `json:"database,omitempty" tf:"database,omitempty"` @@ -3928,10 +4034,10 @@ type PostgresTargetInitParameters struct { // +kubebuilder:validation:Optional DatabaseSelector *v1.Selector `json:"databaseSelector,omitempty" tf:"-"` - // Password for the database access. This is a block with a single field named raw which should contain the password. + // (Block List, Max: 1) (see below for nested schema) Password []PostgresTargetPasswordInitParameters `json:"password,omitempty" tf:"password,omitempty"` - // - List of security groups that the transfer associated with this endpoint should use. + // (List of String) // +crossplane:generate:reference:type=github.com/tagesjump/provider-upjet-yc/apis/vpc/v1alpha1.SecurityGroup SecurityGroups []*string `json:"securityGroups,omitempty" tf:"security_groups,omitempty"` @@ -3943,7 +4049,7 @@ type PostgresTargetInitParameters struct { // +kubebuilder:validation:Optional SecurityGroupsSelector *v1.Selector `json:"securityGroupsSelector,omitempty" tf:"-"` - // User for the database access. + // (String) // +crossplane:generate:reference:type=github.com/tagesjump/provider-upjet-yc/apis/mdb/v1alpha1.PostgresqlUser // +crossplane:generate:reference:extractor=github.com/tagesjump/provider-upjet-yc/config/common.ExtractSpecName() User *string `json:"user,omitempty" tf:"user,omitempty"` @@ -3959,36 +4065,36 @@ type PostgresTargetInitParameters struct { type PostgresTargetObservation struct { - // - How to clean collections when activating the transfer. One of "YDB_CLEANUP_POLICY_DISABLED" or "YDB_CLEANUP_POLICY_DROP". + // (String) CleanupPolicy *string `json:"cleanupPolicy,omitempty" tf:"cleanup_policy,omitempty"` - // Connection settings. + // (Block List, Max: 1) (see below for nested schema) Connection []PostgresTargetConnectionObservation `json:"connection,omitempty" tf:"connection,omitempty"` - // - Database. + // (String) Database *string `json:"database,omitempty" tf:"database,omitempty"` - // Password for the database access. This is a block with a single field named raw which should contain the password. + // (Block List, Max: 1) (see below for nested schema) Password []PostgresTargetPasswordParameters `json:"password,omitempty" tf:"password,omitempty"` - // - List of security groups that the transfer associated with this endpoint should use. + // (List of String) SecurityGroups []*string `json:"securityGroups,omitempty" tf:"security_groups,omitempty"` - // User for the database access. + // (String) User *string `json:"user,omitempty" tf:"user,omitempty"` } type PostgresTargetParameters struct { - // - How to clean collections when activating the transfer. One of "YDB_CLEANUP_POLICY_DISABLED" or "YDB_CLEANUP_POLICY_DROP". + // (String) // +kubebuilder:validation:Optional CleanupPolicy *string `json:"cleanupPolicy,omitempty" tf:"cleanup_policy,omitempty"` - // Connection settings. + // (Block List, Max: 1) (see below for nested schema) // +kubebuilder:validation:Optional Connection []PostgresTargetConnectionParameters `json:"connection,omitempty" tf:"connection,omitempty"` - // - Database. + // (String) // +crossplane:generate:reference:type=github.com/tagesjump/provider-upjet-yc/apis/mdb/v1alpha1.PostgresqlDatabase // +crossplane:generate:reference:extractor=github.com/tagesjump/provider-upjet-yc/config/common.ExtractSpecName() // +kubebuilder:validation:Optional @@ -4002,11 +4108,11 @@ type PostgresTargetParameters struct { // +kubebuilder:validation:Optional DatabaseSelector *v1.Selector `json:"databaseSelector,omitempty" tf:"-"` - // Password for the database access. This is a block with a single field named raw which should contain the password. + // (Block List, Max: 1) (see below for nested schema) // +kubebuilder:validation:Optional Password []PostgresTargetPasswordParameters `json:"password,omitempty" tf:"password,omitempty"` - // - List of security groups that the transfer associated with this endpoint should use. + // (List of String) // +crossplane:generate:reference:type=github.com/tagesjump/provider-upjet-yc/apis/vpc/v1alpha1.SecurityGroup // +kubebuilder:validation:Optional SecurityGroups []*string `json:"securityGroups,omitempty" tf:"security_groups,omitempty"` @@ -4019,7 +4125,7 @@ type PostgresTargetParameters struct { // +kubebuilder:validation:Optional SecurityGroupsSelector *v1.Selector `json:"securityGroupsSelector,omitempty" tf:"-"` - // User for the database access. + // (String) // +crossplane:generate:reference:type=github.com/tagesjump/provider-upjet-yc/apis/mdb/v1alpha1.PostgresqlUser // +crossplane:generate:reference:extractor=github.com/tagesjump/provider-upjet-yc/config/common.ExtractSpecName() // +kubebuilder:validation:Optional @@ -4035,6 +4141,8 @@ type PostgresTargetParameters struct { } type PostgresTargetPasswordInitParameters struct { + + // (String, Sensitive) RawSecretRef *v1.SecretKeySelector `json:"rawSecretRef,omitempty" tf:"-"` } @@ -4043,6 +4151,7 @@ type PostgresTargetPasswordObservation struct { type PostgresTargetPasswordParameters struct { + // (String, Sensitive) // +kubebuilder:validation:Optional RawSecretRef *v1.SecretKeySelector `json:"rawSecretRef,omitempty" tf:"-"` } @@ -4057,40 +4166,47 @@ type RoundRobinParameters struct { } type SaslInitParameters struct { + + // (String) Mechanism *string `json:"mechanism,omitempty" tf:"mechanism,omitempty"` - // Password for the database access. This is a block with a single field named raw which should contain the password. + // (Block List, Max: 1) (see below for nested schema) Password []SaslPasswordInitParameters `json:"password,omitempty" tf:"password,omitempty"` - // User for the database access. + // (String) User *string `json:"user,omitempty" tf:"user,omitempty"` } type SaslObservation struct { + + // (String) Mechanism *string `json:"mechanism,omitempty" tf:"mechanism,omitempty"` - // Password for the database access. This is a block with a single field named raw which should contain the password. + // (Block List, Max: 1) (see below for nested schema) Password []SaslPasswordParameters `json:"password,omitempty" tf:"password,omitempty"` - // User for the database access. + // (String) User *string `json:"user,omitempty" tf:"user,omitempty"` } type SaslParameters struct { + // (String) // +kubebuilder:validation:Optional Mechanism *string `json:"mechanism,omitempty" tf:"mechanism,omitempty"` - // Password for the database access. This is a block with a single field named raw which should contain the password. + // (Block List, Max: 1) (see below for nested schema) // +kubebuilder:validation:Optional Password []SaslPasswordParameters `json:"password,omitempty" tf:"password,omitempty"` - // User for the database access. + // (String) // +kubebuilder:validation:Optional User *string `json:"user,omitempty" tf:"user,omitempty"` } type SaslPasswordInitParameters struct { + + // (String, Sensitive) RawSecretRef *v1.SecretKeySelector `json:"rawSecretRef,omitempty" tf:"-"` } @@ -4099,6 +4215,7 @@ type SaslPasswordObservation struct { type SaslPasswordParameters struct { + // (String, Sensitive) // +kubebuilder:validation:Optional RawSecretRef *v1.SecretKeySelector `json:"rawSecretRef,omitempty" tf:"-"` } @@ -4114,58 +4231,61 @@ type SerializerAutoParameters struct { type SerializerDebeziumInitParameters struct { - // A list of debezium parameters set by the structure of the key and value string fields. + // (Block List) (see below for nested schema) SerializerParameters []SerializerParametersInitParameters `json:"serializerParameters,omitempty" tf:"serializer_parameters,omitempty"` } type SerializerDebeziumObservation struct { - // A list of debezium parameters set by the structure of the key and value string fields. + // (Block List) (see below for nested schema) SerializerParameters []SerializerParametersObservation `json:"serializerParameters,omitempty" tf:"serializer_parameters,omitempty"` } type SerializerDebeziumParameters struct { - // A list of debezium parameters set by the structure of the key and value string fields. + // (Block List) (see below for nested schema) // +kubebuilder:validation:Optional SerializerParameters []SerializerParametersParameters `json:"serializerParameters,omitempty" tf:"serializer_parameters,omitempty"` } type SerializerDebeziumSerializerParametersInitParameters struct { - // Mark field as Primary Key. + // (Boolean) Key *string `json:"key,omitempty" tf:"key,omitempty"` + // (String) Value *string `json:"value,omitempty" tf:"value,omitempty"` } type SerializerDebeziumSerializerParametersObservation struct { - // Mark field as Primary Key. + // (Boolean) Key *string `json:"key,omitempty" tf:"key,omitempty"` + // (String) Value *string `json:"value,omitempty" tf:"value,omitempty"` } type SerializerDebeziumSerializerParametersParameters struct { - // Mark field as Primary Key. + // (Boolean) // +kubebuilder:validation:Optional Key *string `json:"key,omitempty" tf:"key,omitempty"` + // (String) // +kubebuilder:validation:Optional Value *string `json:"value,omitempty" tf:"value,omitempty"` } type SerializerInitParameters struct { - // Empty block. Select data serialization format automatically. + // (Block List, Max: 1) (see below for nested schema) SerializerAuto []SerializerAutoInitParameters `json:"serializerAuto,omitempty" tf:"serializer_auto,omitempty"` - // Serialize data in json format. The structure is documented below. + // (Block List, Max: 1) (see below for nested schema) SerializerDebezium []SerializerDebeziumInitParameters `json:"serializerDebezium,omitempty" tf:"serializer_debezium,omitempty"` - // Empty block. Serialize data in json format. + // (Block List, Max: 1) (see below for nested schema) SerializerJSON []SerializerJSONInitParameters `json:"serializerJson,omitempty" tf:"serializer_json,omitempty"` } @@ -4180,53 +4300,56 @@ type SerializerJSONParameters struct { type SerializerObservation struct { - // Empty block. Select data serialization format automatically. + // (Block List, Max: 1) (see below for nested schema) SerializerAuto []SerializerAutoParameters `json:"serializerAuto,omitempty" tf:"serializer_auto,omitempty"` - // Serialize data in json format. The structure is documented below. + // (Block List, Max: 1) (see below for nested schema) SerializerDebezium []SerializerDebeziumObservation `json:"serializerDebezium,omitempty" tf:"serializer_debezium,omitempty"` - // Empty block. Serialize data in json format. + // (Block List, Max: 1) (see below for nested schema) SerializerJSON []SerializerJSONParameters `json:"serializerJson,omitempty" tf:"serializer_json,omitempty"` } type SerializerParameters struct { - // Empty block. Select data serialization format automatically. + // (Block List, Max: 1) (see below for nested schema) // +kubebuilder:validation:Optional SerializerAuto []SerializerAutoParameters `json:"serializerAuto,omitempty" tf:"serializer_auto,omitempty"` - // Serialize data in json format. The structure is documented below. + // (Block List, Max: 1) (see below for nested schema) // +kubebuilder:validation:Optional SerializerDebezium []SerializerDebeziumParameters `json:"serializerDebezium,omitempty" tf:"serializer_debezium,omitempty"` - // Empty block. Serialize data in json format. + // (Block List, Max: 1) (see below for nested schema) // +kubebuilder:validation:Optional SerializerJSON []SerializerJSONParameters `json:"serializerJson,omitempty" tf:"serializer_json,omitempty"` } type SerializerParametersInitParameters struct { - // Mark field as Primary Key. + // (Boolean) Key *string `json:"key,omitempty" tf:"key,omitempty"` + // (String) Value *string `json:"value,omitempty" tf:"value,omitempty"` } type SerializerParametersObservation struct { - // Mark field as Primary Key. + // (Boolean) Key *string `json:"key,omitempty" tf:"key,omitempty"` + // (String) Value *string `json:"value,omitempty" tf:"value,omitempty"` } type SerializerParametersParameters struct { - // Mark field as Primary Key. + // (Boolean) // +kubebuilder:validation:Optional Key *string `json:"key,omitempty" tf:"key,omitempty"` + // (String) // +kubebuilder:validation:Optional Value *string `json:"value,omitempty" tf:"value,omitempty"` } @@ -4242,19 +4365,19 @@ type SerializerSerializerAutoParameters struct { type SerializerSerializerDebeziumInitParameters struct { - // A list of debezium parameters set by the structure of the key and value string fields. + // (Block List) (see below for nested schema) SerializerParameters []SerializerDebeziumSerializerParametersInitParameters `json:"serializerParameters,omitempty" tf:"serializer_parameters,omitempty"` } type SerializerSerializerDebeziumObservation struct { - // A list of debezium parameters set by the structure of the key and value string fields. + // (Block List) (see below for nested schema) SerializerParameters []SerializerDebeziumSerializerParametersObservation `json:"serializerParameters,omitempty" tf:"serializer_parameters,omitempty"` } type SerializerSerializerDebeziumParameters struct { - // A list of debezium parameters set by the structure of the key and value string fields. + // (Block List) (see below for nested schema) // +kubebuilder:validation:Optional SerializerParameters []SerializerDebeziumSerializerParametersParameters `json:"serializerParameters,omitempty" tf:"serializer_parameters,omitempty"` } @@ -4270,258 +4393,266 @@ type SerializerSerializerJSONParameters struct { type SettingsInitParameters struct { - // Settings specific to the ClickHouse source endpoint. + // (Block List, Max: 1) (see below for nested schema) ClickhouseSource []ClickhouseSourceInitParameters `json:"clickhouseSource,omitempty" tf:"clickhouse_source,omitempty"` - // Settings specific to the ClickHouse target endpoint. + // (Block List, Max: 1) (see below for nested schema) ClickhouseTarget []ClickhouseTargetInitParameters `json:"clickhouseTarget,omitempty" tf:"clickhouse_target,omitempty"` - // Settings specific to the Kafka source endpoint. + // (Block List, Max: 1) (see below for nested schema) KafkaSource []KafkaSourceInitParameters `json:"kafkaSource,omitempty" tf:"kafka_source,omitempty"` - // Settings specific to the Kafka target endpoint. + // (Block List, Max: 1) (see below for nested schema) KafkaTarget []KafkaTargetInitParameters `json:"kafkaTarget,omitempty" tf:"kafka_target,omitempty"` + // (Block List, Max: 1) (see below for nested schema) MetrikaSource []MetrikaSourceInitParameters `json:"metrikaSource,omitempty" tf:"metrika_source,omitempty"` - // Settings specific to the MongoDB source endpoint. + // (Block List, Max: 1) (see below for nested schema) MongoSource []MongoSourceInitParameters `json:"mongoSource,omitempty" tf:"mongo_source,omitempty"` - // Settings specific to the MongoDB target endpoint. + // (Block List, Max: 1) (see below for nested schema) MongoTarget []MongoTargetInitParameters `json:"mongoTarget,omitempty" tf:"mongo_target,omitempty"` - // Settings specific to the MySQL source endpoint. + // (Block List, Max: 1) (see below for nested schema) MySQLSource []MySQLSourceInitParameters `json:"mysqlSource,omitempty" tf:"mysql_source,omitempty"` - // Settings specific to the MySQL target endpoint. + // (Block List, Max: 1) (see below for nested schema) MySQLTarget []MySQLTargetInitParameters `json:"mysqlTarget,omitempty" tf:"mysql_target,omitempty"` - // Settings specific to the PostgreSQL source endpoint. + // (Block List, Max: 1) (see below for nested schema) PostgresSource []PostgresSourceInitParameters `json:"postgresSource,omitempty" tf:"postgres_source,omitempty"` - // Settings specific to the PostgreSQL target endpoint. + // (Block List, Max: 1) (see below for nested schema) PostgresTarget []PostgresTargetInitParameters `json:"postgresTarget,omitempty" tf:"postgres_target,omitempty"` - // Settings specific to the YDB source endpoint. + // (Block List, Max: 1) (see below for nested schema) YdbSource []YdbSourceInitParameters `json:"ydbSource,omitempty" tf:"ydb_source,omitempty"` - // Settings specific to the YDB target endpoint. + // (Block List, Max: 1) (see below for nested schema) YdbTarget []YdbTargetInitParameters `json:"ydbTarget,omitempty" tf:"ydb_target,omitempty"` - // Settings specific to the YDS source endpoint. + // (Block List, Max: 1) (see below for nested schema) YdsSource []YdsSourceInitParameters `json:"ydsSource,omitempty" tf:"yds_source,omitempty"` - // Settings specific to the YDS target endpoint. + // (Block List, Max: 1) (see below for nested schema) YdsTarget []YdsTargetInitParameters `json:"ydsTarget,omitempty" tf:"yds_target,omitempty"` } type SettingsObservation struct { - // Settings specific to the ClickHouse source endpoint. + // (Block List, Max: 1) (see below for nested schema) ClickhouseSource []ClickhouseSourceObservation `json:"clickhouseSource,omitempty" tf:"clickhouse_source,omitempty"` - // Settings specific to the ClickHouse target endpoint. + // (Block List, Max: 1) (see below for nested schema) ClickhouseTarget []ClickhouseTargetObservation `json:"clickhouseTarget,omitempty" tf:"clickhouse_target,omitempty"` - // Settings specific to the Kafka source endpoint. + // (Block List, Max: 1) (see below for nested schema) KafkaSource []KafkaSourceObservation `json:"kafkaSource,omitempty" tf:"kafka_source,omitempty"` - // Settings specific to the Kafka target endpoint. + // (Block List, Max: 1) (see below for nested schema) KafkaTarget []KafkaTargetObservation `json:"kafkaTarget,omitempty" tf:"kafka_target,omitempty"` + // (Block List, Max: 1) (see below for nested schema) MetrikaSource []MetrikaSourceObservation `json:"metrikaSource,omitempty" tf:"metrika_source,omitempty"` - // Settings specific to the MongoDB source endpoint. + // (Block List, Max: 1) (see below for nested schema) MongoSource []MongoSourceObservation `json:"mongoSource,omitempty" tf:"mongo_source,omitempty"` - // Settings specific to the MongoDB target endpoint. + // (Block List, Max: 1) (see below for nested schema) MongoTarget []MongoTargetObservation `json:"mongoTarget,omitempty" tf:"mongo_target,omitempty"` - // Settings specific to the MySQL source endpoint. + // (Block List, Max: 1) (see below for nested schema) MySQLSource []MySQLSourceObservation `json:"mysqlSource,omitempty" tf:"mysql_source,omitempty"` - // Settings specific to the MySQL target endpoint. + // (Block List, Max: 1) (see below for nested schema) MySQLTarget []MySQLTargetObservation `json:"mysqlTarget,omitempty" tf:"mysql_target,omitempty"` - // Settings specific to the PostgreSQL source endpoint. + // (Block List, Max: 1) (see below for nested schema) PostgresSource []PostgresSourceObservation `json:"postgresSource,omitempty" tf:"postgres_source,omitempty"` - // Settings specific to the PostgreSQL target endpoint. + // (Block List, Max: 1) (see below for nested schema) PostgresTarget []PostgresTargetObservation `json:"postgresTarget,omitempty" tf:"postgres_target,omitempty"` - // Settings specific to the YDB source endpoint. + // (Block List, Max: 1) (see below for nested schema) YdbSource []YdbSourceObservation `json:"ydbSource,omitempty" tf:"ydb_source,omitempty"` - // Settings specific to the YDB target endpoint. + // (Block List, Max: 1) (see below for nested schema) YdbTarget []YdbTargetObservation `json:"ydbTarget,omitempty" tf:"ydb_target,omitempty"` - // Settings specific to the YDS source endpoint. + // (Block List, Max: 1) (see below for nested schema) YdsSource []YdsSourceObservation `json:"ydsSource,omitempty" tf:"yds_source,omitempty"` - // Settings specific to the YDS target endpoint. + // (Block List, Max: 1) (see below for nested schema) YdsTarget []YdsTargetObservation `json:"ydsTarget,omitempty" tf:"yds_target,omitempty"` } type SettingsParameters struct { - // Settings specific to the ClickHouse source endpoint. + // (Block List, Max: 1) (see below for nested schema) // +kubebuilder:validation:Optional ClickhouseSource []ClickhouseSourceParameters `json:"clickhouseSource,omitempty" tf:"clickhouse_source,omitempty"` - // Settings specific to the ClickHouse target endpoint. + // (Block List, Max: 1) (see below for nested schema) // +kubebuilder:validation:Optional ClickhouseTarget []ClickhouseTargetParameters `json:"clickhouseTarget,omitempty" tf:"clickhouse_target,omitempty"` - // Settings specific to the Kafka source endpoint. + // (Block List, Max: 1) (see below for nested schema) // +kubebuilder:validation:Optional KafkaSource []KafkaSourceParameters `json:"kafkaSource,omitempty" tf:"kafka_source,omitempty"` - // Settings specific to the Kafka target endpoint. + // (Block List, Max: 1) (see below for nested schema) // +kubebuilder:validation:Optional KafkaTarget []KafkaTargetParameters `json:"kafkaTarget,omitempty" tf:"kafka_target,omitempty"` + // (Block List, Max: 1) (see below for nested schema) // +kubebuilder:validation:Optional MetrikaSource []MetrikaSourceParameters `json:"metrikaSource,omitempty" tf:"metrika_source,omitempty"` - // Settings specific to the MongoDB source endpoint. + // (Block List, Max: 1) (see below for nested schema) // +kubebuilder:validation:Optional MongoSource []MongoSourceParameters `json:"mongoSource,omitempty" tf:"mongo_source,omitempty"` - // Settings specific to the MongoDB target endpoint. + // (Block List, Max: 1) (see below for nested schema) // +kubebuilder:validation:Optional MongoTarget []MongoTargetParameters `json:"mongoTarget,omitempty" tf:"mongo_target,omitempty"` - // Settings specific to the MySQL source endpoint. + // (Block List, Max: 1) (see below for nested schema) // +kubebuilder:validation:Optional MySQLSource []MySQLSourceParameters `json:"mysqlSource,omitempty" tf:"mysql_source,omitempty"` - // Settings specific to the MySQL target endpoint. + // (Block List, Max: 1) (see below for nested schema) // +kubebuilder:validation:Optional MySQLTarget []MySQLTargetParameters `json:"mysqlTarget,omitempty" tf:"mysql_target,omitempty"` - // Settings specific to the PostgreSQL source endpoint. + // (Block List, Max: 1) (see below for nested schema) // +kubebuilder:validation:Optional PostgresSource []PostgresSourceParameters `json:"postgresSource,omitempty" tf:"postgres_source,omitempty"` - // Settings specific to the PostgreSQL target endpoint. + // (Block List, Max: 1) (see below for nested schema) // +kubebuilder:validation:Optional PostgresTarget []PostgresTargetParameters `json:"postgresTarget,omitempty" tf:"postgres_target,omitempty"` - // Settings specific to the YDB source endpoint. + // (Block List, Max: 1) (see below for nested schema) // +kubebuilder:validation:Optional YdbSource []YdbSourceParameters `json:"ydbSource,omitempty" tf:"ydb_source,omitempty"` - // Settings specific to the YDB target endpoint. + // (Block List, Max: 1) (see below for nested schema) // +kubebuilder:validation:Optional YdbTarget []YdbTargetParameters `json:"ydbTarget,omitempty" tf:"ydb_target,omitempty"` - // Settings specific to the YDS source endpoint. + // (Block List, Max: 1) (see below for nested schema) // +kubebuilder:validation:Optional YdsSource []YdsSourceParameters `json:"ydsSource,omitempty" tf:"yds_source,omitempty"` - // Settings specific to the YDS target endpoint. + // (Block List, Max: 1) (see below for nested schema) // +kubebuilder:validation:Optional YdsTarget []YdsTargetParameters `json:"ydsTarget,omitempty" tf:"yds_target,omitempty"` } type ShardingInitParameters struct { - // Shard data by the hash value of the specified column. The structure is documented below. + // (Block List, Max: 1) (see below for nested schema) ColumnValueHash []ColumnValueHashInitParameters `json:"columnValueHash,omitempty" tf:"column_value_hash,omitempty"` - // A custom shard mapping by the value of the specified column. The structure is documented below. + // (Block List, Max: 1) (see below for nested schema) CustomMapping []CustomMappingInitParameters `json:"customMapping,omitempty" tf:"custom_mapping,omitempty"` - // robin manner. Specify as an empty block to enable. + // (Block List, Max: 1) (see below for nested schema) RoundRobin []RoundRobinInitParameters `json:"roundRobin,omitempty" tf:"round_robin,omitempty"` - // Shard data by ID of the transfer. + // (Block List, Max: 1) (see below for nested schema) TransferID []TransferIDInitParameters `json:"transferId,omitempty" tf:"transfer_id,omitempty"` } type ShardingObservation struct { - // Shard data by the hash value of the specified column. The structure is documented below. + // (Block List, Max: 1) (see below for nested schema) ColumnValueHash []ColumnValueHashObservation `json:"columnValueHash,omitempty" tf:"column_value_hash,omitempty"` - // A custom shard mapping by the value of the specified column. The structure is documented below. + // (Block List, Max: 1) (see below for nested schema) CustomMapping []CustomMappingObservation `json:"customMapping,omitempty" tf:"custom_mapping,omitempty"` - // robin manner. Specify as an empty block to enable. + // (Block List, Max: 1) (see below for nested schema) RoundRobin []RoundRobinParameters `json:"roundRobin,omitempty" tf:"round_robin,omitempty"` - // Shard data by ID of the transfer. + // (Block List, Max: 1) (see below for nested schema) TransferID []TransferIDParameters `json:"transferId,omitempty" tf:"transfer_id,omitempty"` } type ShardingParameters struct { - // Shard data by the hash value of the specified column. The structure is documented below. + // (Block List, Max: 1) (see below for nested schema) // +kubebuilder:validation:Optional ColumnValueHash []ColumnValueHashParameters `json:"columnValueHash,omitempty" tf:"column_value_hash,omitempty"` - // A custom shard mapping by the value of the specified column. The structure is documented below. + // (Block List, Max: 1) (see below for nested schema) // +kubebuilder:validation:Optional CustomMapping []CustomMappingParameters `json:"customMapping,omitempty" tf:"custom_mapping,omitempty"` - // robin manner. Specify as an empty block to enable. + // (Block List, Max: 1) (see below for nested schema) // +kubebuilder:validation:Optional RoundRobin []RoundRobinParameters `json:"roundRobin,omitempty" tf:"round_robin,omitempty"` - // Shard data by ID of the transfer. + // (Block List, Max: 1) (see below for nested schema) // +kubebuilder:validation:Optional TransferID []TransferIDParameters `json:"transferId,omitempty" tf:"transfer_id,omitempty"` } type ShardsInitParameters struct { - // List of host names of the PostgreSQL server. Exactly one host is expected currently. + // (List of String) Hosts []*string `json:"hosts,omitempty" tf:"hosts,omitempty"` - // Field name. + // (String) Name *string `json:"name,omitempty" tf:"name,omitempty"` } type ShardsObservation struct { - // List of host names of the PostgreSQL server. Exactly one host is expected currently. + // (List of String) Hosts []*string `json:"hosts,omitempty" tf:"hosts,omitempty"` - // Field name. + // (String) Name *string `json:"name,omitempty" tf:"name,omitempty"` } type ShardsParameters struct { - // List of host names of the PostgreSQL server. Exactly one host is expected currently. + // (List of String) // +kubebuilder:validation:Optional Hosts []*string `json:"hosts,omitempty" tf:"hosts,omitempty"` - // Field name. + // (String) // +kubebuilder:validation:Optional Name *string `json:"name,omitempty" tf:"name,omitempty"` } type StreamsInitParameters struct { + + // (List of String) Columns []*string `json:"columns,omitempty" tf:"columns,omitempty"` - // Field type, one of: INT64, INT32, INT16, INT8, UINT64, UINT32, UINT16, UINT8, DOUBLE, BOOLEAN, STRING, UTF8, ANY, DATETIME. + // (String) Type *string `json:"type,omitempty" tf:"type,omitempty"` } type StreamsObservation struct { + + // (List of String) Columns []*string `json:"columns,omitempty" tf:"columns,omitempty"` - // Field type, one of: INT64, INT32, INT16, INT8, UINT64, UINT32, UINT16, UINT8, DOUBLE, BOOLEAN, STRING, UTF8, ANY, DATETIME. + // (String) Type *string `json:"type,omitempty" tf:"type,omitempty"` } type StreamsParameters struct { + // (List of String) // +kubebuilder:validation:Optional Columns []*string `json:"columns,omitempty" tf:"columns,omitempty"` - // Field type, one of: INT64, INT32, INT16, INT8, UINT64, UINT32, UINT16, UINT8, DOUBLE, BOOLEAN, STRING, UTF8, ANY, DATETIME. + // (String) // +kubebuilder:validation:Optional Type *string `json:"type,omitempty" tf:"type,omitempty"` } @@ -4537,53 +4668,55 @@ type TLSModeDisabledParameters struct { type TLSModeEnabledInitParameters struct { - // X.509 certificate of the certificate authority which issued the server's certificate, in PEM format. If empty, the server's certificate must be signed by a well-known CA. + // (String) CACertificate *string `json:"caCertificate,omitempty" tf:"ca_certificate,omitempty"` } type TLSModeEnabledObservation struct { - // X.509 certificate of the certificate authority which issued the server's certificate, in PEM format. If empty, the server's certificate must be signed by a well-known CA. + // (String) CACertificate *string `json:"caCertificate,omitempty" tf:"ca_certificate,omitempty"` } type TLSModeEnabledParameters struct { - // X.509 certificate of the certificate authority which issued the server's certificate, in PEM format. If empty, the server's certificate must be signed by a well-known CA. + // (String) // +kubebuilder:validation:Optional CACertificate *string `json:"caCertificate,omitempty" tf:"ca_certificate,omitempty"` } type TLSModeInitParameters struct { - // Empty block designating that the connection is not secured, i.e. plaintext connection. + // (Block List, Max: 1) (see below for nested schema) Disabled []DisabledInitParameters `json:"disabled,omitempty" tf:"disabled,omitempty"` - // If this attribute is not an empty block, then TLS is used for the server connection. The structure is documented below. + // (Block List, Max: 1) (see below for nested schema) Enabled []EnabledInitParameters `json:"enabled,omitempty" tf:"enabled,omitempty"` } type TLSModeObservation struct { - // Empty block designating that the connection is not secured, i.e. plaintext connection. + // (Block List, Max: 1) (see below for nested schema) Disabled []DisabledParameters `json:"disabled,omitempty" tf:"disabled,omitempty"` - // If this attribute is not an empty block, then TLS is used for the server connection. The structure is documented below. + // (Block List, Max: 1) (see below for nested schema) Enabled []EnabledObservation `json:"enabled,omitempty" tf:"enabled,omitempty"` } type TLSModeParameters struct { - // Empty block designating that the connection is not secured, i.e. plaintext connection. + // (Block List, Max: 1) (see below for nested schema) // +kubebuilder:validation:Optional Disabled []DisabledParameters `json:"disabled,omitempty" tf:"disabled,omitempty"` - // If this attribute is not an empty block, then TLS is used for the server connection. The structure is documented below. + // (Block List, Max: 1) (see below for nested schema) // +kubebuilder:validation:Optional Enabled []EnabledParameters `json:"enabled,omitempty" tf:"enabled,omitempty"` } type TokenInitParameters struct { + + // (String, Sensitive) RawSecretRef *v1.SecretKeySelector `json:"rawSecretRef,omitempty" tf:"-"` } @@ -4592,64 +4725,65 @@ type TokenObservation struct { type TokenParameters struct { + // (String, Sensitive) // +kubebuilder:validation:Optional RawSecretRef *v1.SecretKeySelector `json:"rawSecretRef,omitempty" tf:"-"` } type TopicInitParameters struct { - // - Save transaction order + // (Boolean) SaveTxOrder *bool `json:"saveTxOrder,omitempty" tf:"save_tx_order,omitempty"` - // Full topic name + // (String) TopicName *string `json:"topicName,omitempty" tf:"topic_name,omitempty"` } type TopicObservation struct { - // - Save transaction order + // (Boolean) SaveTxOrder *bool `json:"saveTxOrder,omitempty" tf:"save_tx_order,omitempty"` - // Full topic name + // (String) TopicName *string `json:"topicName,omitempty" tf:"topic_name,omitempty"` } type TopicParameters struct { - // - Save transaction order + // (Boolean) // +kubebuilder:validation:Optional SaveTxOrder *bool `json:"saveTxOrder,omitempty" tf:"save_tx_order,omitempty"` - // Full topic name + // (String) // +kubebuilder:validation:Optional TopicName *string `json:"topicName,omitempty" tf:"topic_name,omitempty"` } type TopicSettingsInitParameters struct { - // All messages will be sent to one topic. The structure is documented below. + // (Block List, Max: 1) (see below for nested schema) Topic []TopicInitParameters `json:"topic,omitempty" tf:"topic,omitempty"` - // Topic name prefix. Messages will be sent to topic with name ... + // (String) TopicPrefix *string `json:"topicPrefix,omitempty" tf:"topic_prefix,omitempty"` } type TopicSettingsObservation struct { - // All messages will be sent to one topic. The structure is documented below. + // (Block List, Max: 1) (see below for nested schema) Topic []TopicObservation `json:"topic,omitempty" tf:"topic,omitempty"` - // Topic name prefix. Messages will be sent to topic with name ... + // (String) TopicPrefix *string `json:"topicPrefix,omitempty" tf:"topic_prefix,omitempty"` } type TopicSettingsParameters struct { - // All messages will be sent to one topic. The structure is documented below. + // (Block List, Max: 1) (see below for nested schema) // +kubebuilder:validation:Optional Topic []TopicParameters `json:"topic,omitempty" tf:"topic,omitempty"` - // Topic name prefix. Messages will be sent to topic with name ... + // (String) // +kubebuilder:validation:Optional TopicPrefix *string `json:"topicPrefix,omitempty" tf:"topic_prefix,omitempty"` } @@ -4664,687 +4798,704 @@ type TransferIDParameters struct { } type TransformerInitParameters struct { + + // (String) BufferFlushInterval *string `json:"bufferFlushInterval,omitempty" tf:"buffer_flush_interval,omitempty"` + // (String) BufferSize *string `json:"bufferSize,omitempty" tf:"buffer_size,omitempty"` + // (String) CloudFunction *string `json:"cloudFunction,omitempty" tf:"cloud_function,omitempty"` + // (String) InvocationTimeout *string `json:"invocationTimeout,omitempty" tf:"invocation_timeout,omitempty"` + // (Number) NumberOfRetries *float64 `json:"numberOfRetries,omitempty" tf:"number_of_retries,omitempty"` - // - Service account ID for interaction with database. + // (String) ServiceAccountID *string `json:"serviceAccountId,omitempty" tf:"service_account_id,omitempty"` } type TransformerObservation struct { + + // (String) BufferFlushInterval *string `json:"bufferFlushInterval,omitempty" tf:"buffer_flush_interval,omitempty"` + // (String) BufferSize *string `json:"bufferSize,omitempty" tf:"buffer_size,omitempty"` + // (String) CloudFunction *string `json:"cloudFunction,omitempty" tf:"cloud_function,omitempty"` + // (String) InvocationTimeout *string `json:"invocationTimeout,omitempty" tf:"invocation_timeout,omitempty"` + // (Number) NumberOfRetries *float64 `json:"numberOfRetries,omitempty" tf:"number_of_retries,omitempty"` - // - Service account ID for interaction with database. + // (String) ServiceAccountID *string `json:"serviceAccountId,omitempty" tf:"service_account_id,omitempty"` } type TransformerParameters struct { + // (String) // +kubebuilder:validation:Optional BufferFlushInterval *string `json:"bufferFlushInterval,omitempty" tf:"buffer_flush_interval,omitempty"` + // (String) // +kubebuilder:validation:Optional BufferSize *string `json:"bufferSize,omitempty" tf:"buffer_size,omitempty"` + // (String) // +kubebuilder:validation:Optional CloudFunction *string `json:"cloudFunction,omitempty" tf:"cloud_function,omitempty"` + // (String) // +kubebuilder:validation:Optional InvocationTimeout *string `json:"invocationTimeout,omitempty" tf:"invocation_timeout,omitempty"` + // (Number) // +kubebuilder:validation:Optional NumberOfRetries *float64 `json:"numberOfRetries,omitempty" tf:"number_of_retries,omitempty"` - // - Service account ID for interaction with database. + // (String) // +kubebuilder:validation:Optional ServiceAccountID *string `json:"serviceAccountId,omitempty" tf:"service_account_id,omitempty"` } type TskvParserDataSchemaFieldsFieldsInitParameters struct { - // Mark field as Primary Key. + // (Boolean) Key *bool `json:"key,omitempty" tf:"key,omitempty"` - // Field name. + // (String) Name *string `json:"name,omitempty" tf:"name,omitempty"` - // - A path where resulting tables are stored. + // (String) Path *string `json:"path,omitempty" tf:"path,omitempty"` - // Mark field as required. + // (Boolean) Required *bool `json:"required,omitempty" tf:"required,omitempty"` - // Field type, one of: INT64, INT32, INT16, INT8, UINT64, UINT32, UINT16, UINT8, DOUBLE, BOOLEAN, STRING, UTF8, ANY, DATETIME. + // (String) Type *string `json:"type,omitempty" tf:"type,omitempty"` } type TskvParserDataSchemaFieldsFieldsObservation struct { - // Mark field as Primary Key. + // (Boolean) Key *bool `json:"key,omitempty" tf:"key,omitempty"` - // Field name. + // (String) Name *string `json:"name,omitempty" tf:"name,omitempty"` - // - A path where resulting tables are stored. + // (String) Path *string `json:"path,omitempty" tf:"path,omitempty"` - // Mark field as required. + // (Boolean) Required *bool `json:"required,omitempty" tf:"required,omitempty"` - // Field type, one of: INT64, INT32, INT16, INT8, UINT64, UINT32, UINT16, UINT8, DOUBLE, BOOLEAN, STRING, UTF8, ANY, DATETIME. + // (String) Type *string `json:"type,omitempty" tf:"type,omitempty"` } type TskvParserDataSchemaFieldsFieldsParameters struct { - // Mark field as Primary Key. + // (Boolean) // +kubebuilder:validation:Optional Key *bool `json:"key,omitempty" tf:"key,omitempty"` - // Field name. + // (String) // +kubebuilder:validation:Optional Name *string `json:"name,omitempty" tf:"name,omitempty"` - // - A path where resulting tables are stored. + // (String) // +kubebuilder:validation:Optional Path *string `json:"path,omitempty" tf:"path,omitempty"` - // Mark field as required. + // (Boolean) // +kubebuilder:validation:Optional Required *bool `json:"required,omitempty" tf:"required,omitempty"` - // Field type, one of: INT64, INT32, INT16, INT8, UINT64, UINT32, UINT16, UINT8, DOUBLE, BOOLEAN, STRING, UTF8, ANY, DATETIME. + // (String) // +kubebuilder:validation:Optional Type *string `json:"type,omitempty" tf:"type,omitempty"` } type TskvParserDataSchemaFieldsInitParameters struct { - // Description of the data schema in the array of fields structure (documented below). + // (Block List, Max: 1) (see below for nested schema) Fields []TskvParserDataSchemaFieldsFieldsInitParameters `json:"fields,omitempty" tf:"fields,omitempty"` } type TskvParserDataSchemaFieldsObservation struct { - // Description of the data schema in the array of fields structure (documented below). + // (Block List, Max: 1) (see below for nested schema) Fields []TskvParserDataSchemaFieldsFieldsObservation `json:"fields,omitempty" tf:"fields,omitempty"` } type TskvParserDataSchemaFieldsParameters struct { - // Description of the data schema in the array of fields structure (documented below). + // (Block List, Max: 1) (see below for nested schema) // +kubebuilder:validation:Optional Fields []TskvParserDataSchemaFieldsFieldsParameters `json:"fields,omitempty" tf:"fields,omitempty"` } type TskvParserDataSchemaInitParameters struct { - // Description of the data schema in the array of fields structure (documented below). + // (Block List, Max: 1) (see below for nested schema) Fields []DataSchemaFieldsInitParameters `json:"fields,omitempty" tf:"fields,omitempty"` - // Description of the data schema as JSON specification. + // (String) JSONFields *string `json:"jsonFields,omitempty" tf:"json_fields,omitempty"` } type TskvParserDataSchemaObservation struct { - // Description of the data schema in the array of fields structure (documented below). + // (Block List, Max: 1) (see below for nested schema) Fields []DataSchemaFieldsObservation `json:"fields,omitempty" tf:"fields,omitempty"` - // Description of the data schema as JSON specification. + // (String) JSONFields *string `json:"jsonFields,omitempty" tf:"json_fields,omitempty"` } type TskvParserDataSchemaParameters struct { - // Description of the data schema in the array of fields structure (documented below). + // (Block List, Max: 1) (see below for nested schema) // +kubebuilder:validation:Optional Fields []DataSchemaFieldsParameters `json:"fields,omitempty" tf:"fields,omitempty"` - // Description of the data schema as JSON specification. + // (String) // +kubebuilder:validation:Optional JSONFields *string `json:"jsonFields,omitempty" tf:"json_fields,omitempty"` } type TskvParserInitParameters struct { - // Add fields, that are not in the schema, into the _rest column. + // (Boolean) AddRestColumn *bool `json:"addRestColumn,omitempty" tf:"add_rest_column,omitempty"` - // Data parsing scheme.The structure is documented below. + // (Block List, Max: 1) (see below for nested schema) DataSchema []TskvParserDataSchemaInitParameters `json:"dataSchema,omitempty" tf:"data_schema,omitempty"` - // Allow null keys. If false - null keys will be putted to unparsed data + // (Boolean) NullKeysAllowed *bool `json:"nullKeysAllowed,omitempty" tf:"null_keys_allowed,omitempty"` - // Allow unescape string values. + // (Boolean) UnescapeStringValues *bool `json:"unescapeStringValues,omitempty" tf:"unescape_string_values,omitempty"` } type TskvParserObservation struct { - // Add fields, that are not in the schema, into the _rest column. + // (Boolean) AddRestColumn *bool `json:"addRestColumn,omitempty" tf:"add_rest_column,omitempty"` - // Data parsing scheme.The structure is documented below. + // (Block List, Max: 1) (see below for nested schema) DataSchema []TskvParserDataSchemaObservation `json:"dataSchema,omitempty" tf:"data_schema,omitempty"` - // Allow null keys. If false - null keys will be putted to unparsed data + // (Boolean) NullKeysAllowed *bool `json:"nullKeysAllowed,omitempty" tf:"null_keys_allowed,omitempty"` - // Allow unescape string values. + // (Boolean) UnescapeStringValues *bool `json:"unescapeStringValues,omitempty" tf:"unescape_string_values,omitempty"` } type TskvParserParameters struct { - // Add fields, that are not in the schema, into the _rest column. + // (Boolean) // +kubebuilder:validation:Optional AddRestColumn *bool `json:"addRestColumn,omitempty" tf:"add_rest_column,omitempty"` - // Data parsing scheme.The structure is documented below. + // (Block List, Max: 1) (see below for nested schema) // +kubebuilder:validation:Optional DataSchema []TskvParserDataSchemaParameters `json:"dataSchema,omitempty" tf:"data_schema,omitempty"` - // Allow null keys. If false - null keys will be putted to unparsed data + // (Boolean) // +kubebuilder:validation:Optional NullKeysAllowed *bool `json:"nullKeysAllowed,omitempty" tf:"null_keys_allowed,omitempty"` - // Allow unescape string values. + // (Boolean) // +kubebuilder:validation:Optional UnescapeStringValues *bool `json:"unescapeStringValues,omitempty" tf:"unescape_string_values,omitempty"` } type YdbSourceInitParameters struct { - // - Custom name for changefeed. + // (String) ChangefeedCustomName *string `json:"changefeedCustomName,omitempty" tf:"changefeed_custom_name,omitempty"` - // - Database. + // (String) Database *string `json:"database,omitempty" tf:"database,omitempty"` - // - Instance of YDB. Example: "my-cute-ydb.cloud.yandex.ru:2135". + // (String) Instance *string `json:"instance,omitempty" tf:"instance,omitempty"` - // - A list of paths which should be uploaded. When not specified, all available tables are uploaded. + // (List of String) Paths []*string `json:"paths,omitempty" tf:"paths,omitempty"` - // - Authentication key. + // (String, Sensitive) SaKeyContentSecretRef *v1.SecretKeySelector `json:"saKeyContentSecretRef,omitempty" tf:"-"` - // - List of security groups that the transfer associated with this endpoint should use. + // (List of String) SecurityGroups []*string `json:"securityGroups,omitempty" tf:"security_groups,omitempty"` - // - Service account ID for interaction with database. + // (String) ServiceAccountID *string `json:"serviceAccountId,omitempty" tf:"service_account_id,omitempty"` - // - Identifier of the Yandex Cloud VPC subnetwork to user for accessing the database. If omitted, the server has to be accessible via Internet. + // (String) SubnetID *string `json:"subnetId,omitempty" tf:"subnet_id,omitempty"` } type YdbSourceObservation struct { - // - Custom name for changefeed. + // (String) ChangefeedCustomName *string `json:"changefeedCustomName,omitempty" tf:"changefeed_custom_name,omitempty"` - // - Database. + // (String) Database *string `json:"database,omitempty" tf:"database,omitempty"` - // - Instance of YDB. Example: "my-cute-ydb.cloud.yandex.ru:2135". + // (String) Instance *string `json:"instance,omitempty" tf:"instance,omitempty"` - // - A list of paths which should be uploaded. When not specified, all available tables are uploaded. + // (List of String) Paths []*string `json:"paths,omitempty" tf:"paths,omitempty"` - // - List of security groups that the transfer associated with this endpoint should use. + // (List of String) SecurityGroups []*string `json:"securityGroups,omitempty" tf:"security_groups,omitempty"` - // - Service account ID for interaction with database. + // (String) ServiceAccountID *string `json:"serviceAccountId,omitempty" tf:"service_account_id,omitempty"` - // - Identifier of the Yandex Cloud VPC subnetwork to user for accessing the database. If omitted, the server has to be accessible via Internet. + // (String) SubnetID *string `json:"subnetId,omitempty" tf:"subnet_id,omitempty"` } type YdbSourceParameters struct { - // - Custom name for changefeed. + // (String) // +kubebuilder:validation:Optional ChangefeedCustomName *string `json:"changefeedCustomName,omitempty" tf:"changefeed_custom_name,omitempty"` - // - Database. + // (String) // +kubebuilder:validation:Optional Database *string `json:"database,omitempty" tf:"database,omitempty"` - // - Instance of YDB. Example: "my-cute-ydb.cloud.yandex.ru:2135". + // (String) // +kubebuilder:validation:Optional Instance *string `json:"instance,omitempty" tf:"instance,omitempty"` - // - A list of paths which should be uploaded. When not specified, all available tables are uploaded. + // (List of String) // +kubebuilder:validation:Optional Paths []*string `json:"paths,omitempty" tf:"paths,omitempty"` - // - Authentication key. + // (String, Sensitive) // +kubebuilder:validation:Optional SaKeyContentSecretRef *v1.SecretKeySelector `json:"saKeyContentSecretRef,omitempty" tf:"-"` - // - List of security groups that the transfer associated with this endpoint should use. + // (List of String) // +kubebuilder:validation:Optional SecurityGroups []*string `json:"securityGroups,omitempty" tf:"security_groups,omitempty"` - // - Service account ID for interaction with database. + // (String) // +kubebuilder:validation:Optional ServiceAccountID *string `json:"serviceAccountId,omitempty" tf:"service_account_id,omitempty"` - // - Identifier of the Yandex Cloud VPC subnetwork to user for accessing the database. If omitted, the server has to be accessible via Internet. + // (String) // +kubebuilder:validation:Optional SubnetID *string `json:"subnetId,omitempty" tf:"subnet_id,omitempty"` } type YdbTargetInitParameters struct { - // - How to clean collections when activating the transfer. One of "YDB_CLEANUP_POLICY_DISABLED" or "YDB_CLEANUP_POLICY_DROP". + // (String) CleanupPolicy *string `json:"cleanupPolicy,omitempty" tf:"cleanup_policy,omitempty"` - // - Database. + // (String) Database *string `json:"database,omitempty" tf:"database,omitempty"` - // - Compression that will be used for default columns family on YDB table creation One of "YDB_DEFAULT_COMPRESSION_UNSPECIFIED", "YDB_DEFAULT_COMPRESSION_DISABLED", "YDB_DEFAULT_COMPRESSION_LZ4". + // (String) DefaultCompression *string `json:"defaultCompression,omitempty" tf:"default_compression,omitempty"` - // - Instance of YDB. Example: "my-cute-ydb.cloud.yandex.ru:2135". + // (String) Instance *string `json:"instance,omitempty" tf:"instance,omitempty"` - // - Whether a column-oriented (i.e. OLAP) tables should be created. Default is false (create row-oriented OLTP tables). + // (Boolean) IsTableColumnOriented *bool `json:"isTableColumnOriented,omitempty" tf:"is_table_column_oriented,omitempty"` - // - A path where resulting tables are stored. + // (String) Path *string `json:"path,omitempty" tf:"path,omitempty"` - // - Authentication key. + // (String, Sensitive) SaKeyContentSecretRef *v1.SecretKeySelector `json:"saKeyContentSecretRef,omitempty" tf:"-"` - // - List of security groups that the transfer associated with this endpoint should use. + // (List of String) SecurityGroups []*string `json:"securityGroups,omitempty" tf:"security_groups,omitempty"` - // - Service account ID for interaction with database. + // (String) ServiceAccountID *string `json:"serviceAccountId,omitempty" tf:"service_account_id,omitempty"` - // - Identifier of the Yandex Cloud VPC subnetwork to user for accessing the database. If omitted, the server has to be accessible via Internet. + // (String) SubnetID *string `json:"subnetId,omitempty" tf:"subnet_id,omitempty"` } type YdbTargetObservation struct { - // - How to clean collections when activating the transfer. One of "YDB_CLEANUP_POLICY_DISABLED" or "YDB_CLEANUP_POLICY_DROP". + // (String) CleanupPolicy *string `json:"cleanupPolicy,omitempty" tf:"cleanup_policy,omitempty"` - // - Database. + // (String) Database *string `json:"database,omitempty" tf:"database,omitempty"` - // - Compression that will be used for default columns family on YDB table creation One of "YDB_DEFAULT_COMPRESSION_UNSPECIFIED", "YDB_DEFAULT_COMPRESSION_DISABLED", "YDB_DEFAULT_COMPRESSION_LZ4". + // (String) DefaultCompression *string `json:"defaultCompression,omitempty" tf:"default_compression,omitempty"` - // - Instance of YDB. Example: "my-cute-ydb.cloud.yandex.ru:2135". + // (String) Instance *string `json:"instance,omitempty" tf:"instance,omitempty"` - // - Whether a column-oriented (i.e. OLAP) tables should be created. Default is false (create row-oriented OLTP tables). + // (Boolean) IsTableColumnOriented *bool `json:"isTableColumnOriented,omitempty" tf:"is_table_column_oriented,omitempty"` - // - A path where resulting tables are stored. + // (String) Path *string `json:"path,omitempty" tf:"path,omitempty"` - // - List of security groups that the transfer associated with this endpoint should use. + // (List of String) SecurityGroups []*string `json:"securityGroups,omitempty" tf:"security_groups,omitempty"` - // - Service account ID for interaction with database. + // (String) ServiceAccountID *string `json:"serviceAccountId,omitempty" tf:"service_account_id,omitempty"` - // - Identifier of the Yandex Cloud VPC subnetwork to user for accessing the database. If omitted, the server has to be accessible via Internet. + // (String) SubnetID *string `json:"subnetId,omitempty" tf:"subnet_id,omitempty"` } type YdbTargetParameters struct { - // - How to clean collections when activating the transfer. One of "YDB_CLEANUP_POLICY_DISABLED" or "YDB_CLEANUP_POLICY_DROP". + // (String) // +kubebuilder:validation:Optional CleanupPolicy *string `json:"cleanupPolicy,omitempty" tf:"cleanup_policy,omitempty"` - // - Database. + // (String) // +kubebuilder:validation:Optional Database *string `json:"database,omitempty" tf:"database,omitempty"` - // - Compression that will be used for default columns family on YDB table creation One of "YDB_DEFAULT_COMPRESSION_UNSPECIFIED", "YDB_DEFAULT_COMPRESSION_DISABLED", "YDB_DEFAULT_COMPRESSION_LZ4". + // (String) // +kubebuilder:validation:Optional DefaultCompression *string `json:"defaultCompression,omitempty" tf:"default_compression,omitempty"` - // - Instance of YDB. Example: "my-cute-ydb.cloud.yandex.ru:2135". + // (String) // +kubebuilder:validation:Optional Instance *string `json:"instance,omitempty" tf:"instance,omitempty"` - // - Whether a column-oriented (i.e. OLAP) tables should be created. Default is false (create row-oriented OLTP tables). + // (Boolean) // +kubebuilder:validation:Optional IsTableColumnOriented *bool `json:"isTableColumnOriented,omitempty" tf:"is_table_column_oriented,omitempty"` - // - A path where resulting tables are stored. + // (String) // +kubebuilder:validation:Optional Path *string `json:"path,omitempty" tf:"path,omitempty"` - // - Authentication key. + // (String, Sensitive) // +kubebuilder:validation:Optional SaKeyContentSecretRef *v1.SecretKeySelector `json:"saKeyContentSecretRef,omitempty" tf:"-"` - // - List of security groups that the transfer associated with this endpoint should use. + // (List of String) // +kubebuilder:validation:Optional SecurityGroups []*string `json:"securityGroups,omitempty" tf:"security_groups,omitempty"` - // - Service account ID for interaction with database. + // (String) // +kubebuilder:validation:Optional ServiceAccountID *string `json:"serviceAccountId,omitempty" tf:"service_account_id,omitempty"` - // - Identifier of the Yandex Cloud VPC subnetwork to user for accessing the database. If omitted, the server has to be accessible via Internet. + // (String) // +kubebuilder:validation:Optional SubnetID *string `json:"subnetId,omitempty" tf:"subnet_id,omitempty"` } type YdsSourceInitParameters struct { - // - Should continue working, if consumer read lag exceed TTL of topic. + // (Boolean) AllowTTLRewind *bool `json:"allowTtlRewind,omitempty" tf:"allow_ttl_rewind,omitempty"` - // - Consumer. + // (String) Consumer *string `json:"consumer,omitempty" tf:"consumer,omitempty"` - // - Database. + // (String) Database *string `json:"database,omitempty" tf:"database,omitempty"` - // - YDS Endpoint. + // (String) Endpoint *string `json:"endpoint,omitempty" tf:"endpoint,omitempty"` - // - Data parsing rules. + // (Block List, Max: 1) (see below for nested schema) Parser []YdsSourceParserInitParameters `json:"parser,omitempty" tf:"parser,omitempty"` - // - List of security groups that the transfer associated with this endpoint should use. + // (List of String) SecurityGroups []*string `json:"securityGroups,omitempty" tf:"security_groups,omitempty"` - // - Service account ID for interaction with database. + // (String) ServiceAccountID *string `json:"serviceAccountId,omitempty" tf:"service_account_id,omitempty"` - // - Stream. + // (String) Stream *string `json:"stream,omitempty" tf:"stream,omitempty"` - // - Identifier of the Yandex Cloud VPC subnetwork to user for accessing the database. If omitted, the server has to be accessible via Internet. + // (String) SubnetID *string `json:"subnetId,omitempty" tf:"subnet_id,omitempty"` - // - List of supported compression codec. + // (List of String) SupportedCodecs []*string `json:"supportedCodecs,omitempty" tf:"supported_codecs,omitempty"` } type YdsSourceObservation struct { - // - Should continue working, if consumer read lag exceed TTL of topic. + // (Boolean) AllowTTLRewind *bool `json:"allowTtlRewind,omitempty" tf:"allow_ttl_rewind,omitempty"` - // - Consumer. + // (String) Consumer *string `json:"consumer,omitempty" tf:"consumer,omitempty"` - // - Database. + // (String) Database *string `json:"database,omitempty" tf:"database,omitempty"` - // - YDS Endpoint. + // (String) Endpoint *string `json:"endpoint,omitempty" tf:"endpoint,omitempty"` - // - Data parsing rules. + // (Block List, Max: 1) (see below for nested schema) Parser []YdsSourceParserObservation `json:"parser,omitempty" tf:"parser,omitempty"` - // - List of security groups that the transfer associated with this endpoint should use. + // (List of String) SecurityGroups []*string `json:"securityGroups,omitempty" tf:"security_groups,omitempty"` - // - Service account ID for interaction with database. + // (String) ServiceAccountID *string `json:"serviceAccountId,omitempty" tf:"service_account_id,omitempty"` - // - Stream. + // (String) Stream *string `json:"stream,omitempty" tf:"stream,omitempty"` - // - Identifier of the Yandex Cloud VPC subnetwork to user for accessing the database. If omitted, the server has to be accessible via Internet. + // (String) SubnetID *string `json:"subnetId,omitempty" tf:"subnet_id,omitempty"` - // - List of supported compression codec. + // (List of String) SupportedCodecs []*string `json:"supportedCodecs,omitempty" tf:"supported_codecs,omitempty"` } type YdsSourceParameters struct { - // - Should continue working, if consumer read lag exceed TTL of topic. + // (Boolean) // +kubebuilder:validation:Optional AllowTTLRewind *bool `json:"allowTtlRewind,omitempty" tf:"allow_ttl_rewind,omitempty"` - // - Consumer. + // (String) // +kubebuilder:validation:Optional Consumer *string `json:"consumer,omitempty" tf:"consumer,omitempty"` - // - Database. + // (String) // +kubebuilder:validation:Optional Database *string `json:"database,omitempty" tf:"database,omitempty"` - // - YDS Endpoint. + // (String) // +kubebuilder:validation:Optional Endpoint *string `json:"endpoint,omitempty" tf:"endpoint,omitempty"` - // - Data parsing rules. + // (Block List, Max: 1) (see below for nested schema) // +kubebuilder:validation:Optional Parser []YdsSourceParserParameters `json:"parser,omitempty" tf:"parser,omitempty"` - // - List of security groups that the transfer associated with this endpoint should use. + // (List of String) // +kubebuilder:validation:Optional SecurityGroups []*string `json:"securityGroups,omitempty" tf:"security_groups,omitempty"` - // - Service account ID for interaction with database. + // (String) // +kubebuilder:validation:Optional ServiceAccountID *string `json:"serviceAccountId,omitempty" tf:"service_account_id,omitempty"` - // - Stream. + // (String) // +kubebuilder:validation:Optional Stream *string `json:"stream,omitempty" tf:"stream,omitempty"` - // - Identifier of the Yandex Cloud VPC subnetwork to user for accessing the database. If omitted, the server has to be accessible via Internet. + // (String) // +kubebuilder:validation:Optional SubnetID *string `json:"subnetId,omitempty" tf:"subnet_id,omitempty"` - // - List of supported compression codec. + // (List of String) // +kubebuilder:validation:Optional SupportedCodecs []*string `json:"supportedCodecs,omitempty" tf:"supported_codecs,omitempty"` } type YdsSourceParserInitParameters struct { - // Parse Audit Trails data. Empty struct. + // (Block List, Max: 1) (see below for nested schema) AuditTrailsV1Parser []ParserAuditTrailsV1ParserInitParameters `json:"auditTrailsV1Parser,omitempty" tf:"audit_trails_v1_parser,omitempty"` - // Parse Cloud Logging data. Empty struct. + // (Block List, Max: 1) (see below for nested schema) CloudLoggingParser []ParserCloudLoggingParserInitParameters `json:"cloudLoggingParser,omitempty" tf:"cloud_logging_parser,omitempty"` - // Parse data in json format. + // (Block List, Max: 1) (see below for nested schema) JSONParser []ParserJSONParserInitParameters `json:"jsonParser,omitempty" tf:"json_parser,omitempty"` - // Parse data if tskv format. + // (Block List, Max: 1) (see below for nested schema) TskvParser []ParserTskvParserInitParameters `json:"tskvParser,omitempty" tf:"tskv_parser,omitempty"` } type YdsSourceParserObservation struct { - // Parse Audit Trails data. Empty struct. + // (Block List, Max: 1) (see below for nested schema) AuditTrailsV1Parser []ParserAuditTrailsV1ParserParameters `json:"auditTrailsV1Parser,omitempty" tf:"audit_trails_v1_parser,omitempty"` - // Parse Cloud Logging data. Empty struct. + // (Block List, Max: 1) (see below for nested schema) CloudLoggingParser []ParserCloudLoggingParserParameters `json:"cloudLoggingParser,omitempty" tf:"cloud_logging_parser,omitempty"` - // Parse data in json format. + // (Block List, Max: 1) (see below for nested schema) JSONParser []ParserJSONParserObservation `json:"jsonParser,omitempty" tf:"json_parser,omitempty"` - // Parse data if tskv format. + // (Block List, Max: 1) (see below for nested schema) TskvParser []ParserTskvParserObservation `json:"tskvParser,omitempty" tf:"tskv_parser,omitempty"` } type YdsSourceParserParameters struct { - // Parse Audit Trails data. Empty struct. + // (Block List, Max: 1) (see below for nested schema) // +kubebuilder:validation:Optional AuditTrailsV1Parser []ParserAuditTrailsV1ParserParameters `json:"auditTrailsV1Parser,omitempty" tf:"audit_trails_v1_parser,omitempty"` - // Parse Cloud Logging data. Empty struct. + // (Block List, Max: 1) (see below for nested schema) // +kubebuilder:validation:Optional CloudLoggingParser []ParserCloudLoggingParserParameters `json:"cloudLoggingParser,omitempty" tf:"cloud_logging_parser,omitempty"` - // Parse data in json format. + // (Block List, Max: 1) (see below for nested schema) // +kubebuilder:validation:Optional JSONParser []ParserJSONParserParameters `json:"jsonParser,omitempty" tf:"json_parser,omitempty"` - // Parse data if tskv format. + // (Block List, Max: 1) (see below for nested schema) // +kubebuilder:validation:Optional TskvParser []ParserTskvParserParameters `json:"tskvParser,omitempty" tf:"tskv_parser,omitempty"` } type YdsTargetInitParameters struct { - // - Database. + // (String) Database *string `json:"database,omitempty" tf:"database,omitempty"` - // - YDS Endpoint. + // (String) Endpoint *string `json:"endpoint,omitempty" tf:"endpoint,omitempty"` - // - Save transaction order + // (Boolean) SaveTxOrder *bool `json:"saveTxOrder,omitempty" tf:"save_tx_order,omitempty"` - // - List of security groups that the transfer associated with this endpoint should use. + // (List of String) SecurityGroups []*string `json:"securityGroups,omitempty" tf:"security_groups,omitempty"` - // - Data serialization format. + // (Block List, Max: 1) (see below for nested schema) Serializer []YdsTargetSerializerInitParameters `json:"serializer,omitempty" tf:"serializer,omitempty"` - // - Service account ID for interaction with database. + // (String) ServiceAccountID *string `json:"serviceAccountId,omitempty" tf:"service_account_id,omitempty"` - // - Stream. + // (String) Stream *string `json:"stream,omitempty" tf:"stream,omitempty"` - // - Identifier of the Yandex Cloud VPC subnetwork to user for accessing the database. If omitted, the server has to be accessible via Internet. + // (String) SubnetID *string `json:"subnetId,omitempty" tf:"subnet_id,omitempty"` } type YdsTargetObservation struct { - // - Database. + // (String) Database *string `json:"database,omitempty" tf:"database,omitempty"` - // - YDS Endpoint. + // (String) Endpoint *string `json:"endpoint,omitempty" tf:"endpoint,omitempty"` - // - Save transaction order + // (Boolean) SaveTxOrder *bool `json:"saveTxOrder,omitempty" tf:"save_tx_order,omitempty"` - // - List of security groups that the transfer associated with this endpoint should use. + // (List of String) SecurityGroups []*string `json:"securityGroups,omitempty" tf:"security_groups,omitempty"` - // - Data serialization format. + // (Block List, Max: 1) (see below for nested schema) Serializer []YdsTargetSerializerObservation `json:"serializer,omitempty" tf:"serializer,omitempty"` - // - Service account ID for interaction with database. + // (String) ServiceAccountID *string `json:"serviceAccountId,omitempty" tf:"service_account_id,omitempty"` - // - Stream. + // (String) Stream *string `json:"stream,omitempty" tf:"stream,omitempty"` - // - Identifier of the Yandex Cloud VPC subnetwork to user for accessing the database. If omitted, the server has to be accessible via Internet. + // (String) SubnetID *string `json:"subnetId,omitempty" tf:"subnet_id,omitempty"` } type YdsTargetParameters struct { - // - Database. + // (String) // +kubebuilder:validation:Optional Database *string `json:"database,omitempty" tf:"database,omitempty"` - // - YDS Endpoint. + // (String) // +kubebuilder:validation:Optional Endpoint *string `json:"endpoint,omitempty" tf:"endpoint,omitempty"` - // - Save transaction order + // (Boolean) // +kubebuilder:validation:Optional SaveTxOrder *bool `json:"saveTxOrder,omitempty" tf:"save_tx_order,omitempty"` - // - List of security groups that the transfer associated with this endpoint should use. + // (List of String) // +kubebuilder:validation:Optional SecurityGroups []*string `json:"securityGroups,omitempty" tf:"security_groups,omitempty"` - // - Data serialization format. + // (Block List, Max: 1) (see below for nested schema) // +kubebuilder:validation:Optional Serializer []YdsTargetSerializerParameters `json:"serializer,omitempty" tf:"serializer,omitempty"` - // - Service account ID for interaction with database. + // (String) // +kubebuilder:validation:Optional ServiceAccountID *string `json:"serviceAccountId,omitempty" tf:"service_account_id,omitempty"` - // - Stream. + // (String) // +kubebuilder:validation:Optional Stream *string `json:"stream,omitempty" tf:"stream,omitempty"` - // - Identifier of the Yandex Cloud VPC subnetwork to user for accessing the database. If omitted, the server has to be accessible via Internet. + // (String) // +kubebuilder:validation:Optional SubnetID *string `json:"subnetId,omitempty" tf:"subnet_id,omitempty"` } type YdsTargetSerializerInitParameters struct { - // Empty block. Select data serialization format automatically. + // (Block List, Max: 1) (see below for nested schema) SerializerAuto []SerializerSerializerAutoInitParameters `json:"serializerAuto,omitempty" tf:"serializer_auto,omitempty"` - // Serialize data in json format. The structure is documented below. + // (Block List, Max: 1) (see below for nested schema) SerializerDebezium []SerializerSerializerDebeziumInitParameters `json:"serializerDebezium,omitempty" tf:"serializer_debezium,omitempty"` - // Empty block. Serialize data in json format. + // (Block List, Max: 1) (see below for nested schema) SerializerJSON []SerializerSerializerJSONInitParameters `json:"serializerJson,omitempty" tf:"serializer_json,omitempty"` } type YdsTargetSerializerObservation struct { - // Empty block. Select data serialization format automatically. + // (Block List, Max: 1) (see below for nested schema) SerializerAuto []SerializerSerializerAutoParameters `json:"serializerAuto,omitempty" tf:"serializer_auto,omitempty"` - // Serialize data in json format. The structure is documented below. + // (Block List, Max: 1) (see below for nested schema) SerializerDebezium []SerializerSerializerDebeziumObservation `json:"serializerDebezium,omitempty" tf:"serializer_debezium,omitempty"` - // Empty block. Serialize data in json format. + // (Block List, Max: 1) (see below for nested schema) SerializerJSON []SerializerSerializerJSONParameters `json:"serializerJson,omitempty" tf:"serializer_json,omitempty"` } type YdsTargetSerializerParameters struct { - // Empty block. Select data serialization format automatically. + // (Block List, Max: 1) (see below for nested schema) // +kubebuilder:validation:Optional SerializerAuto []SerializerSerializerAutoParameters `json:"serializerAuto,omitempty" tf:"serializer_auto,omitempty"` - // Serialize data in json format. The structure is documented below. + // (Block List, Max: 1) (see below for nested schema) // +kubebuilder:validation:Optional SerializerDebezium []SerializerSerializerDebeziumParameters `json:"serializerDebezium,omitempty" tf:"serializer_debezium,omitempty"` - // Empty block. Serialize data in json format. + // (Block List, Max: 1) (see below for nested schema) // +kubebuilder:validation:Optional SerializerJSON []SerializerSerializerJSONParameters `json:"serializerJson,omitempty" tf:"serializer_json,omitempty"` } @@ -5376,7 +5527,7 @@ type EndpointStatus struct { // +kubebuilder:subresource:status // +kubebuilder:storageversion -// Endpoint is the Schema for the Endpoints API. Manages a Data Transfer endpoint within Yandex.Cloud. +// Endpoint is the Schema for the Endpoints API. // +kubebuilder:printcolumn:name="SYNCED",type="string",JSONPath=".status.conditions[?(@.type=='Synced')].status" // +kubebuilder:printcolumn:name="READY",type="string",JSONPath=".status.conditions[?(@.type=='Ready')].status" // +kubebuilder:printcolumn:name="EXTERNAL-NAME",type="string",JSONPath=".metadata.annotations.crossplane\\.io/external-name" diff --git a/apis/datatransfer/v1alpha1/zz_generated.deepcopy.go b/apis/datatransfer/v1alpha1/zz_generated.deepcopy.go index b36fbb4..eff86e9 100644 --- a/apis/datatransfer/v1alpha1/zz_generated.deepcopy.go +++ b/apis/datatransfer/v1alpha1/zz_generated.deepcopy.go @@ -409,6 +409,11 @@ func (in *AuthSaslPasswordParameters) DeepCopy() *AuthSaslPasswordParameters { // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *ClickhouseSourceInitParameters) DeepCopyInto(out *ClickhouseSourceInitParameters) { *out = *in + if in.ClickhouseClusterName != nil { + in, out := &in.ClickhouseClusterName, &out.ClickhouseClusterName + *out = new(string) + **out = **in + } if in.Connection != nil { in, out := &in.Connection, &out.Connection *out = make([]ConnectionInitParameters, len(*in)) @@ -479,6 +484,11 @@ func (in *ClickhouseSourceInitParameters) DeepCopy() *ClickhouseSourceInitParame // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *ClickhouseSourceObservation) DeepCopyInto(out *ClickhouseSourceObservation) { *out = *in + if in.ClickhouseClusterName != nil { + in, out := &in.ClickhouseClusterName, &out.ClickhouseClusterName + *out = new(string) + **out = **in + } if in.Connection != nil { in, out := &in.Connection, &out.Connection *out = make([]ConnectionObservation, len(*in)) @@ -539,6 +549,11 @@ func (in *ClickhouseSourceObservation) DeepCopy() *ClickhouseSourceObservation { // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *ClickhouseSourceParameters) DeepCopyInto(out *ClickhouseSourceParameters) { *out = *in + if in.ClickhouseClusterName != nil { + in, out := &in.ClickhouseClusterName, &out.ClickhouseClusterName + *out = new(string) + **out = **in + } if in.Connection != nil { in, out := &in.Connection, &out.Connection *out = make([]ConnectionParameters, len(*in)) diff --git a/apis/datatransfer/v1alpha1/zz_transfer_types.go b/apis/datatransfer/v1alpha1/zz_transfer_types.go index 0aefaec..9e1eaff 100755 --- a/apis/datatransfer/v1alpha1/zz_transfer_types.go +++ b/apis/datatransfer/v1alpha1/zz_transfer_types.go @@ -11,690 +11,696 @@ import ( type ColumnsInitParameters struct { - // List of columns that will be excluded to transfer. + // (List of String) ExcludeColumns []*string `json:"excludeColumns,omitempty" tf:"exclude_columns,omitempty"` - // List of columns that will be included to transfer. + // (List of String) IncludeColumns []*string `json:"includeColumns,omitempty" tf:"include_columns,omitempty"` } type ColumnsObservation struct { - // List of columns that will be excluded to transfer. + // (List of String) ExcludeColumns []*string `json:"excludeColumns,omitempty" tf:"exclude_columns,omitempty"` - // List of columns that will be included to transfer. + // (List of String) IncludeColumns []*string `json:"includeColumns,omitempty" tf:"include_columns,omitempty"` } type ColumnsParameters struct { - // List of columns that will be excluded to transfer. + // (List of String) // +kubebuilder:validation:Optional ExcludeColumns []*string `json:"excludeColumns,omitempty" tf:"exclude_columns,omitempty"` - // List of columns that will be included to transfer. + // (List of String) // +kubebuilder:validation:Optional IncludeColumns []*string `json:"includeColumns,omitempty" tf:"include_columns,omitempty"` } type ConvertToStringInitParameters struct { - // List of strings that specify the name of the column for data masking (a regular expression). + // (Block List, Max: 1) (see below for nested schema) Columns []ColumnsInitParameters `json:"columns,omitempty" tf:"columns,omitempty"` - // Table filter. + // (Block List, Max: 1) (see below for nested schema) Tables []TablesInitParameters `json:"tables,omitempty" tf:"tables,omitempty"` } type ConvertToStringObservation struct { - // List of strings that specify the name of the column for data masking (a regular expression). + // (Block List, Max: 1) (see below for nested schema) Columns []ColumnsObservation `json:"columns,omitempty" tf:"columns,omitempty"` - // Table filter. + // (Block List, Max: 1) (see below for nested schema) Tables []TablesObservation `json:"tables,omitempty" tf:"tables,omitempty"` } type ConvertToStringParameters struct { - // List of strings that specify the name of the column for data masking (a regular expression). + // (Block List, Max: 1) (see below for nested schema) // +kubebuilder:validation:Optional Columns []ColumnsParameters `json:"columns,omitempty" tf:"columns,omitempty"` - // Table filter. + // (Block List, Max: 1) (see below for nested schema) // +kubebuilder:validation:Optional Tables []TablesParameters `json:"tables,omitempty" tf:"tables,omitempty"` } type FilterColumnsColumnsInitParameters struct { - // List of columns that will be excluded to transfer. + // (List of String) ExcludeColumns []*string `json:"excludeColumns,omitempty" tf:"exclude_columns,omitempty"` - // List of columns that will be included to transfer. + // (List of String) IncludeColumns []*string `json:"includeColumns,omitempty" tf:"include_columns,omitempty"` } type FilterColumnsColumnsObservation struct { - // List of columns that will be excluded to transfer. + // (List of String) ExcludeColumns []*string `json:"excludeColumns,omitempty" tf:"exclude_columns,omitempty"` - // List of columns that will be included to transfer. + // (List of String) IncludeColumns []*string `json:"includeColumns,omitempty" tf:"include_columns,omitempty"` } type FilterColumnsColumnsParameters struct { - // List of columns that will be excluded to transfer. + // (List of String) // +kubebuilder:validation:Optional ExcludeColumns []*string `json:"excludeColumns,omitempty" tf:"exclude_columns,omitempty"` - // List of columns that will be included to transfer. + // (List of String) // +kubebuilder:validation:Optional IncludeColumns []*string `json:"includeColumns,omitempty" tf:"include_columns,omitempty"` } type FilterColumnsInitParameters struct { - // List of strings that specify the name of the column for data masking (a regular expression). + // (Block List, Max: 1) (see below for nested schema) Columns []FilterColumnsColumnsInitParameters `json:"columns,omitempty" tf:"columns,omitempty"` - // Table filter. + // (Block List, Max: 1) (see below for nested schema) Tables []FilterColumnsTablesInitParameters `json:"tables,omitempty" tf:"tables,omitempty"` } type FilterColumnsObservation struct { - // List of strings that specify the name of the column for data masking (a regular expression). + // (Block List, Max: 1) (see below for nested schema) Columns []FilterColumnsColumnsObservation `json:"columns,omitempty" tf:"columns,omitempty"` - // Table filter. + // (Block List, Max: 1) (see below for nested schema) Tables []FilterColumnsTablesObservation `json:"tables,omitempty" tf:"tables,omitempty"` } type FilterColumnsParameters struct { - // List of strings that specify the name of the column for data masking (a regular expression). + // (Block List, Max: 1) (see below for nested schema) // +kubebuilder:validation:Optional Columns []FilterColumnsColumnsParameters `json:"columns,omitempty" tf:"columns,omitempty"` - // Table filter. + // (Block List, Max: 1) (see below for nested schema) // +kubebuilder:validation:Optional Tables []FilterColumnsTablesParameters `json:"tables,omitempty" tf:"tables,omitempty"` } type FilterColumnsTablesInitParameters struct { - // List of tables that will be excluded to transfer. + // (List of String) ExcludeTables []*string `json:"excludeTables,omitempty" tf:"exclude_tables,omitempty"` - // List of tables that will be included to transfer. + // (List of String) IncludeTables []*string `json:"includeTables,omitempty" tf:"include_tables,omitempty"` } type FilterColumnsTablesObservation struct { - // List of tables that will be excluded to transfer. + // (List of String) ExcludeTables []*string `json:"excludeTables,omitempty" tf:"exclude_tables,omitempty"` - // List of tables that will be included to transfer. + // (List of String) IncludeTables []*string `json:"includeTables,omitempty" tf:"include_tables,omitempty"` } type FilterColumnsTablesParameters struct { - // List of tables that will be excluded to transfer. + // (List of String) // +kubebuilder:validation:Optional ExcludeTables []*string `json:"excludeTables,omitempty" tf:"exclude_tables,omitempty"` - // List of tables that will be included to transfer. + // (List of String) // +kubebuilder:validation:Optional IncludeTables []*string `json:"includeTables,omitempty" tf:"include_tables,omitempty"` } type FilterRowsInitParameters struct { - // Filtering criterion. This can be comparison operators for numeric, string, and Boolean values, comparison to NULL, and checking whether a substring is part of a string. Details here: https://cloud.yandex.com/en/docs/data-transfer/concepts/data-transformation#append-only-sources + // (String) Filter *string `json:"filter,omitempty" tf:"filter,omitempty"` - // Table filter. + // (Block List, Max: 1) (see below for nested schema) Tables []FilterRowsTablesInitParameters `json:"tables,omitempty" tf:"tables,omitempty"` } type FilterRowsObservation struct { - // Filtering criterion. This can be comparison operators for numeric, string, and Boolean values, comparison to NULL, and checking whether a substring is part of a string. Details here: https://cloud.yandex.com/en/docs/data-transfer/concepts/data-transformation#append-only-sources + // (String) Filter *string `json:"filter,omitempty" tf:"filter,omitempty"` - // Table filter. + // (Block List, Max: 1) (see below for nested schema) Tables []FilterRowsTablesObservation `json:"tables,omitempty" tf:"tables,omitempty"` } type FilterRowsParameters struct { - // Filtering criterion. This can be comparison operators for numeric, string, and Boolean values, comparison to NULL, and checking whether a substring is part of a string. Details here: https://cloud.yandex.com/en/docs/data-transfer/concepts/data-transformation#append-only-sources + // (String) // +kubebuilder:validation:Optional Filter *string `json:"filter,omitempty" tf:"filter,omitempty"` - // Table filter. + // (Block List, Max: 1) (see below for nested schema) // +kubebuilder:validation:Optional Tables []FilterRowsTablesParameters `json:"tables,omitempty" tf:"tables,omitempty"` } type FilterRowsTablesInitParameters struct { - // List of tables that will be excluded to transfer. + // (List of String) ExcludeTables []*string `json:"excludeTables,omitempty" tf:"exclude_tables,omitempty"` - // List of tables that will be included to transfer. + // (List of String) IncludeTables []*string `json:"includeTables,omitempty" tf:"include_tables,omitempty"` } type FilterRowsTablesObservation struct { - // List of tables that will be excluded to transfer. + // (List of String) ExcludeTables []*string `json:"excludeTables,omitempty" tf:"exclude_tables,omitempty"` - // List of tables that will be included to transfer. + // (List of String) IncludeTables []*string `json:"includeTables,omitempty" tf:"include_tables,omitempty"` } type FilterRowsTablesParameters struct { - // List of tables that will be excluded to transfer. + // (List of String) // +kubebuilder:validation:Optional ExcludeTables []*string `json:"excludeTables,omitempty" tf:"exclude_tables,omitempty"` - // List of tables that will be included to transfer. + // (List of String) // +kubebuilder:validation:Optional IncludeTables []*string `json:"includeTables,omitempty" tf:"include_tables,omitempty"` } type FunctionInitParameters struct { - // Hash mask function. + // (Block List, Max: 1) (see below for nested schema) MaskFunctionHash []MaskFunctionHashInitParameters `json:"maskFunctionHash,omitempty" tf:"mask_function_hash,omitempty"` } type FunctionObservation struct { - // Hash mask function. + // (Block List, Max: 1) (see below for nested schema) MaskFunctionHash []MaskFunctionHashObservation `json:"maskFunctionHash,omitempty" tf:"mask_function_hash,omitempty"` } type FunctionParameters struct { - // Hash mask function. + // (Block List, Max: 1) (see below for nested schema) // +kubebuilder:validation:Optional MaskFunctionHash []MaskFunctionHashParameters `json:"maskFunctionHash,omitempty" tf:"mask_function_hash,omitempty"` } type MaskFieldInitParameters struct { - // List of strings that specify the name of the column for data masking (a regular expression). + // (Block List, Max: 1) (see below for nested schema) Columns []*string `json:"columns,omitempty" tf:"columns,omitempty"` - // Mask function. + // (Block List, Max: 1) (see below for nested schema) Function []FunctionInitParameters `json:"function,omitempty" tf:"function,omitempty"` - // Table filter. + // (Block List, Max: 1) (see below for nested schema) Tables []MaskFieldTablesInitParameters `json:"tables,omitempty" tf:"tables,omitempty"` } type MaskFieldObservation struct { - // List of strings that specify the name of the column for data masking (a regular expression). + // (Block List, Max: 1) (see below for nested schema) Columns []*string `json:"columns,omitempty" tf:"columns,omitempty"` - // Mask function. + // (Block List, Max: 1) (see below for nested schema) Function []FunctionObservation `json:"function,omitempty" tf:"function,omitempty"` - // Table filter. + // (Block List, Max: 1) (see below for nested schema) Tables []MaskFieldTablesObservation `json:"tables,omitempty" tf:"tables,omitempty"` } type MaskFieldParameters struct { - // List of strings that specify the name of the column for data masking (a regular expression). + // (Block List, Max: 1) (see below for nested schema) // +kubebuilder:validation:Optional Columns []*string `json:"columns,omitempty" tf:"columns,omitempty"` - // Mask function. + // (Block List, Max: 1) (see below for nested schema) // +kubebuilder:validation:Optional Function []FunctionParameters `json:"function,omitempty" tf:"function,omitempty"` - // Table filter. + // (Block List, Max: 1) (see below for nested schema) // +kubebuilder:validation:Optional Tables []MaskFieldTablesParameters `json:"tables,omitempty" tf:"tables,omitempty"` } type MaskFieldTablesInitParameters struct { - // List of tables that will be excluded to transfer. + // (List of String) ExcludeTables []*string `json:"excludeTables,omitempty" tf:"exclude_tables,omitempty"` - // List of tables that will be included to transfer. + // (List of String) IncludeTables []*string `json:"includeTables,omitempty" tf:"include_tables,omitempty"` } type MaskFieldTablesObservation struct { - // List of tables that will be excluded to transfer. + // (List of String) ExcludeTables []*string `json:"excludeTables,omitempty" tf:"exclude_tables,omitempty"` - // List of tables that will be included to transfer. + // (List of String) IncludeTables []*string `json:"includeTables,omitempty" tf:"include_tables,omitempty"` } type MaskFieldTablesParameters struct { - // List of tables that will be excluded to transfer. + // (List of String) // +kubebuilder:validation:Optional ExcludeTables []*string `json:"excludeTables,omitempty" tf:"exclude_tables,omitempty"` - // List of tables that will be included to transfer. + // (List of String) // +kubebuilder:validation:Optional IncludeTables []*string `json:"includeTables,omitempty" tf:"include_tables,omitempty"` } type MaskFunctionHashInitParameters struct { - // This string will be used in the HMAC(sha256, salt) function applied to the column data. + // (String) UserDefinedSalt *string `json:"userDefinedSalt,omitempty" tf:"user_defined_salt,omitempty"` } type MaskFunctionHashObservation struct { - // This string will be used in the HMAC(sha256, salt) function applied to the column data. + // (String) UserDefinedSalt *string `json:"userDefinedSalt,omitempty" tf:"user_defined_salt,omitempty"` } type MaskFunctionHashParameters struct { - // This string will be used in the HMAC(sha256, salt) function applied to the column data. + // (String) // +kubebuilder:validation:Optional UserDefinedSalt *string `json:"userDefinedSalt,omitempty" tf:"user_defined_salt,omitempty"` } type NewNameInitParameters struct { - // Name of the transfer. + // (String) Name *string `json:"name,omitempty" tf:"name,omitempty"` + // (String) NameSpace *string `json:"nameSpace,omitempty" tf:"name_space,omitempty"` } type NewNameObservation struct { - // Name of the transfer. + // (String) Name *string `json:"name,omitempty" tf:"name,omitempty"` + // (String) NameSpace *string `json:"nameSpace,omitempty" tf:"name_space,omitempty"` } type NewNameParameters struct { - // Name of the transfer. + // (String) // +kubebuilder:validation:Optional Name *string `json:"name,omitempty" tf:"name,omitempty"` + // (String) // +kubebuilder:validation:Optional NameSpace *string `json:"nameSpace,omitempty" tf:"name_space,omitempty"` } type OriginalNameInitParameters struct { - // Name of the transfer. + // (String) Name *string `json:"name,omitempty" tf:"name,omitempty"` + // (String) NameSpace *string `json:"nameSpace,omitempty" tf:"name_space,omitempty"` } type OriginalNameObservation struct { - // Name of the transfer. + // (String) Name *string `json:"name,omitempty" tf:"name,omitempty"` + // (String) NameSpace *string `json:"nameSpace,omitempty" tf:"name_space,omitempty"` } type OriginalNameParameters struct { - // Name of the transfer. + // (String) // +kubebuilder:validation:Optional Name *string `json:"name,omitempty" tf:"name,omitempty"` + // (String) // +kubebuilder:validation:Optional NameSpace *string `json:"nameSpace,omitempty" tf:"name_space,omitempty"` } type RenameTablesInitParameters struct { - // Set rules for renaming tables by specifying the current names of the tables in the source and new names for these tables in the target. + // (Block List, Max: 1) (see below for nested schema) RenameTables []RenameTablesRenameTablesInitParameters `json:"renameTables,omitempty" tf:"rename_tables,omitempty"` } type RenameTablesObservation struct { - // Set rules for renaming tables by specifying the current names of the tables in the source and new names for these tables in the target. + // (Block List, Max: 1) (see below for nested schema) RenameTables []RenameTablesRenameTablesObservation `json:"renameTables,omitempty" tf:"rename_tables,omitempty"` } type RenameTablesParameters struct { - // Set rules for renaming tables by specifying the current names of the tables in the source and new names for these tables in the target. + // (Block List, Max: 1) (see below for nested schema) // +kubebuilder:validation:Optional RenameTables []RenameTablesRenameTablesParameters `json:"renameTables,omitempty" tf:"rename_tables,omitempty"` } type RenameTablesRenameTablesInitParameters struct { - // Specify the new names for this table in the target. + // (Block List, Max: 1) (see below for nested schema) NewName []NewNameInitParameters `json:"newName,omitempty" tf:"new_name,omitempty"` - // Specify the current names of the table in the source. + // (Block List, Max: 1) (see below for nested schema) OriginalName []OriginalNameInitParameters `json:"originalName,omitempty" tf:"original_name,omitempty"` } type RenameTablesRenameTablesObservation struct { - // Specify the new names for this table in the target. + // (Block List, Max: 1) (see below for nested schema) NewName []NewNameObservation `json:"newName,omitempty" tf:"new_name,omitempty"` - // Specify the current names of the table in the source. + // (Block List, Max: 1) (see below for nested schema) OriginalName []OriginalNameObservation `json:"originalName,omitempty" tf:"original_name,omitempty"` } type RenameTablesRenameTablesParameters struct { - // Specify the new names for this table in the target. + // (Block List, Max: 1) (see below for nested schema) // +kubebuilder:validation:Optional NewName []NewNameParameters `json:"newName,omitempty" tf:"new_name,omitempty"` - // Specify the current names of the table in the source. + // (Block List, Max: 1) (see below for nested schema) // +kubebuilder:validation:Optional OriginalName []OriginalNameParameters `json:"originalName,omitempty" tf:"original_name,omitempty"` } type ReplacePrimaryKeyInitParameters struct { - // List of columns to be used as primary keys. + // (List of String) Keys []*string `json:"keys,omitempty" tf:"keys,omitempty"` - // Table filter. + // (Block List, Max: 1) (see below for nested schema) Tables []ReplacePrimaryKeyTablesInitParameters `json:"tables,omitempty" tf:"tables,omitempty"` } type ReplacePrimaryKeyObservation struct { - // List of columns to be used as primary keys. + // (List of String) Keys []*string `json:"keys,omitempty" tf:"keys,omitempty"` - // Table filter. + // (Block List, Max: 1) (see below for nested schema) Tables []ReplacePrimaryKeyTablesObservation `json:"tables,omitempty" tf:"tables,omitempty"` } type ReplacePrimaryKeyParameters struct { - // List of columns to be used as primary keys. + // (List of String) // +kubebuilder:validation:Optional Keys []*string `json:"keys,omitempty" tf:"keys,omitempty"` - // Table filter. + // (Block List, Max: 1) (see below for nested schema) // +kubebuilder:validation:Optional Tables []ReplacePrimaryKeyTablesParameters `json:"tables,omitempty" tf:"tables,omitempty"` } type ReplacePrimaryKeyTablesInitParameters struct { - // List of tables that will be excluded to transfer. + // (List of String) ExcludeTables []*string `json:"excludeTables,omitempty" tf:"exclude_tables,omitempty"` - // List of tables that will be included to transfer. + // (List of String) IncludeTables []*string `json:"includeTables,omitempty" tf:"include_tables,omitempty"` } type ReplacePrimaryKeyTablesObservation struct { - // List of tables that will be excluded to transfer. + // (List of String) ExcludeTables []*string `json:"excludeTables,omitempty" tf:"exclude_tables,omitempty"` - // List of tables that will be included to transfer. + // (List of String) IncludeTables []*string `json:"includeTables,omitempty" tf:"include_tables,omitempty"` } type ReplacePrimaryKeyTablesParameters struct { - // List of tables that will be excluded to transfer. + // (List of String) // +kubebuilder:validation:Optional ExcludeTables []*string `json:"excludeTables,omitempty" tf:"exclude_tables,omitempty"` - // List of tables that will be included to transfer. + // (List of String) // +kubebuilder:validation:Optional IncludeTables []*string `json:"includeTables,omitempty" tf:"include_tables,omitempty"` } type RuntimeInitParameters struct { - // YC Runtime parameters for the transfer. + // (Block List, Max: 1) (see below for nested schema) YcRuntime []YcRuntimeInitParameters `json:"ycRuntime,omitempty" tf:"yc_runtime,omitempty"` } type RuntimeObservation struct { - // YC Runtime parameters for the transfer. + // (Block List, Max: 1) (see below for nested schema) YcRuntime []YcRuntimeObservation `json:"ycRuntime,omitempty" tf:"yc_runtime,omitempty"` } type RuntimeParameters struct { - // YC Runtime parameters for the transfer. + // (Block List, Max: 1) (see below for nested schema) // +kubebuilder:validation:Optional YcRuntime []YcRuntimeParameters `json:"ycRuntime,omitempty" tf:"yc_runtime,omitempty"` } type SharderTransformerColumnsInitParameters struct { - // List of columns that will be excluded to transfer. + // (List of String) ExcludeColumns []*string `json:"excludeColumns,omitempty" tf:"exclude_columns,omitempty"` - // List of columns that will be included to transfer. + // (List of String) IncludeColumns []*string `json:"includeColumns,omitempty" tf:"include_columns,omitempty"` } type SharderTransformerColumnsObservation struct { - // List of columns that will be excluded to transfer. + // (List of String) ExcludeColumns []*string `json:"excludeColumns,omitempty" tf:"exclude_columns,omitempty"` - // List of columns that will be included to transfer. + // (List of String) IncludeColumns []*string `json:"includeColumns,omitempty" tf:"include_columns,omitempty"` } type SharderTransformerColumnsParameters struct { - // List of columns that will be excluded to transfer. + // (List of String) // +kubebuilder:validation:Optional ExcludeColumns []*string `json:"excludeColumns,omitempty" tf:"exclude_columns,omitempty"` - // List of columns that will be included to transfer. + // (List of String) // +kubebuilder:validation:Optional IncludeColumns []*string `json:"includeColumns,omitempty" tf:"include_columns,omitempty"` } type SharderTransformerInitParameters struct { - // List of strings that specify the name of the column for data masking (a regular expression). + // (Block List, Max: 1) (see below for nested schema) Columns []SharderTransformerColumnsInitParameters `json:"columns,omitempty" tf:"columns,omitempty"` - // Number of shards. + // (Number) ShardsCount *float64 `json:"shardsCount,omitempty" tf:"shards_count,omitempty"` - // Table filter. + // (Block List, Max: 1) (see below for nested schema) Tables []SharderTransformerTablesInitParameters `json:"tables,omitempty" tf:"tables,omitempty"` } type SharderTransformerObservation struct { - // List of strings that specify the name of the column for data masking (a regular expression). + // (Block List, Max: 1) (see below for nested schema) Columns []SharderTransformerColumnsObservation `json:"columns,omitempty" tf:"columns,omitempty"` - // Number of shards. + // (Number) ShardsCount *float64 `json:"shardsCount,omitempty" tf:"shards_count,omitempty"` - // Table filter. + // (Block List, Max: 1) (see below for nested schema) Tables []SharderTransformerTablesObservation `json:"tables,omitempty" tf:"tables,omitempty"` } type SharderTransformerParameters struct { - // List of strings that specify the name of the column for data masking (a regular expression). + // (Block List, Max: 1) (see below for nested schema) // +kubebuilder:validation:Optional Columns []SharderTransformerColumnsParameters `json:"columns,omitempty" tf:"columns,omitempty"` - // Number of shards. + // (Number) // +kubebuilder:validation:Optional ShardsCount *float64 `json:"shardsCount,omitempty" tf:"shards_count,omitempty"` - // Table filter. + // (Block List, Max: 1) (see below for nested schema) // +kubebuilder:validation:Optional Tables []SharderTransformerTablesParameters `json:"tables,omitempty" tf:"tables,omitempty"` } type SharderTransformerTablesInitParameters struct { - // List of tables that will be excluded to transfer. + // (List of String) ExcludeTables []*string `json:"excludeTables,omitempty" tf:"exclude_tables,omitempty"` - // List of tables that will be included to transfer. + // (List of String) IncludeTables []*string `json:"includeTables,omitempty" tf:"include_tables,omitempty"` } type SharderTransformerTablesObservation struct { - // List of tables that will be excluded to transfer. + // (List of String) ExcludeTables []*string `json:"excludeTables,omitempty" tf:"exclude_tables,omitempty"` - // List of tables that will be included to transfer. + // (List of String) IncludeTables []*string `json:"includeTables,omitempty" tf:"include_tables,omitempty"` } type SharderTransformerTablesParameters struct { - // List of tables that will be excluded to transfer. + // (List of String) // +kubebuilder:validation:Optional ExcludeTables []*string `json:"excludeTables,omitempty" tf:"exclude_tables,omitempty"` - // List of tables that will be included to transfer. + // (List of String) // +kubebuilder:validation:Optional IncludeTables []*string `json:"includeTables,omitempty" tf:"include_tables,omitempty"` } type TableSplitterTransformerInitParameters struct { - // List of strings that specify the name of the column for data masking (a regular expression). + // (Block List, Max: 1) (see below for nested schema) Columns []*string `json:"columns,omitempty" tf:"columns,omitempty"` - // Specify the split string to be used for merging components in a new table name. + // (String) Splitter *string `json:"splitter,omitempty" tf:"splitter,omitempty"` - // Table filter. + // (Block List, Max: 1) (see below for nested schema) Tables []TableSplitterTransformerTablesInitParameters `json:"tables,omitempty" tf:"tables,omitempty"` } type TableSplitterTransformerObservation struct { - // List of strings that specify the name of the column for data masking (a regular expression). + // (Block List, Max: 1) (see below for nested schema) Columns []*string `json:"columns,omitempty" tf:"columns,omitempty"` - // Specify the split string to be used for merging components in a new table name. + // (String) Splitter *string `json:"splitter,omitempty" tf:"splitter,omitempty"` - // Table filter. + // (Block List, Max: 1) (see below for nested schema) Tables []TableSplitterTransformerTablesObservation `json:"tables,omitempty" tf:"tables,omitempty"` } type TableSplitterTransformerParameters struct { - // List of strings that specify the name of the column for data masking (a regular expression). + // (Block List, Max: 1) (see below for nested schema) // +kubebuilder:validation:Optional Columns []*string `json:"columns,omitempty" tf:"columns,omitempty"` - // Specify the split string to be used for merging components in a new table name. + // (String) // +kubebuilder:validation:Optional Splitter *string `json:"splitter,omitempty" tf:"splitter,omitempty"` - // Table filter. + // (Block List, Max: 1) (see below for nested schema) // +kubebuilder:validation:Optional Tables []TableSplitterTransformerTablesParameters `json:"tables,omitempty" tf:"tables,omitempty"` } type TableSplitterTransformerTablesInitParameters struct { - // List of tables that will be excluded to transfer. + // (List of String) ExcludeTables []*string `json:"excludeTables,omitempty" tf:"exclude_tables,omitempty"` - // List of tables that will be included to transfer. + // (List of String) IncludeTables []*string `json:"includeTables,omitempty" tf:"include_tables,omitempty"` } type TableSplitterTransformerTablesObservation struct { - // List of tables that will be excluded to transfer. + // (List of String) ExcludeTables []*string `json:"excludeTables,omitempty" tf:"exclude_tables,omitempty"` - // List of tables that will be included to transfer. + // (List of String) IncludeTables []*string `json:"includeTables,omitempty" tf:"include_tables,omitempty"` } type TableSplitterTransformerTablesParameters struct { - // List of tables that will be excluded to transfer. + // (List of String) // +kubebuilder:validation:Optional ExcludeTables []*string `json:"excludeTables,omitempty" tf:"exclude_tables,omitempty"` - // List of tables that will be included to transfer. + // (List of String) // +kubebuilder:validation:Optional IncludeTables []*string `json:"includeTables,omitempty" tf:"include_tables,omitempty"` } type TablesInitParameters struct { - // List of tables that will be excluded to transfer. + // (List of String) ExcludeTables []*string `json:"excludeTables,omitempty" tf:"exclude_tables,omitempty"` - // List of tables that will be included to transfer. + // (List of String) IncludeTables []*string `json:"includeTables,omitempty" tf:"include_tables,omitempty"` } type TablesObservation struct { - // List of tables that will be excluded to transfer. + // (List of String) ExcludeTables []*string `json:"excludeTables,omitempty" tf:"exclude_tables,omitempty"` - // List of tables that will be included to transfer. + // (List of String) IncludeTables []*string `json:"includeTables,omitempty" tf:"include_tables,omitempty"` } type TablesParameters struct { - // List of tables that will be excluded to transfer. + // (List of String) // +kubebuilder:validation:Optional ExcludeTables []*string `json:"excludeTables,omitempty" tf:"exclude_tables,omitempty"` - // List of tables that will be included to transfer. + // (List of String) // +kubebuilder:validation:Optional IncludeTables []*string `json:"includeTables,omitempty" tf:"include_tables,omitempty"` } type TransferInitParameters struct { - // Arbitrary description text for the transfer. + // (String) Description *string `json:"description,omitempty" tf:"description,omitempty"` - // ID of the folder to create the transfer in. If it is not provided, the default provider folder is used. + // (String) // +crossplane:generate:reference:type=github.com/tagesjump/provider-upjet-yc/apis/resourcemanager/v1alpha1.Folder FolderID *string `json:"folderId,omitempty" tf:"folder_id,omitempty"` @@ -706,22 +712,20 @@ type TransferInitParameters struct { // +kubebuilder:validation:Optional FolderIDSelector *v1.Selector `json:"folderIdSelector,omitempty" tf:"-"` - // A set of key/value label pairs to assign to the Data Transfer transfer. + // (Map of String) // +mapType=granular Labels map[string]*string `json:"labels,omitempty" tf:"labels,omitempty"` - // Name of the transfer. + // (String) Name *string `json:"name,omitempty" tf:"name,omitempty"` - // Activation action on create a new incremental transfer. - // It is not part of the transfer parameter and is used only on create. - // One of "sync_activate", "async_activate", "dont_activate". The default is "sync_activate". + // (String) OnCreateActivateMode *string `json:"onCreateActivateMode,omitempty" tf:"on_create_activate_mode,omitempty"` - // Runtime parameters for the transfer. + // (Block List, Max: 1) (see below for nested schema) Runtime []RuntimeInitParameters `json:"runtime,omitempty" tf:"runtime,omitempty"` - // ID of the source endpoint for the transfer. + // (String) // +crossplane:generate:reference:type=Endpoint SourceID *string `json:"sourceId,omitempty" tf:"source_id,omitempty"` @@ -733,7 +737,7 @@ type TransferInitParameters struct { // +kubebuilder:validation:Optional SourceIDSelector *v1.Selector `json:"sourceIdSelector,omitempty" tf:"-"` - // ID of the target endpoint for the transfer. + // (String) // +crossplane:generate:reference:type=Endpoint TargetID *string `json:"targetId,omitempty" tf:"target_id,omitempty"` @@ -745,62 +749,60 @@ type TransferInitParameters struct { // +kubebuilder:validation:Optional TargetIDSelector *v1.Selector `json:"targetIdSelector,omitempty" tf:"-"` - // Transformation for the transfer. + // (Block List, Max: 1) (see below for nested schema) Transformation []TransformationInitParameters `json:"transformation,omitempty" tf:"transformation,omitempty"` - // Type of the transfer. One of "SNAPSHOT_ONLY", "INCREMENT_ONLY", "SNAPSHOT_AND_INCREMENT". + // (String) Type *string `json:"type,omitempty" tf:"type,omitempty"` } type TransferObservation struct { - // Arbitrary description text for the transfer. + // (String) Description *string `json:"description,omitempty" tf:"description,omitempty"` - // ID of the folder to create the transfer in. If it is not provided, the default provider folder is used. + // (String) FolderID *string `json:"folderId,omitempty" tf:"folder_id,omitempty"` - // (Computed) Identifier of a new Data Transfer transfer. + // (String) The ID of this resource. ID *string `json:"id,omitempty" tf:"id,omitempty"` - // A set of key/value label pairs to assign to the Data Transfer transfer. + // (Map of String) // +mapType=granular Labels map[string]*string `json:"labels,omitempty" tf:"labels,omitempty"` - // Name of the transfer. + // (String) Name *string `json:"name,omitempty" tf:"name,omitempty"` - // Activation action on create a new incremental transfer. - // It is not part of the transfer parameter and is used only on create. - // One of "sync_activate", "async_activate", "dont_activate". The default is "sync_activate". + // (String) OnCreateActivateMode *string `json:"onCreateActivateMode,omitempty" tf:"on_create_activate_mode,omitempty"` - // Runtime parameters for the transfer. + // (Block List, Max: 1) (see below for nested schema) Runtime []RuntimeObservation `json:"runtime,omitempty" tf:"runtime,omitempty"` - // ID of the source endpoint for the transfer. + // (String) SourceID *string `json:"sourceId,omitempty" tf:"source_id,omitempty"` - // ID of the target endpoint for the transfer. + // (String) TargetID *string `json:"targetId,omitempty" tf:"target_id,omitempty"` - // Transformation for the transfer. + // (Block List, Max: 1) (see below for nested schema) Transformation []TransformationObservation `json:"transformation,omitempty" tf:"transformation,omitempty"` - // Type of the transfer. One of "SNAPSHOT_ONLY", "INCREMENT_ONLY", "SNAPSHOT_AND_INCREMENT". + // (String) Type *string `json:"type,omitempty" tf:"type,omitempty"` - // (Computed) Error description if transfer has any errors. + // (String) Warning *string `json:"warning,omitempty" tf:"warning,omitempty"` } type TransferParameters struct { - // Arbitrary description text for the transfer. + // (String) // +kubebuilder:validation:Optional Description *string `json:"description,omitempty" tf:"description,omitempty"` - // ID of the folder to create the transfer in. If it is not provided, the default provider folder is used. + // (String) // +crossplane:generate:reference:type=github.com/tagesjump/provider-upjet-yc/apis/resourcemanager/v1alpha1.Folder // +kubebuilder:validation:Optional FolderID *string `json:"folderId,omitempty" tf:"folder_id,omitempty"` @@ -813,26 +815,24 @@ type TransferParameters struct { // +kubebuilder:validation:Optional FolderIDSelector *v1.Selector `json:"folderIdSelector,omitempty" tf:"-"` - // A set of key/value label pairs to assign to the Data Transfer transfer. + // (Map of String) // +kubebuilder:validation:Optional // +mapType=granular Labels map[string]*string `json:"labels,omitempty" tf:"labels,omitempty"` - // Name of the transfer. + // (String) // +kubebuilder:validation:Optional Name *string `json:"name,omitempty" tf:"name,omitempty"` - // Activation action on create a new incremental transfer. - // It is not part of the transfer parameter and is used only on create. - // One of "sync_activate", "async_activate", "dont_activate". The default is "sync_activate". + // (String) // +kubebuilder:validation:Optional OnCreateActivateMode *string `json:"onCreateActivateMode,omitempty" tf:"on_create_activate_mode,omitempty"` - // Runtime parameters for the transfer. + // (Block List, Max: 1) (see below for nested schema) // +kubebuilder:validation:Optional Runtime []RuntimeParameters `json:"runtime,omitempty" tf:"runtime,omitempty"` - // ID of the source endpoint for the transfer. + // (String) // +crossplane:generate:reference:type=Endpoint // +kubebuilder:validation:Optional SourceID *string `json:"sourceId,omitempty" tf:"source_id,omitempty"` @@ -845,7 +845,7 @@ type TransferParameters struct { // +kubebuilder:validation:Optional SourceIDSelector *v1.Selector `json:"sourceIdSelector,omitempty" tf:"-"` - // ID of the target endpoint for the transfer. + // (String) // +crossplane:generate:reference:type=Endpoint // +kubebuilder:validation:Optional TargetID *string `json:"targetId,omitempty" tf:"target_id,omitempty"` @@ -858,177 +858,177 @@ type TransferParameters struct { // +kubebuilder:validation:Optional TargetIDSelector *v1.Selector `json:"targetIdSelector,omitempty" tf:"-"` - // Transformation for the transfer. + // (Block List, Max: 1) (see below for nested schema) // +kubebuilder:validation:Optional Transformation []TransformationParameters `json:"transformation,omitempty" tf:"transformation,omitempty"` - // Type of the transfer. One of "SNAPSHOT_ONLY", "INCREMENT_ONLY", "SNAPSHOT_AND_INCREMENT". + // (String) // +kubebuilder:validation:Optional Type *string `json:"type,omitempty" tf:"type,omitempty"` } type TransformationInitParameters struct { - // A list of transformers. You can specify exactly 1 transformer in each element of list. + // (Block List) (see below for nested schema) Transformers []TransformersInitParameters `json:"transformers,omitempty" tf:"transformers,omitempty"` } type TransformationObservation struct { - // A list of transformers. You can specify exactly 1 transformer in each element of list. + // (Block List) (see below for nested schema) Transformers []TransformersObservation `json:"transformers,omitempty" tf:"transformers,omitempty"` } type TransformationParameters struct { - // A list of transformers. You can specify exactly 1 transformer in each element of list. + // (Block List) (see below for nested schema) // +kubebuilder:validation:Optional Transformers []TransformersParameters `json:"transformers,omitempty" tf:"transformers,omitempty"` } type TransformersInitParameters struct { - // Convert column values to strings. + // (Block List, Max: 1) (see below for nested schema) ConvertToString []ConvertToStringInitParameters `json:"convertToString,omitempty" tf:"convert_to_string,omitempty"` - // Set up a list of table columns to transfer. + // (Block List, Max: 1) (see below for nested schema) FilterColumns []FilterColumnsInitParameters `json:"filterColumns,omitempty" tf:"filter_columns,omitempty"` - // This filter only applies to transfers with queues (Apache Kafka®) as a data source. When running a transfer, only the strings meeting the specified criteria remain in a changefeed. + // (Block List, Max: 1) (see below for nested schema) FilterRows []FilterRowsInitParameters `json:"filterRows,omitempty" tf:"filter_rows,omitempty"` - // Mask field transformer allows you to hash data. + // (Block List, Max: 1) (see below for nested schema) MaskField []MaskFieldInitParameters `json:"maskField,omitempty" tf:"mask_field,omitempty"` - // Set rules for renaming tables by specifying the current names of the tables in the source and new names for these tables in the target. + // (Block List, Max: 1) (see below for nested schema) RenameTables []RenameTablesInitParameters `json:"renameTables,omitempty" tf:"rename_tables,omitempty"` - // Override primary keys. + // (Block List, Max: 1) (see below for nested schema) ReplacePrimaryKey []ReplacePrimaryKeyInitParameters `json:"replacePrimaryKey,omitempty" tf:"replace_primary_key,omitempty"` - // Set the number of shards for particular tables and a list of columns whose values will be used for calculating a hash to determine a shard. + // (Block List, Max: 1) (see below for nested schema) SharderTransformer []SharderTransformerInitParameters `json:"sharderTransformer,omitempty" tf:"sharder_transformer,omitempty"` - // Splits the X table into multiple tables (X_1, X_2, ..., X_n) based on data. + // (Block List, Max: 1) (see below for nested schema) TableSplitterTransformer []TableSplitterTransformerInitParameters `json:"tableSplitterTransformer,omitempty" tf:"table_splitter_transformer,omitempty"` } type TransformersObservation struct { - // Convert column values to strings. + // (Block List, Max: 1) (see below for nested schema) ConvertToString []ConvertToStringObservation `json:"convertToString,omitempty" tf:"convert_to_string,omitempty"` - // Set up a list of table columns to transfer. + // (Block List, Max: 1) (see below for nested schema) FilterColumns []FilterColumnsObservation `json:"filterColumns,omitempty" tf:"filter_columns,omitempty"` - // This filter only applies to transfers with queues (Apache Kafka®) as a data source. When running a transfer, only the strings meeting the specified criteria remain in a changefeed. + // (Block List, Max: 1) (see below for nested schema) FilterRows []FilterRowsObservation `json:"filterRows,omitempty" tf:"filter_rows,omitempty"` - // Mask field transformer allows you to hash data. + // (Block List, Max: 1) (see below for nested schema) MaskField []MaskFieldObservation `json:"maskField,omitempty" tf:"mask_field,omitempty"` - // Set rules for renaming tables by specifying the current names of the tables in the source and new names for these tables in the target. + // (Block List, Max: 1) (see below for nested schema) RenameTables []RenameTablesObservation `json:"renameTables,omitempty" tf:"rename_tables,omitempty"` - // Override primary keys. + // (Block List, Max: 1) (see below for nested schema) ReplacePrimaryKey []ReplacePrimaryKeyObservation `json:"replacePrimaryKey,omitempty" tf:"replace_primary_key,omitempty"` - // Set the number of shards for particular tables and a list of columns whose values will be used for calculating a hash to determine a shard. + // (Block List, Max: 1) (see below for nested schema) SharderTransformer []SharderTransformerObservation `json:"sharderTransformer,omitempty" tf:"sharder_transformer,omitempty"` - // Splits the X table into multiple tables (X_1, X_2, ..., X_n) based on data. + // (Block List, Max: 1) (see below for nested schema) TableSplitterTransformer []TableSplitterTransformerObservation `json:"tableSplitterTransformer,omitempty" tf:"table_splitter_transformer,omitempty"` } type TransformersParameters struct { - // Convert column values to strings. + // (Block List, Max: 1) (see below for nested schema) // +kubebuilder:validation:Optional ConvertToString []ConvertToStringParameters `json:"convertToString,omitempty" tf:"convert_to_string,omitempty"` - // Set up a list of table columns to transfer. + // (Block List, Max: 1) (see below for nested schema) // +kubebuilder:validation:Optional FilterColumns []FilterColumnsParameters `json:"filterColumns,omitempty" tf:"filter_columns,omitempty"` - // This filter only applies to transfers with queues (Apache Kafka®) as a data source. When running a transfer, only the strings meeting the specified criteria remain in a changefeed. + // (Block List, Max: 1) (see below for nested schema) // +kubebuilder:validation:Optional FilterRows []FilterRowsParameters `json:"filterRows,omitempty" tf:"filter_rows,omitempty"` - // Mask field transformer allows you to hash data. + // (Block List, Max: 1) (see below for nested schema) // +kubebuilder:validation:Optional MaskField []MaskFieldParameters `json:"maskField,omitempty" tf:"mask_field,omitempty"` - // Set rules for renaming tables by specifying the current names of the tables in the source and new names for these tables in the target. + // (Block List, Max: 1) (see below for nested schema) // +kubebuilder:validation:Optional RenameTables []RenameTablesParameters `json:"renameTables,omitempty" tf:"rename_tables,omitempty"` - // Override primary keys. + // (Block List, Max: 1) (see below for nested schema) // +kubebuilder:validation:Optional ReplacePrimaryKey []ReplacePrimaryKeyParameters `json:"replacePrimaryKey,omitempty" tf:"replace_primary_key,omitempty"` - // Set the number of shards for particular tables and a list of columns whose values will be used for calculating a hash to determine a shard. + // (Block List, Max: 1) (see below for nested schema) // +kubebuilder:validation:Optional SharderTransformer []SharderTransformerParameters `json:"sharderTransformer,omitempty" tf:"sharder_transformer,omitempty"` - // Splits the X table into multiple tables (X_1, X_2, ..., X_n) based on data. + // (Block List, Max: 1) (see below for nested schema) // +kubebuilder:validation:Optional TableSplitterTransformer []TableSplitterTransformerParameters `json:"tableSplitterTransformer,omitempty" tf:"table_splitter_transformer,omitempty"` } type UploadShardParamsInitParameters struct { - // Number of workers. + // (Number) JobCount *float64 `json:"jobCount,omitempty" tf:"job_count,omitempty"` - // Number of threads. + // (Number) ProcessCount *float64 `json:"processCount,omitempty" tf:"process_count,omitempty"` } type UploadShardParamsObservation struct { - // Number of workers. + // (Number) JobCount *float64 `json:"jobCount,omitempty" tf:"job_count,omitempty"` - // Number of threads. + // (Number) ProcessCount *float64 `json:"processCount,omitempty" tf:"process_count,omitempty"` } type UploadShardParamsParameters struct { - // Number of workers. + // (Number) // +kubebuilder:validation:Optional JobCount *float64 `json:"jobCount,omitempty" tf:"job_count,omitempty"` - // Number of threads. + // (Number) // +kubebuilder:validation:Optional ProcessCount *float64 `json:"processCount,omitempty" tf:"process_count,omitempty"` } type YcRuntimeInitParameters struct { - // Number of workers in parallel replication. + // (Number) JobCount *float64 `json:"jobCount,omitempty" tf:"job_count,omitempty"` - // Parallel snapshot parameters. + // (Block List, Max: 1) (see below for nested schema) UploadShardParams []UploadShardParamsInitParameters `json:"uploadShardParams,omitempty" tf:"upload_shard_params,omitempty"` } type YcRuntimeObservation struct { - // Number of workers in parallel replication. + // (Number) JobCount *float64 `json:"jobCount,omitempty" tf:"job_count,omitempty"` - // Parallel snapshot parameters. + // (Block List, Max: 1) (see below for nested schema) UploadShardParams []UploadShardParamsObservation `json:"uploadShardParams,omitempty" tf:"upload_shard_params,omitempty"` } type YcRuntimeParameters struct { - // Number of workers in parallel replication. + // (Number) // +kubebuilder:validation:Optional JobCount *float64 `json:"jobCount,omitempty" tf:"job_count,omitempty"` - // Parallel snapshot parameters. + // (Block List, Max: 1) (see below for nested schema) // +kubebuilder:validation:Optional UploadShardParams []UploadShardParamsParameters `json:"uploadShardParams,omitempty" tf:"upload_shard_params,omitempty"` } @@ -1060,7 +1060,7 @@ type TransferStatus struct { // +kubebuilder:subresource:status // +kubebuilder:storageversion -// Transfer is the Schema for the Transfers API. Manages a Data Transfer transfer within Yandex.Cloud. +// Transfer is the Schema for the Transfers API. // +kubebuilder:printcolumn:name="SYNCED",type="string",JSONPath=".status.conditions[?(@.type=='Synced')].status" // +kubebuilder:printcolumn:name="READY",type="string",JSONPath=".status.conditions[?(@.type=='Ready')].status" // +kubebuilder:printcolumn:name="EXTERNAL-NAME",type="string",JSONPath=".metadata.annotations.crossplane\\.io/external-name" diff --git a/apis/dns/v1alpha1/zz_zone_types.go b/apis/dns/v1alpha1/zz_zone_types.go index cf452c2..8fca5cb 100755 --- a/apis/dns/v1alpha1/zz_zone_types.go +++ b/apis/dns/v1alpha1/zz_zone_types.go @@ -11,12 +11,15 @@ import ( type ZoneInitParameters struct { + // (Boolean) Flag that protects the dns zone from accidental deletion. // Flag that protects the dns zone from accidental deletion. DeletionProtection *bool `json:"deletionProtection,omitempty" tf:"deletion_protection,omitempty"` + // (String) Description of the DNS zone. // Description of the DNS zone. Description *string `json:"description,omitempty" tf:"description,omitempty"` + // (String) ID of the folder to create a zone in. If it is not provided, the default provider folder is used. // ID of the folder to create a zone in. If it is not provided, the default provider folder is used. // +crossplane:generate:reference:type=github.com/tagesjump/provider-upjet-yc/apis/resourcemanager/v1alpha1.Folder FolderID *string `json:"folderId,omitempty" tf:"folder_id,omitempty"` @@ -29,13 +32,16 @@ type ZoneInitParameters struct { // +kubebuilder:validation:Optional FolderIDSelector *v1.Selector `json:"folderIdSelector,omitempty" tf:"-"` + // (Map of String) A set of key/value label pairs to assign to the DNS zone. // A set of key/value label pairs to assign to the DNS zone. // +mapType=granular Labels map[string]*string `json:"labels,omitempty" tf:"labels,omitempty"` + // (String) User assigned name of a specific resource. Must be unique within the folder. // User assigned name of a specific resource. Must be unique within the folder. Name *string `json:"name,omitempty" tf:"name,omitempty"` + // (Set of String) For privately visible zones, the set of Virtual Private Cloud resources that the zone is visible from. // For privately visible zones, the set of Virtual Private Cloud resources that the zone is visible from. // +crossplane:generate:reference:type=github.com/tagesjump/provider-upjet-yc/apis/vpc/v1alpha1.Network // +listType=set @@ -49,58 +55,72 @@ type ZoneInitParameters struct { // +kubebuilder:validation:Optional PrivateNetworksSelector *v1.Selector `json:"privateNetworksSelector,omitempty" tf:"-"` + // (Boolean) The zone's visibility: public zones are exposed to the Internet, while private zones are visible only to Virtual Private Cloud resources. // The zone's visibility: public zones are exposed to the Internet, while private zones are visible only to Virtual Private Cloud resources. Public *bool `json:"public,omitempty" tf:"public,omitempty"` + // (String) The DNS name of this zone, e.g. "example.com.". Must ends with dot. // The DNS name of this zone, e.g. "example.com.". Must ends with dot. Zone *string `json:"zone,omitempty" tf:"zone,omitempty"` } type ZoneObservation struct { - // (Computed) The DNS zone creation timestamp. + // (String) The DNS zone creation timestamp. + // The DNS zone creation timestamp. CreatedAt *string `json:"createdAt,omitempty" tf:"created_at,omitempty"` + // (Boolean) Flag that protects the dns zone from accidental deletion. // Flag that protects the dns zone from accidental deletion. DeletionProtection *bool `json:"deletionProtection,omitempty" tf:"deletion_protection,omitempty"` + // (String) Description of the DNS zone. // Description of the DNS zone. Description *string `json:"description,omitempty" tf:"description,omitempty"` + // (String) ID of the folder to create a zone in. If it is not provided, the default provider folder is used. // ID of the folder to create a zone in. If it is not provided, the default provider folder is used. FolderID *string `json:"folderId,omitempty" tf:"folder_id,omitempty"` - // (Computed) ID of a new DNS zone. + // (String) The ID of this resource. ID *string `json:"id,omitempty" tf:"id,omitempty"` + // (Map of String) A set of key/value label pairs to assign to the DNS zone. // A set of key/value label pairs to assign to the DNS zone. // +mapType=granular Labels map[string]*string `json:"labels,omitempty" tf:"labels,omitempty"` + // (String) User assigned name of a specific resource. Must be unique within the folder. // User assigned name of a specific resource. Must be unique within the folder. Name *string `json:"name,omitempty" tf:"name,omitempty"` + // (Set of String) For privately visible zones, the set of Virtual Private Cloud resources that the zone is visible from. // For privately visible zones, the set of Virtual Private Cloud resources that the zone is visible from. // +listType=set PrivateNetworks []*string `json:"privateNetworks,omitempty" tf:"private_networks,omitempty"` + // (Boolean) The zone's visibility: public zones are exposed to the Internet, while private zones are visible only to Virtual Private Cloud resources. // The zone's visibility: public zones are exposed to the Internet, while private zones are visible only to Virtual Private Cloud resources. Public *bool `json:"public,omitempty" tf:"public,omitempty"` + // (String) The DNS name of this zone, e.g. "example.com.". Must ends with dot. // The DNS name of this zone, e.g. "example.com.". Must ends with dot. Zone *string `json:"zone,omitempty" tf:"zone,omitempty"` } type ZoneParameters struct { + // (Boolean) Flag that protects the dns zone from accidental deletion. // Flag that protects the dns zone from accidental deletion. // +kubebuilder:validation:Optional DeletionProtection *bool `json:"deletionProtection,omitempty" tf:"deletion_protection,omitempty"` + // (String) Description of the DNS zone. // Description of the DNS zone. // +kubebuilder:validation:Optional Description *string `json:"description,omitempty" tf:"description,omitempty"` + // (String) ID of the folder to create a zone in. If it is not provided, the default provider folder is used. // ID of the folder to create a zone in. If it is not provided, the default provider folder is used. // +crossplane:generate:reference:type=github.com/tagesjump/provider-upjet-yc/apis/resourcemanager/v1alpha1.Folder // +kubebuilder:validation:Optional @@ -114,15 +134,18 @@ type ZoneParameters struct { // +kubebuilder:validation:Optional FolderIDSelector *v1.Selector `json:"folderIdSelector,omitempty" tf:"-"` + // (Map of String) A set of key/value label pairs to assign to the DNS zone. // A set of key/value label pairs to assign to the DNS zone. // +kubebuilder:validation:Optional // +mapType=granular Labels map[string]*string `json:"labels,omitempty" tf:"labels,omitempty"` + // (String) User assigned name of a specific resource. Must be unique within the folder. // User assigned name of a specific resource. Must be unique within the folder. // +kubebuilder:validation:Optional Name *string `json:"name,omitempty" tf:"name,omitempty"` + // (Set of String) For privately visible zones, the set of Virtual Private Cloud resources that the zone is visible from. // For privately visible zones, the set of Virtual Private Cloud resources that the zone is visible from. // +crossplane:generate:reference:type=github.com/tagesjump/provider-upjet-yc/apis/vpc/v1alpha1.Network // +kubebuilder:validation:Optional @@ -137,10 +160,12 @@ type ZoneParameters struct { // +kubebuilder:validation:Optional PrivateNetworksSelector *v1.Selector `json:"privateNetworksSelector,omitempty" tf:"-"` + // (Boolean) The zone's visibility: public zones are exposed to the Internet, while private zones are visible only to Virtual Private Cloud resources. // The zone's visibility: public zones are exposed to the Internet, while private zones are visible only to Virtual Private Cloud resources. // +kubebuilder:validation:Optional Public *bool `json:"public,omitempty" tf:"public,omitempty"` + // (String) The DNS name of this zone, e.g. "example.com.". Must ends with dot. // The DNS name of this zone, e.g. "example.com.". Must ends with dot. // +kubebuilder:validation:Optional Zone *string `json:"zone,omitempty" tf:"zone,omitempty"` diff --git a/apis/dns/v1alpha1/zz_zoneiambinding_types.go b/apis/dns/v1alpha1/zz_zoneiambinding_types.go index ce1e51e..e921902 100755 --- a/apis/dns/v1alpha1/zz_zoneiambinding_types.go +++ b/apis/dns/v1alpha1/zz_zoneiambinding_types.go @@ -24,8 +24,7 @@ type ZoneIAMBindingInitParameters struct { // +kubebuilder:validation:Optional DNSZoneIDSelector *v1.Selector `json:"dnsZoneIdSelector,omitempty" tf:"-"` - // Identities that will be granted the privilege in role. - // Each entry can have one of the following values: + // Identities that will be granted the privilege in role. Each entry can have one of the following values: // +listType=set Members []*string `json:"members,omitempty" tf:"members,omitempty"` @@ -42,8 +41,7 @@ type ZoneIAMBindingObservation struct { ID *string `json:"id,omitempty" tf:"id,omitempty"` - // Identities that will be granted the privilege in role. - // Each entry can have one of the following values: + // Identities that will be granted the privilege in role. Each entry can have one of the following values: // +listType=set Members []*string `json:"members,omitempty" tf:"members,omitempty"` @@ -69,8 +67,7 @@ type ZoneIAMBindingParameters struct { // +kubebuilder:validation:Optional DNSZoneIDSelector *v1.Selector `json:"dnsZoneIdSelector,omitempty" tf:"-"` - // Identities that will be granted the privilege in role. - // Each entry can have one of the following values: + // Identities that will be granted the privilege in role. Each entry can have one of the following values: // +kubebuilder:validation:Optional // +listType=set Members []*string `json:"members,omitempty" tf:"members,omitempty"` diff --git a/apis/function/v1alpha1/zz_iambinding_types.go b/apis/function/v1alpha1/zz_iambinding_types.go index 343ac53..8c1ee9e 100755 --- a/apis/function/v1alpha1/zz_iambinding_types.go +++ b/apis/function/v1alpha1/zz_iambinding_types.go @@ -14,8 +14,7 @@ type IAMBindingInitParameters struct { // The Yandex Cloud Function ID to apply a binding to. FunctionID *string `json:"functionId,omitempty" tf:"function_id,omitempty"` - // Identities that will be granted the privilege in role. - // Each entry can have one of the following values: + // Identities that will be granted the privilege in role. Each entry can have one of the following values: // +listType=set Members []*string `json:"members,omitempty" tf:"members,omitempty"` @@ -32,8 +31,7 @@ type IAMBindingObservation struct { ID *string `json:"id,omitempty" tf:"id,omitempty"` - // Identities that will be granted the privilege in role. - // Each entry can have one of the following values: + // Identities that will be granted the privilege in role. Each entry can have one of the following values: // +listType=set Members []*string `json:"members,omitempty" tf:"members,omitempty"` @@ -49,8 +47,7 @@ type IAMBindingParameters struct { // +kubebuilder:validation:Optional FunctionID *string `json:"functionId,omitempty" tf:"function_id,omitempty"` - // Identities that will be granted the privilege in role. - // Each entry can have one of the following values: + // Identities that will be granted the privilege in role. Each entry can have one of the following values: // +kubebuilder:validation:Optional // +listType=set Members []*string `json:"members,omitempty" tf:"members,omitempty"` diff --git a/apis/iam/v1alpha1/zz_generated.deepcopy.go b/apis/iam/v1alpha1/zz_generated.deepcopy.go index b55420d..803b00e 100644 --- a/apis/iam/v1alpha1/zz_generated.deepcopy.go +++ b/apis/iam/v1alpha1/zz_generated.deepcopy.go @@ -9,6 +9,81 @@ import ( runtime "k8s.io/apimachinery/pkg/runtime" ) +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *OutputToLockboxInitParameters) DeepCopyInto(out *OutputToLockboxInitParameters) { + *out = *in + if in.EntryForSecretKey != nil { + in, out := &in.EntryForSecretKey, &out.EntryForSecretKey + *out = new(string) + **out = **in + } + if in.SecretID != nil { + in, out := &in.SecretID, &out.SecretID + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new OutputToLockboxInitParameters. +func (in *OutputToLockboxInitParameters) DeepCopy() *OutputToLockboxInitParameters { + if in == nil { + return nil + } + out := new(OutputToLockboxInitParameters) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *OutputToLockboxObservation) DeepCopyInto(out *OutputToLockboxObservation) { + *out = *in + if in.EntryForSecretKey != nil { + in, out := &in.EntryForSecretKey, &out.EntryForSecretKey + *out = new(string) + **out = **in + } + if in.SecretID != nil { + in, out := &in.SecretID, &out.SecretID + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new OutputToLockboxObservation. +func (in *OutputToLockboxObservation) DeepCopy() *OutputToLockboxObservation { + if in == nil { + return nil + } + out := new(OutputToLockboxObservation) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *OutputToLockboxParameters) DeepCopyInto(out *OutputToLockboxParameters) { + *out = *in + if in.EntryForSecretKey != nil { + in, out := &in.EntryForSecretKey, &out.EntryForSecretKey + *out = new(string) + **out = **in + } + if in.SecretID != nil { + in, out := &in.SecretID, &out.SecretID + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new OutputToLockboxParameters. +func (in *OutputToLockboxParameters) DeepCopy() *OutputToLockboxParameters { + if in == nil { + return nil + } + out := new(OutputToLockboxParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *ServiceAccount) DeepCopyInto(out *ServiceAccount) { *out = *in @@ -71,11 +146,28 @@ func (in *ServiceAccountAPIKeyInitParameters) DeepCopyInto(out *ServiceAccountAP *out = new(string) **out = **in } + if in.ExpiresAt != nil { + in, out := &in.ExpiresAt, &out.ExpiresAt + *out = new(string) + **out = **in + } + if in.OutputToLockbox != nil { + in, out := &in.OutputToLockbox, &out.OutputToLockbox + *out = make([]OutputToLockboxInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } if in.PgpKey != nil { in, out := &in.PgpKey, &out.PgpKey *out = new(string) **out = **in } + if in.Scope != nil { + in, out := &in.Scope, &out.Scope + *out = new(string) + **out = **in + } if in.ServiceAccountID != nil { in, out := &in.ServiceAccountID, &out.ServiceAccountID *out = new(string) @@ -153,6 +245,11 @@ func (in *ServiceAccountAPIKeyObservation) DeepCopyInto(out *ServiceAccountAPIKe *out = new(string) **out = **in } + if in.ExpiresAt != nil { + in, out := &in.ExpiresAt, &out.ExpiresAt + *out = new(string) + **out = **in + } if in.ID != nil { in, out := &in.ID, &out.ID *out = new(string) @@ -163,11 +260,28 @@ func (in *ServiceAccountAPIKeyObservation) DeepCopyInto(out *ServiceAccountAPIKe *out = new(string) **out = **in } + if in.OutputToLockbox != nil { + in, out := &in.OutputToLockbox, &out.OutputToLockbox + *out = make([]OutputToLockboxObservation, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.OutputToLockboxVersionID != nil { + in, out := &in.OutputToLockboxVersionID, &out.OutputToLockboxVersionID + *out = new(string) + **out = **in + } if in.PgpKey != nil { in, out := &in.PgpKey, &out.PgpKey *out = new(string) **out = **in } + if in.Scope != nil { + in, out := &in.Scope, &out.Scope + *out = new(string) + **out = **in + } if in.ServiceAccountID != nil { in, out := &in.ServiceAccountID, &out.ServiceAccountID *out = new(string) @@ -193,11 +307,28 @@ func (in *ServiceAccountAPIKeyParameters) DeepCopyInto(out *ServiceAccountAPIKey *out = new(string) **out = **in } + if in.ExpiresAt != nil { + in, out := &in.ExpiresAt, &out.ExpiresAt + *out = new(string) + **out = **in + } + if in.OutputToLockbox != nil { + in, out := &in.OutputToLockbox, &out.OutputToLockbox + *out = make([]OutputToLockboxParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } if in.PgpKey != nil { in, out := &in.PgpKey, &out.PgpKey *out = new(string) **out = **in } + if in.Scope != nil { + in, out := &in.Scope, &out.Scope + *out = new(string) + **out = **in + } if in.ServiceAccountID != nil { in, out := &in.ServiceAccountID, &out.ServiceAccountID *out = new(string) @@ -1044,6 +1175,13 @@ func (in *ServiceAccountKeyInitParameters) DeepCopyInto(out *ServiceAccountKeyIn *out = new(string) **out = **in } + if in.OutputToLockbox != nil { + in, out := &in.OutputToLockbox, &out.OutputToLockbox + *out = make([]ServiceAccountKeyOutputToLockboxInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } if in.PgpKey != nil { in, out := &in.PgpKey, &out.PgpKey *out = new(string) @@ -1146,6 +1284,18 @@ func (in *ServiceAccountKeyObservation) DeepCopyInto(out *ServiceAccountKeyObser *out = new(string) **out = **in } + if in.OutputToLockbox != nil { + in, out := &in.OutputToLockbox, &out.OutputToLockbox + *out = make([]ServiceAccountKeyOutputToLockboxObservation, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.OutputToLockboxVersionID != nil { + in, out := &in.OutputToLockboxVersionID, &out.OutputToLockboxVersionID + *out = new(string) + **out = **in + } if in.PgpKey != nil { in, out := &in.PgpKey, &out.PgpKey *out = new(string) @@ -1173,6 +1323,81 @@ func (in *ServiceAccountKeyObservation) DeepCopy() *ServiceAccountKeyObservation return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *ServiceAccountKeyOutputToLockboxInitParameters) DeepCopyInto(out *ServiceAccountKeyOutputToLockboxInitParameters) { + *out = *in + if in.EntryForPrivateKey != nil { + in, out := &in.EntryForPrivateKey, &out.EntryForPrivateKey + *out = new(string) + **out = **in + } + if in.SecretID != nil { + in, out := &in.SecretID, &out.SecretID + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ServiceAccountKeyOutputToLockboxInitParameters. +func (in *ServiceAccountKeyOutputToLockboxInitParameters) DeepCopy() *ServiceAccountKeyOutputToLockboxInitParameters { + if in == nil { + return nil + } + out := new(ServiceAccountKeyOutputToLockboxInitParameters) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *ServiceAccountKeyOutputToLockboxObservation) DeepCopyInto(out *ServiceAccountKeyOutputToLockboxObservation) { + *out = *in + if in.EntryForPrivateKey != nil { + in, out := &in.EntryForPrivateKey, &out.EntryForPrivateKey + *out = new(string) + **out = **in + } + if in.SecretID != nil { + in, out := &in.SecretID, &out.SecretID + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ServiceAccountKeyOutputToLockboxObservation. +func (in *ServiceAccountKeyOutputToLockboxObservation) DeepCopy() *ServiceAccountKeyOutputToLockboxObservation { + if in == nil { + return nil + } + out := new(ServiceAccountKeyOutputToLockboxObservation) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *ServiceAccountKeyOutputToLockboxParameters) DeepCopyInto(out *ServiceAccountKeyOutputToLockboxParameters) { + *out = *in + if in.EntryForPrivateKey != nil { + in, out := &in.EntryForPrivateKey, &out.EntryForPrivateKey + *out = new(string) + **out = **in + } + if in.SecretID != nil { + in, out := &in.SecretID, &out.SecretID + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ServiceAccountKeyOutputToLockboxParameters. +func (in *ServiceAccountKeyOutputToLockboxParameters) DeepCopy() *ServiceAccountKeyOutputToLockboxParameters { + if in == nil { + return nil + } + out := new(ServiceAccountKeyOutputToLockboxParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *ServiceAccountKeyParameters) DeepCopyInto(out *ServiceAccountKeyParameters) { *out = *in @@ -1191,6 +1416,13 @@ func (in *ServiceAccountKeyParameters) DeepCopyInto(out *ServiceAccountKeyParame *out = new(string) **out = **in } + if in.OutputToLockbox != nil { + in, out := &in.OutputToLockbox, &out.OutputToLockbox + *out = make([]ServiceAccountKeyOutputToLockboxParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } if in.PgpKey != nil { in, out := &in.PgpKey, &out.PgpKey *out = new(string) @@ -1413,6 +1645,13 @@ func (in *ServiceAccountStaticAccessKeyInitParameters) DeepCopyInto(out *Service *out = new(string) **out = **in } + if in.OutputToLockbox != nil { + in, out := &in.OutputToLockbox, &out.OutputToLockbox + *out = make([]ServiceAccountStaticAccessKeyOutputToLockboxInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } if in.PgpKey != nil { in, out := &in.PgpKey, &out.PgpKey *out = new(string) @@ -1510,6 +1749,18 @@ func (in *ServiceAccountStaticAccessKeyObservation) DeepCopyInto(out *ServiceAcc *out = new(string) **out = **in } + if in.OutputToLockbox != nil { + in, out := &in.OutputToLockbox, &out.OutputToLockbox + *out = make([]ServiceAccountStaticAccessKeyOutputToLockboxObservation, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.OutputToLockboxVersionID != nil { + in, out := &in.OutputToLockboxVersionID, &out.OutputToLockboxVersionID + *out = new(string) + **out = **in + } if in.PgpKey != nil { in, out := &in.PgpKey, &out.PgpKey *out = new(string) @@ -1532,6 +1783,96 @@ func (in *ServiceAccountStaticAccessKeyObservation) DeepCopy() *ServiceAccountSt return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *ServiceAccountStaticAccessKeyOutputToLockboxInitParameters) DeepCopyInto(out *ServiceAccountStaticAccessKeyOutputToLockboxInitParameters) { + *out = *in + if in.EntryForAccessKey != nil { + in, out := &in.EntryForAccessKey, &out.EntryForAccessKey + *out = new(string) + **out = **in + } + if in.EntryForSecretKey != nil { + in, out := &in.EntryForSecretKey, &out.EntryForSecretKey + *out = new(string) + **out = **in + } + if in.SecretID != nil { + in, out := &in.SecretID, &out.SecretID + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ServiceAccountStaticAccessKeyOutputToLockboxInitParameters. +func (in *ServiceAccountStaticAccessKeyOutputToLockboxInitParameters) DeepCopy() *ServiceAccountStaticAccessKeyOutputToLockboxInitParameters { + if in == nil { + return nil + } + out := new(ServiceAccountStaticAccessKeyOutputToLockboxInitParameters) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *ServiceAccountStaticAccessKeyOutputToLockboxObservation) DeepCopyInto(out *ServiceAccountStaticAccessKeyOutputToLockboxObservation) { + *out = *in + if in.EntryForAccessKey != nil { + in, out := &in.EntryForAccessKey, &out.EntryForAccessKey + *out = new(string) + **out = **in + } + if in.EntryForSecretKey != nil { + in, out := &in.EntryForSecretKey, &out.EntryForSecretKey + *out = new(string) + **out = **in + } + if in.SecretID != nil { + in, out := &in.SecretID, &out.SecretID + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ServiceAccountStaticAccessKeyOutputToLockboxObservation. +func (in *ServiceAccountStaticAccessKeyOutputToLockboxObservation) DeepCopy() *ServiceAccountStaticAccessKeyOutputToLockboxObservation { + if in == nil { + return nil + } + out := new(ServiceAccountStaticAccessKeyOutputToLockboxObservation) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *ServiceAccountStaticAccessKeyOutputToLockboxParameters) DeepCopyInto(out *ServiceAccountStaticAccessKeyOutputToLockboxParameters) { + *out = *in + if in.EntryForAccessKey != nil { + in, out := &in.EntryForAccessKey, &out.EntryForAccessKey + *out = new(string) + **out = **in + } + if in.EntryForSecretKey != nil { + in, out := &in.EntryForSecretKey, &out.EntryForSecretKey + *out = new(string) + **out = **in + } + if in.SecretID != nil { + in, out := &in.SecretID, &out.SecretID + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ServiceAccountStaticAccessKeyOutputToLockboxParameters. +func (in *ServiceAccountStaticAccessKeyOutputToLockboxParameters) DeepCopy() *ServiceAccountStaticAccessKeyOutputToLockboxParameters { + if in == nil { + return nil + } + out := new(ServiceAccountStaticAccessKeyOutputToLockboxParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *ServiceAccountStaticAccessKeyParameters) DeepCopyInto(out *ServiceAccountStaticAccessKeyParameters) { *out = *in @@ -1540,6 +1881,13 @@ func (in *ServiceAccountStaticAccessKeyParameters) DeepCopyInto(out *ServiceAcco *out = new(string) **out = **in } + if in.OutputToLockbox != nil { + in, out := &in.OutputToLockbox, &out.OutputToLockbox + *out = make([]ServiceAccountStaticAccessKeyOutputToLockboxParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } if in.PgpKey != nil { in, out := &in.PgpKey, &out.PgpKey *out = new(string) diff --git a/apis/iam/v1alpha1/zz_serviceaccount_types.go b/apis/iam/v1alpha1/zz_serviceaccount_types.go index 0f24a7d..e982261 100755 --- a/apis/iam/v1alpha1/zz_serviceaccount_types.go +++ b/apis/iam/v1alpha1/zz_serviceaccount_types.go @@ -14,8 +14,7 @@ type ServiceAccountInitParameters struct { // Description of the service account. Description *string `json:"description,omitempty" tf:"description,omitempty"` - // ID of the folder that the service account will be created in. - // Defaults to the provider folder configuration. + // ID of the folder that the service account will be created in. Defaults to the provider folder configuration. // +crossplane:generate:reference:type=github.com/tagesjump/provider-upjet-yc/apis/resourcemanager/v1alpha1.Folder FolderID *string `json:"folderId,omitempty" tf:"folder_id,omitempty"` @@ -34,8 +33,7 @@ type ServiceAccountObservation struct { // Description of the service account. Description *string `json:"description,omitempty" tf:"description,omitempty"` - // ID of the folder that the service account will be created in. - // Defaults to the provider folder configuration. + // ID of the folder that the service account will be created in. Defaults to the provider folder configuration. FolderID *string `json:"folderId,omitempty" tf:"folder_id,omitempty"` ID *string `json:"id,omitempty" tf:"id,omitempty"` @@ -47,8 +45,7 @@ type ServiceAccountParameters struct { // +kubebuilder:validation:Optional Description *string `json:"description,omitempty" tf:"description,omitempty"` - // ID of the folder that the service account will be created in. - // Defaults to the provider folder configuration. + // ID of the folder that the service account will be created in. Defaults to the provider folder configuration. // +crossplane:generate:reference:type=github.com/tagesjump/provider-upjet-yc/apis/resourcemanager/v1alpha1.Folder // +kubebuilder:validation:Optional FolderID *string `json:"folderId,omitempty" tf:"folder_id,omitempty"` diff --git a/apis/iam/v1alpha1/zz_serviceaccountapikey_types.go b/apis/iam/v1alpha1/zz_serviceaccountapikey_types.go index 8113574..f6ed74f 100755 --- a/apis/iam/v1alpha1/zz_serviceaccountapikey_types.go +++ b/apis/iam/v1alpha1/zz_serviceaccountapikey_types.go @@ -9,14 +9,58 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type OutputToLockboxInitParameters struct { + + // Entry where to store the value of secret_key. + // entry that will store the value of secret_key + EntryForSecretKey *string `json:"entryForSecretKey,omitempty" tf:"entry_for_secret_key,omitempty"` + + // ID of the Lockbox secret where to store the sensible values. + // secret where to add the version with the sensitive values + SecretID *string `json:"secretId,omitempty" tf:"secret_id,omitempty"` +} + +type OutputToLockboxObservation struct { + + // Entry where to store the value of secret_key. + // entry that will store the value of secret_key + EntryForSecretKey *string `json:"entryForSecretKey,omitempty" tf:"entry_for_secret_key,omitempty"` + + // ID of the Lockbox secret where to store the sensible values. + // secret where to add the version with the sensitive values + SecretID *string `json:"secretId,omitempty" tf:"secret_id,omitempty"` +} + +type OutputToLockboxParameters struct { + + // Entry where to store the value of secret_key. + // entry that will store the value of secret_key + // +kubebuilder:validation:Optional + EntryForSecretKey *string `json:"entryForSecretKey" tf:"entry_for_secret_key,omitempty"` + + // ID of the Lockbox secret where to store the sensible values. + // secret where to add the version with the sensitive values + // +kubebuilder:validation:Optional + SecretID *string `json:"secretId" tf:"secret_id,omitempty"` +} + type ServiceAccountAPIKeyInitParameters struct { // The description of the key. Description *string `json:"description,omitempty" tf:"description,omitempty"` + // The key will be no longer valid after expiration timestamp. + ExpiresAt *string `json:"expiresAt,omitempty" tf:"expires_at,omitempty"` + + // option to create a Lockbox secret version from sensitive outputs + OutputToLockbox []OutputToLockboxInitParameters `json:"outputToLockbox,omitempty" tf:"output_to_lockbox,omitempty"` + // An optional PGP key to encrypt the resulting secret key material. May either be a base64-encoded public key or a keybase username in the form keybase:keybaseusername. PgpKey *string `json:"pgpKey,omitempty" tf:"pgp_key,omitempty"` + // The scope of the key. + Scope *string `json:"scope,omitempty" tf:"scope,omitempty"` + // ID of the service account to an API key for. // +crossplane:generate:reference:type=ServiceAccount ServiceAccountID *string `json:"serviceAccountId,omitempty" tf:"service_account_id,omitempty"` @@ -41,14 +85,27 @@ type ServiceAccountAPIKeyObservation struct { // The encrypted secret key, base64 encoded. This is only populated when pgp_key is supplied. EncryptedSecretKey *string `json:"encryptedSecretKey,omitempty" tf:"encrypted_secret_key,omitempty"` + // The key will be no longer valid after expiration timestamp. + ExpiresAt *string `json:"expiresAt,omitempty" tf:"expires_at,omitempty"` + ID *string `json:"id,omitempty" tf:"id,omitempty"` // The fingerprint of the PGP key used to encrypt the secret key. This is only populated when pgp_key is supplied. KeyFingerprint *string `json:"keyFingerprint,omitempty" tf:"key_fingerprint,omitempty"` + // option to create a Lockbox secret version from sensitive outputs + OutputToLockbox []OutputToLockboxObservation `json:"outputToLockbox,omitempty" tf:"output_to_lockbox,omitempty"` + + // ID of the Lockbox secret version that contains the value of secret_key. This is only populated when output_to_lockbox is supplied. This version will be destroyed when the IAM key is destroyed, or when output_to_lockbox is removed. + // version generated, that will contain the sensitive outputs + OutputToLockboxVersionID *string `json:"outputToLockboxVersionId,omitempty" tf:"output_to_lockbox_version_id,omitempty"` + // An optional PGP key to encrypt the resulting secret key material. May either be a base64-encoded public key or a keybase username in the form keybase:keybaseusername. PgpKey *string `json:"pgpKey,omitempty" tf:"pgp_key,omitempty"` + // The scope of the key. + Scope *string `json:"scope,omitempty" tf:"scope,omitempty"` + // ID of the service account to an API key for. ServiceAccountID *string `json:"serviceAccountId,omitempty" tf:"service_account_id,omitempty"` } @@ -59,10 +116,22 @@ type ServiceAccountAPIKeyParameters struct { // +kubebuilder:validation:Optional Description *string `json:"description,omitempty" tf:"description,omitempty"` + // The key will be no longer valid after expiration timestamp. + // +kubebuilder:validation:Optional + ExpiresAt *string `json:"expiresAt,omitempty" tf:"expires_at,omitempty"` + + // option to create a Lockbox secret version from sensitive outputs + // +kubebuilder:validation:Optional + OutputToLockbox []OutputToLockboxParameters `json:"outputToLockbox,omitempty" tf:"output_to_lockbox,omitempty"` + // An optional PGP key to encrypt the resulting secret key material. May either be a base64-encoded public key or a keybase username in the form keybase:keybaseusername. // +kubebuilder:validation:Optional PgpKey *string `json:"pgpKey,omitempty" tf:"pgp_key,omitempty"` + // The scope of the key. + // +kubebuilder:validation:Optional + Scope *string `json:"scope,omitempty" tf:"scope,omitempty"` + // ID of the service account to an API key for. // +crossplane:generate:reference:type=ServiceAccount // +kubebuilder:validation:Optional diff --git a/apis/iam/v1alpha1/zz_serviceaccountiambinding_types.go b/apis/iam/v1alpha1/zz_serviceaccountiambinding_types.go index e7ebc29..dafaec4 100755 --- a/apis/iam/v1alpha1/zz_serviceaccountiambinding_types.go +++ b/apis/iam/v1alpha1/zz_serviceaccountiambinding_types.go @@ -11,8 +11,7 @@ import ( type ServiceAccountIAMBindingInitParameters struct { - // Identities that will be granted the privilege in role. - // Each entry can have one of the following values: + // Identities that will be granted the privilege in role. Each entry can have one of the following values: // +crossplane:generate:reference:type=ServiceAccount // +crossplane:generate:reference:extractor=github.com/tagesjump/provider-upjet-yc/config/iam.ServiceAccountRefValue() // +crossplane:generate:reference:refFieldName=ServiceAccountRef @@ -20,8 +19,7 @@ type ServiceAccountIAMBindingInitParameters struct { // +listType=set Members []*string `json:"members,omitempty" tf:"members,omitempty"` - // The role that should be applied. Only one - // yandex_iam_service_account_iam_binding can be used per role. + // The role that should be applied. Only one yandex_iam_service_account_iam_binding can be used per role. Role *string `json:"role,omitempty" tf:"role,omitempty"` // The service account ID to apply a binding to. @@ -50,13 +48,11 @@ type ServiceAccountIAMBindingInitParameters struct { type ServiceAccountIAMBindingObservation struct { ID *string `json:"id,omitempty" tf:"id,omitempty"` - // Identities that will be granted the privilege in role. - // Each entry can have one of the following values: + // Identities that will be granted the privilege in role. Each entry can have one of the following values: // +listType=set Members []*string `json:"members,omitempty" tf:"members,omitempty"` - // The role that should be applied. Only one - // yandex_iam_service_account_iam_binding can be used per role. + // The role that should be applied. Only one yandex_iam_service_account_iam_binding can be used per role. Role *string `json:"role,omitempty" tf:"role,omitempty"` // The service account ID to apply a binding to. @@ -67,8 +63,7 @@ type ServiceAccountIAMBindingObservation struct { type ServiceAccountIAMBindingParameters struct { - // Identities that will be granted the privilege in role. - // Each entry can have one of the following values: + // Identities that will be granted the privilege in role. Each entry can have one of the following values: // +crossplane:generate:reference:type=ServiceAccount // +crossplane:generate:reference:extractor=github.com/tagesjump/provider-upjet-yc/config/iam.ServiceAccountRefValue() // +crossplane:generate:reference:refFieldName=ServiceAccountRef @@ -77,8 +72,7 @@ type ServiceAccountIAMBindingParameters struct { // +listType=set Members []*string `json:"members,omitempty" tf:"members,omitempty"` - // The role that should be applied. Only one - // yandex_iam_service_account_iam_binding can be used per role. + // The role that should be applied. Only one yandex_iam_service_account_iam_binding can be used per role. // +kubebuilder:validation:Optional Role *string `json:"role,omitempty" tf:"role,omitempty"` diff --git a/apis/iam/v1alpha1/zz_serviceaccountiammember_types.go b/apis/iam/v1alpha1/zz_serviceaccountiammember_types.go index b9fa571..0f9a6a1 100755 --- a/apis/iam/v1alpha1/zz_serviceaccountiammember_types.go +++ b/apis/iam/v1alpha1/zz_serviceaccountiammember_types.go @@ -11,16 +11,14 @@ import ( type ServiceAccountIAMMemberInitParameters struct { - // Identity that will be granted the privilege in role. - // Entry can have one of the following values: + // Identity that will be granted the privilege in role. Entry can have one of the following values: // +crossplane:generate:reference:type=ServiceAccount // +crossplane:generate:reference:extractor=github.com/tagesjump/provider-upjet-yc/config/iam.ServiceAccountRefValue() // +crossplane:generate:reference:refFieldName=ServiceAccountRef // +crossplane:generate:reference:selectorFieldName=ServiceAccountSelector Member *string `json:"member,omitempty" tf:"member,omitempty"` - // The role that should be applied. Only one - // yandex_iam_service_account_iam_binding can be used per role. + // The role that should be applied. Only one yandex_iam_service_account_iam_binding can be used per role. Role *string `json:"role,omitempty" tf:"role,omitempty"` // The service account ID to apply a policy to. @@ -49,12 +47,10 @@ type ServiceAccountIAMMemberInitParameters struct { type ServiceAccountIAMMemberObservation struct { ID *string `json:"id,omitempty" tf:"id,omitempty"` - // Identity that will be granted the privilege in role. - // Entry can have one of the following values: + // Identity that will be granted the privilege in role. Entry can have one of the following values: Member *string `json:"member,omitempty" tf:"member,omitempty"` - // The role that should be applied. Only one - // yandex_iam_service_account_iam_binding can be used per role. + // The role that should be applied. Only one yandex_iam_service_account_iam_binding can be used per role. Role *string `json:"role,omitempty" tf:"role,omitempty"` // The service account ID to apply a policy to. @@ -65,8 +61,7 @@ type ServiceAccountIAMMemberObservation struct { type ServiceAccountIAMMemberParameters struct { - // Identity that will be granted the privilege in role. - // Entry can have one of the following values: + // Identity that will be granted the privilege in role. Entry can have one of the following values: // +crossplane:generate:reference:type=ServiceAccount // +crossplane:generate:reference:extractor=github.com/tagesjump/provider-upjet-yc/config/iam.ServiceAccountRefValue() // +crossplane:generate:reference:refFieldName=ServiceAccountRef @@ -74,8 +69,7 @@ type ServiceAccountIAMMemberParameters struct { // +kubebuilder:validation:Optional Member *string `json:"member,omitempty" tf:"member,omitempty"` - // The role that should be applied. Only one - // yandex_iam_service_account_iam_binding can be used per role. + // The role that should be applied. Only one yandex_iam_service_account_iam_binding can be used per role. // +kubebuilder:validation:Optional Role *string `json:"role,omitempty" tf:"role,omitempty"` diff --git a/apis/iam/v1alpha1/zz_serviceaccountiampolicy_types.go b/apis/iam/v1alpha1/zz_serviceaccountiampolicy_types.go index a2aa9ea..97ff18f 100755 --- a/apis/iam/v1alpha1/zz_serviceaccountiampolicy_types.go +++ b/apis/iam/v1alpha1/zz_serviceaccountiampolicy_types.go @@ -11,8 +11,7 @@ import ( type ServiceAccountIAMPolicyInitParameters struct { - // The policy data generated by - // a yandex_iam_policy data source. + // The policy data generated by a yandex_iam_policy data source. PolicyData *string `json:"policyData,omitempty" tf:"policy_data,omitempty"` // The service account ID to apply a policy to. @@ -31,8 +30,7 @@ type ServiceAccountIAMPolicyInitParameters struct { type ServiceAccountIAMPolicyObservation struct { ID *string `json:"id,omitempty" tf:"id,omitempty"` - // The policy data generated by - // a yandex_iam_policy data source. + // The policy data generated by a yandex_iam_policy data source. PolicyData *string `json:"policyData,omitempty" tf:"policy_data,omitempty"` // The service account ID to apply a policy to. @@ -41,8 +39,7 @@ type ServiceAccountIAMPolicyObservation struct { type ServiceAccountIAMPolicyParameters struct { - // The policy data generated by - // a yandex_iam_policy data source. + // The policy data generated by a yandex_iam_policy data source. // +kubebuilder:validation:Optional PolicyData *string `json:"policyData,omitempty" tf:"policy_data,omitempty"` diff --git a/apis/iam/v1alpha1/zz_serviceaccountkey_types.go b/apis/iam/v1alpha1/zz_serviceaccountkey_types.go index 900a9d0..d104cc2 100755 --- a/apis/iam/v1alpha1/zz_serviceaccountkey_types.go +++ b/apis/iam/v1alpha1/zz_serviceaccountkey_types.go @@ -17,10 +17,12 @@ type ServiceAccountKeyInitParameters struct { // The output format of the keys. PEM_FILE is the default format. Format *string `json:"format,omitempty" tf:"format,omitempty"` - // The algorithm used to generate the key. RSA_2048 is the default algorithm. - // Valid values are listed in the API reference. + // The algorithm used to generate the key. RSA_2048 is the default algorithm. Valid values are listed in the API reference. KeyAlgorithm *string `json:"keyAlgorithm,omitempty" tf:"key_algorithm,omitempty"` + // option to create a Lockbox secret version from sensitive outputs + OutputToLockbox []ServiceAccountKeyOutputToLockboxInitParameters `json:"outputToLockbox,omitempty" tf:"output_to_lockbox,omitempty"` + // An optional PGP key to encrypt the resulting private key material. May either be a base64-encoded public key or a keybase username in the form keybase:keybaseusername. PgpKey *string `json:"pgpKey,omitempty" tf:"pgp_key,omitempty"` @@ -53,13 +55,19 @@ type ServiceAccountKeyObservation struct { ID *string `json:"id,omitempty" tf:"id,omitempty"` - // The algorithm used to generate the key. RSA_2048 is the default algorithm. - // Valid values are listed in the API reference. + // The algorithm used to generate the key. RSA_2048 is the default algorithm. Valid values are listed in the API reference. KeyAlgorithm *string `json:"keyAlgorithm,omitempty" tf:"key_algorithm,omitempty"` // The fingerprint of the PGP key used to encrypt the private key. This is only populated when pgp_key is supplied. KeyFingerprint *string `json:"keyFingerprint,omitempty" tf:"key_fingerprint,omitempty"` + // option to create a Lockbox secret version from sensitive outputs + OutputToLockbox []ServiceAccountKeyOutputToLockboxObservation `json:"outputToLockbox,omitempty" tf:"output_to_lockbox,omitempty"` + + // ID of the Lockbox secret version that contains the value of private_key. This is only populated when output_to_lockbox is supplied. This version will be destroyed when the IAM key is destroyed, or when output_to_lockbox is removed. + // version generated, that will contain the sensitive outputs + OutputToLockboxVersionID *string `json:"outputToLockboxVersionId,omitempty" tf:"output_to_lockbox_version_id,omitempty"` + // An optional PGP key to encrypt the resulting private key material. May either be a base64-encoded public key or a keybase username in the form keybase:keybaseusername. PgpKey *string `json:"pgpKey,omitempty" tf:"pgp_key,omitempty"` @@ -70,6 +78,41 @@ type ServiceAccountKeyObservation struct { ServiceAccountID *string `json:"serviceAccountId,omitempty" tf:"service_account_id,omitempty"` } +type ServiceAccountKeyOutputToLockboxInitParameters struct { + + // Entry where to store the value of private_key. + // entry that will store the value of private_key + EntryForPrivateKey *string `json:"entryForPrivateKey,omitempty" tf:"entry_for_private_key,omitempty"` + + // ID of the Lockbox secret where to store the sensible values. + // secret where to add the version with the sensitive values + SecretID *string `json:"secretId,omitempty" tf:"secret_id,omitempty"` +} + +type ServiceAccountKeyOutputToLockboxObservation struct { + + // Entry where to store the value of private_key. + // entry that will store the value of private_key + EntryForPrivateKey *string `json:"entryForPrivateKey,omitempty" tf:"entry_for_private_key,omitempty"` + + // ID of the Lockbox secret where to store the sensible values. + // secret where to add the version with the sensitive values + SecretID *string `json:"secretId,omitempty" tf:"secret_id,omitempty"` +} + +type ServiceAccountKeyOutputToLockboxParameters struct { + + // Entry where to store the value of private_key. + // entry that will store the value of private_key + // +kubebuilder:validation:Optional + EntryForPrivateKey *string `json:"entryForPrivateKey" tf:"entry_for_private_key,omitempty"` + + // ID of the Lockbox secret where to store the sensible values. + // secret where to add the version with the sensitive values + // +kubebuilder:validation:Optional + SecretID *string `json:"secretId" tf:"secret_id,omitempty"` +} + type ServiceAccountKeyParameters struct { // The description of the key pair. @@ -80,11 +123,14 @@ type ServiceAccountKeyParameters struct { // +kubebuilder:validation:Optional Format *string `json:"format,omitempty" tf:"format,omitempty"` - // The algorithm used to generate the key. RSA_2048 is the default algorithm. - // Valid values are listed in the API reference. + // The algorithm used to generate the key. RSA_2048 is the default algorithm. Valid values are listed in the API reference. // +kubebuilder:validation:Optional KeyAlgorithm *string `json:"keyAlgorithm,omitempty" tf:"key_algorithm,omitempty"` + // option to create a Lockbox secret version from sensitive outputs + // +kubebuilder:validation:Optional + OutputToLockbox []ServiceAccountKeyOutputToLockboxParameters `json:"outputToLockbox,omitempty" tf:"output_to_lockbox,omitempty"` + // An optional PGP key to encrypt the resulting private key material. May either be a base64-encoded public key or a keybase username in the form keybase:keybaseusername. // +kubebuilder:validation:Optional PgpKey *string `json:"pgpKey,omitempty" tf:"pgp_key,omitempty"` diff --git a/apis/iam/v1alpha1/zz_serviceaccountstaticaccesskey_types.go b/apis/iam/v1alpha1/zz_serviceaccountstaticaccesskey_types.go index 71810cc..1cb8ac2 100755 --- a/apis/iam/v1alpha1/zz_serviceaccountstaticaccesskey_types.go +++ b/apis/iam/v1alpha1/zz_serviceaccountstaticaccesskey_types.go @@ -14,6 +14,9 @@ type ServiceAccountStaticAccessKeyInitParameters struct { // The description of the service account static key. Description *string `json:"description,omitempty" tf:"description,omitempty"` + // option to create a Lockbox secret version from sensitive outputs + OutputToLockbox []ServiceAccountStaticAccessKeyOutputToLockboxInitParameters `json:"outputToLockbox,omitempty" tf:"output_to_lockbox,omitempty"` + // An optional PGP key to encrypt the resulting secret key material. May either be a base64-encoded public key or a keybase username in the form keybase:keybaseusername. PgpKey *string `json:"pgpKey,omitempty" tf:"pgp_key,omitempty"` @@ -32,7 +35,7 @@ type ServiceAccountStaticAccessKeyInitParameters struct { type ServiceAccountStaticAccessKeyObservation struct { - // ID of the static access key. + // ID of the static access key. This is only populated when output_to_lockbox is not provided. AccessKey *string `json:"accessKey,omitempty" tf:"access_key,omitempty"` // Creation timestamp of the static access key. @@ -49,6 +52,13 @@ type ServiceAccountStaticAccessKeyObservation struct { // The fingerprint of the PGP key used to encrypt the secret key. This is only populated when pgp_key is supplied. KeyFingerprint *string `json:"keyFingerprint,omitempty" tf:"key_fingerprint,omitempty"` + // option to create a Lockbox secret version from sensitive outputs + OutputToLockbox []ServiceAccountStaticAccessKeyOutputToLockboxObservation `json:"outputToLockbox,omitempty" tf:"output_to_lockbox,omitempty"` + + // ID of the Lockbox secret version that contains the values of access_key and secret_key. This is only populated when output_to_lockbox is supplied. This version will be destroyed when the IAM key is destroyed, or when output_to_lockbox is removed. + // version generated, that will contain the sensitive outputs + OutputToLockboxVersionID *string `json:"outputToLockboxVersionId,omitempty" tf:"output_to_lockbox_version_id,omitempty"` + // An optional PGP key to encrypt the resulting secret key material. May either be a base64-encoded public key or a keybase username in the form keybase:keybaseusername. PgpKey *string `json:"pgpKey,omitempty" tf:"pgp_key,omitempty"` @@ -56,12 +66,64 @@ type ServiceAccountStaticAccessKeyObservation struct { ServiceAccountID *string `json:"serviceAccountId,omitempty" tf:"service_account_id,omitempty"` } +type ServiceAccountStaticAccessKeyOutputToLockboxInitParameters struct { + + // Entry where to store the value of access_key. + // entry that will store the value of access_key + EntryForAccessKey *string `json:"entryForAccessKey,omitempty" tf:"entry_for_access_key,omitempty"` + + // Entry where to store the value of secret_key. + // entry that will store the value of secret_key + EntryForSecretKey *string `json:"entryForSecretKey,omitempty" tf:"entry_for_secret_key,omitempty"` + + // ID of the Lockbox secret where to store the sensible values. + // secret where to add the version with the sensitive values + SecretID *string `json:"secretId,omitempty" tf:"secret_id,omitempty"` +} + +type ServiceAccountStaticAccessKeyOutputToLockboxObservation struct { + + // Entry where to store the value of access_key. + // entry that will store the value of access_key + EntryForAccessKey *string `json:"entryForAccessKey,omitempty" tf:"entry_for_access_key,omitempty"` + + // Entry where to store the value of secret_key. + // entry that will store the value of secret_key + EntryForSecretKey *string `json:"entryForSecretKey,omitempty" tf:"entry_for_secret_key,omitempty"` + + // ID of the Lockbox secret where to store the sensible values. + // secret where to add the version with the sensitive values + SecretID *string `json:"secretId,omitempty" tf:"secret_id,omitempty"` +} + +type ServiceAccountStaticAccessKeyOutputToLockboxParameters struct { + + // Entry where to store the value of access_key. + // entry that will store the value of access_key + // +kubebuilder:validation:Optional + EntryForAccessKey *string `json:"entryForAccessKey" tf:"entry_for_access_key,omitempty"` + + // Entry where to store the value of secret_key. + // entry that will store the value of secret_key + // +kubebuilder:validation:Optional + EntryForSecretKey *string `json:"entryForSecretKey" tf:"entry_for_secret_key,omitempty"` + + // ID of the Lockbox secret where to store the sensible values. + // secret where to add the version with the sensitive values + // +kubebuilder:validation:Optional + SecretID *string `json:"secretId" tf:"secret_id,omitempty"` +} + type ServiceAccountStaticAccessKeyParameters struct { // The description of the service account static key. // +kubebuilder:validation:Optional Description *string `json:"description,omitempty" tf:"description,omitempty"` + // option to create a Lockbox secret version from sensitive outputs + // +kubebuilder:validation:Optional + OutputToLockbox []ServiceAccountStaticAccessKeyOutputToLockboxParameters `json:"outputToLockbox,omitempty" tf:"output_to_lockbox,omitempty"` + // An optional PGP key to encrypt the resulting secret key material. May either be a base64-encoded public key or a keybase username in the form keybase:keybaseusername. // +kubebuilder:validation:Optional PgpKey *string `json:"pgpKey,omitempty" tf:"pgp_key,omitempty"` diff --git a/apis/kms/v1alpha1/zz_asymmetricencryptionkey_types.go b/apis/kms/v1alpha1/zz_asymmetricencryptionkey_types.go index bf66c5e..a535571 100755 --- a/apis/kms/v1alpha1/zz_asymmetricencryptionkey_types.go +++ b/apis/kms/v1alpha1/zz_asymmetricencryptionkey_types.go @@ -18,8 +18,7 @@ type AsymmetricEncryptionKeyInitParameters struct { // Encryption algorithm to be used with a new key. The default value is RSA_2048_ENC_OAEP_SHA_256. EncryptionAlgorithm *string `json:"encryptionAlgorithm,omitempty" tf:"encryption_algorithm,omitempty"` - // The ID of the folder that the resource belongs to. If it - // is not provided, the default provider folder is used. + // The ID of the folder that the resource belongs to. If it is not provided, the default provider folder is used. // +crossplane:generate:reference:type=github.com/tagesjump/provider-upjet-yc/apis/resourcemanager/v1alpha1.Folder FolderID *string `json:"folderId,omitempty" tf:"folder_id,omitempty"` @@ -52,8 +51,7 @@ type AsymmetricEncryptionKeyObservation struct { // Encryption algorithm to be used with a new key. The default value is RSA_2048_ENC_OAEP_SHA_256. EncryptionAlgorithm *string `json:"encryptionAlgorithm,omitempty" tf:"encryption_algorithm,omitempty"` - // The ID of the folder that the resource belongs to. If it - // is not provided, the default provider folder is used. + // The ID of the folder that the resource belongs to. If it is not provided, the default provider folder is used. FolderID *string `json:"folderId,omitempty" tf:"folder_id,omitempty"` ID *string `json:"id,omitempty" tf:"id,omitempty"` @@ -82,8 +80,7 @@ type AsymmetricEncryptionKeyParameters struct { // +kubebuilder:validation:Optional EncryptionAlgorithm *string `json:"encryptionAlgorithm,omitempty" tf:"encryption_algorithm,omitempty"` - // The ID of the folder that the resource belongs to. If it - // is not provided, the default provider folder is used. + // The ID of the folder that the resource belongs to. If it is not provided, the default provider folder is used. // +crossplane:generate:reference:type=github.com/tagesjump/provider-upjet-yc/apis/resourcemanager/v1alpha1.Folder // +kubebuilder:validation:Optional FolderID *string `json:"folderId,omitempty" tf:"folder_id,omitempty"` diff --git a/apis/kms/v1alpha1/zz_asymmetricencryptionkeyiambinding_types.go b/apis/kms/v1alpha1/zz_asymmetricencryptionkeyiambinding_types.go index a7b8cf4..ebbbc07 100755 --- a/apis/kms/v1alpha1/zz_asymmetricencryptionkeyiambinding_types.go +++ b/apis/kms/v1alpha1/zz_asymmetricencryptionkeyiambinding_types.go @@ -23,8 +23,7 @@ type AsymmetricEncryptionKeyIAMBindingInitParameters struct { // +kubebuilder:validation:Optional AsymmetricEncryptionKeyIDSelector *v1.Selector `json:"asymmetricEncryptionKeyIdSelector,omitempty" tf:"-"` - // Identities that will be granted the privilege in role. - // Each entry can have one of the following values: + // Identities that will be granted the privilege in role. Each entry can have one of the following values: // +crossplane:generate:reference:type=github.com/tagesjump/provider-upjet-yc/apis/iam/v1alpha1.ServiceAccount // +crossplane:generate:reference:extractor=github.com/tagesjump/provider-upjet-yc/config/iam.ServiceAccountRefValue() // +crossplane:generate:reference:refFieldName=ServiceAccountRef @@ -53,8 +52,7 @@ type AsymmetricEncryptionKeyIAMBindingObservation struct { ID *string `json:"id,omitempty" tf:"id,omitempty"` - // Identities that will be granted the privilege in role. - // Each entry can have one of the following values: + // Identities that will be granted the privilege in role. Each entry can have one of the following values: // +listType=set Members []*string `json:"members,omitempty" tf:"members,omitempty"` @@ -79,8 +77,7 @@ type AsymmetricEncryptionKeyIAMBindingParameters struct { // +kubebuilder:validation:Optional AsymmetricEncryptionKeyIDSelector *v1.Selector `json:"asymmetricEncryptionKeyIdSelector,omitempty" tf:"-"` - // Identities that will be granted the privilege in role. - // Each entry can have one of the following values: + // Identities that will be granted the privilege in role. Each entry can have one of the following values: // +crossplane:generate:reference:type=github.com/tagesjump/provider-upjet-yc/apis/iam/v1alpha1.ServiceAccount // +crossplane:generate:reference:extractor=github.com/tagesjump/provider-upjet-yc/config/iam.ServiceAccountRefValue() // +crossplane:generate:reference:refFieldName=ServiceAccountRef diff --git a/apis/kms/v1alpha1/zz_asymmetricsignaturekey_types.go b/apis/kms/v1alpha1/zz_asymmetricsignaturekey_types.go index ea4f337..a82ba60 100755 --- a/apis/kms/v1alpha1/zz_asymmetricsignaturekey_types.go +++ b/apis/kms/v1alpha1/zz_asymmetricsignaturekey_types.go @@ -15,8 +15,7 @@ type AsymmetricSignatureKeyInitParameters struct { // An optional description of the key. Description *string `json:"description,omitempty" tf:"description,omitempty"` - // The ID of the folder that the resource belongs to. If it - // is not provided, the default provider folder is used. + // The ID of the folder that the resource belongs to. If it is not provided, the default provider folder is used. // +crossplane:generate:reference:type=github.com/tagesjump/provider-upjet-yc/apis/resourcemanager/v1alpha1.Folder FolderID *string `json:"folderId,omitempty" tf:"folder_id,omitempty"` @@ -49,8 +48,7 @@ type AsymmetricSignatureKeyObservation struct { // An optional description of the key. Description *string `json:"description,omitempty" tf:"description,omitempty"` - // The ID of the folder that the resource belongs to. If it - // is not provided, the default provider folder is used. + // The ID of the folder that the resource belongs to. If it is not provided, the default provider folder is used. FolderID *string `json:"folderId,omitempty" tf:"folder_id,omitempty"` ID *string `json:"id,omitempty" tf:"id,omitempty"` @@ -78,8 +76,7 @@ type AsymmetricSignatureKeyParameters struct { // +kubebuilder:validation:Optional Description *string `json:"description,omitempty" tf:"description,omitempty"` - // The ID of the folder that the resource belongs to. If it - // is not provided, the default provider folder is used. + // The ID of the folder that the resource belongs to. If it is not provided, the default provider folder is used. // +crossplane:generate:reference:type=github.com/tagesjump/provider-upjet-yc/apis/resourcemanager/v1alpha1.Folder // +kubebuilder:validation:Optional FolderID *string `json:"folderId,omitempty" tf:"folder_id,omitempty"` diff --git a/apis/kms/v1alpha1/zz_asymmetricsignaturekeyiambinding_types.go b/apis/kms/v1alpha1/zz_asymmetricsignaturekeyiambinding_types.go index 3da7fb9..4941a0a 100755 --- a/apis/kms/v1alpha1/zz_asymmetricsignaturekeyiambinding_types.go +++ b/apis/kms/v1alpha1/zz_asymmetricsignaturekeyiambinding_types.go @@ -23,8 +23,7 @@ type AsymmetricSignatureKeyIAMBindingInitParameters struct { // +kubebuilder:validation:Optional AsymmetricSignatureKeyIDSelector *v1.Selector `json:"asymmetricSignatureKeyIdSelector,omitempty" tf:"-"` - // Identities that will be granted the privilege in role. - // Each entry can have one of the following values: + // Identities that will be granted the privilege in role. Each entry can have one of the following values: // +crossplane:generate:reference:type=github.com/tagesjump/provider-upjet-yc/apis/iam/v1alpha1.ServiceAccount // +crossplane:generate:reference:extractor=github.com/tagesjump/provider-upjet-yc/config/iam.ServiceAccountRefValue() // +crossplane:generate:reference:refFieldName=ServiceAccountRef @@ -53,8 +52,7 @@ type AsymmetricSignatureKeyIAMBindingObservation struct { ID *string `json:"id,omitempty" tf:"id,omitempty"` - // Identities that will be granted the privilege in role. - // Each entry can have one of the following values: + // Identities that will be granted the privilege in role. Each entry can have one of the following values: // +listType=set Members []*string `json:"members,omitempty" tf:"members,omitempty"` @@ -79,8 +77,7 @@ type AsymmetricSignatureKeyIAMBindingParameters struct { // +kubebuilder:validation:Optional AsymmetricSignatureKeyIDSelector *v1.Selector `json:"asymmetricSignatureKeyIdSelector,omitempty" tf:"-"` - // Identities that will be granted the privilege in role. - // Each entry can have one of the following values: + // Identities that will be granted the privilege in role. Each entry can have one of the following values: // +crossplane:generate:reference:type=github.com/tagesjump/provider-upjet-yc/apis/iam/v1alpha1.ServiceAccount // +crossplane:generate:reference:extractor=github.com/tagesjump/provider-upjet-yc/config/iam.ServiceAccountRefValue() // +crossplane:generate:reference:refFieldName=ServiceAccountRef diff --git a/apis/kms/v1alpha1/zz_secretciphertext_types.go b/apis/kms/v1alpha1/zz_secretciphertext_types.go index 0c5d879..2fcecd9 100755 --- a/apis/kms/v1alpha1/zz_secretciphertext_types.go +++ b/apis/kms/v1alpha1/zz_secretciphertext_types.go @@ -38,7 +38,7 @@ type SecretCiphertextObservation struct { // Resulting ciphertext, encoded with "standard" base64 alphabet as defined in RFC 4648 section 4 Ciphertext *string `json:"ciphertext,omitempty" tf:"ciphertext,omitempty"` - // an identifier for the resource with format {{key_id}}/{{ciphertext}} + // an identifier for the resource with format {key_id}/{ciphertext} ID *string `json:"id,omitempty" tf:"id,omitempty"` // ID of the symmetric KMS key to use for encryption. diff --git a/apis/kms/v1alpha1/zz_symmetrickey_types.go b/apis/kms/v1alpha1/zz_symmetrickey_types.go index 8cc050a..8dd83ef 100755 --- a/apis/kms/v1alpha1/zz_symmetrickey_types.go +++ b/apis/kms/v1alpha1/zz_symmetrickey_types.go @@ -11,8 +11,7 @@ import ( type SymmetricKeyInitParameters struct { - // Encryption algorithm to be used with a new key version, - // generated with the next rotation. The default value is AES_128. + // Encryption algorithm to be used with a new key version, generated with the next rotation. The default value is AES_128. DefaultAlgorithm *string `json:"defaultAlgorithm,omitempty" tf:"default_algorithm,omitempty"` DeletionProtection *bool `json:"deletionProtection,omitempty" tf:"deletion_protection,omitempty"` @@ -20,8 +19,7 @@ type SymmetricKeyInitParameters struct { // An optional description of the key. Description *string `json:"description,omitempty" tf:"description,omitempty"` - // The ID of the folder that the resource belongs to. If it - // is not provided, the default provider folder is used. + // The ID of the folder that the resource belongs to. If it is not provided, the default provider folder is used. // +crossplane:generate:reference:type=github.com/tagesjump/provider-upjet-yc/apis/resourcemanager/v1alpha1.Folder FolderID *string `json:"folderId,omitempty" tf:"folder_id,omitempty"` @@ -49,8 +47,7 @@ type SymmetricKeyObservation struct { // Creation timestamp of the key. CreatedAt *string `json:"createdAt,omitempty" tf:"created_at,omitempty"` - // Encryption algorithm to be used with a new key version, - // generated with the next rotation. The default value is AES_128. + // Encryption algorithm to be used with a new key version, generated with the next rotation. The default value is AES_128. DefaultAlgorithm *string `json:"defaultAlgorithm,omitempty" tf:"default_algorithm,omitempty"` DeletionProtection *bool `json:"deletionProtection,omitempty" tf:"deletion_protection,omitempty"` @@ -58,8 +55,7 @@ type SymmetricKeyObservation struct { // An optional description of the key. Description *string `json:"description,omitempty" tf:"description,omitempty"` - // The ID of the folder that the resource belongs to. If it - // is not provided, the default provider folder is used. + // The ID of the folder that the resource belongs to. If it is not provided, the default provider folder is used. FolderID *string `json:"folderId,omitempty" tf:"folder_id,omitempty"` ID *string `json:"id,omitempty" tf:"id,omitempty"` @@ -83,8 +79,7 @@ type SymmetricKeyObservation struct { type SymmetricKeyParameters struct { - // Encryption algorithm to be used with a new key version, - // generated with the next rotation. The default value is AES_128. + // Encryption algorithm to be used with a new key version, generated with the next rotation. The default value is AES_128. // +kubebuilder:validation:Optional DefaultAlgorithm *string `json:"defaultAlgorithm,omitempty" tf:"default_algorithm,omitempty"` @@ -95,8 +90,7 @@ type SymmetricKeyParameters struct { // +kubebuilder:validation:Optional Description *string `json:"description,omitempty" tf:"description,omitempty"` - // The ID of the folder that the resource belongs to. If it - // is not provided, the default provider folder is used. + // The ID of the folder that the resource belongs to. If it is not provided, the default provider folder is used. // +crossplane:generate:reference:type=github.com/tagesjump/provider-upjet-yc/apis/resourcemanager/v1alpha1.Folder // +kubebuilder:validation:Optional FolderID *string `json:"folderId,omitempty" tf:"folder_id,omitempty"` diff --git a/apis/kms/v1alpha1/zz_symmetrickeyiambinding_types.go b/apis/kms/v1alpha1/zz_symmetrickeyiambinding_types.go index a72bf7d..d698be2 100755 --- a/apis/kms/v1alpha1/zz_symmetrickeyiambinding_types.go +++ b/apis/kms/v1alpha1/zz_symmetrickeyiambinding_types.go @@ -11,8 +11,7 @@ import ( type SymmetricKeyIAMBindingInitParameters struct { - // Identities that will be granted the privilege in role. - // Each entry can have one of the following values: + // Identities that will be granted the privilege in role. Each entry can have one of the following values: // +crossplane:generate:reference:type=github.com/tagesjump/provider-upjet-yc/apis/iam/v1alpha1.ServiceAccount // +crossplane:generate:reference:extractor=github.com/tagesjump/provider-upjet-yc/config/iam.ServiceAccountRefValue() // +crossplane:generate:reference:refFieldName=ServiceAccountRef @@ -49,8 +48,7 @@ type SymmetricKeyIAMBindingInitParameters struct { type SymmetricKeyIAMBindingObservation struct { ID *string `json:"id,omitempty" tf:"id,omitempty"` - // Identities that will be granted the privilege in role. - // Each entry can have one of the following values: + // Identities that will be granted the privilege in role. Each entry can have one of the following values: // +listType=set Members []*string `json:"members,omitempty" tf:"members,omitempty"` @@ -65,8 +63,7 @@ type SymmetricKeyIAMBindingObservation struct { type SymmetricKeyIAMBindingParameters struct { - // Identities that will be granted the privilege in role. - // Each entry can have one of the following values: + // Identities that will be granted the privilege in role. Each entry can have one of the following values: // +crossplane:generate:reference:type=github.com/tagesjump/provider-upjet-yc/apis/iam/v1alpha1.ServiceAccount // +crossplane:generate:reference:extractor=github.com/tagesjump/provider-upjet-yc/config/iam.ServiceAccountRefValue() // +crossplane:generate:reference:refFieldName=ServiceAccountRef diff --git a/apis/kubernetes/v1alpha1/zz_cluster_types.go b/apis/kubernetes/v1alpha1/zz_cluster_types.go index e45344d..5626801 100755 --- a/apis/kubernetes/v1alpha1/zz_cluster_types.go +++ b/apis/kubernetes/v1alpha1/zz_cluster_types.go @@ -20,9 +20,7 @@ type CiliumParameters struct { type ClusterInitParameters struct { - // CIDR block. IP range for allocating pod addresses. - // It should not overlap with any subnet in the network the Kubernetes cluster located in. Static routes will be - // set up for this CIDR blocks in node subnets. + // CIDR block. IP range for allocating pod addresses. It should not overlap with any subnet in the network the Kubernetes cluster located in. Static routes will be set up for this CIDR blocks in node subnets. ClusterIPv4Range *string `json:"clusterIpv4Range,omitempty" tf:"cluster_ipv4_range,omitempty"` // Identical to cluster_ipv4_range but for IPv6 protocol. @@ -31,8 +29,7 @@ type ClusterInitParameters struct { // A description of the Kubernetes cluster. Description *string `json:"description,omitempty" tf:"description,omitempty"` - // The ID of the folder that the Kubernetes cluster belongs to. - // If it is not provided, the default provider folder is used. + // The ID of the folder that the Kubernetes cluster belongs to. If it is not provided, the default provider folder is used. // +crossplane:generate:reference:type=github.com/tagesjump/provider-upjet-yc/apis/resourcemanager/v1alpha1.Folder FolderID *string `json:"folderId,omitempty" tf:"folder_id,omitempty"` @@ -78,8 +75,7 @@ type ClusterInitParameters struct { // Size of the masks that are assigned to each node in the cluster. Effectively limits maximum number of pods for each node. NodeIPv4CidrMaskSize *float64 `json:"nodeIpv4CidrMaskSize,omitempty" tf:"node_ipv4_cidr_mask_size,omitempty"` - // Service account to be used by the worker nodes of the Kubernetes cluster - // to access Container Registry or to push node logs and metrics. + // Service account to be used by the worker nodes of the Kubernetes cluster to access Container Registry or to push node logs and metrics. // +crossplane:generate:reference:type=github.com/tagesjump/provider-upjet-yc/apis/vpc/v1alpha1.SecurityGroup NodeServiceAccountID *string `json:"nodeServiceAccountId,omitempty" tf:"node_service_account_id,omitempty"` @@ -94,9 +90,7 @@ type ClusterInitParameters struct { // Cluster release channel. ReleaseChannel *string `json:"releaseChannel,omitempty" tf:"release_channel,omitempty"` - // Service account to be used for provisioning Compute Cloud and VPC resources - // for Kubernetes cluster. Selected service account should have edit role on the folder where the Kubernetes - // cluster will be located and on the folder where selected network resides. + // Service account to be used for provisioning Compute Cloud and VPC resources for Kubernetes cluster. Selected service account should have edit role on the folder where the Kubernetes cluster will be located and on the folder where selected network resides. // +crossplane:generate:reference:type=github.com/tagesjump/provider-upjet-yc/apis/vpc/v1alpha1.SecurityGroup ServiceAccountID *string `json:"serviceAccountId,omitempty" tf:"service_account_id,omitempty"` @@ -108,9 +102,7 @@ type ClusterInitParameters struct { // +kubebuilder:validation:Optional ServiceAccountIDSelector *v1.Selector `json:"serviceAccountIdSelector,omitempty" tf:"-"` - // CIDR block. IP range Kubernetes service Kubernetes cluster - // IP addresses will be allocated from. It should not overlap with any subnet in the network - // the Kubernetes cluster located in. + // CIDR block. IP range Kubernetes service Kubernetes cluster IP addresses will be allocated from. It should not overlap with any subnet in the network the Kubernetes cluster located in. ServiceIPv4Range *string `json:"serviceIpv4Range,omitempty" tf:"service_ipv4_range,omitempty"` // Identical to service_ipv4_range but for IPv6 protocol. @@ -119,9 +111,7 @@ type ClusterInitParameters struct { type ClusterObservation struct { - // CIDR block. IP range for allocating pod addresses. - // It should not overlap with any subnet in the network the Kubernetes cluster located in. Static routes will be - // set up for this CIDR blocks in node subnets. + // CIDR block. IP range for allocating pod addresses. It should not overlap with any subnet in the network the Kubernetes cluster located in. Static routes will be set up for this CIDR blocks in node subnets. ClusterIPv4Range *string `json:"clusterIpv4Range,omitempty" tf:"cluster_ipv4_range,omitempty"` // Identical to cluster_ipv4_range but for IPv6 protocol. @@ -133,8 +123,7 @@ type ClusterObservation struct { // A description of the Kubernetes cluster. Description *string `json:"description,omitempty" tf:"description,omitempty"` - // The ID of the folder that the Kubernetes cluster belongs to. - // If it is not provided, the default provider folder is used. + // The ID of the folder that the Kubernetes cluster belongs to. If it is not provided, the default provider folder is used. FolderID *string `json:"folderId,omitempty" tf:"folder_id,omitempty"` // (Computed) Health of the Kubernetes cluster. @@ -171,21 +160,16 @@ type ClusterObservation struct { // Size of the masks that are assigned to each node in the cluster. Effectively limits maximum number of pods for each node. NodeIPv4CidrMaskSize *float64 `json:"nodeIpv4CidrMaskSize,omitempty" tf:"node_ipv4_cidr_mask_size,omitempty"` - // Service account to be used by the worker nodes of the Kubernetes cluster - // to access Container Registry or to push node logs and metrics. + // Service account to be used by the worker nodes of the Kubernetes cluster to access Container Registry or to push node logs and metrics. NodeServiceAccountID *string `json:"nodeServiceAccountId,omitempty" tf:"node_service_account_id,omitempty"` // Cluster release channel. ReleaseChannel *string `json:"releaseChannel,omitempty" tf:"release_channel,omitempty"` - // Service account to be used for provisioning Compute Cloud and VPC resources - // for Kubernetes cluster. Selected service account should have edit role on the folder where the Kubernetes - // cluster will be located and on the folder where selected network resides. + // Service account to be used for provisioning Compute Cloud and VPC resources for Kubernetes cluster. Selected service account should have edit role on the folder where the Kubernetes cluster will be located and on the folder where selected network resides. ServiceAccountID *string `json:"serviceAccountId,omitempty" tf:"service_account_id,omitempty"` - // CIDR block. IP range Kubernetes service Kubernetes cluster - // IP addresses will be allocated from. It should not overlap with any subnet in the network - // the Kubernetes cluster located in. + // CIDR block. IP range Kubernetes service Kubernetes cluster IP addresses will be allocated from. It should not overlap with any subnet in the network the Kubernetes cluster located in. ServiceIPv4Range *string `json:"serviceIpv4Range,omitempty" tf:"service_ipv4_range,omitempty"` // Identical to service_ipv4_range but for IPv6 protocol. @@ -197,9 +181,7 @@ type ClusterObservation struct { type ClusterParameters struct { - // CIDR block. IP range for allocating pod addresses. - // It should not overlap with any subnet in the network the Kubernetes cluster located in. Static routes will be - // set up for this CIDR blocks in node subnets. + // CIDR block. IP range for allocating pod addresses. It should not overlap with any subnet in the network the Kubernetes cluster located in. Static routes will be set up for this CIDR blocks in node subnets. // +kubebuilder:validation:Optional ClusterIPv4Range *string `json:"clusterIpv4Range,omitempty" tf:"cluster_ipv4_range,omitempty"` @@ -211,8 +193,7 @@ type ClusterParameters struct { // +kubebuilder:validation:Optional Description *string `json:"description,omitempty" tf:"description,omitempty"` - // The ID of the folder that the Kubernetes cluster belongs to. - // If it is not provided, the default provider folder is used. + // The ID of the folder that the Kubernetes cluster belongs to. If it is not provided, the default provider folder is used. // +crossplane:generate:reference:type=github.com/tagesjump/provider-upjet-yc/apis/resourcemanager/v1alpha1.Folder // +kubebuilder:validation:Optional FolderID *string `json:"folderId,omitempty" tf:"folder_id,omitempty"` @@ -267,8 +248,7 @@ type ClusterParameters struct { // +kubebuilder:validation:Optional NodeIPv4CidrMaskSize *float64 `json:"nodeIpv4CidrMaskSize,omitempty" tf:"node_ipv4_cidr_mask_size,omitempty"` - // Service account to be used by the worker nodes of the Kubernetes cluster - // to access Container Registry or to push node logs and metrics. + // Service account to be used by the worker nodes of the Kubernetes cluster to access Container Registry or to push node logs and metrics. // +crossplane:generate:reference:type=github.com/tagesjump/provider-upjet-yc/apis/vpc/v1alpha1.SecurityGroup // +kubebuilder:validation:Optional NodeServiceAccountID *string `json:"nodeServiceAccountId,omitempty" tf:"node_service_account_id,omitempty"` @@ -285,9 +265,7 @@ type ClusterParameters struct { // +kubebuilder:validation:Optional ReleaseChannel *string `json:"releaseChannel,omitempty" tf:"release_channel,omitempty"` - // Service account to be used for provisioning Compute Cloud and VPC resources - // for Kubernetes cluster. Selected service account should have edit role on the folder where the Kubernetes - // cluster will be located and on the folder where selected network resides. + // Service account to be used for provisioning Compute Cloud and VPC resources for Kubernetes cluster. Selected service account should have edit role on the folder where the Kubernetes cluster will be located and on the folder where selected network resides. // +crossplane:generate:reference:type=github.com/tagesjump/provider-upjet-yc/apis/vpc/v1alpha1.SecurityGroup // +kubebuilder:validation:Optional ServiceAccountID *string `json:"serviceAccountId,omitempty" tf:"service_account_id,omitempty"` @@ -300,9 +278,7 @@ type ClusterParameters struct { // +kubebuilder:validation:Optional ServiceAccountIDSelector *v1.Selector `json:"serviceAccountIdSelector,omitempty" tf:"-"` - // CIDR block. IP range Kubernetes service Kubernetes cluster - // IP addresses will be allocated from. It should not overlap with any subnet in the network - // the Kubernetes cluster located in. + // CIDR block. IP range Kubernetes service Kubernetes cluster IP addresses will be allocated from. It should not overlap with any subnet in the network the Kubernetes cluster located in. // +kubebuilder:validation:Optional ServiceIPv4Range *string `json:"serviceIpv4Range,omitempty" tf:"service_ipv4_range,omitempty"` @@ -363,7 +339,17 @@ type LocationInitParameters struct { SubnetIDSelector *v1.Selector `json:"subnetIdSelector,omitempty" tf:"-"` // ID of the availability zone. + // +crossplane:generate:reference:type=github.com/tagesjump/provider-upjet-yc/apis/vpc/v1alpha1.Subnet + // +crossplane:generate:reference:extractor=github.com/crossplane/upjet/pkg/resource.ExtractParamPath("zone",false) Zone *string `json:"zone,omitempty" tf:"zone,omitempty"` + + // Reference to a Subnet in vpc to populate zone. + // +kubebuilder:validation:Optional + ZoneRef *v1.Reference `json:"zoneRef,omitempty" tf:"-"` + + // Selector for a Subnet in vpc to populate zone. + // +kubebuilder:validation:Optional + ZoneSelector *v1.Selector `json:"zoneSelector,omitempty" tf:"-"` } type LocationObservation struct { @@ -391,8 +377,18 @@ type LocationParameters struct { SubnetIDSelector *v1.Selector `json:"subnetIdSelector,omitempty" tf:"-"` // ID of the availability zone. + // +crossplane:generate:reference:type=github.com/tagesjump/provider-upjet-yc/apis/vpc/v1alpha1.Subnet + // +crossplane:generate:reference:extractor=github.com/crossplane/upjet/pkg/resource.ExtractParamPath("zone",false) // +kubebuilder:validation:Optional Zone *string `json:"zone,omitempty" tf:"zone,omitempty"` + + // Reference to a Subnet in vpc to populate zone. + // +kubebuilder:validation:Optional + ZoneRef *v1.Reference `json:"zoneRef,omitempty" tf:"-"` + + // Selector for a Subnet in vpc to populate zone. + // +kubebuilder:validation:Optional + ZoneSelector *v1.Selector `json:"zoneSelector,omitempty" tf:"-"` } type MaintenancePolicyInitParameters struct { @@ -400,9 +396,7 @@ type MaintenancePolicyInitParameters struct { // Boolean flag that specifies if master can be upgraded automatically. When omitted, default value is TRUE. AutoUpgrade *bool `json:"autoUpgrade,omitempty" tf:"auto_upgrade,omitempty"` - // (Computed) This structure specifies maintenance window, when update for master is allowed. When omitted, it defaults to any time. - // To specify time of day interval, for all days, one element should be provided, with two fields set, start_time and duration. - // Please see zonal_cluster_resource_name config example. + // (Computed) This structure specifies maintenance window, when update for master is allowed. When omitted, it defaults to any time. To specify time of day interval, for all days, one element should be provided, with two fields set, start_time and duration. Please see zonal_cluster_resource_name config example. MaintenanceWindow []MaintenanceWindowInitParameters `json:"maintenanceWindow,omitempty" tf:"maintenance_window,omitempty"` } @@ -411,9 +405,7 @@ type MaintenancePolicyObservation struct { // Boolean flag that specifies if master can be upgraded automatically. When omitted, default value is TRUE. AutoUpgrade *bool `json:"autoUpgrade,omitempty" tf:"auto_upgrade,omitempty"` - // (Computed) This structure specifies maintenance window, when update for master is allowed. When omitted, it defaults to any time. - // To specify time of day interval, for all days, one element should be provided, with two fields set, start_time and duration. - // Please see zonal_cluster_resource_name config example. + // (Computed) This structure specifies maintenance window, when update for master is allowed. When omitted, it defaults to any time. To specify time of day interval, for all days, one element should be provided, with two fields set, start_time and duration. Please see zonal_cluster_resource_name config example. MaintenanceWindow []MaintenanceWindowObservation `json:"maintenanceWindow,omitempty" tf:"maintenance_window,omitempty"` } @@ -423,9 +415,7 @@ type MaintenancePolicyParameters struct { // +kubebuilder:validation:Optional AutoUpgrade *bool `json:"autoUpgrade" tf:"auto_upgrade,omitempty"` - // (Computed) This structure specifies maintenance window, when update for master is allowed. When omitted, it defaults to any time. - // To specify time of day interval, for all days, one element should be provided, with two fields set, start_time and duration. - // Please see zonal_cluster_resource_name config example. + // (Computed) This structure specifies maintenance window, when update for master is allowed. When omitted, it defaults to any time. To specify time of day interval, for all days, one element should be provided, with two fields set, start_time and duration. Please see zonal_cluster_resource_name config example. // +kubebuilder:validation:Optional MaintenanceWindow []MaintenanceWindowParameters `json:"maintenanceWindow,omitempty" tf:"maintenance_window,omitempty"` } @@ -463,16 +453,10 @@ type MasterInitParameters struct { ExternalV6Address *string `json:"externalV6Address,omitempty" tf:"external_v6_address,omitempty"` - // (Computed) Maintenance policy for Kubernetes master. - // If policy is omitted, automatic revision upgrades of the kubernetes master are enabled and could happen at any time. - // Revision upgrades are performed only within the same minor version, e.g. 1.13. - // Minor version upgrades (e.g. 1.13->1.14) should be performed manually. The structure is documented below. + // (Computed) Maintenance policy for Kubernetes master. If policy is omitted, automatic revision upgrades of the kubernetes master are enabled and could happen at any time. Revision upgrades are performed only within the same minor version, e.g. 1.13. Minor version upgrades (e.g. 1.13->1.14) should be performed manually. The structure is documented below. MaintenancePolicy []MaintenancePolicyInitParameters `json:"maintenancePolicy,omitempty" tf:"maintenance_policy,omitempty"` - // Cluster master's instances locations array (zone and subnet). - // Cannot be used together with zonal or regional. Currently, supports either one, for zonal master, or three instances of master_location. - // Can be updated inplace. When creating regional cluster (three master instances), its region will be evaluated automatically by backend. - // The structure is documented below. + // Cluster master's instances locations array (zone and subnet). Cannot be used together with zonal or regional. Currently, supports either one, for zonal master, or three instances of master_location. Can be updated inplace. When creating regional cluster (three master instances), its region will be evaluated automatically by backend. The structure is documented below. MasterLocation []MasterLocationInitParameters `json:"masterLocation,omitempty" tf:"master_location,omitempty"` // Master Logging options. The structure is documented below. @@ -572,7 +556,17 @@ type MasterLoggingInitParameters struct { KubeApiserverEnabled *bool `json:"kubeApiserverEnabled,omitempty" tf:"kube_apiserver_enabled,omitempty"` // ID of the Yandex Cloud Logging Log group. + // +crossplane:generate:reference:type=github.com/tagesjump/provider-upjet-yc/apis/logging/v1alpha1.Group + // +crossplane:generate:reference:extractor=github.com/crossplane/upjet/pkg/resource.ExtractResourceID() LogGroupID *string `json:"logGroupId,omitempty" tf:"log_group_id,omitempty"` + + // Reference to a Group in logging to populate logGroupId. + // +kubebuilder:validation:Optional + LogGroupIDRef *v1.Reference `json:"logGroupIdRef,omitempty" tf:"-"` + + // Selector for a Group in logging to populate logGroupId. + // +kubebuilder:validation:Optional + LogGroupIDSelector *v1.Selector `json:"logGroupIdSelector,omitempty" tf:"-"` } type MasterLoggingObservation struct { @@ -626,8 +620,18 @@ type MasterLoggingParameters struct { KubeApiserverEnabled *bool `json:"kubeApiserverEnabled,omitempty" tf:"kube_apiserver_enabled,omitempty"` // ID of the Yandex Cloud Logging Log group. + // +crossplane:generate:reference:type=github.com/tagesjump/provider-upjet-yc/apis/logging/v1alpha1.Group + // +crossplane:generate:reference:extractor=github.com/crossplane/upjet/pkg/resource.ExtractResourceID() // +kubebuilder:validation:Optional LogGroupID *string `json:"logGroupId,omitempty" tf:"log_group_id,omitempty"` + + // Reference to a Group in logging to populate logGroupId. + // +kubebuilder:validation:Optional + LogGroupIDRef *v1.Reference `json:"logGroupIdRef,omitempty" tf:"-"` + + // Selector for a Group in logging to populate logGroupId. + // +kubebuilder:validation:Optional + LogGroupIDSelector *v1.Selector `json:"logGroupIdSelector,omitempty" tf:"-"` } type MasterObservation struct { @@ -653,16 +657,10 @@ type MasterObservation struct { // (Computed) Internal endpoint that can be used to connect to the master from cloud networks. InternalV4Endpoint *string `json:"internalV4Endpoint,omitempty" tf:"internal_v4_endpoint,omitempty"` - // (Computed) Maintenance policy for Kubernetes master. - // If policy is omitted, automatic revision upgrades of the kubernetes master are enabled and could happen at any time. - // Revision upgrades are performed only within the same minor version, e.g. 1.13. - // Minor version upgrades (e.g. 1.13->1.14) should be performed manually. The structure is documented below. + // (Computed) Maintenance policy for Kubernetes master. If policy is omitted, automatic revision upgrades of the kubernetes master are enabled and could happen at any time. Revision upgrades are performed only within the same minor version, e.g. 1.13. Minor version upgrades (e.g. 1.13->1.14) should be performed manually. The structure is documented below. MaintenancePolicy []MaintenancePolicyObservation `json:"maintenancePolicy,omitempty" tf:"maintenance_policy,omitempty"` - // Cluster master's instances locations array (zone and subnet). - // Cannot be used together with zonal or regional. Currently, supports either one, for zonal master, or three instances of master_location. - // Can be updated inplace. When creating regional cluster (three master instances), its region will be evaluated automatically by backend. - // The structure is documented below. + // Cluster master's instances locations array (zone and subnet). Cannot be used together with zonal or regional. Currently, supports either one, for zonal master, or three instances of master_location. Can be updated inplace. When creating regional cluster (three master instances), its region will be evaluated automatically by backend. The structure is documented below. MasterLocation []MasterLocationObservation `json:"masterLocation,omitempty" tf:"master_location,omitempty"` // Master Logging options. The structure is documented below. @@ -696,17 +694,11 @@ type MasterParameters struct { // +kubebuilder:validation:Optional ExternalV6Address *string `json:"externalV6Address,omitempty" tf:"external_v6_address,omitempty"` - // (Computed) Maintenance policy for Kubernetes master. - // If policy is omitted, automatic revision upgrades of the kubernetes master are enabled and could happen at any time. - // Revision upgrades are performed only within the same minor version, e.g. 1.13. - // Minor version upgrades (e.g. 1.13->1.14) should be performed manually. The structure is documented below. + // (Computed) Maintenance policy for Kubernetes master. If policy is omitted, automatic revision upgrades of the kubernetes master are enabled and could happen at any time. Revision upgrades are performed only within the same minor version, e.g. 1.13. Minor version upgrades (e.g. 1.13->1.14) should be performed manually. The structure is documented below. // +kubebuilder:validation:Optional MaintenancePolicy []MaintenancePolicyParameters `json:"maintenancePolicy,omitempty" tf:"maintenance_policy,omitempty"` - // Cluster master's instances locations array (zone and subnet). - // Cannot be used together with zonal or regional. Currently, supports either one, for zonal master, or three instances of master_location. - // Can be updated inplace. When creating regional cluster (three master instances), its region will be evaluated automatically by backend. - // The structure is documented below. + // Cluster master's instances locations array (zone and subnet). Cannot be used together with zonal or regional. Currently, supports either one, for zonal master, or three instances of master_location. Can be updated inplace. When creating regional cluster (three master instances), its region will be evaluated automatically by backend. The structure is documented below. // +kubebuilder:validation:Optional MasterLocation []MasterLocationParameters `json:"masterLocation,omitempty" tf:"master_location,omitempty"` @@ -801,18 +793,13 @@ type VersionInfoObservation struct { // Current Kubernetes version, major.minor (e.g. 1.15). CurrentVersion *string `json:"currentVersion,omitempty" tf:"current_version,omitempty"` - // Boolean flag. - // Newer revisions may include Kubernetes patches (e.g 1.15.1 -> 1.15.2) as well - // as some internal component updates - new features or bug fixes in yandex-specific - // components either on the master or nodes. + // Boolean flag. Newer revisions may include Kubernetes patches (e.g 1.15.1 -> 1.15.2) as well as some internal component updates - new features or bug fixes in yandex-specific components either on the master or nodes. NewRevisionAvailable *bool `json:"newRevisionAvailable,omitempty" tf:"new_revision_available,omitempty"` - // Human readable description of the changes to be applied - // when updating to the latest revision. Empty if new_revision_available is false. + // Human readable description of the changes to be applied when updating to the latest revision. Empty if new_revision_available is false. NewRevisionSummary *string `json:"newRevisionSummary,omitempty" tf:"new_revision_summary,omitempty"` - // Boolean flag. The current version is on the deprecation schedule, - // component (master or node group) should be upgraded. + // Boolean flag. The current version is on the deprecation schedule, component (master or node group) should be upgraded. VersionDeprecated *bool `json:"versionDeprecated,omitempty" tf:"version_deprecated,omitempty"` } @@ -834,7 +821,17 @@ type ZonalInitParameters struct { SubnetIDSelector *v1.Selector `json:"subnetIdSelector,omitempty" tf:"-"` // ID of the availability zone. + // +crossplane:generate:reference:type=github.com/tagesjump/provider-upjet-yc/apis/vpc/v1alpha1.Subnet + // +crossplane:generate:reference:extractor=github.com/crossplane/upjet/pkg/resource.ExtractParamPath("zone",false) Zone *string `json:"zone,omitempty" tf:"zone,omitempty"` + + // Reference to a Subnet in vpc to populate zone. + // +kubebuilder:validation:Optional + ZoneRef *v1.Reference `json:"zoneRef,omitempty" tf:"-"` + + // Selector for a Subnet in vpc to populate zone. + // +kubebuilder:validation:Optional + ZoneSelector *v1.Selector `json:"zoneSelector,omitempty" tf:"-"` } type ZonalObservation struct { @@ -862,8 +859,18 @@ type ZonalParameters struct { SubnetIDSelector *v1.Selector `json:"subnetIdSelector,omitempty" tf:"-"` // ID of the availability zone. + // +crossplane:generate:reference:type=github.com/tagesjump/provider-upjet-yc/apis/vpc/v1alpha1.Subnet + // +crossplane:generate:reference:extractor=github.com/crossplane/upjet/pkg/resource.ExtractParamPath("zone",false) // +kubebuilder:validation:Optional Zone *string `json:"zone,omitempty" tf:"zone,omitempty"` + + // Reference to a Subnet in vpc to populate zone. + // +kubebuilder:validation:Optional + ZoneRef *v1.Reference `json:"zoneRef,omitempty" tf:"-"` + + // Selector for a Subnet in vpc to populate zone. + // +kubebuilder:validation:Optional + ZoneSelector *v1.Selector `json:"zoneSelector,omitempty" tf:"-"` } // ClusterSpec defines the desired state of Cluster diff --git a/apis/kubernetes/v1alpha1/zz_generated.deepcopy.go b/apis/kubernetes/v1alpha1/zz_generated.deepcopy.go index 7762bfe..540ca8e 100644 --- a/apis/kubernetes/v1alpha1/zz_generated.deepcopy.go +++ b/apis/kubernetes/v1alpha1/zz_generated.deepcopy.go @@ -1942,6 +1942,16 @@ func (in *LocationInitParameters) DeepCopyInto(out *LocationInitParameters) { *out = new(string) **out = **in } + if in.ZoneRef != nil { + in, out := &in.ZoneRef, &out.ZoneRef + *out = new(v1.Reference) + (*in).DeepCopyInto(*out) + } + if in.ZoneSelector != nil { + in, out := &in.ZoneSelector, &out.ZoneSelector + *out = new(v1.Selector) + (*in).DeepCopyInto(*out) + } } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LocationInitParameters. @@ -2002,6 +2012,16 @@ func (in *LocationParameters) DeepCopyInto(out *LocationParameters) { *out = new(string) **out = **in } + if in.ZoneRef != nil { + in, out := &in.ZoneRef, &out.ZoneRef + *out = new(v1.Reference) + (*in).DeepCopyInto(*out) + } + if in.ZoneSelector != nil { + in, out := &in.ZoneSelector, &out.ZoneSelector + *out = new(v1.Selector) + (*in).DeepCopyInto(*out) + } } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LocationParameters. @@ -2501,6 +2521,16 @@ func (in *MasterLoggingInitParameters) DeepCopyInto(out *MasterLoggingInitParame *out = new(string) **out = **in } + if in.LogGroupIDRef != nil { + in, out := &in.LogGroupIDRef, &out.LogGroupIDRef + *out = new(v1.Reference) + (*in).DeepCopyInto(*out) + } + if in.LogGroupIDSelector != nil { + in, out := &in.LogGroupIDSelector, &out.LogGroupIDSelector + *out = new(v1.Selector) + (*in).DeepCopyInto(*out) + } } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new MasterLoggingInitParameters. @@ -2601,6 +2631,16 @@ func (in *MasterLoggingParameters) DeepCopyInto(out *MasterLoggingParameters) { *out = new(string) **out = **in } + if in.LogGroupIDRef != nil { + in, out := &in.LogGroupIDRef, &out.LogGroupIDRef + *out = new(v1.Reference) + (*in).DeepCopyInto(*out) + } + if in.LogGroupIDSelector != nil { + in, out := &in.LogGroupIDSelector, &out.LogGroupIDSelector + *out = new(v1.Selector) + (*in).DeepCopyInto(*out) + } } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new MasterLoggingParameters. @@ -4285,6 +4325,16 @@ func (in *ZonalInitParameters) DeepCopyInto(out *ZonalInitParameters) { *out = new(string) **out = **in } + if in.ZoneRef != nil { + in, out := &in.ZoneRef, &out.ZoneRef + *out = new(v1.Reference) + (*in).DeepCopyInto(*out) + } + if in.ZoneSelector != nil { + in, out := &in.ZoneSelector, &out.ZoneSelector + *out = new(v1.Selector) + (*in).DeepCopyInto(*out) + } } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ZonalInitParameters. @@ -4345,6 +4395,16 @@ func (in *ZonalParameters) DeepCopyInto(out *ZonalParameters) { *out = new(string) **out = **in } + if in.ZoneRef != nil { + in, out := &in.ZoneRef, &out.ZoneRef + *out = new(v1.Reference) + (*in).DeepCopyInto(*out) + } + if in.ZoneSelector != nil { + in, out := &in.ZoneSelector, &out.ZoneSelector + *out = new(v1.Selector) + (*in).DeepCopyInto(*out) + } } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ZonalParameters. diff --git a/apis/kubernetes/v1alpha1/zz_generated.resolvers.go b/apis/kubernetes/v1alpha1/zz_generated.resolvers.go index aae2eeb..859f691 100644 --- a/apis/kubernetes/v1alpha1/zz_generated.resolvers.go +++ b/apis/kubernetes/v1alpha1/zz_generated.resolvers.go @@ -5,8 +5,10 @@ package v1alpha1 import ( "context" reference "github.com/crossplane/crossplane-runtime/pkg/reference" + resource "github.com/crossplane/upjet/pkg/resource" errors "github.com/pkg/errors" v1alpha11 "github.com/tagesjump/provider-upjet-yc/apis/kms/v1alpha1" + v1alpha13 "github.com/tagesjump/provider-upjet-yc/apis/logging/v1alpha1" v1alpha1 "github.com/tagesjump/provider-upjet-yc/apis/resourcemanager/v1alpha1" v1alpha12 "github.com/tagesjump/provider-upjet-yc/apis/vpc/v1alpha1" client "sigs.k8s.io/controller-runtime/pkg/client" @@ -74,6 +76,26 @@ func (mg *Cluster) ResolveReferences(ctx context.Context, c client.Reader) error } } + for i3 := 0; i3 < len(mg.Spec.ForProvider.Master); i3++ { + for i4 := 0; i4 < len(mg.Spec.ForProvider.Master[i3].MasterLogging); i4++ { + rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ + CurrentValue: reference.FromPtrValue(mg.Spec.ForProvider.Master[i3].MasterLogging[i4].LogGroupID), + Extract: resource.ExtractResourceID(), + Reference: mg.Spec.ForProvider.Master[i3].MasterLogging[i4].LogGroupIDRef, + Selector: mg.Spec.ForProvider.Master[i3].MasterLogging[i4].LogGroupIDSelector, + To: reference.To{ + List: &v1alpha13.GroupList{}, + Managed: &v1alpha13.Group{}, + }, + }) + if err != nil { + return errors.Wrap(err, "mg.Spec.ForProvider.Master[i3].MasterLogging[i4].LogGroupID") + } + mg.Spec.ForProvider.Master[i3].MasterLogging[i4].LogGroupID = reference.ToPtrValue(rsp.ResolvedValue) + mg.Spec.ForProvider.Master[i3].MasterLogging[i4].LogGroupIDRef = rsp.ResolvedReference + + } + } for i3 := 0; i3 < len(mg.Spec.ForProvider.Master); i3++ { for i4 := 0; i4 < len(mg.Spec.ForProvider.Master[i3].Regional); i4++ { for i5 := 0; i5 < len(mg.Spec.ForProvider.Master[i3].Regional[i4].Location); i5++ { @@ -96,6 +118,28 @@ func (mg *Cluster) ResolveReferences(ctx context.Context, c client.Reader) error } } } + for i3 := 0; i3 < len(mg.Spec.ForProvider.Master); i3++ { + for i4 := 0; i4 < len(mg.Spec.ForProvider.Master[i3].Regional); i4++ { + for i5 := 0; i5 < len(mg.Spec.ForProvider.Master[i3].Regional[i4].Location); i5++ { + rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ + CurrentValue: reference.FromPtrValue(mg.Spec.ForProvider.Master[i3].Regional[i4].Location[i5].Zone), + Extract: resource.ExtractParamPath("zone", false), + Reference: mg.Spec.ForProvider.Master[i3].Regional[i4].Location[i5].ZoneRef, + Selector: mg.Spec.ForProvider.Master[i3].Regional[i4].Location[i5].ZoneSelector, + To: reference.To{ + List: &v1alpha12.SubnetList{}, + Managed: &v1alpha12.Subnet{}, + }, + }) + if err != nil { + return errors.Wrap(err, "mg.Spec.ForProvider.Master[i3].Regional[i4].Location[i5].Zone") + } + mg.Spec.ForProvider.Master[i3].Regional[i4].Location[i5].Zone = reference.ToPtrValue(rsp.ResolvedValue) + mg.Spec.ForProvider.Master[i3].Regional[i4].Location[i5].ZoneRef = rsp.ResolvedReference + + } + } + } for i3 := 0; i3 < len(mg.Spec.ForProvider.Master); i3++ { mrsp, err = r.ResolveMultiple(ctx, reference.MultiResolutionRequest{ CurrentValues: reference.FromPtrValues(mg.Spec.ForProvider.Master[i3].SecurityGroupIds), @@ -134,6 +178,26 @@ func (mg *Cluster) ResolveReferences(ctx context.Context, c client.Reader) error } } + for i3 := 0; i3 < len(mg.Spec.ForProvider.Master); i3++ { + for i4 := 0; i4 < len(mg.Spec.ForProvider.Master[i3].Zonal); i4++ { + rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ + CurrentValue: reference.FromPtrValue(mg.Spec.ForProvider.Master[i3].Zonal[i4].Zone), + Extract: resource.ExtractParamPath("zone", false), + Reference: mg.Spec.ForProvider.Master[i3].Zonal[i4].ZoneRef, + Selector: mg.Spec.ForProvider.Master[i3].Zonal[i4].ZoneSelector, + To: reference.To{ + List: &v1alpha12.SubnetList{}, + Managed: &v1alpha12.Subnet{}, + }, + }) + if err != nil { + return errors.Wrap(err, "mg.Spec.ForProvider.Master[i3].Zonal[i4].Zone") + } + mg.Spec.ForProvider.Master[i3].Zonal[i4].Zone = reference.ToPtrValue(rsp.ResolvedValue) + mg.Spec.ForProvider.Master[i3].Zonal[i4].ZoneRef = rsp.ResolvedReference + + } + } rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ CurrentValue: reference.FromPtrValue(mg.Spec.ForProvider.NetworkID), Extract: reference.ExternalName(), @@ -236,6 +300,26 @@ func (mg *Cluster) ResolveReferences(ctx context.Context, c client.Reader) error } } + for i3 := 0; i3 < len(mg.Spec.InitProvider.Master); i3++ { + for i4 := 0; i4 < len(mg.Spec.InitProvider.Master[i3].MasterLogging); i4++ { + rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ + CurrentValue: reference.FromPtrValue(mg.Spec.InitProvider.Master[i3].MasterLogging[i4].LogGroupID), + Extract: resource.ExtractResourceID(), + Reference: mg.Spec.InitProvider.Master[i3].MasterLogging[i4].LogGroupIDRef, + Selector: mg.Spec.InitProvider.Master[i3].MasterLogging[i4].LogGroupIDSelector, + To: reference.To{ + List: &v1alpha13.GroupList{}, + Managed: &v1alpha13.Group{}, + }, + }) + if err != nil { + return errors.Wrap(err, "mg.Spec.InitProvider.Master[i3].MasterLogging[i4].LogGroupID") + } + mg.Spec.InitProvider.Master[i3].MasterLogging[i4].LogGroupID = reference.ToPtrValue(rsp.ResolvedValue) + mg.Spec.InitProvider.Master[i3].MasterLogging[i4].LogGroupIDRef = rsp.ResolvedReference + + } + } for i3 := 0; i3 < len(mg.Spec.InitProvider.Master); i3++ { for i4 := 0; i4 < len(mg.Spec.InitProvider.Master[i3].Regional); i4++ { for i5 := 0; i5 < len(mg.Spec.InitProvider.Master[i3].Regional[i4].Location); i5++ { @@ -258,6 +342,28 @@ func (mg *Cluster) ResolveReferences(ctx context.Context, c client.Reader) error } } } + for i3 := 0; i3 < len(mg.Spec.InitProvider.Master); i3++ { + for i4 := 0; i4 < len(mg.Spec.InitProvider.Master[i3].Regional); i4++ { + for i5 := 0; i5 < len(mg.Spec.InitProvider.Master[i3].Regional[i4].Location); i5++ { + rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ + CurrentValue: reference.FromPtrValue(mg.Spec.InitProvider.Master[i3].Regional[i4].Location[i5].Zone), + Extract: resource.ExtractParamPath("zone", false), + Reference: mg.Spec.InitProvider.Master[i3].Regional[i4].Location[i5].ZoneRef, + Selector: mg.Spec.InitProvider.Master[i3].Regional[i4].Location[i5].ZoneSelector, + To: reference.To{ + List: &v1alpha12.SubnetList{}, + Managed: &v1alpha12.Subnet{}, + }, + }) + if err != nil { + return errors.Wrap(err, "mg.Spec.InitProvider.Master[i3].Regional[i4].Location[i5].Zone") + } + mg.Spec.InitProvider.Master[i3].Regional[i4].Location[i5].Zone = reference.ToPtrValue(rsp.ResolvedValue) + mg.Spec.InitProvider.Master[i3].Regional[i4].Location[i5].ZoneRef = rsp.ResolvedReference + + } + } + } for i3 := 0; i3 < len(mg.Spec.InitProvider.Master); i3++ { mrsp, err = r.ResolveMultiple(ctx, reference.MultiResolutionRequest{ CurrentValues: reference.FromPtrValues(mg.Spec.InitProvider.Master[i3].SecurityGroupIds), @@ -296,6 +402,26 @@ func (mg *Cluster) ResolveReferences(ctx context.Context, c client.Reader) error } } + for i3 := 0; i3 < len(mg.Spec.InitProvider.Master); i3++ { + for i4 := 0; i4 < len(mg.Spec.InitProvider.Master[i3].Zonal); i4++ { + rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ + CurrentValue: reference.FromPtrValue(mg.Spec.InitProvider.Master[i3].Zonal[i4].Zone), + Extract: resource.ExtractParamPath("zone", false), + Reference: mg.Spec.InitProvider.Master[i3].Zonal[i4].ZoneRef, + Selector: mg.Spec.InitProvider.Master[i3].Zonal[i4].ZoneSelector, + To: reference.To{ + List: &v1alpha12.SubnetList{}, + Managed: &v1alpha12.Subnet{}, + }, + }) + if err != nil { + return errors.Wrap(err, "mg.Spec.InitProvider.Master[i3].Zonal[i4].Zone") + } + mg.Spec.InitProvider.Master[i3].Zonal[i4].Zone = reference.ToPtrValue(rsp.ResolvedValue) + mg.Spec.InitProvider.Master[i3].Zonal[i4].ZoneRef = rsp.ResolvedReference + + } + } rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ CurrentValue: reference.FromPtrValue(mg.Spec.InitProvider.NetworkID), Extract: reference.ExternalName(), diff --git a/apis/kubernetes/v1alpha1/zz_nodegroup_types.go b/apis/kubernetes/v1alpha1/zz_nodegroup_types.go index 8585abe..5d8f8ad 100755 --- a/apis/kubernetes/v1alpha1/zz_nodegroup_types.go +++ b/apis/kubernetes/v1alpha1/zz_nodegroup_types.go @@ -381,8 +381,7 @@ type InstanceTemplateInitParameters struct { // Boolean flag, enables NAT for node group compute instances. NAT *bool `json:"nat,omitempty" tf:"nat,omitempty"` - // Name template of the instance. - // In order to be unique it must contain at least one of instance unique placeholders: + // Name template of the instance. In order to be unique it must contain at least one of instance unique placeholders: // {instance.short_id} // {instance.index} // combination of {instance.zone_id} and {instance.index_in_zone} @@ -434,8 +433,7 @@ type InstanceTemplateObservation struct { // Boolean flag, enables NAT for node group compute instances. NAT *bool `json:"nat,omitempty" tf:"nat,omitempty"` - // Name template of the instance. - // In order to be unique it must contain at least one of instance unique placeholders: + // Name template of the instance. In order to be unique it must contain at least one of instance unique placeholders: // {instance.short_id} // {instance.index} // combination of {instance.zone_id} and {instance.index_in_zone} @@ -494,8 +492,7 @@ type InstanceTemplateParameters struct { // +kubebuilder:validation:Optional NAT *bool `json:"nat,omitempty" tf:"nat,omitempty"` - // Name template of the instance. - // In order to be unique it must contain at least one of instance unique placeholders: + // Name template of the instance. In order to be unique it must contain at least one of instance unique placeholders: // {instance.short_id} // {instance.index} // combination of {instance.zone_id} and {instance.index_in_zone} @@ -711,10 +708,7 @@ type NodeGroupInitParameters struct { // +mapType=granular Labels map[string]*string `json:"labels,omitempty" tf:"labels,omitempty"` - // (Computed) Maintenance policy for this Kubernetes node group. - // If policy is omitted, automatic revision upgrades are enabled and could happen at any time. - // Revision upgrades are performed only within the same minor version, e.g. 1.13. - // Minor version upgrades (e.g. 1.13->1.14) should be performed manually. The structure is documented below. + // (Computed) Maintenance policy for this Kubernetes node group. If policy is omitted, automatic revision upgrades are enabled and could happen at any time. Revision upgrades are performed only within the same minor version, e.g. 1.13. Minor version upgrades (e.g. 1.13->1.14) should be performed manually. The structure is documented below. MaintenancePolicy []NodeGroupMaintenancePolicyInitParameters `json:"maintenancePolicy,omitempty" tf:"maintenance_policy,omitempty"` // Name of a specific Kubernetes node group. @@ -805,10 +799,7 @@ type NodeGroupObservation struct { // +mapType=granular Labels map[string]*string `json:"labels,omitempty" tf:"labels,omitempty"` - // (Computed) Maintenance policy for this Kubernetes node group. - // If policy is omitted, automatic revision upgrades are enabled and could happen at any time. - // Revision upgrades are performed only within the same minor version, e.g. 1.13. - // Minor version upgrades (e.g. 1.13->1.14) should be performed manually. The structure is documented below. + // (Computed) Maintenance policy for this Kubernetes node group. If policy is omitted, automatic revision upgrades are enabled and could happen at any time. Revision upgrades are performed only within the same minor version, e.g. 1.13. Minor version upgrades (e.g. 1.13->1.14) should be performed manually. The structure is documented below. MaintenancePolicy []NodeGroupMaintenancePolicyObservation `json:"maintenancePolicy,omitempty" tf:"maintenance_policy,omitempty"` // Name of a specific Kubernetes node group. @@ -874,10 +865,7 @@ type NodeGroupParameters struct { // +mapType=granular Labels map[string]*string `json:"labels,omitempty" tf:"labels,omitempty"` - // (Computed) Maintenance policy for this Kubernetes node group. - // If policy is omitted, automatic revision upgrades are enabled and could happen at any time. - // Revision upgrades are performed only within the same minor version, e.g. 1.13. - // Minor version upgrades (e.g. 1.13->1.14) should be performed manually. The structure is documented below. + // (Computed) Maintenance policy for this Kubernetes node group. If policy is omitted, automatic revision upgrades are enabled and could happen at any time. Revision upgrades are performed only within the same minor version, e.g. 1.13. Minor version upgrades (e.g. 1.13->1.14) should be performed manually. The structure is documented below. // +kubebuilder:validation:Optional MaintenancePolicy []NodeGroupMaintenancePolicyParameters `json:"maintenancePolicy,omitempty" tf:"maintenance_policy,omitempty"` @@ -911,18 +899,13 @@ type NodeGroupVersionInfoObservation struct { // Current Kubernetes version, major.minor (e.g. 1.15). CurrentVersion *string `json:"currentVersion,omitempty" tf:"current_version,omitempty"` - // True/false flag. - // Newer revisions may include Kubernetes patches (e.g 1.15.1 -> 1.15.2) as well - // as some internal component updates - new features or bug fixes in yandex-specific - // components either on the master or nodes. + // True/false flag. Newer revisions may include Kubernetes patches (e.g 1.15.1 -> 1.15.2) as well as some internal component updates - new features or bug fixes in yandex-specific components either on the master or nodes. NewRevisionAvailable *bool `json:"newRevisionAvailable,omitempty" tf:"new_revision_available,omitempty"` - // Human readable description of the changes to be applied - // when updating to the latest revision. Empty if new_revision_available is false. + // Human readable description of the changes to be applied when updating to the latest revision. Empty if new_revision_available is false. NewRevisionSummary *string `json:"newRevisionSummary,omitempty" tf:"new_revision_summary,omitempty"` - // True/false flag. The current version is on the deprecation schedule, - // component (master or node group) should be upgraded. + // True/false flag. The current version is on the deprecation schedule, component (master or node group) should be upgraded. VersionDeprecated *bool `json:"versionDeprecated,omitempty" tf:"version_deprecated,omitempty"` } diff --git a/apis/lb/v1alpha1/zz_networkloadbalancer_types.go b/apis/lb/v1alpha1/zz_networkloadbalancer_types.go index df79f12..5941f0c 100755 --- a/apis/lb/v1alpha1/zz_networkloadbalancer_types.go +++ b/apis/lb/v1alpha1/zz_networkloadbalancer_types.go @@ -327,12 +327,10 @@ type NetworkLoadBalancerInitParameters struct { // Flag that protects the network load balancer from accidental deletion. DeletionProtection *bool `json:"deletionProtection,omitempty" tf:"deletion_protection,omitempty"` - // An optional description of the network load balancer. Provide this property when - // you create the resource. + // An optional description of the network load balancer. Provide this property when you create the resource. Description *string `json:"description,omitempty" tf:"description,omitempty"` - // The ID of the folder to which the resource belongs. - // If omitted, the provider folder is used. + // The ID of the folder to which the resource belongs. If omitted, the provider folder is used. // +crossplane:generate:reference:type=github.com/tagesjump/provider-upjet-yc/apis/resourcemanager/v1alpha1.Folder FolderID *string `json:"folderId,omitempty" tf:"folder_id,omitempty"` @@ -354,8 +352,7 @@ type NetworkLoadBalancerInitParameters struct { // Name of the network load balancer. Provided by the client when the network load balancer is created. Name *string `json:"name,omitempty" tf:"name,omitempty"` - // ID of the availability zone where the network load balancer resides. - // If omitted, default region is being used. + // ID of the availability zone where the network load balancer resides. If omitted, default region is being used. RegionID *string `json:"regionId,omitempty" tf:"region_id,omitempty"` // Type of the network load balancer. Must be one of 'external' or 'internal'. The default is 'external'. @@ -373,12 +370,10 @@ type NetworkLoadBalancerObservation struct { // Flag that protects the network load balancer from accidental deletion. DeletionProtection *bool `json:"deletionProtection,omitempty" tf:"deletion_protection,omitempty"` - // An optional description of the network load balancer. Provide this property when - // you create the resource. + // An optional description of the network load balancer. Provide this property when you create the resource. Description *string `json:"description,omitempty" tf:"description,omitempty"` - // The ID of the folder to which the resource belongs. - // If omitted, the provider folder is used. + // The ID of the folder to which the resource belongs. If omitted, the provider folder is used. FolderID *string `json:"folderId,omitempty" tf:"folder_id,omitempty"` // The ID of the network load balancer. @@ -394,8 +389,7 @@ type NetworkLoadBalancerObservation struct { // Name of the network load balancer. Provided by the client when the network load balancer is created. Name *string `json:"name,omitempty" tf:"name,omitempty"` - // ID of the availability zone where the network load balancer resides. - // If omitted, default region is being used. + // ID of the availability zone where the network load balancer resides. If omitted, default region is being used. RegionID *string `json:"regionId,omitempty" tf:"region_id,omitempty"` // Type of the network load balancer. Must be one of 'external' or 'internal'. The default is 'external'. @@ -412,13 +406,11 @@ type NetworkLoadBalancerParameters struct { // +kubebuilder:validation:Optional DeletionProtection *bool `json:"deletionProtection,omitempty" tf:"deletion_protection,omitempty"` - // An optional description of the network load balancer. Provide this property when - // you create the resource. + // An optional description of the network load balancer. Provide this property when you create the resource. // +kubebuilder:validation:Optional Description *string `json:"description,omitempty" tf:"description,omitempty"` - // The ID of the folder to which the resource belongs. - // If omitted, the provider folder is used. + // The ID of the folder to which the resource belongs. If omitted, the provider folder is used. // +crossplane:generate:reference:type=github.com/tagesjump/provider-upjet-yc/apis/resourcemanager/v1alpha1.Folder // +kubebuilder:validation:Optional FolderID *string `json:"folderId,omitempty" tf:"folder_id,omitempty"` @@ -444,8 +436,7 @@ type NetworkLoadBalancerParameters struct { // +kubebuilder:validation:Optional Name *string `json:"name,omitempty" tf:"name,omitempty"` - // ID of the availability zone where the network load balancer resides. - // If omitted, default region is being used. + // ID of the availability zone where the network load balancer resides. If omitted, default region is being used. // +kubebuilder:validation:Optional RegionID *string `json:"regionId,omitempty" tf:"region_id,omitempty"` diff --git a/apis/lb/v1alpha1/zz_targetgroup_types.go b/apis/lb/v1alpha1/zz_targetgroup_types.go index c1167a7..6c7dab6 100755 --- a/apis/lb/v1alpha1/zz_targetgroup_types.go +++ b/apis/lb/v1alpha1/zz_targetgroup_types.go @@ -11,12 +11,10 @@ import ( type TargetGroupInitParameters struct { - // An optional description of the target group. Provide this property when - // you create the resource. + // An optional description of the target group. Provide this property when you create the resource. Description *string `json:"description,omitempty" tf:"description,omitempty"` - // The ID of the folder to which the resource belongs. - // If omitted, the provider folder is used. + // The ID of the folder to which the resource belongs. If omitted, the provider folder is used. // +crossplane:generate:reference:type=github.com/tagesjump/provider-upjet-yc/apis/resourcemanager/v1alpha1.Folder FolderID *string `json:"folderId,omitempty" tf:"folder_id,omitempty"` @@ -35,8 +33,7 @@ type TargetGroupInitParameters struct { // Name of the target group. Provided by the client when the target group is created. Name *string `json:"name,omitempty" tf:"name,omitempty"` - // ID of the availability zone where the target group resides. - // If omitted, default region is being used. + // ID of the availability zone where the target group resides. If omitted, default region is being used. RegionID *string `json:"regionId,omitempty" tf:"region_id,omitempty"` // A Target resource. The structure is documented below. @@ -48,12 +45,10 @@ type TargetGroupObservation struct { // The target group creation timestamp. CreatedAt *string `json:"createdAt,omitempty" tf:"created_at,omitempty"` - // An optional description of the target group. Provide this property when - // you create the resource. + // An optional description of the target group. Provide this property when you create the resource. Description *string `json:"description,omitempty" tf:"description,omitempty"` - // The ID of the folder to which the resource belongs. - // If omitted, the provider folder is used. + // The ID of the folder to which the resource belongs. If omitted, the provider folder is used. FolderID *string `json:"folderId,omitempty" tf:"folder_id,omitempty"` // The ID of the target group. @@ -66,8 +61,7 @@ type TargetGroupObservation struct { // Name of the target group. Provided by the client when the target group is created. Name *string `json:"name,omitempty" tf:"name,omitempty"` - // ID of the availability zone where the target group resides. - // If omitted, default region is being used. + // ID of the availability zone where the target group resides. If omitted, default region is being used. RegionID *string `json:"regionId,omitempty" tf:"region_id,omitempty"` // A Target resource. The structure is documented below. @@ -76,13 +70,11 @@ type TargetGroupObservation struct { type TargetGroupParameters struct { - // An optional description of the target group. Provide this property when - // you create the resource. + // An optional description of the target group. Provide this property when you create the resource. // +kubebuilder:validation:Optional Description *string `json:"description,omitempty" tf:"description,omitempty"` - // The ID of the folder to which the resource belongs. - // If omitted, the provider folder is used. + // The ID of the folder to which the resource belongs. If omitted, the provider folder is used. // +crossplane:generate:reference:type=github.com/tagesjump/provider-upjet-yc/apis/resourcemanager/v1alpha1.Folder // +kubebuilder:validation:Optional FolderID *string `json:"folderId,omitempty" tf:"folder_id,omitempty"` @@ -104,8 +96,7 @@ type TargetGroupParameters struct { // +kubebuilder:validation:Optional Name *string `json:"name,omitempty" tf:"name,omitempty"` - // ID of the availability zone where the target group resides. - // If omitted, default region is being used. + // ID of the availability zone where the target group resides. If omitted, default region is being used. // +kubebuilder:validation:Optional RegionID *string `json:"regionId,omitempty" tf:"region_id,omitempty"` @@ -119,8 +110,7 @@ type TargetInitParameters struct { // IP address of the target. Address *string `json:"address,omitempty" tf:"address,omitempty"` - // ID of the subnet that targets are connected to. - // All targets in the target group must be connected to the same subnet within a single availability zone. + // ID of the subnet that targets are connected to. All targets in the target group must be connected to the same subnet within a single availability zone. // +crossplane:generate:reference:type=github.com/tagesjump/provider-upjet-yc/apis/vpc/v1alpha1.Subnet SubnetID *string `json:"subnetId,omitempty" tf:"subnet_id,omitempty"` @@ -138,8 +128,7 @@ type TargetObservation struct { // IP address of the target. Address *string `json:"address,omitempty" tf:"address,omitempty"` - // ID of the subnet that targets are connected to. - // All targets in the target group must be connected to the same subnet within a single availability zone. + // ID of the subnet that targets are connected to. All targets in the target group must be connected to the same subnet within a single availability zone. SubnetID *string `json:"subnetId,omitempty" tf:"subnet_id,omitempty"` } @@ -149,8 +138,7 @@ type TargetParameters struct { // +kubebuilder:validation:Optional Address *string `json:"address" tf:"address,omitempty"` - // ID of the subnet that targets are connected to. - // All targets in the target group must be connected to the same subnet within a single availability zone. + // ID of the subnet that targets are connected to. All targets in the target group must be connected to the same subnet within a single availability zone. // +crossplane:generate:reference:type=github.com/tagesjump/provider-upjet-yc/apis/vpc/v1alpha1.Subnet // +kubebuilder:validation:Optional SubnetID *string `json:"subnetId,omitempty" tf:"subnet_id,omitempty"` diff --git a/apis/loadtesting/v1alpha1/zz_agent_types.go b/apis/loadtesting/v1alpha1/zz_agent_types.go index b68aa67..2a89284 100755 --- a/apis/loadtesting/v1alpha1/zz_agent_types.go +++ b/apis/loadtesting/v1alpha1/zz_agent_types.go @@ -169,8 +169,7 @@ type ComputeInstanceInitParameters struct { // +kubebuilder:validation:Optional ServiceAccountIDSelector *v1.Selector `json:"serviceAccountIdSelector,omitempty" tf:"-"` - // The availability zone where the virtual machine will be created. If it is not provided, - // the default provider folder is used. + // The availability zone where the virtual machine will be created. If it is not provided, the default provider folder is used. ZoneID *string `json:"zoneId,omitempty" tf:"zone_id,omitempty"` } @@ -179,6 +178,10 @@ type ComputeInstanceObservation struct { // Boot disk specifications for the instance. The structure is documented below. BootDisk []BootDiskObservation `json:"bootDisk,omitempty" tf:"boot_disk,omitempty"` + // (Computed) The set of labels key:value pairs assigned to this instance. This includes user custom labels and predefined items created by Yandex Cloud Load Testing. + // +mapType=granular + ComputedLabels map[string]*string `json:"computedLabels,omitempty" tf:"computed_labels,omitempty"` + // (Computed) The set of metadata key:value pairs assigned to this instance. This includes user custom metadata, and predefined items created by Yandex Cloud Load Testing. // +mapType=granular ComputedMetadata map[string]*string `json:"computedMetadata,omitempty" tf:"computed_metadata,omitempty"` @@ -203,8 +206,7 @@ type ComputeInstanceObservation struct { // The ID of the service account authorized for this load testing agent. Service account should have loadtesting.generatorClient or loadtesting.externalAgent role in the folder. ServiceAccountID *string `json:"serviceAccountId,omitempty" tf:"service_account_id,omitempty"` - // The availability zone where the virtual machine will be created. If it is not provided, - // the default provider folder is used. + // The availability zone where the virtual machine will be created. If it is not provided, the default provider folder is used. ZoneID *string `json:"zoneId,omitempty" tf:"zone_id,omitempty"` } @@ -249,8 +251,7 @@ type ComputeInstanceParameters struct { // +kubebuilder:validation:Optional ServiceAccountIDSelector *v1.Selector `json:"serviceAccountIdSelector,omitempty" tf:"-"` - // The availability zone where the virtual machine will be created. If it is not provided, - // the default provider folder is used. + // The availability zone where the virtual machine will be created. If it is not provided, the default provider folder is used. // +kubebuilder:validation:Optional ZoneID *string `json:"zoneId,omitempty" tf:"zone_id,omitempty"` } diff --git a/apis/loadtesting/v1alpha1/zz_generated.deepcopy.go b/apis/loadtesting/v1alpha1/zz_generated.deepcopy.go index cb2dc80..b169244 100644 --- a/apis/loadtesting/v1alpha1/zz_generated.deepcopy.go +++ b/apis/loadtesting/v1alpha1/zz_generated.deepcopy.go @@ -496,6 +496,22 @@ func (in *ComputeInstanceObservation) DeepCopyInto(out *ComputeInstanceObservati (*in)[i].DeepCopyInto(&(*out)[i]) } } + if in.ComputedLabels != nil { + in, out := &in.ComputedLabels, &out.ComputedLabels + *out = make(map[string]*string, len(*in)) + for key, val := range *in { + var outVal *string + if val == nil { + (*out)[key] = nil + } else { + inVal := (*in)[key] + in, out := &inVal, &outVal + *out = new(string) + **out = **in + } + (*out)[key] = outVal + } + } if in.ComputedMetadata != nil { in, out := &in.ComputedMetadata, &out.ComputedMetadata *out = make(map[string]*string, len(*in)) diff --git a/apis/lockbox/v1alpha1/zz_generated.deepcopy.go b/apis/lockbox/v1alpha1/zz_generated.deepcopy.go index 3485443..c4de331 100644 --- a/apis/lockbox/v1alpha1/zz_generated.deepcopy.go +++ b/apis/lockbox/v1alpha1/zz_generated.deepcopy.go @@ -241,6 +241,171 @@ func (in *EntriesParameters) DeepCopy() *EntriesParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *PasswordPayloadSpecificationInitParameters) DeepCopyInto(out *PasswordPayloadSpecificationInitParameters) { + *out = *in + if in.ExcludedPunctuation != nil { + in, out := &in.ExcludedPunctuation, &out.ExcludedPunctuation + *out = new(string) + **out = **in + } + if in.IncludeDigits != nil { + in, out := &in.IncludeDigits, &out.IncludeDigits + *out = new(bool) + **out = **in + } + if in.IncludeLowercase != nil { + in, out := &in.IncludeLowercase, &out.IncludeLowercase + *out = new(bool) + **out = **in + } + if in.IncludePunctuation != nil { + in, out := &in.IncludePunctuation, &out.IncludePunctuation + *out = new(bool) + **out = **in + } + if in.IncludeUppercase != nil { + in, out := &in.IncludeUppercase, &out.IncludeUppercase + *out = new(bool) + **out = **in + } + if in.IncludedPunctuation != nil { + in, out := &in.IncludedPunctuation, &out.IncludedPunctuation + *out = new(string) + **out = **in + } + if in.Length != nil { + in, out := &in.Length, &out.Length + *out = new(float64) + **out = **in + } + if in.PasswordKey != nil { + in, out := &in.PasswordKey, &out.PasswordKey + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PasswordPayloadSpecificationInitParameters. +func (in *PasswordPayloadSpecificationInitParameters) DeepCopy() *PasswordPayloadSpecificationInitParameters { + if in == nil { + return nil + } + out := new(PasswordPayloadSpecificationInitParameters) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *PasswordPayloadSpecificationObservation) DeepCopyInto(out *PasswordPayloadSpecificationObservation) { + *out = *in + if in.ExcludedPunctuation != nil { + in, out := &in.ExcludedPunctuation, &out.ExcludedPunctuation + *out = new(string) + **out = **in + } + if in.IncludeDigits != nil { + in, out := &in.IncludeDigits, &out.IncludeDigits + *out = new(bool) + **out = **in + } + if in.IncludeLowercase != nil { + in, out := &in.IncludeLowercase, &out.IncludeLowercase + *out = new(bool) + **out = **in + } + if in.IncludePunctuation != nil { + in, out := &in.IncludePunctuation, &out.IncludePunctuation + *out = new(bool) + **out = **in + } + if in.IncludeUppercase != nil { + in, out := &in.IncludeUppercase, &out.IncludeUppercase + *out = new(bool) + **out = **in + } + if in.IncludedPunctuation != nil { + in, out := &in.IncludedPunctuation, &out.IncludedPunctuation + *out = new(string) + **out = **in + } + if in.Length != nil { + in, out := &in.Length, &out.Length + *out = new(float64) + **out = **in + } + if in.PasswordKey != nil { + in, out := &in.PasswordKey, &out.PasswordKey + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PasswordPayloadSpecificationObservation. +func (in *PasswordPayloadSpecificationObservation) DeepCopy() *PasswordPayloadSpecificationObservation { + if in == nil { + return nil + } + out := new(PasswordPayloadSpecificationObservation) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *PasswordPayloadSpecificationParameters) DeepCopyInto(out *PasswordPayloadSpecificationParameters) { + *out = *in + if in.ExcludedPunctuation != nil { + in, out := &in.ExcludedPunctuation, &out.ExcludedPunctuation + *out = new(string) + **out = **in + } + if in.IncludeDigits != nil { + in, out := &in.IncludeDigits, &out.IncludeDigits + *out = new(bool) + **out = **in + } + if in.IncludeLowercase != nil { + in, out := &in.IncludeLowercase, &out.IncludeLowercase + *out = new(bool) + **out = **in + } + if in.IncludePunctuation != nil { + in, out := &in.IncludePunctuation, &out.IncludePunctuation + *out = new(bool) + **out = **in + } + if in.IncludeUppercase != nil { + in, out := &in.IncludeUppercase, &out.IncludeUppercase + *out = new(bool) + **out = **in + } + if in.IncludedPunctuation != nil { + in, out := &in.IncludedPunctuation, &out.IncludedPunctuation + *out = new(string) + **out = **in + } + if in.Length != nil { + in, out := &in.Length, &out.Length + *out = new(float64) + **out = **in + } + if in.PasswordKey != nil { + in, out := &in.PasswordKey, &out.PasswordKey + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PasswordPayloadSpecificationParameters. +func (in *PasswordPayloadSpecificationParameters) DeepCopy() *PasswordPayloadSpecificationParameters { + if in == nil { + return nil + } + out := new(PasswordPayloadSpecificationParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *Secret) DeepCopyInto(out *Secret) { *out = *in @@ -598,6 +763,13 @@ func (in *SecretInitParameters) DeepCopyInto(out *SecretInitParameters) { *out = new(string) **out = **in } + if in.PasswordPayloadSpecification != nil { + in, out := &in.PasswordPayloadSpecification, &out.PasswordPayloadSpecification + *out = make([]PasswordPayloadSpecificationInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SecretInitParameters. @@ -696,6 +868,13 @@ func (in *SecretObservation) DeepCopyInto(out *SecretObservation) { *out = new(string) **out = **in } + if in.PasswordPayloadSpecification != nil { + in, out := &in.PasswordPayloadSpecification, &out.PasswordPayloadSpecification + *out = make([]PasswordPayloadSpecificationObservation, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } if in.Status != nil { in, out := &in.Status, &out.Status *out = new(string) @@ -777,6 +956,13 @@ func (in *SecretParameters) DeepCopyInto(out *SecretParameters) { *out = new(string) **out = **in } + if in.PasswordPayloadSpecification != nil { + in, out := &in.PasswordPayloadSpecification, &out.PasswordPayloadSpecification + *out = make([]PasswordPayloadSpecificationParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SecretParameters. diff --git a/apis/lockbox/v1alpha1/zz_secret_types.go b/apis/lockbox/v1alpha1/zz_secret_types.go index 76f7acb..c895002 100755 --- a/apis/lockbox/v1alpha1/zz_secret_types.go +++ b/apis/lockbox/v1alpha1/zz_secret_types.go @@ -9,6 +9,95 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type PasswordPayloadSpecificationInitParameters struct { + + // String of punctuation characters to exclude from the default. Requires include_punctuation = true. Default is empty. + ExcludedPunctuation *string `json:"excludedPunctuation,omitempty" tf:"excluded_punctuation,omitempty"` + + // Use digits in the generated password. Default is true. + IncludeDigits *bool `json:"includeDigits,omitempty" tf:"include_digits,omitempty"` + + // Use lowercase letters in the generated password. Default is true. + IncludeLowercase *bool `json:"includeLowercase,omitempty" tf:"include_lowercase,omitempty"` + + // Use punctuations (!"#$%&'()*+,-./:;<=>?@[\]^_{|}~`) in the generated password. Default is true. + IncludePunctuation *bool `json:"includePunctuation,omitempty" tf:"include_punctuation,omitempty"` + + // Use capital letters in the generated password. Default is true. + IncludeUppercase *bool `json:"includeUppercase,omitempty" tf:"include_uppercase,omitempty"` + + // String of specific punctuation characters to use. Requires include_punctuation = true. Default is empty. + IncludedPunctuation *string `json:"includedPunctuation,omitempty" tf:"included_punctuation,omitempty"` + + // Length of generated password. Default is 36. + Length *float64 `json:"length,omitempty" tf:"length,omitempty"` + + // The key with which the generated password will be placed in the secret version. + PasswordKey *string `json:"passwordKey,omitempty" tf:"password_key,omitempty"` +} + +type PasswordPayloadSpecificationObservation struct { + + // String of punctuation characters to exclude from the default. Requires include_punctuation = true. Default is empty. + ExcludedPunctuation *string `json:"excludedPunctuation,omitempty" tf:"excluded_punctuation,omitempty"` + + // Use digits in the generated password. Default is true. + IncludeDigits *bool `json:"includeDigits,omitempty" tf:"include_digits,omitempty"` + + // Use lowercase letters in the generated password. Default is true. + IncludeLowercase *bool `json:"includeLowercase,omitempty" tf:"include_lowercase,omitempty"` + + // Use punctuations (!"#$%&'()*+,-./:;<=>?@[\]^_{|}~`) in the generated password. Default is true. + IncludePunctuation *bool `json:"includePunctuation,omitempty" tf:"include_punctuation,omitempty"` + + // Use capital letters in the generated password. Default is true. + IncludeUppercase *bool `json:"includeUppercase,omitempty" tf:"include_uppercase,omitempty"` + + // String of specific punctuation characters to use. Requires include_punctuation = true. Default is empty. + IncludedPunctuation *string `json:"includedPunctuation,omitempty" tf:"included_punctuation,omitempty"` + + // Length of generated password. Default is 36. + Length *float64 `json:"length,omitempty" tf:"length,omitempty"` + + // The key with which the generated password will be placed in the secret version. + PasswordKey *string `json:"passwordKey,omitempty" tf:"password_key,omitempty"` +} + +type PasswordPayloadSpecificationParameters struct { + + // String of punctuation characters to exclude from the default. Requires include_punctuation = true. Default is empty. + // +kubebuilder:validation:Optional + ExcludedPunctuation *string `json:"excludedPunctuation,omitempty" tf:"excluded_punctuation,omitempty"` + + // Use digits in the generated password. Default is true. + // +kubebuilder:validation:Optional + IncludeDigits *bool `json:"includeDigits,omitempty" tf:"include_digits,omitempty"` + + // Use lowercase letters in the generated password. Default is true. + // +kubebuilder:validation:Optional + IncludeLowercase *bool `json:"includeLowercase,omitempty" tf:"include_lowercase,omitempty"` + + // Use punctuations (!"#$%&'()*+,-./:;<=>?@[\]^_{|}~`) in the generated password. Default is true. + // +kubebuilder:validation:Optional + IncludePunctuation *bool `json:"includePunctuation,omitempty" tf:"include_punctuation,omitempty"` + + // Use capital letters in the generated password. Default is true. + // +kubebuilder:validation:Optional + IncludeUppercase *bool `json:"includeUppercase,omitempty" tf:"include_uppercase,omitempty"` + + // String of specific punctuation characters to use. Requires include_punctuation = true. Default is empty. + // +kubebuilder:validation:Optional + IncludedPunctuation *string `json:"includedPunctuation,omitempty" tf:"included_punctuation,omitempty"` + + // Length of generated password. Default is 36. + // +kubebuilder:validation:Optional + Length *float64 `json:"length,omitempty" tf:"length,omitempty"` + + // The key with which the generated password will be placed in the secret version. + // +kubebuilder:validation:Optional + PasswordKey *string `json:"passwordKey" tf:"password_key,omitempty"` +} + type SecretInitParameters struct { // Whether the Yandex Cloud Lockbox secret is protected from deletion. @@ -17,8 +106,7 @@ type SecretInitParameters struct { // A description for the Yandex Cloud Lockbox secret. Description *string `json:"description,omitempty" tf:"description,omitempty"` - // ID of the folder that the Yandex Cloud Lockbox secret belongs to. - // It will be deduced from provider configuration if not set explicitly. + // ID of the folder that the Yandex Cloud Lockbox secret belongs to. It will be deduced from provider configuration if not set explicitly. // +crossplane:generate:reference:type=github.com/tagesjump/provider-upjet-yc/apis/resourcemanager/v1alpha1.Folder FolderID *string `json:"folderId,omitempty" tf:"folder_id,omitempty"` @@ -48,6 +136,9 @@ type SecretInitParameters struct { // Name for the Yandex Cloud Lockbox secret. Name *string `json:"name,omitempty" tf:"name,omitempty"` + + // Payload specification for password generation. + PasswordPayloadSpecification []PasswordPayloadSpecificationInitParameters `json:"passwordPayloadSpecification,omitempty" tf:"password_payload_specification,omitempty"` } type SecretObservation struct { @@ -61,8 +152,7 @@ type SecretObservation struct { // A description for the Yandex Cloud Lockbox secret. Description *string `json:"description,omitempty" tf:"description,omitempty"` - // ID of the folder that the Yandex Cloud Lockbox secret belongs to. - // It will be deduced from provider configuration if not set explicitly. + // ID of the folder that the Yandex Cloud Lockbox secret belongs to. It will be deduced from provider configuration if not set explicitly. FolderID *string `json:"folderId,omitempty" tf:"folder_id,omitempty"` ID *string `json:"id,omitempty" tf:"id,omitempty"` @@ -77,6 +167,9 @@ type SecretObservation struct { // Name for the Yandex Cloud Lockbox secret. Name *string `json:"name,omitempty" tf:"name,omitempty"` + // Payload specification for password generation. + PasswordPayloadSpecification []PasswordPayloadSpecificationObservation `json:"passwordPayloadSpecification,omitempty" tf:"password_payload_specification,omitempty"` + // The Yandex Cloud Lockbox secret status. Status *string `json:"status,omitempty" tf:"status,omitempty"` } @@ -91,8 +184,7 @@ type SecretParameters struct { // +kubebuilder:validation:Optional Description *string `json:"description,omitempty" tf:"description,omitempty"` - // ID of the folder that the Yandex Cloud Lockbox secret belongs to. - // It will be deduced from provider configuration if not set explicitly. + // ID of the folder that the Yandex Cloud Lockbox secret belongs to. It will be deduced from provider configuration if not set explicitly. // +crossplane:generate:reference:type=github.com/tagesjump/provider-upjet-yc/apis/resourcemanager/v1alpha1.Folder // +kubebuilder:validation:Optional FolderID *string `json:"folderId,omitempty" tf:"folder_id,omitempty"` @@ -126,6 +218,10 @@ type SecretParameters struct { // Name for the Yandex Cloud Lockbox secret. // +kubebuilder:validation:Optional Name *string `json:"name,omitempty" tf:"name,omitempty"` + + // Payload specification for password generation. + // +kubebuilder:validation:Optional + PasswordPayloadSpecification []PasswordPayloadSpecificationParameters `json:"passwordPayloadSpecification,omitempty" tf:"password_payload_specification,omitempty"` } // SecretSpec defines the desired state of Secret diff --git a/apis/lockbox/v1alpha1/zz_secretiambinding_types.go b/apis/lockbox/v1alpha1/zz_secretiambinding_types.go index 1c96c82..c8d92b8 100755 --- a/apis/lockbox/v1alpha1/zz_secretiambinding_types.go +++ b/apis/lockbox/v1alpha1/zz_secretiambinding_types.go @@ -11,8 +11,7 @@ import ( type SecretIAMBindingInitParameters struct { - // Identities that will be granted the privilege in role. - // Each entry can have one of the following values: + // Identities that will be granted the privilege in role. Each entry can have one of the following values: // +crossplane:generate:reference:type=github.com/tagesjump/provider-upjet-yc/apis/iam/v1alpha1.ServiceAccount // +crossplane:generate:reference:extractor=github.com/tagesjump/provider-upjet-yc/config/iam.ServiceAccountRefValue() // +crossplane:generate:reference:refFieldName=ServiceAccountRef @@ -49,8 +48,7 @@ type SecretIAMBindingInitParameters struct { type SecretIAMBindingObservation struct { ID *string `json:"id,omitempty" tf:"id,omitempty"` - // Identities that will be granted the privilege in role. - // Each entry can have one of the following values: + // Identities that will be granted the privilege in role. Each entry can have one of the following values: // +listType=set Members []*string `json:"members,omitempty" tf:"members,omitempty"` @@ -65,8 +63,7 @@ type SecretIAMBindingObservation struct { type SecretIAMBindingParameters struct { - // Identities that will be granted the privilege in role. - // Each entry can have one of the following values: + // Identities that will be granted the privilege in role. Each entry can have one of the following values: // +crossplane:generate:reference:type=github.com/tagesjump/provider-upjet-yc/apis/iam/v1alpha1.ServiceAccount // +crossplane:generate:reference:extractor=github.com/tagesjump/provider-upjet-yc/config/iam.ServiceAccountRefValue() // +crossplane:generate:reference:refFieldName=ServiceAccountRef diff --git a/apis/lockbox/v1alpha1/zz_secretversion_types.go b/apis/lockbox/v1alpha1/zz_secretversion_types.go index 01eec5c..d7cde73 100755 --- a/apis/lockbox/v1alpha1/zz_secretversion_types.go +++ b/apis/lockbox/v1alpha1/zz_secretversion_types.go @@ -92,7 +92,7 @@ type SecretVersionInitParameters struct { // The Yandex Cloud Lockbox secret version description. Description *string `json:"description,omitempty" tf:"description,omitempty"` - // List of entries in the Yandex Cloud Lockbox secret version. + // List of entries in the Yandex Cloud Lockbox secret version. Must be omitted for secrets with a payload specification. Entries []EntriesInitParameters `json:"entries,omitempty" tf:"entries,omitempty"` // The Yandex Cloud Lockbox secret ID where to add the version. @@ -113,7 +113,7 @@ type SecretVersionObservation struct { // The Yandex Cloud Lockbox secret version description. Description *string `json:"description,omitempty" tf:"description,omitempty"` - // List of entries in the Yandex Cloud Lockbox secret version. + // List of entries in the Yandex Cloud Lockbox secret version. Must be omitted for secrets with a payload specification. Entries []EntriesObservation `json:"entries,omitempty" tf:"entries,omitempty"` ID *string `json:"id,omitempty" tf:"id,omitempty"` @@ -128,7 +128,7 @@ type SecretVersionParameters struct { // +kubebuilder:validation:Optional Description *string `json:"description,omitempty" tf:"description,omitempty"` - // List of entries in the Yandex Cloud Lockbox secret version. + // List of entries in the Yandex Cloud Lockbox secret version. Must be omitted for secrets with a payload specification. // +kubebuilder:validation:Optional Entries []EntriesParameters `json:"entries,omitempty" tf:"entries,omitempty"` @@ -182,9 +182,8 @@ type SecretVersionStatus struct { type SecretVersion struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.entries) || (has(self.initProvider) && has(self.initProvider.entries))",message="spec.forProvider.entries is a required parameter" - Spec SecretVersionSpec `json:"spec"` - Status SecretVersionStatus `json:"status,omitempty"` + Spec SecretVersionSpec `json:"spec"` + Status SecretVersionStatus `json:"status,omitempty"` } // +kubebuilder:object:root=true diff --git a/apis/logging/v1alpha1/zz_group_types.go b/apis/logging/v1alpha1/zz_group_types.go index 8de5070..06920ab 100755 --- a/apis/logging/v1alpha1/zz_group_types.go +++ b/apis/logging/v1alpha1/zz_group_types.go @@ -15,8 +15,7 @@ type GroupInitParameters struct { // A description for the Yandex Cloud Logging group. Description *string `json:"description,omitempty" tf:"description,omitempty"` - // ID of the folder that the Yandex Cloud Logging group belongs to. - // It will be deduced from provider configuration if not set explicitly. + // ID of the folder that the Yandex Cloud Logging group belongs to. It will be deduced from provider configuration if not set explicitly. // +crossplane:generate:reference:type=github.com/tagesjump/provider-upjet-yc/apis/resourcemanager/v1alpha1.Folder FolderID *string `json:"folderId,omitempty" tf:"folder_id,omitempty"` @@ -52,8 +51,7 @@ type GroupObservation struct { // A description for the Yandex Cloud Logging group. Description *string `json:"description,omitempty" tf:"description,omitempty"` - // ID of the folder that the Yandex Cloud Logging group belongs to. - // It will be deduced from provider configuration if not set explicitly. + // ID of the folder that the Yandex Cloud Logging group belongs to. It will be deduced from provider configuration if not set explicitly. FolderID *string `json:"folderId,omitempty" tf:"folder_id,omitempty"` // The Yandex Cloud Logging group ID. @@ -82,8 +80,7 @@ type GroupParameters struct { // +kubebuilder:validation:Optional Description *string `json:"description,omitempty" tf:"description,omitempty"` - // ID of the folder that the Yandex Cloud Logging group belongs to. - // It will be deduced from provider configuration if not set explicitly. + // ID of the folder that the Yandex Cloud Logging group belongs to. It will be deduced from provider configuration if not set explicitly. // +crossplane:generate:reference:type=github.com/tagesjump/provider-upjet-yc/apis/resourcemanager/v1alpha1.Folder // +kubebuilder:validation:Optional FolderID *string `json:"folderId,omitempty" tf:"folder_id,omitempty"` diff --git a/apis/mdb/v1alpha1/zz_clickhousecluster_types.go b/apis/mdb/v1alpha1/zz_clickhousecluster_types.go index 7828642..280ba39 100755 --- a/apis/mdb/v1alpha1/zz_clickhousecluster_types.go +++ b/apis/mdb/v1alpha1/zz_clickhousecluster_types.go @@ -115,6 +115,9 @@ type ClickhouseClusterInitParameters struct { // A password used to authorize as user admin when sql_user_management enabled. AdminPasswordSecretRef *v1.SecretKeySelector `json:"adminPasswordSecretRef,omitempty" tf:"-"` + // The period in days during which backups are stored. + BackupRetainPeriodDays *float64 `json:"backupRetainPeriodDays,omitempty" tf:"backup_retain_period_days,omitempty"` + // Time to start the daily backup, in the UTC timezone. The structure is documented below. BackupWindowStart []BackupWindowStartInitParameters `json:"backupWindowStart,omitempty" tf:"backup_window_start,omitempty"` @@ -132,7 +135,7 @@ type ClickhouseClusterInitParameters struct { // A database of the ClickHouse cluster. The structure is documented below. Database []DatabaseInitParameters `json:"database,omitempty" tf:"database,omitempty"` - // Inhibits deletion of the cluster. Can be either true or false. + // Inhibits deletion of the cluster. Can be either true or false. DeletionProtection *bool `json:"deletionProtection,omitempty" tf:"deletion_protection,omitempty"` // Description of the ClickHouse cluster. @@ -144,8 +147,7 @@ type ClickhouseClusterInitParameters struct { // Deployment environment of the ClickHouse cluster. Can be either PRESTABLE or PRODUCTION. Environment *string `json:"environment,omitempty" tf:"environment,omitempty"` - // The ID of the folder that the resource belongs to. If it - // is not provided, the default provider folder is used. + // The ID of the folder that the resource belongs to. If it is not provided, the default provider folder is used. // +crossplane:generate:reference:type=github.com/tagesjump/provider-upjet-yc/apis/resourcemanager/v1alpha1.Folder FolderID *string `json:"folderId,omitempty" tf:"folder_id,omitempty"` @@ -238,6 +240,9 @@ type ClickhouseClusterObservation struct { // Access policy to the ClickHouse cluster. The structure is documented below. Access []AccessObservation `json:"access,omitempty" tf:"access,omitempty"` + // The period in days during which backups are stored. + BackupRetainPeriodDays *float64 `json:"backupRetainPeriodDays,omitempty" tf:"backup_retain_period_days,omitempty"` + // Time to start the daily backup, in the UTC timezone. The structure is documented below. BackupWindowStart []BackupWindowStartObservation `json:"backupWindowStart,omitempty" tf:"backup_window_start,omitempty"` @@ -258,7 +263,7 @@ type ClickhouseClusterObservation struct { // A database of the ClickHouse cluster. The structure is documented below. Database []DatabaseObservation `json:"database,omitempty" tf:"database,omitempty"` - // Inhibits deletion of the cluster. Can be either true or false. + // Inhibits deletion of the cluster. Can be either true or false. DeletionProtection *bool `json:"deletionProtection,omitempty" tf:"deletion_protection,omitempty"` // Description of the ClickHouse cluster. @@ -270,15 +275,13 @@ type ClickhouseClusterObservation struct { // Deployment environment of the ClickHouse cluster. Can be either PRESTABLE or PRODUCTION. Environment *string `json:"environment,omitempty" tf:"environment,omitempty"` - // The ID of the folder that the resource belongs to. If it - // is not provided, the default provider folder is used. + // The ID of the folder that the resource belongs to. If it is not provided, the default provider folder is used. FolderID *string `json:"folderId,omitempty" tf:"folder_id,omitempty"` // A set of protobuf or capnproto format schemas. The structure is documented below. FormatSchema []FormatSchemaObservation `json:"formatSchema,omitempty" tf:"format_schema,omitempty"` - // Aggregated health of the cluster. Can be ALIVE, DEGRADED, DEAD or HEALTH_UNKNOWN. - // For more information see health field of JSON representation in the official documentation. + // Aggregated health of the cluster. Can be ALIVE, DEGRADED, DEAD or HEALTH_UNKNOWN. For more information see health field of JSON representation in the official documentation. Health *string `json:"health,omitempty" tf:"health,omitempty"` // A host of the ClickHouse cluster. The structure is documented below. @@ -319,8 +322,7 @@ type ClickhouseClusterObservation struct { // A group of clickhouse shards. The structure is documented below. ShardGroup []ShardGroupObservation `json:"shardGroup,omitempty" tf:"shard_group,omitempty"` - // Status of the cluster. Can be CREATING, STARTING, RUNNING, UPDATING, STOPPING, STOPPED, ERROR or STATUS_UNKNOWN. - // For more information see status field of JSON representation in the official documentation. + // Status of the cluster. Can be CREATING, STARTING, RUNNING, UPDATING, STOPPING, STOPPED, ERROR or STATUS_UNKNOWN. For more information see status field of JSON representation in the official documentation. Status *string `json:"status,omitempty" tf:"status,omitempty"` // A user of the ClickHouse cluster. The structure is documented below. @@ -343,6 +345,10 @@ type ClickhouseClusterParameters struct { // +kubebuilder:validation:Optional AdminPasswordSecretRef *v1.SecretKeySelector `json:"adminPasswordSecretRef,omitempty" tf:"-"` + // The period in days during which backups are stored. + // +kubebuilder:validation:Optional + BackupRetainPeriodDays *float64 `json:"backupRetainPeriodDays,omitempty" tf:"backup_retain_period_days,omitempty"` + // Time to start the daily backup, in the UTC timezone. The structure is documented below. // +kubebuilder:validation:Optional BackupWindowStart []BackupWindowStartParameters `json:"backupWindowStart,omitempty" tf:"backup_window_start,omitempty"` @@ -366,7 +372,7 @@ type ClickhouseClusterParameters struct { // +kubebuilder:validation:Optional Database []DatabaseParameters `json:"database,omitempty" tf:"database,omitempty"` - // Inhibits deletion of the cluster. Can be either true or false. + // Inhibits deletion of the cluster. Can be either true or false. // +kubebuilder:validation:Optional DeletionProtection *bool `json:"deletionProtection,omitempty" tf:"deletion_protection,omitempty"` @@ -382,8 +388,7 @@ type ClickhouseClusterParameters struct { // +kubebuilder:validation:Optional Environment *string `json:"environment,omitempty" tf:"environment,omitempty"` - // The ID of the folder that the resource belongs to. If it - // is not provided, the default provider folder is used. + // The ID of the folder that the resource belongs to. If it is not provided, the default provider folder is used. // +crossplane:generate:reference:type=github.com/tagesjump/provider-upjet-yc/apis/resourcemanager/v1alpha1.Folder // +kubebuilder:validation:Optional FolderID *string `json:"folderId,omitempty" tf:"folder_id,omitempty"` @@ -626,12 +631,32 @@ type CompressionParameters struct { } type ConfigInitParameters struct { + AsynchronousInsertLogEnabled *bool `json:"asynchronousInsertLogEnabled,omitempty" tf:"asynchronous_insert_log_enabled,omitempty"` + + AsynchronousInsertLogRetentionSize *float64 `json:"asynchronousInsertLogRetentionSize,omitempty" tf:"asynchronous_insert_log_retention_size,omitempty"` + + AsynchronousInsertLogRetentionTime *float64 `json:"asynchronousInsertLogRetentionTime,omitempty" tf:"asynchronous_insert_log_retention_time,omitempty"` + + AsynchronousMetricLogEnabled *bool `json:"asynchronousMetricLogEnabled,omitempty" tf:"asynchronous_metric_log_enabled,omitempty"` + + AsynchronousMetricLogRetentionSize *float64 `json:"asynchronousMetricLogRetentionSize,omitempty" tf:"asynchronous_metric_log_retention_size,omitempty"` + + AsynchronousMetricLogRetentionTime *float64 `json:"asynchronousMetricLogRetentionTime,omitempty" tf:"asynchronous_metric_log_retention_time,omitempty"` + + BackgroundBufferFlushSchedulePoolSize *float64 `json:"backgroundBufferFlushSchedulePoolSize,omitempty" tf:"background_buffer_flush_schedule_pool_size,omitempty"` + + BackgroundCommonPoolSize *float64 `json:"backgroundCommonPoolSize,omitempty" tf:"background_common_pool_size,omitempty"` + + BackgroundDistributedSchedulePoolSize *float64 `json:"backgroundDistributedSchedulePoolSize,omitempty" tf:"background_distributed_schedule_pool_size,omitempty"` + BackgroundFetchesPoolSize *float64 `json:"backgroundFetchesPoolSize,omitempty" tf:"background_fetches_pool_size,omitempty"` BackgroundMergesMutationsConcurrencyRatio *float64 `json:"backgroundMergesMutationsConcurrencyRatio,omitempty" tf:"background_merges_mutations_concurrency_ratio,omitempty"` BackgroundMessageBrokerSchedulePoolSize *float64 `json:"backgroundMessageBrokerSchedulePoolSize,omitempty" tf:"background_message_broker_schedule_pool_size,omitempty"` + BackgroundMovePoolSize *float64 `json:"backgroundMovePoolSize,omitempty" tf:"background_move_pool_size,omitempty"` + BackgroundPoolSize *float64 `json:"backgroundPoolSize,omitempty" tf:"background_pool_size,omitempty"` BackgroundSchedulePoolSize *float64 `json:"backgroundSchedulePoolSize,omitempty" tf:"background_schedule_pool_size,omitempty"` @@ -642,6 +667,8 @@ type ConfigInitParameters struct { // A database of the ClickHouse cluster. The structure is documented below. DefaultDatabase *string `json:"defaultDatabase,omitempty" tf:"default_database,omitempty"` + DictionariesLazyLoad *bool `json:"dictionariesLazyLoad,omitempty" tf:"dictionaries_lazy_load,omitempty"` + GeobaseEnabled *bool `json:"geobaseEnabled,omitempty" tf:"geobase_enabled,omitempty"` GeobaseURI *string `json:"geobaseUri,omitempty" tf:"geobase_uri,omitempty"` @@ -657,8 +684,7 @@ type ConfigInitParameters struct { KeepAliveTimeout *float64 `json:"keepAliveTimeout,omitempty" tf:"keep_alive_timeout,omitempty"` - // ClickHouse server parameters. For more information, see - // the official documentation. + // ClickHouse server parameters. For more information, see the official documentation. LogLevel *string `json:"logLevel,omitempty" tf:"log_level,omitempty"` MarkCacheSize *float64 `json:"markCacheSize,omitempty" tf:"mark_cache_size,omitempty"` @@ -680,23 +706,47 @@ type ConfigInitParameters struct { MetricLogRetentionTime *float64 `json:"metricLogRetentionTime,omitempty" tf:"metric_log_retention_time,omitempty"` + OpentelemetrySpanLogEnabled *bool `json:"opentelemetrySpanLogEnabled,omitempty" tf:"opentelemetry_span_log_enabled,omitempty"` + + OpentelemetrySpanLogRetentionSize *float64 `json:"opentelemetrySpanLogRetentionSize,omitempty" tf:"opentelemetry_span_log_retention_size,omitempty"` + + OpentelemetrySpanLogRetentionTime *float64 `json:"opentelemetrySpanLogRetentionTime,omitempty" tf:"opentelemetry_span_log_retention_time,omitempty"` + PartLogRetentionSize *float64 `json:"partLogRetentionSize,omitempty" tf:"part_log_retention_size,omitempty"` PartLogRetentionTime *float64 `json:"partLogRetentionTime,omitempty" tf:"part_log_retention_time,omitempty"` + // Query cache configuration. The structure is documented below. + QueryCache []QueryCacheInitParameters `json:"queryCache,omitempty" tf:"query_cache,omitempty"` + QueryLogRetentionSize *float64 `json:"queryLogRetentionSize,omitempty" tf:"query_log_retention_size,omitempty"` QueryLogRetentionTime *float64 `json:"queryLogRetentionTime,omitempty" tf:"query_log_retention_time,omitempty"` + // Query masking rules configuration. The structure is documented below. + QueryMaskingRules []QueryMaskingRulesInitParameters `json:"queryMaskingRules,omitempty" tf:"query_masking_rules,omitempty"` + QueryThreadLogEnabled *bool `json:"queryThreadLogEnabled,omitempty" tf:"query_thread_log_enabled,omitempty"` QueryThreadLogRetentionSize *float64 `json:"queryThreadLogRetentionSize,omitempty" tf:"query_thread_log_retention_size,omitempty"` QueryThreadLogRetentionTime *float64 `json:"queryThreadLogRetentionTime,omitempty" tf:"query_thread_log_retention_time,omitempty"` + QueryViewsLogEnabled *bool `json:"queryViewsLogEnabled,omitempty" tf:"query_views_log_enabled,omitempty"` + + QueryViewsLogRetentionSize *float64 `json:"queryViewsLogRetentionSize,omitempty" tf:"query_views_log_retention_size,omitempty"` + + QueryViewsLogRetentionTime *float64 `json:"queryViewsLogRetentionTime,omitempty" tf:"query_views_log_retention_time,omitempty"` + // RabbitMQ connection configuration. The structure is documented below. Rabbitmq []RabbitmqInitParameters `json:"rabbitmq,omitempty" tf:"rabbitmq,omitempty"` + SessionLogEnabled *bool `json:"sessionLogEnabled,omitempty" tf:"session_log_enabled,omitempty"` + + SessionLogRetentionSize *float64 `json:"sessionLogRetentionSize,omitempty" tf:"session_log_retention_size,omitempty"` + + SessionLogRetentionTime *float64 `json:"sessionLogRetentionTime,omitempty" tf:"session_log_retention_time,omitempty"` + TextLogEnabled *bool `json:"textLogEnabled,omitempty" tf:"text_log_enabled,omitempty"` TextLogLevel *string `json:"textLogLevel,omitempty" tf:"text_log_level,omitempty"` @@ -716,15 +766,41 @@ type ConfigInitParameters struct { TraceLogRetentionTime *float64 `json:"traceLogRetentionTime,omitempty" tf:"trace_log_retention_time,omitempty"` UncompressedCacheSize *float64 `json:"uncompressedCacheSize,omitempty" tf:"uncompressed_cache_size,omitempty"` + + ZookeeperLogEnabled *bool `json:"zookeeperLogEnabled,omitempty" tf:"zookeeper_log_enabled,omitempty"` + + ZookeeperLogRetentionSize *float64 `json:"zookeeperLogRetentionSize,omitempty" tf:"zookeeper_log_retention_size,omitempty"` + + ZookeeperLogRetentionTime *float64 `json:"zookeeperLogRetentionTime,omitempty" tf:"zookeeper_log_retention_time,omitempty"` } type ConfigObservation struct { + AsynchronousInsertLogEnabled *bool `json:"asynchronousInsertLogEnabled,omitempty" tf:"asynchronous_insert_log_enabled,omitempty"` + + AsynchronousInsertLogRetentionSize *float64 `json:"asynchronousInsertLogRetentionSize,omitempty" tf:"asynchronous_insert_log_retention_size,omitempty"` + + AsynchronousInsertLogRetentionTime *float64 `json:"asynchronousInsertLogRetentionTime,omitempty" tf:"asynchronous_insert_log_retention_time,omitempty"` + + AsynchronousMetricLogEnabled *bool `json:"asynchronousMetricLogEnabled,omitempty" tf:"asynchronous_metric_log_enabled,omitempty"` + + AsynchronousMetricLogRetentionSize *float64 `json:"asynchronousMetricLogRetentionSize,omitempty" tf:"asynchronous_metric_log_retention_size,omitempty"` + + AsynchronousMetricLogRetentionTime *float64 `json:"asynchronousMetricLogRetentionTime,omitempty" tf:"asynchronous_metric_log_retention_time,omitempty"` + + BackgroundBufferFlushSchedulePoolSize *float64 `json:"backgroundBufferFlushSchedulePoolSize,omitempty" tf:"background_buffer_flush_schedule_pool_size,omitempty"` + + BackgroundCommonPoolSize *float64 `json:"backgroundCommonPoolSize,omitempty" tf:"background_common_pool_size,omitempty"` + + BackgroundDistributedSchedulePoolSize *float64 `json:"backgroundDistributedSchedulePoolSize,omitempty" tf:"background_distributed_schedule_pool_size,omitempty"` + BackgroundFetchesPoolSize *float64 `json:"backgroundFetchesPoolSize,omitempty" tf:"background_fetches_pool_size,omitempty"` BackgroundMergesMutationsConcurrencyRatio *float64 `json:"backgroundMergesMutationsConcurrencyRatio,omitempty" tf:"background_merges_mutations_concurrency_ratio,omitempty"` BackgroundMessageBrokerSchedulePoolSize *float64 `json:"backgroundMessageBrokerSchedulePoolSize,omitempty" tf:"background_message_broker_schedule_pool_size,omitempty"` + BackgroundMovePoolSize *float64 `json:"backgroundMovePoolSize,omitempty" tf:"background_move_pool_size,omitempty"` + BackgroundPoolSize *float64 `json:"backgroundPoolSize,omitempty" tf:"background_pool_size,omitempty"` BackgroundSchedulePoolSize *float64 `json:"backgroundSchedulePoolSize,omitempty" tf:"background_schedule_pool_size,omitempty"` @@ -735,6 +811,8 @@ type ConfigObservation struct { // A database of the ClickHouse cluster. The structure is documented below. DefaultDatabase *string `json:"defaultDatabase,omitempty" tf:"default_database,omitempty"` + DictionariesLazyLoad *bool `json:"dictionariesLazyLoad,omitempty" tf:"dictionaries_lazy_load,omitempty"` + GeobaseEnabled *bool `json:"geobaseEnabled,omitempty" tf:"geobase_enabled,omitempty"` GeobaseURI *string `json:"geobaseUri,omitempty" tf:"geobase_uri,omitempty"` @@ -750,8 +828,7 @@ type ConfigObservation struct { KeepAliveTimeout *float64 `json:"keepAliveTimeout,omitempty" tf:"keep_alive_timeout,omitempty"` - // ClickHouse server parameters. For more information, see - // the official documentation. + // ClickHouse server parameters. For more information, see the official documentation. LogLevel *string `json:"logLevel,omitempty" tf:"log_level,omitempty"` MarkCacheSize *float64 `json:"markCacheSize,omitempty" tf:"mark_cache_size,omitempty"` @@ -773,23 +850,47 @@ type ConfigObservation struct { MetricLogRetentionTime *float64 `json:"metricLogRetentionTime,omitempty" tf:"metric_log_retention_time,omitempty"` + OpentelemetrySpanLogEnabled *bool `json:"opentelemetrySpanLogEnabled,omitempty" tf:"opentelemetry_span_log_enabled,omitempty"` + + OpentelemetrySpanLogRetentionSize *float64 `json:"opentelemetrySpanLogRetentionSize,omitempty" tf:"opentelemetry_span_log_retention_size,omitempty"` + + OpentelemetrySpanLogRetentionTime *float64 `json:"opentelemetrySpanLogRetentionTime,omitempty" tf:"opentelemetry_span_log_retention_time,omitempty"` + PartLogRetentionSize *float64 `json:"partLogRetentionSize,omitempty" tf:"part_log_retention_size,omitempty"` PartLogRetentionTime *float64 `json:"partLogRetentionTime,omitempty" tf:"part_log_retention_time,omitempty"` + // Query cache configuration. The structure is documented below. + QueryCache []QueryCacheObservation `json:"queryCache,omitempty" tf:"query_cache,omitempty"` + QueryLogRetentionSize *float64 `json:"queryLogRetentionSize,omitempty" tf:"query_log_retention_size,omitempty"` QueryLogRetentionTime *float64 `json:"queryLogRetentionTime,omitempty" tf:"query_log_retention_time,omitempty"` + // Query masking rules configuration. The structure is documented below. + QueryMaskingRules []QueryMaskingRulesObservation `json:"queryMaskingRules,omitempty" tf:"query_masking_rules,omitempty"` + QueryThreadLogEnabled *bool `json:"queryThreadLogEnabled,omitempty" tf:"query_thread_log_enabled,omitempty"` QueryThreadLogRetentionSize *float64 `json:"queryThreadLogRetentionSize,omitempty" tf:"query_thread_log_retention_size,omitempty"` QueryThreadLogRetentionTime *float64 `json:"queryThreadLogRetentionTime,omitempty" tf:"query_thread_log_retention_time,omitempty"` + QueryViewsLogEnabled *bool `json:"queryViewsLogEnabled,omitempty" tf:"query_views_log_enabled,omitempty"` + + QueryViewsLogRetentionSize *float64 `json:"queryViewsLogRetentionSize,omitempty" tf:"query_views_log_retention_size,omitempty"` + + QueryViewsLogRetentionTime *float64 `json:"queryViewsLogRetentionTime,omitempty" tf:"query_views_log_retention_time,omitempty"` + // RabbitMQ connection configuration. The structure is documented below. Rabbitmq []RabbitmqObservation `json:"rabbitmq,omitempty" tf:"rabbitmq,omitempty"` + SessionLogEnabled *bool `json:"sessionLogEnabled,omitempty" tf:"session_log_enabled,omitempty"` + + SessionLogRetentionSize *float64 `json:"sessionLogRetentionSize,omitempty" tf:"session_log_retention_size,omitempty"` + + SessionLogRetentionTime *float64 `json:"sessionLogRetentionTime,omitempty" tf:"session_log_retention_time,omitempty"` + TextLogEnabled *bool `json:"textLogEnabled,omitempty" tf:"text_log_enabled,omitempty"` TextLogLevel *string `json:"textLogLevel,omitempty" tf:"text_log_level,omitempty"` @@ -809,10 +910,43 @@ type ConfigObservation struct { TraceLogRetentionTime *float64 `json:"traceLogRetentionTime,omitempty" tf:"trace_log_retention_time,omitempty"` UncompressedCacheSize *float64 `json:"uncompressedCacheSize,omitempty" tf:"uncompressed_cache_size,omitempty"` + + ZookeeperLogEnabled *bool `json:"zookeeperLogEnabled,omitempty" tf:"zookeeper_log_enabled,omitempty"` + + ZookeeperLogRetentionSize *float64 `json:"zookeeperLogRetentionSize,omitempty" tf:"zookeeper_log_retention_size,omitempty"` + + ZookeeperLogRetentionTime *float64 `json:"zookeeperLogRetentionTime,omitempty" tf:"zookeeper_log_retention_time,omitempty"` } type ConfigParameters struct { + // +kubebuilder:validation:Optional + AsynchronousInsertLogEnabled *bool `json:"asynchronousInsertLogEnabled,omitempty" tf:"asynchronous_insert_log_enabled,omitempty"` + + // +kubebuilder:validation:Optional + AsynchronousInsertLogRetentionSize *float64 `json:"asynchronousInsertLogRetentionSize,omitempty" tf:"asynchronous_insert_log_retention_size,omitempty"` + + // +kubebuilder:validation:Optional + AsynchronousInsertLogRetentionTime *float64 `json:"asynchronousInsertLogRetentionTime,omitempty" tf:"asynchronous_insert_log_retention_time,omitempty"` + + // +kubebuilder:validation:Optional + AsynchronousMetricLogEnabled *bool `json:"asynchronousMetricLogEnabled,omitempty" tf:"asynchronous_metric_log_enabled,omitempty"` + + // +kubebuilder:validation:Optional + AsynchronousMetricLogRetentionSize *float64 `json:"asynchronousMetricLogRetentionSize,omitempty" tf:"asynchronous_metric_log_retention_size,omitempty"` + + // +kubebuilder:validation:Optional + AsynchronousMetricLogRetentionTime *float64 `json:"asynchronousMetricLogRetentionTime,omitempty" tf:"asynchronous_metric_log_retention_time,omitempty"` + + // +kubebuilder:validation:Optional + BackgroundBufferFlushSchedulePoolSize *float64 `json:"backgroundBufferFlushSchedulePoolSize,omitempty" tf:"background_buffer_flush_schedule_pool_size,omitempty"` + + // +kubebuilder:validation:Optional + BackgroundCommonPoolSize *float64 `json:"backgroundCommonPoolSize,omitempty" tf:"background_common_pool_size,omitempty"` + + // +kubebuilder:validation:Optional + BackgroundDistributedSchedulePoolSize *float64 `json:"backgroundDistributedSchedulePoolSize,omitempty" tf:"background_distributed_schedule_pool_size,omitempty"` + // +kubebuilder:validation:Optional BackgroundFetchesPoolSize *float64 `json:"backgroundFetchesPoolSize,omitempty" tf:"background_fetches_pool_size,omitempty"` @@ -822,6 +956,9 @@ type ConfigParameters struct { // +kubebuilder:validation:Optional BackgroundMessageBrokerSchedulePoolSize *float64 `json:"backgroundMessageBrokerSchedulePoolSize,omitempty" tf:"background_message_broker_schedule_pool_size,omitempty"` + // +kubebuilder:validation:Optional + BackgroundMovePoolSize *float64 `json:"backgroundMovePoolSize,omitempty" tf:"background_move_pool_size,omitempty"` + // +kubebuilder:validation:Optional BackgroundPoolSize *float64 `json:"backgroundPoolSize,omitempty" tf:"background_pool_size,omitempty"` @@ -836,6 +973,9 @@ type ConfigParameters struct { // +kubebuilder:validation:Optional DefaultDatabase *string `json:"defaultDatabase,omitempty" tf:"default_database,omitempty"` + // +kubebuilder:validation:Optional + DictionariesLazyLoad *bool `json:"dictionariesLazyLoad,omitempty" tf:"dictionaries_lazy_load,omitempty"` + // +kubebuilder:validation:Optional GeobaseEnabled *bool `json:"geobaseEnabled,omitempty" tf:"geobase_enabled,omitempty"` @@ -857,8 +997,7 @@ type ConfigParameters struct { // +kubebuilder:validation:Optional KeepAliveTimeout *float64 `json:"keepAliveTimeout,omitempty" tf:"keep_alive_timeout,omitempty"` - // ClickHouse server parameters. For more information, see - // the official documentation. + // ClickHouse server parameters. For more information, see the official documentation. // +kubebuilder:validation:Optional LogLevel *string `json:"logLevel,omitempty" tf:"log_level,omitempty"` @@ -890,18 +1029,35 @@ type ConfigParameters struct { // +kubebuilder:validation:Optional MetricLogRetentionTime *float64 `json:"metricLogRetentionTime,omitempty" tf:"metric_log_retention_time,omitempty"` + // +kubebuilder:validation:Optional + OpentelemetrySpanLogEnabled *bool `json:"opentelemetrySpanLogEnabled,omitempty" tf:"opentelemetry_span_log_enabled,omitempty"` + + // +kubebuilder:validation:Optional + OpentelemetrySpanLogRetentionSize *float64 `json:"opentelemetrySpanLogRetentionSize,omitempty" tf:"opentelemetry_span_log_retention_size,omitempty"` + + // +kubebuilder:validation:Optional + OpentelemetrySpanLogRetentionTime *float64 `json:"opentelemetrySpanLogRetentionTime,omitempty" tf:"opentelemetry_span_log_retention_time,omitempty"` + // +kubebuilder:validation:Optional PartLogRetentionSize *float64 `json:"partLogRetentionSize,omitempty" tf:"part_log_retention_size,omitempty"` // +kubebuilder:validation:Optional PartLogRetentionTime *float64 `json:"partLogRetentionTime,omitempty" tf:"part_log_retention_time,omitempty"` + // Query cache configuration. The structure is documented below. + // +kubebuilder:validation:Optional + QueryCache []QueryCacheParameters `json:"queryCache,omitempty" tf:"query_cache,omitempty"` + // +kubebuilder:validation:Optional QueryLogRetentionSize *float64 `json:"queryLogRetentionSize,omitempty" tf:"query_log_retention_size,omitempty"` // +kubebuilder:validation:Optional QueryLogRetentionTime *float64 `json:"queryLogRetentionTime,omitempty" tf:"query_log_retention_time,omitempty"` + // Query masking rules configuration. The structure is documented below. + // +kubebuilder:validation:Optional + QueryMaskingRules []QueryMaskingRulesParameters `json:"queryMaskingRules,omitempty" tf:"query_masking_rules,omitempty"` + // +kubebuilder:validation:Optional QueryThreadLogEnabled *bool `json:"queryThreadLogEnabled,omitempty" tf:"query_thread_log_enabled,omitempty"` @@ -911,10 +1067,28 @@ type ConfigParameters struct { // +kubebuilder:validation:Optional QueryThreadLogRetentionTime *float64 `json:"queryThreadLogRetentionTime,omitempty" tf:"query_thread_log_retention_time,omitempty"` + // +kubebuilder:validation:Optional + QueryViewsLogEnabled *bool `json:"queryViewsLogEnabled,omitempty" tf:"query_views_log_enabled,omitempty"` + + // +kubebuilder:validation:Optional + QueryViewsLogRetentionSize *float64 `json:"queryViewsLogRetentionSize,omitempty" tf:"query_views_log_retention_size,omitempty"` + + // +kubebuilder:validation:Optional + QueryViewsLogRetentionTime *float64 `json:"queryViewsLogRetentionTime,omitempty" tf:"query_views_log_retention_time,omitempty"` + // RabbitMQ connection configuration. The structure is documented below. // +kubebuilder:validation:Optional Rabbitmq []RabbitmqParameters `json:"rabbitmq,omitempty" tf:"rabbitmq,omitempty"` + // +kubebuilder:validation:Optional + SessionLogEnabled *bool `json:"sessionLogEnabled,omitempty" tf:"session_log_enabled,omitempty"` + + // +kubebuilder:validation:Optional + SessionLogRetentionSize *float64 `json:"sessionLogRetentionSize,omitempty" tf:"session_log_retention_size,omitempty"` + + // +kubebuilder:validation:Optional + SessionLogRetentionTime *float64 `json:"sessionLogRetentionTime,omitempty" tf:"session_log_retention_time,omitempty"` + // +kubebuilder:validation:Optional TextLogEnabled *bool `json:"textLogEnabled,omitempty" tf:"text_log_enabled,omitempty"` @@ -944,6 +1118,15 @@ type ConfigParameters struct { // +kubebuilder:validation:Optional UncompressedCacheSize *float64 `json:"uncompressedCacheSize,omitempty" tf:"uncompressed_cache_size,omitempty"` + + // +kubebuilder:validation:Optional + ZookeeperLogEnabled *bool `json:"zookeeperLogEnabled,omitempty" tf:"zookeeper_log_enabled,omitempty"` + + // +kubebuilder:validation:Optional + ZookeeperLogRetentionSize *float64 `json:"zookeeperLogRetentionSize,omitempty" tf:"zookeeper_log_retention_size,omitempty"` + + // +kubebuilder:validation:Optional + ZookeeperLogRetentionTime *float64 `json:"zookeeperLogRetentionTime,omitempty" tf:"zookeeper_log_retention_time,omitempty"` } type DatabaseInitParameters struct { @@ -1009,8 +1192,20 @@ type GraphiteRollupInitParameters struct { // The name of the user. Name *string `json:"name,omitempty" tf:"name,omitempty"` + // The name of the column storing the metric name (Graphite sensor). Default value: Path. + PathColumnName *string `json:"pathColumnName,omitempty" tf:"path_column_name,omitempty"` + // Set of thinning rules. Pattern []PatternInitParameters `json:"pattern,omitempty" tf:"pattern,omitempty"` + + // The name of the column storing the time of measuring the metric. Default value: Time. + TimeColumnName *string `json:"timeColumnName,omitempty" tf:"time_column_name,omitempty"` + + // The name of the column storing the value of the metric at the time set in time_column_name. Default value: Value. + ValueColumnName *string `json:"valueColumnName,omitempty" tf:"value_column_name,omitempty"` + + // The name of the column storing the version of the metric. Default value: Timestamp. + VersionColumnName *string `json:"versionColumnName,omitempty" tf:"version_column_name,omitempty"` } type GraphiteRollupObservation struct { @@ -1018,8 +1213,20 @@ type GraphiteRollupObservation struct { // The name of the user. Name *string `json:"name,omitempty" tf:"name,omitempty"` + // The name of the column storing the metric name (Graphite sensor). Default value: Path. + PathColumnName *string `json:"pathColumnName,omitempty" tf:"path_column_name,omitempty"` + // Set of thinning rules. Pattern []PatternObservation `json:"pattern,omitempty" tf:"pattern,omitempty"` + + // The name of the column storing the time of measuring the metric. Default value: Time. + TimeColumnName *string `json:"timeColumnName,omitempty" tf:"time_column_name,omitempty"` + + // The name of the column storing the value of the metric at the time set in time_column_name. Default value: Value. + ValueColumnName *string `json:"valueColumnName,omitempty" tf:"value_column_name,omitempty"` + + // The name of the column storing the version of the metric. Default value: Timestamp. + VersionColumnName *string `json:"versionColumnName,omitempty" tf:"version_column_name,omitempty"` } type GraphiteRollupParameters struct { @@ -1028,9 +1235,25 @@ type GraphiteRollupParameters struct { // +kubebuilder:validation:Optional Name *string `json:"name" tf:"name,omitempty"` + // The name of the column storing the metric name (Graphite sensor). Default value: Path. + // +kubebuilder:validation:Optional + PathColumnName *string `json:"pathColumnName,omitempty" tf:"path_column_name,omitempty"` + // Set of thinning rules. // +kubebuilder:validation:Optional Pattern []PatternParameters `json:"pattern,omitempty" tf:"pattern,omitempty"` + + // The name of the column storing the time of measuring the metric. Default value: Time. + // +kubebuilder:validation:Optional + TimeColumnName *string `json:"timeColumnName,omitempty" tf:"time_column_name,omitempty"` + + // The name of the column storing the value of the metric at the time set in time_column_name. Default value: Value. + // +kubebuilder:validation:Optional + ValueColumnName *string `json:"valueColumnName,omitempty" tf:"value_column_name,omitempty"` + + // The name of the column storing the version of the metric. Default value: Timestamp. + // +kubebuilder:validation:Optional + VersionColumnName *string `json:"versionColumnName,omitempty" tf:"version_column_name,omitempty"` } type HostInitParameters struct { @@ -1056,8 +1279,7 @@ type HostInitParameters struct { // The type of the host to be deployed. Can be either CLICKHOUSE or ZOOKEEPER. Type *string `json:"type,omitempty" tf:"type,omitempty"` - // The availability zone where the ClickHouse host will be created. - // For more information see the official documentation. + // The availability zone where the ClickHouse host will be created. For more information see the official documentation. Zone *string `json:"zone,omitempty" tf:"zone,omitempty"` } @@ -1078,8 +1300,7 @@ type HostObservation struct { // The type of the host to be deployed. Can be either CLICKHOUSE or ZOOKEEPER. Type *string `json:"type,omitempty" tf:"type,omitempty"` - // The availability zone where the ClickHouse host will be created. - // For more information see the official documentation. + // The availability zone where the ClickHouse host will be created. For more information see the official documentation. Zone *string `json:"zone,omitempty" tf:"zone,omitempty"` } @@ -1110,14 +1331,19 @@ type HostParameters struct { // +kubebuilder:validation:Optional Type *string `json:"type" tf:"type,omitempty"` - // The availability zone where the ClickHouse host will be created. - // For more information see the official documentation. + // The availability zone where the ClickHouse host will be created. For more information see the official documentation. // +kubebuilder:validation:Optional Zone *string `json:"zone" tf:"zone,omitempty"` } type KafkaInitParameters struct { + // Action to take when there is no initial offset in offset store or the desired offset is out of range: 'smallest','earliest' - automatically reset the offset to the smallest offset, 'largest','latest' - automatically reset the offset to the largest offset, 'error' - trigger an error (ERR__AUTO_OFFSET_RESET) which is retrieved by consuming messages and checking 'message->err'. + AutoOffsetReset *string `json:"autoOffsetReset,omitempty" tf:"auto_offset_reset,omitempty"` + + // A comma-separated list of debug contexts to enable. + Debug *string `json:"debug,omitempty" tf:"debug,omitempty"` + // enable verification of SSL certificates. EnableSSLCertificateVerification *bool `json:"enableSslCertificateVerification,omitempty" tf:"enable_ssl_certificate_verification,omitempty"` @@ -1142,6 +1368,12 @@ type KafkaInitParameters struct { type KafkaObservation struct { + // Action to take when there is no initial offset in offset store or the desired offset is out of range: 'smallest','earliest' - automatically reset the offset to the smallest offset, 'largest','latest' - automatically reset the offset to the largest offset, 'error' - trigger an error (ERR__AUTO_OFFSET_RESET) which is retrieved by consuming messages and checking 'message->err'. + AutoOffsetReset *string `json:"autoOffsetReset,omitempty" tf:"auto_offset_reset,omitempty"` + + // A comma-separated list of debug contexts to enable. + Debug *string `json:"debug,omitempty" tf:"debug,omitempty"` + // enable verification of SSL certificates. EnableSSLCertificateVerification *bool `json:"enableSslCertificateVerification,omitempty" tf:"enable_ssl_certificate_verification,omitempty"` @@ -1163,6 +1395,14 @@ type KafkaObservation struct { type KafkaParameters struct { + // Action to take when there is no initial offset in offset store or the desired offset is out of range: 'smallest','earliest' - automatically reset the offset to the smallest offset, 'largest','latest' - automatically reset the offset to the largest offset, 'error' - trigger an error (ERR__AUTO_OFFSET_RESET) which is retrieved by consuming messages and checking 'message->err'. + // +kubebuilder:validation:Optional + AutoOffsetReset *string `json:"autoOffsetReset,omitempty" tf:"auto_offset_reset,omitempty"` + + // A comma-separated list of debug contexts to enable. + // +kubebuilder:validation:Optional + Debug *string `json:"debug,omitempty" tf:"debug,omitempty"` + // enable verification of SSL certificates. // +kubebuilder:validation:Optional EnableSSLCertificateVerification *bool `json:"enableSslCertificateVerification,omitempty" tf:"enable_ssl_certificate_verification,omitempty"` @@ -1301,15 +1541,36 @@ type MaintenanceWindowParameters struct { type MergeTreeInitParameters struct { + // When this setting has a value greater than zero only a single replica starts the merge immediately if merged part on shared storage and allow_remote_fs_zero_copy_replication is enabled. + AllowRemoteFsZeroCopyReplication *bool `json:"allowRemoteFsZeroCopyReplication,omitempty" tf:"allow_remote_fs_zero_copy_replication,omitempty"` + + // Enables the check at table creation, that the data type of a column for sampling or sampling expression is correct. The data type must be one of unsigned integer types: UInt8, UInt16, UInt32, UInt64. Default value: true. + CheckSampleColumnIsCorrect *bool `json:"checkSampleColumnIsCorrect,omitempty" tf:"check_sample_column_is_correct,omitempty"` + // Minimum period to clean old queue logs, blocks hashes and parts. CleanupDelayPeriod *float64 `json:"cleanupDelayPeriod,omitempty" tf:"cleanup_delay_period,omitempty"` + // If the number of inactive parts in a single partition in the table at least that many the inactive_parts_to_delay_insert value, an INSERT artificially slows down. It is useful when a server fails to clean up parts quickly enough. + InactivePartsToDelayInsert *float64 `json:"inactivePartsToDelayInsert,omitempty" tf:"inactive_parts_to_delay_insert,omitempty"` + + // If the number of inactive parts in a single partition more than the inactive_parts_to_throw_insert value, INSERT is interrupted with the "Too many inactive parts (N). Parts cleaning are processing significantly slower than inserts" exception. + InactivePartsToThrowInsert *float64 `json:"inactivePartsToThrowInsert,omitempty" tf:"inactive_parts_to_throw_insert,omitempty"` + // The too many parts check according to parts_to_delay_insert and parts_to_throw_insert will be active only if the average part size (in the relevant partition) is not larger than the specified threshold. If it is larger than the specified threshold, the INSERTs will be neither delayed or rejected. This allows to have hundreds of terabytes in a single table on a single server if the parts are successfully merged to larger parts. This does not affect the thresholds on inactive parts or total parts. MaxAvgPartSizeForTooManyParts *float64 `json:"maxAvgPartSizeForTooManyParts,omitempty" tf:"max_avg_part_size_for_too_many_parts,omitempty"` + // The maximum total parts size (in bytes) to be merged into one part, if there are enough resources available. max_bytes_to_merge_at_max_space_in_pool -- roughly corresponds to the maximum possible part size created by an automatic background merge. + MaxBytesToMergeAtMaxSpaceInPool *float64 `json:"maxBytesToMergeAtMaxSpaceInPool,omitempty" tf:"max_bytes_to_merge_at_max_space_in_pool,omitempty"` + // Max bytes to merge at min space in pool: Maximum total size of a data part to merge when the number of free threads in the background pool is minimum. MaxBytesToMergeAtMinSpaceInPool *float64 `json:"maxBytesToMergeAtMinSpaceInPool,omitempty" tf:"max_bytes_to_merge_at_min_space_in_pool,omitempty"` + // Maximum period to clean old queue logs, blocks hashes and parts. Default value: 300 seconds. + MaxCleanupDelayPeriod *float64 `json:"maxCleanupDelayPeriod,omitempty" tf:"max_cleanup_delay_period,omitempty"` + + // Maximum sleep time for merge selecting, a lower setting will trigger selecting tasks in background_schedule_pool frequently which result in large amount of requests to zookeeper in large-scale clusters. Default value: 60000 milliseconds (60 seconds). + MaxMergeSelectingSleepMs *float64 `json:"maxMergeSelectingSleepMs,omitempty" tf:"max_merge_selecting_sleep_ms,omitempty"` + // When there is more than specified number of merges with TTL entries in pool, do not assign new merge with TTL. MaxNumberOfMergesWithTTLInPool *float64 `json:"maxNumberOfMergesWithTtlInPool,omitempty" tf:"max_number_of_merges_with_ttl_in_pool,omitempty"` @@ -1319,6 +1580,9 @@ type MergeTreeInitParameters struct { // Max replicated merges in queue: Maximum number of merge tasks that can be in the ReplicatedMergeTree queue at the same time. MaxReplicatedMergesInQueue *float64 `json:"maxReplicatedMergesInQueue,omitempty" tf:"max_replicated_merges_in_queue,omitempty"` + // The number of rows that are read from the merged parts into memory. Default value: 8192. + MergeMaxBlockSize *float64 `json:"mergeMaxBlockSize,omitempty" tf:"merge_max_block_size,omitempty"` + // Sleep time for merge selecting when no part is selected. A lower setting triggers selecting tasks in background_schedule_pool frequently, which results in a large number of requests to ClickHouse Keeper in large-scale clusters. MergeSelectingSleepMs *float64 `json:"mergeSelectingSleepMs,omitempty" tf:"merge_selecting_sleep_ms,omitempty"` @@ -1340,6 +1604,9 @@ type MergeTreeInitParameters struct { // Minimum number of rows in a data part that can be stored in Wide format. You can set one, both or none of these settings. MinRowsForWidePart *float64 `json:"minRowsForWidePart,omitempty" tf:"min_rows_for_wide_part,omitempty"` + // When there is less than specified number of free entries in pool, do not execute part mutations. This is to leave free threads for regular merges and avoid "Too many parts". Default value: 20. + NumberOfFreeEntriesInPoolToExecuteMutation *float64 `json:"numberOfFreeEntriesInPoolToExecuteMutation,omitempty" tf:"number_of_free_entries_in_pool_to_execute_mutation,omitempty"` + // Number of free entries in pool to lower max size of merge: Threshold value of free entries in the pool. If the number of entries in the pool falls below this value, ClickHouse reduces the maximum size of a data part to merge. This helps handle small merges faster, rather than filling the pool with lengthy merges. NumberOfFreeEntriesInPoolToLowerMaxSizeOfMerge *float64 `json:"numberOfFreeEntriesInPoolToLowerMaxSizeOfMerge,omitempty" tf:"number_of_free_entries_in_pool_to_lower_max_size_of_merge,omitempty"` @@ -1355,21 +1622,42 @@ type MergeTreeInitParameters struct { // Replicated deduplication window seconds: Time during which ZooKeeper stores the hash blocks (the old ones wil be deleted). ReplicatedDeduplicationWindowSeconds *float64 `json:"replicatedDeduplicationWindowSeconds,omitempty" tf:"replicated_deduplication_window_seconds,omitempty"` - // Enables or disables complete dropping of data parts where all rows are expired in MergeTree tables. + // Enables zero-copy replication when a replica is located on a remote filesystem. TTLOnlyDropParts *bool `json:"ttlOnlyDropParts,omitempty" tf:"ttl_only_drop_parts,omitempty"` } type MergeTreeObservation struct { + // When this setting has a value greater than zero only a single replica starts the merge immediately if merged part on shared storage and allow_remote_fs_zero_copy_replication is enabled. + AllowRemoteFsZeroCopyReplication *bool `json:"allowRemoteFsZeroCopyReplication,omitempty" tf:"allow_remote_fs_zero_copy_replication,omitempty"` + + // Enables the check at table creation, that the data type of a column for sampling or sampling expression is correct. The data type must be one of unsigned integer types: UInt8, UInt16, UInt32, UInt64. Default value: true. + CheckSampleColumnIsCorrect *bool `json:"checkSampleColumnIsCorrect,omitempty" tf:"check_sample_column_is_correct,omitempty"` + // Minimum period to clean old queue logs, blocks hashes and parts. CleanupDelayPeriod *float64 `json:"cleanupDelayPeriod,omitempty" tf:"cleanup_delay_period,omitempty"` + // If the number of inactive parts in a single partition in the table at least that many the inactive_parts_to_delay_insert value, an INSERT artificially slows down. It is useful when a server fails to clean up parts quickly enough. + InactivePartsToDelayInsert *float64 `json:"inactivePartsToDelayInsert,omitempty" tf:"inactive_parts_to_delay_insert,omitempty"` + + // If the number of inactive parts in a single partition more than the inactive_parts_to_throw_insert value, INSERT is interrupted with the "Too many inactive parts (N). Parts cleaning are processing significantly slower than inserts" exception. + InactivePartsToThrowInsert *float64 `json:"inactivePartsToThrowInsert,omitempty" tf:"inactive_parts_to_throw_insert,omitempty"` + // The too many parts check according to parts_to_delay_insert and parts_to_throw_insert will be active only if the average part size (in the relevant partition) is not larger than the specified threshold. If it is larger than the specified threshold, the INSERTs will be neither delayed or rejected. This allows to have hundreds of terabytes in a single table on a single server if the parts are successfully merged to larger parts. This does not affect the thresholds on inactive parts or total parts. MaxAvgPartSizeForTooManyParts *float64 `json:"maxAvgPartSizeForTooManyParts,omitempty" tf:"max_avg_part_size_for_too_many_parts,omitempty"` + // The maximum total parts size (in bytes) to be merged into one part, if there are enough resources available. max_bytes_to_merge_at_max_space_in_pool -- roughly corresponds to the maximum possible part size created by an automatic background merge. + MaxBytesToMergeAtMaxSpaceInPool *float64 `json:"maxBytesToMergeAtMaxSpaceInPool,omitempty" tf:"max_bytes_to_merge_at_max_space_in_pool,omitempty"` + // Max bytes to merge at min space in pool: Maximum total size of a data part to merge when the number of free threads in the background pool is minimum. MaxBytesToMergeAtMinSpaceInPool *float64 `json:"maxBytesToMergeAtMinSpaceInPool,omitempty" tf:"max_bytes_to_merge_at_min_space_in_pool,omitempty"` + // Maximum period to clean old queue logs, blocks hashes and parts. Default value: 300 seconds. + MaxCleanupDelayPeriod *float64 `json:"maxCleanupDelayPeriod,omitempty" tf:"max_cleanup_delay_period,omitempty"` + + // Maximum sleep time for merge selecting, a lower setting will trigger selecting tasks in background_schedule_pool frequently which result in large amount of requests to zookeeper in large-scale clusters. Default value: 60000 milliseconds (60 seconds). + MaxMergeSelectingSleepMs *float64 `json:"maxMergeSelectingSleepMs,omitempty" tf:"max_merge_selecting_sleep_ms,omitempty"` + // When there is more than specified number of merges with TTL entries in pool, do not assign new merge with TTL. MaxNumberOfMergesWithTTLInPool *float64 `json:"maxNumberOfMergesWithTtlInPool,omitempty" tf:"max_number_of_merges_with_ttl_in_pool,omitempty"` @@ -1379,6 +1667,9 @@ type MergeTreeObservation struct { // Max replicated merges in queue: Maximum number of merge tasks that can be in the ReplicatedMergeTree queue at the same time. MaxReplicatedMergesInQueue *float64 `json:"maxReplicatedMergesInQueue,omitempty" tf:"max_replicated_merges_in_queue,omitempty"` + // The number of rows that are read from the merged parts into memory. Default value: 8192. + MergeMaxBlockSize *float64 `json:"mergeMaxBlockSize,omitempty" tf:"merge_max_block_size,omitempty"` + // Sleep time for merge selecting when no part is selected. A lower setting triggers selecting tasks in background_schedule_pool frequently, which results in a large number of requests to ClickHouse Keeper in large-scale clusters. MergeSelectingSleepMs *float64 `json:"mergeSelectingSleepMs,omitempty" tf:"merge_selecting_sleep_ms,omitempty"` @@ -1400,6 +1691,9 @@ type MergeTreeObservation struct { // Minimum number of rows in a data part that can be stored in Wide format. You can set one, both or none of these settings. MinRowsForWidePart *float64 `json:"minRowsForWidePart,omitempty" tf:"min_rows_for_wide_part,omitempty"` + // When there is less than specified number of free entries in pool, do not execute part mutations. This is to leave free threads for regular merges and avoid "Too many parts". Default value: 20. + NumberOfFreeEntriesInPoolToExecuteMutation *float64 `json:"numberOfFreeEntriesInPoolToExecuteMutation,omitempty" tf:"number_of_free_entries_in_pool_to_execute_mutation,omitempty"` + // Number of free entries in pool to lower max size of merge: Threshold value of free entries in the pool. If the number of entries in the pool falls below this value, ClickHouse reduces the maximum size of a data part to merge. This helps handle small merges faster, rather than filling the pool with lengthy merges. NumberOfFreeEntriesInPoolToLowerMaxSizeOfMerge *float64 `json:"numberOfFreeEntriesInPoolToLowerMaxSizeOfMerge,omitempty" tf:"number_of_free_entries_in_pool_to_lower_max_size_of_merge,omitempty"` @@ -1415,24 +1709,52 @@ type MergeTreeObservation struct { // Replicated deduplication window seconds: Time during which ZooKeeper stores the hash blocks (the old ones wil be deleted). ReplicatedDeduplicationWindowSeconds *float64 `json:"replicatedDeduplicationWindowSeconds,omitempty" tf:"replicated_deduplication_window_seconds,omitempty"` - // Enables or disables complete dropping of data parts where all rows are expired in MergeTree tables. + // Enables zero-copy replication when a replica is located on a remote filesystem. TTLOnlyDropParts *bool `json:"ttlOnlyDropParts,omitempty" tf:"ttl_only_drop_parts,omitempty"` } type MergeTreeParameters struct { + // When this setting has a value greater than zero only a single replica starts the merge immediately if merged part on shared storage and allow_remote_fs_zero_copy_replication is enabled. + // +kubebuilder:validation:Optional + AllowRemoteFsZeroCopyReplication *bool `json:"allowRemoteFsZeroCopyReplication,omitempty" tf:"allow_remote_fs_zero_copy_replication,omitempty"` + + // Enables the check at table creation, that the data type of a column for sampling or sampling expression is correct. The data type must be one of unsigned integer types: UInt8, UInt16, UInt32, UInt64. Default value: true. + // +kubebuilder:validation:Optional + CheckSampleColumnIsCorrect *bool `json:"checkSampleColumnIsCorrect,omitempty" tf:"check_sample_column_is_correct,omitempty"` + // Minimum period to clean old queue logs, blocks hashes and parts. // +kubebuilder:validation:Optional CleanupDelayPeriod *float64 `json:"cleanupDelayPeriod,omitempty" tf:"cleanup_delay_period,omitempty"` + // If the number of inactive parts in a single partition in the table at least that many the inactive_parts_to_delay_insert value, an INSERT artificially slows down. It is useful when a server fails to clean up parts quickly enough. + // +kubebuilder:validation:Optional + InactivePartsToDelayInsert *float64 `json:"inactivePartsToDelayInsert,omitempty" tf:"inactive_parts_to_delay_insert,omitempty"` + + // If the number of inactive parts in a single partition more than the inactive_parts_to_throw_insert value, INSERT is interrupted with the "Too many inactive parts (N). Parts cleaning are processing significantly slower than inserts" exception. + // +kubebuilder:validation:Optional + InactivePartsToThrowInsert *float64 `json:"inactivePartsToThrowInsert,omitempty" tf:"inactive_parts_to_throw_insert,omitempty"` + // The too many parts check according to parts_to_delay_insert and parts_to_throw_insert will be active only if the average part size (in the relevant partition) is not larger than the specified threshold. If it is larger than the specified threshold, the INSERTs will be neither delayed or rejected. This allows to have hundreds of terabytes in a single table on a single server if the parts are successfully merged to larger parts. This does not affect the thresholds on inactive parts or total parts. // +kubebuilder:validation:Optional MaxAvgPartSizeForTooManyParts *float64 `json:"maxAvgPartSizeForTooManyParts,omitempty" tf:"max_avg_part_size_for_too_many_parts,omitempty"` + // The maximum total parts size (in bytes) to be merged into one part, if there are enough resources available. max_bytes_to_merge_at_max_space_in_pool -- roughly corresponds to the maximum possible part size created by an automatic background merge. + // +kubebuilder:validation:Optional + MaxBytesToMergeAtMaxSpaceInPool *float64 `json:"maxBytesToMergeAtMaxSpaceInPool,omitempty" tf:"max_bytes_to_merge_at_max_space_in_pool,omitempty"` + // Max bytes to merge at min space in pool: Maximum total size of a data part to merge when the number of free threads in the background pool is minimum. // +kubebuilder:validation:Optional MaxBytesToMergeAtMinSpaceInPool *float64 `json:"maxBytesToMergeAtMinSpaceInPool,omitempty" tf:"max_bytes_to_merge_at_min_space_in_pool,omitempty"` + // Maximum period to clean old queue logs, blocks hashes and parts. Default value: 300 seconds. + // +kubebuilder:validation:Optional + MaxCleanupDelayPeriod *float64 `json:"maxCleanupDelayPeriod,omitempty" tf:"max_cleanup_delay_period,omitempty"` + + // Maximum sleep time for merge selecting, a lower setting will trigger selecting tasks in background_schedule_pool frequently which result in large amount of requests to zookeeper in large-scale clusters. Default value: 60000 milliseconds (60 seconds). + // +kubebuilder:validation:Optional + MaxMergeSelectingSleepMs *float64 `json:"maxMergeSelectingSleepMs,omitempty" tf:"max_merge_selecting_sleep_ms,omitempty"` + // When there is more than specified number of merges with TTL entries in pool, do not assign new merge with TTL. // +kubebuilder:validation:Optional MaxNumberOfMergesWithTTLInPool *float64 `json:"maxNumberOfMergesWithTtlInPool,omitempty" tf:"max_number_of_merges_with_ttl_in_pool,omitempty"` @@ -1445,6 +1767,10 @@ type MergeTreeParameters struct { // +kubebuilder:validation:Optional MaxReplicatedMergesInQueue *float64 `json:"maxReplicatedMergesInQueue,omitempty" tf:"max_replicated_merges_in_queue,omitempty"` + // The number of rows that are read from the merged parts into memory. Default value: 8192. + // +kubebuilder:validation:Optional + MergeMaxBlockSize *float64 `json:"mergeMaxBlockSize,omitempty" tf:"merge_max_block_size,omitempty"` + // Sleep time for merge selecting when no part is selected. A lower setting triggers selecting tasks in background_schedule_pool frequently, which results in a large number of requests to ClickHouse Keeper in large-scale clusters. // +kubebuilder:validation:Optional MergeSelectingSleepMs *float64 `json:"mergeSelectingSleepMs,omitempty" tf:"merge_selecting_sleep_ms,omitempty"` @@ -1473,6 +1799,10 @@ type MergeTreeParameters struct { // +kubebuilder:validation:Optional MinRowsForWidePart *float64 `json:"minRowsForWidePart,omitempty" tf:"min_rows_for_wide_part,omitempty"` + // When there is less than specified number of free entries in pool, do not execute part mutations. This is to leave free threads for regular merges and avoid "Too many parts". Default value: 20. + // +kubebuilder:validation:Optional + NumberOfFreeEntriesInPoolToExecuteMutation *float64 `json:"numberOfFreeEntriesInPoolToExecuteMutation,omitempty" tf:"number_of_free_entries_in_pool_to_execute_mutation,omitempty"` + // Number of free entries in pool to lower max size of merge: Threshold value of free entries in the pool. If the number of entries in the pool falls below this value, ClickHouse reduces the maximum size of a data part to merge. This helps handle small merges faster, rather than filling the pool with lengthy merges. // +kubebuilder:validation:Optional NumberOfFreeEntriesInPoolToLowerMaxSizeOfMerge *float64 `json:"numberOfFreeEntriesInPoolToLowerMaxSizeOfMerge,omitempty" tf:"number_of_free_entries_in_pool_to_lower_max_size_of_merge,omitempty"` @@ -1493,7 +1823,7 @@ type MergeTreeParameters struct { // +kubebuilder:validation:Optional ReplicatedDeduplicationWindowSeconds *float64 `json:"replicatedDeduplicationWindowSeconds,omitempty" tf:"replicated_deduplication_window_seconds,omitempty"` - // Enables or disables complete dropping of data parts where all rows are expired in MergeTree tables. + // Enables zero-copy replication when a replica is located on a remote filesystem. // +kubebuilder:validation:Optional TTLOnlyDropParts *bool `json:"ttlOnlyDropParts,omitempty" tf:"ttl_only_drop_parts,omitempty"` } @@ -1556,6 +1886,94 @@ type PermissionParameters struct { DatabaseName *string `json:"databaseName" tf:"database_name,omitempty"` } +type QueryCacheInitParameters struct { + + // The maximum number of SELECT query results stored in the cache. Default value: 1024. + MaxEntries *float64 `json:"maxEntries,omitempty" tf:"max_entries,omitempty"` + + // The maximum size in bytes SELECT query results may have to be saved in the cache. Default value: 1048576 (1 MiB). + MaxEntrySizeInBytes *float64 `json:"maxEntrySizeInBytes,omitempty" tf:"max_entry_size_in_bytes,omitempty"` + + // The maximum number of rows SELECT query results may have to be saved in the cache. Default value: 30000000 (30 mil). + MaxEntrySizeInRows *float64 `json:"maxEntrySizeInRows,omitempty" tf:"max_entry_size_in_rows,omitempty"` + + // The maximum cache size in bytes. 0 means the query cache is disabled. Default value: 1073741824 (1 GiB). + MaxSizeInBytes *float64 `json:"maxSizeInBytes,omitempty" tf:"max_size_in_bytes,omitempty"` +} + +type QueryCacheObservation struct { + + // The maximum number of SELECT query results stored in the cache. Default value: 1024. + MaxEntries *float64 `json:"maxEntries,omitempty" tf:"max_entries,omitempty"` + + // The maximum size in bytes SELECT query results may have to be saved in the cache. Default value: 1048576 (1 MiB). + MaxEntrySizeInBytes *float64 `json:"maxEntrySizeInBytes,omitempty" tf:"max_entry_size_in_bytes,omitempty"` + + // The maximum number of rows SELECT query results may have to be saved in the cache. Default value: 30000000 (30 mil). + MaxEntrySizeInRows *float64 `json:"maxEntrySizeInRows,omitempty" tf:"max_entry_size_in_rows,omitempty"` + + // The maximum cache size in bytes. 0 means the query cache is disabled. Default value: 1073741824 (1 GiB). + MaxSizeInBytes *float64 `json:"maxSizeInBytes,omitempty" tf:"max_size_in_bytes,omitempty"` +} + +type QueryCacheParameters struct { + + // The maximum number of SELECT query results stored in the cache. Default value: 1024. + // +kubebuilder:validation:Optional + MaxEntries *float64 `json:"maxEntries,omitempty" tf:"max_entries,omitempty"` + + // The maximum size in bytes SELECT query results may have to be saved in the cache. Default value: 1048576 (1 MiB). + // +kubebuilder:validation:Optional + MaxEntrySizeInBytes *float64 `json:"maxEntrySizeInBytes,omitempty" tf:"max_entry_size_in_bytes,omitempty"` + + // The maximum number of rows SELECT query results may have to be saved in the cache. Default value: 30000000 (30 mil). + // +kubebuilder:validation:Optional + MaxEntrySizeInRows *float64 `json:"maxEntrySizeInRows,omitempty" tf:"max_entry_size_in_rows,omitempty"` + + // The maximum cache size in bytes. 0 means the query cache is disabled. Default value: 1073741824 (1 GiB). + // +kubebuilder:validation:Optional + MaxSizeInBytes *float64 `json:"maxSizeInBytes,omitempty" tf:"max_size_in_bytes,omitempty"` +} + +type QueryMaskingRulesInitParameters struct { + + // The name of the user. + Name *string `json:"name,omitempty" tf:"name,omitempty"` + + // Regular expression that the metric name must match. + Regexp *string `json:"regexp,omitempty" tf:"regexp,omitempty"` + + // Substitution string for sensitive data. Default value: six asterisks. + Replace *string `json:"replace,omitempty" tf:"replace,omitempty"` +} + +type QueryMaskingRulesObservation struct { + + // The name of the user. + Name *string `json:"name,omitempty" tf:"name,omitempty"` + + // Regular expression that the metric name must match. + Regexp *string `json:"regexp,omitempty" tf:"regexp,omitempty"` + + // Substitution string for sensitive data. Default value: six asterisks. + Replace *string `json:"replace,omitempty" tf:"replace,omitempty"` +} + +type QueryMaskingRulesParameters struct { + + // The name of the user. + // +kubebuilder:validation:Optional + Name *string `json:"name,omitempty" tf:"name,omitempty"` + + // Regular expression that the metric name must match. + // +kubebuilder:validation:Optional + Regexp *string `json:"regexp" tf:"regexp,omitempty"` + + // Substitution string for sensitive data. Default value: six asterisks. + // +kubebuilder:validation:Optional + Replace *string `json:"replace,omitempty" tf:"replace,omitempty"` +} + type QuotaInitParameters struct { // The number of queries that threw exception. @@ -1666,8 +2084,7 @@ type ResourcesInitParameters struct { // Volume of the storage available to a ZooKeeper host, in gigabytes. DiskSize *float64 `json:"diskSize,omitempty" tf:"disk_size,omitempty"` - // Type of the storage of ZooKeeper hosts. - // For more information see the official documentation. + // Type of the storage of ZooKeeper hosts. For more information see the official documentation. DiskTypeID *string `json:"diskTypeId,omitempty" tf:"disk_type_id,omitempty"` ResourcePresetID *string `json:"resourcePresetId,omitempty" tf:"resource_preset_id,omitempty"` @@ -1678,8 +2095,7 @@ type ResourcesObservation struct { // Volume of the storage available to a ZooKeeper host, in gigabytes. DiskSize *float64 `json:"diskSize,omitempty" tf:"disk_size,omitempty"` - // Type of the storage of ZooKeeper hosts. - // For more information see the official documentation. + // Type of the storage of ZooKeeper hosts. For more information see the official documentation. DiskTypeID *string `json:"diskTypeId,omitempty" tf:"disk_type_id,omitempty"` ResourcePresetID *string `json:"resourcePresetId,omitempty" tf:"resource_preset_id,omitempty"` @@ -1691,8 +2107,7 @@ type ResourcesParameters struct { // +kubebuilder:validation:Optional DiskSize *float64 `json:"diskSize,omitempty" tf:"disk_size,omitempty"` - // Type of the storage of ZooKeeper hosts. - // For more information see the official documentation. + // Type of the storage of ZooKeeper hosts. For more information see the official documentation. // +kubebuilder:validation:Optional DiskTypeID *string `json:"diskTypeId,omitempty" tf:"disk_type_id,omitempty"` @@ -1731,6 +2146,12 @@ type RetentionParameters struct { type SettingsInitParameters struct { + // Action to take when there is no initial offset in offset store or the desired offset is out of range: 'smallest','earliest' - automatically reset the offset to the smallest offset, 'largest','latest' - automatically reset the offset to the largest offset, 'error' - trigger an error (ERR__AUTO_OFFSET_RESET) which is retrieved by consuming messages and checking 'message->err'. + AutoOffsetReset *string `json:"autoOffsetReset,omitempty" tf:"auto_offset_reset,omitempty"` + + // A comma-separated list of debug contexts to enable. + Debug *string `json:"debug,omitempty" tf:"debug,omitempty"` + // enable verification of SSL certificates. EnableSSLCertificateVerification *bool `json:"enableSslCertificateVerification,omitempty" tf:"enable_ssl_certificate_verification,omitempty"` @@ -1755,6 +2176,12 @@ type SettingsInitParameters struct { type SettingsObservation struct { + // Action to take when there is no initial offset in offset store or the desired offset is out of range: 'smallest','earliest' - automatically reset the offset to the smallest offset, 'largest','latest' - automatically reset the offset to the largest offset, 'error' - trigger an error (ERR__AUTO_OFFSET_RESET) which is retrieved by consuming messages and checking 'message->err'. + AutoOffsetReset *string `json:"autoOffsetReset,omitempty" tf:"auto_offset_reset,omitempty"` + + // A comma-separated list of debug contexts to enable. + Debug *string `json:"debug,omitempty" tf:"debug,omitempty"` + // enable verification of SSL certificates. EnableSSLCertificateVerification *bool `json:"enableSslCertificateVerification,omitempty" tf:"enable_ssl_certificate_verification,omitempty"` @@ -1776,6 +2203,14 @@ type SettingsObservation struct { type SettingsParameters struct { + // Action to take when there is no initial offset in offset store or the desired offset is out of range: 'smallest','earliest' - automatically reset the offset to the smallest offset, 'largest','latest' - automatically reset the offset to the largest offset, 'error' - trigger an error (ERR__AUTO_OFFSET_RESET) which is retrieved by consuming messages and checking 'message->err'. + // +kubebuilder:validation:Optional + AutoOffsetReset *string `json:"autoOffsetReset,omitempty" tf:"auto_offset_reset,omitempty"` + + // A comma-separated list of debug contexts to enable. + // +kubebuilder:validation:Optional + Debug *string `json:"debug,omitempty" tf:"debug,omitempty"` + // enable verification of SSL certificates. // +kubebuilder:validation:Optional EnableSSLCertificateVerification *bool `json:"enableSslCertificateVerification,omitempty" tf:"enable_ssl_certificate_verification,omitempty"` @@ -1888,8 +2323,7 @@ type ShardResourcesInitParameters struct { // Volume of the storage available to a ZooKeeper host, in gigabytes. DiskSize *float64 `json:"diskSize,omitempty" tf:"disk_size,omitempty"` - // Type of the storage of ZooKeeper hosts. - // For more information see the official documentation. + // Type of the storage of ZooKeeper hosts. For more information see the official documentation. DiskTypeID *string `json:"diskTypeId,omitempty" tf:"disk_type_id,omitempty"` ResourcePresetID *string `json:"resourcePresetId,omitempty" tf:"resource_preset_id,omitempty"` @@ -1900,8 +2334,7 @@ type ShardResourcesObservation struct { // Volume of the storage available to a ZooKeeper host, in gigabytes. DiskSize *float64 `json:"diskSize,omitempty" tf:"disk_size,omitempty"` - // Type of the storage of ZooKeeper hosts. - // For more information see the official documentation. + // Type of the storage of ZooKeeper hosts. For more information see the official documentation. DiskTypeID *string `json:"diskTypeId,omitempty" tf:"disk_type_id,omitempty"` ResourcePresetID *string `json:"resourcePresetId,omitempty" tf:"resource_preset_id,omitempty"` @@ -1913,8 +2346,7 @@ type ShardResourcesParameters struct { // +kubebuilder:validation:Optional DiskSize *float64 `json:"diskSize,omitempty" tf:"disk_size,omitempty"` - // Type of the storage of ZooKeeper hosts. - // For more information see the official documentation. + // Type of the storage of ZooKeeper hosts. For more information see the official documentation. // +kubebuilder:validation:Optional DiskTypeID *string `json:"diskTypeId,omitempty" tf:"disk_type_id,omitempty"` @@ -1992,6 +2424,9 @@ type UserSettingsInitParameters struct { // Allows specifying LowCardinality modifier for types of small fixed size (8 or less) in CREATE TABLE statements. Enabling this may increase merge times and memory consumption. AllowSuspiciousLowCardinalityTypes *bool `json:"allowSuspiciousLowCardinalityTypes,omitempty" tf:"allow_suspicious_low_cardinality_types,omitempty"` + // enables legacy ClickHouse server behaviour in ANY INNER|LEFT JOIN operations. + AnyJoinDistinctRightTableKeys *bool `json:"anyJoinDistinctRightTableKeys,omitempty" tf:"any_join_distinct_right_table_keys,omitempty"` + // Enables asynchronous inserts. Disabled by default. AsyncInsert *bool `json:"asyncInsert,omitempty" tf:"async_insert,omitempty"` @@ -2007,8 +2442,7 @@ type UserSettingsInitParameters struct { // The maximum number of threads for background data parsing and insertion. If the parameter is set to 0, asynchronous insertions are disabled. Default value: 16. AsyncInsertThreads *float64 `json:"asyncInsertThreads,omitempty" tf:"async_insert_threads,omitempty"` - // Cancels HTTP read-only queries (e.g. SELECT) when a client closes the connection without waiting for the response. - // Default value: false. + // Cancels HTTP read-only queries (e.g. SELECT) when a client closes the connection without waiting for the response. Default value: false. CancelHTTPReadonlyQueriesOnClientClose *bool `json:"cancelHttpReadonlyQueriesOnClientClose,omitempty" tf:"cancel_http_readonly_queries_on_client_close,omitempty"` // Enable compilation of queries. @@ -2026,6 +2460,15 @@ type UserSettingsInitParameters struct { // Specifies which of the uniq* functions should be used to perform the COUNT(DISTINCT …) construction. CountDistinctImplementation *string `json:"countDistinctImplementation,omitempty" tf:"count_distinct_implementation,omitempty"` + // Allows choosing a parser of the text representation of date and time, one of: best_effort, basic, best_effort_us. Default value: basic. Cloud default value: best_effort. + DateTimeInputFormat *string `json:"dateTimeInputFormat,omitempty" tf:"date_time_input_format,omitempty"` + + // Allows choosing different output formats of the text representation of date and time, one of: simple, iso, unix_timestamp. Default value: simple. + DateTimeOutputFormat *string `json:"dateTimeOutputFormat,omitempty" tf:"date_time_output_format,omitempty"` + + // Enables or disables the deduplication check for materialized views that receive data from Replicated* tables. + DeduplicateBlocksInDependentMaterializedViews *bool `json:"deduplicateBlocksInDependentMaterializedViews,omitempty" tf:"deduplicate_blocks_in_dependent_materialized_views,omitempty"` + // Sets behaviour on overflow when using DISTINCT. Possible values: DistinctOverflowMode *string `json:"distinctOverflowMode,omitempty" tf:"distinct_overflow_mode,omitempty"` @@ -2056,6 +2499,12 @@ type UserSettingsInitParameters struct { // Disables query execution if indexing by the primary key is not possible. ForcePrimaryKey *bool `json:"forcePrimaryKey,omitempty" tf:"force_primary_key,omitempty"` + // Regular expression (for Regexp format). + FormatRegexp *string `json:"formatRegexp,omitempty" tf:"format_regexp,omitempty"` + + // Skip lines unmatched by regular expression. + FormatRegexpSkipUnmatched *bool `json:"formatRegexpSkipUnmatched,omitempty" tf:"format_regexp_skip_unmatched,omitempty"` + // Sets behaviour on overflow while GROUP BY operation. Possible values: GroupByOverflowMode *string `json:"groupByOverflowMode,omitempty" tf:"group_by_overflow_mode,omitempty"` @@ -2077,18 +2526,30 @@ type UserSettingsInitParameters struct { // Timeout for HTTP connection in milliseconds. HTTPSendTimeout *float64 `json:"httpSendTimeout,omitempty" tf:"http_send_timeout,omitempty"` + // Connection timeout for establishing connection with replica for Hedged requests. Default value: 50 milliseconds. + HedgedConnectionTimeoutMs *float64 `json:"hedgedConnectionTimeoutMs,omitempty" tf:"hedged_connection_timeout_ms,omitempty"` + + // Timeout to close idle TCP connections after specified number of seconds. Default value: 3600 seconds. + IdleConnectionTimeout *float64 `json:"idleConnectionTimeout,omitempty" tf:"idle_connection_timeout,omitempty"` + // When performing INSERT queries, replace omitted input column values with default values of the respective columns. InputFormatDefaultsForOmittedFields *bool `json:"inputFormatDefaultsForOmittedFields,omitempty" tf:"input_format_defaults_for_omitted_fields,omitempty"` // Enables or disables the insertion of JSON data with nested objects. InputFormatImportNestedJSON *bool `json:"inputFormatImportNestedJson,omitempty" tf:"input_format_import_nested_json,omitempty"` + // Enables or disables the initialization of NULL fields with default values, if data type of these fields is not nullable. + InputFormatNullAsDefault *bool `json:"inputFormatNullAsDefault,omitempty" tf:"input_format_null_as_default,omitempty"` + // Enables or disables order-preserving parallel parsing of data formats. Supported only for TSV, TKSV, CSV and JSONEachRow formats. InputFormatParallelParsing *bool `json:"inputFormatParallelParsing,omitempty" tf:"input_format_parallel_parsing,omitempty"` // Enables or disables the full SQL parser if the fast stream parser can’t parse the data. InputFormatValuesInterpretExpressions *bool `json:"inputFormatValuesInterpretExpressions,omitempty" tf:"input_format_values_interpret_expressions,omitempty"` + // Enables or disables checking the column order when inserting data. + InputFormatWithNamesUseHeader *bool `json:"inputFormatWithNamesUseHeader,omitempty" tf:"input_format_with_names_use_header,omitempty"` + // The setting sets the maximum number of retries for ClickHouse Keeper (or ZooKeeper) requests during insert into replicated MergeTree. Only Keeper requests which failed due to network error, Keeper session timeout, or request timeout are considered for retries. InsertKeeperMaxRetries *float64 `json:"insertKeeperMaxRetries,omitempty" tf:"insert_keeper_max_retries,omitempty"` @@ -2098,9 +2559,15 @@ type UserSettingsInitParameters struct { // Enables the quorum writes. InsertQuorum *float64 `json:"insertQuorum,omitempty" tf:"insert_quorum,omitempty"` + // Enables or disables parallelism for quorum INSERT queries. + InsertQuorumParallel *bool `json:"insertQuorumParallel,omitempty" tf:"insert_quorum_parallel,omitempty"` + // Write to a quorum timeout in milliseconds. InsertQuorumTimeout *float64 `json:"insertQuorumTimeout,omitempty" tf:"insert_quorum_timeout,omitempty"` + // Specifies which JOIN algorithm is used. Possible values: + JoinAlgorithm []*string `json:"joinAlgorithm,omitempty" tf:"join_algorithm,omitempty"` + // Sets behaviour on overflow in JOIN. Possible values: JoinOverflowMode *string `json:"joinOverflowMode,omitempty" tf:"join_overflow_mode,omitempty"` @@ -2110,9 +2577,15 @@ type UserSettingsInitParameters struct { // Require aliases for subselects and table functions in FROM that more than one table is present. JoinedSubqueryRequiresAlias *bool `json:"joinedSubqueryRequiresAlias,omitempty" tf:"joined_subquery_requires_alias,omitempty"` + // Specifies the algorithm of replicas selection that is used for distributed query processing, one of: random, nearest_hostname, in_order, first_or_random, round_robin. Default value: random. + LoadBalancing *string `json:"loadBalancing,omitempty" tf:"load_balancing,omitempty"` + // Method of reading data from local filesystem. Possible values: LocalFilesystemReadMethod *string `json:"localFilesystemReadMethod,omitempty" tf:"local_filesystem_read_method,omitempty"` + // Setting up query threads logging. Query threads log into the system.query_thread_log table. This setting has effect only when log_queries is true. Queries’ threads run by ClickHouse with this setup are logged according to the rules in the query_thread_log server configuration parameter. Default value: true. + LogQueryThreads *bool `json:"logQueryThreads,omitempty" tf:"log_query_threads,omitempty"` + // Allows or restricts using the LowCardinality data type with the Native format. LowCardinalityAllowInNativeFormat *bool `json:"lowCardinalityAllowInNativeFormat,omitempty" tf:"low_cardinality_allow_in_native_format,omitempty"` @@ -2170,6 +2643,9 @@ type UserSettingsInitParameters struct { // The size of blocks (in a count of rows) to form for insertion into a table. MaxInsertBlockSize *float64 `json:"maxInsertBlockSize,omitempty" tf:"max_insert_block_size,omitempty"` + // The maximum number of threads to execute the INSERT SELECT query. Default value: 0. + MaxInsertThreads *float64 `json:"maxInsertThreads,omitempty" tf:"max_insert_threads,omitempty"` + // Limits the maximum memory usage (in bytes) for processing queries on a single server. MaxMemoryUsage *float64 `json:"maxMemoryUsage,omitempty" tf:"max_memory_usage,omitempty"` @@ -2245,7 +2721,7 @@ type UserSettingsInitParameters struct { // Collect random allocations and deallocations and write them into system.trace_log with 'MemorySample' trace_type. The probability is for every alloc/free regardless to the size of the allocation. Possible values: from 0 to 1. Default: 0. MemoryProfilerSampleProbability *float64 `json:"memoryProfilerSampleProbability,omitempty" tf:"memory_profiler_sample_probability,omitempty"` - // Memory profiler step (in bytes). If the next query step requires more memory than this parameter specifies, the memory profiler collects the allocating stack trace. Values lower than a few megabytes slow down query processing. Default value: 4194304 (4 MB). Zero means disabled memory profiler. + // Memory profiler step (in bytes). If the next query step requires more memory than this parameter specifies, the memory profiler collects the allocating stack trace. Values lower than a few megabytes slow down query processing. Default value: 4194304 (4 MB). Zero means disabled memory profiler. MemoryProfilerStep *float64 `json:"memoryProfilerStep,omitempty" tf:"memory_profiler_step,omitempty"` // Maximum time thread will wait for memory to be freed in the case of memory overcommit on a user level. If the timeout is reached and memory is not freed, an exception is thrown. @@ -2290,6 +2766,9 @@ type UserSettingsInitParameters struct { // Enables +nan, -nan, +inf, -inf outputs in JSON output format. OutputFormatJSONQuoteDenormals *bool `json:"outputFormatJsonQuoteDenormals,omitempty" tf:"output_format_json_quote_denormals,omitempty"` + // Enables/disables preferable using the localhost replica when processing distributed queries. Default value: true. + PreferLocalhostReplica *bool `json:"preferLocalhostReplica,omitempty" tf:"prefer_localhost_replica,omitempty"` + // Query priority. Priority *float64 `json:"priority,omitempty" tf:"priority,omitempty"` @@ -2332,8 +2811,7 @@ type UserSettingsInitParameters struct { // Sets behaviour on overflow while sort. Possible values: SortOverflowMode *string `json:"sortOverflowMode,omitempty" tf:"sort_overflow_mode,omitempty"` - // Timeout (in seconds) between checks of execution speed. It is checked that execution speed is not less that specified in min_execution_speed parameter. - // Must be at least 1000. + // Timeout (in seconds) between checks of execution speed. It is checked that execution speed is not less that specified in min_execution_speed parameter. Must be at least 1000. TimeoutBeforeCheckingExecutionSpeed *float64 `json:"timeoutBeforeCheckingExecutionSpeed,omitempty" tf:"timeout_before_checking_execution_speed,omitempty"` // Sets behaviour on overflow. Possible values: @@ -2345,6 +2823,9 @@ type UserSettingsInitParameters struct { // Enables equality of NULL values for IN operator. TransformNullIn *bool `json:"transformNullIn,omitempty" tf:"transform_null_in,omitempty"` + // Enables hedged requests logic for remote queries. It allows to establish many connections with different replicas for query. New connection is enabled in case existent connection(s) with replica(s) were not established within hedged_connection_timeout or no data was received within receive_data_timeout. Query uses the first connection which send non empty progress packet (or data packet, if allow_changing_replica_until_first_data_packet); other connections are cancelled. Queries with max_parallel_replicas > 1 are supported. Default value: true. + UseHedgedRequests *bool `json:"useHedgedRequests,omitempty" tf:"use_hedged_requests,omitempty"` + // Whether to use a cache of uncompressed blocks. UseUncompressedCache *bool `json:"useUncompressedCache,omitempty" tf:"use_uncompressed_cache,omitempty"` @@ -2369,6 +2850,9 @@ type UserSettingsObservation struct { // Allows specifying LowCardinality modifier for types of small fixed size (8 or less) in CREATE TABLE statements. Enabling this may increase merge times and memory consumption. AllowSuspiciousLowCardinalityTypes *bool `json:"allowSuspiciousLowCardinalityTypes,omitempty" tf:"allow_suspicious_low_cardinality_types,omitempty"` + // enables legacy ClickHouse server behaviour in ANY INNER|LEFT JOIN operations. + AnyJoinDistinctRightTableKeys *bool `json:"anyJoinDistinctRightTableKeys,omitempty" tf:"any_join_distinct_right_table_keys,omitempty"` + // Enables asynchronous inserts. Disabled by default. AsyncInsert *bool `json:"asyncInsert,omitempty" tf:"async_insert,omitempty"` @@ -2384,8 +2868,7 @@ type UserSettingsObservation struct { // The maximum number of threads for background data parsing and insertion. If the parameter is set to 0, asynchronous insertions are disabled. Default value: 16. AsyncInsertThreads *float64 `json:"asyncInsertThreads,omitempty" tf:"async_insert_threads,omitempty"` - // Cancels HTTP read-only queries (e.g. SELECT) when a client closes the connection without waiting for the response. - // Default value: false. + // Cancels HTTP read-only queries (e.g. SELECT) when a client closes the connection without waiting for the response. Default value: false. CancelHTTPReadonlyQueriesOnClientClose *bool `json:"cancelHttpReadonlyQueriesOnClientClose,omitempty" tf:"cancel_http_readonly_queries_on_client_close,omitempty"` // Enable compilation of queries. @@ -2403,6 +2886,15 @@ type UserSettingsObservation struct { // Specifies which of the uniq* functions should be used to perform the COUNT(DISTINCT …) construction. CountDistinctImplementation *string `json:"countDistinctImplementation,omitempty" tf:"count_distinct_implementation,omitempty"` + // Allows choosing a parser of the text representation of date and time, one of: best_effort, basic, best_effort_us. Default value: basic. Cloud default value: best_effort. + DateTimeInputFormat *string `json:"dateTimeInputFormat,omitempty" tf:"date_time_input_format,omitempty"` + + // Allows choosing different output formats of the text representation of date and time, one of: simple, iso, unix_timestamp. Default value: simple. + DateTimeOutputFormat *string `json:"dateTimeOutputFormat,omitempty" tf:"date_time_output_format,omitempty"` + + // Enables or disables the deduplication check for materialized views that receive data from Replicated* tables. + DeduplicateBlocksInDependentMaterializedViews *bool `json:"deduplicateBlocksInDependentMaterializedViews,omitempty" tf:"deduplicate_blocks_in_dependent_materialized_views,omitempty"` + // Sets behaviour on overflow when using DISTINCT. Possible values: DistinctOverflowMode *string `json:"distinctOverflowMode,omitempty" tf:"distinct_overflow_mode,omitempty"` @@ -2433,6 +2925,12 @@ type UserSettingsObservation struct { // Disables query execution if indexing by the primary key is not possible. ForcePrimaryKey *bool `json:"forcePrimaryKey,omitempty" tf:"force_primary_key,omitempty"` + // Regular expression (for Regexp format). + FormatRegexp *string `json:"formatRegexp,omitempty" tf:"format_regexp,omitempty"` + + // Skip lines unmatched by regular expression. + FormatRegexpSkipUnmatched *bool `json:"formatRegexpSkipUnmatched,omitempty" tf:"format_regexp_skip_unmatched,omitempty"` + // Sets behaviour on overflow while GROUP BY operation. Possible values: GroupByOverflowMode *string `json:"groupByOverflowMode,omitempty" tf:"group_by_overflow_mode,omitempty"` @@ -2454,18 +2952,30 @@ type UserSettingsObservation struct { // Timeout for HTTP connection in milliseconds. HTTPSendTimeout *float64 `json:"httpSendTimeout,omitempty" tf:"http_send_timeout,omitempty"` + // Connection timeout for establishing connection with replica for Hedged requests. Default value: 50 milliseconds. + HedgedConnectionTimeoutMs *float64 `json:"hedgedConnectionTimeoutMs,omitempty" tf:"hedged_connection_timeout_ms,omitempty"` + + // Timeout to close idle TCP connections after specified number of seconds. Default value: 3600 seconds. + IdleConnectionTimeout *float64 `json:"idleConnectionTimeout,omitempty" tf:"idle_connection_timeout,omitempty"` + // When performing INSERT queries, replace omitted input column values with default values of the respective columns. InputFormatDefaultsForOmittedFields *bool `json:"inputFormatDefaultsForOmittedFields,omitempty" tf:"input_format_defaults_for_omitted_fields,omitempty"` // Enables or disables the insertion of JSON data with nested objects. InputFormatImportNestedJSON *bool `json:"inputFormatImportNestedJson,omitempty" tf:"input_format_import_nested_json,omitempty"` + // Enables or disables the initialization of NULL fields with default values, if data type of these fields is not nullable. + InputFormatNullAsDefault *bool `json:"inputFormatNullAsDefault,omitempty" tf:"input_format_null_as_default,omitempty"` + // Enables or disables order-preserving parallel parsing of data formats. Supported only for TSV, TKSV, CSV and JSONEachRow formats. InputFormatParallelParsing *bool `json:"inputFormatParallelParsing,omitempty" tf:"input_format_parallel_parsing,omitempty"` // Enables or disables the full SQL parser if the fast stream parser can’t parse the data. InputFormatValuesInterpretExpressions *bool `json:"inputFormatValuesInterpretExpressions,omitempty" tf:"input_format_values_interpret_expressions,omitempty"` + // Enables or disables checking the column order when inserting data. + InputFormatWithNamesUseHeader *bool `json:"inputFormatWithNamesUseHeader,omitempty" tf:"input_format_with_names_use_header,omitempty"` + // The setting sets the maximum number of retries for ClickHouse Keeper (or ZooKeeper) requests during insert into replicated MergeTree. Only Keeper requests which failed due to network error, Keeper session timeout, or request timeout are considered for retries. InsertKeeperMaxRetries *float64 `json:"insertKeeperMaxRetries,omitempty" tf:"insert_keeper_max_retries,omitempty"` @@ -2475,9 +2985,15 @@ type UserSettingsObservation struct { // Enables the quorum writes. InsertQuorum *float64 `json:"insertQuorum,omitempty" tf:"insert_quorum,omitempty"` + // Enables or disables parallelism for quorum INSERT queries. + InsertQuorumParallel *bool `json:"insertQuorumParallel,omitempty" tf:"insert_quorum_parallel,omitempty"` + // Write to a quorum timeout in milliseconds. InsertQuorumTimeout *float64 `json:"insertQuorumTimeout,omitempty" tf:"insert_quorum_timeout,omitempty"` + // Specifies which JOIN algorithm is used. Possible values: + JoinAlgorithm []*string `json:"joinAlgorithm,omitempty" tf:"join_algorithm,omitempty"` + // Sets behaviour on overflow in JOIN. Possible values: JoinOverflowMode *string `json:"joinOverflowMode,omitempty" tf:"join_overflow_mode,omitempty"` @@ -2487,9 +3003,15 @@ type UserSettingsObservation struct { // Require aliases for subselects and table functions in FROM that more than one table is present. JoinedSubqueryRequiresAlias *bool `json:"joinedSubqueryRequiresAlias,omitempty" tf:"joined_subquery_requires_alias,omitempty"` + // Specifies the algorithm of replicas selection that is used for distributed query processing, one of: random, nearest_hostname, in_order, first_or_random, round_robin. Default value: random. + LoadBalancing *string `json:"loadBalancing,omitempty" tf:"load_balancing,omitempty"` + // Method of reading data from local filesystem. Possible values: LocalFilesystemReadMethod *string `json:"localFilesystemReadMethod,omitempty" tf:"local_filesystem_read_method,omitempty"` + // Setting up query threads logging. Query threads log into the system.query_thread_log table. This setting has effect only when log_queries is true. Queries’ threads run by ClickHouse with this setup are logged according to the rules in the query_thread_log server configuration parameter. Default value: true. + LogQueryThreads *bool `json:"logQueryThreads,omitempty" tf:"log_query_threads,omitempty"` + // Allows or restricts using the LowCardinality data type with the Native format. LowCardinalityAllowInNativeFormat *bool `json:"lowCardinalityAllowInNativeFormat,omitempty" tf:"low_cardinality_allow_in_native_format,omitempty"` @@ -2547,6 +3069,9 @@ type UserSettingsObservation struct { // The size of blocks (in a count of rows) to form for insertion into a table. MaxInsertBlockSize *float64 `json:"maxInsertBlockSize,omitempty" tf:"max_insert_block_size,omitempty"` + // The maximum number of threads to execute the INSERT SELECT query. Default value: 0. + MaxInsertThreads *float64 `json:"maxInsertThreads,omitempty" tf:"max_insert_threads,omitempty"` + // Limits the maximum memory usage (in bytes) for processing queries on a single server. MaxMemoryUsage *float64 `json:"maxMemoryUsage,omitempty" tf:"max_memory_usage,omitempty"` @@ -2622,7 +3147,7 @@ type UserSettingsObservation struct { // Collect random allocations and deallocations and write them into system.trace_log with 'MemorySample' trace_type. The probability is for every alloc/free regardless to the size of the allocation. Possible values: from 0 to 1. Default: 0. MemoryProfilerSampleProbability *float64 `json:"memoryProfilerSampleProbability,omitempty" tf:"memory_profiler_sample_probability,omitempty"` - // Memory profiler step (in bytes). If the next query step requires more memory than this parameter specifies, the memory profiler collects the allocating stack trace. Values lower than a few megabytes slow down query processing. Default value: 4194304 (4 MB). Zero means disabled memory profiler. + // Memory profiler step (in bytes). If the next query step requires more memory than this parameter specifies, the memory profiler collects the allocating stack trace. Values lower than a few megabytes slow down query processing. Default value: 4194304 (4 MB). Zero means disabled memory profiler. MemoryProfilerStep *float64 `json:"memoryProfilerStep,omitempty" tf:"memory_profiler_step,omitempty"` // Maximum time thread will wait for memory to be freed in the case of memory overcommit on a user level. If the timeout is reached and memory is not freed, an exception is thrown. @@ -2667,6 +3192,9 @@ type UserSettingsObservation struct { // Enables +nan, -nan, +inf, -inf outputs in JSON output format. OutputFormatJSONQuoteDenormals *bool `json:"outputFormatJsonQuoteDenormals,omitempty" tf:"output_format_json_quote_denormals,omitempty"` + // Enables/disables preferable using the localhost replica when processing distributed queries. Default value: true. + PreferLocalhostReplica *bool `json:"preferLocalhostReplica,omitempty" tf:"prefer_localhost_replica,omitempty"` + // Query priority. Priority *float64 `json:"priority,omitempty" tf:"priority,omitempty"` @@ -2709,8 +3237,7 @@ type UserSettingsObservation struct { // Sets behaviour on overflow while sort. Possible values: SortOverflowMode *string `json:"sortOverflowMode,omitempty" tf:"sort_overflow_mode,omitempty"` - // Timeout (in seconds) between checks of execution speed. It is checked that execution speed is not less that specified in min_execution_speed parameter. - // Must be at least 1000. + // Timeout (in seconds) between checks of execution speed. It is checked that execution speed is not less that specified in min_execution_speed parameter. Must be at least 1000. TimeoutBeforeCheckingExecutionSpeed *float64 `json:"timeoutBeforeCheckingExecutionSpeed,omitempty" tf:"timeout_before_checking_execution_speed,omitempty"` // Sets behaviour on overflow. Possible values: @@ -2722,6 +3249,9 @@ type UserSettingsObservation struct { // Enables equality of NULL values for IN operator. TransformNullIn *bool `json:"transformNullIn,omitempty" tf:"transform_null_in,omitempty"` + // Enables hedged requests logic for remote queries. It allows to establish many connections with different replicas for query. New connection is enabled in case existent connection(s) with replica(s) were not established within hedged_connection_timeout or no data was received within receive_data_timeout. Query uses the first connection which send non empty progress packet (or data packet, if allow_changing_replica_until_first_data_packet); other connections are cancelled. Queries with max_parallel_replicas > 1 are supported. Default value: true. + UseHedgedRequests *bool `json:"useHedgedRequests,omitempty" tf:"use_hedged_requests,omitempty"` + // Whether to use a cache of uncompressed blocks. UseUncompressedCache *bool `json:"useUncompressedCache,omitempty" tf:"use_uncompressed_cache,omitempty"` @@ -2750,6 +3280,10 @@ type UserSettingsParameters struct { // +kubebuilder:validation:Optional AllowSuspiciousLowCardinalityTypes *bool `json:"allowSuspiciousLowCardinalityTypes,omitempty" tf:"allow_suspicious_low_cardinality_types,omitempty"` + // enables legacy ClickHouse server behaviour in ANY INNER|LEFT JOIN operations. + // +kubebuilder:validation:Optional + AnyJoinDistinctRightTableKeys *bool `json:"anyJoinDistinctRightTableKeys,omitempty" tf:"any_join_distinct_right_table_keys,omitempty"` + // Enables asynchronous inserts. Disabled by default. // +kubebuilder:validation:Optional AsyncInsert *bool `json:"asyncInsert,omitempty" tf:"async_insert,omitempty"` @@ -2770,8 +3304,7 @@ type UserSettingsParameters struct { // +kubebuilder:validation:Optional AsyncInsertThreads *float64 `json:"asyncInsertThreads,omitempty" tf:"async_insert_threads,omitempty"` - // Cancels HTTP read-only queries (e.g. SELECT) when a client closes the connection without waiting for the response. - // Default value: false. + // Cancels HTTP read-only queries (e.g. SELECT) when a client closes the connection without waiting for the response. Default value: false. // +kubebuilder:validation:Optional CancelHTTPReadonlyQueriesOnClientClose *bool `json:"cancelHttpReadonlyQueriesOnClientClose,omitempty" tf:"cancel_http_readonly_queries_on_client_close,omitempty"` @@ -2795,6 +3328,18 @@ type UserSettingsParameters struct { // +kubebuilder:validation:Optional CountDistinctImplementation *string `json:"countDistinctImplementation,omitempty" tf:"count_distinct_implementation,omitempty"` + // Allows choosing a parser of the text representation of date and time, one of: best_effort, basic, best_effort_us. Default value: basic. Cloud default value: best_effort. + // +kubebuilder:validation:Optional + DateTimeInputFormat *string `json:"dateTimeInputFormat,omitempty" tf:"date_time_input_format,omitempty"` + + // Allows choosing different output formats of the text representation of date and time, one of: simple, iso, unix_timestamp. Default value: simple. + // +kubebuilder:validation:Optional + DateTimeOutputFormat *string `json:"dateTimeOutputFormat,omitempty" tf:"date_time_output_format,omitempty"` + + // Enables or disables the deduplication check for materialized views that receive data from Replicated* tables. + // +kubebuilder:validation:Optional + DeduplicateBlocksInDependentMaterializedViews *bool `json:"deduplicateBlocksInDependentMaterializedViews,omitempty" tf:"deduplicate_blocks_in_dependent_materialized_views,omitempty"` + // Sets behaviour on overflow when using DISTINCT. Possible values: // +kubebuilder:validation:Optional DistinctOverflowMode *string `json:"distinctOverflowMode,omitempty" tf:"distinct_overflow_mode,omitempty"` @@ -2835,6 +3380,14 @@ type UserSettingsParameters struct { // +kubebuilder:validation:Optional ForcePrimaryKey *bool `json:"forcePrimaryKey,omitempty" tf:"force_primary_key,omitempty"` + // Regular expression (for Regexp format). + // +kubebuilder:validation:Optional + FormatRegexp *string `json:"formatRegexp,omitempty" tf:"format_regexp,omitempty"` + + // Skip lines unmatched by regular expression. + // +kubebuilder:validation:Optional + FormatRegexpSkipUnmatched *bool `json:"formatRegexpSkipUnmatched,omitempty" tf:"format_regexp_skip_unmatched,omitempty"` + // Sets behaviour on overflow while GROUP BY operation. Possible values: // +kubebuilder:validation:Optional GroupByOverflowMode *string `json:"groupByOverflowMode,omitempty" tf:"group_by_overflow_mode,omitempty"` @@ -2863,6 +3416,14 @@ type UserSettingsParameters struct { // +kubebuilder:validation:Optional HTTPSendTimeout *float64 `json:"httpSendTimeout,omitempty" tf:"http_send_timeout,omitempty"` + // Connection timeout for establishing connection with replica for Hedged requests. Default value: 50 milliseconds. + // +kubebuilder:validation:Optional + HedgedConnectionTimeoutMs *float64 `json:"hedgedConnectionTimeoutMs,omitempty" tf:"hedged_connection_timeout_ms,omitempty"` + + // Timeout to close idle TCP connections after specified number of seconds. Default value: 3600 seconds. + // +kubebuilder:validation:Optional + IdleConnectionTimeout *float64 `json:"idleConnectionTimeout,omitempty" tf:"idle_connection_timeout,omitempty"` + // When performing INSERT queries, replace omitted input column values with default values of the respective columns. // +kubebuilder:validation:Optional InputFormatDefaultsForOmittedFields *bool `json:"inputFormatDefaultsForOmittedFields,omitempty" tf:"input_format_defaults_for_omitted_fields,omitempty"` @@ -2871,6 +3432,10 @@ type UserSettingsParameters struct { // +kubebuilder:validation:Optional InputFormatImportNestedJSON *bool `json:"inputFormatImportNestedJson,omitempty" tf:"input_format_import_nested_json,omitempty"` + // Enables or disables the initialization of NULL fields with default values, if data type of these fields is not nullable. + // +kubebuilder:validation:Optional + InputFormatNullAsDefault *bool `json:"inputFormatNullAsDefault,omitempty" tf:"input_format_null_as_default,omitempty"` + // Enables or disables order-preserving parallel parsing of data formats. Supported only for TSV, TKSV, CSV and JSONEachRow formats. // +kubebuilder:validation:Optional InputFormatParallelParsing *bool `json:"inputFormatParallelParsing,omitempty" tf:"input_format_parallel_parsing,omitempty"` @@ -2879,6 +3444,10 @@ type UserSettingsParameters struct { // +kubebuilder:validation:Optional InputFormatValuesInterpretExpressions *bool `json:"inputFormatValuesInterpretExpressions,omitempty" tf:"input_format_values_interpret_expressions,omitempty"` + // Enables or disables checking the column order when inserting data. + // +kubebuilder:validation:Optional + InputFormatWithNamesUseHeader *bool `json:"inputFormatWithNamesUseHeader,omitempty" tf:"input_format_with_names_use_header,omitempty"` + // The setting sets the maximum number of retries for ClickHouse Keeper (or ZooKeeper) requests during insert into replicated MergeTree. Only Keeper requests which failed due to network error, Keeper session timeout, or request timeout are considered for retries. // +kubebuilder:validation:Optional InsertKeeperMaxRetries *float64 `json:"insertKeeperMaxRetries,omitempty" tf:"insert_keeper_max_retries,omitempty"` @@ -2891,10 +3460,18 @@ type UserSettingsParameters struct { // +kubebuilder:validation:Optional InsertQuorum *float64 `json:"insertQuorum,omitempty" tf:"insert_quorum,omitempty"` + // Enables or disables parallelism for quorum INSERT queries. + // +kubebuilder:validation:Optional + InsertQuorumParallel *bool `json:"insertQuorumParallel,omitempty" tf:"insert_quorum_parallel,omitempty"` + // Write to a quorum timeout in milliseconds. // +kubebuilder:validation:Optional InsertQuorumTimeout *float64 `json:"insertQuorumTimeout,omitempty" tf:"insert_quorum_timeout,omitempty"` + // Specifies which JOIN algorithm is used. Possible values: + // +kubebuilder:validation:Optional + JoinAlgorithm []*string `json:"joinAlgorithm,omitempty" tf:"join_algorithm,omitempty"` + // Sets behaviour on overflow in JOIN. Possible values: // +kubebuilder:validation:Optional JoinOverflowMode *string `json:"joinOverflowMode,omitempty" tf:"join_overflow_mode,omitempty"` @@ -2907,10 +3484,18 @@ type UserSettingsParameters struct { // +kubebuilder:validation:Optional JoinedSubqueryRequiresAlias *bool `json:"joinedSubqueryRequiresAlias,omitempty" tf:"joined_subquery_requires_alias,omitempty"` + // Specifies the algorithm of replicas selection that is used for distributed query processing, one of: random, nearest_hostname, in_order, first_or_random, round_robin. Default value: random. + // +kubebuilder:validation:Optional + LoadBalancing *string `json:"loadBalancing,omitempty" tf:"load_balancing,omitempty"` + // Method of reading data from local filesystem. Possible values: // +kubebuilder:validation:Optional LocalFilesystemReadMethod *string `json:"localFilesystemReadMethod,omitempty" tf:"local_filesystem_read_method,omitempty"` + // Setting up query threads logging. Query threads log into the system.query_thread_log table. This setting has effect only when log_queries is true. Queries’ threads run by ClickHouse with this setup are logged according to the rules in the query_thread_log server configuration parameter. Default value: true. + // +kubebuilder:validation:Optional + LogQueryThreads *bool `json:"logQueryThreads,omitempty" tf:"log_query_threads,omitempty"` + // Allows or restricts using the LowCardinality data type with the Native format. // +kubebuilder:validation:Optional LowCardinalityAllowInNativeFormat *bool `json:"lowCardinalityAllowInNativeFormat,omitempty" tf:"low_cardinality_allow_in_native_format,omitempty"` @@ -2987,6 +3572,10 @@ type UserSettingsParameters struct { // +kubebuilder:validation:Optional MaxInsertBlockSize *float64 `json:"maxInsertBlockSize,omitempty" tf:"max_insert_block_size,omitempty"` + // The maximum number of threads to execute the INSERT SELECT query. Default value: 0. + // +kubebuilder:validation:Optional + MaxInsertThreads *float64 `json:"maxInsertThreads,omitempty" tf:"max_insert_threads,omitempty"` + // Limits the maximum memory usage (in bytes) for processing queries on a single server. // +kubebuilder:validation:Optional MaxMemoryUsage *float64 `json:"maxMemoryUsage,omitempty" tf:"max_memory_usage,omitempty"` @@ -3087,7 +3676,7 @@ type UserSettingsParameters struct { // +kubebuilder:validation:Optional MemoryProfilerSampleProbability *float64 `json:"memoryProfilerSampleProbability,omitempty" tf:"memory_profiler_sample_probability,omitempty"` - // Memory profiler step (in bytes). If the next query step requires more memory than this parameter specifies, the memory profiler collects the allocating stack trace. Values lower than a few megabytes slow down query processing. Default value: 4194304 (4 MB). Zero means disabled memory profiler. + // Memory profiler step (in bytes). If the next query step requires more memory than this parameter specifies, the memory profiler collects the allocating stack trace. Values lower than a few megabytes slow down query processing. Default value: 4194304 (4 MB). Zero means disabled memory profiler. // +kubebuilder:validation:Optional MemoryProfilerStep *float64 `json:"memoryProfilerStep,omitempty" tf:"memory_profiler_step,omitempty"` @@ -3147,6 +3736,10 @@ type UserSettingsParameters struct { // +kubebuilder:validation:Optional OutputFormatJSONQuoteDenormals *bool `json:"outputFormatJsonQuoteDenormals,omitempty" tf:"output_format_json_quote_denormals,omitempty"` + // Enables/disables preferable using the localhost replica when processing distributed queries. Default value: true. + // +kubebuilder:validation:Optional + PreferLocalhostReplica *bool `json:"preferLocalhostReplica,omitempty" tf:"prefer_localhost_replica,omitempty"` + // Query priority. // +kubebuilder:validation:Optional Priority *float64 `json:"priority,omitempty" tf:"priority,omitempty"` @@ -3203,8 +3796,7 @@ type UserSettingsParameters struct { // +kubebuilder:validation:Optional SortOverflowMode *string `json:"sortOverflowMode,omitempty" tf:"sort_overflow_mode,omitempty"` - // Timeout (in seconds) between checks of execution speed. It is checked that execution speed is not less that specified in min_execution_speed parameter. - // Must be at least 1000. + // Timeout (in seconds) between checks of execution speed. It is checked that execution speed is not less that specified in min_execution_speed parameter. Must be at least 1000. // +kubebuilder:validation:Optional TimeoutBeforeCheckingExecutionSpeed *float64 `json:"timeoutBeforeCheckingExecutionSpeed,omitempty" tf:"timeout_before_checking_execution_speed,omitempty"` @@ -3220,6 +3812,10 @@ type UserSettingsParameters struct { // +kubebuilder:validation:Optional TransformNullIn *bool `json:"transformNullIn,omitempty" tf:"transform_null_in,omitempty"` + // Enables hedged requests logic for remote queries. It allows to establish many connections with different replicas for query. New connection is enabled in case existent connection(s) with replica(s) were not established within hedged_connection_timeout or no data was received within receive_data_timeout. Query uses the first connection which send non empty progress packet (or data packet, if allow_changing_replica_until_first_data_packet); other connections are cancelled. Queries with max_parallel_replicas > 1 are supported. Default value: true. + // +kubebuilder:validation:Optional + UseHedgedRequests *bool `json:"useHedgedRequests,omitempty" tf:"use_hedged_requests,omitempty"` + // Whether to use a cache of uncompressed blocks. // +kubebuilder:validation:Optional UseUncompressedCache *bool `json:"useUncompressedCache,omitempty" tf:"use_uncompressed_cache,omitempty"` @@ -3257,8 +3853,7 @@ type ZookeeperResourcesInitParameters struct { // Volume of the storage available to a ZooKeeper host, in gigabytes. DiskSize *float64 `json:"diskSize,omitempty" tf:"disk_size,omitempty"` - // Type of the storage of ZooKeeper hosts. - // For more information see the official documentation. + // Type of the storage of ZooKeeper hosts. For more information see the official documentation. DiskTypeID *string `json:"diskTypeId,omitempty" tf:"disk_type_id,omitempty"` ResourcePresetID *string `json:"resourcePresetId,omitempty" tf:"resource_preset_id,omitempty"` @@ -3269,8 +3864,7 @@ type ZookeeperResourcesObservation struct { // Volume of the storage available to a ZooKeeper host, in gigabytes. DiskSize *float64 `json:"diskSize,omitempty" tf:"disk_size,omitempty"` - // Type of the storage of ZooKeeper hosts. - // For more information see the official documentation. + // Type of the storage of ZooKeeper hosts. For more information see the official documentation. DiskTypeID *string `json:"diskTypeId,omitempty" tf:"disk_type_id,omitempty"` ResourcePresetID *string `json:"resourcePresetId,omitempty" tf:"resource_preset_id,omitempty"` @@ -3282,8 +3876,7 @@ type ZookeeperResourcesParameters struct { // +kubebuilder:validation:Optional DiskSize *float64 `json:"diskSize,omitempty" tf:"disk_size,omitempty"` - // Type of the storage of ZooKeeper hosts. - // For more information see the official documentation. + // Type of the storage of ZooKeeper hosts. For more information see the official documentation. // +kubebuilder:validation:Optional DiskTypeID *string `json:"diskTypeId,omitempty" tf:"disk_type_id,omitempty"` diff --git a/apis/mdb/v1alpha1/zz_elasticsearchcluster_types.go b/apis/mdb/v1alpha1/zz_elasticsearchcluster_types.go index de4817c..a7e734b 100755 --- a/apis/mdb/v1alpha1/zz_elasticsearchcluster_types.go +++ b/apis/mdb/v1alpha1/zz_elasticsearchcluster_types.go @@ -141,8 +141,7 @@ type ElasticsearchClusterHostInitParameters struct { // User defined host name. Name *string `json:"name,omitempty" tf:"name,omitempty"` - // The ID of the subnet, to which the host belongs. The subnet must - // be a part of the network to which the cluster belongs. + // The ID of the subnet, to which the host belongs. The subnet must be a part of the network to which the cluster belongs. // +crossplane:generate:reference:type=github.com/tagesjump/provider-upjet-yc/apis/vpc/v1alpha1.Subnet SubnetID *string `json:"subnetId,omitempty" tf:"subnet_id,omitempty"` @@ -157,8 +156,7 @@ type ElasticsearchClusterHostInitParameters struct { // The type of the host to be deployed. Can be either DATA_NODE or MASTER_NODE. Type *string `json:"type,omitempty" tf:"type,omitempty"` - // The availability zone where the Elasticsearch host will be created. - // For more information see the official documentation. + // The availability zone where the Elasticsearch host will be created. For more information see the official documentation. Zone *string `json:"zone,omitempty" tf:"zone,omitempty"` } @@ -173,15 +171,13 @@ type ElasticsearchClusterHostObservation struct { // User defined host name. Name *string `json:"name,omitempty" tf:"name,omitempty"` - // The ID of the subnet, to which the host belongs. The subnet must - // be a part of the network to which the cluster belongs. + // The ID of the subnet, to which the host belongs. The subnet must be a part of the network to which the cluster belongs. SubnetID *string `json:"subnetId,omitempty" tf:"subnet_id,omitempty"` // The type of the host to be deployed. Can be either DATA_NODE or MASTER_NODE. Type *string `json:"type,omitempty" tf:"type,omitempty"` - // The availability zone where the Elasticsearch host will be created. - // For more information see the official documentation. + // The availability zone where the Elasticsearch host will be created. For more information see the official documentation. Zone *string `json:"zone,omitempty" tf:"zone,omitempty"` } @@ -195,8 +191,7 @@ type ElasticsearchClusterHostParameters struct { // +kubebuilder:validation:Optional Name *string `json:"name" tf:"name,omitempty"` - // The ID of the subnet, to which the host belongs. The subnet must - // be a part of the network to which the cluster belongs. + // The ID of the subnet, to which the host belongs. The subnet must be a part of the network to which the cluster belongs. // +crossplane:generate:reference:type=github.com/tagesjump/provider-upjet-yc/apis/vpc/v1alpha1.Subnet // +kubebuilder:validation:Optional SubnetID *string `json:"subnetId,omitempty" tf:"subnet_id,omitempty"` @@ -213,8 +208,7 @@ type ElasticsearchClusterHostParameters struct { // +kubebuilder:validation:Optional Type *string `json:"type" tf:"type,omitempty"` - // The availability zone where the Elasticsearch host will be created. - // For more information see the official documentation. + // The availability zone where the Elasticsearch host will be created. For more information see the official documentation. // +kubebuilder:validation:Optional Zone *string `json:"zone" tf:"zone,omitempty"` } @@ -224,7 +218,7 @@ type ElasticsearchClusterInitParameters struct { // Configuration of the Elasticsearch cluster. The structure is documented below. Config []ElasticsearchClusterConfigInitParameters `json:"config,omitempty" tf:"config,omitempty"` - // Inhibits deletion of the cluster. Can be either true or false. + // Inhibits deletion of the cluster. Can be either true or false. DeletionProtection *bool `json:"deletionProtection,omitempty" tf:"deletion_protection,omitempty"` // Description of the Elasticsearch cluster. @@ -342,7 +336,7 @@ type ElasticsearchClusterObservation struct { // Creation timestamp of the key. CreatedAt *string `json:"createdAt,omitempty" tf:"created_at,omitempty"` - // Inhibits deletion of the cluster. Can be either true or false. + // Inhibits deletion of the cluster. Can be either true or false. DeletionProtection *bool `json:"deletionProtection,omitempty" tf:"deletion_protection,omitempty"` // Description of the Elasticsearch cluster. @@ -354,8 +348,7 @@ type ElasticsearchClusterObservation struct { // The ID of the folder that the resource belongs to. If it is not provided, the default provider folder is used. FolderID *string `json:"folderId,omitempty" tf:"folder_id,omitempty"` - // Aggregated health of the cluster. Can be either ALIVE, DEGRADED, DEAD or HEALTH_UNKNOWN. - // For more information see health field of JSON representation in the official documentation. + // Aggregated health of the cluster. Can be either ALIVE, DEGRADED, DEAD or HEALTH_UNKNOWN. For more information see health field of JSON representation in the official documentation. Health *string `json:"health,omitempty" tf:"health,omitempty"` // A host of the Elasticsearch cluster. The structure is documented below. @@ -382,8 +375,7 @@ type ElasticsearchClusterObservation struct { // ID of the service account authorized for this cluster. ServiceAccountID *string `json:"serviceAccountId,omitempty" tf:"service_account_id,omitempty"` - // Status of the cluster. Can be either CREATING, STARTING, RUNNING, UPDATING, STOPPING, STOPPED, ERROR or STATUS_UNKNOWN. - // For more information see status field of JSON representation in the official documentation. + // Status of the cluster. Can be either CREATING, STARTING, RUNNING, UPDATING, STOPPING, STOPPED, ERROR or STATUS_UNKNOWN. For more information see status field of JSON representation in the official documentation. Status *string `json:"status,omitempty" tf:"status,omitempty"` } @@ -393,7 +385,7 @@ type ElasticsearchClusterParameters struct { // +kubebuilder:validation:Optional Config []ElasticsearchClusterConfigParameters `json:"config,omitempty" tf:"config,omitempty"` - // Inhibits deletion of the cluster. Can be either true or false. + // Inhibits deletion of the cluster. Can be either true or false. // +kubebuilder:validation:Optional DeletionProtection *bool `json:"deletionProtection,omitempty" tf:"deletion_protection,omitempty"` diff --git a/apis/mdb/v1alpha1/zz_generated.conversion_hubs.go b/apis/mdb/v1alpha1/zz_generated.conversion_hubs.go index 2d1f2b1..68e6f35 100755 --- a/apis/mdb/v1alpha1/zz_generated.conversion_hubs.go +++ b/apis/mdb/v1alpha1/zz_generated.conversion_hubs.go @@ -41,9 +41,6 @@ func (tr *MySQLDatabase) Hub() {} // Hub marks this type as a conversion hub. func (tr *MySQLUser) Hub() {} -// Hub marks this type as a conversion hub. -func (tr *OpensearchCluster) Hub() {} - // Hub marks this type as a conversion hub. func (tr *PostgresqlCluster) Hub() {} diff --git a/apis/mdb/v1alpha1/zz_generated.deepcopy.go b/apis/mdb/v1alpha1/zz_generated.deepcopy.go index 36a8134..7f59048 100644 --- a/apis/mdb/v1alpha1/zz_generated.deepcopy.go +++ b/apis/mdb/v1alpha1/zz_generated.deepcopy.go @@ -144,6 +144,96 @@ func (in *AccessParameters) DeepCopy() *AccessParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *AnalyzeAndVacuumInitParameters) DeepCopyInto(out *AnalyzeAndVacuumInitParameters) { + *out = *in + if in.AnalyzeTimeout != nil { + in, out := &in.AnalyzeTimeout, &out.AnalyzeTimeout + *out = new(float64) + **out = **in + } + if in.StartTime != nil { + in, out := &in.StartTime, &out.StartTime + *out = new(string) + **out = **in + } + if in.VacuumTimeout != nil { + in, out := &in.VacuumTimeout, &out.VacuumTimeout + *out = new(float64) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AnalyzeAndVacuumInitParameters. +func (in *AnalyzeAndVacuumInitParameters) DeepCopy() *AnalyzeAndVacuumInitParameters { + if in == nil { + return nil + } + out := new(AnalyzeAndVacuumInitParameters) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *AnalyzeAndVacuumObservation) DeepCopyInto(out *AnalyzeAndVacuumObservation) { + *out = *in + if in.AnalyzeTimeout != nil { + in, out := &in.AnalyzeTimeout, &out.AnalyzeTimeout + *out = new(float64) + **out = **in + } + if in.StartTime != nil { + in, out := &in.StartTime, &out.StartTime + *out = new(string) + **out = **in + } + if in.VacuumTimeout != nil { + in, out := &in.VacuumTimeout, &out.VacuumTimeout + *out = new(float64) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AnalyzeAndVacuumObservation. +func (in *AnalyzeAndVacuumObservation) DeepCopy() *AnalyzeAndVacuumObservation { + if in == nil { + return nil + } + out := new(AnalyzeAndVacuumObservation) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *AnalyzeAndVacuumParameters) DeepCopyInto(out *AnalyzeAndVacuumParameters) { + *out = *in + if in.AnalyzeTimeout != nil { + in, out := &in.AnalyzeTimeout, &out.AnalyzeTimeout + *out = new(float64) + **out = **in + } + if in.StartTime != nil { + in, out := &in.StartTime, &out.StartTime + *out = new(string) + **out = **in + } + if in.VacuumTimeout != nil { + in, out := &in.VacuumTimeout, &out.VacuumTimeout + *out = new(float64) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AnalyzeAndVacuumParameters. +func (in *AnalyzeAndVacuumParameters) DeepCopy() *AnalyzeAndVacuumParameters { + if in == nil { + return nil + } + out := new(AnalyzeAndVacuumParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *AuditLogInitParameters) DeepCopyInto(out *AuditLogInitParameters) { *out = *in @@ -219,6 +309,135 @@ func (in *AuditLogParameters) DeepCopy() *AuditLogParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *BackgroundActivitiesInitParameters) DeepCopyInto(out *BackgroundActivitiesInitParameters) { + *out = *in + if in.AnalyzeAndVacuum != nil { + in, out := &in.AnalyzeAndVacuum, &out.AnalyzeAndVacuum + *out = make([]AnalyzeAndVacuumInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.QueryKillerIdle != nil { + in, out := &in.QueryKillerIdle, &out.QueryKillerIdle + *out = make([]QueryKillerIdleInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.QueryKillerIdleInTransaction != nil { + in, out := &in.QueryKillerIdleInTransaction, &out.QueryKillerIdleInTransaction + *out = make([]QueryKillerIdleInTransactionInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.QueryKillerLongRunning != nil { + in, out := &in.QueryKillerLongRunning, &out.QueryKillerLongRunning + *out = make([]QueryKillerLongRunningInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new BackgroundActivitiesInitParameters. +func (in *BackgroundActivitiesInitParameters) DeepCopy() *BackgroundActivitiesInitParameters { + if in == nil { + return nil + } + out := new(BackgroundActivitiesInitParameters) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *BackgroundActivitiesObservation) DeepCopyInto(out *BackgroundActivitiesObservation) { + *out = *in + if in.AnalyzeAndVacuum != nil { + in, out := &in.AnalyzeAndVacuum, &out.AnalyzeAndVacuum + *out = make([]AnalyzeAndVacuumObservation, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.QueryKillerIdle != nil { + in, out := &in.QueryKillerIdle, &out.QueryKillerIdle + *out = make([]QueryKillerIdleObservation, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.QueryKillerIdleInTransaction != nil { + in, out := &in.QueryKillerIdleInTransaction, &out.QueryKillerIdleInTransaction + *out = make([]QueryKillerIdleInTransactionObservation, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.QueryKillerLongRunning != nil { + in, out := &in.QueryKillerLongRunning, &out.QueryKillerLongRunning + *out = make([]QueryKillerLongRunningObservation, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new BackgroundActivitiesObservation. +func (in *BackgroundActivitiesObservation) DeepCopy() *BackgroundActivitiesObservation { + if in == nil { + return nil + } + out := new(BackgroundActivitiesObservation) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *BackgroundActivitiesParameters) DeepCopyInto(out *BackgroundActivitiesParameters) { + *out = *in + if in.AnalyzeAndVacuum != nil { + in, out := &in.AnalyzeAndVacuum, &out.AnalyzeAndVacuum + *out = make([]AnalyzeAndVacuumParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.QueryKillerIdle != nil { + in, out := &in.QueryKillerIdle, &out.QueryKillerIdle + *out = make([]QueryKillerIdleParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.QueryKillerIdleInTransaction != nil { + in, out := &in.QueryKillerIdleInTransaction, &out.QueryKillerIdleInTransaction + *out = make([]QueryKillerIdleInTransactionParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.QueryKillerLongRunning != nil { + in, out := &in.QueryKillerLongRunning, &out.QueryKillerLongRunning + *out = make([]QueryKillerLongRunningParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new BackgroundActivitiesParameters. +func (in *BackgroundActivitiesParameters) DeepCopy() *BackgroundActivitiesParameters { + if in == nil { + return nil + } + out := new(BackgroundActivitiesParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *BackupWindowStartInitParameters) DeepCopyInto(out *BackupWindowStartInitParameters) { *out = *in @@ -336,6 +555,11 @@ func (in *ClickhouseClusterInitParameters) DeepCopyInto(out *ClickhouseClusterIn *out = new(v1.SecretKeySelector) **out = **in } + if in.BackupRetainPeriodDays != nil { + in, out := &in.BackupRetainPeriodDays, &out.BackupRetainPeriodDays + *out = new(float64) + **out = **in + } if in.BackupWindowStart != nil { in, out := &in.BackupWindowStart, &out.BackupWindowStart *out = make([]BackupWindowStartInitParameters, len(*in)) @@ -608,6 +832,11 @@ func (in *ClickhouseClusterObservation) DeepCopyInto(out *ClickhouseClusterObser (*in)[i].DeepCopyInto(&(*out)[i]) } } + if in.BackupRetainPeriodDays != nil { + in, out := &in.BackupRetainPeriodDays, &out.BackupRetainPeriodDays + *out = new(float64) + **out = **in + } if in.BackupWindowStart != nil { in, out := &in.BackupWindowStart, &out.BackupWindowStart *out = make([]BackupWindowStartObservation, len(*in)) @@ -831,6 +1060,11 @@ func (in *ClickhouseClusterParameters) DeepCopyInto(out *ClickhouseClusterParame *out = new(v1.SecretKeySelector) **out = **in } + if in.BackupRetainPeriodDays != nil { + in, out := &in.BackupRetainPeriodDays, &out.BackupRetainPeriodDays + *out = new(float64) + **out = **in + } if in.BackupWindowStart != nil { in, out := &in.BackupWindowStart, &out.BackupWindowStart *out = make([]BackupWindowStartParameters, len(*in)) @@ -1910,92 +2144,237 @@ func (in *ConfigBackupWindowStartParameters) DeepCopy() *ConfigBackupWindowStart } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *ConfigInitParameters) DeepCopyInto(out *ConfigInitParameters) { +func (in *ConfigDiskSizeAutoscalingInitParameters) DeepCopyInto(out *ConfigDiskSizeAutoscalingInitParameters) { *out = *in - if in.BackgroundFetchesPoolSize != nil { - in, out := &in.BackgroundFetchesPoolSize, &out.BackgroundFetchesPoolSize + if in.DiskSizeLimit != nil { + in, out := &in.DiskSizeLimit, &out.DiskSizeLimit *out = new(float64) **out = **in } - if in.BackgroundMergesMutationsConcurrencyRatio != nil { - in, out := &in.BackgroundMergesMutationsConcurrencyRatio, &out.BackgroundMergesMutationsConcurrencyRatio + if in.EmergencyUsageThreshold != nil { + in, out := &in.EmergencyUsageThreshold, &out.EmergencyUsageThreshold *out = new(float64) **out = **in } - if in.BackgroundMessageBrokerSchedulePoolSize != nil { - in, out := &in.BackgroundMessageBrokerSchedulePoolSize, &out.BackgroundMessageBrokerSchedulePoolSize + if in.PlannedUsageThreshold != nil { + in, out := &in.PlannedUsageThreshold, &out.PlannedUsageThreshold *out = new(float64) **out = **in } - if in.BackgroundPoolSize != nil { - in, out := &in.BackgroundPoolSize, &out.BackgroundPoolSize - *out = new(float64) - **out = **in +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ConfigDiskSizeAutoscalingInitParameters. +func (in *ConfigDiskSizeAutoscalingInitParameters) DeepCopy() *ConfigDiskSizeAutoscalingInitParameters { + if in == nil { + return nil } - if in.BackgroundSchedulePoolSize != nil { - in, out := &in.BackgroundSchedulePoolSize, &out.BackgroundSchedulePoolSize + out := new(ConfigDiskSizeAutoscalingInitParameters) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *ConfigDiskSizeAutoscalingObservation) DeepCopyInto(out *ConfigDiskSizeAutoscalingObservation) { + *out = *in + if in.DiskSizeLimit != nil { + in, out := &in.DiskSizeLimit, &out.DiskSizeLimit *out = new(float64) **out = **in } - if in.Compression != nil { - in, out := &in.Compression, &out.Compression - *out = make([]CompressionInitParameters, len(*in)) - for i := range *in { - (*in)[i].DeepCopyInto(&(*out)[i]) - } - } - if in.DefaultDatabase != nil { - in, out := &in.DefaultDatabase, &out.DefaultDatabase - *out = new(string) - **out = **in - } - if in.GeobaseEnabled != nil { - in, out := &in.GeobaseEnabled, &out.GeobaseEnabled - *out = new(bool) + if in.EmergencyUsageThreshold != nil { + in, out := &in.EmergencyUsageThreshold, &out.EmergencyUsageThreshold + *out = new(float64) **out = **in } - if in.GeobaseURI != nil { - in, out := &in.GeobaseURI, &out.GeobaseURI - *out = new(string) + if in.PlannedUsageThreshold != nil { + in, out := &in.PlannedUsageThreshold, &out.PlannedUsageThreshold + *out = new(float64) **out = **in } - if in.GraphiteRollup != nil { - in, out := &in.GraphiteRollup, &out.GraphiteRollup - *out = make([]GraphiteRollupInitParameters, len(*in)) - for i := range *in { - (*in)[i].DeepCopyInto(&(*out)[i]) - } - } - if in.Kafka != nil { - in, out := &in.Kafka, &out.Kafka - *out = make([]KafkaInitParameters, len(*in)) - for i := range *in { - (*in)[i].DeepCopyInto(&(*out)[i]) - } - } - if in.KafkaTopic != nil { - in, out := &in.KafkaTopic, &out.KafkaTopic - *out = make([]KafkaTopicInitParameters, len(*in)) - for i := range *in { - (*in)[i].DeepCopyInto(&(*out)[i]) - } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ConfigDiskSizeAutoscalingObservation. +func (in *ConfigDiskSizeAutoscalingObservation) DeepCopy() *ConfigDiskSizeAutoscalingObservation { + if in == nil { + return nil } - if in.KeepAliveTimeout != nil { - in, out := &in.KeepAliveTimeout, &out.KeepAliveTimeout + out := new(ConfigDiskSizeAutoscalingObservation) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *ConfigDiskSizeAutoscalingParameters) DeepCopyInto(out *ConfigDiskSizeAutoscalingParameters) { + *out = *in + if in.DiskSizeLimit != nil { + in, out := &in.DiskSizeLimit, &out.DiskSizeLimit *out = new(float64) **out = **in } - if in.LogLevel != nil { - in, out := &in.LogLevel, &out.LogLevel - *out = new(string) + if in.EmergencyUsageThreshold != nil { + in, out := &in.EmergencyUsageThreshold, &out.EmergencyUsageThreshold + *out = new(float64) **out = **in } - if in.MarkCacheSize != nil { - in, out := &in.MarkCacheSize, &out.MarkCacheSize + if in.PlannedUsageThreshold != nil { + in, out := &in.PlannedUsageThreshold, &out.PlannedUsageThreshold *out = new(float64) **out = **in } - if in.MaxConcurrentQueries != nil { +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ConfigDiskSizeAutoscalingParameters. +func (in *ConfigDiskSizeAutoscalingParameters) DeepCopy() *ConfigDiskSizeAutoscalingParameters { + if in == nil { + return nil + } + out := new(ConfigDiskSizeAutoscalingParameters) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *ConfigInitParameters) DeepCopyInto(out *ConfigInitParameters) { + *out = *in + if in.AsynchronousInsertLogEnabled != nil { + in, out := &in.AsynchronousInsertLogEnabled, &out.AsynchronousInsertLogEnabled + *out = new(bool) + **out = **in + } + if in.AsynchronousInsertLogRetentionSize != nil { + in, out := &in.AsynchronousInsertLogRetentionSize, &out.AsynchronousInsertLogRetentionSize + *out = new(float64) + **out = **in + } + if in.AsynchronousInsertLogRetentionTime != nil { + in, out := &in.AsynchronousInsertLogRetentionTime, &out.AsynchronousInsertLogRetentionTime + *out = new(float64) + **out = **in + } + if in.AsynchronousMetricLogEnabled != nil { + in, out := &in.AsynchronousMetricLogEnabled, &out.AsynchronousMetricLogEnabled + *out = new(bool) + **out = **in + } + if in.AsynchronousMetricLogRetentionSize != nil { + in, out := &in.AsynchronousMetricLogRetentionSize, &out.AsynchronousMetricLogRetentionSize + *out = new(float64) + **out = **in + } + if in.AsynchronousMetricLogRetentionTime != nil { + in, out := &in.AsynchronousMetricLogRetentionTime, &out.AsynchronousMetricLogRetentionTime + *out = new(float64) + **out = **in + } + if in.BackgroundBufferFlushSchedulePoolSize != nil { + in, out := &in.BackgroundBufferFlushSchedulePoolSize, &out.BackgroundBufferFlushSchedulePoolSize + *out = new(float64) + **out = **in + } + if in.BackgroundCommonPoolSize != nil { + in, out := &in.BackgroundCommonPoolSize, &out.BackgroundCommonPoolSize + *out = new(float64) + **out = **in + } + if in.BackgroundDistributedSchedulePoolSize != nil { + in, out := &in.BackgroundDistributedSchedulePoolSize, &out.BackgroundDistributedSchedulePoolSize + *out = new(float64) + **out = **in + } + if in.BackgroundFetchesPoolSize != nil { + in, out := &in.BackgroundFetchesPoolSize, &out.BackgroundFetchesPoolSize + *out = new(float64) + **out = **in + } + if in.BackgroundMergesMutationsConcurrencyRatio != nil { + in, out := &in.BackgroundMergesMutationsConcurrencyRatio, &out.BackgroundMergesMutationsConcurrencyRatio + *out = new(float64) + **out = **in + } + if in.BackgroundMessageBrokerSchedulePoolSize != nil { + in, out := &in.BackgroundMessageBrokerSchedulePoolSize, &out.BackgroundMessageBrokerSchedulePoolSize + *out = new(float64) + **out = **in + } + if in.BackgroundMovePoolSize != nil { + in, out := &in.BackgroundMovePoolSize, &out.BackgroundMovePoolSize + *out = new(float64) + **out = **in + } + if in.BackgroundPoolSize != nil { + in, out := &in.BackgroundPoolSize, &out.BackgroundPoolSize + *out = new(float64) + **out = **in + } + if in.BackgroundSchedulePoolSize != nil { + in, out := &in.BackgroundSchedulePoolSize, &out.BackgroundSchedulePoolSize + *out = new(float64) + **out = **in + } + if in.Compression != nil { + in, out := &in.Compression, &out.Compression + *out = make([]CompressionInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.DefaultDatabase != nil { + in, out := &in.DefaultDatabase, &out.DefaultDatabase + *out = new(string) + **out = **in + } + if in.DictionariesLazyLoad != nil { + in, out := &in.DictionariesLazyLoad, &out.DictionariesLazyLoad + *out = new(bool) + **out = **in + } + if in.GeobaseEnabled != nil { + in, out := &in.GeobaseEnabled, &out.GeobaseEnabled + *out = new(bool) + **out = **in + } + if in.GeobaseURI != nil { + in, out := &in.GeobaseURI, &out.GeobaseURI + *out = new(string) + **out = **in + } + if in.GraphiteRollup != nil { + in, out := &in.GraphiteRollup, &out.GraphiteRollup + *out = make([]GraphiteRollupInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Kafka != nil { + in, out := &in.Kafka, &out.Kafka + *out = make([]KafkaInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.KafkaTopic != nil { + in, out := &in.KafkaTopic, &out.KafkaTopic + *out = make([]KafkaTopicInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.KeepAliveTimeout != nil { + in, out := &in.KeepAliveTimeout, &out.KeepAliveTimeout + *out = new(float64) + **out = **in + } + if in.LogLevel != nil { + in, out := &in.LogLevel, &out.LogLevel + *out = new(string) + **out = **in + } + if in.MarkCacheSize != nil { + in, out := &in.MarkCacheSize, &out.MarkCacheSize + *out = new(float64) + **out = **in + } + if in.MaxConcurrentQueries != nil { in, out := &in.MaxConcurrentQueries, &out.MaxConcurrentQueries *out = new(float64) **out = **in @@ -2037,6 +2416,21 @@ func (in *ConfigInitParameters) DeepCopyInto(out *ConfigInitParameters) { *out = new(float64) **out = **in } + if in.OpentelemetrySpanLogEnabled != nil { + in, out := &in.OpentelemetrySpanLogEnabled, &out.OpentelemetrySpanLogEnabled + *out = new(bool) + **out = **in + } + if in.OpentelemetrySpanLogRetentionSize != nil { + in, out := &in.OpentelemetrySpanLogRetentionSize, &out.OpentelemetrySpanLogRetentionSize + *out = new(float64) + **out = **in + } + if in.OpentelemetrySpanLogRetentionTime != nil { + in, out := &in.OpentelemetrySpanLogRetentionTime, &out.OpentelemetrySpanLogRetentionTime + *out = new(float64) + **out = **in + } if in.PartLogRetentionSize != nil { in, out := &in.PartLogRetentionSize, &out.PartLogRetentionSize *out = new(float64) @@ -2047,6 +2441,13 @@ func (in *ConfigInitParameters) DeepCopyInto(out *ConfigInitParameters) { *out = new(float64) **out = **in } + if in.QueryCache != nil { + in, out := &in.QueryCache, &out.QueryCache + *out = make([]QueryCacheInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } if in.QueryLogRetentionSize != nil { in, out := &in.QueryLogRetentionSize, &out.QueryLogRetentionSize *out = new(float64) @@ -2057,6 +2458,13 @@ func (in *ConfigInitParameters) DeepCopyInto(out *ConfigInitParameters) { *out = new(float64) **out = **in } + if in.QueryMaskingRules != nil { + in, out := &in.QueryMaskingRules, &out.QueryMaskingRules + *out = make([]QueryMaskingRulesInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } if in.QueryThreadLogEnabled != nil { in, out := &in.QueryThreadLogEnabled, &out.QueryThreadLogEnabled *out = new(bool) @@ -2072,6 +2480,21 @@ func (in *ConfigInitParameters) DeepCopyInto(out *ConfigInitParameters) { *out = new(float64) **out = **in } + if in.QueryViewsLogEnabled != nil { + in, out := &in.QueryViewsLogEnabled, &out.QueryViewsLogEnabled + *out = new(bool) + **out = **in + } + if in.QueryViewsLogRetentionSize != nil { + in, out := &in.QueryViewsLogRetentionSize, &out.QueryViewsLogRetentionSize + *out = new(float64) + **out = **in + } + if in.QueryViewsLogRetentionTime != nil { + in, out := &in.QueryViewsLogRetentionTime, &out.QueryViewsLogRetentionTime + *out = new(float64) + **out = **in + } if in.Rabbitmq != nil { in, out := &in.Rabbitmq, &out.Rabbitmq *out = make([]RabbitmqInitParameters, len(*in)) @@ -2079,6 +2502,21 @@ func (in *ConfigInitParameters) DeepCopyInto(out *ConfigInitParameters) { (*in)[i].DeepCopyInto(&(*out)[i]) } } + if in.SessionLogEnabled != nil { + in, out := &in.SessionLogEnabled, &out.SessionLogEnabled + *out = new(bool) + **out = **in + } + if in.SessionLogRetentionSize != nil { + in, out := &in.SessionLogRetentionSize, &out.SessionLogRetentionSize + *out = new(float64) + **out = **in + } + if in.SessionLogRetentionTime != nil { + in, out := &in.SessionLogRetentionTime, &out.SessionLogRetentionTime + *out = new(float64) + **out = **in + } if in.TextLogEnabled != nil { in, out := &in.TextLogEnabled, &out.TextLogEnabled *out = new(bool) @@ -2129,6 +2567,21 @@ func (in *ConfigInitParameters) DeepCopyInto(out *ConfigInitParameters) { *out = new(float64) **out = **in } + if in.ZookeeperLogEnabled != nil { + in, out := &in.ZookeeperLogEnabled, &out.ZookeeperLogEnabled + *out = new(bool) + **out = **in + } + if in.ZookeeperLogRetentionSize != nil { + in, out := &in.ZookeeperLogRetentionSize, &out.ZookeeperLogRetentionSize + *out = new(float64) + **out = **in + } + if in.ZookeeperLogRetentionTime != nil { + in, out := &in.ZookeeperLogRetentionTime, &out.ZookeeperLogRetentionTime + *out = new(float64) + **out = **in + } } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ConfigInitParameters. @@ -2231,6 +2684,51 @@ func (in *ConfigKafkaParameters) DeepCopy() *ConfigKafkaParameters { // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *ConfigObservation) DeepCopyInto(out *ConfigObservation) { *out = *in + if in.AsynchronousInsertLogEnabled != nil { + in, out := &in.AsynchronousInsertLogEnabled, &out.AsynchronousInsertLogEnabled + *out = new(bool) + **out = **in + } + if in.AsynchronousInsertLogRetentionSize != nil { + in, out := &in.AsynchronousInsertLogRetentionSize, &out.AsynchronousInsertLogRetentionSize + *out = new(float64) + **out = **in + } + if in.AsynchronousInsertLogRetentionTime != nil { + in, out := &in.AsynchronousInsertLogRetentionTime, &out.AsynchronousInsertLogRetentionTime + *out = new(float64) + **out = **in + } + if in.AsynchronousMetricLogEnabled != nil { + in, out := &in.AsynchronousMetricLogEnabled, &out.AsynchronousMetricLogEnabled + *out = new(bool) + **out = **in + } + if in.AsynchronousMetricLogRetentionSize != nil { + in, out := &in.AsynchronousMetricLogRetentionSize, &out.AsynchronousMetricLogRetentionSize + *out = new(float64) + **out = **in + } + if in.AsynchronousMetricLogRetentionTime != nil { + in, out := &in.AsynchronousMetricLogRetentionTime, &out.AsynchronousMetricLogRetentionTime + *out = new(float64) + **out = **in + } + if in.BackgroundBufferFlushSchedulePoolSize != nil { + in, out := &in.BackgroundBufferFlushSchedulePoolSize, &out.BackgroundBufferFlushSchedulePoolSize + *out = new(float64) + **out = **in + } + if in.BackgroundCommonPoolSize != nil { + in, out := &in.BackgroundCommonPoolSize, &out.BackgroundCommonPoolSize + *out = new(float64) + **out = **in + } + if in.BackgroundDistributedSchedulePoolSize != nil { + in, out := &in.BackgroundDistributedSchedulePoolSize, &out.BackgroundDistributedSchedulePoolSize + *out = new(float64) + **out = **in + } if in.BackgroundFetchesPoolSize != nil { in, out := &in.BackgroundFetchesPoolSize, &out.BackgroundFetchesPoolSize *out = new(float64) @@ -2246,6 +2744,11 @@ func (in *ConfigObservation) DeepCopyInto(out *ConfigObservation) { *out = new(float64) **out = **in } + if in.BackgroundMovePoolSize != nil { + in, out := &in.BackgroundMovePoolSize, &out.BackgroundMovePoolSize + *out = new(float64) + **out = **in + } if in.BackgroundPoolSize != nil { in, out := &in.BackgroundPoolSize, &out.BackgroundPoolSize *out = new(float64) @@ -2268,6 +2771,11 @@ func (in *ConfigObservation) DeepCopyInto(out *ConfigObservation) { *out = new(string) **out = **in } + if in.DictionariesLazyLoad != nil { + in, out := &in.DictionariesLazyLoad, &out.DictionariesLazyLoad + *out = new(bool) + **out = **in + } if in.GeobaseEnabled != nil { in, out := &in.GeobaseEnabled, &out.GeobaseEnabled *out = new(bool) @@ -2356,6 +2864,21 @@ func (in *ConfigObservation) DeepCopyInto(out *ConfigObservation) { *out = new(float64) **out = **in } + if in.OpentelemetrySpanLogEnabled != nil { + in, out := &in.OpentelemetrySpanLogEnabled, &out.OpentelemetrySpanLogEnabled + *out = new(bool) + **out = **in + } + if in.OpentelemetrySpanLogRetentionSize != nil { + in, out := &in.OpentelemetrySpanLogRetentionSize, &out.OpentelemetrySpanLogRetentionSize + *out = new(float64) + **out = **in + } + if in.OpentelemetrySpanLogRetentionTime != nil { + in, out := &in.OpentelemetrySpanLogRetentionTime, &out.OpentelemetrySpanLogRetentionTime + *out = new(float64) + **out = **in + } if in.PartLogRetentionSize != nil { in, out := &in.PartLogRetentionSize, &out.PartLogRetentionSize *out = new(float64) @@ -2366,6 +2889,13 @@ func (in *ConfigObservation) DeepCopyInto(out *ConfigObservation) { *out = new(float64) **out = **in } + if in.QueryCache != nil { + in, out := &in.QueryCache, &out.QueryCache + *out = make([]QueryCacheObservation, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } if in.QueryLogRetentionSize != nil { in, out := &in.QueryLogRetentionSize, &out.QueryLogRetentionSize *out = new(float64) @@ -2376,6 +2906,13 @@ func (in *ConfigObservation) DeepCopyInto(out *ConfigObservation) { *out = new(float64) **out = **in } + if in.QueryMaskingRules != nil { + in, out := &in.QueryMaskingRules, &out.QueryMaskingRules + *out = make([]QueryMaskingRulesObservation, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } if in.QueryThreadLogEnabled != nil { in, out := &in.QueryThreadLogEnabled, &out.QueryThreadLogEnabled *out = new(bool) @@ -2391,6 +2928,21 @@ func (in *ConfigObservation) DeepCopyInto(out *ConfigObservation) { *out = new(float64) **out = **in } + if in.QueryViewsLogEnabled != nil { + in, out := &in.QueryViewsLogEnabled, &out.QueryViewsLogEnabled + *out = new(bool) + **out = **in + } + if in.QueryViewsLogRetentionSize != nil { + in, out := &in.QueryViewsLogRetentionSize, &out.QueryViewsLogRetentionSize + *out = new(float64) + **out = **in + } + if in.QueryViewsLogRetentionTime != nil { + in, out := &in.QueryViewsLogRetentionTime, &out.QueryViewsLogRetentionTime + *out = new(float64) + **out = **in + } if in.Rabbitmq != nil { in, out := &in.Rabbitmq, &out.Rabbitmq *out = make([]RabbitmqObservation, len(*in)) @@ -2398,6 +2950,21 @@ func (in *ConfigObservation) DeepCopyInto(out *ConfigObservation) { (*in)[i].DeepCopyInto(&(*out)[i]) } } + if in.SessionLogEnabled != nil { + in, out := &in.SessionLogEnabled, &out.SessionLogEnabled + *out = new(bool) + **out = **in + } + if in.SessionLogRetentionSize != nil { + in, out := &in.SessionLogRetentionSize, &out.SessionLogRetentionSize + *out = new(float64) + **out = **in + } + if in.SessionLogRetentionTime != nil { + in, out := &in.SessionLogRetentionTime, &out.SessionLogRetentionTime + *out = new(float64) + **out = **in + } if in.TextLogEnabled != nil { in, out := &in.TextLogEnabled, &out.TextLogEnabled *out = new(bool) @@ -2448,6 +3015,21 @@ func (in *ConfigObservation) DeepCopyInto(out *ConfigObservation) { *out = new(float64) **out = **in } + if in.ZookeeperLogEnabled != nil { + in, out := &in.ZookeeperLogEnabled, &out.ZookeeperLogEnabled + *out = new(bool) + **out = **in + } + if in.ZookeeperLogRetentionSize != nil { + in, out := &in.ZookeeperLogRetentionSize, &out.ZookeeperLogRetentionSize + *out = new(float64) + **out = **in + } + if in.ZookeeperLogRetentionTime != nil { + in, out := &in.ZookeeperLogRetentionTime, &out.ZookeeperLogRetentionTime + *out = new(float64) + **out = **in + } } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ConfigObservation. @@ -2463,13 +3045,58 @@ func (in *ConfigObservation) DeepCopy() *ConfigObservation { // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *ConfigParameters) DeepCopyInto(out *ConfigParameters) { *out = *in - if in.BackgroundFetchesPoolSize != nil { - in, out := &in.BackgroundFetchesPoolSize, &out.BackgroundFetchesPoolSize - *out = new(float64) + if in.AsynchronousInsertLogEnabled != nil { + in, out := &in.AsynchronousInsertLogEnabled, &out.AsynchronousInsertLogEnabled + *out = new(bool) **out = **in } - if in.BackgroundMergesMutationsConcurrencyRatio != nil { - in, out := &in.BackgroundMergesMutationsConcurrencyRatio, &out.BackgroundMergesMutationsConcurrencyRatio + if in.AsynchronousInsertLogRetentionSize != nil { + in, out := &in.AsynchronousInsertLogRetentionSize, &out.AsynchronousInsertLogRetentionSize + *out = new(float64) + **out = **in + } + if in.AsynchronousInsertLogRetentionTime != nil { + in, out := &in.AsynchronousInsertLogRetentionTime, &out.AsynchronousInsertLogRetentionTime + *out = new(float64) + **out = **in + } + if in.AsynchronousMetricLogEnabled != nil { + in, out := &in.AsynchronousMetricLogEnabled, &out.AsynchronousMetricLogEnabled + *out = new(bool) + **out = **in + } + if in.AsynchronousMetricLogRetentionSize != nil { + in, out := &in.AsynchronousMetricLogRetentionSize, &out.AsynchronousMetricLogRetentionSize + *out = new(float64) + **out = **in + } + if in.AsynchronousMetricLogRetentionTime != nil { + in, out := &in.AsynchronousMetricLogRetentionTime, &out.AsynchronousMetricLogRetentionTime + *out = new(float64) + **out = **in + } + if in.BackgroundBufferFlushSchedulePoolSize != nil { + in, out := &in.BackgroundBufferFlushSchedulePoolSize, &out.BackgroundBufferFlushSchedulePoolSize + *out = new(float64) + **out = **in + } + if in.BackgroundCommonPoolSize != nil { + in, out := &in.BackgroundCommonPoolSize, &out.BackgroundCommonPoolSize + *out = new(float64) + **out = **in + } + if in.BackgroundDistributedSchedulePoolSize != nil { + in, out := &in.BackgroundDistributedSchedulePoolSize, &out.BackgroundDistributedSchedulePoolSize + *out = new(float64) + **out = **in + } + if in.BackgroundFetchesPoolSize != nil { + in, out := &in.BackgroundFetchesPoolSize, &out.BackgroundFetchesPoolSize + *out = new(float64) + **out = **in + } + if in.BackgroundMergesMutationsConcurrencyRatio != nil { + in, out := &in.BackgroundMergesMutationsConcurrencyRatio, &out.BackgroundMergesMutationsConcurrencyRatio *out = new(float64) **out = **in } @@ -2478,6 +3105,11 @@ func (in *ConfigParameters) DeepCopyInto(out *ConfigParameters) { *out = new(float64) **out = **in } + if in.BackgroundMovePoolSize != nil { + in, out := &in.BackgroundMovePoolSize, &out.BackgroundMovePoolSize + *out = new(float64) + **out = **in + } if in.BackgroundPoolSize != nil { in, out := &in.BackgroundPoolSize, &out.BackgroundPoolSize *out = new(float64) @@ -2500,6 +3132,11 @@ func (in *ConfigParameters) DeepCopyInto(out *ConfigParameters) { *out = new(string) **out = **in } + if in.DictionariesLazyLoad != nil { + in, out := &in.DictionariesLazyLoad, &out.DictionariesLazyLoad + *out = new(bool) + **out = **in + } if in.GeobaseEnabled != nil { in, out := &in.GeobaseEnabled, &out.GeobaseEnabled *out = new(bool) @@ -2588,6 +3225,21 @@ func (in *ConfigParameters) DeepCopyInto(out *ConfigParameters) { *out = new(float64) **out = **in } + if in.OpentelemetrySpanLogEnabled != nil { + in, out := &in.OpentelemetrySpanLogEnabled, &out.OpentelemetrySpanLogEnabled + *out = new(bool) + **out = **in + } + if in.OpentelemetrySpanLogRetentionSize != nil { + in, out := &in.OpentelemetrySpanLogRetentionSize, &out.OpentelemetrySpanLogRetentionSize + *out = new(float64) + **out = **in + } + if in.OpentelemetrySpanLogRetentionTime != nil { + in, out := &in.OpentelemetrySpanLogRetentionTime, &out.OpentelemetrySpanLogRetentionTime + *out = new(float64) + **out = **in + } if in.PartLogRetentionSize != nil { in, out := &in.PartLogRetentionSize, &out.PartLogRetentionSize *out = new(float64) @@ -2598,6 +3250,13 @@ func (in *ConfigParameters) DeepCopyInto(out *ConfigParameters) { *out = new(float64) **out = **in } + if in.QueryCache != nil { + in, out := &in.QueryCache, &out.QueryCache + *out = make([]QueryCacheParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } if in.QueryLogRetentionSize != nil { in, out := &in.QueryLogRetentionSize, &out.QueryLogRetentionSize *out = new(float64) @@ -2608,6 +3267,13 @@ func (in *ConfigParameters) DeepCopyInto(out *ConfigParameters) { *out = new(float64) **out = **in } + if in.QueryMaskingRules != nil { + in, out := &in.QueryMaskingRules, &out.QueryMaskingRules + *out = make([]QueryMaskingRulesParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } if in.QueryThreadLogEnabled != nil { in, out := &in.QueryThreadLogEnabled, &out.QueryThreadLogEnabled *out = new(bool) @@ -2623,6 +3289,21 @@ func (in *ConfigParameters) DeepCopyInto(out *ConfigParameters) { *out = new(float64) **out = **in } + if in.QueryViewsLogEnabled != nil { + in, out := &in.QueryViewsLogEnabled, &out.QueryViewsLogEnabled + *out = new(bool) + **out = **in + } + if in.QueryViewsLogRetentionSize != nil { + in, out := &in.QueryViewsLogRetentionSize, &out.QueryViewsLogRetentionSize + *out = new(float64) + **out = **in + } + if in.QueryViewsLogRetentionTime != nil { + in, out := &in.QueryViewsLogRetentionTime, &out.QueryViewsLogRetentionTime + *out = new(float64) + **out = **in + } if in.Rabbitmq != nil { in, out := &in.Rabbitmq, &out.Rabbitmq *out = make([]RabbitmqParameters, len(*in)) @@ -2630,6 +3311,21 @@ func (in *ConfigParameters) DeepCopyInto(out *ConfigParameters) { (*in)[i].DeepCopyInto(&(*out)[i]) } } + if in.SessionLogEnabled != nil { + in, out := &in.SessionLogEnabled, &out.SessionLogEnabled + *out = new(bool) + **out = **in + } + if in.SessionLogRetentionSize != nil { + in, out := &in.SessionLogRetentionSize, &out.SessionLogRetentionSize + *out = new(float64) + **out = **in + } + if in.SessionLogRetentionTime != nil { + in, out := &in.SessionLogRetentionTime, &out.SessionLogRetentionTime + *out = new(float64) + **out = **in + } if in.TextLogEnabled != nil { in, out := &in.TextLogEnabled, &out.TextLogEnabled *out = new(bool) @@ -2680,6 +3376,21 @@ func (in *ConfigParameters) DeepCopyInto(out *ConfigParameters) { *out = new(float64) **out = **in } + if in.ZookeeperLogEnabled != nil { + in, out := &in.ZookeeperLogEnabled, &out.ZookeeperLogEnabled + *out = new(bool) + **out = **in + } + if in.ZookeeperLogRetentionSize != nil { + in, out := &in.ZookeeperLogRetentionSize, &out.ZookeeperLogRetentionSize + *out = new(float64) + **out = **in + } + if in.ZookeeperLogRetentionTime != nil { + in, out := &in.ZookeeperLogRetentionTime, &out.ZookeeperLogRetentionTime + *out = new(float64) + **out = **in + } } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ConfigParameters. @@ -3436,72 +4147,6 @@ func (in *ConnectorConfigS3SinkParameters) DeepCopy() *ConnectorConfigS3SinkPara return out } -// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *DashboardsInitParameters) DeepCopyInto(out *DashboardsInitParameters) { - *out = *in - if in.NodeGroups != nil { - in, out := &in.NodeGroups, &out.NodeGroups - *out = make([]NodeGroupsInitParameters, len(*in)) - for i := range *in { - (*in)[i].DeepCopyInto(&(*out)[i]) - } - } -} - -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DashboardsInitParameters. -func (in *DashboardsInitParameters) DeepCopy() *DashboardsInitParameters { - if in == nil { - return nil - } - out := new(DashboardsInitParameters) - in.DeepCopyInto(out) - return out -} - -// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *DashboardsObservation) DeepCopyInto(out *DashboardsObservation) { - *out = *in - if in.NodeGroups != nil { - in, out := &in.NodeGroups, &out.NodeGroups - *out = make([]NodeGroupsObservation, len(*in)) - for i := range *in { - (*in)[i].DeepCopyInto(&(*out)[i]) - } - } -} - -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DashboardsObservation. -func (in *DashboardsObservation) DeepCopy() *DashboardsObservation { - if in == nil { - return nil - } - out := new(DashboardsObservation) - in.DeepCopyInto(out) - return out -} - -// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *DashboardsParameters) DeepCopyInto(out *DashboardsParameters) { - *out = *in - if in.NodeGroups != nil { - in, out := &in.NodeGroups, &out.NodeGroups - *out = make([]NodeGroupsParameters, len(*in)) - for i := range *in { - (*in)[i].DeepCopyInto(&(*out)[i]) - } - } -} - -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DashboardsParameters. -func (in *DashboardsParameters) DeepCopy() *DashboardsParameters { - if in == nil { - return nil - } - out := new(DashboardsParameters) - in.DeepCopyInto(out) - return out -} - // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *DataNodeInitParameters) DeepCopyInto(out *DataNodeInitParameters) { *out = *in @@ -3749,7 +4394,7 @@ func (in *DiskSizeAutoscalingInitParameters) DeepCopy() *DiskSizeAutoscalingInit } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *DiskSizeAutoscalingObservation) DeepCopyInto(out *DiskSizeAutoscalingObservation) { +func (in *DiskSizeAutoscalingMongocfgInitParameters) DeepCopyInto(out *DiskSizeAutoscalingMongocfgInitParameters) { *out = *in if in.DiskSizeLimit != nil { in, out := &in.DiskSizeLimit, &out.DiskSizeLimit @@ -3768,18 +4413,18 @@ func (in *DiskSizeAutoscalingObservation) DeepCopyInto(out *DiskSizeAutoscalingO } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DiskSizeAutoscalingObservation. -func (in *DiskSizeAutoscalingObservation) DeepCopy() *DiskSizeAutoscalingObservation { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DiskSizeAutoscalingMongocfgInitParameters. +func (in *DiskSizeAutoscalingMongocfgInitParameters) DeepCopy() *DiskSizeAutoscalingMongocfgInitParameters { if in == nil { return nil } - out := new(DiskSizeAutoscalingObservation) + out := new(DiskSizeAutoscalingMongocfgInitParameters) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *DiskSizeAutoscalingParameters) DeepCopyInto(out *DiskSizeAutoscalingParameters) { +func (in *DiskSizeAutoscalingMongocfgObservation) DeepCopyInto(out *DiskSizeAutoscalingMongocfgObservation) { *out = *in if in.DiskSizeLimit != nil { in, out := &in.DiskSizeLimit, &out.DiskSizeLimit @@ -3798,506 +4443,397 @@ func (in *DiskSizeAutoscalingParameters) DeepCopyInto(out *DiskSizeAutoscalingPa } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DiskSizeAutoscalingParameters. -func (in *DiskSizeAutoscalingParameters) DeepCopy() *DiskSizeAutoscalingParameters { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DiskSizeAutoscalingMongocfgObservation. +func (in *DiskSizeAutoscalingMongocfgObservation) DeepCopy() *DiskSizeAutoscalingMongocfgObservation { if in == nil { return nil } - out := new(DiskSizeAutoscalingParameters) + out := new(DiskSizeAutoscalingMongocfgObservation) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *ElasticsearchCluster) DeepCopyInto(out *ElasticsearchCluster) { +func (in *DiskSizeAutoscalingMongocfgParameters) DeepCopyInto(out *DiskSizeAutoscalingMongocfgParameters) { *out = *in - out.TypeMeta = in.TypeMeta - in.ObjectMeta.DeepCopyInto(&out.ObjectMeta) - in.Spec.DeepCopyInto(&out.Spec) - in.Status.DeepCopyInto(&out.Status) + if in.DiskSizeLimit != nil { + in, out := &in.DiskSizeLimit, &out.DiskSizeLimit + *out = new(float64) + **out = **in + } + if in.EmergencyUsageThreshold != nil { + in, out := &in.EmergencyUsageThreshold, &out.EmergencyUsageThreshold + *out = new(float64) + **out = **in + } + if in.PlannedUsageThreshold != nil { + in, out := &in.PlannedUsageThreshold, &out.PlannedUsageThreshold + *out = new(float64) + **out = **in + } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ElasticsearchCluster. -func (in *ElasticsearchCluster) DeepCopy() *ElasticsearchCluster { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DiskSizeAutoscalingMongocfgParameters. +func (in *DiskSizeAutoscalingMongocfgParameters) DeepCopy() *DiskSizeAutoscalingMongocfgParameters { if in == nil { return nil } - out := new(ElasticsearchCluster) + out := new(DiskSizeAutoscalingMongocfgParameters) in.DeepCopyInto(out) return out } -// DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object. -func (in *ElasticsearchCluster) DeepCopyObject() runtime.Object { - if c := in.DeepCopy(); c != nil { - return c - } - return nil -} - // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *ElasticsearchClusterConfigInitParameters) DeepCopyInto(out *ElasticsearchClusterConfigInitParameters) { +func (in *DiskSizeAutoscalingMongodInitParameters) DeepCopyInto(out *DiskSizeAutoscalingMongodInitParameters) { *out = *in - out.AdminPasswordSecretRef = in.AdminPasswordSecretRef - if in.DataNode != nil { - in, out := &in.DataNode, &out.DataNode - *out = make([]DataNodeInitParameters, len(*in)) - for i := range *in { - (*in)[i].DeepCopyInto(&(*out)[i]) - } - } - if in.Edition != nil { - in, out := &in.Edition, &out.Edition - *out = new(string) + if in.DiskSizeLimit != nil { + in, out := &in.DiskSizeLimit, &out.DiskSizeLimit + *out = new(float64) **out = **in } - if in.MasterNode != nil { - in, out := &in.MasterNode, &out.MasterNode - *out = make([]MasterNodeInitParameters, len(*in)) - for i := range *in { - (*in)[i].DeepCopyInto(&(*out)[i]) - } - } - if in.Plugins != nil { - in, out := &in.Plugins, &out.Plugins - *out = make([]*string, len(*in)) - for i := range *in { - if (*in)[i] != nil { - in, out := &(*in)[i], &(*out)[i] - *out = new(string) - **out = **in - } - } + if in.EmergencyUsageThreshold != nil { + in, out := &in.EmergencyUsageThreshold, &out.EmergencyUsageThreshold + *out = new(float64) + **out = **in } - if in.Version != nil { - in, out := &in.Version, &out.Version - *out = new(string) + if in.PlannedUsageThreshold != nil { + in, out := &in.PlannedUsageThreshold, &out.PlannedUsageThreshold + *out = new(float64) **out = **in } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ElasticsearchClusterConfigInitParameters. -func (in *ElasticsearchClusterConfigInitParameters) DeepCopy() *ElasticsearchClusterConfigInitParameters { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DiskSizeAutoscalingMongodInitParameters. +func (in *DiskSizeAutoscalingMongodInitParameters) DeepCopy() *DiskSizeAutoscalingMongodInitParameters { if in == nil { return nil } - out := new(ElasticsearchClusterConfigInitParameters) + out := new(DiskSizeAutoscalingMongodInitParameters) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *ElasticsearchClusterConfigObservation) DeepCopyInto(out *ElasticsearchClusterConfigObservation) { +func (in *DiskSizeAutoscalingMongodObservation) DeepCopyInto(out *DiskSizeAutoscalingMongodObservation) { *out = *in - if in.DataNode != nil { - in, out := &in.DataNode, &out.DataNode - *out = make([]DataNodeObservation, len(*in)) - for i := range *in { - (*in)[i].DeepCopyInto(&(*out)[i]) - } - } - if in.Edition != nil { - in, out := &in.Edition, &out.Edition - *out = new(string) + if in.DiskSizeLimit != nil { + in, out := &in.DiskSizeLimit, &out.DiskSizeLimit + *out = new(float64) **out = **in } - if in.MasterNode != nil { - in, out := &in.MasterNode, &out.MasterNode - *out = make([]MasterNodeObservation, len(*in)) - for i := range *in { - (*in)[i].DeepCopyInto(&(*out)[i]) - } - } - if in.Plugins != nil { - in, out := &in.Plugins, &out.Plugins - *out = make([]*string, len(*in)) - for i := range *in { - if (*in)[i] != nil { - in, out := &(*in)[i], &(*out)[i] - *out = new(string) - **out = **in - } - } + if in.EmergencyUsageThreshold != nil { + in, out := &in.EmergencyUsageThreshold, &out.EmergencyUsageThreshold + *out = new(float64) + **out = **in } - if in.Version != nil { - in, out := &in.Version, &out.Version - *out = new(string) + if in.PlannedUsageThreshold != nil { + in, out := &in.PlannedUsageThreshold, &out.PlannedUsageThreshold + *out = new(float64) **out = **in } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ElasticsearchClusterConfigObservation. -func (in *ElasticsearchClusterConfigObservation) DeepCopy() *ElasticsearchClusterConfigObservation { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DiskSizeAutoscalingMongodObservation. +func (in *DiskSizeAutoscalingMongodObservation) DeepCopy() *DiskSizeAutoscalingMongodObservation { if in == nil { return nil } - out := new(ElasticsearchClusterConfigObservation) + out := new(DiskSizeAutoscalingMongodObservation) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *ElasticsearchClusterConfigParameters) DeepCopyInto(out *ElasticsearchClusterConfigParameters) { +func (in *DiskSizeAutoscalingMongodParameters) DeepCopyInto(out *DiskSizeAutoscalingMongodParameters) { *out = *in - out.AdminPasswordSecretRef = in.AdminPasswordSecretRef - if in.DataNode != nil { - in, out := &in.DataNode, &out.DataNode - *out = make([]DataNodeParameters, len(*in)) - for i := range *in { - (*in)[i].DeepCopyInto(&(*out)[i]) - } - } - if in.Edition != nil { - in, out := &in.Edition, &out.Edition - *out = new(string) + if in.DiskSizeLimit != nil { + in, out := &in.DiskSizeLimit, &out.DiskSizeLimit + *out = new(float64) **out = **in } - if in.MasterNode != nil { - in, out := &in.MasterNode, &out.MasterNode - *out = make([]MasterNodeParameters, len(*in)) - for i := range *in { - (*in)[i].DeepCopyInto(&(*out)[i]) - } - } - if in.Plugins != nil { - in, out := &in.Plugins, &out.Plugins - *out = make([]*string, len(*in)) - for i := range *in { - if (*in)[i] != nil { - in, out := &(*in)[i], &(*out)[i] - *out = new(string) - **out = **in - } - } + if in.EmergencyUsageThreshold != nil { + in, out := &in.EmergencyUsageThreshold, &out.EmergencyUsageThreshold + *out = new(float64) + **out = **in } - if in.Version != nil { - in, out := &in.Version, &out.Version - *out = new(string) + if in.PlannedUsageThreshold != nil { + in, out := &in.PlannedUsageThreshold, &out.PlannedUsageThreshold + *out = new(float64) **out = **in } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ElasticsearchClusterConfigParameters. -func (in *ElasticsearchClusterConfigParameters) DeepCopy() *ElasticsearchClusterConfigParameters { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DiskSizeAutoscalingMongodParameters. +func (in *DiskSizeAutoscalingMongodParameters) DeepCopy() *DiskSizeAutoscalingMongodParameters { if in == nil { return nil } - out := new(ElasticsearchClusterConfigParameters) + out := new(DiskSizeAutoscalingMongodParameters) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *ElasticsearchClusterHostInitParameters) DeepCopyInto(out *ElasticsearchClusterHostInitParameters) { +func (in *DiskSizeAutoscalingMongoinfraInitParameters) DeepCopyInto(out *DiskSizeAutoscalingMongoinfraInitParameters) { *out = *in - if in.AssignPublicIP != nil { - in, out := &in.AssignPublicIP, &out.AssignPublicIP - *out = new(bool) + if in.DiskSizeLimit != nil { + in, out := &in.DiskSizeLimit, &out.DiskSizeLimit + *out = new(float64) **out = **in } - if in.Name != nil { - in, out := &in.Name, &out.Name - *out = new(string) + if in.EmergencyUsageThreshold != nil { + in, out := &in.EmergencyUsageThreshold, &out.EmergencyUsageThreshold + *out = new(float64) **out = **in } - if in.SubnetID != nil { - in, out := &in.SubnetID, &out.SubnetID - *out = new(string) + if in.PlannedUsageThreshold != nil { + in, out := &in.PlannedUsageThreshold, &out.PlannedUsageThreshold + *out = new(float64) **out = **in } - if in.SubnetIDRef != nil { - in, out := &in.SubnetIDRef, &out.SubnetIDRef - *out = new(v1.Reference) - (*in).DeepCopyInto(*out) +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DiskSizeAutoscalingMongoinfraInitParameters. +func (in *DiskSizeAutoscalingMongoinfraInitParameters) DeepCopy() *DiskSizeAutoscalingMongoinfraInitParameters { + if in == nil { + return nil } - if in.SubnetIDSelector != nil { - in, out := &in.SubnetIDSelector, &out.SubnetIDSelector - *out = new(v1.Selector) - (*in).DeepCopyInto(*out) + out := new(DiskSizeAutoscalingMongoinfraInitParameters) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *DiskSizeAutoscalingMongoinfraObservation) DeepCopyInto(out *DiskSizeAutoscalingMongoinfraObservation) { + *out = *in + if in.DiskSizeLimit != nil { + in, out := &in.DiskSizeLimit, &out.DiskSizeLimit + *out = new(float64) + **out = **in } - if in.Type != nil { - in, out := &in.Type, &out.Type - *out = new(string) + if in.EmergencyUsageThreshold != nil { + in, out := &in.EmergencyUsageThreshold, &out.EmergencyUsageThreshold + *out = new(float64) **out = **in } - if in.Zone != nil { - in, out := &in.Zone, &out.Zone - *out = new(string) + if in.PlannedUsageThreshold != nil { + in, out := &in.PlannedUsageThreshold, &out.PlannedUsageThreshold + *out = new(float64) **out = **in } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ElasticsearchClusterHostInitParameters. -func (in *ElasticsearchClusterHostInitParameters) DeepCopy() *ElasticsearchClusterHostInitParameters { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DiskSizeAutoscalingMongoinfraObservation. +func (in *DiskSizeAutoscalingMongoinfraObservation) DeepCopy() *DiskSizeAutoscalingMongoinfraObservation { if in == nil { return nil } - out := new(ElasticsearchClusterHostInitParameters) + out := new(DiskSizeAutoscalingMongoinfraObservation) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *ElasticsearchClusterHostObservation) DeepCopyInto(out *ElasticsearchClusterHostObservation) { +func (in *DiskSizeAutoscalingMongoinfraParameters) DeepCopyInto(out *DiskSizeAutoscalingMongoinfraParameters) { *out = *in - if in.AssignPublicIP != nil { - in, out := &in.AssignPublicIP, &out.AssignPublicIP - *out = new(bool) + if in.DiskSizeLimit != nil { + in, out := &in.DiskSizeLimit, &out.DiskSizeLimit + *out = new(float64) **out = **in } - if in.Fqdn != nil { - in, out := &in.Fqdn, &out.Fqdn - *out = new(string) + if in.EmergencyUsageThreshold != nil { + in, out := &in.EmergencyUsageThreshold, &out.EmergencyUsageThreshold + *out = new(float64) **out = **in } - if in.Name != nil { - in, out := &in.Name, &out.Name - *out = new(string) + if in.PlannedUsageThreshold != nil { + in, out := &in.PlannedUsageThreshold, &out.PlannedUsageThreshold + *out = new(float64) **out = **in } - if in.SubnetID != nil { - in, out := &in.SubnetID, &out.SubnetID - *out = new(string) +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DiskSizeAutoscalingMongoinfraParameters. +func (in *DiskSizeAutoscalingMongoinfraParameters) DeepCopy() *DiskSizeAutoscalingMongoinfraParameters { + if in == nil { + return nil + } + out := new(DiskSizeAutoscalingMongoinfraParameters) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *DiskSizeAutoscalingMongosInitParameters) DeepCopyInto(out *DiskSizeAutoscalingMongosInitParameters) { + *out = *in + if in.DiskSizeLimit != nil { + in, out := &in.DiskSizeLimit, &out.DiskSizeLimit + *out = new(float64) **out = **in } - if in.Type != nil { - in, out := &in.Type, &out.Type - *out = new(string) + if in.EmergencyUsageThreshold != nil { + in, out := &in.EmergencyUsageThreshold, &out.EmergencyUsageThreshold + *out = new(float64) **out = **in } - if in.Zone != nil { - in, out := &in.Zone, &out.Zone - *out = new(string) + if in.PlannedUsageThreshold != nil { + in, out := &in.PlannedUsageThreshold, &out.PlannedUsageThreshold + *out = new(float64) **out = **in } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ElasticsearchClusterHostObservation. -func (in *ElasticsearchClusterHostObservation) DeepCopy() *ElasticsearchClusterHostObservation { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DiskSizeAutoscalingMongosInitParameters. +func (in *DiskSizeAutoscalingMongosInitParameters) DeepCopy() *DiskSizeAutoscalingMongosInitParameters { if in == nil { return nil } - out := new(ElasticsearchClusterHostObservation) + out := new(DiskSizeAutoscalingMongosInitParameters) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *ElasticsearchClusterHostParameters) DeepCopyInto(out *ElasticsearchClusterHostParameters) { +func (in *DiskSizeAutoscalingMongosObservation) DeepCopyInto(out *DiskSizeAutoscalingMongosObservation) { *out = *in - if in.AssignPublicIP != nil { - in, out := &in.AssignPublicIP, &out.AssignPublicIP - *out = new(bool) + if in.DiskSizeLimit != nil { + in, out := &in.DiskSizeLimit, &out.DiskSizeLimit + *out = new(float64) **out = **in } - if in.Name != nil { - in, out := &in.Name, &out.Name - *out = new(string) + if in.EmergencyUsageThreshold != nil { + in, out := &in.EmergencyUsageThreshold, &out.EmergencyUsageThreshold + *out = new(float64) **out = **in } - if in.SubnetID != nil { - in, out := &in.SubnetID, &out.SubnetID - *out = new(string) + if in.PlannedUsageThreshold != nil { + in, out := &in.PlannedUsageThreshold, &out.PlannedUsageThreshold + *out = new(float64) **out = **in } - if in.SubnetIDRef != nil { - in, out := &in.SubnetIDRef, &out.SubnetIDRef - *out = new(v1.Reference) - (*in).DeepCopyInto(*out) +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DiskSizeAutoscalingMongosObservation. +func (in *DiskSizeAutoscalingMongosObservation) DeepCopy() *DiskSizeAutoscalingMongosObservation { + if in == nil { + return nil } - if in.SubnetIDSelector != nil { - in, out := &in.SubnetIDSelector, &out.SubnetIDSelector - *out = new(v1.Selector) - (*in).DeepCopyInto(*out) + out := new(DiskSizeAutoscalingMongosObservation) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *DiskSizeAutoscalingMongosParameters) DeepCopyInto(out *DiskSizeAutoscalingMongosParameters) { + *out = *in + if in.DiskSizeLimit != nil { + in, out := &in.DiskSizeLimit, &out.DiskSizeLimit + *out = new(float64) + **out = **in } - if in.Type != nil { - in, out := &in.Type, &out.Type - *out = new(string) + if in.EmergencyUsageThreshold != nil { + in, out := &in.EmergencyUsageThreshold, &out.EmergencyUsageThreshold + *out = new(float64) **out = **in } - if in.Zone != nil { - in, out := &in.Zone, &out.Zone - *out = new(string) + if in.PlannedUsageThreshold != nil { + in, out := &in.PlannedUsageThreshold, &out.PlannedUsageThreshold + *out = new(float64) **out = **in } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ElasticsearchClusterHostParameters. -func (in *ElasticsearchClusterHostParameters) DeepCopy() *ElasticsearchClusterHostParameters { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DiskSizeAutoscalingMongosParameters. +func (in *DiskSizeAutoscalingMongosParameters) DeepCopy() *DiskSizeAutoscalingMongosParameters { if in == nil { return nil } - out := new(ElasticsearchClusterHostParameters) + out := new(DiskSizeAutoscalingMongosParameters) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *ElasticsearchClusterInitParameters) DeepCopyInto(out *ElasticsearchClusterInitParameters) { +func (in *DiskSizeAutoscalingObservation) DeepCopyInto(out *DiskSizeAutoscalingObservation) { *out = *in - if in.Config != nil { - in, out := &in.Config, &out.Config - *out = make([]ElasticsearchClusterConfigInitParameters, len(*in)) - for i := range *in { - (*in)[i].DeepCopyInto(&(*out)[i]) - } - } - if in.DeletionProtection != nil { - in, out := &in.DeletionProtection, &out.DeletionProtection - *out = new(bool) + if in.DiskSizeLimit != nil { + in, out := &in.DiskSizeLimit, &out.DiskSizeLimit + *out = new(float64) **out = **in } - if in.Description != nil { - in, out := &in.Description, &out.Description - *out = new(string) + if in.EmergencyUsageThreshold != nil { + in, out := &in.EmergencyUsageThreshold, &out.EmergencyUsageThreshold + *out = new(float64) **out = **in } - if in.Environment != nil { - in, out := &in.Environment, &out.Environment - *out = new(string) + if in.PlannedUsageThreshold != nil { + in, out := &in.PlannedUsageThreshold, &out.PlannedUsageThreshold + *out = new(float64) **out = **in } - if in.FolderID != nil { - in, out := &in.FolderID, &out.FolderID - *out = new(string) +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DiskSizeAutoscalingObservation. +func (in *DiskSizeAutoscalingObservation) DeepCopy() *DiskSizeAutoscalingObservation { + if in == nil { + return nil + } + out := new(DiskSizeAutoscalingObservation) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *DiskSizeAutoscalingParameters) DeepCopyInto(out *DiskSizeAutoscalingParameters) { + *out = *in + if in.DiskSizeLimit != nil { + in, out := &in.DiskSizeLimit, &out.DiskSizeLimit + *out = new(float64) **out = **in } - if in.FolderIDRef != nil { - in, out := &in.FolderIDRef, &out.FolderIDRef - *out = new(v1.Reference) - (*in).DeepCopyInto(*out) - } - if in.FolderIDSelector != nil { - in, out := &in.FolderIDSelector, &out.FolderIDSelector - *out = new(v1.Selector) - (*in).DeepCopyInto(*out) - } - if in.Host != nil { - in, out := &in.Host, &out.Host - *out = make([]ElasticsearchClusterHostInitParameters, len(*in)) - for i := range *in { - (*in)[i].DeepCopyInto(&(*out)[i]) - } - } - if in.Labels != nil { - in, out := &in.Labels, &out.Labels - *out = make(map[string]*string, len(*in)) - for key, val := range *in { - var outVal *string - if val == nil { - (*out)[key] = nil - } else { - inVal := (*in)[key] - in, out := &inVal, &outVal - *out = new(string) - **out = **in - } - (*out)[key] = outVal - } - } - if in.MaintenanceWindow != nil { - in, out := &in.MaintenanceWindow, &out.MaintenanceWindow - *out = make([]ElasticsearchClusterMaintenanceWindowInitParameters, len(*in)) - for i := range *in { - (*in)[i].DeepCopyInto(&(*out)[i]) - } - } - if in.Name != nil { - in, out := &in.Name, &out.Name - *out = new(string) - **out = **in - } - if in.NetworkID != nil { - in, out := &in.NetworkID, &out.NetworkID - *out = new(string) + if in.EmergencyUsageThreshold != nil { + in, out := &in.EmergencyUsageThreshold, &out.EmergencyUsageThreshold + *out = new(float64) **out = **in } - if in.NetworkIDRef != nil { - in, out := &in.NetworkIDRef, &out.NetworkIDRef - *out = new(v1.Reference) - (*in).DeepCopyInto(*out) - } - if in.NetworkIDSelector != nil { - in, out := &in.NetworkIDSelector, &out.NetworkIDSelector - *out = new(v1.Selector) - (*in).DeepCopyInto(*out) - } - if in.SecurityGroupIds != nil { - in, out := &in.SecurityGroupIds, &out.SecurityGroupIds - *out = make([]*string, len(*in)) - for i := range *in { - if (*in)[i] != nil { - in, out := &(*in)[i], &(*out)[i] - *out = new(string) - **out = **in - } - } - } - if in.SecurityGroupIdsRefs != nil { - in, out := &in.SecurityGroupIdsRefs, &out.SecurityGroupIdsRefs - *out = make([]v1.Reference, len(*in)) - for i := range *in { - (*in)[i].DeepCopyInto(&(*out)[i]) - } - } - if in.SecurityGroupIdsSelector != nil { - in, out := &in.SecurityGroupIdsSelector, &out.SecurityGroupIdsSelector - *out = new(v1.Selector) - (*in).DeepCopyInto(*out) - } - if in.ServiceAccountID != nil { - in, out := &in.ServiceAccountID, &out.ServiceAccountID - *out = new(string) + if in.PlannedUsageThreshold != nil { + in, out := &in.PlannedUsageThreshold, &out.PlannedUsageThreshold + *out = new(float64) **out = **in } - if in.ServiceAccountIDRef != nil { - in, out := &in.ServiceAccountIDRef, &out.ServiceAccountIDRef - *out = new(v1.Reference) - (*in).DeepCopyInto(*out) - } - if in.ServiceAccountIDSelector != nil { - in, out := &in.ServiceAccountIDSelector, &out.ServiceAccountIDSelector - *out = new(v1.Selector) - (*in).DeepCopyInto(*out) - } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ElasticsearchClusterInitParameters. -func (in *ElasticsearchClusterInitParameters) DeepCopy() *ElasticsearchClusterInitParameters { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DiskSizeAutoscalingParameters. +func (in *DiskSizeAutoscalingParameters) DeepCopy() *DiskSizeAutoscalingParameters { if in == nil { return nil } - out := new(ElasticsearchClusterInitParameters) + out := new(DiskSizeAutoscalingParameters) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *ElasticsearchClusterList) DeepCopyInto(out *ElasticsearchClusterList) { +func (in *ElasticsearchCluster) DeepCopyInto(out *ElasticsearchCluster) { *out = *in out.TypeMeta = in.TypeMeta - in.ListMeta.DeepCopyInto(&out.ListMeta) - if in.Items != nil { - in, out := &in.Items, &out.Items - *out = make([]ElasticsearchCluster, len(*in)) - for i := range *in { - (*in)[i].DeepCopyInto(&(*out)[i]) - } - } + in.ObjectMeta.DeepCopyInto(&out.ObjectMeta) + in.Spec.DeepCopyInto(&out.Spec) + in.Status.DeepCopyInto(&out.Status) } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ElasticsearchClusterList. -func (in *ElasticsearchClusterList) DeepCopy() *ElasticsearchClusterList { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ElasticsearchCluster. +func (in *ElasticsearchCluster) DeepCopy() *ElasticsearchCluster { if in == nil { return nil } - out := new(ElasticsearchClusterList) + out := new(ElasticsearchCluster) in.DeepCopyInto(out) return out } // DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object. -func (in *ElasticsearchClusterList) DeepCopyObject() runtime.Object { +func (in *ElasticsearchCluster) DeepCopyObject() runtime.Object { if c := in.DeepCopy(); c != nil { return c } @@ -4305,219 +4841,308 @@ func (in *ElasticsearchClusterList) DeepCopyObject() runtime.Object { } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *ElasticsearchClusterMaintenanceWindowInitParameters) DeepCopyInto(out *ElasticsearchClusterMaintenanceWindowInitParameters) { +func (in *ElasticsearchClusterConfigInitParameters) DeepCopyInto(out *ElasticsearchClusterConfigInitParameters) { *out = *in - if in.Day != nil { - in, out := &in.Day, &out.Day - *out = new(string) - **out = **in - } - if in.Hour != nil { - in, out := &in.Hour, &out.Hour - *out = new(float64) - **out = **in + out.AdminPasswordSecretRef = in.AdminPasswordSecretRef + if in.DataNode != nil { + in, out := &in.DataNode, &out.DataNode + *out = make([]DataNodeInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } } - if in.Type != nil { - in, out := &in.Type, &out.Type + if in.Edition != nil { + in, out := &in.Edition, &out.Edition *out = new(string) **out = **in } -} - -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ElasticsearchClusterMaintenanceWindowInitParameters. -func (in *ElasticsearchClusterMaintenanceWindowInitParameters) DeepCopy() *ElasticsearchClusterMaintenanceWindowInitParameters { - if in == nil { - return nil - } - out := new(ElasticsearchClusterMaintenanceWindowInitParameters) - in.DeepCopyInto(out) - return out -} - -// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *ElasticsearchClusterMaintenanceWindowObservation) DeepCopyInto(out *ElasticsearchClusterMaintenanceWindowObservation) { - *out = *in - if in.Day != nil { - in, out := &in.Day, &out.Day - *out = new(string) - **out = **in + if in.MasterNode != nil { + in, out := &in.MasterNode, &out.MasterNode + *out = make([]MasterNodeInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } } - if in.Hour != nil { - in, out := &in.Hour, &out.Hour - *out = new(float64) - **out = **in + if in.Plugins != nil { + in, out := &in.Plugins, &out.Plugins + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } } - if in.Type != nil { - in, out := &in.Type, &out.Type + if in.Version != nil { + in, out := &in.Version, &out.Version *out = new(string) **out = **in } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ElasticsearchClusterMaintenanceWindowObservation. -func (in *ElasticsearchClusterMaintenanceWindowObservation) DeepCopy() *ElasticsearchClusterMaintenanceWindowObservation { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ElasticsearchClusterConfigInitParameters. +func (in *ElasticsearchClusterConfigInitParameters) DeepCopy() *ElasticsearchClusterConfigInitParameters { if in == nil { return nil } - out := new(ElasticsearchClusterMaintenanceWindowObservation) + out := new(ElasticsearchClusterConfigInitParameters) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *ElasticsearchClusterMaintenanceWindowParameters) DeepCopyInto(out *ElasticsearchClusterMaintenanceWindowParameters) { +func (in *ElasticsearchClusterConfigObservation) DeepCopyInto(out *ElasticsearchClusterConfigObservation) { *out = *in - if in.Day != nil { - in, out := &in.Day, &out.Day + if in.DataNode != nil { + in, out := &in.DataNode, &out.DataNode + *out = make([]DataNodeObservation, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Edition != nil { + in, out := &in.Edition, &out.Edition *out = new(string) **out = **in } - if in.Hour != nil { - in, out := &in.Hour, &out.Hour - *out = new(float64) - **out = **in + if in.MasterNode != nil { + in, out := &in.MasterNode, &out.MasterNode + *out = make([]MasterNodeObservation, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } } - if in.Type != nil { - in, out := &in.Type, &out.Type + if in.Plugins != nil { + in, out := &in.Plugins, &out.Plugins + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.Version != nil { + in, out := &in.Version, &out.Version *out = new(string) **out = **in } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ElasticsearchClusterMaintenanceWindowParameters. -func (in *ElasticsearchClusterMaintenanceWindowParameters) DeepCopy() *ElasticsearchClusterMaintenanceWindowParameters { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ElasticsearchClusterConfigObservation. +func (in *ElasticsearchClusterConfigObservation) DeepCopy() *ElasticsearchClusterConfigObservation { if in == nil { return nil } - out := new(ElasticsearchClusterMaintenanceWindowParameters) + out := new(ElasticsearchClusterConfigObservation) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *ElasticsearchClusterObservation) DeepCopyInto(out *ElasticsearchClusterObservation) { +func (in *ElasticsearchClusterConfigParameters) DeepCopyInto(out *ElasticsearchClusterConfigParameters) { *out = *in - if in.Config != nil { - in, out := &in.Config, &out.Config - *out = make([]ElasticsearchClusterConfigObservation, len(*in)) + out.AdminPasswordSecretRef = in.AdminPasswordSecretRef + if in.DataNode != nil { + in, out := &in.DataNode, &out.DataNode + *out = make([]DataNodeParameters, len(*in)) for i := range *in { (*in)[i].DeepCopyInto(&(*out)[i]) } } - if in.CreatedAt != nil { - in, out := &in.CreatedAt, &out.CreatedAt + if in.Edition != nil { + in, out := &in.Edition, &out.Edition *out = new(string) **out = **in } - if in.DeletionProtection != nil { - in, out := &in.DeletionProtection, &out.DeletionProtection - *out = new(bool) + if in.MasterNode != nil { + in, out := &in.MasterNode, &out.MasterNode + *out = make([]MasterNodeParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Plugins != nil { + in, out := &in.Plugins, &out.Plugins + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.Version != nil { + in, out := &in.Version, &out.Version + *out = new(string) **out = **in } - if in.Description != nil { - in, out := &in.Description, &out.Description +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ElasticsearchClusterConfigParameters. +func (in *ElasticsearchClusterConfigParameters) DeepCopy() *ElasticsearchClusterConfigParameters { + if in == nil { + return nil + } + out := new(ElasticsearchClusterConfigParameters) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *ElasticsearchClusterHostInitParameters) DeepCopyInto(out *ElasticsearchClusterHostInitParameters) { + *out = *in + if in.AssignPublicIP != nil { + in, out := &in.AssignPublicIP, &out.AssignPublicIP + *out = new(bool) + **out = **in + } + if in.Name != nil { + in, out := &in.Name, &out.Name *out = new(string) **out = **in } - if in.Environment != nil { - in, out := &in.Environment, &out.Environment + if in.SubnetID != nil { + in, out := &in.SubnetID, &out.SubnetID *out = new(string) **out = **in } - if in.FolderID != nil { - in, out := &in.FolderID, &out.FolderID + if in.SubnetIDRef != nil { + in, out := &in.SubnetIDRef, &out.SubnetIDRef + *out = new(v1.Reference) + (*in).DeepCopyInto(*out) + } + if in.SubnetIDSelector != nil { + in, out := &in.SubnetIDSelector, &out.SubnetIDSelector + *out = new(v1.Selector) + (*in).DeepCopyInto(*out) + } + if in.Type != nil { + in, out := &in.Type, &out.Type *out = new(string) **out = **in } - if in.Health != nil { - in, out := &in.Health, &out.Health + if in.Zone != nil { + in, out := &in.Zone, &out.Zone *out = new(string) **out = **in } - if in.Host != nil { - in, out := &in.Host, &out.Host - *out = make([]ElasticsearchClusterHostObservation, len(*in)) - for i := range *in { - (*in)[i].DeepCopyInto(&(*out)[i]) - } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ElasticsearchClusterHostInitParameters. +func (in *ElasticsearchClusterHostInitParameters) DeepCopy() *ElasticsearchClusterHostInitParameters { + if in == nil { + return nil } - if in.ID != nil { - in, out := &in.ID, &out.ID + out := new(ElasticsearchClusterHostInitParameters) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *ElasticsearchClusterHostObservation) DeepCopyInto(out *ElasticsearchClusterHostObservation) { + *out = *in + if in.AssignPublicIP != nil { + in, out := &in.AssignPublicIP, &out.AssignPublicIP + *out = new(bool) + **out = **in + } + if in.Fqdn != nil { + in, out := &in.Fqdn, &out.Fqdn *out = new(string) **out = **in } - if in.Labels != nil { - in, out := &in.Labels, &out.Labels - *out = make(map[string]*string, len(*in)) - for key, val := range *in { - var outVal *string - if val == nil { - (*out)[key] = nil - } else { - inVal := (*in)[key] - in, out := &inVal, &outVal - *out = new(string) - **out = **in - } - (*out)[key] = outVal - } + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in } - if in.MaintenanceWindow != nil { - in, out := &in.MaintenanceWindow, &out.MaintenanceWindow - *out = make([]ElasticsearchClusterMaintenanceWindowObservation, len(*in)) - for i := range *in { - (*in)[i].DeepCopyInto(&(*out)[i]) - } + if in.SubnetID != nil { + in, out := &in.SubnetID, &out.SubnetID + *out = new(string) + **out = **in + } + if in.Type != nil { + in, out := &in.Type, &out.Type + *out = new(string) + **out = **in + } + if in.Zone != nil { + in, out := &in.Zone, &out.Zone + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ElasticsearchClusterHostObservation. +func (in *ElasticsearchClusterHostObservation) DeepCopy() *ElasticsearchClusterHostObservation { + if in == nil { + return nil + } + out := new(ElasticsearchClusterHostObservation) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *ElasticsearchClusterHostParameters) DeepCopyInto(out *ElasticsearchClusterHostParameters) { + *out = *in + if in.AssignPublicIP != nil { + in, out := &in.AssignPublicIP, &out.AssignPublicIP + *out = new(bool) + **out = **in } if in.Name != nil { in, out := &in.Name, &out.Name *out = new(string) **out = **in } - if in.NetworkID != nil { - in, out := &in.NetworkID, &out.NetworkID + if in.SubnetID != nil { + in, out := &in.SubnetID, &out.SubnetID *out = new(string) **out = **in } - if in.SecurityGroupIds != nil { - in, out := &in.SecurityGroupIds, &out.SecurityGroupIds - *out = make([]*string, len(*in)) - for i := range *in { - if (*in)[i] != nil { - in, out := &(*in)[i], &(*out)[i] - *out = new(string) - **out = **in - } - } + if in.SubnetIDRef != nil { + in, out := &in.SubnetIDRef, &out.SubnetIDRef + *out = new(v1.Reference) + (*in).DeepCopyInto(*out) } - if in.ServiceAccountID != nil { - in, out := &in.ServiceAccountID, &out.ServiceAccountID + if in.SubnetIDSelector != nil { + in, out := &in.SubnetIDSelector, &out.SubnetIDSelector + *out = new(v1.Selector) + (*in).DeepCopyInto(*out) + } + if in.Type != nil { + in, out := &in.Type, &out.Type *out = new(string) **out = **in } - if in.Status != nil { - in, out := &in.Status, &out.Status + if in.Zone != nil { + in, out := &in.Zone, &out.Zone *out = new(string) **out = **in } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ElasticsearchClusterObservation. -func (in *ElasticsearchClusterObservation) DeepCopy() *ElasticsearchClusterObservation { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ElasticsearchClusterHostParameters. +func (in *ElasticsearchClusterHostParameters) DeepCopy() *ElasticsearchClusterHostParameters { if in == nil { return nil } - out := new(ElasticsearchClusterObservation) + out := new(ElasticsearchClusterHostParameters) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *ElasticsearchClusterParameters) DeepCopyInto(out *ElasticsearchClusterParameters) { +func (in *ElasticsearchClusterInitParameters) DeepCopyInto(out *ElasticsearchClusterInitParameters) { *out = *in if in.Config != nil { in, out := &in.Config, &out.Config - *out = make([]ElasticsearchClusterConfigParameters, len(*in)) + *out = make([]ElasticsearchClusterConfigInitParameters, len(*in)) for i := range *in { (*in)[i].DeepCopyInto(&(*out)[i]) } @@ -4554,7 +5179,7 @@ func (in *ElasticsearchClusterParameters) DeepCopyInto(out *ElasticsearchCluster } if in.Host != nil { in, out := &in.Host, &out.Host - *out = make([]ElasticsearchClusterHostParameters, len(*in)) + *out = make([]ElasticsearchClusterHostInitParameters, len(*in)) for i := range *in { (*in)[i].DeepCopyInto(&(*out)[i]) } @@ -4577,7 +5202,7 @@ func (in *ElasticsearchClusterParameters) DeepCopyInto(out *ElasticsearchCluster } if in.MaintenanceWindow != nil { in, out := &in.MaintenanceWindow, &out.MaintenanceWindow - *out = make([]ElasticsearchClusterMaintenanceWindowParameters, len(*in)) + *out = make([]ElasticsearchClusterMaintenanceWindowInitParameters, len(*in)) for i := range *in { (*in)[i].DeepCopyInto(&(*out)[i]) } @@ -4642,1017 +5267,973 @@ func (in *ElasticsearchClusterParameters) DeepCopyInto(out *ElasticsearchCluster } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ElasticsearchClusterParameters. -func (in *ElasticsearchClusterParameters) DeepCopy() *ElasticsearchClusterParameters { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ElasticsearchClusterInitParameters. +func (in *ElasticsearchClusterInitParameters) DeepCopy() *ElasticsearchClusterInitParameters { if in == nil { return nil } - out := new(ElasticsearchClusterParameters) + out := new(ElasticsearchClusterInitParameters) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *ElasticsearchClusterSpec) DeepCopyInto(out *ElasticsearchClusterSpec) { +func (in *ElasticsearchClusterList) DeepCopyInto(out *ElasticsearchClusterList) { *out = *in - in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) - in.ForProvider.DeepCopyInto(&out.ForProvider) - in.InitProvider.DeepCopyInto(&out.InitProvider) + out.TypeMeta = in.TypeMeta + in.ListMeta.DeepCopyInto(&out.ListMeta) + if in.Items != nil { + in, out := &in.Items, &out.Items + *out = make([]ElasticsearchCluster, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ElasticsearchClusterSpec. -func (in *ElasticsearchClusterSpec) DeepCopy() *ElasticsearchClusterSpec { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ElasticsearchClusterList. +func (in *ElasticsearchClusterList) DeepCopy() *ElasticsearchClusterList { if in == nil { return nil } - out := new(ElasticsearchClusterSpec) + out := new(ElasticsearchClusterList) in.DeepCopyInto(out) return out } -// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *ElasticsearchClusterStatus) DeepCopyInto(out *ElasticsearchClusterStatus) { - *out = *in - in.ResourceStatus.DeepCopyInto(&out.ResourceStatus) - in.AtProvider.DeepCopyInto(&out.AtProvider) -} - -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ElasticsearchClusterStatus. -func (in *ElasticsearchClusterStatus) DeepCopy() *ElasticsearchClusterStatus { - if in == nil { - return nil +// DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object. +func (in *ElasticsearchClusterList) DeepCopyObject() runtime.Object { + if c := in.DeepCopy(); c != nil { + return c } - out := new(ElasticsearchClusterStatus) - in.DeepCopyInto(out) - return out + return nil } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *ExtensionInitParameters) DeepCopyInto(out *ExtensionInitParameters) { +func (in *ElasticsearchClusterMaintenanceWindowInitParameters) DeepCopyInto(out *ElasticsearchClusterMaintenanceWindowInitParameters) { *out = *in - if in.Name != nil { - in, out := &in.Name, &out.Name - *out = new(string) - **out = **in - } - if in.Version != nil { - in, out := &in.Version, &out.Version + if in.Day != nil { + in, out := &in.Day, &out.Day *out = new(string) **out = **in } -} - -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ExtensionInitParameters. -func (in *ExtensionInitParameters) DeepCopy() *ExtensionInitParameters { - if in == nil { - return nil - } - out := new(ExtensionInitParameters) - in.DeepCopyInto(out) - return out -} - -// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *ExtensionObservation) DeepCopyInto(out *ExtensionObservation) { - *out = *in - if in.Name != nil { - in, out := &in.Name, &out.Name - *out = new(string) + if in.Hour != nil { + in, out := &in.Hour, &out.Hour + *out = new(float64) **out = **in } - if in.Version != nil { - in, out := &in.Version, &out.Version + if in.Type != nil { + in, out := &in.Type, &out.Type *out = new(string) **out = **in } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ExtensionObservation. -func (in *ExtensionObservation) DeepCopy() *ExtensionObservation { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ElasticsearchClusterMaintenanceWindowInitParameters. +func (in *ElasticsearchClusterMaintenanceWindowInitParameters) DeepCopy() *ElasticsearchClusterMaintenanceWindowInitParameters { if in == nil { return nil } - out := new(ExtensionObservation) + out := new(ElasticsearchClusterMaintenanceWindowInitParameters) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *ExtensionParameters) DeepCopyInto(out *ExtensionParameters) { +func (in *ElasticsearchClusterMaintenanceWindowObservation) DeepCopyInto(out *ElasticsearchClusterMaintenanceWindowObservation) { *out = *in - if in.Name != nil { - in, out := &in.Name, &out.Name + if in.Day != nil { + in, out := &in.Day, &out.Day *out = new(string) **out = **in } - if in.Version != nil { - in, out := &in.Version, &out.Version + if in.Hour != nil { + in, out := &in.Hour, &out.Hour + *out = new(float64) + **out = **in + } + if in.Type != nil { + in, out := &in.Type, &out.Type *out = new(string) **out = **in } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ExtensionParameters. -func (in *ExtensionParameters) DeepCopy() *ExtensionParameters { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ElasticsearchClusterMaintenanceWindowObservation. +func (in *ElasticsearchClusterMaintenanceWindowObservation) DeepCopy() *ElasticsearchClusterMaintenanceWindowObservation { if in == nil { return nil } - out := new(ExtensionParameters) + out := new(ElasticsearchClusterMaintenanceWindowObservation) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *ExternalClusterInitParameters) DeepCopyInto(out *ExternalClusterInitParameters) { +func (in *ElasticsearchClusterMaintenanceWindowParameters) DeepCopyInto(out *ElasticsearchClusterMaintenanceWindowParameters) { *out = *in - if in.BootstrapServers != nil { - in, out := &in.BootstrapServers, &out.BootstrapServers - *out = new(string) - **out = **in - } - if in.SaslMechanism != nil { - in, out := &in.SaslMechanism, &out.SaslMechanism + if in.Day != nil { + in, out := &in.Day, &out.Day *out = new(string) **out = **in } - if in.SaslPasswordSecretRef != nil { - in, out := &in.SaslPasswordSecretRef, &out.SaslPasswordSecretRef - *out = new(v1.SecretKeySelector) - **out = **in - } - if in.SaslUsername != nil { - in, out := &in.SaslUsername, &out.SaslUsername - *out = new(string) + if in.Hour != nil { + in, out := &in.Hour, &out.Hour + *out = new(float64) **out = **in } - if in.SecurityProtocol != nil { - in, out := &in.SecurityProtocol, &out.SecurityProtocol + if in.Type != nil { + in, out := &in.Type, &out.Type *out = new(string) **out = **in } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ExternalClusterInitParameters. -func (in *ExternalClusterInitParameters) DeepCopy() *ExternalClusterInitParameters { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ElasticsearchClusterMaintenanceWindowParameters. +func (in *ElasticsearchClusterMaintenanceWindowParameters) DeepCopy() *ElasticsearchClusterMaintenanceWindowParameters { if in == nil { return nil } - out := new(ExternalClusterInitParameters) + out := new(ElasticsearchClusterMaintenanceWindowParameters) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *ExternalClusterObservation) DeepCopyInto(out *ExternalClusterObservation) { +func (in *ElasticsearchClusterObservation) DeepCopyInto(out *ElasticsearchClusterObservation) { *out = *in - if in.BootstrapServers != nil { - in, out := &in.BootstrapServers, &out.BootstrapServers + if in.Config != nil { + in, out := &in.Config, &out.Config + *out = make([]ElasticsearchClusterConfigObservation, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.CreatedAt != nil { + in, out := &in.CreatedAt, &out.CreatedAt *out = new(string) **out = **in } - if in.SaslMechanism != nil { - in, out := &in.SaslMechanism, &out.SaslMechanism - *out = new(string) + if in.DeletionProtection != nil { + in, out := &in.DeletionProtection, &out.DeletionProtection + *out = new(bool) **out = **in } - if in.SaslUsername != nil { - in, out := &in.SaslUsername, &out.SaslUsername + if in.Description != nil { + in, out := &in.Description, &out.Description *out = new(string) **out = **in } - if in.SecurityProtocol != nil { - in, out := &in.SecurityProtocol, &out.SecurityProtocol + if in.Environment != nil { + in, out := &in.Environment, &out.Environment *out = new(string) **out = **in } -} - -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ExternalClusterObservation. -func (in *ExternalClusterObservation) DeepCopy() *ExternalClusterObservation { - if in == nil { - return nil - } - out := new(ExternalClusterObservation) - in.DeepCopyInto(out) - return out -} - -// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *ExternalClusterParameters) DeepCopyInto(out *ExternalClusterParameters) { - *out = *in - if in.BootstrapServers != nil { - in, out := &in.BootstrapServers, &out.BootstrapServers + if in.FolderID != nil { + in, out := &in.FolderID, &out.FolderID *out = new(string) **out = **in } - if in.SaslMechanism != nil { - in, out := &in.SaslMechanism, &out.SaslMechanism + if in.Health != nil { + in, out := &in.Health, &out.Health *out = new(string) **out = **in } - if in.SaslPasswordSecretRef != nil { - in, out := &in.SaslPasswordSecretRef, &out.SaslPasswordSecretRef - *out = new(v1.SecretKeySelector) - **out = **in + if in.Host != nil { + in, out := &in.Host, &out.Host + *out = make([]ElasticsearchClusterHostObservation, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } } - if in.SaslUsername != nil { - in, out := &in.SaslUsername, &out.SaslUsername + if in.ID != nil { + in, out := &in.ID, &out.ID *out = new(string) **out = **in } - if in.SecurityProtocol != nil { - in, out := &in.SecurityProtocol, &out.SecurityProtocol - *out = new(string) - **out = **in + if in.Labels != nil { + in, out := &in.Labels, &out.Labels + *out = make(map[string]*string, len(*in)) + for key, val := range *in { + var outVal *string + if val == nil { + (*out)[key] = nil + } else { + inVal := (*in)[key] + in, out := &inVal, &outVal + *out = new(string) + **out = **in + } + (*out)[key] = outVal + } } -} - -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ExternalClusterParameters. -func (in *ExternalClusterParameters) DeepCopy() *ExternalClusterParameters { - if in == nil { - return nil + if in.MaintenanceWindow != nil { + in, out := &in.MaintenanceWindow, &out.MaintenanceWindow + *out = make([]ElasticsearchClusterMaintenanceWindowObservation, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } } - out := new(ExternalClusterParameters) - in.DeepCopyInto(out) - return out -} - -// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *ExternalS3InitParameters) DeepCopyInto(out *ExternalS3InitParameters) { - *out = *in - if in.AccessKeyID != nil { - in, out := &in.AccessKeyID, &out.AccessKeyID + if in.Name != nil { + in, out := &in.Name, &out.Name *out = new(string) **out = **in } - if in.Endpoint != nil { - in, out := &in.Endpoint, &out.Endpoint + if in.NetworkID != nil { + in, out := &in.NetworkID, &out.NetworkID *out = new(string) **out = **in } - if in.Region != nil { - in, out := &in.Region, &out.Region + if in.SecurityGroupIds != nil { + in, out := &in.SecurityGroupIds, &out.SecurityGroupIds + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.ServiceAccountID != nil { + in, out := &in.ServiceAccountID, &out.ServiceAccountID *out = new(string) **out = **in } - if in.SecretAccessKeySecretRef != nil { - in, out := &in.SecretAccessKeySecretRef, &out.SecretAccessKeySecretRef - *out = new(v1.SecretKeySelector) + if in.Status != nil { + in, out := &in.Status, &out.Status + *out = new(string) **out = **in } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ExternalS3InitParameters. -func (in *ExternalS3InitParameters) DeepCopy() *ExternalS3InitParameters { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ElasticsearchClusterObservation. +func (in *ElasticsearchClusterObservation) DeepCopy() *ElasticsearchClusterObservation { if in == nil { return nil } - out := new(ExternalS3InitParameters) + out := new(ElasticsearchClusterObservation) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *ExternalS3Observation) DeepCopyInto(out *ExternalS3Observation) { +func (in *ElasticsearchClusterParameters) DeepCopyInto(out *ElasticsearchClusterParameters) { *out = *in - if in.AccessKeyID != nil { - in, out := &in.AccessKeyID, &out.AccessKeyID - *out = new(string) + if in.Config != nil { + in, out := &in.Config, &out.Config + *out = make([]ElasticsearchClusterConfigParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.DeletionProtection != nil { + in, out := &in.DeletionProtection, &out.DeletionProtection + *out = new(bool) **out = **in } - if in.Endpoint != nil { - in, out := &in.Endpoint, &out.Endpoint + if in.Description != nil { + in, out := &in.Description, &out.Description *out = new(string) **out = **in } - if in.Region != nil { - in, out := &in.Region, &out.Region + if in.Environment != nil { + in, out := &in.Environment, &out.Environment *out = new(string) **out = **in } -} - -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ExternalS3Observation. -func (in *ExternalS3Observation) DeepCopy() *ExternalS3Observation { - if in == nil { - return nil + if in.FolderID != nil { + in, out := &in.FolderID, &out.FolderID + *out = new(string) + **out = **in } - out := new(ExternalS3Observation) - in.DeepCopyInto(out) - return out -} - -// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *ExternalS3Parameters) DeepCopyInto(out *ExternalS3Parameters) { - *out = *in - if in.AccessKeyID != nil { - in, out := &in.AccessKeyID, &out.AccessKeyID + if in.FolderIDRef != nil { + in, out := &in.FolderIDRef, &out.FolderIDRef + *out = new(v1.Reference) + (*in).DeepCopyInto(*out) + } + if in.FolderIDSelector != nil { + in, out := &in.FolderIDSelector, &out.FolderIDSelector + *out = new(v1.Selector) + (*in).DeepCopyInto(*out) + } + if in.Host != nil { + in, out := &in.Host, &out.Host + *out = make([]ElasticsearchClusterHostParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Labels != nil { + in, out := &in.Labels, &out.Labels + *out = make(map[string]*string, len(*in)) + for key, val := range *in { + var outVal *string + if val == nil { + (*out)[key] = nil + } else { + inVal := (*in)[key] + in, out := &inVal, &outVal + *out = new(string) + **out = **in + } + (*out)[key] = outVal + } + } + if in.MaintenanceWindow != nil { + in, out := &in.MaintenanceWindow, &out.MaintenanceWindow + *out = make([]ElasticsearchClusterMaintenanceWindowParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Name != nil { + in, out := &in.Name, &out.Name *out = new(string) **out = **in } - if in.Endpoint != nil { - in, out := &in.Endpoint, &out.Endpoint + if in.NetworkID != nil { + in, out := &in.NetworkID, &out.NetworkID *out = new(string) **out = **in } - if in.Region != nil { - in, out := &in.Region, &out.Region + if in.NetworkIDRef != nil { + in, out := &in.NetworkIDRef, &out.NetworkIDRef + *out = new(v1.Reference) + (*in).DeepCopyInto(*out) + } + if in.NetworkIDSelector != nil { + in, out := &in.NetworkIDSelector, &out.NetworkIDSelector + *out = new(v1.Selector) + (*in).DeepCopyInto(*out) + } + if in.SecurityGroupIds != nil { + in, out := &in.SecurityGroupIds, &out.SecurityGroupIds + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.SecurityGroupIdsRefs != nil { + in, out := &in.SecurityGroupIdsRefs, &out.SecurityGroupIdsRefs + *out = make([]v1.Reference, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.SecurityGroupIdsSelector != nil { + in, out := &in.SecurityGroupIdsSelector, &out.SecurityGroupIdsSelector + *out = new(v1.Selector) + (*in).DeepCopyInto(*out) + } + if in.ServiceAccountID != nil { + in, out := &in.ServiceAccountID, &out.ServiceAccountID *out = new(string) **out = **in } - if in.SecretAccessKeySecretRef != nil { - in, out := &in.SecretAccessKeySecretRef, &out.SecretAccessKeySecretRef - *out = new(v1.SecretKeySelector) - **out = **in + if in.ServiceAccountIDRef != nil { + in, out := &in.ServiceAccountIDRef, &out.ServiceAccountIDRef + *out = new(v1.Reference) + (*in).DeepCopyInto(*out) + } + if in.ServiceAccountIDSelector != nil { + in, out := &in.ServiceAccountIDSelector, &out.ServiceAccountIDSelector + *out = new(v1.Selector) + (*in).DeepCopyInto(*out) } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ExternalS3Parameters. -func (in *ExternalS3Parameters) DeepCopy() *ExternalS3Parameters { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ElasticsearchClusterParameters. +func (in *ElasticsearchClusterParameters) DeepCopy() *ElasticsearchClusterParameters { if in == nil { return nil } - out := new(ExternalS3Parameters) + out := new(ElasticsearchClusterParameters) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *FormatSchemaInitParameters) DeepCopyInto(out *FormatSchemaInitParameters) { +func (in *ElasticsearchClusterSpec) DeepCopyInto(out *ElasticsearchClusterSpec) { *out = *in - if in.Name != nil { - in, out := &in.Name, &out.Name - *out = new(string) - **out = **in - } - if in.Type != nil { - in, out := &in.Type, &out.Type - *out = new(string) - **out = **in - } - if in.URI != nil { - in, out := &in.URI, &out.URI - *out = new(string) - **out = **in - } + in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) + in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new FormatSchemaInitParameters. -func (in *FormatSchemaInitParameters) DeepCopy() *FormatSchemaInitParameters { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ElasticsearchClusterSpec. +func (in *ElasticsearchClusterSpec) DeepCopy() *ElasticsearchClusterSpec { if in == nil { return nil } - out := new(FormatSchemaInitParameters) + out := new(ElasticsearchClusterSpec) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *FormatSchemaObservation) DeepCopyInto(out *FormatSchemaObservation) { +func (in *ElasticsearchClusterStatus) DeepCopyInto(out *ElasticsearchClusterStatus) { *out = *in - if in.Name != nil { - in, out := &in.Name, &out.Name - *out = new(string) - **out = **in - } - if in.Type != nil { - in, out := &in.Type, &out.Type - *out = new(string) - **out = **in - } - if in.URI != nil { - in, out := &in.URI, &out.URI - *out = new(string) - **out = **in - } + in.ResourceStatus.DeepCopyInto(&out.ResourceStatus) + in.AtProvider.DeepCopyInto(&out.AtProvider) } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new FormatSchemaObservation. -func (in *FormatSchemaObservation) DeepCopy() *FormatSchemaObservation { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ElasticsearchClusterStatus. +func (in *ElasticsearchClusterStatus) DeepCopy() *ElasticsearchClusterStatus { if in == nil { return nil } - out := new(FormatSchemaObservation) + out := new(ElasticsearchClusterStatus) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *FormatSchemaParameters) DeepCopyInto(out *FormatSchemaParameters) { +func (in *ExtensionInitParameters) DeepCopyInto(out *ExtensionInitParameters) { *out = *in if in.Name != nil { in, out := &in.Name, &out.Name *out = new(string) **out = **in } - if in.Type != nil { - in, out := &in.Type, &out.Type - *out = new(string) - **out = **in - } - if in.URI != nil { - in, out := &in.URI, &out.URI + if in.Version != nil { + in, out := &in.Version, &out.Version *out = new(string) **out = **in } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new FormatSchemaParameters. -func (in *FormatSchemaParameters) DeepCopy() *FormatSchemaParameters { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ExtensionInitParameters. +func (in *ExtensionInitParameters) DeepCopy() *ExtensionInitParameters { if in == nil { return nil } - out := new(FormatSchemaParameters) + out := new(ExtensionInitParameters) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *GraphiteRollupInitParameters) DeepCopyInto(out *GraphiteRollupInitParameters) { +func (in *ExtensionObservation) DeepCopyInto(out *ExtensionObservation) { *out = *in if in.Name != nil { in, out := &in.Name, &out.Name *out = new(string) **out = **in } - if in.Pattern != nil { - in, out := &in.Pattern, &out.Pattern - *out = make([]PatternInitParameters, len(*in)) - for i := range *in { - (*in)[i].DeepCopyInto(&(*out)[i]) - } + if in.Version != nil { + in, out := &in.Version, &out.Version + *out = new(string) + **out = **in } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new GraphiteRollupInitParameters. -func (in *GraphiteRollupInitParameters) DeepCopy() *GraphiteRollupInitParameters { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ExtensionObservation. +func (in *ExtensionObservation) DeepCopy() *ExtensionObservation { if in == nil { return nil } - out := new(GraphiteRollupInitParameters) + out := new(ExtensionObservation) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *GraphiteRollupObservation) DeepCopyInto(out *GraphiteRollupObservation) { +func (in *ExtensionParameters) DeepCopyInto(out *ExtensionParameters) { *out = *in if in.Name != nil { in, out := &in.Name, &out.Name *out = new(string) **out = **in } - if in.Pattern != nil { - in, out := &in.Pattern, &out.Pattern - *out = make([]PatternObservation, len(*in)) - for i := range *in { - (*in)[i].DeepCopyInto(&(*out)[i]) - } + if in.Version != nil { + in, out := &in.Version, &out.Version + *out = new(string) + **out = **in } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new GraphiteRollupObservation. -func (in *GraphiteRollupObservation) DeepCopy() *GraphiteRollupObservation { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ExtensionParameters. +func (in *ExtensionParameters) DeepCopy() *ExtensionParameters { if in == nil { return nil } - out := new(GraphiteRollupObservation) + out := new(ExtensionParameters) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *GraphiteRollupParameters) DeepCopyInto(out *GraphiteRollupParameters) { +func (in *ExternalClusterInitParameters) DeepCopyInto(out *ExternalClusterInitParameters) { *out = *in - if in.Name != nil { - in, out := &in.Name, &out.Name + if in.BootstrapServers != nil { + in, out := &in.BootstrapServers, &out.BootstrapServers *out = new(string) **out = **in } - if in.Pattern != nil { - in, out := &in.Pattern, &out.Pattern - *out = make([]PatternParameters, len(*in)) - for i := range *in { - (*in)[i].DeepCopyInto(&(*out)[i]) - } + if in.SaslMechanism != nil { + in, out := &in.SaslMechanism, &out.SaslMechanism + *out = new(string) + **out = **in + } + if in.SaslPasswordSecretRef != nil { + in, out := &in.SaslPasswordSecretRef, &out.SaslPasswordSecretRef + *out = new(v1.SecretKeySelector) + **out = **in + } + if in.SaslUsername != nil { + in, out := &in.SaslUsername, &out.SaslUsername + *out = new(string) + **out = **in + } + if in.SecurityProtocol != nil { + in, out := &in.SecurityProtocol, &out.SecurityProtocol + *out = new(string) + **out = **in } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new GraphiteRollupParameters. -func (in *GraphiteRollupParameters) DeepCopy() *GraphiteRollupParameters { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ExternalClusterInitParameters. +func (in *ExternalClusterInitParameters) DeepCopy() *ExternalClusterInitParameters { if in == nil { return nil } - out := new(GraphiteRollupParameters) + out := new(ExternalClusterInitParameters) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *GreenplumCluster) DeepCopyInto(out *GreenplumCluster) { +func (in *ExternalClusterObservation) DeepCopyInto(out *ExternalClusterObservation) { *out = *in - out.TypeMeta = in.TypeMeta - in.ObjectMeta.DeepCopyInto(&out.ObjectMeta) - in.Spec.DeepCopyInto(&out.Spec) - in.Status.DeepCopyInto(&out.Status) -} - -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new GreenplumCluster. -func (in *GreenplumCluster) DeepCopy() *GreenplumCluster { - if in == nil { - return nil - } - out := new(GreenplumCluster) - in.DeepCopyInto(out) - return out -} - -// DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object. -func (in *GreenplumCluster) DeepCopyObject() runtime.Object { - if c := in.DeepCopy(); c != nil { - return c + if in.BootstrapServers != nil { + in, out := &in.BootstrapServers, &out.BootstrapServers + *out = new(string) + **out = **in } - return nil -} - -// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *GreenplumClusterAccessInitParameters) DeepCopyInto(out *GreenplumClusterAccessInitParameters) { - *out = *in - if in.DataLens != nil { - in, out := &in.DataLens, &out.DataLens - *out = new(bool) + if in.SaslMechanism != nil { + in, out := &in.SaslMechanism, &out.SaslMechanism + *out = new(string) **out = **in } - if in.DataTransfer != nil { - in, out := &in.DataTransfer, &out.DataTransfer - *out = new(bool) + if in.SaslUsername != nil { + in, out := &in.SaslUsername, &out.SaslUsername + *out = new(string) **out = **in } - if in.WebSQL != nil { - in, out := &in.WebSQL, &out.WebSQL - *out = new(bool) + if in.SecurityProtocol != nil { + in, out := &in.SecurityProtocol, &out.SecurityProtocol + *out = new(string) **out = **in } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new GreenplumClusterAccessInitParameters. -func (in *GreenplumClusterAccessInitParameters) DeepCopy() *GreenplumClusterAccessInitParameters { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ExternalClusterObservation. +func (in *ExternalClusterObservation) DeepCopy() *ExternalClusterObservation { if in == nil { return nil } - out := new(GreenplumClusterAccessInitParameters) + out := new(ExternalClusterObservation) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *GreenplumClusterAccessObservation) DeepCopyInto(out *GreenplumClusterAccessObservation) { +func (in *ExternalClusterParameters) DeepCopyInto(out *ExternalClusterParameters) { *out = *in - if in.DataLens != nil { - in, out := &in.DataLens, &out.DataLens - *out = new(bool) + if in.BootstrapServers != nil { + in, out := &in.BootstrapServers, &out.BootstrapServers + *out = new(string) **out = **in } - if in.DataTransfer != nil { - in, out := &in.DataTransfer, &out.DataTransfer - *out = new(bool) + if in.SaslMechanism != nil { + in, out := &in.SaslMechanism, &out.SaslMechanism + *out = new(string) **out = **in } - if in.WebSQL != nil { - in, out := &in.WebSQL, &out.WebSQL - *out = new(bool) + if in.SaslPasswordSecretRef != nil { + in, out := &in.SaslPasswordSecretRef, &out.SaslPasswordSecretRef + *out = new(v1.SecretKeySelector) + **out = **in + } + if in.SaslUsername != nil { + in, out := &in.SaslUsername, &out.SaslUsername + *out = new(string) + **out = **in + } + if in.SecurityProtocol != nil { + in, out := &in.SecurityProtocol, &out.SecurityProtocol + *out = new(string) **out = **in } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new GreenplumClusterAccessObservation. -func (in *GreenplumClusterAccessObservation) DeepCopy() *GreenplumClusterAccessObservation { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ExternalClusterParameters. +func (in *ExternalClusterParameters) DeepCopy() *ExternalClusterParameters { if in == nil { return nil } - out := new(GreenplumClusterAccessObservation) + out := new(ExternalClusterParameters) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *GreenplumClusterAccessParameters) DeepCopyInto(out *GreenplumClusterAccessParameters) { +func (in *ExternalS3InitParameters) DeepCopyInto(out *ExternalS3InitParameters) { *out = *in - if in.DataLens != nil { - in, out := &in.DataLens, &out.DataLens - *out = new(bool) + if in.AccessKeyID != nil { + in, out := &in.AccessKeyID, &out.AccessKeyID + *out = new(string) **out = **in } - if in.DataTransfer != nil { - in, out := &in.DataTransfer, &out.DataTransfer - *out = new(bool) + if in.Endpoint != nil { + in, out := &in.Endpoint, &out.Endpoint + *out = new(string) **out = **in } - if in.WebSQL != nil { - in, out := &in.WebSQL, &out.WebSQL - *out = new(bool) + if in.Region != nil { + in, out := &in.Region, &out.Region + *out = new(string) + **out = **in + } + if in.SecretAccessKeySecretRef != nil { + in, out := &in.SecretAccessKeySecretRef, &out.SecretAccessKeySecretRef + *out = new(v1.SecretKeySelector) **out = **in } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new GreenplumClusterAccessParameters. -func (in *GreenplumClusterAccessParameters) DeepCopy() *GreenplumClusterAccessParameters { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ExternalS3InitParameters. +func (in *ExternalS3InitParameters) DeepCopy() *ExternalS3InitParameters { if in == nil { return nil } - out := new(GreenplumClusterAccessParameters) + out := new(ExternalS3InitParameters) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *GreenplumClusterBackupWindowStartInitParameters) DeepCopyInto(out *GreenplumClusterBackupWindowStartInitParameters) { +func (in *ExternalS3Observation) DeepCopyInto(out *ExternalS3Observation) { *out = *in - if in.Hours != nil { - in, out := &in.Hours, &out.Hours - *out = new(float64) + if in.AccessKeyID != nil { + in, out := &in.AccessKeyID, &out.AccessKeyID + *out = new(string) **out = **in } - if in.Minutes != nil { - in, out := &in.Minutes, &out.Minutes - *out = new(float64) + if in.Endpoint != nil { + in, out := &in.Endpoint, &out.Endpoint + *out = new(string) + **out = **in + } + if in.Region != nil { + in, out := &in.Region, &out.Region + *out = new(string) **out = **in } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new GreenplumClusterBackupWindowStartInitParameters. -func (in *GreenplumClusterBackupWindowStartInitParameters) DeepCopy() *GreenplumClusterBackupWindowStartInitParameters { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ExternalS3Observation. +func (in *ExternalS3Observation) DeepCopy() *ExternalS3Observation { if in == nil { return nil } - out := new(GreenplumClusterBackupWindowStartInitParameters) + out := new(ExternalS3Observation) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *GreenplumClusterBackupWindowStartObservation) DeepCopyInto(out *GreenplumClusterBackupWindowStartObservation) { +func (in *ExternalS3Parameters) DeepCopyInto(out *ExternalS3Parameters) { *out = *in - if in.Hours != nil { - in, out := &in.Hours, &out.Hours - *out = new(float64) + if in.AccessKeyID != nil { + in, out := &in.AccessKeyID, &out.AccessKeyID + *out = new(string) **out = **in } - if in.Minutes != nil { - in, out := &in.Minutes, &out.Minutes - *out = new(float64) + if in.Endpoint != nil { + in, out := &in.Endpoint, &out.Endpoint + *out = new(string) + **out = **in + } + if in.Region != nil { + in, out := &in.Region, &out.Region + *out = new(string) + **out = **in + } + if in.SecretAccessKeySecretRef != nil { + in, out := &in.SecretAccessKeySecretRef, &out.SecretAccessKeySecretRef + *out = new(v1.SecretKeySelector) **out = **in } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new GreenplumClusterBackupWindowStartObservation. -func (in *GreenplumClusterBackupWindowStartObservation) DeepCopy() *GreenplumClusterBackupWindowStartObservation { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ExternalS3Parameters. +func (in *ExternalS3Parameters) DeepCopy() *ExternalS3Parameters { if in == nil { return nil } - out := new(GreenplumClusterBackupWindowStartObservation) + out := new(ExternalS3Parameters) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *GreenplumClusterBackupWindowStartParameters) DeepCopyInto(out *GreenplumClusterBackupWindowStartParameters) { +func (in *FormatSchemaInitParameters) DeepCopyInto(out *FormatSchemaInitParameters) { *out = *in - if in.Hours != nil { - in, out := &in.Hours, &out.Hours - *out = new(float64) + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) **out = **in } - if in.Minutes != nil { - in, out := &in.Minutes, &out.Minutes - *out = new(float64) + if in.Type != nil { + in, out := &in.Type, &out.Type + *out = new(string) + **out = **in + } + if in.URI != nil { + in, out := &in.URI, &out.URI + *out = new(string) **out = **in } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new GreenplumClusterBackupWindowStartParameters. -func (in *GreenplumClusterBackupWindowStartParameters) DeepCopy() *GreenplumClusterBackupWindowStartParameters { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new FormatSchemaInitParameters. +func (in *FormatSchemaInitParameters) DeepCopy() *FormatSchemaInitParameters { if in == nil { return nil } - out := new(GreenplumClusterBackupWindowStartParameters) + out := new(FormatSchemaInitParameters) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *GreenplumClusterCloudStorageInitParameters) DeepCopyInto(out *GreenplumClusterCloudStorageInitParameters) { +func (in *FormatSchemaObservation) DeepCopyInto(out *FormatSchemaObservation) { *out = *in - if in.Enable != nil { - in, out := &in.Enable, &out.Enable - *out = new(bool) + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } + if in.Type != nil { + in, out := &in.Type, &out.Type + *out = new(string) + **out = **in + } + if in.URI != nil { + in, out := &in.URI, &out.URI + *out = new(string) **out = **in } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new GreenplumClusterCloudStorageInitParameters. -func (in *GreenplumClusterCloudStorageInitParameters) DeepCopy() *GreenplumClusterCloudStorageInitParameters { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new FormatSchemaObservation. +func (in *FormatSchemaObservation) DeepCopy() *FormatSchemaObservation { if in == nil { return nil } - out := new(GreenplumClusterCloudStorageInitParameters) + out := new(FormatSchemaObservation) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *GreenplumClusterCloudStorageObservation) DeepCopyInto(out *GreenplumClusterCloudStorageObservation) { +func (in *FormatSchemaParameters) DeepCopyInto(out *FormatSchemaParameters) { *out = *in - if in.Enable != nil { - in, out := &in.Enable, &out.Enable - *out = new(bool) + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } + if in.Type != nil { + in, out := &in.Type, &out.Type + *out = new(string) + **out = **in + } + if in.URI != nil { + in, out := &in.URI, &out.URI + *out = new(string) **out = **in } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new GreenplumClusterCloudStorageObservation. -func (in *GreenplumClusterCloudStorageObservation) DeepCopy() *GreenplumClusterCloudStorageObservation { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new FormatSchemaParameters. +func (in *FormatSchemaParameters) DeepCopy() *FormatSchemaParameters { if in == nil { return nil } - out := new(GreenplumClusterCloudStorageObservation) + out := new(FormatSchemaParameters) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *GreenplumClusterCloudStorageParameters) DeepCopyInto(out *GreenplumClusterCloudStorageParameters) { +func (in *GraphiteRollupInitParameters) DeepCopyInto(out *GraphiteRollupInitParameters) { *out = *in - if in.Enable != nil { - in, out := &in.Enable, &out.Enable - *out = new(bool) + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) **out = **in } -} - -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new GreenplumClusterCloudStorageParameters. -func (in *GreenplumClusterCloudStorageParameters) DeepCopy() *GreenplumClusterCloudStorageParameters { - if in == nil { - return nil - } - out := new(GreenplumClusterCloudStorageParameters) - in.DeepCopyInto(out) - return out -} - -// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *GreenplumClusterInitParameters) DeepCopyInto(out *GreenplumClusterInitParameters) { - *out = *in - if in.Access != nil { - in, out := &in.Access, &out.Access - *out = make([]GreenplumClusterAccessInitParameters, len(*in)) - for i := range *in { - (*in)[i].DeepCopyInto(&(*out)[i]) - } - } - if in.AssignPublicIP != nil { - in, out := &in.AssignPublicIP, &out.AssignPublicIP - *out = new(bool) + if in.PathColumnName != nil { + in, out := &in.PathColumnName, &out.PathColumnName + *out = new(string) **out = **in } - if in.BackupWindowStart != nil { - in, out := &in.BackupWindowStart, &out.BackupWindowStart - *out = make([]GreenplumClusterBackupWindowStartInitParameters, len(*in)) - for i := range *in { - (*in)[i].DeepCopyInto(&(*out)[i]) - } - } - if in.CloudStorage != nil { - in, out := &in.CloudStorage, &out.CloudStorage - *out = make([]GreenplumClusterCloudStorageInitParameters, len(*in)) + if in.Pattern != nil { + in, out := &in.Pattern, &out.Pattern + *out = make([]PatternInitParameters, len(*in)) for i := range *in { (*in)[i].DeepCopyInto(&(*out)[i]) } } - if in.DeletionProtection != nil { - in, out := &in.DeletionProtection, &out.DeletionProtection - *out = new(bool) - **out = **in - } - if in.Description != nil { - in, out := &in.Description, &out.Description + if in.TimeColumnName != nil { + in, out := &in.TimeColumnName, &out.TimeColumnName *out = new(string) **out = **in } - if in.Environment != nil { - in, out := &in.Environment, &out.Environment + if in.ValueColumnName != nil { + in, out := &in.ValueColumnName, &out.ValueColumnName *out = new(string) **out = **in } - if in.FolderID != nil { - in, out := &in.FolderID, &out.FolderID + if in.VersionColumnName != nil { + in, out := &in.VersionColumnName, &out.VersionColumnName *out = new(string) **out = **in } - if in.FolderIDRef != nil { - in, out := &in.FolderIDRef, &out.FolderIDRef - *out = new(v1.Reference) - (*in).DeepCopyInto(*out) - } - if in.FolderIDSelector != nil { - in, out := &in.FolderIDSelector, &out.FolderIDSelector - *out = new(v1.Selector) - (*in).DeepCopyInto(*out) - } - if in.GreenplumConfig != nil { - in, out := &in.GreenplumConfig, &out.GreenplumConfig - *out = make(map[string]*string, len(*in)) - for key, val := range *in { - var outVal *string - if val == nil { - (*out)[key] = nil - } else { - inVal := (*in)[key] - in, out := &inVal, &outVal - *out = new(string) - **out = **in - } - (*out)[key] = outVal - } - } - if in.Labels != nil { - in, out := &in.Labels, &out.Labels - *out = make(map[string]*string, len(*in)) - for key, val := range *in { - var outVal *string - if val == nil { - (*out)[key] = nil - } else { - inVal := (*in)[key] - in, out := &inVal, &outVal - *out = new(string) - **out = **in - } - (*out)[key] = outVal - } - } - if in.MaintenanceWindow != nil { - in, out := &in.MaintenanceWindow, &out.MaintenanceWindow - *out = make([]GreenplumClusterMaintenanceWindowInitParameters, len(*in)) - for i := range *in { - (*in)[i].DeepCopyInto(&(*out)[i]) - } - } - if in.MasterHostCount != nil { - in, out := &in.MasterHostCount, &out.MasterHostCount - *out = new(float64) - **out = **in - } - if in.MasterSubcluster != nil { - in, out := &in.MasterSubcluster, &out.MasterSubcluster - *out = make([]MasterSubclusterInitParameters, len(*in)) - for i := range *in { - (*in)[i].DeepCopyInto(&(*out)[i]) - } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new GraphiteRollupInitParameters. +func (in *GraphiteRollupInitParameters) DeepCopy() *GraphiteRollupInitParameters { + if in == nil { + return nil } + out := new(GraphiteRollupInitParameters) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *GraphiteRollupObservation) DeepCopyInto(out *GraphiteRollupObservation) { + *out = *in if in.Name != nil { in, out := &in.Name, &out.Name *out = new(string) **out = **in } - if in.NetworkID != nil { - in, out := &in.NetworkID, &out.NetworkID + if in.PathColumnName != nil { + in, out := &in.PathColumnName, &out.PathColumnName *out = new(string) **out = **in } - if in.NetworkIDRef != nil { - in, out := &in.NetworkIDRef, &out.NetworkIDRef - *out = new(v1.Reference) - (*in).DeepCopyInto(*out) - } - if in.NetworkIDSelector != nil { - in, out := &in.NetworkIDSelector, &out.NetworkIDSelector - *out = new(v1.Selector) - (*in).DeepCopyInto(*out) - } - if in.PoolerConfig != nil { - in, out := &in.PoolerConfig, &out.PoolerConfig - *out = make([]PoolerConfigInitParameters, len(*in)) + if in.Pattern != nil { + in, out := &in.Pattern, &out.Pattern + *out = make([]PatternObservation, len(*in)) for i := range *in { (*in)[i].DeepCopyInto(&(*out)[i]) } } - if in.PxfConfig != nil { - in, out := &in.PxfConfig, &out.PxfConfig - *out = make([]PxfConfigInitParameters, len(*in)) - for i := range *in { - (*in)[i].DeepCopyInto(&(*out)[i]) - } + if in.TimeColumnName != nil { + in, out := &in.TimeColumnName, &out.TimeColumnName + *out = new(string) + **out = **in } - if in.SecurityGroupIds != nil { - in, out := &in.SecurityGroupIds, &out.SecurityGroupIds - *out = make([]*string, len(*in)) - for i := range *in { - if (*in)[i] != nil { - in, out := &(*in)[i], &(*out)[i] - *out = new(string) - **out = **in - } - } + if in.ValueColumnName != nil { + in, out := &in.ValueColumnName, &out.ValueColumnName + *out = new(string) + **out = **in } - if in.SecurityGroupIdsRefs != nil { - in, out := &in.SecurityGroupIdsRefs, &out.SecurityGroupIdsRefs - *out = make([]v1.Reference, len(*in)) - for i := range *in { - (*in)[i].DeepCopyInto(&(*out)[i]) - } + if in.VersionColumnName != nil { + in, out := &in.VersionColumnName, &out.VersionColumnName + *out = new(string) + **out = **in } - if in.SecurityGroupIdsSelector != nil { - in, out := &in.SecurityGroupIdsSelector, &out.SecurityGroupIdsSelector - *out = new(v1.Selector) - (*in).DeepCopyInto(*out) +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new GraphiteRollupObservation. +func (in *GraphiteRollupObservation) DeepCopy() *GraphiteRollupObservation { + if in == nil { + return nil } - if in.SegmentHostCount != nil { - in, out := &in.SegmentHostCount, &out.SegmentHostCount - *out = new(float64) + out := new(GraphiteRollupObservation) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *GraphiteRollupParameters) DeepCopyInto(out *GraphiteRollupParameters) { + *out = *in + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) **out = **in } - if in.SegmentInHost != nil { - in, out := &in.SegmentInHost, &out.SegmentInHost - *out = new(float64) + if in.PathColumnName != nil { + in, out := &in.PathColumnName, &out.PathColumnName + *out = new(string) **out = **in } - if in.SegmentSubcluster != nil { - in, out := &in.SegmentSubcluster, &out.SegmentSubcluster - *out = make([]SegmentSubclusterInitParameters, len(*in)) + if in.Pattern != nil { + in, out := &in.Pattern, &out.Pattern + *out = make([]PatternParameters, len(*in)) for i := range *in { (*in)[i].DeepCopyInto(&(*out)[i]) } } - if in.SubnetID != nil { - in, out := &in.SubnetID, &out.SubnetID - *out = new(string) - **out = **in - } - if in.SubnetIDRef != nil { - in, out := &in.SubnetIDRef, &out.SubnetIDRef - *out = new(v1.Reference) - (*in).DeepCopyInto(*out) - } - if in.SubnetIDSelector != nil { - in, out := &in.SubnetIDSelector, &out.SubnetIDSelector - *out = new(v1.Selector) - (*in).DeepCopyInto(*out) - } - if in.UserName != nil { - in, out := &in.UserName, &out.UserName + if in.TimeColumnName != nil { + in, out := &in.TimeColumnName, &out.TimeColumnName *out = new(string) **out = **in } - out.UserPasswordSecretRef = in.UserPasswordSecretRef - if in.Version != nil { - in, out := &in.Version, &out.Version + if in.ValueColumnName != nil { + in, out := &in.ValueColumnName, &out.ValueColumnName *out = new(string) **out = **in } - if in.Zone != nil { - in, out := &in.Zone, &out.Zone + if in.VersionColumnName != nil { + in, out := &in.VersionColumnName, &out.VersionColumnName *out = new(string) **out = **in } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new GreenplumClusterInitParameters. -func (in *GreenplumClusterInitParameters) DeepCopy() *GreenplumClusterInitParameters { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new GraphiteRollupParameters. +func (in *GraphiteRollupParameters) DeepCopy() *GraphiteRollupParameters { if in == nil { return nil } - out := new(GreenplumClusterInitParameters) + out := new(GraphiteRollupParameters) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *GreenplumClusterList) DeepCopyInto(out *GreenplumClusterList) { +func (in *GreenplumCluster) DeepCopyInto(out *GreenplumCluster) { *out = *in out.TypeMeta = in.TypeMeta - in.ListMeta.DeepCopyInto(&out.ListMeta) - if in.Items != nil { - in, out := &in.Items, &out.Items - *out = make([]GreenplumCluster, len(*in)) - for i := range *in { - (*in)[i].DeepCopyInto(&(*out)[i]) - } - } + in.ObjectMeta.DeepCopyInto(&out.ObjectMeta) + in.Spec.DeepCopyInto(&out.Spec) + in.Status.DeepCopyInto(&out.Status) } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new GreenplumClusterList. -func (in *GreenplumClusterList) DeepCopy() *GreenplumClusterList { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new GreenplumCluster. +func (in *GreenplumCluster) DeepCopy() *GreenplumCluster { if in == nil { return nil } - out := new(GreenplumClusterList) + out := new(GreenplumCluster) in.DeepCopyInto(out) return out } // DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object. -func (in *GreenplumClusterList) DeepCopyObject() runtime.Object { +func (in *GreenplumCluster) DeepCopyObject() runtime.Object { if c := in.DeepCopy(); c != nil { return c } @@ -5660,101 +6241,251 @@ func (in *GreenplumClusterList) DeepCopyObject() runtime.Object { } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *GreenplumClusterMaintenanceWindowInitParameters) DeepCopyInto(out *GreenplumClusterMaintenanceWindowInitParameters) { +func (in *GreenplumClusterAccessInitParameters) DeepCopyInto(out *GreenplumClusterAccessInitParameters) { *out = *in - if in.Day != nil { - in, out := &in.Day, &out.Day - *out = new(string) + if in.DataLens != nil { + in, out := &in.DataLens, &out.DataLens + *out = new(bool) **out = **in } - if in.Hour != nil { - in, out := &in.Hour, &out.Hour - *out = new(float64) + if in.DataTransfer != nil { + in, out := &in.DataTransfer, &out.DataTransfer + *out = new(bool) **out = **in } - if in.Type != nil { - in, out := &in.Type, &out.Type - *out = new(string) + if in.WebSQL != nil { + in, out := &in.WebSQL, &out.WebSQL + *out = new(bool) + **out = **in + } + if in.YandexQuery != nil { + in, out := &in.YandexQuery, &out.YandexQuery + *out = new(bool) **out = **in } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new GreenplumClusterMaintenanceWindowInitParameters. -func (in *GreenplumClusterMaintenanceWindowInitParameters) DeepCopy() *GreenplumClusterMaintenanceWindowInitParameters { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new GreenplumClusterAccessInitParameters. +func (in *GreenplumClusterAccessInitParameters) DeepCopy() *GreenplumClusterAccessInitParameters { if in == nil { return nil } - out := new(GreenplumClusterMaintenanceWindowInitParameters) + out := new(GreenplumClusterAccessInitParameters) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *GreenplumClusterMaintenanceWindowObservation) DeepCopyInto(out *GreenplumClusterMaintenanceWindowObservation) { +func (in *GreenplumClusterAccessObservation) DeepCopyInto(out *GreenplumClusterAccessObservation) { *out = *in - if in.Day != nil { - in, out := &in.Day, &out.Day - *out = new(string) + if in.DataLens != nil { + in, out := &in.DataLens, &out.DataLens + *out = new(bool) **out = **in } - if in.Hour != nil { - in, out := &in.Hour, &out.Hour + if in.DataTransfer != nil { + in, out := &in.DataTransfer, &out.DataTransfer + *out = new(bool) + **out = **in + } + if in.WebSQL != nil { + in, out := &in.WebSQL, &out.WebSQL + *out = new(bool) + **out = **in + } + if in.YandexQuery != nil { + in, out := &in.YandexQuery, &out.YandexQuery + *out = new(bool) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new GreenplumClusterAccessObservation. +func (in *GreenplumClusterAccessObservation) DeepCopy() *GreenplumClusterAccessObservation { + if in == nil { + return nil + } + out := new(GreenplumClusterAccessObservation) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *GreenplumClusterAccessParameters) DeepCopyInto(out *GreenplumClusterAccessParameters) { + *out = *in + if in.DataLens != nil { + in, out := &in.DataLens, &out.DataLens + *out = new(bool) + **out = **in + } + if in.DataTransfer != nil { + in, out := &in.DataTransfer, &out.DataTransfer + *out = new(bool) + **out = **in + } + if in.WebSQL != nil { + in, out := &in.WebSQL, &out.WebSQL + *out = new(bool) + **out = **in + } + if in.YandexQuery != nil { + in, out := &in.YandexQuery, &out.YandexQuery + *out = new(bool) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new GreenplumClusterAccessParameters. +func (in *GreenplumClusterAccessParameters) DeepCopy() *GreenplumClusterAccessParameters { + if in == nil { + return nil + } + out := new(GreenplumClusterAccessParameters) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *GreenplumClusterBackupWindowStartInitParameters) DeepCopyInto(out *GreenplumClusterBackupWindowStartInitParameters) { + *out = *in + if in.Hours != nil { + in, out := &in.Hours, &out.Hours *out = new(float64) **out = **in } - if in.Type != nil { - in, out := &in.Type, &out.Type - *out = new(string) + if in.Minutes != nil { + in, out := &in.Minutes, &out.Minutes + *out = new(float64) **out = **in } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new GreenplumClusterMaintenanceWindowObservation. -func (in *GreenplumClusterMaintenanceWindowObservation) DeepCopy() *GreenplumClusterMaintenanceWindowObservation { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new GreenplumClusterBackupWindowStartInitParameters. +func (in *GreenplumClusterBackupWindowStartInitParameters) DeepCopy() *GreenplumClusterBackupWindowStartInitParameters { if in == nil { return nil } - out := new(GreenplumClusterMaintenanceWindowObservation) + out := new(GreenplumClusterBackupWindowStartInitParameters) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *GreenplumClusterMaintenanceWindowParameters) DeepCopyInto(out *GreenplumClusterMaintenanceWindowParameters) { +func (in *GreenplumClusterBackupWindowStartObservation) DeepCopyInto(out *GreenplumClusterBackupWindowStartObservation) { *out = *in - if in.Day != nil { - in, out := &in.Day, &out.Day - *out = new(string) + if in.Hours != nil { + in, out := &in.Hours, &out.Hours + *out = new(float64) **out = **in } - if in.Hour != nil { - in, out := &in.Hour, &out.Hour + if in.Minutes != nil { + in, out := &in.Minutes, &out.Minutes *out = new(float64) **out = **in } - if in.Type != nil { - in, out := &in.Type, &out.Type - *out = new(string) +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new GreenplumClusterBackupWindowStartObservation. +func (in *GreenplumClusterBackupWindowStartObservation) DeepCopy() *GreenplumClusterBackupWindowStartObservation { + if in == nil { + return nil + } + out := new(GreenplumClusterBackupWindowStartObservation) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *GreenplumClusterBackupWindowStartParameters) DeepCopyInto(out *GreenplumClusterBackupWindowStartParameters) { + *out = *in + if in.Hours != nil { + in, out := &in.Hours, &out.Hours + *out = new(float64) + **out = **in + } + if in.Minutes != nil { + in, out := &in.Minutes, &out.Minutes + *out = new(float64) **out = **in } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new GreenplumClusterMaintenanceWindowParameters. -func (in *GreenplumClusterMaintenanceWindowParameters) DeepCopy() *GreenplumClusterMaintenanceWindowParameters { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new GreenplumClusterBackupWindowStartParameters. +func (in *GreenplumClusterBackupWindowStartParameters) DeepCopy() *GreenplumClusterBackupWindowStartParameters { if in == nil { return nil } - out := new(GreenplumClusterMaintenanceWindowParameters) + out := new(GreenplumClusterBackupWindowStartParameters) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *GreenplumClusterObservation) DeepCopyInto(out *GreenplumClusterObservation) { +func (in *GreenplumClusterCloudStorageInitParameters) DeepCopyInto(out *GreenplumClusterCloudStorageInitParameters) { + *out = *in + if in.Enable != nil { + in, out := &in.Enable, &out.Enable + *out = new(bool) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new GreenplumClusterCloudStorageInitParameters. +func (in *GreenplumClusterCloudStorageInitParameters) DeepCopy() *GreenplumClusterCloudStorageInitParameters { + if in == nil { + return nil + } + out := new(GreenplumClusterCloudStorageInitParameters) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *GreenplumClusterCloudStorageObservation) DeepCopyInto(out *GreenplumClusterCloudStorageObservation) { + *out = *in + if in.Enable != nil { + in, out := &in.Enable, &out.Enable + *out = new(bool) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new GreenplumClusterCloudStorageObservation. +func (in *GreenplumClusterCloudStorageObservation) DeepCopy() *GreenplumClusterCloudStorageObservation { + if in == nil { + return nil + } + out := new(GreenplumClusterCloudStorageObservation) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *GreenplumClusterCloudStorageParameters) DeepCopyInto(out *GreenplumClusterCloudStorageParameters) { + *out = *in + if in.Enable != nil { + in, out := &in.Enable, &out.Enable + *out = new(bool) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new GreenplumClusterCloudStorageParameters. +func (in *GreenplumClusterCloudStorageParameters) DeepCopy() *GreenplumClusterCloudStorageParameters { + if in == nil { + return nil + } + out := new(GreenplumClusterCloudStorageParameters) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *GreenplumClusterInitParameters) DeepCopyInto(out *GreenplumClusterInitParameters) { *out = *in if in.Access != nil { in, out := &in.Access, &out.Access - *out = make([]GreenplumClusterAccessObservation, len(*in)) + *out = make([]GreenplumClusterAccessInitParameters, len(*in)) for i := range *in { (*in)[i].DeepCopyInto(&(*out)[i]) } @@ -5764,25 +6495,27 @@ func (in *GreenplumClusterObservation) DeepCopyInto(out *GreenplumClusterObserva *out = new(bool) **out = **in } + if in.BackgroundActivities != nil { + in, out := &in.BackgroundActivities, &out.BackgroundActivities + *out = make([]BackgroundActivitiesInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } if in.BackupWindowStart != nil { in, out := &in.BackupWindowStart, &out.BackupWindowStart - *out = make([]GreenplumClusterBackupWindowStartObservation, len(*in)) + *out = make([]GreenplumClusterBackupWindowStartInitParameters, len(*in)) for i := range *in { (*in)[i].DeepCopyInto(&(*out)[i]) } } if in.CloudStorage != nil { in, out := &in.CloudStorage, &out.CloudStorage - *out = make([]GreenplumClusterCloudStorageObservation, len(*in)) + *out = make([]GreenplumClusterCloudStorageInitParameters, len(*in)) for i := range *in { (*in)[i].DeepCopyInto(&(*out)[i]) } } - if in.CreatedAt != nil { - in, out := &in.CreatedAt, &out.CreatedAt - *out = new(string) - **out = **in - } if in.DeletionProtection != nil { in, out := &in.DeletionProtection, &out.DeletionProtection *out = new(bool) @@ -5803,6 +6536,16 @@ func (in *GreenplumClusterObservation) DeepCopyInto(out *GreenplumClusterObserva *out = new(string) **out = **in } + if in.FolderIDRef != nil { + in, out := &in.FolderIDRef, &out.FolderIDRef + *out = new(v1.Reference) + (*in).DeepCopyInto(*out) + } + if in.FolderIDSelector != nil { + in, out := &in.FolderIDSelector, &out.FolderIDSelector + *out = new(v1.Selector) + (*in).DeepCopyInto(*out) + } if in.GreenplumConfig != nil { in, out := &in.GreenplumConfig, &out.GreenplumConfig *out = make(map[string]*string, len(*in)) @@ -5819,16 +6562,6 @@ func (in *GreenplumClusterObservation) DeepCopyInto(out *GreenplumClusterObserva (*out)[key] = outVal } } - if in.Health != nil { - in, out := &in.Health, &out.Health - *out = new(string) - **out = **in - } - if in.ID != nil { - in, out := &in.ID, &out.ID - *out = new(string) - **out = **in - } if in.Labels != nil { in, out := &in.Labels, &out.Labels *out = make(map[string]*string, len(*in)) @@ -5847,7 +6580,7 @@ func (in *GreenplumClusterObservation) DeepCopyInto(out *GreenplumClusterObserva } if in.MaintenanceWindow != nil { in, out := &in.MaintenanceWindow, &out.MaintenanceWindow - *out = make([]GreenplumClusterMaintenanceWindowObservation, len(*in)) + *out = make([]GreenplumClusterMaintenanceWindowInitParameters, len(*in)) for i := range *in { (*in)[i].DeepCopyInto(&(*out)[i]) } @@ -5857,16 +6590,20 @@ func (in *GreenplumClusterObservation) DeepCopyInto(out *GreenplumClusterObserva *out = new(float64) **out = **in } - if in.MasterHosts != nil { - in, out := &in.MasterHosts, &out.MasterHosts - *out = make([]MasterHostsObservation, len(*in)) + if in.MasterHostGroupIds != nil { + in, out := &in.MasterHostGroupIds, &out.MasterHostGroupIds + *out = make([]*string, len(*in)) for i := range *in { - (*in)[i].DeepCopyInto(&(*out)[i]) + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } } } if in.MasterSubcluster != nil { in, out := &in.MasterSubcluster, &out.MasterSubcluster - *out = make([]MasterSubclusterObservation, len(*in)) + *out = make([]MasterSubclusterInitParameters, len(*in)) for i := range *in { (*in)[i].DeepCopyInto(&(*out)[i]) } @@ -5881,16 +6618,26 @@ func (in *GreenplumClusterObservation) DeepCopyInto(out *GreenplumClusterObserva *out = new(string) **out = **in } + if in.NetworkIDRef != nil { + in, out := &in.NetworkIDRef, &out.NetworkIDRef + *out = new(v1.Reference) + (*in).DeepCopyInto(*out) + } + if in.NetworkIDSelector != nil { + in, out := &in.NetworkIDSelector, &out.NetworkIDSelector + *out = new(v1.Selector) + (*in).DeepCopyInto(*out) + } if in.PoolerConfig != nil { in, out := &in.PoolerConfig, &out.PoolerConfig - *out = make([]PoolerConfigObservation, len(*in)) + *out = make([]PoolerConfigInitParameters, len(*in)) for i := range *in { (*in)[i].DeepCopyInto(&(*out)[i]) } } if in.PxfConfig != nil { in, out := &in.PxfConfig, &out.PxfConfig - *out = make([]PxfConfigObservation, len(*in)) + *out = make([]PxfConfigInitParameters, len(*in)) for i := range *in { (*in)[i].DeepCopyInto(&(*out)[i]) } @@ -5906,16 +6653,32 @@ func (in *GreenplumClusterObservation) DeepCopyInto(out *GreenplumClusterObserva } } } + if in.SecurityGroupIdsRefs != nil { + in, out := &in.SecurityGroupIdsRefs, &out.SecurityGroupIdsRefs + *out = make([]v1.Reference, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.SecurityGroupIdsSelector != nil { + in, out := &in.SecurityGroupIdsSelector, &out.SecurityGroupIdsSelector + *out = new(v1.Selector) + (*in).DeepCopyInto(*out) + } if in.SegmentHostCount != nil { in, out := &in.SegmentHostCount, &out.SegmentHostCount *out = new(float64) **out = **in } - if in.SegmentHosts != nil { - in, out := &in.SegmentHosts, &out.SegmentHosts - *out = make([]SegmentHostsObservation, len(*in)) + if in.SegmentHostGroupIds != nil { + in, out := &in.SegmentHostGroupIds, &out.SegmentHostGroupIds + *out = make([]*string, len(*in)) for i := range *in { - (*in)[i].DeepCopyInto(&(*out)[i]) + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } } } if in.SegmentInHost != nil { @@ -5925,26 +6688,32 @@ func (in *GreenplumClusterObservation) DeepCopyInto(out *GreenplumClusterObserva } if in.SegmentSubcluster != nil { in, out := &in.SegmentSubcluster, &out.SegmentSubcluster - *out = make([]SegmentSubclusterObservation, len(*in)) + *out = make([]SegmentSubclusterInitParameters, len(*in)) for i := range *in { (*in)[i].DeepCopyInto(&(*out)[i]) } } - if in.Status != nil { - in, out := &in.Status, &out.Status - *out = new(string) - **out = **in - } if in.SubnetID != nil { in, out := &in.SubnetID, &out.SubnetID *out = new(string) **out = **in } + if in.SubnetIDRef != nil { + in, out := &in.SubnetIDRef, &out.SubnetIDRef + *out = new(v1.Reference) + (*in).DeepCopyInto(*out) + } + if in.SubnetIDSelector != nil { + in, out := &in.SubnetIDSelector, &out.SubnetIDSelector + *out = new(v1.Selector) + (*in).DeepCopyInto(*out) + } if in.UserName != nil { in, out := &in.UserName, &out.UserName *out = new(string) **out = **in } + out.UserPasswordSecretRef = in.UserPasswordSecretRef if in.Version != nil { in, out := &in.Version, &out.Version *out = new(string) @@ -5957,22 +6726,144 @@ func (in *GreenplumClusterObservation) DeepCopyInto(out *GreenplumClusterObserva } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new GreenplumClusterObservation. -func (in *GreenplumClusterObservation) DeepCopy() *GreenplumClusterObservation { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new GreenplumClusterInitParameters. +func (in *GreenplumClusterInitParameters) DeepCopy() *GreenplumClusterInitParameters { if in == nil { return nil } - out := new(GreenplumClusterObservation) + out := new(GreenplumClusterInitParameters) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *GreenplumClusterParameters) DeepCopyInto(out *GreenplumClusterParameters) { +func (in *GreenplumClusterList) DeepCopyInto(out *GreenplumClusterList) { + *out = *in + out.TypeMeta = in.TypeMeta + in.ListMeta.DeepCopyInto(&out.ListMeta) + if in.Items != nil { + in, out := &in.Items, &out.Items + *out = make([]GreenplumCluster, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new GreenplumClusterList. +func (in *GreenplumClusterList) DeepCopy() *GreenplumClusterList { + if in == nil { + return nil + } + out := new(GreenplumClusterList) + in.DeepCopyInto(out) + return out +} + +// DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object. +func (in *GreenplumClusterList) DeepCopyObject() runtime.Object { + if c := in.DeepCopy(); c != nil { + return c + } + return nil +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *GreenplumClusterMaintenanceWindowInitParameters) DeepCopyInto(out *GreenplumClusterMaintenanceWindowInitParameters) { + *out = *in + if in.Day != nil { + in, out := &in.Day, &out.Day + *out = new(string) + **out = **in + } + if in.Hour != nil { + in, out := &in.Hour, &out.Hour + *out = new(float64) + **out = **in + } + if in.Type != nil { + in, out := &in.Type, &out.Type + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new GreenplumClusterMaintenanceWindowInitParameters. +func (in *GreenplumClusterMaintenanceWindowInitParameters) DeepCopy() *GreenplumClusterMaintenanceWindowInitParameters { + if in == nil { + return nil + } + out := new(GreenplumClusterMaintenanceWindowInitParameters) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *GreenplumClusterMaintenanceWindowObservation) DeepCopyInto(out *GreenplumClusterMaintenanceWindowObservation) { + *out = *in + if in.Day != nil { + in, out := &in.Day, &out.Day + *out = new(string) + **out = **in + } + if in.Hour != nil { + in, out := &in.Hour, &out.Hour + *out = new(float64) + **out = **in + } + if in.Type != nil { + in, out := &in.Type, &out.Type + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new GreenplumClusterMaintenanceWindowObservation. +func (in *GreenplumClusterMaintenanceWindowObservation) DeepCopy() *GreenplumClusterMaintenanceWindowObservation { + if in == nil { + return nil + } + out := new(GreenplumClusterMaintenanceWindowObservation) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *GreenplumClusterMaintenanceWindowParameters) DeepCopyInto(out *GreenplumClusterMaintenanceWindowParameters) { + *out = *in + if in.Day != nil { + in, out := &in.Day, &out.Day + *out = new(string) + **out = **in + } + if in.Hour != nil { + in, out := &in.Hour, &out.Hour + *out = new(float64) + **out = **in + } + if in.Type != nil { + in, out := &in.Type, &out.Type + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new GreenplumClusterMaintenanceWindowParameters. +func (in *GreenplumClusterMaintenanceWindowParameters) DeepCopy() *GreenplumClusterMaintenanceWindowParameters { + if in == nil { + return nil + } + out := new(GreenplumClusterMaintenanceWindowParameters) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *GreenplumClusterObservation) DeepCopyInto(out *GreenplumClusterObservation) { *out = *in if in.Access != nil { in, out := &in.Access, &out.Access - *out = make([]GreenplumClusterAccessParameters, len(*in)) + *out = make([]GreenplumClusterAccessObservation, len(*in)) for i := range *in { (*in)[i].DeepCopyInto(&(*out)[i]) } @@ -5982,20 +6873,32 @@ func (in *GreenplumClusterParameters) DeepCopyInto(out *GreenplumClusterParamete *out = new(bool) **out = **in } + if in.BackgroundActivities != nil { + in, out := &in.BackgroundActivities, &out.BackgroundActivities + *out = make([]BackgroundActivitiesObservation, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } if in.BackupWindowStart != nil { in, out := &in.BackupWindowStart, &out.BackupWindowStart - *out = make([]GreenplumClusterBackupWindowStartParameters, len(*in)) + *out = make([]GreenplumClusterBackupWindowStartObservation, len(*in)) for i := range *in { (*in)[i].DeepCopyInto(&(*out)[i]) } } if in.CloudStorage != nil { in, out := &in.CloudStorage, &out.CloudStorage - *out = make([]GreenplumClusterCloudStorageParameters, len(*in)) + *out = make([]GreenplumClusterCloudStorageObservation, len(*in)) for i := range *in { (*in)[i].DeepCopyInto(&(*out)[i]) } } + if in.CreatedAt != nil { + in, out := &in.CreatedAt, &out.CreatedAt + *out = new(string) + **out = **in + } if in.DeletionProtection != nil { in, out := &in.DeletionProtection, &out.DeletionProtection *out = new(bool) @@ -6016,16 +6919,6 @@ func (in *GreenplumClusterParameters) DeepCopyInto(out *GreenplumClusterParamete *out = new(string) **out = **in } - if in.FolderIDRef != nil { - in, out := &in.FolderIDRef, &out.FolderIDRef - *out = new(v1.Reference) - (*in).DeepCopyInto(*out) - } - if in.FolderIDSelector != nil { - in, out := &in.FolderIDSelector, &out.FolderIDSelector - *out = new(v1.Selector) - (*in).DeepCopyInto(*out) - } if in.GreenplumConfig != nil { in, out := &in.GreenplumConfig, &out.GreenplumConfig *out = make(map[string]*string, len(*in)) @@ -6042,6 +6935,16 @@ func (in *GreenplumClusterParameters) DeepCopyInto(out *GreenplumClusterParamete (*out)[key] = outVal } } + if in.Health != nil { + in, out := &in.Health, &out.Health + *out = new(string) + **out = **in + } + if in.ID != nil { + in, out := &in.ID, &out.ID + *out = new(string) + **out = **in + } if in.Labels != nil { in, out := &in.Labels, &out.Labels *out = make(map[string]*string, len(*in)) @@ -6060,7 +6963,7 @@ func (in *GreenplumClusterParameters) DeepCopyInto(out *GreenplumClusterParamete } if in.MaintenanceWindow != nil { in, out := &in.MaintenanceWindow, &out.MaintenanceWindow - *out = make([]GreenplumClusterMaintenanceWindowParameters, len(*in)) + *out = make([]GreenplumClusterMaintenanceWindowObservation, len(*in)) for i := range *in { (*in)[i].DeepCopyInto(&(*out)[i]) } @@ -6070,9 +6973,27 @@ func (in *GreenplumClusterParameters) DeepCopyInto(out *GreenplumClusterParamete *out = new(float64) **out = **in } + if in.MasterHostGroupIds != nil { + in, out := &in.MasterHostGroupIds, &out.MasterHostGroupIds + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.MasterHosts != nil { + in, out := &in.MasterHosts, &out.MasterHosts + *out = make([]MasterHostsObservation, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } if in.MasterSubcluster != nil { in, out := &in.MasterSubcluster, &out.MasterSubcluster - *out = make([]MasterSubclusterParameters, len(*in)) + *out = make([]MasterSubclusterObservation, len(*in)) for i := range *in { (*in)[i].DeepCopyInto(&(*out)[i]) } @@ -6087,8 +7008,243 @@ func (in *GreenplumClusterParameters) DeepCopyInto(out *GreenplumClusterParamete *out = new(string) **out = **in } - if in.NetworkIDRef != nil { - in, out := &in.NetworkIDRef, &out.NetworkIDRef + if in.PoolerConfig != nil { + in, out := &in.PoolerConfig, &out.PoolerConfig + *out = make([]PoolerConfigObservation, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.PxfConfig != nil { + in, out := &in.PxfConfig, &out.PxfConfig + *out = make([]PxfConfigObservation, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.SecurityGroupIds != nil { + in, out := &in.SecurityGroupIds, &out.SecurityGroupIds + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.SegmentHostCount != nil { + in, out := &in.SegmentHostCount, &out.SegmentHostCount + *out = new(float64) + **out = **in + } + if in.SegmentHostGroupIds != nil { + in, out := &in.SegmentHostGroupIds, &out.SegmentHostGroupIds + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.SegmentHosts != nil { + in, out := &in.SegmentHosts, &out.SegmentHosts + *out = make([]SegmentHostsObservation, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.SegmentInHost != nil { + in, out := &in.SegmentInHost, &out.SegmentInHost + *out = new(float64) + **out = **in + } + if in.SegmentSubcluster != nil { + in, out := &in.SegmentSubcluster, &out.SegmentSubcluster + *out = make([]SegmentSubclusterObservation, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Status != nil { + in, out := &in.Status, &out.Status + *out = new(string) + **out = **in + } + if in.SubnetID != nil { + in, out := &in.SubnetID, &out.SubnetID + *out = new(string) + **out = **in + } + if in.UserName != nil { + in, out := &in.UserName, &out.UserName + *out = new(string) + **out = **in + } + if in.Version != nil { + in, out := &in.Version, &out.Version + *out = new(string) + **out = **in + } + if in.Zone != nil { + in, out := &in.Zone, &out.Zone + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new GreenplumClusterObservation. +func (in *GreenplumClusterObservation) DeepCopy() *GreenplumClusterObservation { + if in == nil { + return nil + } + out := new(GreenplumClusterObservation) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *GreenplumClusterParameters) DeepCopyInto(out *GreenplumClusterParameters) { + *out = *in + if in.Access != nil { + in, out := &in.Access, &out.Access + *out = make([]GreenplumClusterAccessParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.AssignPublicIP != nil { + in, out := &in.AssignPublicIP, &out.AssignPublicIP + *out = new(bool) + **out = **in + } + if in.BackgroundActivities != nil { + in, out := &in.BackgroundActivities, &out.BackgroundActivities + *out = make([]BackgroundActivitiesParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.BackupWindowStart != nil { + in, out := &in.BackupWindowStart, &out.BackupWindowStart + *out = make([]GreenplumClusterBackupWindowStartParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.CloudStorage != nil { + in, out := &in.CloudStorage, &out.CloudStorage + *out = make([]GreenplumClusterCloudStorageParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.DeletionProtection != nil { + in, out := &in.DeletionProtection, &out.DeletionProtection + *out = new(bool) + **out = **in + } + if in.Description != nil { + in, out := &in.Description, &out.Description + *out = new(string) + **out = **in + } + if in.Environment != nil { + in, out := &in.Environment, &out.Environment + *out = new(string) + **out = **in + } + if in.FolderID != nil { + in, out := &in.FolderID, &out.FolderID + *out = new(string) + **out = **in + } + if in.FolderIDRef != nil { + in, out := &in.FolderIDRef, &out.FolderIDRef + *out = new(v1.Reference) + (*in).DeepCopyInto(*out) + } + if in.FolderIDSelector != nil { + in, out := &in.FolderIDSelector, &out.FolderIDSelector + *out = new(v1.Selector) + (*in).DeepCopyInto(*out) + } + if in.GreenplumConfig != nil { + in, out := &in.GreenplumConfig, &out.GreenplumConfig + *out = make(map[string]*string, len(*in)) + for key, val := range *in { + var outVal *string + if val == nil { + (*out)[key] = nil + } else { + inVal := (*in)[key] + in, out := &inVal, &outVal + *out = new(string) + **out = **in + } + (*out)[key] = outVal + } + } + if in.Labels != nil { + in, out := &in.Labels, &out.Labels + *out = make(map[string]*string, len(*in)) + for key, val := range *in { + var outVal *string + if val == nil { + (*out)[key] = nil + } else { + inVal := (*in)[key] + in, out := &inVal, &outVal + *out = new(string) + **out = **in + } + (*out)[key] = outVal + } + } + if in.MaintenanceWindow != nil { + in, out := &in.MaintenanceWindow, &out.MaintenanceWindow + *out = make([]GreenplumClusterMaintenanceWindowParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.MasterHostCount != nil { + in, out := &in.MasterHostCount, &out.MasterHostCount + *out = new(float64) + **out = **in + } + if in.MasterHostGroupIds != nil { + in, out := &in.MasterHostGroupIds, &out.MasterHostGroupIds + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.MasterSubcluster != nil { + in, out := &in.MasterSubcluster, &out.MasterSubcluster + *out = make([]MasterSubclusterParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } + if in.NetworkID != nil { + in, out := &in.NetworkID, &out.NetworkID + *out = new(string) + **out = **in + } + if in.NetworkIDRef != nil { + in, out := &in.NetworkIDRef, &out.NetworkIDRef *out = new(v1.Reference) (*in).DeepCopyInto(*out) } @@ -6139,6 +7295,17 @@ func (in *GreenplumClusterParameters) DeepCopyInto(out *GreenplumClusterParamete *out = new(float64) **out = **in } + if in.SegmentHostGroupIds != nil { + in, out := &in.SegmentHostGroupIds, &out.SegmentHostGroupIds + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } if in.SegmentInHost != nil { in, out := &in.SegmentInHost, &out.SegmentInHost *out = new(float64) @@ -6513,112 +7680,31 @@ func (in *HostParametersParameters) DeepCopy() *HostParametersParameters { } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *HostsInitParameters) DeepCopyInto(out *HostsInitParameters) { +func (in *JournalInitParameters) DeepCopyInto(out *JournalInitParameters) { *out = *in + if in.CommitInterval != nil { + in, out := &in.CommitInterval, &out.CommitInterval + *out = new(float64) + **out = **in + } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new HostsInitParameters. -func (in *HostsInitParameters) DeepCopy() *HostsInitParameters { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new JournalInitParameters. +func (in *JournalInitParameters) DeepCopy() *JournalInitParameters { if in == nil { return nil } - out := new(HostsInitParameters) + out := new(JournalInitParameters) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *HostsObservation) DeepCopyInto(out *HostsObservation) { +func (in *JournalObservation) DeepCopyInto(out *JournalObservation) { *out = *in - if in.AssignPublicIP != nil { - in, out := &in.AssignPublicIP, &out.AssignPublicIP - *out = new(bool) - **out = **in - } - if in.Fqdn != nil { - in, out := &in.Fqdn, &out.Fqdn - *out = new(string) - **out = **in - } - if in.Roles != nil { - in, out := &in.Roles, &out.Roles - *out = make([]*string, len(*in)) - for i := range *in { - if (*in)[i] != nil { - in, out := &(*in)[i], &(*out)[i] - *out = new(string) - **out = **in - } - } - } - if in.SubnetID != nil { - in, out := &in.SubnetID, &out.SubnetID - *out = new(string) - **out = **in - } - if in.Type != nil { - in, out := &in.Type, &out.Type - *out = new(string) - **out = **in - } - if in.Zone != nil { - in, out := &in.Zone, &out.Zone - *out = new(string) - **out = **in - } -} - -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new HostsObservation. -func (in *HostsObservation) DeepCopy() *HostsObservation { - if in == nil { - return nil - } - out := new(HostsObservation) - in.DeepCopyInto(out) - return out -} - -// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *HostsParameters) DeepCopyInto(out *HostsParameters) { - *out = *in -} - -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new HostsParameters. -func (in *HostsParameters) DeepCopy() *HostsParameters { - if in == nil { - return nil - } - out := new(HostsParameters) - in.DeepCopyInto(out) - return out -} - -// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *JournalInitParameters) DeepCopyInto(out *JournalInitParameters) { - *out = *in - if in.CommitInterval != nil { - in, out := &in.CommitInterval, &out.CommitInterval - *out = new(float64) - **out = **in - } -} - -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new JournalInitParameters. -func (in *JournalInitParameters) DeepCopy() *JournalInitParameters { - if in == nil { - return nil - } - out := new(JournalInitParameters) - in.DeepCopyInto(out) - return out -} - -// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *JournalObservation) DeepCopyInto(out *JournalObservation) { - *out = *in - if in.CommitInterval != nil { - in, out := &in.CommitInterval, &out.CommitInterval - *out = new(float64) + if in.CommitInterval != nil { + in, out := &in.CommitInterval, &out.CommitInterval + *out = new(float64) **out = **in } } @@ -6700,6 +7786,13 @@ func (in *KafkaClusterConfigInitParameters) DeepCopyInto(out *KafkaClusterConfig *out = new(float64) **out = **in } + if in.DiskSizeAutoscaling != nil { + in, out := &in.DiskSizeAutoscaling, &out.DiskSizeAutoscaling + *out = make([]DiskSizeAutoscalingInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } if in.Kafka != nil { in, out := &in.Kafka, &out.Kafka *out = make([]ConfigKafkaInitParameters, len(*in)) @@ -6772,6 +7865,13 @@ func (in *KafkaClusterConfigObservation) DeepCopyInto(out *KafkaClusterConfigObs *out = new(float64) **out = **in } + if in.DiskSizeAutoscaling != nil { + in, out := &in.DiskSizeAutoscaling, &out.DiskSizeAutoscaling + *out = make([]DiskSizeAutoscalingObservation, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } if in.Kafka != nil { in, out := &in.Kafka, &out.Kafka *out = make([]ConfigKafkaObservation, len(*in)) @@ -6844,6 +7944,13 @@ func (in *KafkaClusterConfigParameters) DeepCopyInto(out *KafkaClusterConfigPara *out = new(float64) **out = **in } + if in.DiskSizeAutoscaling != nil { + in, out := &in.DiskSizeAutoscaling, &out.DiskSizeAutoscaling + *out = make([]DiskSizeAutoscalingParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } if in.Kafka != nil { in, out := &in.Kafka, &out.Kafka *out = make([]ConfigKafkaParameters, len(*in)) @@ -8375,6 +9482,16 @@ func (in *KafkaConnectorStatus) DeepCopy() *KafkaConnectorStatus { // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *KafkaInitParameters) DeepCopyInto(out *KafkaInitParameters) { *out = *in + if in.AutoOffsetReset != nil { + in, out := &in.AutoOffsetReset, &out.AutoOffsetReset + *out = new(string) + **out = **in + } + if in.Debug != nil { + in, out := &in.Debug, &out.Debug + *out = new(string) + **out = **in + } if in.EnableSSLCertificateVerification != nil { in, out := &in.EnableSSLCertificateVerification, &out.EnableSSLCertificateVerification *out = new(bool) @@ -8425,6 +9542,16 @@ func (in *KafkaInitParameters) DeepCopy() *KafkaInitParameters { // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *KafkaObservation) DeepCopyInto(out *KafkaObservation) { *out = *in + if in.AutoOffsetReset != nil { + in, out := &in.AutoOffsetReset, &out.AutoOffsetReset + *out = new(string) + **out = **in + } + if in.Debug != nil { + in, out := &in.Debug, &out.Debug + *out = new(string) + **out = **in + } if in.EnableSSLCertificateVerification != nil { in, out := &in.EnableSSLCertificateVerification, &out.EnableSSLCertificateVerification *out = new(bool) @@ -8470,6 +9597,16 @@ func (in *KafkaObservation) DeepCopy() *KafkaObservation { // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *KafkaParameters) DeepCopyInto(out *KafkaParameters) { *out = *in + if in.AutoOffsetReset != nil { + in, out := &in.AutoOffsetReset, &out.AutoOffsetReset + *out = new(string) + **out = **in + } + if in.Debug != nil { + in, out := &in.Debug, &out.Debug + *out = new(string) + **out = **in + } if in.EnableSSLCertificateVerification != nil { in, out := &in.EnableSSLCertificateVerification, &out.EnableSSLCertificateVerification *out = new(bool) @@ -10168,21 +11305,56 @@ func (in *MasterSubclusterResourcesParameters) DeepCopy() *MasterSubclusterResou // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *MergeTreeInitParameters) DeepCopyInto(out *MergeTreeInitParameters) { *out = *in + if in.AllowRemoteFsZeroCopyReplication != nil { + in, out := &in.AllowRemoteFsZeroCopyReplication, &out.AllowRemoteFsZeroCopyReplication + *out = new(bool) + **out = **in + } + if in.CheckSampleColumnIsCorrect != nil { + in, out := &in.CheckSampleColumnIsCorrect, &out.CheckSampleColumnIsCorrect + *out = new(bool) + **out = **in + } if in.CleanupDelayPeriod != nil { in, out := &in.CleanupDelayPeriod, &out.CleanupDelayPeriod *out = new(float64) **out = **in } + if in.InactivePartsToDelayInsert != nil { + in, out := &in.InactivePartsToDelayInsert, &out.InactivePartsToDelayInsert + *out = new(float64) + **out = **in + } + if in.InactivePartsToThrowInsert != nil { + in, out := &in.InactivePartsToThrowInsert, &out.InactivePartsToThrowInsert + *out = new(float64) + **out = **in + } if in.MaxAvgPartSizeForTooManyParts != nil { in, out := &in.MaxAvgPartSizeForTooManyParts, &out.MaxAvgPartSizeForTooManyParts *out = new(float64) **out = **in } + if in.MaxBytesToMergeAtMaxSpaceInPool != nil { + in, out := &in.MaxBytesToMergeAtMaxSpaceInPool, &out.MaxBytesToMergeAtMaxSpaceInPool + *out = new(float64) + **out = **in + } if in.MaxBytesToMergeAtMinSpaceInPool != nil { in, out := &in.MaxBytesToMergeAtMinSpaceInPool, &out.MaxBytesToMergeAtMinSpaceInPool *out = new(float64) **out = **in } + if in.MaxCleanupDelayPeriod != nil { + in, out := &in.MaxCleanupDelayPeriod, &out.MaxCleanupDelayPeriod + *out = new(float64) + **out = **in + } + if in.MaxMergeSelectingSleepMs != nil { + in, out := &in.MaxMergeSelectingSleepMs, &out.MaxMergeSelectingSleepMs + *out = new(float64) + **out = **in + } if in.MaxNumberOfMergesWithTTLInPool != nil { in, out := &in.MaxNumberOfMergesWithTTLInPool, &out.MaxNumberOfMergesWithTTLInPool *out = new(float64) @@ -10198,6 +11370,11 @@ func (in *MergeTreeInitParameters) DeepCopyInto(out *MergeTreeInitParameters) { *out = new(float64) **out = **in } + if in.MergeMaxBlockSize != nil { + in, out := &in.MergeMaxBlockSize, &out.MergeMaxBlockSize + *out = new(float64) + **out = **in + } if in.MergeSelectingSleepMs != nil { in, out := &in.MergeSelectingSleepMs, &out.MergeSelectingSleepMs *out = new(float64) @@ -10233,6 +11410,11 @@ func (in *MergeTreeInitParameters) DeepCopyInto(out *MergeTreeInitParameters) { *out = new(float64) **out = **in } + if in.NumberOfFreeEntriesInPoolToExecuteMutation != nil { + in, out := &in.NumberOfFreeEntriesInPoolToExecuteMutation, &out.NumberOfFreeEntriesInPoolToExecuteMutation + *out = new(float64) + **out = **in + } if in.NumberOfFreeEntriesInPoolToLowerMaxSizeOfMerge != nil { in, out := &in.NumberOfFreeEntriesInPoolToLowerMaxSizeOfMerge, &out.NumberOfFreeEntriesInPoolToLowerMaxSizeOfMerge *out = new(float64) @@ -10278,21 +11460,56 @@ func (in *MergeTreeInitParameters) DeepCopy() *MergeTreeInitParameters { // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *MergeTreeObservation) DeepCopyInto(out *MergeTreeObservation) { *out = *in + if in.AllowRemoteFsZeroCopyReplication != nil { + in, out := &in.AllowRemoteFsZeroCopyReplication, &out.AllowRemoteFsZeroCopyReplication + *out = new(bool) + **out = **in + } + if in.CheckSampleColumnIsCorrect != nil { + in, out := &in.CheckSampleColumnIsCorrect, &out.CheckSampleColumnIsCorrect + *out = new(bool) + **out = **in + } if in.CleanupDelayPeriod != nil { in, out := &in.CleanupDelayPeriod, &out.CleanupDelayPeriod *out = new(float64) **out = **in } + if in.InactivePartsToDelayInsert != nil { + in, out := &in.InactivePartsToDelayInsert, &out.InactivePartsToDelayInsert + *out = new(float64) + **out = **in + } + if in.InactivePartsToThrowInsert != nil { + in, out := &in.InactivePartsToThrowInsert, &out.InactivePartsToThrowInsert + *out = new(float64) + **out = **in + } if in.MaxAvgPartSizeForTooManyParts != nil { in, out := &in.MaxAvgPartSizeForTooManyParts, &out.MaxAvgPartSizeForTooManyParts *out = new(float64) **out = **in } + if in.MaxBytesToMergeAtMaxSpaceInPool != nil { + in, out := &in.MaxBytesToMergeAtMaxSpaceInPool, &out.MaxBytesToMergeAtMaxSpaceInPool + *out = new(float64) + **out = **in + } if in.MaxBytesToMergeAtMinSpaceInPool != nil { in, out := &in.MaxBytesToMergeAtMinSpaceInPool, &out.MaxBytesToMergeAtMinSpaceInPool *out = new(float64) **out = **in } + if in.MaxCleanupDelayPeriod != nil { + in, out := &in.MaxCleanupDelayPeriod, &out.MaxCleanupDelayPeriod + *out = new(float64) + **out = **in + } + if in.MaxMergeSelectingSleepMs != nil { + in, out := &in.MaxMergeSelectingSleepMs, &out.MaxMergeSelectingSleepMs + *out = new(float64) + **out = **in + } if in.MaxNumberOfMergesWithTTLInPool != nil { in, out := &in.MaxNumberOfMergesWithTTLInPool, &out.MaxNumberOfMergesWithTTLInPool *out = new(float64) @@ -10308,6 +11525,11 @@ func (in *MergeTreeObservation) DeepCopyInto(out *MergeTreeObservation) { *out = new(float64) **out = **in } + if in.MergeMaxBlockSize != nil { + in, out := &in.MergeMaxBlockSize, &out.MergeMaxBlockSize + *out = new(float64) + **out = **in + } if in.MergeSelectingSleepMs != nil { in, out := &in.MergeSelectingSleepMs, &out.MergeSelectingSleepMs *out = new(float64) @@ -10343,6 +11565,11 @@ func (in *MergeTreeObservation) DeepCopyInto(out *MergeTreeObservation) { *out = new(float64) **out = **in } + if in.NumberOfFreeEntriesInPoolToExecuteMutation != nil { + in, out := &in.NumberOfFreeEntriesInPoolToExecuteMutation, &out.NumberOfFreeEntriesInPoolToExecuteMutation + *out = new(float64) + **out = **in + } if in.NumberOfFreeEntriesInPoolToLowerMaxSizeOfMerge != nil { in, out := &in.NumberOfFreeEntriesInPoolToLowerMaxSizeOfMerge, &out.NumberOfFreeEntriesInPoolToLowerMaxSizeOfMerge *out = new(float64) @@ -10388,21 +11615,56 @@ func (in *MergeTreeObservation) DeepCopy() *MergeTreeObservation { // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *MergeTreeParameters) DeepCopyInto(out *MergeTreeParameters) { *out = *in + if in.AllowRemoteFsZeroCopyReplication != nil { + in, out := &in.AllowRemoteFsZeroCopyReplication, &out.AllowRemoteFsZeroCopyReplication + *out = new(bool) + **out = **in + } + if in.CheckSampleColumnIsCorrect != nil { + in, out := &in.CheckSampleColumnIsCorrect, &out.CheckSampleColumnIsCorrect + *out = new(bool) + **out = **in + } if in.CleanupDelayPeriod != nil { in, out := &in.CleanupDelayPeriod, &out.CleanupDelayPeriod *out = new(float64) **out = **in } + if in.InactivePartsToDelayInsert != nil { + in, out := &in.InactivePartsToDelayInsert, &out.InactivePartsToDelayInsert + *out = new(float64) + **out = **in + } + if in.InactivePartsToThrowInsert != nil { + in, out := &in.InactivePartsToThrowInsert, &out.InactivePartsToThrowInsert + *out = new(float64) + **out = **in + } if in.MaxAvgPartSizeForTooManyParts != nil { in, out := &in.MaxAvgPartSizeForTooManyParts, &out.MaxAvgPartSizeForTooManyParts *out = new(float64) **out = **in } + if in.MaxBytesToMergeAtMaxSpaceInPool != nil { + in, out := &in.MaxBytesToMergeAtMaxSpaceInPool, &out.MaxBytesToMergeAtMaxSpaceInPool + *out = new(float64) + **out = **in + } if in.MaxBytesToMergeAtMinSpaceInPool != nil { in, out := &in.MaxBytesToMergeAtMinSpaceInPool, &out.MaxBytesToMergeAtMinSpaceInPool *out = new(float64) **out = **in } + if in.MaxCleanupDelayPeriod != nil { + in, out := &in.MaxCleanupDelayPeriod, &out.MaxCleanupDelayPeriod + *out = new(float64) + **out = **in + } + if in.MaxMergeSelectingSleepMs != nil { + in, out := &in.MaxMergeSelectingSleepMs, &out.MaxMergeSelectingSleepMs + *out = new(float64) + **out = **in + } if in.MaxNumberOfMergesWithTTLInPool != nil { in, out := &in.MaxNumberOfMergesWithTTLInPool, &out.MaxNumberOfMergesWithTTLInPool *out = new(float64) @@ -10418,6 +11680,11 @@ func (in *MergeTreeParameters) DeepCopyInto(out *MergeTreeParameters) { *out = new(float64) **out = **in } + if in.MergeMaxBlockSize != nil { + in, out := &in.MergeMaxBlockSize, &out.MergeMaxBlockSize + *out = new(float64) + **out = **in + } if in.MergeSelectingSleepMs != nil { in, out := &in.MergeSelectingSleepMs, &out.MergeSelectingSleepMs *out = new(float64) @@ -10453,6 +11720,11 @@ func (in *MergeTreeParameters) DeepCopyInto(out *MergeTreeParameters) { *out = new(float64) **out = **in } + if in.NumberOfFreeEntriesInPoolToExecuteMutation != nil { + in, out := &in.NumberOfFreeEntriesInPoolToExecuteMutation, &out.NumberOfFreeEntriesInPoolToExecuteMutation + *out = new(float64) + **out = **in + } if in.NumberOfFreeEntriesInPoolToLowerMaxSizeOfMerge != nil { in, out := &in.NumberOfFreeEntriesInPoolToLowerMaxSizeOfMerge, &out.NumberOfFreeEntriesInPoolToLowerMaxSizeOfMerge *out = new(float64) @@ -11349,6 +12621,34 @@ func (in *MongodbClusterInitParameters) DeepCopyInto(out *MongodbClusterInitPara *out = new(string) **out = **in } + if in.DiskSizeAutoscalingMongocfg != nil { + in, out := &in.DiskSizeAutoscalingMongocfg, &out.DiskSizeAutoscalingMongocfg + *out = make([]DiskSizeAutoscalingMongocfgInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.DiskSizeAutoscalingMongod != nil { + in, out := &in.DiskSizeAutoscalingMongod, &out.DiskSizeAutoscalingMongod + *out = make([]DiskSizeAutoscalingMongodInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.DiskSizeAutoscalingMongoinfra != nil { + in, out := &in.DiskSizeAutoscalingMongoinfra, &out.DiskSizeAutoscalingMongoinfra + *out = make([]DiskSizeAutoscalingMongoinfraInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.DiskSizeAutoscalingMongos != nil { + in, out := &in.DiskSizeAutoscalingMongos, &out.DiskSizeAutoscalingMongos + *out = make([]DiskSizeAutoscalingMongosInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } if in.Environment != nil { in, out := &in.Environment, &out.Environment *out = new(string) @@ -11662,6 +12962,34 @@ func (in *MongodbClusterObservation) DeepCopyInto(out *MongodbClusterObservation *out = new(string) **out = **in } + if in.DiskSizeAutoscalingMongocfg != nil { + in, out := &in.DiskSizeAutoscalingMongocfg, &out.DiskSizeAutoscalingMongocfg + *out = make([]DiskSizeAutoscalingMongocfgObservation, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.DiskSizeAutoscalingMongod != nil { + in, out := &in.DiskSizeAutoscalingMongod, &out.DiskSizeAutoscalingMongod + *out = make([]DiskSizeAutoscalingMongodObservation, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.DiskSizeAutoscalingMongoinfra != nil { + in, out := &in.DiskSizeAutoscalingMongoinfra, &out.DiskSizeAutoscalingMongoinfra + *out = make([]DiskSizeAutoscalingMongoinfraObservation, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.DiskSizeAutoscalingMongos != nil { + in, out := &in.DiskSizeAutoscalingMongos, &out.DiskSizeAutoscalingMongos + *out = make([]DiskSizeAutoscalingMongosObservation, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } if in.Environment != nil { in, out := &in.Environment, &out.Environment *out = new(string) @@ -11836,6 +13164,34 @@ func (in *MongodbClusterParameters) DeepCopyInto(out *MongodbClusterParameters) *out = new(string) **out = **in } + if in.DiskSizeAutoscalingMongocfg != nil { + in, out := &in.DiskSizeAutoscalingMongocfg, &out.DiskSizeAutoscalingMongocfg + *out = make([]DiskSizeAutoscalingMongocfgParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.DiskSizeAutoscalingMongod != nil { + in, out := &in.DiskSizeAutoscalingMongod, &out.DiskSizeAutoscalingMongod + *out = make([]DiskSizeAutoscalingMongodParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.DiskSizeAutoscalingMongoinfra != nil { + in, out := &in.DiskSizeAutoscalingMongoinfra, &out.DiskSizeAutoscalingMongoinfra + *out = make([]DiskSizeAutoscalingMongoinfraParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.DiskSizeAutoscalingMongos != nil { + in, out := &in.DiskSizeAutoscalingMongos, &out.DiskSizeAutoscalingMongos + *out = make([]DiskSizeAutoscalingMongosParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } if in.Environment != nil { in, out := &in.Environment, &out.Environment *out = new(string) @@ -15417,712 +16773,568 @@ func (in *NetParameters) DeepCopy() *NetParameters { } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *NodeGroupsInitParameters) DeepCopyInto(out *NodeGroupsInitParameters) { +func (in *OperationProfilingInitParameters) DeepCopyInto(out *OperationProfilingInitParameters) { *out = *in - if in.AssignPublicIP != nil { - in, out := &in.AssignPublicIP, &out.AssignPublicIP - *out = new(bool) + if in.Mode != nil { + in, out := &in.Mode, &out.Mode + *out = new(string) **out = **in } - if in.HostsCount != nil { - in, out := &in.HostsCount, &out.HostsCount + if in.SlowOpThreshold != nil { + in, out := &in.SlowOpThreshold, &out.SlowOpThreshold *out = new(float64) **out = **in } - if in.Name != nil { - in, out := &in.Name, &out.Name - *out = new(string) - **out = **in - } - if in.Resources != nil { - in, out := &in.Resources, &out.Resources - *out = make([]NodeGroupsResourcesInitParameters, len(*in)) - for i := range *in { - (*in)[i].DeepCopyInto(&(*out)[i]) - } - } - if in.SubnetIds != nil { - in, out := &in.SubnetIds, &out.SubnetIds - *out = make([]*string, len(*in)) - for i := range *in { - if (*in)[i] != nil { - in, out := &(*in)[i], &(*out)[i] - *out = new(string) - **out = **in - } - } - } - if in.ZoneIds != nil { - in, out := &in.ZoneIds, &out.ZoneIds - *out = make([]*string, len(*in)) - for i := range *in { - if (*in)[i] != nil { - in, out := &(*in)[i], &(*out)[i] - *out = new(string) - **out = **in - } - } - } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NodeGroupsInitParameters. -func (in *NodeGroupsInitParameters) DeepCopy() *NodeGroupsInitParameters { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new OperationProfilingInitParameters. +func (in *OperationProfilingInitParameters) DeepCopy() *OperationProfilingInitParameters { if in == nil { return nil } - out := new(NodeGroupsInitParameters) + out := new(OperationProfilingInitParameters) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *NodeGroupsObservation) DeepCopyInto(out *NodeGroupsObservation) { +func (in *OperationProfilingObservation) DeepCopyInto(out *OperationProfilingObservation) { *out = *in - if in.AssignPublicIP != nil { - in, out := &in.AssignPublicIP, &out.AssignPublicIP - *out = new(bool) + if in.Mode != nil { + in, out := &in.Mode, &out.Mode + *out = new(string) **out = **in } - if in.HostsCount != nil { - in, out := &in.HostsCount, &out.HostsCount + if in.SlowOpThreshold != nil { + in, out := &in.SlowOpThreshold, &out.SlowOpThreshold *out = new(float64) **out = **in } - if in.Name != nil { - in, out := &in.Name, &out.Name - *out = new(string) - **out = **in - } - if in.Resources != nil { - in, out := &in.Resources, &out.Resources - *out = make([]NodeGroupsResourcesObservation, len(*in)) - for i := range *in { - (*in)[i].DeepCopyInto(&(*out)[i]) - } - } - if in.SubnetIds != nil { - in, out := &in.SubnetIds, &out.SubnetIds - *out = make([]*string, len(*in)) - for i := range *in { - if (*in)[i] != nil { - in, out := &(*in)[i], &(*out)[i] - *out = new(string) - **out = **in - } - } - } - if in.ZoneIds != nil { - in, out := &in.ZoneIds, &out.ZoneIds - *out = make([]*string, len(*in)) - for i := range *in { - if (*in)[i] != nil { - in, out := &(*in)[i], &(*out)[i] - *out = new(string) - **out = **in - } - } - } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NodeGroupsObservation. -func (in *NodeGroupsObservation) DeepCopy() *NodeGroupsObservation { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new OperationProfilingObservation. +func (in *OperationProfilingObservation) DeepCopy() *OperationProfilingObservation { if in == nil { return nil } - out := new(NodeGroupsObservation) + out := new(OperationProfilingObservation) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *NodeGroupsParameters) DeepCopyInto(out *NodeGroupsParameters) { +func (in *OperationProfilingParameters) DeepCopyInto(out *OperationProfilingParameters) { *out = *in - if in.AssignPublicIP != nil { - in, out := &in.AssignPublicIP, &out.AssignPublicIP - *out = new(bool) + if in.Mode != nil { + in, out := &in.Mode, &out.Mode + *out = new(string) **out = **in } - if in.HostsCount != nil { - in, out := &in.HostsCount, &out.HostsCount + if in.SlowOpThreshold != nil { + in, out := &in.SlowOpThreshold, &out.SlowOpThreshold *out = new(float64) **out = **in } - if in.Name != nil { - in, out := &in.Name, &out.Name - *out = new(string) - **out = **in - } - if in.Resources != nil { - in, out := &in.Resources, &out.Resources - *out = make([]NodeGroupsResourcesParameters, len(*in)) - for i := range *in { - (*in)[i].DeepCopyInto(&(*out)[i]) - } - } - if in.SubnetIds != nil { - in, out := &in.SubnetIds, &out.SubnetIds - *out = make([]*string, len(*in)) - for i := range *in { - if (*in)[i] != nil { - in, out := &(*in)[i], &(*out)[i] - *out = new(string) - **out = **in - } - } - } - if in.ZoneIds != nil { - in, out := &in.ZoneIds, &out.ZoneIds - *out = make([]*string, len(*in)) - for i := range *in { - if (*in)[i] != nil { - in, out := &(*in)[i], &(*out)[i] - *out = new(string) - **out = **in - } - } - } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NodeGroupsParameters. -func (in *NodeGroupsParameters) DeepCopy() *NodeGroupsParameters { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new OperationProfilingParameters. +func (in *OperationProfilingParameters) DeepCopy() *OperationProfilingParameters { if in == nil { return nil } - out := new(NodeGroupsParameters) + out := new(OperationProfilingParameters) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *NodeGroupsResourcesInitParameters) DeepCopyInto(out *NodeGroupsResourcesInitParameters) { +func (in *PatternInitParameters) DeepCopyInto(out *PatternInitParameters) { *out = *in - if in.DiskSize != nil { - in, out := &in.DiskSize, &out.DiskSize - *out = new(float64) - **out = **in - } - if in.DiskTypeID != nil { - in, out := &in.DiskTypeID, &out.DiskTypeID + if in.Function != nil { + in, out := &in.Function, &out.Function *out = new(string) **out = **in } - if in.ResourcePresetID != nil { - in, out := &in.ResourcePresetID, &out.ResourcePresetID + if in.Regexp != nil { + in, out := &in.Regexp, &out.Regexp *out = new(string) **out = **in } + if in.Retention != nil { + in, out := &in.Retention, &out.Retention + *out = make([]RetentionInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NodeGroupsResourcesInitParameters. -func (in *NodeGroupsResourcesInitParameters) DeepCopy() *NodeGroupsResourcesInitParameters { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PatternInitParameters. +func (in *PatternInitParameters) DeepCopy() *PatternInitParameters { if in == nil { return nil } - out := new(NodeGroupsResourcesInitParameters) + out := new(PatternInitParameters) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *NodeGroupsResourcesObservation) DeepCopyInto(out *NodeGroupsResourcesObservation) { +func (in *PatternObservation) DeepCopyInto(out *PatternObservation) { *out = *in - if in.DiskSize != nil { - in, out := &in.DiskSize, &out.DiskSize - *out = new(float64) - **out = **in - } - if in.DiskTypeID != nil { - in, out := &in.DiskTypeID, &out.DiskTypeID + if in.Function != nil { + in, out := &in.Function, &out.Function *out = new(string) **out = **in } - if in.ResourcePresetID != nil { - in, out := &in.ResourcePresetID, &out.ResourcePresetID + if in.Regexp != nil { + in, out := &in.Regexp, &out.Regexp *out = new(string) **out = **in } + if in.Retention != nil { + in, out := &in.Retention, &out.Retention + *out = make([]RetentionObservation, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NodeGroupsResourcesObservation. -func (in *NodeGroupsResourcesObservation) DeepCopy() *NodeGroupsResourcesObservation { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PatternObservation. +func (in *PatternObservation) DeepCopy() *PatternObservation { if in == nil { return nil } - out := new(NodeGroupsResourcesObservation) + out := new(PatternObservation) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *NodeGroupsResourcesParameters) DeepCopyInto(out *NodeGroupsResourcesParameters) { +func (in *PatternParameters) DeepCopyInto(out *PatternParameters) { *out = *in - if in.DiskSize != nil { - in, out := &in.DiskSize, &out.DiskSize - *out = new(float64) - **out = **in - } - if in.DiskTypeID != nil { - in, out := &in.DiskTypeID, &out.DiskTypeID + if in.Function != nil { + in, out := &in.Function, &out.Function *out = new(string) **out = **in } - if in.ResourcePresetID != nil { - in, out := &in.ResourcePresetID, &out.ResourcePresetID + if in.Regexp != nil { + in, out := &in.Regexp, &out.Regexp *out = new(string) **out = **in } + if in.Retention != nil { + in, out := &in.Retention, &out.Retention + *out = make([]RetentionParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NodeGroupsResourcesParameters. -func (in *NodeGroupsResourcesParameters) DeepCopy() *NodeGroupsResourcesParameters { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PatternParameters. +func (in *PatternParameters) DeepCopy() *PatternParameters { if in == nil { return nil } - out := new(NodeGroupsResourcesParameters) + out := new(PatternParameters) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *OpensearchCluster) DeepCopyInto(out *OpensearchCluster) { +func (in *PerformanceDiagnosticsInitParameters) DeepCopyInto(out *PerformanceDiagnosticsInitParameters) { *out = *in - out.TypeMeta = in.TypeMeta - in.ObjectMeta.DeepCopyInto(&out.ObjectMeta) - in.Spec.DeepCopyInto(&out.Spec) - in.Status.DeepCopyInto(&out.Status) + if in.Enabled != nil { + in, out := &in.Enabled, &out.Enabled + *out = new(bool) + **out = **in + } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new OpensearchCluster. -func (in *OpensearchCluster) DeepCopy() *OpensearchCluster { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PerformanceDiagnosticsInitParameters. +func (in *PerformanceDiagnosticsInitParameters) DeepCopy() *PerformanceDiagnosticsInitParameters { if in == nil { return nil } - out := new(OpensearchCluster) + out := new(PerformanceDiagnosticsInitParameters) in.DeepCopyInto(out) return out } -// DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object. -func (in *OpensearchCluster) DeepCopyObject() runtime.Object { - if c := in.DeepCopy(); c != nil { - return c - } - return nil -} - // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *OpensearchClusterConfigInitParameters) DeepCopyInto(out *OpensearchClusterConfigInitParameters) { +func (in *PerformanceDiagnosticsObservation) DeepCopyInto(out *PerformanceDiagnosticsObservation) { *out = *in - out.AdminPasswordSecretRef = in.AdminPasswordSecretRef - if in.Dashboards != nil { - in, out := &in.Dashboards, &out.Dashboards - *out = make([]DashboardsInitParameters, len(*in)) - for i := range *in { - (*in)[i].DeepCopyInto(&(*out)[i]) - } - } - if in.Opensearch != nil { - in, out := &in.Opensearch, &out.Opensearch - *out = make([]OpensearchInitParameters, len(*in)) - for i := range *in { - (*in)[i].DeepCopyInto(&(*out)[i]) - } - } - if in.Version != nil { - in, out := &in.Version, &out.Version - *out = new(string) + if in.Enabled != nil { + in, out := &in.Enabled, &out.Enabled + *out = new(bool) **out = **in } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new OpensearchClusterConfigInitParameters. -func (in *OpensearchClusterConfigInitParameters) DeepCopy() *OpensearchClusterConfigInitParameters { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PerformanceDiagnosticsObservation. +func (in *PerformanceDiagnosticsObservation) DeepCopy() *PerformanceDiagnosticsObservation { if in == nil { return nil } - out := new(OpensearchClusterConfigInitParameters) + out := new(PerformanceDiagnosticsObservation) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *OpensearchClusterConfigObservation) DeepCopyInto(out *OpensearchClusterConfigObservation) { +func (in *PerformanceDiagnosticsParameters) DeepCopyInto(out *PerformanceDiagnosticsParameters) { *out = *in - if in.Dashboards != nil { - in, out := &in.Dashboards, &out.Dashboards - *out = make([]DashboardsObservation, len(*in)) - for i := range *in { - (*in)[i].DeepCopyInto(&(*out)[i]) - } - } - if in.Opensearch != nil { - in, out := &in.Opensearch, &out.Opensearch - *out = make([]OpensearchObservation, len(*in)) - for i := range *in { - (*in)[i].DeepCopyInto(&(*out)[i]) - } - } - if in.Version != nil { - in, out := &in.Version, &out.Version - *out = new(string) + if in.Enabled != nil { + in, out := &in.Enabled, &out.Enabled + *out = new(bool) **out = **in } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new OpensearchClusterConfigObservation. -func (in *OpensearchClusterConfigObservation) DeepCopy() *OpensearchClusterConfigObservation { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PerformanceDiagnosticsParameters. +func (in *PerformanceDiagnosticsParameters) DeepCopy() *PerformanceDiagnosticsParameters { if in == nil { return nil } - out := new(OpensearchClusterConfigObservation) + out := new(PerformanceDiagnosticsParameters) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *OpensearchClusterConfigParameters) DeepCopyInto(out *OpensearchClusterConfigParameters) { +func (in *PermissionInitParameters) DeepCopyInto(out *PermissionInitParameters) { *out = *in - out.AdminPasswordSecretRef = in.AdminPasswordSecretRef - if in.Dashboards != nil { - in, out := &in.Dashboards, &out.Dashboards - *out = make([]DashboardsParameters, len(*in)) - for i := range *in { - (*in)[i].DeepCopyInto(&(*out)[i]) - } - } - if in.Opensearch != nil { - in, out := &in.Opensearch, &out.Opensearch - *out = make([]OpensearchParameters, len(*in)) - for i := range *in { - (*in)[i].DeepCopyInto(&(*out)[i]) - } - } - if in.Version != nil { - in, out := &in.Version, &out.Version + if in.DatabaseName != nil { + in, out := &in.DatabaseName, &out.DatabaseName *out = new(string) **out = **in } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new OpensearchClusterConfigParameters. -func (in *OpensearchClusterConfigParameters) DeepCopy() *OpensearchClusterConfigParameters { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PermissionInitParameters. +func (in *PermissionInitParameters) DeepCopy() *PermissionInitParameters { if in == nil { return nil } - out := new(OpensearchClusterConfigParameters) + out := new(PermissionInitParameters) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *OpensearchClusterInitParameters) DeepCopyInto(out *OpensearchClusterInitParameters) { +func (in *PermissionObservation) DeepCopyInto(out *PermissionObservation) { *out = *in - if in.Config != nil { - in, out := &in.Config, &out.Config - *out = make([]OpensearchClusterConfigInitParameters, len(*in)) - for i := range *in { - (*in)[i].DeepCopyInto(&(*out)[i]) - } - } - if in.DeletionProtection != nil { - in, out := &in.DeletionProtection, &out.DeletionProtection - *out = new(bool) - **out = **in - } - if in.Description != nil { - in, out := &in.Description, &out.Description - *out = new(string) - **out = **in - } - if in.Environment != nil { - in, out := &in.Environment, &out.Environment - *out = new(string) - **out = **in - } - if in.FolderID != nil { - in, out := &in.FolderID, &out.FolderID - *out = new(string) - **out = **in - } - if in.FolderIDRef != nil { - in, out := &in.FolderIDRef, &out.FolderIDRef - *out = new(v1.Reference) - (*in).DeepCopyInto(*out) - } - if in.FolderIDSelector != nil { - in, out := &in.FolderIDSelector, &out.FolderIDSelector - *out = new(v1.Selector) - (*in).DeepCopyInto(*out) - } - if in.Labels != nil { - in, out := &in.Labels, &out.Labels - *out = make(map[string]*string, len(*in)) - for key, val := range *in { - var outVal *string - if val == nil { - (*out)[key] = nil - } else { - inVal := (*in)[key] - in, out := &inVal, &outVal - *out = new(string) - **out = **in - } - (*out)[key] = outVal - } - } - if in.MaintenanceWindow != nil { - in, out := &in.MaintenanceWindow, &out.MaintenanceWindow - *out = make([]OpensearchClusterMaintenanceWindowInitParameters, len(*in)) - for i := range *in { - (*in)[i].DeepCopyInto(&(*out)[i]) - } - } - if in.Name != nil { - in, out := &in.Name, &out.Name - *out = new(string) - **out = **in - } - if in.NetworkID != nil { - in, out := &in.NetworkID, &out.NetworkID - *out = new(string) - **out = **in - } - if in.NetworkIDRef != nil { - in, out := &in.NetworkIDRef, &out.NetworkIDRef - *out = new(v1.Reference) - (*in).DeepCopyInto(*out) - } - if in.NetworkIDSelector != nil { - in, out := &in.NetworkIDSelector, &out.NetworkIDSelector - *out = new(v1.Selector) - (*in).DeepCopyInto(*out) - } - if in.SecurityGroupIds != nil { - in, out := &in.SecurityGroupIds, &out.SecurityGroupIds - *out = make([]*string, len(*in)) - for i := range *in { - if (*in)[i] != nil { - in, out := &(*in)[i], &(*out)[i] - *out = new(string) - **out = **in - } - } - } - if in.SecurityGroupIdsRefs != nil { - in, out := &in.SecurityGroupIdsRefs, &out.SecurityGroupIdsRefs - *out = make([]v1.Reference, len(*in)) - for i := range *in { - (*in)[i].DeepCopyInto(&(*out)[i]) - } - } - if in.SecurityGroupIdsSelector != nil { - in, out := &in.SecurityGroupIdsSelector, &out.SecurityGroupIdsSelector - *out = new(v1.Selector) - (*in).DeepCopyInto(*out) - } - if in.ServiceAccountID != nil { - in, out := &in.ServiceAccountID, &out.ServiceAccountID + if in.DatabaseName != nil { + in, out := &in.DatabaseName, &out.DatabaseName *out = new(string) **out = **in } - if in.ServiceAccountIDRef != nil { - in, out := &in.ServiceAccountIDRef, &out.ServiceAccountIDRef - *out = new(v1.Reference) - (*in).DeepCopyInto(*out) - } - if in.ServiceAccountIDSelector != nil { - in, out := &in.ServiceAccountIDSelector, &out.ServiceAccountIDSelector - *out = new(v1.Selector) - (*in).DeepCopyInto(*out) - } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new OpensearchClusterInitParameters. -func (in *OpensearchClusterInitParameters) DeepCopy() *OpensearchClusterInitParameters { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PermissionObservation. +func (in *PermissionObservation) DeepCopy() *PermissionObservation { if in == nil { return nil } - out := new(OpensearchClusterInitParameters) + out := new(PermissionObservation) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *OpensearchClusterList) DeepCopyInto(out *OpensearchClusterList) { +func (in *PermissionParameters) DeepCopyInto(out *PermissionParameters) { *out = *in - out.TypeMeta = in.TypeMeta - in.ListMeta.DeepCopyInto(&out.ListMeta) - if in.Items != nil { - in, out := &in.Items, &out.Items - *out = make([]OpensearchCluster, len(*in)) - for i := range *in { - (*in)[i].DeepCopyInto(&(*out)[i]) - } + if in.DatabaseName != nil { + in, out := &in.DatabaseName, &out.DatabaseName + *out = new(string) + **out = **in } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new OpensearchClusterList. -func (in *OpensearchClusterList) DeepCopy() *OpensearchClusterList { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PermissionParameters. +func (in *PermissionParameters) DeepCopy() *PermissionParameters { if in == nil { return nil } - out := new(OpensearchClusterList) + out := new(PermissionParameters) in.DeepCopyInto(out) return out } -// DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object. -func (in *OpensearchClusterList) DeepCopyObject() runtime.Object { - if c := in.DeepCopy(); c != nil { - return c - } - return nil -} - // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *OpensearchClusterMaintenanceWindowInitParameters) DeepCopyInto(out *OpensearchClusterMaintenanceWindowInitParameters) { +func (in *PoolerConfigInitParameters) DeepCopyInto(out *PoolerConfigInitParameters) { *out = *in - if in.Day != nil { - in, out := &in.Day, &out.Day - *out = new(string) + if in.PoolClientIdleTimeout != nil { + in, out := &in.PoolClientIdleTimeout, &out.PoolClientIdleTimeout + *out = new(float64) **out = **in } - if in.Hour != nil { - in, out := &in.Hour, &out.Hour + if in.PoolSize != nil { + in, out := &in.PoolSize, &out.PoolSize *out = new(float64) **out = **in } - if in.Type != nil { - in, out := &in.Type, &out.Type + if in.PoolingMode != nil { + in, out := &in.PoolingMode, &out.PoolingMode *out = new(string) **out = **in } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new OpensearchClusterMaintenanceWindowInitParameters. -func (in *OpensearchClusterMaintenanceWindowInitParameters) DeepCopy() *OpensearchClusterMaintenanceWindowInitParameters { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PoolerConfigInitParameters. +func (in *PoolerConfigInitParameters) DeepCopy() *PoolerConfigInitParameters { if in == nil { return nil } - out := new(OpensearchClusterMaintenanceWindowInitParameters) + out := new(PoolerConfigInitParameters) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *OpensearchClusterMaintenanceWindowObservation) DeepCopyInto(out *OpensearchClusterMaintenanceWindowObservation) { +func (in *PoolerConfigObservation) DeepCopyInto(out *PoolerConfigObservation) { *out = *in - if in.Day != nil { - in, out := &in.Day, &out.Day - *out = new(string) + if in.PoolClientIdleTimeout != nil { + in, out := &in.PoolClientIdleTimeout, &out.PoolClientIdleTimeout + *out = new(float64) **out = **in } - if in.Hour != nil { - in, out := &in.Hour, &out.Hour + if in.PoolSize != nil { + in, out := &in.PoolSize, &out.PoolSize *out = new(float64) **out = **in } - if in.Type != nil { - in, out := &in.Type, &out.Type + if in.PoolingMode != nil { + in, out := &in.PoolingMode, &out.PoolingMode *out = new(string) **out = **in } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new OpensearchClusterMaintenanceWindowObservation. -func (in *OpensearchClusterMaintenanceWindowObservation) DeepCopy() *OpensearchClusterMaintenanceWindowObservation { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PoolerConfigObservation. +func (in *PoolerConfigObservation) DeepCopy() *PoolerConfigObservation { if in == nil { return nil } - out := new(OpensearchClusterMaintenanceWindowObservation) + out := new(PoolerConfigObservation) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *OpensearchClusterMaintenanceWindowParameters) DeepCopyInto(out *OpensearchClusterMaintenanceWindowParameters) { +func (in *PoolerConfigParameters) DeepCopyInto(out *PoolerConfigParameters) { *out = *in - if in.Day != nil { - in, out := &in.Day, &out.Day - *out = new(string) + if in.PoolClientIdleTimeout != nil { + in, out := &in.PoolClientIdleTimeout, &out.PoolClientIdleTimeout + *out = new(float64) **out = **in } - if in.Hour != nil { - in, out := &in.Hour, &out.Hour + if in.PoolSize != nil { + in, out := &in.PoolSize, &out.PoolSize *out = new(float64) **out = **in } - if in.Type != nil { - in, out := &in.Type, &out.Type + if in.PoolingMode != nil { + in, out := &in.PoolingMode, &out.PoolingMode *out = new(string) **out = **in } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new OpensearchClusterMaintenanceWindowParameters. -func (in *OpensearchClusterMaintenanceWindowParameters) DeepCopy() *OpensearchClusterMaintenanceWindowParameters { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PoolerConfigParameters. +func (in *PoolerConfigParameters) DeepCopy() *PoolerConfigParameters { if in == nil { return nil } - out := new(OpensearchClusterMaintenanceWindowParameters) + out := new(PoolerConfigParameters) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *OpensearchClusterObservation) DeepCopyInto(out *OpensearchClusterObservation) { +func (in *PostgresqlCluster) DeepCopyInto(out *PostgresqlCluster) { *out = *in - if in.Config != nil { - in, out := &in.Config, &out.Config - *out = make([]OpensearchClusterConfigObservation, len(*in)) - for i := range *in { - (*in)[i].DeepCopyInto(&(*out)[i]) - } + out.TypeMeta = in.TypeMeta + in.ObjectMeta.DeepCopyInto(&out.ObjectMeta) + in.Spec.DeepCopyInto(&out.Spec) + in.Status.DeepCopyInto(&out.Status) +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PostgresqlCluster. +func (in *PostgresqlCluster) DeepCopy() *PostgresqlCluster { + if in == nil { + return nil } - if in.CreatedAt != nil { - in, out := &in.CreatedAt, &out.CreatedAt - *out = new(string) - **out = **in + out := new(PostgresqlCluster) + in.DeepCopyInto(out) + return out +} + +// DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object. +func (in *PostgresqlCluster) DeepCopyObject() runtime.Object { + if c := in.DeepCopy(); c != nil { + return c } - if in.DeletionProtection != nil { - in, out := &in.DeletionProtection, &out.DeletionProtection + return nil +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *PostgresqlClusterConfigAccessInitParameters) DeepCopyInto(out *PostgresqlClusterConfigAccessInitParameters) { + *out = *in + if in.DataLens != nil { + in, out := &in.DataLens, &out.DataLens *out = new(bool) **out = **in } - if in.Description != nil { - in, out := &in.Description, &out.Description - *out = new(string) + if in.DataTransfer != nil { + in, out := &in.DataTransfer, &out.DataTransfer + *out = new(bool) **out = **in } - if in.Environment != nil { - in, out := &in.Environment, &out.Environment - *out = new(string) + if in.Serverless != nil { + in, out := &in.Serverless, &out.Serverless + *out = new(bool) **out = **in } - if in.FolderID != nil { - in, out := &in.FolderID, &out.FolderID - *out = new(string) + if in.WebSQL != nil { + in, out := &in.WebSQL, &out.WebSQL + *out = new(bool) **out = **in } - if in.Health != nil { - in, out := &in.Health, &out.Health - *out = new(string) +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PostgresqlClusterConfigAccessInitParameters. +func (in *PostgresqlClusterConfigAccessInitParameters) DeepCopy() *PostgresqlClusterConfigAccessInitParameters { + if in == nil { + return nil + } + out := new(PostgresqlClusterConfigAccessInitParameters) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *PostgresqlClusterConfigAccessObservation) DeepCopyInto(out *PostgresqlClusterConfigAccessObservation) { + *out = *in + if in.DataLens != nil { + in, out := &in.DataLens, &out.DataLens + *out = new(bool) + **out = **in + } + if in.DataTransfer != nil { + in, out := &in.DataTransfer, &out.DataTransfer + *out = new(bool) + **out = **in + } + if in.Serverless != nil { + in, out := &in.Serverless, &out.Serverless + *out = new(bool) + **out = **in + } + if in.WebSQL != nil { + in, out := &in.WebSQL, &out.WebSQL + *out = new(bool) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PostgresqlClusterConfigAccessObservation. +func (in *PostgresqlClusterConfigAccessObservation) DeepCopy() *PostgresqlClusterConfigAccessObservation { + if in == nil { + return nil + } + out := new(PostgresqlClusterConfigAccessObservation) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *PostgresqlClusterConfigAccessParameters) DeepCopyInto(out *PostgresqlClusterConfigAccessParameters) { + *out = *in + if in.DataLens != nil { + in, out := &in.DataLens, &out.DataLens + *out = new(bool) + **out = **in + } + if in.DataTransfer != nil { + in, out := &in.DataTransfer, &out.DataTransfer + *out = new(bool) + **out = **in + } + if in.Serverless != nil { + in, out := &in.Serverless, &out.Serverless + *out = new(bool) + **out = **in + } + if in.WebSQL != nil { + in, out := &in.WebSQL, &out.WebSQL + *out = new(bool) **out = **in } - if in.Hosts != nil { - in, out := &in.Hosts, &out.Hosts - *out = make([]HostsObservation, len(*in)) +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PostgresqlClusterConfigAccessParameters. +func (in *PostgresqlClusterConfigAccessParameters) DeepCopy() *PostgresqlClusterConfigAccessParameters { + if in == nil { + return nil + } + out := new(PostgresqlClusterConfigAccessParameters) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *PostgresqlClusterConfigInitParameters) DeepCopyInto(out *PostgresqlClusterConfigInitParameters) { + *out = *in + if in.Access != nil { + in, out := &in.Access, &out.Access + *out = make([]PostgresqlClusterConfigAccessInitParameters, len(*in)) for i := range *in { (*in)[i].DeepCopyInto(&(*out)[i]) } } - if in.ID != nil { - in, out := &in.ID, &out.ID - *out = new(string) + if in.Autofailover != nil { + in, out := &in.Autofailover, &out.Autofailover + *out = new(bool) **out = **in } - if in.Labels != nil { - in, out := &in.Labels, &out.Labels + if in.BackupRetainPeriodDays != nil { + in, out := &in.BackupRetainPeriodDays, &out.BackupRetainPeriodDays + *out = new(float64) + **out = **in + } + if in.BackupWindowStart != nil { + in, out := &in.BackupWindowStart, &out.BackupWindowStart + *out = make([]ConfigBackupWindowStartInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.DiskSizeAutoscaling != nil { + in, out := &in.DiskSizeAutoscaling, &out.DiskSizeAutoscaling + *out = make([]ConfigDiskSizeAutoscalingInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.PerformanceDiagnostics != nil { + in, out := &in.PerformanceDiagnostics, &out.PerformanceDiagnostics + *out = make([]ConfigPerformanceDiagnosticsInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.PoolerConfig != nil { + in, out := &in.PoolerConfig, &out.PoolerConfig + *out = make([]ConfigPoolerConfigInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.PostgresqlConfig != nil { + in, out := &in.PostgresqlConfig, &out.PostgresqlConfig *out = make(map[string]*string, len(*in)) for key, val := range *in { var outVal *string @@ -16137,98 +17349,80 @@ func (in *OpensearchClusterObservation) DeepCopyInto(out *OpensearchClusterObser (*out)[key] = outVal } } - if in.MaintenanceWindow != nil { - in, out := &in.MaintenanceWindow, &out.MaintenanceWindow - *out = make([]OpensearchClusterMaintenanceWindowObservation, len(*in)) + if in.Resources != nil { + in, out := &in.Resources, &out.Resources + *out = make([]ConfigResourcesInitParameters, len(*in)) for i := range *in { (*in)[i].DeepCopyInto(&(*out)[i]) } } - if in.Name != nil { - in, out := &in.Name, &out.Name - *out = new(string) - **out = **in - } - if in.NetworkID != nil { - in, out := &in.NetworkID, &out.NetworkID - *out = new(string) - **out = **in - } - if in.SecurityGroupIds != nil { - in, out := &in.SecurityGroupIds, &out.SecurityGroupIds - *out = make([]*string, len(*in)) - for i := range *in { - if (*in)[i] != nil { - in, out := &(*in)[i], &(*out)[i] - *out = new(string) - **out = **in - } - } - } - if in.ServiceAccountID != nil { - in, out := &in.ServiceAccountID, &out.ServiceAccountID - *out = new(string) - **out = **in - } - if in.Status != nil { - in, out := &in.Status, &out.Status + if in.Version != nil { + in, out := &in.Version, &out.Version *out = new(string) **out = **in } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new OpensearchClusterObservation. -func (in *OpensearchClusterObservation) DeepCopy() *OpensearchClusterObservation { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PostgresqlClusterConfigInitParameters. +func (in *PostgresqlClusterConfigInitParameters) DeepCopy() *PostgresqlClusterConfigInitParameters { if in == nil { return nil } - out := new(OpensearchClusterObservation) + out := new(PostgresqlClusterConfigInitParameters) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *OpensearchClusterParameters) DeepCopyInto(out *OpensearchClusterParameters) { +func (in *PostgresqlClusterConfigObservation) DeepCopyInto(out *PostgresqlClusterConfigObservation) { *out = *in - if in.Config != nil { - in, out := &in.Config, &out.Config - *out = make([]OpensearchClusterConfigParameters, len(*in)) + if in.Access != nil { + in, out := &in.Access, &out.Access + *out = make([]PostgresqlClusterConfigAccessObservation, len(*in)) for i := range *in { (*in)[i].DeepCopyInto(&(*out)[i]) } } - if in.DeletionProtection != nil { - in, out := &in.DeletionProtection, &out.DeletionProtection + if in.Autofailover != nil { + in, out := &in.Autofailover, &out.Autofailover *out = new(bool) **out = **in } - if in.Description != nil { - in, out := &in.Description, &out.Description - *out = new(string) + if in.BackupRetainPeriodDays != nil { + in, out := &in.BackupRetainPeriodDays, &out.BackupRetainPeriodDays + *out = new(float64) **out = **in } - if in.Environment != nil { - in, out := &in.Environment, &out.Environment - *out = new(string) - **out = **in + if in.BackupWindowStart != nil { + in, out := &in.BackupWindowStart, &out.BackupWindowStart + *out = make([]ConfigBackupWindowStartObservation, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } } - if in.FolderID != nil { - in, out := &in.FolderID, &out.FolderID - *out = new(string) - **out = **in + if in.DiskSizeAutoscaling != nil { + in, out := &in.DiskSizeAutoscaling, &out.DiskSizeAutoscaling + *out = make([]ConfigDiskSizeAutoscalingObservation, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } } - if in.FolderIDRef != nil { - in, out := &in.FolderIDRef, &out.FolderIDRef - *out = new(v1.Reference) - (*in).DeepCopyInto(*out) + if in.PerformanceDiagnostics != nil { + in, out := &in.PerformanceDiagnostics, &out.PerformanceDiagnostics + *out = make([]ConfigPerformanceDiagnosticsObservation, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } } - if in.FolderIDSelector != nil { - in, out := &in.FolderIDSelector, &out.FolderIDSelector - *out = new(v1.Selector) - (*in).DeepCopyInto(*out) + if in.PoolerConfig != nil { + in, out := &in.PoolerConfig, &out.PoolerConfig + *out = make([]ConfigPoolerConfigObservation, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } } - if in.Labels != nil { - in, out := &in.Labels, &out.Labels + if in.PostgresqlConfig != nil { + in, out := &in.PostgresqlConfig, &out.PostgresqlConfig *out = make(map[string]*string, len(*in)) for key, val := range *in { var outVal *string @@ -16243,244 +17437,325 @@ func (in *OpensearchClusterParameters) DeepCopyInto(out *OpensearchClusterParame (*out)[key] = outVal } } - if in.MaintenanceWindow != nil { - in, out := &in.MaintenanceWindow, &out.MaintenanceWindow - *out = make([]OpensearchClusterMaintenanceWindowParameters, len(*in)) + if in.Resources != nil { + in, out := &in.Resources, &out.Resources + *out = make([]ConfigResourcesObservation, len(*in)) for i := range *in { (*in)[i].DeepCopyInto(&(*out)[i]) } } - if in.Name != nil { - in, out := &in.Name, &out.Name + if in.Version != nil { + in, out := &in.Version, &out.Version *out = new(string) **out = **in } - if in.NetworkID != nil { - in, out := &in.NetworkID, &out.NetworkID - *out = new(string) - **out = **in +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PostgresqlClusterConfigObservation. +func (in *PostgresqlClusterConfigObservation) DeepCopy() *PostgresqlClusterConfigObservation { + if in == nil { + return nil } - if in.NetworkIDRef != nil { - in, out := &in.NetworkIDRef, &out.NetworkIDRef - *out = new(v1.Reference) - (*in).DeepCopyInto(*out) + out := new(PostgresqlClusterConfigObservation) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *PostgresqlClusterConfigParameters) DeepCopyInto(out *PostgresqlClusterConfigParameters) { + *out = *in + if in.Access != nil { + in, out := &in.Access, &out.Access + *out = make([]PostgresqlClusterConfigAccessParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } } - if in.NetworkIDSelector != nil { - in, out := &in.NetworkIDSelector, &out.NetworkIDSelector - *out = new(v1.Selector) - (*in).DeepCopyInto(*out) + if in.Autofailover != nil { + in, out := &in.Autofailover, &out.Autofailover + *out = new(bool) + **out = **in } - if in.SecurityGroupIds != nil { - in, out := &in.SecurityGroupIds, &out.SecurityGroupIds - *out = make([]*string, len(*in)) + if in.BackupRetainPeriodDays != nil { + in, out := &in.BackupRetainPeriodDays, &out.BackupRetainPeriodDays + *out = new(float64) + **out = **in + } + if in.BackupWindowStart != nil { + in, out := &in.BackupWindowStart, &out.BackupWindowStart + *out = make([]ConfigBackupWindowStartParameters, len(*in)) for i := range *in { - if (*in)[i] != nil { - in, out := &(*in)[i], &(*out)[i] + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.DiskSizeAutoscaling != nil { + in, out := &in.DiskSizeAutoscaling, &out.DiskSizeAutoscaling + *out = make([]ConfigDiskSizeAutoscalingParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.PerformanceDiagnostics != nil { + in, out := &in.PerformanceDiagnostics, &out.PerformanceDiagnostics + *out = make([]ConfigPerformanceDiagnosticsParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.PoolerConfig != nil { + in, out := &in.PoolerConfig, &out.PoolerConfig + *out = make([]ConfigPoolerConfigParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.PostgresqlConfig != nil { + in, out := &in.PostgresqlConfig, &out.PostgresqlConfig + *out = make(map[string]*string, len(*in)) + for key, val := range *in { + var outVal *string + if val == nil { + (*out)[key] = nil + } else { + inVal := (*in)[key] + in, out := &inVal, &outVal *out = new(string) **out = **in } + (*out)[key] = outVal } } - if in.SecurityGroupIdsRefs != nil { - in, out := &in.SecurityGroupIdsRefs, &out.SecurityGroupIdsRefs - *out = make([]v1.Reference, len(*in)) + if in.Resources != nil { + in, out := &in.Resources, &out.Resources + *out = make([]ConfigResourcesParameters, len(*in)) for i := range *in { (*in)[i].DeepCopyInto(&(*out)[i]) } } - if in.SecurityGroupIdsSelector != nil { - in, out := &in.SecurityGroupIdsSelector, &out.SecurityGroupIdsSelector - *out = new(v1.Selector) - (*in).DeepCopyInto(*out) - } - if in.ServiceAccountID != nil { - in, out := &in.ServiceAccountID, &out.ServiceAccountID + if in.Version != nil { + in, out := &in.Version, &out.Version *out = new(string) **out = **in } - if in.ServiceAccountIDRef != nil { - in, out := &in.ServiceAccountIDRef, &out.ServiceAccountIDRef - *out = new(v1.Reference) - (*in).DeepCopyInto(*out) - } - if in.ServiceAccountIDSelector != nil { - in, out := &in.ServiceAccountIDSelector, &out.ServiceAccountIDSelector - *out = new(v1.Selector) - (*in).DeepCopyInto(*out) - } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new OpensearchClusterParameters. -func (in *OpensearchClusterParameters) DeepCopy() *OpensearchClusterParameters { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PostgresqlClusterConfigParameters. +func (in *PostgresqlClusterConfigParameters) DeepCopy() *PostgresqlClusterConfigParameters { if in == nil { return nil } - out := new(OpensearchClusterParameters) + out := new(PostgresqlClusterConfigParameters) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *OpensearchClusterSpec) DeepCopyInto(out *OpensearchClusterSpec) { +func (in *PostgresqlClusterDatabaseInitParameters) DeepCopyInto(out *PostgresqlClusterDatabaseInitParameters) { *out = *in - in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) - in.ForProvider.DeepCopyInto(&out.ForProvider) - in.InitProvider.DeepCopyInto(&out.InitProvider) + if in.Extension != nil { + in, out := &in.Extension, &out.Extension + *out = make([]ExtensionInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.LcCollate != nil { + in, out := &in.LcCollate, &out.LcCollate + *out = new(string) + **out = **in + } + if in.LcType != nil { + in, out := &in.LcType, &out.LcType + *out = new(string) + **out = **in + } + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } + if in.Owner != nil { + in, out := &in.Owner, &out.Owner + *out = new(string) + **out = **in + } + if in.TemplateDB != nil { + in, out := &in.TemplateDB, &out.TemplateDB + *out = new(string) + **out = **in + } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new OpensearchClusterSpec. -func (in *OpensearchClusterSpec) DeepCopy() *OpensearchClusterSpec { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PostgresqlClusterDatabaseInitParameters. +func (in *PostgresqlClusterDatabaseInitParameters) DeepCopy() *PostgresqlClusterDatabaseInitParameters { if in == nil { return nil } - out := new(OpensearchClusterSpec) + out := new(PostgresqlClusterDatabaseInitParameters) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *OpensearchClusterStatus) DeepCopyInto(out *OpensearchClusterStatus) { +func (in *PostgresqlClusterDatabaseObservation) DeepCopyInto(out *PostgresqlClusterDatabaseObservation) { *out = *in - in.ResourceStatus.DeepCopyInto(&out.ResourceStatus) - in.AtProvider.DeepCopyInto(&out.AtProvider) + if in.Extension != nil { + in, out := &in.Extension, &out.Extension + *out = make([]ExtensionObservation, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.LcCollate != nil { + in, out := &in.LcCollate, &out.LcCollate + *out = new(string) + **out = **in + } + if in.LcType != nil { + in, out := &in.LcType, &out.LcType + *out = new(string) + **out = **in + } + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } + if in.Owner != nil { + in, out := &in.Owner, &out.Owner + *out = new(string) + **out = **in + } + if in.TemplateDB != nil { + in, out := &in.TemplateDB, &out.TemplateDB + *out = new(string) + **out = **in + } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new OpensearchClusterStatus. -func (in *OpensearchClusterStatus) DeepCopy() *OpensearchClusterStatus { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PostgresqlClusterDatabaseObservation. +func (in *PostgresqlClusterDatabaseObservation) DeepCopy() *PostgresqlClusterDatabaseObservation { if in == nil { return nil } - out := new(OpensearchClusterStatus) + out := new(PostgresqlClusterDatabaseObservation) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *OpensearchInitParameters) DeepCopyInto(out *OpensearchInitParameters) { +func (in *PostgresqlClusterDatabaseParameters) DeepCopyInto(out *PostgresqlClusterDatabaseParameters) { *out = *in - if in.NodeGroups != nil { - in, out := &in.NodeGroups, &out.NodeGroups - *out = make([]OpensearchNodeGroupsInitParameters, len(*in)) + if in.Extension != nil { + in, out := &in.Extension, &out.Extension + *out = make([]ExtensionParameters, len(*in)) for i := range *in { (*in)[i].DeepCopyInto(&(*out)[i]) } } - if in.Plugins != nil { - in, out := &in.Plugins, &out.Plugins - *out = make([]*string, len(*in)) - for i := range *in { - if (*in)[i] != nil { - in, out := &(*in)[i], &(*out)[i] - *out = new(string) - **out = **in - } - } + if in.LcCollate != nil { + in, out := &in.LcCollate, &out.LcCollate + *out = new(string) + **out = **in + } + if in.LcType != nil { + in, out := &in.LcType, &out.LcType + *out = new(string) + **out = **in + } + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } + if in.Owner != nil { + in, out := &in.Owner, &out.Owner + *out = new(string) + **out = **in + } + if in.TemplateDB != nil { + in, out := &in.TemplateDB, &out.TemplateDB + *out = new(string) + **out = **in } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new OpensearchInitParameters. -func (in *OpensearchInitParameters) DeepCopy() *OpensearchInitParameters { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PostgresqlClusterDatabaseParameters. +func (in *PostgresqlClusterDatabaseParameters) DeepCopy() *PostgresqlClusterDatabaseParameters { if in == nil { return nil } - out := new(OpensearchInitParameters) + out := new(PostgresqlClusterDatabaseParameters) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *OpensearchNodeGroupsInitParameters) DeepCopyInto(out *OpensearchNodeGroupsInitParameters) { +func (in *PostgresqlClusterHostInitParameters) DeepCopyInto(out *PostgresqlClusterHostInitParameters) { *out = *in if in.AssignPublicIP != nil { in, out := &in.AssignPublicIP, &out.AssignPublicIP *out = new(bool) **out = **in } - if in.HostsCount != nil { - in, out := &in.HostsCount, &out.HostsCount - *out = new(float64) - **out = **in - } if in.Name != nil { in, out := &in.Name, &out.Name *out = new(string) **out = **in } - if in.Resources != nil { - in, out := &in.Resources, &out.Resources - *out = make([]OpensearchNodeGroupsResourcesInitParameters, len(*in)) - for i := range *in { - (*in)[i].DeepCopyInto(&(*out)[i]) - } + if in.Priority != nil { + in, out := &in.Priority, &out.Priority + *out = new(float64) + **out = **in } - if in.Roles != nil { - in, out := &in.Roles, &out.Roles - *out = make([]*string, len(*in)) - for i := range *in { - if (*in)[i] != nil { - in, out := &(*in)[i], &(*out)[i] - *out = new(string) - **out = **in - } - } + if in.ReplicationSourceName != nil { + in, out := &in.ReplicationSourceName, &out.ReplicationSourceName + *out = new(string) + **out = **in } - if in.SubnetIds != nil { - in, out := &in.SubnetIds, &out.SubnetIds - *out = make([]*string, len(*in)) - for i := range *in { - if (*in)[i] != nil { - in, out := &(*in)[i], &(*out)[i] - *out = new(string) - **out = **in - } - } + if in.SubnetID != nil { + in, out := &in.SubnetID, &out.SubnetID + *out = new(string) + **out = **in } - if in.SubnetIdsRefs != nil { - in, out := &in.SubnetIdsRefs, &out.SubnetIdsRefs - *out = make([]v1.Reference, len(*in)) - for i := range *in { - (*in)[i].DeepCopyInto(&(*out)[i]) - } + if in.SubnetIDRef != nil { + in, out := &in.SubnetIDRef, &out.SubnetIDRef + *out = new(v1.Reference) + (*in).DeepCopyInto(*out) } - if in.SubnetIdsSelector != nil { - in, out := &in.SubnetIdsSelector, &out.SubnetIdsSelector + if in.SubnetIDSelector != nil { + in, out := &in.SubnetIDSelector, &out.SubnetIDSelector *out = new(v1.Selector) (*in).DeepCopyInto(*out) } - if in.ZoneIds != nil { - in, out := &in.ZoneIds, &out.ZoneIds - *out = make([]*string, len(*in)) - for i := range *in { - if (*in)[i] != nil { - in, out := &(*in)[i], &(*out)[i] - *out = new(string) - **out = **in - } - } + if in.Zone != nil { + in, out := &in.Zone, &out.Zone + *out = new(string) + **out = **in } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new OpensearchNodeGroupsInitParameters. -func (in *OpensearchNodeGroupsInitParameters) DeepCopy() *OpensearchNodeGroupsInitParameters { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PostgresqlClusterHostInitParameters. +func (in *PostgresqlClusterHostInitParameters) DeepCopy() *PostgresqlClusterHostInitParameters { if in == nil { return nil } - out := new(OpensearchNodeGroupsInitParameters) + out := new(PostgresqlClusterHostInitParameters) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *OpensearchNodeGroupsObservation) DeepCopyInto(out *OpensearchNodeGroupsObservation) { +func (in *PostgresqlClusterHostObservation) DeepCopyInto(out *PostgresqlClusterHostObservation) { *out = *in if in.AssignPublicIP != nil { in, out := &in.AssignPublicIP, &out.AssignPublicIP *out = new(bool) **out = **in } - if in.HostsCount != nil { - in, out := &in.HostsCount, &out.HostsCount - *out = new(float64) + if in.Fqdn != nil { + in, out := &in.Fqdn, &out.Fqdn + *out = new(string) **out = **in } if in.Name != nil { @@ -16488,275 +17763,225 @@ func (in *OpensearchNodeGroupsObservation) DeepCopyInto(out *OpensearchNodeGroup *out = new(string) **out = **in } - if in.Resources != nil { - in, out := &in.Resources, &out.Resources - *out = make([]OpensearchNodeGroupsResourcesObservation, len(*in)) - for i := range *in { - (*in)[i].DeepCopyInto(&(*out)[i]) - } - } - if in.Roles != nil { - in, out := &in.Roles, &out.Roles - *out = make([]*string, len(*in)) - for i := range *in { - if (*in)[i] != nil { - in, out := &(*in)[i], &(*out)[i] - *out = new(string) - **out = **in - } - } - } - if in.SubnetIds != nil { - in, out := &in.SubnetIds, &out.SubnetIds - *out = make([]*string, len(*in)) - for i := range *in { - if (*in)[i] != nil { - in, out := &(*in)[i], &(*out)[i] - *out = new(string) - **out = **in - } - } - } - if in.ZoneIds != nil { - in, out := &in.ZoneIds, &out.ZoneIds - *out = make([]*string, len(*in)) - for i := range *in { - if (*in)[i] != nil { - in, out := &(*in)[i], &(*out)[i] - *out = new(string) - **out = **in - } - } - } -} - -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new OpensearchNodeGroupsObservation. -func (in *OpensearchNodeGroupsObservation) DeepCopy() *OpensearchNodeGroupsObservation { - if in == nil { - return nil - } - out := new(OpensearchNodeGroupsObservation) - in.DeepCopyInto(out) - return out -} - -// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *OpensearchNodeGroupsParameters) DeepCopyInto(out *OpensearchNodeGroupsParameters) { - *out = *in - if in.AssignPublicIP != nil { - in, out := &in.AssignPublicIP, &out.AssignPublicIP - *out = new(bool) - **out = **in - } - if in.HostsCount != nil { - in, out := &in.HostsCount, &out.HostsCount + if in.Priority != nil { + in, out := &in.Priority, &out.Priority *out = new(float64) **out = **in } - if in.Name != nil { - in, out := &in.Name, &out.Name + if in.ReplicationSource != nil { + in, out := &in.ReplicationSource, &out.ReplicationSource *out = new(string) **out = **in } - if in.Resources != nil { - in, out := &in.Resources, &out.Resources - *out = make([]OpensearchNodeGroupsResourcesParameters, len(*in)) - for i := range *in { - (*in)[i].DeepCopyInto(&(*out)[i]) - } - } - if in.Roles != nil { - in, out := &in.Roles, &out.Roles - *out = make([]*string, len(*in)) - for i := range *in { - if (*in)[i] != nil { - in, out := &(*in)[i], &(*out)[i] - *out = new(string) - **out = **in - } - } - } - if in.SubnetIds != nil { - in, out := &in.SubnetIds, &out.SubnetIds - *out = make([]*string, len(*in)) - for i := range *in { - if (*in)[i] != nil { - in, out := &(*in)[i], &(*out)[i] - *out = new(string) - **out = **in - } - } - } - if in.SubnetIdsRefs != nil { - in, out := &in.SubnetIdsRefs, &out.SubnetIdsRefs - *out = make([]v1.Reference, len(*in)) - for i := range *in { - (*in)[i].DeepCopyInto(&(*out)[i]) - } - } - if in.SubnetIdsSelector != nil { - in, out := &in.SubnetIdsSelector, &out.SubnetIdsSelector - *out = new(v1.Selector) - (*in).DeepCopyInto(*out) - } - if in.ZoneIds != nil { - in, out := &in.ZoneIds, &out.ZoneIds - *out = make([]*string, len(*in)) - for i := range *in { - if (*in)[i] != nil { - in, out := &(*in)[i], &(*out)[i] - *out = new(string) - **out = **in - } - } - } -} - -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new OpensearchNodeGroupsParameters. -func (in *OpensearchNodeGroupsParameters) DeepCopy() *OpensearchNodeGroupsParameters { - if in == nil { - return nil + if in.ReplicationSourceName != nil { + in, out := &in.ReplicationSourceName, &out.ReplicationSourceName + *out = new(string) + **out = **in } - out := new(OpensearchNodeGroupsParameters) - in.DeepCopyInto(out) - return out -} - -// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *OpensearchNodeGroupsResourcesInitParameters) DeepCopyInto(out *OpensearchNodeGroupsResourcesInitParameters) { - *out = *in - if in.DiskSize != nil { - in, out := &in.DiskSize, &out.DiskSize - *out = new(float64) + if in.Role != nil { + in, out := &in.Role, &out.Role + *out = new(string) **out = **in } - if in.DiskTypeID != nil { - in, out := &in.DiskTypeID, &out.DiskTypeID + if in.SubnetID != nil { + in, out := &in.SubnetID, &out.SubnetID *out = new(string) **out = **in } - if in.ResourcePresetID != nil { - in, out := &in.ResourcePresetID, &out.ResourcePresetID + if in.Zone != nil { + in, out := &in.Zone, &out.Zone *out = new(string) **out = **in } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new OpensearchNodeGroupsResourcesInitParameters. -func (in *OpensearchNodeGroupsResourcesInitParameters) DeepCopy() *OpensearchNodeGroupsResourcesInitParameters { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PostgresqlClusterHostObservation. +func (in *PostgresqlClusterHostObservation) DeepCopy() *PostgresqlClusterHostObservation { if in == nil { return nil } - out := new(OpensearchNodeGroupsResourcesInitParameters) + out := new(PostgresqlClusterHostObservation) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *OpensearchNodeGroupsResourcesObservation) DeepCopyInto(out *OpensearchNodeGroupsResourcesObservation) { +func (in *PostgresqlClusterHostParameters) DeepCopyInto(out *PostgresqlClusterHostParameters) { *out = *in - if in.DiskSize != nil { - in, out := &in.DiskSize, &out.DiskSize - *out = new(float64) + if in.AssignPublicIP != nil { + in, out := &in.AssignPublicIP, &out.AssignPublicIP + *out = new(bool) **out = **in } - if in.DiskTypeID != nil { - in, out := &in.DiskTypeID, &out.DiskTypeID + if in.Name != nil { + in, out := &in.Name, &out.Name *out = new(string) **out = **in } - if in.ResourcePresetID != nil { - in, out := &in.ResourcePresetID, &out.ResourcePresetID - *out = new(string) + if in.Priority != nil { + in, out := &in.Priority, &out.Priority + *out = new(float64) **out = **in } -} - -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new OpensearchNodeGroupsResourcesObservation. -func (in *OpensearchNodeGroupsResourcesObservation) DeepCopy() *OpensearchNodeGroupsResourcesObservation { - if in == nil { - return nil - } - out := new(OpensearchNodeGroupsResourcesObservation) - in.DeepCopyInto(out) - return out -} - -// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *OpensearchNodeGroupsResourcesParameters) DeepCopyInto(out *OpensearchNodeGroupsResourcesParameters) { - *out = *in - if in.DiskSize != nil { - in, out := &in.DiskSize, &out.DiskSize - *out = new(float64) + if in.ReplicationSourceName != nil { + in, out := &in.ReplicationSourceName, &out.ReplicationSourceName + *out = new(string) **out = **in } - if in.DiskTypeID != nil { - in, out := &in.DiskTypeID, &out.DiskTypeID + if in.SubnetID != nil { + in, out := &in.SubnetID, &out.SubnetID *out = new(string) **out = **in } - if in.ResourcePresetID != nil { - in, out := &in.ResourcePresetID, &out.ResourcePresetID + if in.SubnetIDRef != nil { + in, out := &in.SubnetIDRef, &out.SubnetIDRef + *out = new(v1.Reference) + (*in).DeepCopyInto(*out) + } + if in.SubnetIDSelector != nil { + in, out := &in.SubnetIDSelector, &out.SubnetIDSelector + *out = new(v1.Selector) + (*in).DeepCopyInto(*out) + } + if in.Zone != nil { + in, out := &in.Zone, &out.Zone *out = new(string) **out = **in } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new OpensearchNodeGroupsResourcesParameters. -func (in *OpensearchNodeGroupsResourcesParameters) DeepCopy() *OpensearchNodeGroupsResourcesParameters { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PostgresqlClusterHostParameters. +func (in *PostgresqlClusterHostParameters) DeepCopy() *PostgresqlClusterHostParameters { if in == nil { return nil } - out := new(OpensearchNodeGroupsResourcesParameters) + out := new(PostgresqlClusterHostParameters) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *OpensearchObservation) DeepCopyInto(out *OpensearchObservation) { +func (in *PostgresqlClusterInitParameters) DeepCopyInto(out *PostgresqlClusterInitParameters) { *out = *in - if in.NodeGroups != nil { - in, out := &in.NodeGroups, &out.NodeGroups - *out = make([]OpensearchNodeGroupsObservation, len(*in)) + if in.Config != nil { + in, out := &in.Config, &out.Config + *out = make([]PostgresqlClusterConfigInitParameters, len(*in)) for i := range *in { (*in)[i].DeepCopyInto(&(*out)[i]) } } - if in.Plugins != nil { - in, out := &in.Plugins, &out.Plugins - *out = make([]*string, len(*in)) + if in.Database != nil { + in, out := &in.Database, &out.Database + *out = make([]PostgresqlClusterDatabaseInitParameters, len(*in)) for i := range *in { - if (*in)[i] != nil { - in, out := &(*in)[i], &(*out)[i] - *out = new(string) - **out = **in - } + (*in)[i].DeepCopyInto(&(*out)[i]) } } -} - -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new OpensearchObservation. -func (in *OpensearchObservation) DeepCopy() *OpensearchObservation { - if in == nil { - return nil + if in.DeletionProtection != nil { + in, out := &in.DeletionProtection, &out.DeletionProtection + *out = new(bool) + **out = **in } - out := new(OpensearchObservation) - in.DeepCopyInto(out) - return out -} - -// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *OpensearchParameters) DeepCopyInto(out *OpensearchParameters) { - *out = *in - if in.NodeGroups != nil { - in, out := &in.NodeGroups, &out.NodeGroups - *out = make([]OpensearchNodeGroupsParameters, len(*in)) + if in.Description != nil { + in, out := &in.Description, &out.Description + *out = new(string) + **out = **in + } + if in.Environment != nil { + in, out := &in.Environment, &out.Environment + *out = new(string) + **out = **in + } + if in.FolderID != nil { + in, out := &in.FolderID, &out.FolderID + *out = new(string) + **out = **in + } + if in.FolderIDRef != nil { + in, out := &in.FolderIDRef, &out.FolderIDRef + *out = new(v1.Reference) + (*in).DeepCopyInto(*out) + } + if in.FolderIDSelector != nil { + in, out := &in.FolderIDSelector, &out.FolderIDSelector + *out = new(v1.Selector) + (*in).DeepCopyInto(*out) + } + if in.Host != nil { + in, out := &in.Host, &out.Host + *out = make([]PostgresqlClusterHostInitParameters, len(*in)) for i := range *in { (*in)[i].DeepCopyInto(&(*out)[i]) } } - if in.Plugins != nil { - in, out := &in.Plugins, &out.Plugins + if in.HostGroupIds != nil { + in, out := &in.HostGroupIds, &out.HostGroupIds + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.HostMasterName != nil { + in, out := &in.HostMasterName, &out.HostMasterName + *out = new(string) + **out = **in + } + if in.Labels != nil { + in, out := &in.Labels, &out.Labels + *out = make(map[string]*string, len(*in)) + for key, val := range *in { + var outVal *string + if val == nil { + (*out)[key] = nil + } else { + inVal := (*in)[key] + in, out := &inVal, &outVal + *out = new(string) + **out = **in + } + (*out)[key] = outVal + } + } + if in.MaintenanceWindow != nil { + in, out := &in.MaintenanceWindow, &out.MaintenanceWindow + *out = make([]PostgresqlClusterMaintenanceWindowInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } + if in.NetworkID != nil { + in, out := &in.NetworkID, &out.NetworkID + *out = new(string) + **out = **in + } + if in.NetworkIDRef != nil { + in, out := &in.NetworkIDRef, &out.NetworkIDRef + *out = new(v1.Reference) + (*in).DeepCopyInto(*out) + } + if in.NetworkIDSelector != nil { + in, out := &in.NetworkIDSelector, &out.NetworkIDSelector + *out = new(v1.Selector) + (*in).DeepCopyInto(*out) + } + if in.Restore != nil { + in, out := &in.Restore, &out.Restore + *out = make([]PostgresqlClusterRestoreInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.SecurityGroupIds != nil { + in, out := &in.SecurityGroupIds, &out.SecurityGroupIds *out = make([]*string, len(*in)) for i := range *in { if (*in)[i] != nil { @@ -16766,1408 +17991,177 @@ func (in *OpensearchParameters) DeepCopyInto(out *OpensearchParameters) { } } } + if in.SecurityGroupIdsRefs != nil { + in, out := &in.SecurityGroupIdsRefs, &out.SecurityGroupIdsRefs + *out = make([]v1.Reference, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.SecurityGroupIdsSelector != nil { + in, out := &in.SecurityGroupIdsSelector, &out.SecurityGroupIdsSelector + *out = new(v1.Selector) + (*in).DeepCopyInto(*out) + } + if in.User != nil { + in, out := &in.User, &out.User + *out = make([]PostgresqlClusterUserInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new OpensearchParameters. -func (in *OpensearchParameters) DeepCopy() *OpensearchParameters { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PostgresqlClusterInitParameters. +func (in *PostgresqlClusterInitParameters) DeepCopy() *PostgresqlClusterInitParameters { if in == nil { return nil } - out := new(OpensearchParameters) + out := new(PostgresqlClusterInitParameters) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *OperationProfilingInitParameters) DeepCopyInto(out *OperationProfilingInitParameters) { +func (in *PostgresqlClusterList) DeepCopyInto(out *PostgresqlClusterList) { *out = *in - if in.Mode != nil { - in, out := &in.Mode, &out.Mode - *out = new(string) - **out = **in - } - if in.SlowOpThreshold != nil { - in, out := &in.SlowOpThreshold, &out.SlowOpThreshold - *out = new(float64) - **out = **in + out.TypeMeta = in.TypeMeta + in.ListMeta.DeepCopyInto(&out.ListMeta) + if in.Items != nil { + in, out := &in.Items, &out.Items + *out = make([]PostgresqlCluster, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new OperationProfilingInitParameters. -func (in *OperationProfilingInitParameters) DeepCopy() *OperationProfilingInitParameters { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PostgresqlClusterList. +func (in *PostgresqlClusterList) DeepCopy() *PostgresqlClusterList { if in == nil { return nil } - out := new(OperationProfilingInitParameters) + out := new(PostgresqlClusterList) in.DeepCopyInto(out) return out } +// DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object. +func (in *PostgresqlClusterList) DeepCopyObject() runtime.Object { + if c := in.DeepCopy(); c != nil { + return c + } + return nil +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *OperationProfilingObservation) DeepCopyInto(out *OperationProfilingObservation) { +func (in *PostgresqlClusterMaintenanceWindowInitParameters) DeepCopyInto(out *PostgresqlClusterMaintenanceWindowInitParameters) { *out = *in - if in.Mode != nil { - in, out := &in.Mode, &out.Mode + if in.Day != nil { + in, out := &in.Day, &out.Day *out = new(string) **out = **in } - if in.SlowOpThreshold != nil { - in, out := &in.SlowOpThreshold, &out.SlowOpThreshold + if in.Hour != nil { + in, out := &in.Hour, &out.Hour *out = new(float64) **out = **in } + if in.Type != nil { + in, out := &in.Type, &out.Type + *out = new(string) + **out = **in + } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new OperationProfilingObservation. -func (in *OperationProfilingObservation) DeepCopy() *OperationProfilingObservation { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PostgresqlClusterMaintenanceWindowInitParameters. +func (in *PostgresqlClusterMaintenanceWindowInitParameters) DeepCopy() *PostgresqlClusterMaintenanceWindowInitParameters { if in == nil { return nil } - out := new(OperationProfilingObservation) + out := new(PostgresqlClusterMaintenanceWindowInitParameters) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *OperationProfilingParameters) DeepCopyInto(out *OperationProfilingParameters) { +func (in *PostgresqlClusterMaintenanceWindowObservation) DeepCopyInto(out *PostgresqlClusterMaintenanceWindowObservation) { *out = *in - if in.Mode != nil { - in, out := &in.Mode, &out.Mode + if in.Day != nil { + in, out := &in.Day, &out.Day *out = new(string) **out = **in } - if in.SlowOpThreshold != nil { - in, out := &in.SlowOpThreshold, &out.SlowOpThreshold + if in.Hour != nil { + in, out := &in.Hour, &out.Hour *out = new(float64) **out = **in } + if in.Type != nil { + in, out := &in.Type, &out.Type + *out = new(string) + **out = **in + } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new OperationProfilingParameters. -func (in *OperationProfilingParameters) DeepCopy() *OperationProfilingParameters { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PostgresqlClusterMaintenanceWindowObservation. +func (in *PostgresqlClusterMaintenanceWindowObservation) DeepCopy() *PostgresqlClusterMaintenanceWindowObservation { if in == nil { return nil } - out := new(OperationProfilingParameters) + out := new(PostgresqlClusterMaintenanceWindowObservation) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *PatternInitParameters) DeepCopyInto(out *PatternInitParameters) { +func (in *PostgresqlClusterMaintenanceWindowParameters) DeepCopyInto(out *PostgresqlClusterMaintenanceWindowParameters) { *out = *in - if in.Function != nil { - in, out := &in.Function, &out.Function + if in.Day != nil { + in, out := &in.Day, &out.Day *out = new(string) **out = **in } - if in.Regexp != nil { - in, out := &in.Regexp, &out.Regexp - *out = new(string) + if in.Hour != nil { + in, out := &in.Hour, &out.Hour + *out = new(float64) **out = **in } - if in.Retention != nil { - in, out := &in.Retention, &out.Retention - *out = make([]RetentionInitParameters, len(*in)) - for i := range *in { - (*in)[i].DeepCopyInto(&(*out)[i]) - } + if in.Type != nil { + in, out := &in.Type, &out.Type + *out = new(string) + **out = **in } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PatternInitParameters. -func (in *PatternInitParameters) DeepCopy() *PatternInitParameters { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PostgresqlClusterMaintenanceWindowParameters. +func (in *PostgresqlClusterMaintenanceWindowParameters) DeepCopy() *PostgresqlClusterMaintenanceWindowParameters { if in == nil { return nil } - out := new(PatternInitParameters) + out := new(PostgresqlClusterMaintenanceWindowParameters) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *PatternObservation) DeepCopyInto(out *PatternObservation) { +func (in *PostgresqlClusterObservation) DeepCopyInto(out *PostgresqlClusterObservation) { *out = *in - if in.Function != nil { - in, out := &in.Function, &out.Function - *out = new(string) - **out = **in + if in.Config != nil { + in, out := &in.Config, &out.Config + *out = make([]PostgresqlClusterConfigObservation, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } } - if in.Regexp != nil { - in, out := &in.Regexp, &out.Regexp + if in.CreatedAt != nil { + in, out := &in.CreatedAt, &out.CreatedAt *out = new(string) **out = **in } - if in.Retention != nil { - in, out := &in.Retention, &out.Retention - *out = make([]RetentionObservation, len(*in)) - for i := range *in { - (*in)[i].DeepCopyInto(&(*out)[i]) - } - } -} - -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PatternObservation. -func (in *PatternObservation) DeepCopy() *PatternObservation { - if in == nil { - return nil - } - out := new(PatternObservation) - in.DeepCopyInto(out) - return out -} - -// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *PatternParameters) DeepCopyInto(out *PatternParameters) { - *out = *in - if in.Function != nil { - in, out := &in.Function, &out.Function - *out = new(string) - **out = **in - } - if in.Regexp != nil { - in, out := &in.Regexp, &out.Regexp - *out = new(string) - **out = **in - } - if in.Retention != nil { - in, out := &in.Retention, &out.Retention - *out = make([]RetentionParameters, len(*in)) - for i := range *in { - (*in)[i].DeepCopyInto(&(*out)[i]) - } - } -} - -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PatternParameters. -func (in *PatternParameters) DeepCopy() *PatternParameters { - if in == nil { - return nil - } - out := new(PatternParameters) - in.DeepCopyInto(out) - return out -} - -// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *PerformanceDiagnosticsInitParameters) DeepCopyInto(out *PerformanceDiagnosticsInitParameters) { - *out = *in - if in.Enabled != nil { - in, out := &in.Enabled, &out.Enabled - *out = new(bool) - **out = **in - } -} - -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PerformanceDiagnosticsInitParameters. -func (in *PerformanceDiagnosticsInitParameters) DeepCopy() *PerformanceDiagnosticsInitParameters { - if in == nil { - return nil - } - out := new(PerformanceDiagnosticsInitParameters) - in.DeepCopyInto(out) - return out -} - -// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *PerformanceDiagnosticsObservation) DeepCopyInto(out *PerformanceDiagnosticsObservation) { - *out = *in - if in.Enabled != nil { - in, out := &in.Enabled, &out.Enabled - *out = new(bool) - **out = **in - } -} - -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PerformanceDiagnosticsObservation. -func (in *PerformanceDiagnosticsObservation) DeepCopy() *PerformanceDiagnosticsObservation { - if in == nil { - return nil - } - out := new(PerformanceDiagnosticsObservation) - in.DeepCopyInto(out) - return out -} - -// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *PerformanceDiagnosticsParameters) DeepCopyInto(out *PerformanceDiagnosticsParameters) { - *out = *in - if in.Enabled != nil { - in, out := &in.Enabled, &out.Enabled - *out = new(bool) - **out = **in - } -} - -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PerformanceDiagnosticsParameters. -func (in *PerformanceDiagnosticsParameters) DeepCopy() *PerformanceDiagnosticsParameters { - if in == nil { - return nil - } - out := new(PerformanceDiagnosticsParameters) - in.DeepCopyInto(out) - return out -} - -// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *PermissionInitParameters) DeepCopyInto(out *PermissionInitParameters) { - *out = *in - if in.DatabaseName != nil { - in, out := &in.DatabaseName, &out.DatabaseName - *out = new(string) - **out = **in - } -} - -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PermissionInitParameters. -func (in *PermissionInitParameters) DeepCopy() *PermissionInitParameters { - if in == nil { - return nil - } - out := new(PermissionInitParameters) - in.DeepCopyInto(out) - return out -} - -// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *PermissionObservation) DeepCopyInto(out *PermissionObservation) { - *out = *in - if in.DatabaseName != nil { - in, out := &in.DatabaseName, &out.DatabaseName - *out = new(string) - **out = **in - } -} - -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PermissionObservation. -func (in *PermissionObservation) DeepCopy() *PermissionObservation { - if in == nil { - return nil - } - out := new(PermissionObservation) - in.DeepCopyInto(out) - return out -} - -// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *PermissionParameters) DeepCopyInto(out *PermissionParameters) { - *out = *in - if in.DatabaseName != nil { - in, out := &in.DatabaseName, &out.DatabaseName - *out = new(string) - **out = **in - } -} - -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PermissionParameters. -func (in *PermissionParameters) DeepCopy() *PermissionParameters { - if in == nil { - return nil - } - out := new(PermissionParameters) - in.DeepCopyInto(out) - return out -} - -// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *PoolerConfigInitParameters) DeepCopyInto(out *PoolerConfigInitParameters) { - *out = *in - if in.PoolClientIdleTimeout != nil { - in, out := &in.PoolClientIdleTimeout, &out.PoolClientIdleTimeout - *out = new(float64) - **out = **in - } - if in.PoolSize != nil { - in, out := &in.PoolSize, &out.PoolSize - *out = new(float64) - **out = **in - } - if in.PoolingMode != nil { - in, out := &in.PoolingMode, &out.PoolingMode - *out = new(string) - **out = **in - } -} - -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PoolerConfigInitParameters. -func (in *PoolerConfigInitParameters) DeepCopy() *PoolerConfigInitParameters { - if in == nil { - return nil - } - out := new(PoolerConfigInitParameters) - in.DeepCopyInto(out) - return out -} - -// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *PoolerConfigObservation) DeepCopyInto(out *PoolerConfigObservation) { - *out = *in - if in.PoolClientIdleTimeout != nil { - in, out := &in.PoolClientIdleTimeout, &out.PoolClientIdleTimeout - *out = new(float64) - **out = **in - } - if in.PoolSize != nil { - in, out := &in.PoolSize, &out.PoolSize - *out = new(float64) - **out = **in - } - if in.PoolingMode != nil { - in, out := &in.PoolingMode, &out.PoolingMode - *out = new(string) - **out = **in - } -} - -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PoolerConfigObservation. -func (in *PoolerConfigObservation) DeepCopy() *PoolerConfigObservation { - if in == nil { - return nil - } - out := new(PoolerConfigObservation) - in.DeepCopyInto(out) - return out -} - -// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *PoolerConfigParameters) DeepCopyInto(out *PoolerConfigParameters) { - *out = *in - if in.PoolClientIdleTimeout != nil { - in, out := &in.PoolClientIdleTimeout, &out.PoolClientIdleTimeout - *out = new(float64) - **out = **in - } - if in.PoolSize != nil { - in, out := &in.PoolSize, &out.PoolSize - *out = new(float64) - **out = **in - } - if in.PoolingMode != nil { - in, out := &in.PoolingMode, &out.PoolingMode - *out = new(string) - **out = **in - } -} - -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PoolerConfigParameters. -func (in *PoolerConfigParameters) DeepCopy() *PoolerConfigParameters { - if in == nil { - return nil - } - out := new(PoolerConfigParameters) - in.DeepCopyInto(out) - return out -} - -// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *PostgresqlCluster) DeepCopyInto(out *PostgresqlCluster) { - *out = *in - out.TypeMeta = in.TypeMeta - in.ObjectMeta.DeepCopyInto(&out.ObjectMeta) - in.Spec.DeepCopyInto(&out.Spec) - in.Status.DeepCopyInto(&out.Status) -} - -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PostgresqlCluster. -func (in *PostgresqlCluster) DeepCopy() *PostgresqlCluster { - if in == nil { - return nil - } - out := new(PostgresqlCluster) - in.DeepCopyInto(out) - return out -} - -// DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object. -func (in *PostgresqlCluster) DeepCopyObject() runtime.Object { - if c := in.DeepCopy(); c != nil { - return c - } - return nil -} - -// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *PostgresqlClusterConfigAccessInitParameters) DeepCopyInto(out *PostgresqlClusterConfigAccessInitParameters) { - *out = *in - if in.DataLens != nil { - in, out := &in.DataLens, &out.DataLens - *out = new(bool) - **out = **in - } - if in.DataTransfer != nil { - in, out := &in.DataTransfer, &out.DataTransfer - *out = new(bool) - **out = **in - } - if in.Serverless != nil { - in, out := &in.Serverless, &out.Serverless - *out = new(bool) - **out = **in - } - if in.WebSQL != nil { - in, out := &in.WebSQL, &out.WebSQL - *out = new(bool) - **out = **in - } -} - -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PostgresqlClusterConfigAccessInitParameters. -func (in *PostgresqlClusterConfigAccessInitParameters) DeepCopy() *PostgresqlClusterConfigAccessInitParameters { - if in == nil { - return nil - } - out := new(PostgresqlClusterConfigAccessInitParameters) - in.DeepCopyInto(out) - return out -} - -// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *PostgresqlClusterConfigAccessObservation) DeepCopyInto(out *PostgresqlClusterConfigAccessObservation) { - *out = *in - if in.DataLens != nil { - in, out := &in.DataLens, &out.DataLens - *out = new(bool) - **out = **in - } - if in.DataTransfer != nil { - in, out := &in.DataTransfer, &out.DataTransfer - *out = new(bool) - **out = **in - } - if in.Serverless != nil { - in, out := &in.Serverless, &out.Serverless - *out = new(bool) - **out = **in - } - if in.WebSQL != nil { - in, out := &in.WebSQL, &out.WebSQL - *out = new(bool) - **out = **in - } -} - -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PostgresqlClusterConfigAccessObservation. -func (in *PostgresqlClusterConfigAccessObservation) DeepCopy() *PostgresqlClusterConfigAccessObservation { - if in == nil { - return nil - } - out := new(PostgresqlClusterConfigAccessObservation) - in.DeepCopyInto(out) - return out -} - -// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *PostgresqlClusterConfigAccessParameters) DeepCopyInto(out *PostgresqlClusterConfigAccessParameters) { - *out = *in - if in.DataLens != nil { - in, out := &in.DataLens, &out.DataLens - *out = new(bool) - **out = **in - } - if in.DataTransfer != nil { - in, out := &in.DataTransfer, &out.DataTransfer - *out = new(bool) - **out = **in - } - if in.Serverless != nil { - in, out := &in.Serverless, &out.Serverless - *out = new(bool) - **out = **in - } - if in.WebSQL != nil { - in, out := &in.WebSQL, &out.WebSQL - *out = new(bool) - **out = **in - } -} - -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PostgresqlClusterConfigAccessParameters. -func (in *PostgresqlClusterConfigAccessParameters) DeepCopy() *PostgresqlClusterConfigAccessParameters { - if in == nil { - return nil - } - out := new(PostgresqlClusterConfigAccessParameters) - in.DeepCopyInto(out) - return out -} - -// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *PostgresqlClusterConfigInitParameters) DeepCopyInto(out *PostgresqlClusterConfigInitParameters) { - *out = *in - if in.Access != nil { - in, out := &in.Access, &out.Access - *out = make([]PostgresqlClusterConfigAccessInitParameters, len(*in)) - for i := range *in { - (*in)[i].DeepCopyInto(&(*out)[i]) - } - } - if in.Autofailover != nil { - in, out := &in.Autofailover, &out.Autofailover - *out = new(bool) - **out = **in - } - if in.BackupRetainPeriodDays != nil { - in, out := &in.BackupRetainPeriodDays, &out.BackupRetainPeriodDays - *out = new(float64) - **out = **in - } - if in.BackupWindowStart != nil { - in, out := &in.BackupWindowStart, &out.BackupWindowStart - *out = make([]ConfigBackupWindowStartInitParameters, len(*in)) - for i := range *in { - (*in)[i].DeepCopyInto(&(*out)[i]) - } - } - if in.DiskSizeAutoscaling != nil { - in, out := &in.DiskSizeAutoscaling, &out.DiskSizeAutoscaling - *out = make([]DiskSizeAutoscalingInitParameters, len(*in)) - for i := range *in { - (*in)[i].DeepCopyInto(&(*out)[i]) - } - } - if in.PerformanceDiagnostics != nil { - in, out := &in.PerformanceDiagnostics, &out.PerformanceDiagnostics - *out = make([]ConfigPerformanceDiagnosticsInitParameters, len(*in)) - for i := range *in { - (*in)[i].DeepCopyInto(&(*out)[i]) - } - } - if in.PoolerConfig != nil { - in, out := &in.PoolerConfig, &out.PoolerConfig - *out = make([]ConfigPoolerConfigInitParameters, len(*in)) - for i := range *in { - (*in)[i].DeepCopyInto(&(*out)[i]) - } - } - if in.PostgresqlConfig != nil { - in, out := &in.PostgresqlConfig, &out.PostgresqlConfig - *out = make(map[string]*string, len(*in)) - for key, val := range *in { - var outVal *string - if val == nil { - (*out)[key] = nil - } else { - inVal := (*in)[key] - in, out := &inVal, &outVal - *out = new(string) - **out = **in - } - (*out)[key] = outVal - } - } - if in.Resources != nil { - in, out := &in.Resources, &out.Resources - *out = make([]ConfigResourcesInitParameters, len(*in)) - for i := range *in { - (*in)[i].DeepCopyInto(&(*out)[i]) - } - } - if in.Version != nil { - in, out := &in.Version, &out.Version - *out = new(string) - **out = **in - } -} - -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PostgresqlClusterConfigInitParameters. -func (in *PostgresqlClusterConfigInitParameters) DeepCopy() *PostgresqlClusterConfigInitParameters { - if in == nil { - return nil - } - out := new(PostgresqlClusterConfigInitParameters) - in.DeepCopyInto(out) - return out -} - -// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *PostgresqlClusterConfigObservation) DeepCopyInto(out *PostgresqlClusterConfigObservation) { - *out = *in - if in.Access != nil { - in, out := &in.Access, &out.Access - *out = make([]PostgresqlClusterConfigAccessObservation, len(*in)) - for i := range *in { - (*in)[i].DeepCopyInto(&(*out)[i]) - } - } - if in.Autofailover != nil { - in, out := &in.Autofailover, &out.Autofailover - *out = new(bool) - **out = **in - } - if in.BackupRetainPeriodDays != nil { - in, out := &in.BackupRetainPeriodDays, &out.BackupRetainPeriodDays - *out = new(float64) - **out = **in - } - if in.BackupWindowStart != nil { - in, out := &in.BackupWindowStart, &out.BackupWindowStart - *out = make([]ConfigBackupWindowStartObservation, len(*in)) - for i := range *in { - (*in)[i].DeepCopyInto(&(*out)[i]) - } - } - if in.DiskSizeAutoscaling != nil { - in, out := &in.DiskSizeAutoscaling, &out.DiskSizeAutoscaling - *out = make([]DiskSizeAutoscalingObservation, len(*in)) - for i := range *in { - (*in)[i].DeepCopyInto(&(*out)[i]) - } - } - if in.PerformanceDiagnostics != nil { - in, out := &in.PerformanceDiagnostics, &out.PerformanceDiagnostics - *out = make([]ConfigPerformanceDiagnosticsObservation, len(*in)) - for i := range *in { - (*in)[i].DeepCopyInto(&(*out)[i]) - } - } - if in.PoolerConfig != nil { - in, out := &in.PoolerConfig, &out.PoolerConfig - *out = make([]ConfigPoolerConfigObservation, len(*in)) - for i := range *in { - (*in)[i].DeepCopyInto(&(*out)[i]) - } - } - if in.PostgresqlConfig != nil { - in, out := &in.PostgresqlConfig, &out.PostgresqlConfig - *out = make(map[string]*string, len(*in)) - for key, val := range *in { - var outVal *string - if val == nil { - (*out)[key] = nil - } else { - inVal := (*in)[key] - in, out := &inVal, &outVal - *out = new(string) - **out = **in - } - (*out)[key] = outVal - } - } - if in.Resources != nil { - in, out := &in.Resources, &out.Resources - *out = make([]ConfigResourcesObservation, len(*in)) - for i := range *in { - (*in)[i].DeepCopyInto(&(*out)[i]) - } - } - if in.Version != nil { - in, out := &in.Version, &out.Version - *out = new(string) - **out = **in - } -} - -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PostgresqlClusterConfigObservation. -func (in *PostgresqlClusterConfigObservation) DeepCopy() *PostgresqlClusterConfigObservation { - if in == nil { - return nil - } - out := new(PostgresqlClusterConfigObservation) - in.DeepCopyInto(out) - return out -} - -// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *PostgresqlClusterConfigParameters) DeepCopyInto(out *PostgresqlClusterConfigParameters) { - *out = *in - if in.Access != nil { - in, out := &in.Access, &out.Access - *out = make([]PostgresqlClusterConfigAccessParameters, len(*in)) - for i := range *in { - (*in)[i].DeepCopyInto(&(*out)[i]) - } - } - if in.Autofailover != nil { - in, out := &in.Autofailover, &out.Autofailover - *out = new(bool) - **out = **in - } - if in.BackupRetainPeriodDays != nil { - in, out := &in.BackupRetainPeriodDays, &out.BackupRetainPeriodDays - *out = new(float64) - **out = **in - } - if in.BackupWindowStart != nil { - in, out := &in.BackupWindowStart, &out.BackupWindowStart - *out = make([]ConfigBackupWindowStartParameters, len(*in)) - for i := range *in { - (*in)[i].DeepCopyInto(&(*out)[i]) - } - } - if in.DiskSizeAutoscaling != nil { - in, out := &in.DiskSizeAutoscaling, &out.DiskSizeAutoscaling - *out = make([]DiskSizeAutoscalingParameters, len(*in)) - for i := range *in { - (*in)[i].DeepCopyInto(&(*out)[i]) - } - } - if in.PerformanceDiagnostics != nil { - in, out := &in.PerformanceDiagnostics, &out.PerformanceDiagnostics - *out = make([]ConfigPerformanceDiagnosticsParameters, len(*in)) - for i := range *in { - (*in)[i].DeepCopyInto(&(*out)[i]) - } - } - if in.PoolerConfig != nil { - in, out := &in.PoolerConfig, &out.PoolerConfig - *out = make([]ConfigPoolerConfigParameters, len(*in)) - for i := range *in { - (*in)[i].DeepCopyInto(&(*out)[i]) - } - } - if in.PostgresqlConfig != nil { - in, out := &in.PostgresqlConfig, &out.PostgresqlConfig - *out = make(map[string]*string, len(*in)) - for key, val := range *in { - var outVal *string - if val == nil { - (*out)[key] = nil - } else { - inVal := (*in)[key] - in, out := &inVal, &outVal - *out = new(string) - **out = **in - } - (*out)[key] = outVal - } - } - if in.Resources != nil { - in, out := &in.Resources, &out.Resources - *out = make([]ConfigResourcesParameters, len(*in)) - for i := range *in { - (*in)[i].DeepCopyInto(&(*out)[i]) - } - } - if in.Version != nil { - in, out := &in.Version, &out.Version - *out = new(string) - **out = **in - } -} - -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PostgresqlClusterConfigParameters. -func (in *PostgresqlClusterConfigParameters) DeepCopy() *PostgresqlClusterConfigParameters { - if in == nil { - return nil - } - out := new(PostgresqlClusterConfigParameters) - in.DeepCopyInto(out) - return out -} - -// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *PostgresqlClusterDatabaseInitParameters) DeepCopyInto(out *PostgresqlClusterDatabaseInitParameters) { - *out = *in - if in.Extension != nil { - in, out := &in.Extension, &out.Extension - *out = make([]ExtensionInitParameters, len(*in)) - for i := range *in { - (*in)[i].DeepCopyInto(&(*out)[i]) - } - } - if in.LcCollate != nil { - in, out := &in.LcCollate, &out.LcCollate - *out = new(string) - **out = **in - } - if in.LcType != nil { - in, out := &in.LcType, &out.LcType - *out = new(string) - **out = **in - } - if in.Name != nil { - in, out := &in.Name, &out.Name - *out = new(string) - **out = **in - } - if in.Owner != nil { - in, out := &in.Owner, &out.Owner - *out = new(string) - **out = **in - } - if in.TemplateDB != nil { - in, out := &in.TemplateDB, &out.TemplateDB - *out = new(string) - **out = **in - } -} - -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PostgresqlClusterDatabaseInitParameters. -func (in *PostgresqlClusterDatabaseInitParameters) DeepCopy() *PostgresqlClusterDatabaseInitParameters { - if in == nil { - return nil - } - out := new(PostgresqlClusterDatabaseInitParameters) - in.DeepCopyInto(out) - return out -} - -// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *PostgresqlClusterDatabaseObservation) DeepCopyInto(out *PostgresqlClusterDatabaseObservation) { - *out = *in - if in.Extension != nil { - in, out := &in.Extension, &out.Extension - *out = make([]ExtensionObservation, len(*in)) - for i := range *in { - (*in)[i].DeepCopyInto(&(*out)[i]) - } - } - if in.LcCollate != nil { - in, out := &in.LcCollate, &out.LcCollate - *out = new(string) - **out = **in - } - if in.LcType != nil { - in, out := &in.LcType, &out.LcType - *out = new(string) - **out = **in - } - if in.Name != nil { - in, out := &in.Name, &out.Name - *out = new(string) - **out = **in - } - if in.Owner != nil { - in, out := &in.Owner, &out.Owner - *out = new(string) - **out = **in - } - if in.TemplateDB != nil { - in, out := &in.TemplateDB, &out.TemplateDB - *out = new(string) - **out = **in - } -} - -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PostgresqlClusterDatabaseObservation. -func (in *PostgresqlClusterDatabaseObservation) DeepCopy() *PostgresqlClusterDatabaseObservation { - if in == nil { - return nil - } - out := new(PostgresqlClusterDatabaseObservation) - in.DeepCopyInto(out) - return out -} - -// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *PostgresqlClusterDatabaseParameters) DeepCopyInto(out *PostgresqlClusterDatabaseParameters) { - *out = *in - if in.Extension != nil { - in, out := &in.Extension, &out.Extension - *out = make([]ExtensionParameters, len(*in)) - for i := range *in { - (*in)[i].DeepCopyInto(&(*out)[i]) - } - } - if in.LcCollate != nil { - in, out := &in.LcCollate, &out.LcCollate - *out = new(string) - **out = **in - } - if in.LcType != nil { - in, out := &in.LcType, &out.LcType - *out = new(string) - **out = **in - } - if in.Name != nil { - in, out := &in.Name, &out.Name - *out = new(string) - **out = **in - } - if in.Owner != nil { - in, out := &in.Owner, &out.Owner - *out = new(string) - **out = **in - } - if in.TemplateDB != nil { - in, out := &in.TemplateDB, &out.TemplateDB - *out = new(string) - **out = **in - } -} - -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PostgresqlClusterDatabaseParameters. -func (in *PostgresqlClusterDatabaseParameters) DeepCopy() *PostgresqlClusterDatabaseParameters { - if in == nil { - return nil - } - out := new(PostgresqlClusterDatabaseParameters) - in.DeepCopyInto(out) - return out -} - -// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *PostgresqlClusterHostInitParameters) DeepCopyInto(out *PostgresqlClusterHostInitParameters) { - *out = *in - if in.AssignPublicIP != nil { - in, out := &in.AssignPublicIP, &out.AssignPublicIP - *out = new(bool) - **out = **in - } - if in.Name != nil { - in, out := &in.Name, &out.Name - *out = new(string) - **out = **in - } - if in.Priority != nil { - in, out := &in.Priority, &out.Priority - *out = new(float64) - **out = **in - } - if in.ReplicationSourceName != nil { - in, out := &in.ReplicationSourceName, &out.ReplicationSourceName - *out = new(string) - **out = **in - } - if in.SubnetID != nil { - in, out := &in.SubnetID, &out.SubnetID - *out = new(string) - **out = **in - } - if in.SubnetIDRef != nil { - in, out := &in.SubnetIDRef, &out.SubnetIDRef - *out = new(v1.Reference) - (*in).DeepCopyInto(*out) - } - if in.SubnetIDSelector != nil { - in, out := &in.SubnetIDSelector, &out.SubnetIDSelector - *out = new(v1.Selector) - (*in).DeepCopyInto(*out) - } - if in.Zone != nil { - in, out := &in.Zone, &out.Zone - *out = new(string) - **out = **in - } -} - -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PostgresqlClusterHostInitParameters. -func (in *PostgresqlClusterHostInitParameters) DeepCopy() *PostgresqlClusterHostInitParameters { - if in == nil { - return nil - } - out := new(PostgresqlClusterHostInitParameters) - in.DeepCopyInto(out) - return out -} - -// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *PostgresqlClusterHostObservation) DeepCopyInto(out *PostgresqlClusterHostObservation) { - *out = *in - if in.AssignPublicIP != nil { - in, out := &in.AssignPublicIP, &out.AssignPublicIP - *out = new(bool) - **out = **in - } - if in.Fqdn != nil { - in, out := &in.Fqdn, &out.Fqdn - *out = new(string) - **out = **in - } - if in.Name != nil { - in, out := &in.Name, &out.Name - *out = new(string) - **out = **in - } - if in.Priority != nil { - in, out := &in.Priority, &out.Priority - *out = new(float64) - **out = **in - } - if in.ReplicationSource != nil { - in, out := &in.ReplicationSource, &out.ReplicationSource - *out = new(string) - **out = **in - } - if in.ReplicationSourceName != nil { - in, out := &in.ReplicationSourceName, &out.ReplicationSourceName - *out = new(string) - **out = **in - } - if in.Role != nil { - in, out := &in.Role, &out.Role - *out = new(string) - **out = **in - } - if in.SubnetID != nil { - in, out := &in.SubnetID, &out.SubnetID - *out = new(string) - **out = **in - } - if in.Zone != nil { - in, out := &in.Zone, &out.Zone - *out = new(string) - **out = **in - } -} - -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PostgresqlClusterHostObservation. -func (in *PostgresqlClusterHostObservation) DeepCopy() *PostgresqlClusterHostObservation { - if in == nil { - return nil - } - out := new(PostgresqlClusterHostObservation) - in.DeepCopyInto(out) - return out -} - -// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *PostgresqlClusterHostParameters) DeepCopyInto(out *PostgresqlClusterHostParameters) { - *out = *in - if in.AssignPublicIP != nil { - in, out := &in.AssignPublicIP, &out.AssignPublicIP - *out = new(bool) - **out = **in - } - if in.Name != nil { - in, out := &in.Name, &out.Name - *out = new(string) - **out = **in - } - if in.Priority != nil { - in, out := &in.Priority, &out.Priority - *out = new(float64) - **out = **in - } - if in.ReplicationSourceName != nil { - in, out := &in.ReplicationSourceName, &out.ReplicationSourceName - *out = new(string) - **out = **in - } - if in.SubnetID != nil { - in, out := &in.SubnetID, &out.SubnetID - *out = new(string) - **out = **in - } - if in.SubnetIDRef != nil { - in, out := &in.SubnetIDRef, &out.SubnetIDRef - *out = new(v1.Reference) - (*in).DeepCopyInto(*out) - } - if in.SubnetIDSelector != nil { - in, out := &in.SubnetIDSelector, &out.SubnetIDSelector - *out = new(v1.Selector) - (*in).DeepCopyInto(*out) - } - if in.Zone != nil { - in, out := &in.Zone, &out.Zone - *out = new(string) - **out = **in - } -} - -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PostgresqlClusterHostParameters. -func (in *PostgresqlClusterHostParameters) DeepCopy() *PostgresqlClusterHostParameters { - if in == nil { - return nil - } - out := new(PostgresqlClusterHostParameters) - in.DeepCopyInto(out) - return out -} - -// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *PostgresqlClusterInitParameters) DeepCopyInto(out *PostgresqlClusterInitParameters) { - *out = *in - if in.Config != nil { - in, out := &in.Config, &out.Config - *out = make([]PostgresqlClusterConfigInitParameters, len(*in)) - for i := range *in { - (*in)[i].DeepCopyInto(&(*out)[i]) - } - } - if in.Database != nil { - in, out := &in.Database, &out.Database - *out = make([]PostgresqlClusterDatabaseInitParameters, len(*in)) - for i := range *in { - (*in)[i].DeepCopyInto(&(*out)[i]) - } - } - if in.DeletionProtection != nil { - in, out := &in.DeletionProtection, &out.DeletionProtection - *out = new(bool) - **out = **in - } - if in.Description != nil { - in, out := &in.Description, &out.Description - *out = new(string) - **out = **in - } - if in.Environment != nil { - in, out := &in.Environment, &out.Environment - *out = new(string) - **out = **in - } - if in.FolderID != nil { - in, out := &in.FolderID, &out.FolderID - *out = new(string) - **out = **in - } - if in.FolderIDRef != nil { - in, out := &in.FolderIDRef, &out.FolderIDRef - *out = new(v1.Reference) - (*in).DeepCopyInto(*out) - } - if in.FolderIDSelector != nil { - in, out := &in.FolderIDSelector, &out.FolderIDSelector - *out = new(v1.Selector) - (*in).DeepCopyInto(*out) - } - if in.Host != nil { - in, out := &in.Host, &out.Host - *out = make([]PostgresqlClusterHostInitParameters, len(*in)) - for i := range *in { - (*in)[i].DeepCopyInto(&(*out)[i]) - } - } - if in.HostGroupIds != nil { - in, out := &in.HostGroupIds, &out.HostGroupIds - *out = make([]*string, len(*in)) - for i := range *in { - if (*in)[i] != nil { - in, out := &(*in)[i], &(*out)[i] - *out = new(string) - **out = **in - } - } - } - if in.HostMasterName != nil { - in, out := &in.HostMasterName, &out.HostMasterName - *out = new(string) - **out = **in - } - if in.Labels != nil { - in, out := &in.Labels, &out.Labels - *out = make(map[string]*string, len(*in)) - for key, val := range *in { - var outVal *string - if val == nil { - (*out)[key] = nil - } else { - inVal := (*in)[key] - in, out := &inVal, &outVal - *out = new(string) - **out = **in - } - (*out)[key] = outVal - } - } - if in.MaintenanceWindow != nil { - in, out := &in.MaintenanceWindow, &out.MaintenanceWindow - *out = make([]PostgresqlClusterMaintenanceWindowInitParameters, len(*in)) - for i := range *in { - (*in)[i].DeepCopyInto(&(*out)[i]) - } - } - if in.Name != nil { - in, out := &in.Name, &out.Name - *out = new(string) - **out = **in - } - if in.NetworkID != nil { - in, out := &in.NetworkID, &out.NetworkID - *out = new(string) - **out = **in - } - if in.NetworkIDRef != nil { - in, out := &in.NetworkIDRef, &out.NetworkIDRef - *out = new(v1.Reference) - (*in).DeepCopyInto(*out) - } - if in.NetworkIDSelector != nil { - in, out := &in.NetworkIDSelector, &out.NetworkIDSelector - *out = new(v1.Selector) - (*in).DeepCopyInto(*out) - } - if in.Restore != nil { - in, out := &in.Restore, &out.Restore - *out = make([]PostgresqlClusterRestoreInitParameters, len(*in)) - for i := range *in { - (*in)[i].DeepCopyInto(&(*out)[i]) - } - } - if in.SecurityGroupIds != nil { - in, out := &in.SecurityGroupIds, &out.SecurityGroupIds - *out = make([]*string, len(*in)) - for i := range *in { - if (*in)[i] != nil { - in, out := &(*in)[i], &(*out)[i] - *out = new(string) - **out = **in - } - } - } - if in.SecurityGroupIdsRefs != nil { - in, out := &in.SecurityGroupIdsRefs, &out.SecurityGroupIdsRefs - *out = make([]v1.Reference, len(*in)) - for i := range *in { - (*in)[i].DeepCopyInto(&(*out)[i]) - } - } - if in.SecurityGroupIdsSelector != nil { - in, out := &in.SecurityGroupIdsSelector, &out.SecurityGroupIdsSelector - *out = new(v1.Selector) - (*in).DeepCopyInto(*out) - } - if in.User != nil { - in, out := &in.User, &out.User - *out = make([]PostgresqlClusterUserInitParameters, len(*in)) - for i := range *in { - (*in)[i].DeepCopyInto(&(*out)[i]) - } - } -} - -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PostgresqlClusterInitParameters. -func (in *PostgresqlClusterInitParameters) DeepCopy() *PostgresqlClusterInitParameters { - if in == nil { - return nil - } - out := new(PostgresqlClusterInitParameters) - in.DeepCopyInto(out) - return out -} - -// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *PostgresqlClusterList) DeepCopyInto(out *PostgresqlClusterList) { - *out = *in - out.TypeMeta = in.TypeMeta - in.ListMeta.DeepCopyInto(&out.ListMeta) - if in.Items != nil { - in, out := &in.Items, &out.Items - *out = make([]PostgresqlCluster, len(*in)) - for i := range *in { - (*in)[i].DeepCopyInto(&(*out)[i]) - } - } -} - -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PostgresqlClusterList. -func (in *PostgresqlClusterList) DeepCopy() *PostgresqlClusterList { - if in == nil { - return nil - } - out := new(PostgresqlClusterList) - in.DeepCopyInto(out) - return out -} - -// DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object. -func (in *PostgresqlClusterList) DeepCopyObject() runtime.Object { - if c := in.DeepCopy(); c != nil { - return c - } - return nil -} - -// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *PostgresqlClusterMaintenanceWindowInitParameters) DeepCopyInto(out *PostgresqlClusterMaintenanceWindowInitParameters) { - *out = *in - if in.Day != nil { - in, out := &in.Day, &out.Day - *out = new(string) - **out = **in - } - if in.Hour != nil { - in, out := &in.Hour, &out.Hour - *out = new(float64) - **out = **in - } - if in.Type != nil { - in, out := &in.Type, &out.Type - *out = new(string) - **out = **in - } -} - -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PostgresqlClusterMaintenanceWindowInitParameters. -func (in *PostgresqlClusterMaintenanceWindowInitParameters) DeepCopy() *PostgresqlClusterMaintenanceWindowInitParameters { - if in == nil { - return nil - } - out := new(PostgresqlClusterMaintenanceWindowInitParameters) - in.DeepCopyInto(out) - return out -} - -// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *PostgresqlClusterMaintenanceWindowObservation) DeepCopyInto(out *PostgresqlClusterMaintenanceWindowObservation) { - *out = *in - if in.Day != nil { - in, out := &in.Day, &out.Day - *out = new(string) - **out = **in - } - if in.Hour != nil { - in, out := &in.Hour, &out.Hour - *out = new(float64) - **out = **in - } - if in.Type != nil { - in, out := &in.Type, &out.Type - *out = new(string) - **out = **in - } -} - -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PostgresqlClusterMaintenanceWindowObservation. -func (in *PostgresqlClusterMaintenanceWindowObservation) DeepCopy() *PostgresqlClusterMaintenanceWindowObservation { - if in == nil { - return nil - } - out := new(PostgresqlClusterMaintenanceWindowObservation) - in.DeepCopyInto(out) - return out -} - -// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *PostgresqlClusterMaintenanceWindowParameters) DeepCopyInto(out *PostgresqlClusterMaintenanceWindowParameters) { - *out = *in - if in.Day != nil { - in, out := &in.Day, &out.Day - *out = new(string) - **out = **in - } - if in.Hour != nil { - in, out := &in.Hour, &out.Hour - *out = new(float64) - **out = **in - } - if in.Type != nil { - in, out := &in.Type, &out.Type - *out = new(string) - **out = **in - } -} - -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PostgresqlClusterMaintenanceWindowParameters. -func (in *PostgresqlClusterMaintenanceWindowParameters) DeepCopy() *PostgresqlClusterMaintenanceWindowParameters { - if in == nil { - return nil - } - out := new(PostgresqlClusterMaintenanceWindowParameters) - in.DeepCopyInto(out) - return out -} - -// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *PostgresqlClusterObservation) DeepCopyInto(out *PostgresqlClusterObservation) { - *out = *in - if in.Config != nil { - in, out := &in.Config, &out.Config - *out = make([]PostgresqlClusterConfigObservation, len(*in)) - for i := range *in { - (*in)[i].DeepCopyInto(&(*out)[i]) - } - } - if in.CreatedAt != nil { - in, out := &in.CreatedAt, &out.CreatedAt - *out = new(string) - **out = **in - } - if in.Database != nil { - in, out := &in.Database, &out.Database - *out = make([]PostgresqlClusterDatabaseObservation, len(*in)) + if in.Database != nil { + in, out := &in.Database, &out.Database + *out = make([]PostgresqlClusterDatabaseObservation, len(*in)) for i := range *in { (*in)[i].DeepCopyInto(&(*out)[i]) } @@ -18850,18 +18844,202 @@ func (in *PostgresqlDatabase) DeepCopyInto(out *PostgresqlDatabase) { in.Status.DeepCopyInto(&out.Status) } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PostgresqlDatabase. -func (in *PostgresqlDatabase) DeepCopy() *PostgresqlDatabase { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PostgresqlDatabase. +func (in *PostgresqlDatabase) DeepCopy() *PostgresqlDatabase { + if in == nil { + return nil + } + out := new(PostgresqlDatabase) + in.DeepCopyInto(out) + return out +} + +// DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object. +func (in *PostgresqlDatabase) DeepCopyObject() runtime.Object { + if c := in.DeepCopy(); c != nil { + return c + } + return nil +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *PostgresqlDatabaseExtensionInitParameters) DeepCopyInto(out *PostgresqlDatabaseExtensionInitParameters) { + *out = *in + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } + if in.Version != nil { + in, out := &in.Version, &out.Version + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PostgresqlDatabaseExtensionInitParameters. +func (in *PostgresqlDatabaseExtensionInitParameters) DeepCopy() *PostgresqlDatabaseExtensionInitParameters { + if in == nil { + return nil + } + out := new(PostgresqlDatabaseExtensionInitParameters) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *PostgresqlDatabaseExtensionObservation) DeepCopyInto(out *PostgresqlDatabaseExtensionObservation) { + *out = *in + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } + if in.Version != nil { + in, out := &in.Version, &out.Version + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PostgresqlDatabaseExtensionObservation. +func (in *PostgresqlDatabaseExtensionObservation) DeepCopy() *PostgresqlDatabaseExtensionObservation { + if in == nil { + return nil + } + out := new(PostgresqlDatabaseExtensionObservation) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *PostgresqlDatabaseExtensionParameters) DeepCopyInto(out *PostgresqlDatabaseExtensionParameters) { + *out = *in + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } + if in.Version != nil { + in, out := &in.Version, &out.Version + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PostgresqlDatabaseExtensionParameters. +func (in *PostgresqlDatabaseExtensionParameters) DeepCopy() *PostgresqlDatabaseExtensionParameters { + if in == nil { + return nil + } + out := new(PostgresqlDatabaseExtensionParameters) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *PostgresqlDatabaseInitParameters) DeepCopyInto(out *PostgresqlDatabaseInitParameters) { + *out = *in + if in.ClusterID != nil { + in, out := &in.ClusterID, &out.ClusterID + *out = new(string) + **out = **in + } + if in.ClusterIDRef != nil { + in, out := &in.ClusterIDRef, &out.ClusterIDRef + *out = new(v1.Reference) + (*in).DeepCopyInto(*out) + } + if in.ClusterIDSelector != nil { + in, out := &in.ClusterIDSelector, &out.ClusterIDSelector + *out = new(v1.Selector) + (*in).DeepCopyInto(*out) + } + if in.DeletionProtection != nil { + in, out := &in.DeletionProtection, &out.DeletionProtection + *out = new(string) + **out = **in + } + if in.Extension != nil { + in, out := &in.Extension, &out.Extension + *out = make([]PostgresqlDatabaseExtensionInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.LcCollate != nil { + in, out := &in.LcCollate, &out.LcCollate + *out = new(string) + **out = **in + } + if in.LcType != nil { + in, out := &in.LcType, &out.LcType + *out = new(string) + **out = **in + } + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } + if in.Owner != nil { + in, out := &in.Owner, &out.Owner + *out = new(string) + **out = **in + } + if in.OwnerRef != nil { + in, out := &in.OwnerRef, &out.OwnerRef + *out = new(v1.Reference) + (*in).DeepCopyInto(*out) + } + if in.OwnerSelector != nil { + in, out := &in.OwnerSelector, &out.OwnerSelector + *out = new(v1.Selector) + (*in).DeepCopyInto(*out) + } + if in.TemplateDB != nil { + in, out := &in.TemplateDB, &out.TemplateDB + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PostgresqlDatabaseInitParameters. +func (in *PostgresqlDatabaseInitParameters) DeepCopy() *PostgresqlDatabaseInitParameters { + if in == nil { + return nil + } + out := new(PostgresqlDatabaseInitParameters) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *PostgresqlDatabaseList) DeepCopyInto(out *PostgresqlDatabaseList) { + *out = *in + out.TypeMeta = in.TypeMeta + in.ListMeta.DeepCopyInto(&out.ListMeta) + if in.Items != nil { + in, out := &in.Items, &out.Items + *out = make([]PostgresqlDatabase, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PostgresqlDatabaseList. +func (in *PostgresqlDatabaseList) DeepCopy() *PostgresqlDatabaseList { if in == nil { return nil } - out := new(PostgresqlDatabase) + out := new(PostgresqlDatabaseList) in.DeepCopyInto(out) return out } // DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object. -func (in *PostgresqlDatabase) DeepCopyObject() runtime.Object { +func (in *PostgresqlDatabaseList) DeepCopyObject() runtime.Object { if c := in.DeepCopy(); c != nil { return c } @@ -18869,82 +19047,69 @@ func (in *PostgresqlDatabase) DeepCopyObject() runtime.Object { } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *PostgresqlDatabaseExtensionInitParameters) DeepCopyInto(out *PostgresqlDatabaseExtensionInitParameters) { +func (in *PostgresqlDatabaseObservation) DeepCopyInto(out *PostgresqlDatabaseObservation) { *out = *in - if in.Name != nil { - in, out := &in.Name, &out.Name + if in.ClusterID != nil { + in, out := &in.ClusterID, &out.ClusterID *out = new(string) **out = **in } - if in.Version != nil { - in, out := &in.Version, &out.Version + if in.DeletionProtection != nil { + in, out := &in.DeletionProtection, &out.DeletionProtection *out = new(string) **out = **in } -} - -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PostgresqlDatabaseExtensionInitParameters. -func (in *PostgresqlDatabaseExtensionInitParameters) DeepCopy() *PostgresqlDatabaseExtensionInitParameters { - if in == nil { - return nil + if in.Extension != nil { + in, out := &in.Extension, &out.Extension + *out = make([]PostgresqlDatabaseExtensionObservation, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } } - out := new(PostgresqlDatabaseExtensionInitParameters) - in.DeepCopyInto(out) - return out -} - -// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *PostgresqlDatabaseExtensionObservation) DeepCopyInto(out *PostgresqlDatabaseExtensionObservation) { - *out = *in - if in.Name != nil { - in, out := &in.Name, &out.Name + if in.ID != nil { + in, out := &in.ID, &out.ID *out = new(string) **out = **in } - if in.Version != nil { - in, out := &in.Version, &out.Version + if in.LcCollate != nil { + in, out := &in.LcCollate, &out.LcCollate *out = new(string) **out = **in } -} - -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PostgresqlDatabaseExtensionObservation. -func (in *PostgresqlDatabaseExtensionObservation) DeepCopy() *PostgresqlDatabaseExtensionObservation { - if in == nil { - return nil + if in.LcType != nil { + in, out := &in.LcType, &out.LcType + *out = new(string) + **out = **in } - out := new(PostgresqlDatabaseExtensionObservation) - in.DeepCopyInto(out) - return out -} - -// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *PostgresqlDatabaseExtensionParameters) DeepCopyInto(out *PostgresqlDatabaseExtensionParameters) { - *out = *in if in.Name != nil { in, out := &in.Name, &out.Name *out = new(string) **out = **in } - if in.Version != nil { - in, out := &in.Version, &out.Version + if in.Owner != nil { + in, out := &in.Owner, &out.Owner + *out = new(string) + **out = **in + } + if in.TemplateDB != nil { + in, out := &in.TemplateDB, &out.TemplateDB *out = new(string) **out = **in } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PostgresqlDatabaseExtensionParameters. -func (in *PostgresqlDatabaseExtensionParameters) DeepCopy() *PostgresqlDatabaseExtensionParameters { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PostgresqlDatabaseObservation. +func (in *PostgresqlDatabaseObservation) DeepCopy() *PostgresqlDatabaseObservation { if in == nil { return nil } - out := new(PostgresqlDatabaseExtensionParameters) + out := new(PostgresqlDatabaseObservation) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *PostgresqlDatabaseInitParameters) DeepCopyInto(out *PostgresqlDatabaseInitParameters) { +func (in *PostgresqlDatabaseParameters) DeepCopyInto(out *PostgresqlDatabaseParameters) { *out = *in if in.ClusterID != nil { in, out := &in.ClusterID, &out.ClusterID @@ -18968,7 +19133,7 @@ func (in *PostgresqlDatabaseInitParameters) DeepCopyInto(out *PostgresqlDatabase } if in.Extension != nil { in, out := &in.Extension, &out.Extension - *out = make([]PostgresqlDatabaseExtensionInitParameters, len(*in)) + *out = make([]PostgresqlDatabaseExtensionParameters, len(*in)) for i := range *in { (*in)[i].DeepCopyInto(&(*out)[i]) } @@ -19010,42 +19175,189 @@ func (in *PostgresqlDatabaseInitParameters) DeepCopyInto(out *PostgresqlDatabase } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PostgresqlDatabaseInitParameters. -func (in *PostgresqlDatabaseInitParameters) DeepCopy() *PostgresqlDatabaseInitParameters { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PostgresqlDatabaseParameters. +func (in *PostgresqlDatabaseParameters) DeepCopy() *PostgresqlDatabaseParameters { if in == nil { return nil } - out := new(PostgresqlDatabaseInitParameters) + out := new(PostgresqlDatabaseParameters) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *PostgresqlDatabaseList) DeepCopyInto(out *PostgresqlDatabaseList) { +func (in *PostgresqlDatabaseSpec) DeepCopyInto(out *PostgresqlDatabaseSpec) { + *out = *in + in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) + in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PostgresqlDatabaseSpec. +func (in *PostgresqlDatabaseSpec) DeepCopy() *PostgresqlDatabaseSpec { + if in == nil { + return nil + } + out := new(PostgresqlDatabaseSpec) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *PostgresqlDatabaseStatus) DeepCopyInto(out *PostgresqlDatabaseStatus) { + *out = *in + in.ResourceStatus.DeepCopyInto(&out.ResourceStatus) + in.AtProvider.DeepCopyInto(&out.AtProvider) +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PostgresqlDatabaseStatus. +func (in *PostgresqlDatabaseStatus) DeepCopy() *PostgresqlDatabaseStatus { + if in == nil { + return nil + } + out := new(PostgresqlDatabaseStatus) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *PostgresqlUser) DeepCopyInto(out *PostgresqlUser) { + *out = *in + out.TypeMeta = in.TypeMeta + in.ObjectMeta.DeepCopyInto(&out.ObjectMeta) + in.Spec.DeepCopyInto(&out.Spec) + in.Status.DeepCopyInto(&out.Status) +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PostgresqlUser. +func (in *PostgresqlUser) DeepCopy() *PostgresqlUser { + if in == nil { + return nil + } + out := new(PostgresqlUser) + in.DeepCopyInto(out) + return out +} + +// DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object. +func (in *PostgresqlUser) DeepCopyObject() runtime.Object { + if c := in.DeepCopy(); c != nil { + return c + } + return nil +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *PostgresqlUserInitParameters) DeepCopyInto(out *PostgresqlUserInitParameters) { + *out = *in + if in.ClusterID != nil { + in, out := &in.ClusterID, &out.ClusterID + *out = new(string) + **out = **in + } + if in.ClusterIDRef != nil { + in, out := &in.ClusterIDRef, &out.ClusterIDRef + *out = new(v1.Reference) + (*in).DeepCopyInto(*out) + } + if in.ClusterIDSelector != nil { + in, out := &in.ClusterIDSelector, &out.ClusterIDSelector + *out = new(v1.Selector) + (*in).DeepCopyInto(*out) + } + if in.ConnLimit != nil { + in, out := &in.ConnLimit, &out.ConnLimit + *out = new(float64) + **out = **in + } + if in.DeletionProtection != nil { + in, out := &in.DeletionProtection, &out.DeletionProtection + *out = new(string) + **out = **in + } + if in.Grants != nil { + in, out := &in.Grants, &out.Grants + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.Login != nil { + in, out := &in.Login, &out.Login + *out = new(bool) + **out = **in + } + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } + out.PasswordSecretRef = in.PasswordSecretRef + if in.Permission != nil { + in, out := &in.Permission, &out.Permission + *out = make([]PostgresqlUserPermissionInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Settings != nil { + in, out := &in.Settings, &out.Settings + *out = make(map[string]*string, len(*in)) + for key, val := range *in { + var outVal *string + if val == nil { + (*out)[key] = nil + } else { + inVal := (*in)[key] + in, out := &inVal, &outVal + *out = new(string) + **out = **in + } + (*out)[key] = outVal + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PostgresqlUserInitParameters. +func (in *PostgresqlUserInitParameters) DeepCopy() *PostgresqlUserInitParameters { + if in == nil { + return nil + } + out := new(PostgresqlUserInitParameters) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *PostgresqlUserList) DeepCopyInto(out *PostgresqlUserList) { *out = *in out.TypeMeta = in.TypeMeta in.ListMeta.DeepCopyInto(&out.ListMeta) if in.Items != nil { in, out := &in.Items, &out.Items - *out = make([]PostgresqlDatabase, len(*in)) + *out = make([]PostgresqlUser, len(*in)) for i := range *in { (*in)[i].DeepCopyInto(&(*out)[i]) } } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PostgresqlDatabaseList. -func (in *PostgresqlDatabaseList) DeepCopy() *PostgresqlDatabaseList { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PostgresqlUserList. +func (in *PostgresqlUserList) DeepCopy() *PostgresqlUserList { if in == nil { return nil } - out := new(PostgresqlDatabaseList) + out := new(PostgresqlUserList) in.DeepCopyInto(out) return out } // DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object. -func (in *PostgresqlDatabaseList) DeepCopyObject() runtime.Object { +func (in *PostgresqlUserList) DeepCopyObject() runtime.Object { if c := in.DeepCopy(); c != nil { return c } @@ -19053,23 +19365,32 @@ func (in *PostgresqlDatabaseList) DeepCopyObject() runtime.Object { } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *PostgresqlDatabaseObservation) DeepCopyInto(out *PostgresqlDatabaseObservation) { +func (in *PostgresqlUserObservation) DeepCopyInto(out *PostgresqlUserObservation) { *out = *in if in.ClusterID != nil { in, out := &in.ClusterID, &out.ClusterID *out = new(string) **out = **in } + if in.ConnLimit != nil { + in, out := &in.ConnLimit, &out.ConnLimit + *out = new(float64) + **out = **in + } if in.DeletionProtection != nil { in, out := &in.DeletionProtection, &out.DeletionProtection *out = new(string) **out = **in } - if in.Extension != nil { - in, out := &in.Extension, &out.Extension - *out = make([]PostgresqlDatabaseExtensionObservation, len(*in)) + if in.Grants != nil { + in, out := &in.Grants, &out.Grants + *out = make([]*string, len(*in)) for i := range *in { - (*in)[i].DeepCopyInto(&(*out)[i]) + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } } } if in.ID != nil { @@ -19077,14 +19398,9 @@ func (in *PostgresqlDatabaseObservation) DeepCopyInto(out *PostgresqlDatabaseObs *out = new(string) **out = **in } - if in.LcCollate != nil { - in, out := &in.LcCollate, &out.LcCollate - *out = new(string) - **out = **in - } - if in.LcType != nil { - in, out := &in.LcType, &out.LcType - *out = new(string) + if in.Login != nil { + in, out := &in.Login, &out.Login + *out = new(bool) **out = **in } if in.Name != nil { @@ -19092,30 +19408,43 @@ func (in *PostgresqlDatabaseObservation) DeepCopyInto(out *PostgresqlDatabaseObs *out = new(string) **out = **in } - if in.Owner != nil { - in, out := &in.Owner, &out.Owner - *out = new(string) - **out = **in + if in.Permission != nil { + in, out := &in.Permission, &out.Permission + *out = make([]PostgresqlUserPermissionObservation, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } } - if in.TemplateDB != nil { - in, out := &in.TemplateDB, &out.TemplateDB - *out = new(string) - **out = **in + if in.Settings != nil { + in, out := &in.Settings, &out.Settings + *out = make(map[string]*string, len(*in)) + for key, val := range *in { + var outVal *string + if val == nil { + (*out)[key] = nil + } else { + inVal := (*in)[key] + in, out := &inVal, &outVal + *out = new(string) + **out = **in + } + (*out)[key] = outVal + } } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PostgresqlDatabaseObservation. -func (in *PostgresqlDatabaseObservation) DeepCopy() *PostgresqlDatabaseObservation { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PostgresqlUserObservation. +func (in *PostgresqlUserObservation) DeepCopy() *PostgresqlUserObservation { if in == nil { return nil } - out := new(PostgresqlDatabaseObservation) + out := new(PostgresqlUserObservation) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *PostgresqlDatabaseParameters) DeepCopyInto(out *PostgresqlDatabaseParameters) { +func (in *PostgresqlUserParameters) DeepCopyInto(out *PostgresqlUserParameters) { *out = *in if in.ClusterID != nil { in, out := &in.ClusterID, &out.ClusterID @@ -19132,26 +19461,30 @@ func (in *PostgresqlDatabaseParameters) DeepCopyInto(out *PostgresqlDatabasePara *out = new(v1.Selector) (*in).DeepCopyInto(*out) } + if in.ConnLimit != nil { + in, out := &in.ConnLimit, &out.ConnLimit + *out = new(float64) + **out = **in + } if in.DeletionProtection != nil { in, out := &in.DeletionProtection, &out.DeletionProtection *out = new(string) **out = **in } - if in.Extension != nil { - in, out := &in.Extension, &out.Extension - *out = make([]PostgresqlDatabaseExtensionParameters, len(*in)) + if in.Grants != nil { + in, out := &in.Grants, &out.Grants + *out = make([]*string, len(*in)) for i := range *in { - (*in)[i].DeepCopyInto(&(*out)[i]) + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } } } - if in.LcCollate != nil { - in, out := &in.LcCollate, &out.LcCollate - *out = new(string) - **out = **in - } - if in.LcType != nil { - in, out := &in.LcType, &out.LcType - *out = new(string) + if in.Login != nil { + in, out := &in.Login, &out.Login + *out = new(bool) **out = **in } if in.Name != nil { @@ -19159,326 +19492,432 @@ func (in *PostgresqlDatabaseParameters) DeepCopyInto(out *PostgresqlDatabasePara *out = new(string) **out = **in } - if in.Owner != nil { - in, out := &in.Owner, &out.Owner + out.PasswordSecretRef = in.PasswordSecretRef + if in.Permission != nil { + in, out := &in.Permission, &out.Permission + *out = make([]PostgresqlUserPermissionParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Settings != nil { + in, out := &in.Settings, &out.Settings + *out = make(map[string]*string, len(*in)) + for key, val := range *in { + var outVal *string + if val == nil { + (*out)[key] = nil + } else { + inVal := (*in)[key] + in, out := &inVal, &outVal + *out = new(string) + **out = **in + } + (*out)[key] = outVal + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PostgresqlUserParameters. +func (in *PostgresqlUserParameters) DeepCopy() *PostgresqlUserParameters { + if in == nil { + return nil + } + out := new(PostgresqlUserParameters) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *PostgresqlUserPermissionInitParameters) DeepCopyInto(out *PostgresqlUserPermissionInitParameters) { + *out = *in + if in.DatabaseName != nil { + in, out := &in.DatabaseName, &out.DatabaseName *out = new(string) **out = **in } - if in.OwnerRef != nil { - in, out := &in.OwnerRef, &out.OwnerRef - *out = new(v1.Reference) - (*in).DeepCopyInto(*out) +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PostgresqlUserPermissionInitParameters. +func (in *PostgresqlUserPermissionInitParameters) DeepCopy() *PostgresqlUserPermissionInitParameters { + if in == nil { + return nil } - if in.OwnerSelector != nil { - in, out := &in.OwnerSelector, &out.OwnerSelector - *out = new(v1.Selector) - (*in).DeepCopyInto(*out) + out := new(PostgresqlUserPermissionInitParameters) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *PostgresqlUserPermissionObservation) DeepCopyInto(out *PostgresqlUserPermissionObservation) { + *out = *in + if in.DatabaseName != nil { + in, out := &in.DatabaseName, &out.DatabaseName + *out = new(string) + **out = **in } - if in.TemplateDB != nil { - in, out := &in.TemplateDB, &out.TemplateDB +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PostgresqlUserPermissionObservation. +func (in *PostgresqlUserPermissionObservation) DeepCopy() *PostgresqlUserPermissionObservation { + if in == nil { + return nil + } + out := new(PostgresqlUserPermissionObservation) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *PostgresqlUserPermissionParameters) DeepCopyInto(out *PostgresqlUserPermissionParameters) { + *out = *in + if in.DatabaseName != nil { + in, out := &in.DatabaseName, &out.DatabaseName *out = new(string) **out = **in } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PostgresqlDatabaseParameters. -func (in *PostgresqlDatabaseParameters) DeepCopy() *PostgresqlDatabaseParameters { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PostgresqlUserPermissionParameters. +func (in *PostgresqlUserPermissionParameters) DeepCopy() *PostgresqlUserPermissionParameters { if in == nil { return nil } - out := new(PostgresqlDatabaseParameters) + out := new(PostgresqlUserPermissionParameters) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *PostgresqlDatabaseSpec) DeepCopyInto(out *PostgresqlDatabaseSpec) { +func (in *PostgresqlUserSpec) DeepCopyInto(out *PostgresqlUserSpec) { *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) in.InitProvider.DeepCopyInto(&out.InitProvider) } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PostgresqlDatabaseSpec. -func (in *PostgresqlDatabaseSpec) DeepCopy() *PostgresqlDatabaseSpec { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PostgresqlUserSpec. +func (in *PostgresqlUserSpec) DeepCopy() *PostgresqlUserSpec { if in == nil { return nil } - out := new(PostgresqlDatabaseSpec) + out := new(PostgresqlUserSpec) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *PostgresqlDatabaseStatus) DeepCopyInto(out *PostgresqlDatabaseStatus) { +func (in *PostgresqlUserStatus) DeepCopyInto(out *PostgresqlUserStatus) { *out = *in in.ResourceStatus.DeepCopyInto(&out.ResourceStatus) in.AtProvider.DeepCopyInto(&out.AtProvider) } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PostgresqlDatabaseStatus. -func (in *PostgresqlDatabaseStatus) DeepCopy() *PostgresqlDatabaseStatus { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PostgresqlUserStatus. +func (in *PostgresqlUserStatus) DeepCopy() *PostgresqlUserStatus { + if in == nil { + return nil + } + out := new(PostgresqlUserStatus) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *PxfConfigInitParameters) DeepCopyInto(out *PxfConfigInitParameters) { + *out = *in + if in.ConnectionTimeout != nil { + in, out := &in.ConnectionTimeout, &out.ConnectionTimeout + *out = new(float64) + **out = **in + } + if in.MaxThreads != nil { + in, out := &in.MaxThreads, &out.MaxThreads + *out = new(float64) + **out = **in + } + if in.PoolAllowCoreThreadTimeout != nil { + in, out := &in.PoolAllowCoreThreadTimeout, &out.PoolAllowCoreThreadTimeout + *out = new(bool) + **out = **in + } + if in.PoolCoreSize != nil { + in, out := &in.PoolCoreSize, &out.PoolCoreSize + *out = new(float64) + **out = **in + } + if in.PoolMaxSize != nil { + in, out := &in.PoolMaxSize, &out.PoolMaxSize + *out = new(float64) + **out = **in + } + if in.PoolQueueCapacity != nil { + in, out := &in.PoolQueueCapacity, &out.PoolQueueCapacity + *out = new(float64) + **out = **in + } + if in.UploadTimeout != nil { + in, out := &in.UploadTimeout, &out.UploadTimeout + *out = new(float64) + **out = **in + } + if in.Xms != nil { + in, out := &in.Xms, &out.Xms + *out = new(float64) + **out = **in + } + if in.Xmx != nil { + in, out := &in.Xmx, &out.Xmx + *out = new(float64) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PxfConfigInitParameters. +func (in *PxfConfigInitParameters) DeepCopy() *PxfConfigInitParameters { if in == nil { return nil } - out := new(PostgresqlDatabaseStatus) + out := new(PxfConfigInitParameters) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *PostgresqlUser) DeepCopyInto(out *PostgresqlUser) { +func (in *PxfConfigObservation) DeepCopyInto(out *PxfConfigObservation) { *out = *in - out.TypeMeta = in.TypeMeta - in.ObjectMeta.DeepCopyInto(&out.ObjectMeta) - in.Spec.DeepCopyInto(&out.Spec) - in.Status.DeepCopyInto(&out.Status) + if in.ConnectionTimeout != nil { + in, out := &in.ConnectionTimeout, &out.ConnectionTimeout + *out = new(float64) + **out = **in + } + if in.MaxThreads != nil { + in, out := &in.MaxThreads, &out.MaxThreads + *out = new(float64) + **out = **in + } + if in.PoolAllowCoreThreadTimeout != nil { + in, out := &in.PoolAllowCoreThreadTimeout, &out.PoolAllowCoreThreadTimeout + *out = new(bool) + **out = **in + } + if in.PoolCoreSize != nil { + in, out := &in.PoolCoreSize, &out.PoolCoreSize + *out = new(float64) + **out = **in + } + if in.PoolMaxSize != nil { + in, out := &in.PoolMaxSize, &out.PoolMaxSize + *out = new(float64) + **out = **in + } + if in.PoolQueueCapacity != nil { + in, out := &in.PoolQueueCapacity, &out.PoolQueueCapacity + *out = new(float64) + **out = **in + } + if in.UploadTimeout != nil { + in, out := &in.UploadTimeout, &out.UploadTimeout + *out = new(float64) + **out = **in + } + if in.Xms != nil { + in, out := &in.Xms, &out.Xms + *out = new(float64) + **out = **in + } + if in.Xmx != nil { + in, out := &in.Xmx, &out.Xmx + *out = new(float64) + **out = **in + } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PostgresqlUser. -func (in *PostgresqlUser) DeepCopy() *PostgresqlUser { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PxfConfigObservation. +func (in *PxfConfigObservation) DeepCopy() *PxfConfigObservation { if in == nil { return nil } - out := new(PostgresqlUser) + out := new(PxfConfigObservation) in.DeepCopyInto(out) return out } -// DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object. -func (in *PostgresqlUser) DeepCopyObject() runtime.Object { - if c := in.DeepCopy(); c != nil { - return c - } - return nil -} - // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *PostgresqlUserInitParameters) DeepCopyInto(out *PostgresqlUserInitParameters) { +func (in *PxfConfigParameters) DeepCopyInto(out *PxfConfigParameters) { *out = *in - if in.ClusterID != nil { - in, out := &in.ClusterID, &out.ClusterID - *out = new(string) + if in.ConnectionTimeout != nil { + in, out := &in.ConnectionTimeout, &out.ConnectionTimeout + *out = new(float64) **out = **in } - if in.ClusterIDRef != nil { - in, out := &in.ClusterIDRef, &out.ClusterIDRef - *out = new(v1.Reference) - (*in).DeepCopyInto(*out) + if in.MaxThreads != nil { + in, out := &in.MaxThreads, &out.MaxThreads + *out = new(float64) + **out = **in } - if in.ClusterIDSelector != nil { - in, out := &in.ClusterIDSelector, &out.ClusterIDSelector - *out = new(v1.Selector) - (*in).DeepCopyInto(*out) + if in.PoolAllowCoreThreadTimeout != nil { + in, out := &in.PoolAllowCoreThreadTimeout, &out.PoolAllowCoreThreadTimeout + *out = new(bool) + **out = **in } - if in.ConnLimit != nil { - in, out := &in.ConnLimit, &out.ConnLimit + if in.PoolCoreSize != nil { + in, out := &in.PoolCoreSize, &out.PoolCoreSize *out = new(float64) **out = **in } - if in.DeletionProtection != nil { - in, out := &in.DeletionProtection, &out.DeletionProtection - *out = new(string) + if in.PoolMaxSize != nil { + in, out := &in.PoolMaxSize, &out.PoolMaxSize + *out = new(float64) **out = **in } - if in.Grants != nil { - in, out := &in.Grants, &out.Grants - *out = make([]*string, len(*in)) - for i := range *in { - if (*in)[i] != nil { - in, out := &(*in)[i], &(*out)[i] - *out = new(string) - **out = **in - } - } - } - if in.Login != nil { - in, out := &in.Login, &out.Login - *out = new(bool) + if in.PoolQueueCapacity != nil { + in, out := &in.PoolQueueCapacity, &out.PoolQueueCapacity + *out = new(float64) **out = **in } - if in.Name != nil { - in, out := &in.Name, &out.Name - *out = new(string) + if in.UploadTimeout != nil { + in, out := &in.UploadTimeout, &out.UploadTimeout + *out = new(float64) **out = **in } - out.PasswordSecretRef = in.PasswordSecretRef - if in.Permission != nil { - in, out := &in.Permission, &out.Permission - *out = make([]PostgresqlUserPermissionInitParameters, len(*in)) - for i := range *in { - (*in)[i].DeepCopyInto(&(*out)[i]) - } + if in.Xms != nil { + in, out := &in.Xms, &out.Xms + *out = new(float64) + **out = **in } - if in.Settings != nil { - in, out := &in.Settings, &out.Settings - *out = make(map[string]*string, len(*in)) - for key, val := range *in { - var outVal *string - if val == nil { - (*out)[key] = nil - } else { - inVal := (*in)[key] - in, out := &inVal, &outVal - *out = new(string) - **out = **in - } - (*out)[key] = outVal - } + if in.Xmx != nil { + in, out := &in.Xmx, &out.Xmx + *out = new(float64) + **out = **in } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PostgresqlUserInitParameters. -func (in *PostgresqlUserInitParameters) DeepCopy() *PostgresqlUserInitParameters { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PxfConfigParameters. +func (in *PxfConfigParameters) DeepCopy() *PxfConfigParameters { if in == nil { return nil } - out := new(PostgresqlUserInitParameters) + out := new(PxfConfigParameters) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *PostgresqlUserList) DeepCopyInto(out *PostgresqlUserList) { +func (in *QueryCacheInitParameters) DeepCopyInto(out *QueryCacheInitParameters) { *out = *in - out.TypeMeta = in.TypeMeta - in.ListMeta.DeepCopyInto(&out.ListMeta) - if in.Items != nil { - in, out := &in.Items, &out.Items - *out = make([]PostgresqlUser, len(*in)) - for i := range *in { - (*in)[i].DeepCopyInto(&(*out)[i]) - } + if in.MaxEntries != nil { + in, out := &in.MaxEntries, &out.MaxEntries + *out = new(float64) + **out = **in + } + if in.MaxEntrySizeInBytes != nil { + in, out := &in.MaxEntrySizeInBytes, &out.MaxEntrySizeInBytes + *out = new(float64) + **out = **in + } + if in.MaxEntrySizeInRows != nil { + in, out := &in.MaxEntrySizeInRows, &out.MaxEntrySizeInRows + *out = new(float64) + **out = **in + } + if in.MaxSizeInBytes != nil { + in, out := &in.MaxSizeInBytes, &out.MaxSizeInBytes + *out = new(float64) + **out = **in } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PostgresqlUserList. -func (in *PostgresqlUserList) DeepCopy() *PostgresqlUserList { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new QueryCacheInitParameters. +func (in *QueryCacheInitParameters) DeepCopy() *QueryCacheInitParameters { if in == nil { return nil } - out := new(PostgresqlUserList) + out := new(QueryCacheInitParameters) in.DeepCopyInto(out) return out } -// DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object. -func (in *PostgresqlUserList) DeepCopyObject() runtime.Object { - if c := in.DeepCopy(); c != nil { - return c - } - return nil -} - // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *PostgresqlUserObservation) DeepCopyInto(out *PostgresqlUserObservation) { +func (in *QueryCacheObservation) DeepCopyInto(out *QueryCacheObservation) { *out = *in - if in.ClusterID != nil { - in, out := &in.ClusterID, &out.ClusterID - *out = new(string) - **out = **in - } - if in.ConnLimit != nil { - in, out := &in.ConnLimit, &out.ConnLimit + if in.MaxEntries != nil { + in, out := &in.MaxEntries, &out.MaxEntries *out = new(float64) **out = **in } - if in.DeletionProtection != nil { - in, out := &in.DeletionProtection, &out.DeletionProtection - *out = new(string) - **out = **in - } - if in.Grants != nil { - in, out := &in.Grants, &out.Grants - *out = make([]*string, len(*in)) - for i := range *in { - if (*in)[i] != nil { - in, out := &(*in)[i], &(*out)[i] - *out = new(string) - **out = **in - } - } - } - if in.ID != nil { - in, out := &in.ID, &out.ID - *out = new(string) - **out = **in - } - if in.Login != nil { - in, out := &in.Login, &out.Login - *out = new(bool) - **out = **in - } - if in.Name != nil { - in, out := &in.Name, &out.Name - *out = new(string) + if in.MaxEntrySizeInBytes != nil { + in, out := &in.MaxEntrySizeInBytes, &out.MaxEntrySizeInBytes + *out = new(float64) **out = **in } - if in.Permission != nil { - in, out := &in.Permission, &out.Permission - *out = make([]PostgresqlUserPermissionObservation, len(*in)) - for i := range *in { - (*in)[i].DeepCopyInto(&(*out)[i]) - } - } - if in.Settings != nil { - in, out := &in.Settings, &out.Settings - *out = make(map[string]*string, len(*in)) - for key, val := range *in { - var outVal *string - if val == nil { - (*out)[key] = nil - } else { - inVal := (*in)[key] - in, out := &inVal, &outVal - *out = new(string) - **out = **in - } - (*out)[key] = outVal - } + if in.MaxEntrySizeInRows != nil { + in, out := &in.MaxEntrySizeInRows, &out.MaxEntrySizeInRows + *out = new(float64) + **out = **in + } + if in.MaxSizeInBytes != nil { + in, out := &in.MaxSizeInBytes, &out.MaxSizeInBytes + *out = new(float64) + **out = **in } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PostgresqlUserObservation. -func (in *PostgresqlUserObservation) DeepCopy() *PostgresqlUserObservation { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new QueryCacheObservation. +func (in *QueryCacheObservation) DeepCopy() *QueryCacheObservation { if in == nil { return nil } - out := new(PostgresqlUserObservation) + out := new(QueryCacheObservation) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *PostgresqlUserParameters) DeepCopyInto(out *PostgresqlUserParameters) { +func (in *QueryCacheParameters) DeepCopyInto(out *QueryCacheParameters) { *out = *in - if in.ClusterID != nil { - in, out := &in.ClusterID, &out.ClusterID - *out = new(string) + if in.MaxEntries != nil { + in, out := &in.MaxEntries, &out.MaxEntries + *out = new(float64) **out = **in } - if in.ClusterIDRef != nil { - in, out := &in.ClusterIDRef, &out.ClusterIDRef - *out = new(v1.Reference) - (*in).DeepCopyInto(*out) + if in.MaxEntrySizeInBytes != nil { + in, out := &in.MaxEntrySizeInBytes, &out.MaxEntrySizeInBytes + *out = new(float64) + **out = **in } - if in.ClusterIDSelector != nil { - in, out := &in.ClusterIDSelector, &out.ClusterIDSelector - *out = new(v1.Selector) - (*in).DeepCopyInto(*out) + if in.MaxEntrySizeInRows != nil { + in, out := &in.MaxEntrySizeInRows, &out.MaxEntrySizeInRows + *out = new(float64) + **out = **in } - if in.ConnLimit != nil { - in, out := &in.ConnLimit, &out.ConnLimit + if in.MaxSizeInBytes != nil { + in, out := &in.MaxSizeInBytes, &out.MaxSizeInBytes *out = new(float64) **out = **in } - if in.DeletionProtection != nil { - in, out := &in.DeletionProtection, &out.DeletionProtection - *out = new(string) +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new QueryCacheParameters. +func (in *QueryCacheParameters) DeepCopy() *QueryCacheParameters { + if in == nil { + return nil + } + out := new(QueryCacheParameters) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *QueryKillerIdleInTransactionInitParameters) DeepCopyInto(out *QueryKillerIdleInTransactionInitParameters) { + *out = *in + if in.Enable != nil { + in, out := &in.Enable, &out.Enable + *out = new(bool) **out = **in } - if in.Grants != nil { - in, out := &in.Grants, &out.Grants + if in.IgnoreUsers != nil { + in, out := &in.IgnoreUsers, &out.IgnoreUsers *out = make([]*string, len(*in)) for i := range *in { if (*in)[i] != nil { @@ -19488,323 +19927,397 @@ func (in *PostgresqlUserParameters) DeepCopyInto(out *PostgresqlUserParameters) } } } - if in.Login != nil { - in, out := &in.Login, &out.Login - *out = new(bool) + if in.MaxAge != nil { + in, out := &in.MaxAge, &out.MaxAge + *out = new(float64) **out = **in } - if in.Name != nil { - in, out := &in.Name, &out.Name - *out = new(string) +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new QueryKillerIdleInTransactionInitParameters. +func (in *QueryKillerIdleInTransactionInitParameters) DeepCopy() *QueryKillerIdleInTransactionInitParameters { + if in == nil { + return nil + } + out := new(QueryKillerIdleInTransactionInitParameters) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *QueryKillerIdleInTransactionObservation) DeepCopyInto(out *QueryKillerIdleInTransactionObservation) { + *out = *in + if in.Enable != nil { + in, out := &in.Enable, &out.Enable + *out = new(bool) **out = **in } - out.PasswordSecretRef = in.PasswordSecretRef - if in.Permission != nil { - in, out := &in.Permission, &out.Permission - *out = make([]PostgresqlUserPermissionParameters, len(*in)) + if in.IgnoreUsers != nil { + in, out := &in.IgnoreUsers, &out.IgnoreUsers + *out = make([]*string, len(*in)) for i := range *in { - (*in)[i].DeepCopyInto(&(*out)[i]) - } - } - if in.Settings != nil { - in, out := &in.Settings, &out.Settings - *out = make(map[string]*string, len(*in)) - for key, val := range *in { - var outVal *string - if val == nil { - (*out)[key] = nil - } else { - inVal := (*in)[key] - in, out := &inVal, &outVal + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] *out = new(string) **out = **in } - (*out)[key] = outVal } } + if in.MaxAge != nil { + in, out := &in.MaxAge, &out.MaxAge + *out = new(float64) + **out = **in + } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PostgresqlUserParameters. -func (in *PostgresqlUserParameters) DeepCopy() *PostgresqlUserParameters { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new QueryKillerIdleInTransactionObservation. +func (in *QueryKillerIdleInTransactionObservation) DeepCopy() *QueryKillerIdleInTransactionObservation { if in == nil { return nil } - out := new(PostgresqlUserParameters) + out := new(QueryKillerIdleInTransactionObservation) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *PostgresqlUserPermissionInitParameters) DeepCopyInto(out *PostgresqlUserPermissionInitParameters) { +func (in *QueryKillerIdleInTransactionParameters) DeepCopyInto(out *QueryKillerIdleInTransactionParameters) { *out = *in - if in.DatabaseName != nil { - in, out := &in.DatabaseName, &out.DatabaseName - *out = new(string) + if in.Enable != nil { + in, out := &in.Enable, &out.Enable + *out = new(bool) + **out = **in + } + if in.IgnoreUsers != nil { + in, out := &in.IgnoreUsers, &out.IgnoreUsers + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.MaxAge != nil { + in, out := &in.MaxAge, &out.MaxAge + *out = new(float64) **out = **in } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PostgresqlUserPermissionInitParameters. -func (in *PostgresqlUserPermissionInitParameters) DeepCopy() *PostgresqlUserPermissionInitParameters { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new QueryKillerIdleInTransactionParameters. +func (in *QueryKillerIdleInTransactionParameters) DeepCopy() *QueryKillerIdleInTransactionParameters { if in == nil { return nil } - out := new(PostgresqlUserPermissionInitParameters) + out := new(QueryKillerIdleInTransactionParameters) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *PostgresqlUserPermissionObservation) DeepCopyInto(out *PostgresqlUserPermissionObservation) { +func (in *QueryKillerIdleInitParameters) DeepCopyInto(out *QueryKillerIdleInitParameters) { *out = *in - if in.DatabaseName != nil { - in, out := &in.DatabaseName, &out.DatabaseName - *out = new(string) + if in.Enable != nil { + in, out := &in.Enable, &out.Enable + *out = new(bool) + **out = **in + } + if in.IgnoreUsers != nil { + in, out := &in.IgnoreUsers, &out.IgnoreUsers + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.MaxAge != nil { + in, out := &in.MaxAge, &out.MaxAge + *out = new(float64) **out = **in } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PostgresqlUserPermissionObservation. -func (in *PostgresqlUserPermissionObservation) DeepCopy() *PostgresqlUserPermissionObservation { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new QueryKillerIdleInitParameters. +func (in *QueryKillerIdleInitParameters) DeepCopy() *QueryKillerIdleInitParameters { if in == nil { return nil } - out := new(PostgresqlUserPermissionObservation) + out := new(QueryKillerIdleInitParameters) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *PostgresqlUserPermissionParameters) DeepCopyInto(out *PostgresqlUserPermissionParameters) { +func (in *QueryKillerIdleObservation) DeepCopyInto(out *QueryKillerIdleObservation) { *out = *in - if in.DatabaseName != nil { - in, out := &in.DatabaseName, &out.DatabaseName - *out = new(string) + if in.Enable != nil { + in, out := &in.Enable, &out.Enable + *out = new(bool) + **out = **in + } + if in.IgnoreUsers != nil { + in, out := &in.IgnoreUsers, &out.IgnoreUsers + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.MaxAge != nil { + in, out := &in.MaxAge, &out.MaxAge + *out = new(float64) **out = **in } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PostgresqlUserPermissionParameters. -func (in *PostgresqlUserPermissionParameters) DeepCopy() *PostgresqlUserPermissionParameters { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new QueryKillerIdleObservation. +func (in *QueryKillerIdleObservation) DeepCopy() *QueryKillerIdleObservation { if in == nil { return nil } - out := new(PostgresqlUserPermissionParameters) + out := new(QueryKillerIdleObservation) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *PostgresqlUserSpec) DeepCopyInto(out *PostgresqlUserSpec) { +func (in *QueryKillerIdleParameters) DeepCopyInto(out *QueryKillerIdleParameters) { *out = *in - in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) - in.ForProvider.DeepCopyInto(&out.ForProvider) - in.InitProvider.DeepCopyInto(&out.InitProvider) + if in.Enable != nil { + in, out := &in.Enable, &out.Enable + *out = new(bool) + **out = **in + } + if in.IgnoreUsers != nil { + in, out := &in.IgnoreUsers, &out.IgnoreUsers + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.MaxAge != nil { + in, out := &in.MaxAge, &out.MaxAge + *out = new(float64) + **out = **in + } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PostgresqlUserSpec. -func (in *PostgresqlUserSpec) DeepCopy() *PostgresqlUserSpec { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new QueryKillerIdleParameters. +func (in *QueryKillerIdleParameters) DeepCopy() *QueryKillerIdleParameters { if in == nil { return nil } - out := new(PostgresqlUserSpec) + out := new(QueryKillerIdleParameters) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *PostgresqlUserStatus) DeepCopyInto(out *PostgresqlUserStatus) { +func (in *QueryKillerLongRunningInitParameters) DeepCopyInto(out *QueryKillerLongRunningInitParameters) { *out = *in - in.ResourceStatus.DeepCopyInto(&out.ResourceStatus) - in.AtProvider.DeepCopyInto(&out.AtProvider) + if in.Enable != nil { + in, out := &in.Enable, &out.Enable + *out = new(bool) + **out = **in + } + if in.IgnoreUsers != nil { + in, out := &in.IgnoreUsers, &out.IgnoreUsers + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.MaxAge != nil { + in, out := &in.MaxAge, &out.MaxAge + *out = new(float64) + **out = **in + } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PostgresqlUserStatus. -func (in *PostgresqlUserStatus) DeepCopy() *PostgresqlUserStatus { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new QueryKillerLongRunningInitParameters. +func (in *QueryKillerLongRunningInitParameters) DeepCopy() *QueryKillerLongRunningInitParameters { if in == nil { return nil } - out := new(PostgresqlUserStatus) + out := new(QueryKillerLongRunningInitParameters) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *PxfConfigInitParameters) DeepCopyInto(out *PxfConfigInitParameters) { +func (in *QueryKillerLongRunningObservation) DeepCopyInto(out *QueryKillerLongRunningObservation) { *out = *in - if in.ConnectionTimeout != nil { - in, out := &in.ConnectionTimeout, &out.ConnectionTimeout - *out = new(float64) - **out = **in - } - if in.MaxThreads != nil { - in, out := &in.MaxThreads, &out.MaxThreads - *out = new(float64) - **out = **in - } - if in.PoolAllowCoreThreadTimeout != nil { - in, out := &in.PoolAllowCoreThreadTimeout, &out.PoolAllowCoreThreadTimeout + if in.Enable != nil { + in, out := &in.Enable, &out.Enable *out = new(bool) **out = **in } - if in.PoolCoreSize != nil { - in, out := &in.PoolCoreSize, &out.PoolCoreSize - *out = new(float64) - **out = **in - } - if in.PoolMaxSize != nil { - in, out := &in.PoolMaxSize, &out.PoolMaxSize - *out = new(float64) - **out = **in - } - if in.PoolQueueCapacity != nil { - in, out := &in.PoolQueueCapacity, &out.PoolQueueCapacity - *out = new(float64) - **out = **in - } - if in.UploadTimeout != nil { - in, out := &in.UploadTimeout, &out.UploadTimeout - *out = new(float64) - **out = **in - } - if in.Xms != nil { - in, out := &in.Xms, &out.Xms - *out = new(float64) - **out = **in - } - if in.Xmx != nil { - in, out := &in.Xmx, &out.Xmx + if in.IgnoreUsers != nil { + in, out := &in.IgnoreUsers, &out.IgnoreUsers + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.MaxAge != nil { + in, out := &in.MaxAge, &out.MaxAge *out = new(float64) **out = **in } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PxfConfigInitParameters. -func (in *PxfConfigInitParameters) DeepCopy() *PxfConfigInitParameters { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new QueryKillerLongRunningObservation. +func (in *QueryKillerLongRunningObservation) DeepCopy() *QueryKillerLongRunningObservation { if in == nil { return nil } - out := new(PxfConfigInitParameters) + out := new(QueryKillerLongRunningObservation) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *PxfConfigObservation) DeepCopyInto(out *PxfConfigObservation) { +func (in *QueryKillerLongRunningParameters) DeepCopyInto(out *QueryKillerLongRunningParameters) { *out = *in - if in.ConnectionTimeout != nil { - in, out := &in.ConnectionTimeout, &out.ConnectionTimeout - *out = new(float64) - **out = **in - } - if in.MaxThreads != nil { - in, out := &in.MaxThreads, &out.MaxThreads - *out = new(float64) - **out = **in - } - if in.PoolAllowCoreThreadTimeout != nil { - in, out := &in.PoolAllowCoreThreadTimeout, &out.PoolAllowCoreThreadTimeout + if in.Enable != nil { + in, out := &in.Enable, &out.Enable *out = new(bool) **out = **in } - if in.PoolCoreSize != nil { - in, out := &in.PoolCoreSize, &out.PoolCoreSize - *out = new(float64) - **out = **in + if in.IgnoreUsers != nil { + in, out := &in.IgnoreUsers, &out.IgnoreUsers + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } } - if in.PoolMaxSize != nil { - in, out := &in.PoolMaxSize, &out.PoolMaxSize + if in.MaxAge != nil { + in, out := &in.MaxAge, &out.MaxAge *out = new(float64) **out = **in } - if in.PoolQueueCapacity != nil { - in, out := &in.PoolQueueCapacity, &out.PoolQueueCapacity - *out = new(float64) - **out = **in +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new QueryKillerLongRunningParameters. +func (in *QueryKillerLongRunningParameters) DeepCopy() *QueryKillerLongRunningParameters { + if in == nil { + return nil } - if in.UploadTimeout != nil { - in, out := &in.UploadTimeout, &out.UploadTimeout - *out = new(float64) + out := new(QueryKillerLongRunningParameters) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *QueryMaskingRulesInitParameters) DeepCopyInto(out *QueryMaskingRulesInitParameters) { + *out = *in + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) **out = **in } - if in.Xms != nil { - in, out := &in.Xms, &out.Xms - *out = new(float64) + if in.Regexp != nil { + in, out := &in.Regexp, &out.Regexp + *out = new(string) **out = **in } - if in.Xmx != nil { - in, out := &in.Xmx, &out.Xmx - *out = new(float64) + if in.Replace != nil { + in, out := &in.Replace, &out.Replace + *out = new(string) **out = **in } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PxfConfigObservation. -func (in *PxfConfigObservation) DeepCopy() *PxfConfigObservation { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new QueryMaskingRulesInitParameters. +func (in *QueryMaskingRulesInitParameters) DeepCopy() *QueryMaskingRulesInitParameters { if in == nil { return nil } - out := new(PxfConfigObservation) + out := new(QueryMaskingRulesInitParameters) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *PxfConfigParameters) DeepCopyInto(out *PxfConfigParameters) { +func (in *QueryMaskingRulesObservation) DeepCopyInto(out *QueryMaskingRulesObservation) { *out = *in - if in.ConnectionTimeout != nil { - in, out := &in.ConnectionTimeout, &out.ConnectionTimeout - *out = new(float64) - **out = **in - } - if in.MaxThreads != nil { - in, out := &in.MaxThreads, &out.MaxThreads - *out = new(float64) - **out = **in - } - if in.PoolAllowCoreThreadTimeout != nil { - in, out := &in.PoolAllowCoreThreadTimeout, &out.PoolAllowCoreThreadTimeout - *out = new(bool) + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) **out = **in } - if in.PoolCoreSize != nil { - in, out := &in.PoolCoreSize, &out.PoolCoreSize - *out = new(float64) + if in.Regexp != nil { + in, out := &in.Regexp, &out.Regexp + *out = new(string) **out = **in } - if in.PoolMaxSize != nil { - in, out := &in.PoolMaxSize, &out.PoolMaxSize - *out = new(float64) + if in.Replace != nil { + in, out := &in.Replace, &out.Replace + *out = new(string) **out = **in } - if in.PoolQueueCapacity != nil { - in, out := &in.PoolQueueCapacity, &out.PoolQueueCapacity - *out = new(float64) - **out = **in +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new QueryMaskingRulesObservation. +func (in *QueryMaskingRulesObservation) DeepCopy() *QueryMaskingRulesObservation { + if in == nil { + return nil } - if in.UploadTimeout != nil { - in, out := &in.UploadTimeout, &out.UploadTimeout - *out = new(float64) + out := new(QueryMaskingRulesObservation) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *QueryMaskingRulesParameters) DeepCopyInto(out *QueryMaskingRulesParameters) { + *out = *in + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) **out = **in } - if in.Xms != nil { - in, out := &in.Xms, &out.Xms - *out = new(float64) + if in.Regexp != nil { + in, out := &in.Regexp, &out.Regexp + *out = new(string) **out = **in } - if in.Xmx != nil { - in, out := &in.Xmx, &out.Xmx - *out = new(float64) + if in.Replace != nil { + in, out := &in.Replace, &out.Replace + *out = new(string) **out = **in } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PxfConfigParameters. -func (in *PxfConfigParameters) DeepCopy() *PxfConfigParameters { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new QueryMaskingRulesParameters. +func (in *QueryMaskingRulesParameters) DeepCopy() *QueryMaskingRulesParameters { if in == nil { return nil } - out := new(PxfConfigParameters) + out := new(QueryMaskingRulesParameters) in.DeepCopyInto(out) return out } @@ -20056,6 +20569,81 @@ func (in *RedisCluster) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *RedisClusterAccessInitParameters) DeepCopyInto(out *RedisClusterAccessInitParameters) { + *out = *in + if in.DataLens != nil { + in, out := &in.DataLens, &out.DataLens + *out = new(bool) + **out = **in + } + if in.WebSQL != nil { + in, out := &in.WebSQL, &out.WebSQL + *out = new(bool) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RedisClusterAccessInitParameters. +func (in *RedisClusterAccessInitParameters) DeepCopy() *RedisClusterAccessInitParameters { + if in == nil { + return nil + } + out := new(RedisClusterAccessInitParameters) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *RedisClusterAccessObservation) DeepCopyInto(out *RedisClusterAccessObservation) { + *out = *in + if in.DataLens != nil { + in, out := &in.DataLens, &out.DataLens + *out = new(bool) + **out = **in + } + if in.WebSQL != nil { + in, out := &in.WebSQL, &out.WebSQL + *out = new(bool) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RedisClusterAccessObservation. +func (in *RedisClusterAccessObservation) DeepCopy() *RedisClusterAccessObservation { + if in == nil { + return nil + } + out := new(RedisClusterAccessObservation) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *RedisClusterAccessParameters) DeepCopyInto(out *RedisClusterAccessParameters) { + *out = *in + if in.DataLens != nil { + in, out := &in.DataLens, &out.DataLens + *out = new(bool) + **out = **in + } + if in.WebSQL != nil { + in, out := &in.WebSQL, &out.WebSQL + *out = new(bool) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RedisClusterAccessParameters. +func (in *RedisClusterAccessParameters) DeepCopy() *RedisClusterAccessParameters { + if in == nil { + return nil + } + out := new(RedisClusterAccessParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *RedisClusterConfigInitParameters) DeepCopyInto(out *RedisClusterConfigInitParameters) { *out = *in @@ -20226,29 +20814,119 @@ func (in *RedisClusterConfigParameters) DeepCopyInto(out *RedisClusterConfigPara *out = new(float64) **out = **in } - if in.SlowlogMaxLen != nil { - in, out := &in.SlowlogMaxLen, &out.SlowlogMaxLen + if in.SlowlogMaxLen != nil { + in, out := &in.SlowlogMaxLen, &out.SlowlogMaxLen + *out = new(float64) + **out = **in + } + if in.Timeout != nil { + in, out := &in.Timeout, &out.Timeout + *out = new(float64) + **out = **in + } + if in.Version != nil { + in, out := &in.Version, &out.Version + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RedisClusterConfigParameters. +func (in *RedisClusterConfigParameters) DeepCopy() *RedisClusterConfigParameters { + if in == nil { + return nil + } + out := new(RedisClusterConfigParameters) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *RedisClusterDiskSizeAutoscalingInitParameters) DeepCopyInto(out *RedisClusterDiskSizeAutoscalingInitParameters) { + *out = *in + if in.DiskSizeLimit != nil { + in, out := &in.DiskSizeLimit, &out.DiskSizeLimit + *out = new(float64) + **out = **in + } + if in.EmergencyUsageThreshold != nil { + in, out := &in.EmergencyUsageThreshold, &out.EmergencyUsageThreshold + *out = new(float64) + **out = **in + } + if in.PlannedUsageThreshold != nil { + in, out := &in.PlannedUsageThreshold, &out.PlannedUsageThreshold + *out = new(float64) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RedisClusterDiskSizeAutoscalingInitParameters. +func (in *RedisClusterDiskSizeAutoscalingInitParameters) DeepCopy() *RedisClusterDiskSizeAutoscalingInitParameters { + if in == nil { + return nil + } + out := new(RedisClusterDiskSizeAutoscalingInitParameters) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *RedisClusterDiskSizeAutoscalingObservation) DeepCopyInto(out *RedisClusterDiskSizeAutoscalingObservation) { + *out = *in + if in.DiskSizeLimit != nil { + in, out := &in.DiskSizeLimit, &out.DiskSizeLimit + *out = new(float64) + **out = **in + } + if in.EmergencyUsageThreshold != nil { + in, out := &in.EmergencyUsageThreshold, &out.EmergencyUsageThreshold + *out = new(float64) + **out = **in + } + if in.PlannedUsageThreshold != nil { + in, out := &in.PlannedUsageThreshold, &out.PlannedUsageThreshold + *out = new(float64) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RedisClusterDiskSizeAutoscalingObservation. +func (in *RedisClusterDiskSizeAutoscalingObservation) DeepCopy() *RedisClusterDiskSizeAutoscalingObservation { + if in == nil { + return nil + } + out := new(RedisClusterDiskSizeAutoscalingObservation) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *RedisClusterDiskSizeAutoscalingParameters) DeepCopyInto(out *RedisClusterDiskSizeAutoscalingParameters) { + *out = *in + if in.DiskSizeLimit != nil { + in, out := &in.DiskSizeLimit, &out.DiskSizeLimit *out = new(float64) **out = **in } - if in.Timeout != nil { - in, out := &in.Timeout, &out.Timeout + if in.EmergencyUsageThreshold != nil { + in, out := &in.EmergencyUsageThreshold, &out.EmergencyUsageThreshold *out = new(float64) **out = **in } - if in.Version != nil { - in, out := &in.Version, &out.Version - *out = new(string) + if in.PlannedUsageThreshold != nil { + in, out := &in.PlannedUsageThreshold, &out.PlannedUsageThreshold + *out = new(float64) **out = **in } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RedisClusterConfigParameters. -func (in *RedisClusterConfigParameters) DeepCopy() *RedisClusterConfigParameters { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RedisClusterDiskSizeAutoscalingParameters. +func (in *RedisClusterDiskSizeAutoscalingParameters) DeepCopy() *RedisClusterDiskSizeAutoscalingParameters { if in == nil { return nil } - out := new(RedisClusterConfigParameters) + out := new(RedisClusterDiskSizeAutoscalingParameters) in.DeepCopyInto(out) return out } @@ -20401,6 +21079,13 @@ func (in *RedisClusterHostParameters) DeepCopy() *RedisClusterHostParameters { // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *RedisClusterInitParameters) DeepCopyInto(out *RedisClusterInitParameters) { *out = *in + if in.Access != nil { + in, out := &in.Access, &out.Access + *out = make([]RedisClusterAccessInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } if in.AnnounceHostnames != nil { in, out := &in.AnnounceHostnames, &out.AnnounceHostnames *out = new(bool) @@ -20423,6 +21108,13 @@ func (in *RedisClusterInitParameters) DeepCopyInto(out *RedisClusterInitParamete *out = new(string) **out = **in } + if in.DiskSizeAutoscaling != nil { + in, out := &in.DiskSizeAutoscaling, &out.DiskSizeAutoscaling + *out = make([]RedisClusterDiskSizeAutoscalingInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } if in.Environment != nil { in, out := &in.Environment, &out.Environment *out = new(string) @@ -20675,6 +21367,13 @@ func (in *RedisClusterMaintenanceWindowParameters) DeepCopy() *RedisClusterMaint // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *RedisClusterObservation) DeepCopyInto(out *RedisClusterObservation) { *out = *in + if in.Access != nil { + in, out := &in.Access, &out.Access + *out = make([]RedisClusterAccessObservation, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } if in.AnnounceHostnames != nil { in, out := &in.AnnounceHostnames, &out.AnnounceHostnames *out = new(bool) @@ -20702,6 +21401,13 @@ func (in *RedisClusterObservation) DeepCopyInto(out *RedisClusterObservation) { *out = new(string) **out = **in } + if in.DiskSizeAutoscaling != nil { + in, out := &in.DiskSizeAutoscaling, &out.DiskSizeAutoscaling + *out = make([]RedisClusterDiskSizeAutoscalingObservation, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } if in.Environment != nil { in, out := &in.Environment, &out.Environment *out = new(string) @@ -20815,6 +21521,13 @@ func (in *RedisClusterObservation) DeepCopy() *RedisClusterObservation { // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *RedisClusterParameters) DeepCopyInto(out *RedisClusterParameters) { *out = *in + if in.Access != nil { + in, out := &in.Access, &out.Access + *out = make([]RedisClusterAccessParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } if in.AnnounceHostnames != nil { in, out := &in.AnnounceHostnames, &out.AnnounceHostnames *out = new(bool) @@ -20837,6 +21550,13 @@ func (in *RedisClusterParameters) DeepCopyInto(out *RedisClusterParameters) { *out = new(string) **out = **in } + if in.DiskSizeAutoscaling != nil { + in, out := &in.DiskSizeAutoscaling, &out.DiskSizeAutoscaling + *out = make([]RedisClusterDiskSizeAutoscalingParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } if in.Environment != nil { in, out := &in.Environment, &out.Environment *out = new(string) @@ -22150,6 +22870,16 @@ func (in *SetParameterParameters) DeepCopy() *SetParameterParameters { // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *SettingsInitParameters) DeepCopyInto(out *SettingsInitParameters) { *out = *in + if in.AutoOffsetReset != nil { + in, out := &in.AutoOffsetReset, &out.AutoOffsetReset + *out = new(string) + **out = **in + } + if in.Debug != nil { + in, out := &in.Debug, &out.Debug + *out = new(string) + **out = **in + } if in.EnableSSLCertificateVerification != nil { in, out := &in.EnableSSLCertificateVerification, &out.EnableSSLCertificateVerification *out = new(bool) @@ -22200,6 +22930,16 @@ func (in *SettingsInitParameters) DeepCopy() *SettingsInitParameters { // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *SettingsObservation) DeepCopyInto(out *SettingsObservation) { *out = *in + if in.AutoOffsetReset != nil { + in, out := &in.AutoOffsetReset, &out.AutoOffsetReset + *out = new(string) + **out = **in + } + if in.Debug != nil { + in, out := &in.Debug, &out.Debug + *out = new(string) + **out = **in + } if in.EnableSSLCertificateVerification != nil { in, out := &in.EnableSSLCertificateVerification, &out.EnableSSLCertificateVerification *out = new(bool) @@ -22245,6 +22985,16 @@ func (in *SettingsObservation) DeepCopy() *SettingsObservation { // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *SettingsParameters) DeepCopyInto(out *SettingsParameters) { *out = *in + if in.AutoOffsetReset != nil { + in, out := &in.AutoOffsetReset, &out.AutoOffsetReset + *out = new(string) + **out = **in + } + if in.Debug != nil { + in, out := &in.Debug, &out.Debug + *out = new(string) + **out = **in + } if in.EnableSSLCertificateVerification != nil { in, out := &in.EnableSSLCertificateVerification, &out.EnableSSLCertificateVerification *out = new(bool) @@ -24872,6 +25622,11 @@ func (in *UserSettingsInitParameters) DeepCopyInto(out *UserSettingsInitParamete *out = new(bool) **out = **in } + if in.AnyJoinDistinctRightTableKeys != nil { + in, out := &in.AnyJoinDistinctRightTableKeys, &out.AnyJoinDistinctRightTableKeys + *out = new(bool) + **out = **in + } if in.AsyncInsert != nil { in, out := &in.AsyncInsert, &out.AsyncInsert *out = new(bool) @@ -24927,6 +25682,21 @@ func (in *UserSettingsInitParameters) DeepCopyInto(out *UserSettingsInitParamete *out = new(string) **out = **in } + if in.DateTimeInputFormat != nil { + in, out := &in.DateTimeInputFormat, &out.DateTimeInputFormat + *out = new(string) + **out = **in + } + if in.DateTimeOutputFormat != nil { + in, out := &in.DateTimeOutputFormat, &out.DateTimeOutputFormat + *out = new(string) + **out = **in + } + if in.DeduplicateBlocksInDependentMaterializedViews != nil { + in, out := &in.DeduplicateBlocksInDependentMaterializedViews, &out.DeduplicateBlocksInDependentMaterializedViews + *out = new(bool) + **out = **in + } if in.DistinctOverflowMode != nil { in, out := &in.DistinctOverflowMode, &out.DistinctOverflowMode *out = new(string) @@ -24977,6 +25747,16 @@ func (in *UserSettingsInitParameters) DeepCopyInto(out *UserSettingsInitParamete *out = new(bool) **out = **in } + if in.FormatRegexp != nil { + in, out := &in.FormatRegexp, &out.FormatRegexp + *out = new(string) + **out = **in + } + if in.FormatRegexpSkipUnmatched != nil { + in, out := &in.FormatRegexpSkipUnmatched, &out.FormatRegexpSkipUnmatched + *out = new(bool) + **out = **in + } if in.GroupByOverflowMode != nil { in, out := &in.GroupByOverflowMode, &out.GroupByOverflowMode *out = new(string) @@ -25012,6 +25792,16 @@ func (in *UserSettingsInitParameters) DeepCopyInto(out *UserSettingsInitParamete *out = new(float64) **out = **in } + if in.HedgedConnectionTimeoutMs != nil { + in, out := &in.HedgedConnectionTimeoutMs, &out.HedgedConnectionTimeoutMs + *out = new(float64) + **out = **in + } + if in.IdleConnectionTimeout != nil { + in, out := &in.IdleConnectionTimeout, &out.IdleConnectionTimeout + *out = new(float64) + **out = **in + } if in.InputFormatDefaultsForOmittedFields != nil { in, out := &in.InputFormatDefaultsForOmittedFields, &out.InputFormatDefaultsForOmittedFields *out = new(bool) @@ -25022,6 +25812,11 @@ func (in *UserSettingsInitParameters) DeepCopyInto(out *UserSettingsInitParamete *out = new(bool) **out = **in } + if in.InputFormatNullAsDefault != nil { + in, out := &in.InputFormatNullAsDefault, &out.InputFormatNullAsDefault + *out = new(bool) + **out = **in + } if in.InputFormatParallelParsing != nil { in, out := &in.InputFormatParallelParsing, &out.InputFormatParallelParsing *out = new(bool) @@ -25032,6 +25827,11 @@ func (in *UserSettingsInitParameters) DeepCopyInto(out *UserSettingsInitParamete *out = new(bool) **out = **in } + if in.InputFormatWithNamesUseHeader != nil { + in, out := &in.InputFormatWithNamesUseHeader, &out.InputFormatWithNamesUseHeader + *out = new(bool) + **out = **in + } if in.InsertKeeperMaxRetries != nil { in, out := &in.InsertKeeperMaxRetries, &out.InsertKeeperMaxRetries *out = new(float64) @@ -25047,11 +25847,27 @@ func (in *UserSettingsInitParameters) DeepCopyInto(out *UserSettingsInitParamete *out = new(float64) **out = **in } + if in.InsertQuorumParallel != nil { + in, out := &in.InsertQuorumParallel, &out.InsertQuorumParallel + *out = new(bool) + **out = **in + } if in.InsertQuorumTimeout != nil { in, out := &in.InsertQuorumTimeout, &out.InsertQuorumTimeout *out = new(float64) **out = **in } + if in.JoinAlgorithm != nil { + in, out := &in.JoinAlgorithm, &out.JoinAlgorithm + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } if in.JoinOverflowMode != nil { in, out := &in.JoinOverflowMode, &out.JoinOverflowMode *out = new(string) @@ -25067,11 +25883,21 @@ func (in *UserSettingsInitParameters) DeepCopyInto(out *UserSettingsInitParamete *out = new(bool) **out = **in } + if in.LoadBalancing != nil { + in, out := &in.LoadBalancing, &out.LoadBalancing + *out = new(string) + **out = **in + } if in.LocalFilesystemReadMethod != nil { in, out := &in.LocalFilesystemReadMethod, &out.LocalFilesystemReadMethod *out = new(string) **out = **in } + if in.LogQueryThreads != nil { + in, out := &in.LogQueryThreads, &out.LogQueryThreads + *out = new(bool) + **out = **in + } if in.LowCardinalityAllowInNativeFormat != nil { in, out := &in.LowCardinalityAllowInNativeFormat, &out.LowCardinalityAllowInNativeFormat *out = new(bool) @@ -25167,6 +25993,11 @@ func (in *UserSettingsInitParameters) DeepCopyInto(out *UserSettingsInitParamete *out = new(float64) **out = **in } + if in.MaxInsertThreads != nil { + in, out := &in.MaxInsertThreads, &out.MaxInsertThreads + *out = new(float64) + **out = **in + } if in.MaxMemoryUsage != nil { in, out := &in.MaxMemoryUsage, &out.MaxMemoryUsage *out = new(float64) @@ -25367,6 +26198,11 @@ func (in *UserSettingsInitParameters) DeepCopyInto(out *UserSettingsInitParamete *out = new(bool) **out = **in } + if in.PreferLocalhostReplica != nil { + in, out := &in.PreferLocalhostReplica, &out.PreferLocalhostReplica + *out = new(bool) + **out = **in + } if in.Priority != nil { in, out := &in.Priority, &out.Priority *out = new(float64) @@ -25457,6 +26293,11 @@ func (in *UserSettingsInitParameters) DeepCopyInto(out *UserSettingsInitParamete *out = new(bool) **out = **in } + if in.UseHedgedRequests != nil { + in, out := &in.UseHedgedRequests, &out.UseHedgedRequests + *out = new(bool) + **out = **in + } if in.UseUncompressedCache != nil { in, out := &in.UseUncompressedCache, &out.UseUncompressedCache *out = new(bool) @@ -25507,6 +26348,11 @@ func (in *UserSettingsObservation) DeepCopyInto(out *UserSettingsObservation) { *out = new(bool) **out = **in } + if in.AnyJoinDistinctRightTableKeys != nil { + in, out := &in.AnyJoinDistinctRightTableKeys, &out.AnyJoinDistinctRightTableKeys + *out = new(bool) + **out = **in + } if in.AsyncInsert != nil { in, out := &in.AsyncInsert, &out.AsyncInsert *out = new(bool) @@ -25562,6 +26408,21 @@ func (in *UserSettingsObservation) DeepCopyInto(out *UserSettingsObservation) { *out = new(string) **out = **in } + if in.DateTimeInputFormat != nil { + in, out := &in.DateTimeInputFormat, &out.DateTimeInputFormat + *out = new(string) + **out = **in + } + if in.DateTimeOutputFormat != nil { + in, out := &in.DateTimeOutputFormat, &out.DateTimeOutputFormat + *out = new(string) + **out = **in + } + if in.DeduplicateBlocksInDependentMaterializedViews != nil { + in, out := &in.DeduplicateBlocksInDependentMaterializedViews, &out.DeduplicateBlocksInDependentMaterializedViews + *out = new(bool) + **out = **in + } if in.DistinctOverflowMode != nil { in, out := &in.DistinctOverflowMode, &out.DistinctOverflowMode *out = new(string) @@ -25612,6 +26473,16 @@ func (in *UserSettingsObservation) DeepCopyInto(out *UserSettingsObservation) { *out = new(bool) **out = **in } + if in.FormatRegexp != nil { + in, out := &in.FormatRegexp, &out.FormatRegexp + *out = new(string) + **out = **in + } + if in.FormatRegexpSkipUnmatched != nil { + in, out := &in.FormatRegexpSkipUnmatched, &out.FormatRegexpSkipUnmatched + *out = new(bool) + **out = **in + } if in.GroupByOverflowMode != nil { in, out := &in.GroupByOverflowMode, &out.GroupByOverflowMode *out = new(string) @@ -25647,6 +26518,16 @@ func (in *UserSettingsObservation) DeepCopyInto(out *UserSettingsObservation) { *out = new(float64) **out = **in } + if in.HedgedConnectionTimeoutMs != nil { + in, out := &in.HedgedConnectionTimeoutMs, &out.HedgedConnectionTimeoutMs + *out = new(float64) + **out = **in + } + if in.IdleConnectionTimeout != nil { + in, out := &in.IdleConnectionTimeout, &out.IdleConnectionTimeout + *out = new(float64) + **out = **in + } if in.InputFormatDefaultsForOmittedFields != nil { in, out := &in.InputFormatDefaultsForOmittedFields, &out.InputFormatDefaultsForOmittedFields *out = new(bool) @@ -25657,6 +26538,11 @@ func (in *UserSettingsObservation) DeepCopyInto(out *UserSettingsObservation) { *out = new(bool) **out = **in } + if in.InputFormatNullAsDefault != nil { + in, out := &in.InputFormatNullAsDefault, &out.InputFormatNullAsDefault + *out = new(bool) + **out = **in + } if in.InputFormatParallelParsing != nil { in, out := &in.InputFormatParallelParsing, &out.InputFormatParallelParsing *out = new(bool) @@ -25667,6 +26553,11 @@ func (in *UserSettingsObservation) DeepCopyInto(out *UserSettingsObservation) { *out = new(bool) **out = **in } + if in.InputFormatWithNamesUseHeader != nil { + in, out := &in.InputFormatWithNamesUseHeader, &out.InputFormatWithNamesUseHeader + *out = new(bool) + **out = **in + } if in.InsertKeeperMaxRetries != nil { in, out := &in.InsertKeeperMaxRetries, &out.InsertKeeperMaxRetries *out = new(float64) @@ -25682,11 +26573,27 @@ func (in *UserSettingsObservation) DeepCopyInto(out *UserSettingsObservation) { *out = new(float64) **out = **in } + if in.InsertQuorumParallel != nil { + in, out := &in.InsertQuorumParallel, &out.InsertQuorumParallel + *out = new(bool) + **out = **in + } if in.InsertQuorumTimeout != nil { in, out := &in.InsertQuorumTimeout, &out.InsertQuorumTimeout *out = new(float64) **out = **in } + if in.JoinAlgorithm != nil { + in, out := &in.JoinAlgorithm, &out.JoinAlgorithm + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } if in.JoinOverflowMode != nil { in, out := &in.JoinOverflowMode, &out.JoinOverflowMode *out = new(string) @@ -25702,11 +26609,21 @@ func (in *UserSettingsObservation) DeepCopyInto(out *UserSettingsObservation) { *out = new(bool) **out = **in } + if in.LoadBalancing != nil { + in, out := &in.LoadBalancing, &out.LoadBalancing + *out = new(string) + **out = **in + } if in.LocalFilesystemReadMethod != nil { in, out := &in.LocalFilesystemReadMethod, &out.LocalFilesystemReadMethod *out = new(string) **out = **in } + if in.LogQueryThreads != nil { + in, out := &in.LogQueryThreads, &out.LogQueryThreads + *out = new(bool) + **out = **in + } if in.LowCardinalityAllowInNativeFormat != nil { in, out := &in.LowCardinalityAllowInNativeFormat, &out.LowCardinalityAllowInNativeFormat *out = new(bool) @@ -25802,6 +26719,11 @@ func (in *UserSettingsObservation) DeepCopyInto(out *UserSettingsObservation) { *out = new(float64) **out = **in } + if in.MaxInsertThreads != nil { + in, out := &in.MaxInsertThreads, &out.MaxInsertThreads + *out = new(float64) + **out = **in + } if in.MaxMemoryUsage != nil { in, out := &in.MaxMemoryUsage, &out.MaxMemoryUsage *out = new(float64) @@ -26002,6 +26924,11 @@ func (in *UserSettingsObservation) DeepCopyInto(out *UserSettingsObservation) { *out = new(bool) **out = **in } + if in.PreferLocalhostReplica != nil { + in, out := &in.PreferLocalhostReplica, &out.PreferLocalhostReplica + *out = new(bool) + **out = **in + } if in.Priority != nil { in, out := &in.Priority, &out.Priority *out = new(float64) @@ -26092,6 +27019,11 @@ func (in *UserSettingsObservation) DeepCopyInto(out *UserSettingsObservation) { *out = new(bool) **out = **in } + if in.UseHedgedRequests != nil { + in, out := &in.UseHedgedRequests, &out.UseHedgedRequests + *out = new(bool) + **out = **in + } if in.UseUncompressedCache != nil { in, out := &in.UseUncompressedCache, &out.UseUncompressedCache *out = new(bool) @@ -26142,6 +27074,11 @@ func (in *UserSettingsParameters) DeepCopyInto(out *UserSettingsParameters) { *out = new(bool) **out = **in } + if in.AnyJoinDistinctRightTableKeys != nil { + in, out := &in.AnyJoinDistinctRightTableKeys, &out.AnyJoinDistinctRightTableKeys + *out = new(bool) + **out = **in + } if in.AsyncInsert != nil { in, out := &in.AsyncInsert, &out.AsyncInsert *out = new(bool) @@ -26197,6 +27134,21 @@ func (in *UserSettingsParameters) DeepCopyInto(out *UserSettingsParameters) { *out = new(string) **out = **in } + if in.DateTimeInputFormat != nil { + in, out := &in.DateTimeInputFormat, &out.DateTimeInputFormat + *out = new(string) + **out = **in + } + if in.DateTimeOutputFormat != nil { + in, out := &in.DateTimeOutputFormat, &out.DateTimeOutputFormat + *out = new(string) + **out = **in + } + if in.DeduplicateBlocksInDependentMaterializedViews != nil { + in, out := &in.DeduplicateBlocksInDependentMaterializedViews, &out.DeduplicateBlocksInDependentMaterializedViews + *out = new(bool) + **out = **in + } if in.DistinctOverflowMode != nil { in, out := &in.DistinctOverflowMode, &out.DistinctOverflowMode *out = new(string) @@ -26247,6 +27199,16 @@ func (in *UserSettingsParameters) DeepCopyInto(out *UserSettingsParameters) { *out = new(bool) **out = **in } + if in.FormatRegexp != nil { + in, out := &in.FormatRegexp, &out.FormatRegexp + *out = new(string) + **out = **in + } + if in.FormatRegexpSkipUnmatched != nil { + in, out := &in.FormatRegexpSkipUnmatched, &out.FormatRegexpSkipUnmatched + *out = new(bool) + **out = **in + } if in.GroupByOverflowMode != nil { in, out := &in.GroupByOverflowMode, &out.GroupByOverflowMode *out = new(string) @@ -26282,6 +27244,16 @@ func (in *UserSettingsParameters) DeepCopyInto(out *UserSettingsParameters) { *out = new(float64) **out = **in } + if in.HedgedConnectionTimeoutMs != nil { + in, out := &in.HedgedConnectionTimeoutMs, &out.HedgedConnectionTimeoutMs + *out = new(float64) + **out = **in + } + if in.IdleConnectionTimeout != nil { + in, out := &in.IdleConnectionTimeout, &out.IdleConnectionTimeout + *out = new(float64) + **out = **in + } if in.InputFormatDefaultsForOmittedFields != nil { in, out := &in.InputFormatDefaultsForOmittedFields, &out.InputFormatDefaultsForOmittedFields *out = new(bool) @@ -26292,6 +27264,11 @@ func (in *UserSettingsParameters) DeepCopyInto(out *UserSettingsParameters) { *out = new(bool) **out = **in } + if in.InputFormatNullAsDefault != nil { + in, out := &in.InputFormatNullAsDefault, &out.InputFormatNullAsDefault + *out = new(bool) + **out = **in + } if in.InputFormatParallelParsing != nil { in, out := &in.InputFormatParallelParsing, &out.InputFormatParallelParsing *out = new(bool) @@ -26302,6 +27279,11 @@ func (in *UserSettingsParameters) DeepCopyInto(out *UserSettingsParameters) { *out = new(bool) **out = **in } + if in.InputFormatWithNamesUseHeader != nil { + in, out := &in.InputFormatWithNamesUseHeader, &out.InputFormatWithNamesUseHeader + *out = new(bool) + **out = **in + } if in.InsertKeeperMaxRetries != nil { in, out := &in.InsertKeeperMaxRetries, &out.InsertKeeperMaxRetries *out = new(float64) @@ -26317,11 +27299,27 @@ func (in *UserSettingsParameters) DeepCopyInto(out *UserSettingsParameters) { *out = new(float64) **out = **in } + if in.InsertQuorumParallel != nil { + in, out := &in.InsertQuorumParallel, &out.InsertQuorumParallel + *out = new(bool) + **out = **in + } if in.InsertQuorumTimeout != nil { in, out := &in.InsertQuorumTimeout, &out.InsertQuorumTimeout *out = new(float64) **out = **in } + if in.JoinAlgorithm != nil { + in, out := &in.JoinAlgorithm, &out.JoinAlgorithm + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } if in.JoinOverflowMode != nil { in, out := &in.JoinOverflowMode, &out.JoinOverflowMode *out = new(string) @@ -26337,11 +27335,21 @@ func (in *UserSettingsParameters) DeepCopyInto(out *UserSettingsParameters) { *out = new(bool) **out = **in } + if in.LoadBalancing != nil { + in, out := &in.LoadBalancing, &out.LoadBalancing + *out = new(string) + **out = **in + } if in.LocalFilesystemReadMethod != nil { in, out := &in.LocalFilesystemReadMethod, &out.LocalFilesystemReadMethod *out = new(string) **out = **in } + if in.LogQueryThreads != nil { + in, out := &in.LogQueryThreads, &out.LogQueryThreads + *out = new(bool) + **out = **in + } if in.LowCardinalityAllowInNativeFormat != nil { in, out := &in.LowCardinalityAllowInNativeFormat, &out.LowCardinalityAllowInNativeFormat *out = new(bool) @@ -26437,6 +27445,11 @@ func (in *UserSettingsParameters) DeepCopyInto(out *UserSettingsParameters) { *out = new(float64) **out = **in } + if in.MaxInsertThreads != nil { + in, out := &in.MaxInsertThreads, &out.MaxInsertThreads + *out = new(float64) + **out = **in + } if in.MaxMemoryUsage != nil { in, out := &in.MaxMemoryUsage, &out.MaxMemoryUsage *out = new(float64) @@ -26637,6 +27650,11 @@ func (in *UserSettingsParameters) DeepCopyInto(out *UserSettingsParameters) { *out = new(bool) **out = **in } + if in.PreferLocalhostReplica != nil { + in, out := &in.PreferLocalhostReplica, &out.PreferLocalhostReplica + *out = new(bool) + **out = **in + } if in.Priority != nil { in, out := &in.Priority, &out.Priority *out = new(float64) @@ -26727,6 +27745,11 @@ func (in *UserSettingsParameters) DeepCopyInto(out *UserSettingsParameters) { *out = new(bool) **out = **in } + if in.UseHedgedRequests != nil { + in, out := &in.UseHedgedRequests, &out.UseHedgedRequests + *out = new(bool) + **out = **in + } if in.UseUncompressedCache != nil { in, out := &in.UseUncompressedCache, &out.UseUncompressedCache *out = new(bool) diff --git a/apis/mdb/v1alpha1/zz_generated.managed.go b/apis/mdb/v1alpha1/zz_generated.managed.go index 38aa0eb..8c7774a 100644 --- a/apis/mdb/v1alpha1/zz_generated.managed.go +++ b/apis/mdb/v1alpha1/zz_generated.managed.go @@ -784,66 +784,6 @@ func (mg *MySQLUser) SetWriteConnectionSecretToReference(r *xpv1.SecretReference mg.Spec.WriteConnectionSecretToReference = r } -// GetCondition of this OpensearchCluster. -func (mg *OpensearchCluster) GetCondition(ct xpv1.ConditionType) xpv1.Condition { - return mg.Status.GetCondition(ct) -} - -// GetDeletionPolicy of this OpensearchCluster. -func (mg *OpensearchCluster) GetDeletionPolicy() xpv1.DeletionPolicy { - return mg.Spec.DeletionPolicy -} - -// GetManagementPolicies of this OpensearchCluster. -func (mg *OpensearchCluster) GetManagementPolicies() xpv1.ManagementPolicies { - return mg.Spec.ManagementPolicies -} - -// GetProviderConfigReference of this OpensearchCluster. -func (mg *OpensearchCluster) GetProviderConfigReference() *xpv1.Reference { - return mg.Spec.ProviderConfigReference -} - -// GetPublishConnectionDetailsTo of this OpensearchCluster. -func (mg *OpensearchCluster) GetPublishConnectionDetailsTo() *xpv1.PublishConnectionDetailsTo { - return mg.Spec.PublishConnectionDetailsTo -} - -// GetWriteConnectionSecretToReference of this OpensearchCluster. -func (mg *OpensearchCluster) GetWriteConnectionSecretToReference() *xpv1.SecretReference { - return mg.Spec.WriteConnectionSecretToReference -} - -// SetConditions of this OpensearchCluster. -func (mg *OpensearchCluster) SetConditions(c ...xpv1.Condition) { - mg.Status.SetConditions(c...) -} - -// SetDeletionPolicy of this OpensearchCluster. -func (mg *OpensearchCluster) SetDeletionPolicy(r xpv1.DeletionPolicy) { - mg.Spec.DeletionPolicy = r -} - -// SetManagementPolicies of this OpensearchCluster. -func (mg *OpensearchCluster) SetManagementPolicies(r xpv1.ManagementPolicies) { - mg.Spec.ManagementPolicies = r -} - -// SetProviderConfigReference of this OpensearchCluster. -func (mg *OpensearchCluster) SetProviderConfigReference(r *xpv1.Reference) { - mg.Spec.ProviderConfigReference = r -} - -// SetPublishConnectionDetailsTo of this OpensearchCluster. -func (mg *OpensearchCluster) SetPublishConnectionDetailsTo(r *xpv1.PublishConnectionDetailsTo) { - mg.Spec.PublishConnectionDetailsTo = r -} - -// SetWriteConnectionSecretToReference of this OpensearchCluster. -func (mg *OpensearchCluster) SetWriteConnectionSecretToReference(r *xpv1.SecretReference) { - mg.Spec.WriteConnectionSecretToReference = r -} - // GetCondition of this PostgresqlCluster. func (mg *PostgresqlCluster) GetCondition(ct xpv1.ConditionType) xpv1.Condition { return mg.Status.GetCondition(ct) diff --git a/apis/mdb/v1alpha1/zz_generated.managedlist.go b/apis/mdb/v1alpha1/zz_generated.managedlist.go index c380846..ce2bff2 100644 --- a/apis/mdb/v1alpha1/zz_generated.managedlist.go +++ b/apis/mdb/v1alpha1/zz_generated.managedlist.go @@ -121,15 +121,6 @@ func (l *MySQLUserList) GetItems() []resource.Managed { return items } -// GetItems of this OpensearchClusterList. -func (l *OpensearchClusterList) GetItems() []resource.Managed { - items := make([]resource.Managed, len(l.Items)) - for i := range l.Items { - items[i] = &l.Items[i] - } - return items -} - // GetItems of this PostgresqlClusterList. func (l *PostgresqlClusterList) GetItems() []resource.Managed { items := make([]resource.Managed, len(l.Items)) diff --git a/apis/mdb/v1alpha1/zz_generated.resolvers.go b/apis/mdb/v1alpha1/zz_generated.resolvers.go index 5ef8070..aca208f 100644 --- a/apis/mdb/v1alpha1/zz_generated.resolvers.go +++ b/apis/mdb/v1alpha1/zz_generated.resolvers.go @@ -1258,189 +1258,6 @@ func (mg *MySQLUser) ResolveReferences(ctx context.Context, c client.Reader) err return nil } -// ResolveReferences of this OpensearchCluster. -func (mg *OpensearchCluster) ResolveReferences(ctx context.Context, c client.Reader) error { - r := reference.NewAPIResolver(c, mg) - - var rsp reference.ResolutionResponse - var mrsp reference.MultiResolutionResponse - var err error - - for i3 := 0; i3 < len(mg.Spec.ForProvider.Config); i3++ { - for i4 := 0; i4 < len(mg.Spec.ForProvider.Config[i3].Opensearch); i4++ { - for i5 := 0; i5 < len(mg.Spec.ForProvider.Config[i3].Opensearch[i4].NodeGroups); i5++ { - mrsp, err = r.ResolveMultiple(ctx, reference.MultiResolutionRequest{ - CurrentValues: reference.FromPtrValues(mg.Spec.ForProvider.Config[i3].Opensearch[i4].NodeGroups[i5].SubnetIds), - Extract: reference.ExternalName(), - References: mg.Spec.ForProvider.Config[i3].Opensearch[i4].NodeGroups[i5].SubnetIdsRefs, - Selector: mg.Spec.ForProvider.Config[i3].Opensearch[i4].NodeGroups[i5].SubnetIdsSelector, - To: reference.To{ - List: &v1alpha11.SubnetList{}, - Managed: &v1alpha11.Subnet{}, - }, - }) - if err != nil { - return errors.Wrap(err, "mg.Spec.ForProvider.Config[i3].Opensearch[i4].NodeGroups[i5].SubnetIds") - } - mg.Spec.ForProvider.Config[i3].Opensearch[i4].NodeGroups[i5].SubnetIds = reference.ToPtrValues(mrsp.ResolvedValues) - mg.Spec.ForProvider.Config[i3].Opensearch[i4].NodeGroups[i5].SubnetIdsRefs = mrsp.ResolvedReferences - - } - } - } - rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ - CurrentValue: reference.FromPtrValue(mg.Spec.ForProvider.FolderID), - Extract: reference.ExternalName(), - Reference: mg.Spec.ForProvider.FolderIDRef, - Selector: mg.Spec.ForProvider.FolderIDSelector, - To: reference.To{ - List: &v1alpha1.FolderList{}, - Managed: &v1alpha1.Folder{}, - }, - }) - if err != nil { - return errors.Wrap(err, "mg.Spec.ForProvider.FolderID") - } - mg.Spec.ForProvider.FolderID = reference.ToPtrValue(rsp.ResolvedValue) - mg.Spec.ForProvider.FolderIDRef = rsp.ResolvedReference - - rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ - CurrentValue: reference.FromPtrValue(mg.Spec.ForProvider.NetworkID), - Extract: reference.ExternalName(), - Reference: mg.Spec.ForProvider.NetworkIDRef, - Selector: mg.Spec.ForProvider.NetworkIDSelector, - To: reference.To{ - List: &v1alpha11.NetworkList{}, - Managed: &v1alpha11.Network{}, - }, - }) - if err != nil { - return errors.Wrap(err, "mg.Spec.ForProvider.NetworkID") - } - mg.Spec.ForProvider.NetworkID = reference.ToPtrValue(rsp.ResolvedValue) - mg.Spec.ForProvider.NetworkIDRef = rsp.ResolvedReference - - mrsp, err = r.ResolveMultiple(ctx, reference.MultiResolutionRequest{ - CurrentValues: reference.FromPtrValues(mg.Spec.ForProvider.SecurityGroupIds), - Extract: reference.ExternalName(), - References: mg.Spec.ForProvider.SecurityGroupIdsRefs, - Selector: mg.Spec.ForProvider.SecurityGroupIdsSelector, - To: reference.To{ - List: &v1alpha11.SecurityGroupList{}, - Managed: &v1alpha11.SecurityGroup{}, - }, - }) - if err != nil { - return errors.Wrap(err, "mg.Spec.ForProvider.SecurityGroupIds") - } - mg.Spec.ForProvider.SecurityGroupIds = reference.ToPtrValues(mrsp.ResolvedValues) - mg.Spec.ForProvider.SecurityGroupIdsRefs = mrsp.ResolvedReferences - - rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ - CurrentValue: reference.FromPtrValue(mg.Spec.ForProvider.ServiceAccountID), - Extract: reference.ExternalName(), - Reference: mg.Spec.ForProvider.ServiceAccountIDRef, - Selector: mg.Spec.ForProvider.ServiceAccountIDSelector, - To: reference.To{ - List: &v1alpha12.ServiceAccountList{}, - Managed: &v1alpha12.ServiceAccount{}, - }, - }) - if err != nil { - return errors.Wrap(err, "mg.Spec.ForProvider.ServiceAccountID") - } - mg.Spec.ForProvider.ServiceAccountID = reference.ToPtrValue(rsp.ResolvedValue) - mg.Spec.ForProvider.ServiceAccountIDRef = rsp.ResolvedReference - - for i3 := 0; i3 < len(mg.Spec.InitProvider.Config); i3++ { - for i4 := 0; i4 < len(mg.Spec.InitProvider.Config[i3].Opensearch); i4++ { - for i5 := 0; i5 < len(mg.Spec.InitProvider.Config[i3].Opensearch[i4].NodeGroups); i5++ { - mrsp, err = r.ResolveMultiple(ctx, reference.MultiResolutionRequest{ - CurrentValues: reference.FromPtrValues(mg.Spec.InitProvider.Config[i3].Opensearch[i4].NodeGroups[i5].SubnetIds), - Extract: reference.ExternalName(), - References: mg.Spec.InitProvider.Config[i3].Opensearch[i4].NodeGroups[i5].SubnetIdsRefs, - Selector: mg.Spec.InitProvider.Config[i3].Opensearch[i4].NodeGroups[i5].SubnetIdsSelector, - To: reference.To{ - List: &v1alpha11.SubnetList{}, - Managed: &v1alpha11.Subnet{}, - }, - }) - if err != nil { - return errors.Wrap(err, "mg.Spec.InitProvider.Config[i3].Opensearch[i4].NodeGroups[i5].SubnetIds") - } - mg.Spec.InitProvider.Config[i3].Opensearch[i4].NodeGroups[i5].SubnetIds = reference.ToPtrValues(mrsp.ResolvedValues) - mg.Spec.InitProvider.Config[i3].Opensearch[i4].NodeGroups[i5].SubnetIdsRefs = mrsp.ResolvedReferences - - } - } - } - rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ - CurrentValue: reference.FromPtrValue(mg.Spec.InitProvider.FolderID), - Extract: reference.ExternalName(), - Reference: mg.Spec.InitProvider.FolderIDRef, - Selector: mg.Spec.InitProvider.FolderIDSelector, - To: reference.To{ - List: &v1alpha1.FolderList{}, - Managed: &v1alpha1.Folder{}, - }, - }) - if err != nil { - return errors.Wrap(err, "mg.Spec.InitProvider.FolderID") - } - mg.Spec.InitProvider.FolderID = reference.ToPtrValue(rsp.ResolvedValue) - mg.Spec.InitProvider.FolderIDRef = rsp.ResolvedReference - - rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ - CurrentValue: reference.FromPtrValue(mg.Spec.InitProvider.NetworkID), - Extract: reference.ExternalName(), - Reference: mg.Spec.InitProvider.NetworkIDRef, - Selector: mg.Spec.InitProvider.NetworkIDSelector, - To: reference.To{ - List: &v1alpha11.NetworkList{}, - Managed: &v1alpha11.Network{}, - }, - }) - if err != nil { - return errors.Wrap(err, "mg.Spec.InitProvider.NetworkID") - } - mg.Spec.InitProvider.NetworkID = reference.ToPtrValue(rsp.ResolvedValue) - mg.Spec.InitProvider.NetworkIDRef = rsp.ResolvedReference - - mrsp, err = r.ResolveMultiple(ctx, reference.MultiResolutionRequest{ - CurrentValues: reference.FromPtrValues(mg.Spec.InitProvider.SecurityGroupIds), - Extract: reference.ExternalName(), - References: mg.Spec.InitProvider.SecurityGroupIdsRefs, - Selector: mg.Spec.InitProvider.SecurityGroupIdsSelector, - To: reference.To{ - List: &v1alpha11.SecurityGroupList{}, - Managed: &v1alpha11.SecurityGroup{}, - }, - }) - if err != nil { - return errors.Wrap(err, "mg.Spec.InitProvider.SecurityGroupIds") - } - mg.Spec.InitProvider.SecurityGroupIds = reference.ToPtrValues(mrsp.ResolvedValues) - mg.Spec.InitProvider.SecurityGroupIdsRefs = mrsp.ResolvedReferences - - rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ - CurrentValue: reference.FromPtrValue(mg.Spec.InitProvider.ServiceAccountID), - Extract: reference.ExternalName(), - Reference: mg.Spec.InitProvider.ServiceAccountIDRef, - Selector: mg.Spec.InitProvider.ServiceAccountIDSelector, - To: reference.To{ - List: &v1alpha12.ServiceAccountList{}, - Managed: &v1alpha12.ServiceAccount{}, - }, - }) - if err != nil { - return errors.Wrap(err, "mg.Spec.InitProvider.ServiceAccountID") - } - mg.Spec.InitProvider.ServiceAccountID = reference.ToPtrValue(rsp.ResolvedValue) - mg.Spec.InitProvider.ServiceAccountIDRef = rsp.ResolvedReference - - return nil -} - // ResolveReferences of this PostgresqlCluster. func (mg *PostgresqlCluster) ResolveReferences(ctx context.Context, c client.Reader) error { r := reference.NewAPIResolver(c, mg) diff --git a/apis/mdb/v1alpha1/zz_greenplumcluster_types.go b/apis/mdb/v1alpha1/zz_greenplumcluster_types.go index 2cf16f7..2e30b9a 100755 --- a/apis/mdb/v1alpha1/zz_greenplumcluster_types.go +++ b/apis/mdb/v1alpha1/zz_greenplumcluster_types.go @@ -9,6 +9,94 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type AnalyzeAndVacuumInitParameters struct { + + // Maximum duration of the ANALYZE operation, in seconds. The default value is 36000. As soon as this period expires, the ANALYZE operation will be forced to terminate. + AnalyzeTimeout *float64 `json:"analyzeTimeout,omitempty" tf:"analyze_timeout,omitempty"` + + // Time of day in 'HH:MM' format when scripts should run. + StartTime *string `json:"startTime,omitempty" tf:"start_time,omitempty"` + + // Maximum duration of the VACUUM operation, in seconds. The default value is 36000. As soon as this period expires, the VACUUM operation will be forced to terminate. + VacuumTimeout *float64 `json:"vacuumTimeout,omitempty" tf:"vacuum_timeout,omitempty"` +} + +type AnalyzeAndVacuumObservation struct { + + // Maximum duration of the ANALYZE operation, in seconds. The default value is 36000. As soon as this period expires, the ANALYZE operation will be forced to terminate. + AnalyzeTimeout *float64 `json:"analyzeTimeout,omitempty" tf:"analyze_timeout,omitempty"` + + // Time of day in 'HH:MM' format when scripts should run. + StartTime *string `json:"startTime,omitempty" tf:"start_time,omitempty"` + + // Maximum duration of the VACUUM operation, in seconds. The default value is 36000. As soon as this period expires, the VACUUM operation will be forced to terminate. + VacuumTimeout *float64 `json:"vacuumTimeout,omitempty" tf:"vacuum_timeout,omitempty"` +} + +type AnalyzeAndVacuumParameters struct { + + // Maximum duration of the ANALYZE operation, in seconds. The default value is 36000. As soon as this period expires, the ANALYZE operation will be forced to terminate. + // +kubebuilder:validation:Optional + AnalyzeTimeout *float64 `json:"analyzeTimeout,omitempty" tf:"analyze_timeout,omitempty"` + + // Time of day in 'HH:MM' format when scripts should run. + // +kubebuilder:validation:Optional + StartTime *string `json:"startTime,omitempty" tf:"start_time,omitempty"` + + // Maximum duration of the VACUUM operation, in seconds. The default value is 36000. As soon as this period expires, the VACUUM operation will be forced to terminate. + // +kubebuilder:validation:Optional + VacuumTimeout *float64 `json:"vacuumTimeout,omitempty" tf:"vacuum_timeout,omitempty"` +} + +type BackgroundActivitiesInitParameters struct { + + // Block to configure 'ANALYZE' and 'VACUUM' daily operations. + AnalyzeAndVacuum []AnalyzeAndVacuumInitParameters `json:"analyzeAndVacuum,omitempty" tf:"analyze_and_vacuum,omitempty"` + + // Block to configure script that kills long running queries that are in idle state. + QueryKillerIdle []QueryKillerIdleInitParameters `json:"queryKillerIdle,omitempty" tf:"query_killer_idle,omitempty"` + + // block to configure script that kills long running queries that are in idle in transaction state. + QueryKillerIdleInTransaction []QueryKillerIdleInTransactionInitParameters `json:"queryKillerIdleInTransaction,omitempty" tf:"query_killer_idle_in_transaction,omitempty"` + + // block to configure script that kills long running queries (in any state). + QueryKillerLongRunning []QueryKillerLongRunningInitParameters `json:"queryKillerLongRunning,omitempty" tf:"query_killer_long_running,omitempty"` +} + +type BackgroundActivitiesObservation struct { + + // Block to configure 'ANALYZE' and 'VACUUM' daily operations. + AnalyzeAndVacuum []AnalyzeAndVacuumObservation `json:"analyzeAndVacuum,omitempty" tf:"analyze_and_vacuum,omitempty"` + + // Block to configure script that kills long running queries that are in idle state. + QueryKillerIdle []QueryKillerIdleObservation `json:"queryKillerIdle,omitempty" tf:"query_killer_idle,omitempty"` + + // block to configure script that kills long running queries that are in idle in transaction state. + QueryKillerIdleInTransaction []QueryKillerIdleInTransactionObservation `json:"queryKillerIdleInTransaction,omitempty" tf:"query_killer_idle_in_transaction,omitempty"` + + // block to configure script that kills long running queries (in any state). + QueryKillerLongRunning []QueryKillerLongRunningObservation `json:"queryKillerLongRunning,omitempty" tf:"query_killer_long_running,omitempty"` +} + +type BackgroundActivitiesParameters struct { + + // Block to configure 'ANALYZE' and 'VACUUM' daily operations. + // +kubebuilder:validation:Optional + AnalyzeAndVacuum []AnalyzeAndVacuumParameters `json:"analyzeAndVacuum,omitempty" tf:"analyze_and_vacuum,omitempty"` + + // Block to configure script that kills long running queries that are in idle state. + // +kubebuilder:validation:Optional + QueryKillerIdle []QueryKillerIdleParameters `json:"queryKillerIdle,omitempty" tf:"query_killer_idle,omitempty"` + + // block to configure script that kills long running queries that are in idle in transaction state. + // +kubebuilder:validation:Optional + QueryKillerIdleInTransaction []QueryKillerIdleInTransactionParameters `json:"queryKillerIdleInTransaction,omitempty" tf:"query_killer_idle_in_transaction,omitempty"` + + // block to configure script that kills long running queries (in any state). + // +kubebuilder:validation:Optional + QueryKillerLongRunning []QueryKillerLongRunningParameters `json:"queryKillerLongRunning,omitempty" tf:"query_killer_long_running,omitempty"` +} + type GreenplumClusterAccessInitParameters struct { // Allow access for Yandex DataLens. @@ -19,6 +107,9 @@ type GreenplumClusterAccessInitParameters struct { // Allows access for SQL queries in the management console. WebSQL *bool `json:"webSql,omitempty" tf:"web_sql,omitempty"` + + // Allow access for Yandex Query + YandexQuery *bool `json:"yandexQuery,omitempty" tf:"yandex_query,omitempty"` } type GreenplumClusterAccessObservation struct { @@ -31,6 +122,9 @@ type GreenplumClusterAccessObservation struct { // Allows access for SQL queries in the management console. WebSQL *bool `json:"webSql,omitempty" tf:"web_sql,omitempty"` + + // Allow access for Yandex Query + YandexQuery *bool `json:"yandexQuery,omitempty" tf:"yandex_query,omitempty"` } type GreenplumClusterAccessParameters struct { @@ -46,6 +140,10 @@ type GreenplumClusterAccessParameters struct { // Allows access for SQL queries in the management console. // +kubebuilder:validation:Optional WebSQL *bool `json:"webSql,omitempty" tf:"web_sql,omitempty"` + + // Allow access for Yandex Query + // +kubebuilder:validation:Optional + YandexQuery *bool `json:"yandexQuery,omitempty" tf:"yandex_query,omitempty"` } type GreenplumClusterBackupWindowStartInitParameters struct { @@ -104,13 +202,15 @@ type GreenplumClusterInitParameters struct { // Sets whether the master hosts should get a public IP address on creation. Changing this parameter for an existing host is not supported at the moment. AssignPublicIP *bool `json:"assignPublicIp,omitempty" tf:"assign_public_ip,omitempty"` + BackgroundActivities []BackgroundActivitiesInitParameters `json:"backgroundActivities,omitempty" tf:"background_activities,omitempty"` + // Time to start the daily backup, in the UTC timezone. The structure is documented below. BackupWindowStart []GreenplumClusterBackupWindowStartInitParameters `json:"backupWindowStart,omitempty" tf:"backup_window_start,omitempty"` // Cloud Storage settings of the Greenplum cluster. The structure is documented below. CloudStorage []GreenplumClusterCloudStorageInitParameters `json:"cloudStorage,omitempty" tf:"cloud_storage,omitempty"` - // Inhibits deletion of the cluster. Can be either true or false. + // Inhibits deletion of the cluster. Can be either true or false. DeletionProtection *bool `json:"deletionProtection,omitempty" tf:"deletion_protection,omitempty"` // Description of the Greenplum cluster. @@ -119,8 +219,7 @@ type GreenplumClusterInitParameters struct { // Deployment environment of the Greenplum cluster. (PRODUCTION, PRESTABLE) Environment *string `json:"environment,omitempty" tf:"environment,omitempty"` - // The ID of the folder that the resource belongs to. If it - // is not provided, the default provider folder is used. + // The ID of the folder that the resource belongs to. If it is not provided, the default provider folder is used. // +crossplane:generate:reference:type=github.com/tagesjump/provider-upjet-yc/apis/resourcemanager/v1alpha1.Folder FolderID *string `json:"folderId,omitempty" tf:"folder_id,omitempty"` @@ -146,6 +245,10 @@ type GreenplumClusterInitParameters struct { // Number of hosts in master subcluster (1 or 2). MasterHostCount *float64 `json:"masterHostCount,omitempty" tf:"master_host_count,omitempty"` + // A list of IDs of the host groups to place master subclusters' VMs of the cluster on. + // +listType=set + MasterHostGroupIds []*string `json:"masterHostGroupIds,omitempty" tf:"master_host_group_ids,omitempty"` + // Settings for master subcluster. The structure is documented below. MasterSubcluster []MasterSubclusterInitParameters `json:"masterSubcluster,omitempty" tf:"master_subcluster,omitempty"` @@ -186,6 +289,10 @@ type GreenplumClusterInitParameters struct { // Number of hosts in segment subcluster (from 1 to 32). SegmentHostCount *float64 `json:"segmentHostCount,omitempty" tf:"segment_host_count,omitempty"` + // A list of IDs of the host groups to place segment subclusters' VMs of the cluster on. + // +listType=set + SegmentHostGroupIds []*string `json:"segmentHostGroupIds,omitempty" tf:"segment_host_group_ids,omitempty"` + // Number of segments on segment host (not more then 1 + RAM/8). SegmentInHost *float64 `json:"segmentInHost,omitempty" tf:"segment_in_host,omitempty"` @@ -264,6 +371,8 @@ type GreenplumClusterObservation struct { // Sets whether the master hosts should get a public IP address on creation. Changing this parameter for an existing host is not supported at the moment. AssignPublicIP *bool `json:"assignPublicIp,omitempty" tf:"assign_public_ip,omitempty"` + BackgroundActivities []BackgroundActivitiesObservation `json:"backgroundActivities,omitempty" tf:"background_activities,omitempty"` + // Time to start the daily backup, in the UTC timezone. The structure is documented below. BackupWindowStart []GreenplumClusterBackupWindowStartObservation `json:"backupWindowStart,omitempty" tf:"backup_window_start,omitempty"` @@ -273,7 +382,7 @@ type GreenplumClusterObservation struct { // Creation timestamp of the cluster. CreatedAt *string `json:"createdAt,omitempty" tf:"created_at,omitempty"` - // Inhibits deletion of the cluster. Can be either true or false. + // Inhibits deletion of the cluster. Can be either true or false. DeletionProtection *bool `json:"deletionProtection,omitempty" tf:"deletion_protection,omitempty"` // Description of the Greenplum cluster. @@ -282,8 +391,7 @@ type GreenplumClusterObservation struct { // Deployment environment of the Greenplum cluster. (PRODUCTION, PRESTABLE) Environment *string `json:"environment,omitempty" tf:"environment,omitempty"` - // The ID of the folder that the resource belongs to. If it - // is not provided, the default provider folder is used. + // The ID of the folder that the resource belongs to. If it is not provided, the default provider folder is used. FolderID *string `json:"folderId,omitempty" tf:"folder_id,omitempty"` // Greenplum cluster config. Detail info in "Greenplum cluster settings" section (documented below). @@ -305,6 +413,10 @@ type GreenplumClusterObservation struct { // Number of hosts in master subcluster (1 or 2). MasterHostCount *float64 `json:"masterHostCount,omitempty" tf:"master_host_count,omitempty"` + // A list of IDs of the host groups to place master subclusters' VMs of the cluster on. + // +listType=set + MasterHostGroupIds []*string `json:"masterHostGroupIds,omitempty" tf:"master_host_group_ids,omitempty"` + // (Computed) Info about hosts in master subcluster. The structure is documented below. MasterHosts []MasterHostsObservation `json:"masterHosts,omitempty" tf:"master_hosts,omitempty"` @@ -330,6 +442,10 @@ type GreenplumClusterObservation struct { // Number of hosts in segment subcluster (from 1 to 32). SegmentHostCount *float64 `json:"segmentHostCount,omitempty" tf:"segment_host_count,omitempty"` + // A list of IDs of the host groups to place segment subclusters' VMs of the cluster on. + // +listType=set + SegmentHostGroupIds []*string `json:"segmentHostGroupIds,omitempty" tf:"segment_host_group_ids,omitempty"` + // (Computed) Info about hosts in segment subcluster. The structure is documented below. SegmentHosts []SegmentHostsObservation `json:"segmentHosts,omitempty" tf:"segment_hosts,omitempty"` @@ -365,6 +481,9 @@ type GreenplumClusterParameters struct { // +kubebuilder:validation:Optional AssignPublicIP *bool `json:"assignPublicIp,omitempty" tf:"assign_public_ip,omitempty"` + // +kubebuilder:validation:Optional + BackgroundActivities []BackgroundActivitiesParameters `json:"backgroundActivities,omitempty" tf:"background_activities,omitempty"` + // Time to start the daily backup, in the UTC timezone. The structure is documented below. // +kubebuilder:validation:Optional BackupWindowStart []GreenplumClusterBackupWindowStartParameters `json:"backupWindowStart,omitempty" tf:"backup_window_start,omitempty"` @@ -373,7 +492,7 @@ type GreenplumClusterParameters struct { // +kubebuilder:validation:Optional CloudStorage []GreenplumClusterCloudStorageParameters `json:"cloudStorage,omitempty" tf:"cloud_storage,omitempty"` - // Inhibits deletion of the cluster. Can be either true or false. + // Inhibits deletion of the cluster. Can be either true or false. // +kubebuilder:validation:Optional DeletionProtection *bool `json:"deletionProtection,omitempty" tf:"deletion_protection,omitempty"` @@ -385,8 +504,7 @@ type GreenplumClusterParameters struct { // +kubebuilder:validation:Optional Environment *string `json:"environment,omitempty" tf:"environment,omitempty"` - // The ID of the folder that the resource belongs to. If it - // is not provided, the default provider folder is used. + // The ID of the folder that the resource belongs to. If it is not provided, the default provider folder is used. // +crossplane:generate:reference:type=github.com/tagesjump/provider-upjet-yc/apis/resourcemanager/v1alpha1.Folder // +kubebuilder:validation:Optional FolderID *string `json:"folderId,omitempty" tf:"folder_id,omitempty"` @@ -417,6 +535,11 @@ type GreenplumClusterParameters struct { // +kubebuilder:validation:Optional MasterHostCount *float64 `json:"masterHostCount,omitempty" tf:"master_host_count,omitempty"` + // A list of IDs of the host groups to place master subclusters' VMs of the cluster on. + // +kubebuilder:validation:Optional + // +listType=set + MasterHostGroupIds []*string `json:"masterHostGroupIds,omitempty" tf:"master_host_group_ids,omitempty"` + // Settings for master subcluster. The structure is documented below. // +kubebuilder:validation:Optional MasterSubcluster []MasterSubclusterParameters `json:"masterSubcluster,omitempty" tf:"master_subcluster,omitempty"` @@ -464,6 +587,11 @@ type GreenplumClusterParameters struct { // +kubebuilder:validation:Optional SegmentHostCount *float64 `json:"segmentHostCount,omitempty" tf:"segment_host_count,omitempty"` + // A list of IDs of the host groups to place segment subclusters' VMs of the cluster on. + // +kubebuilder:validation:Optional + // +listType=set + SegmentHostGroupIds []*string `json:"segmentHostGroupIds,omitempty" tf:"segment_host_group_ids,omitempty"` + // Number of segments on segment host (not more then 1 + RAM/8). // +kubebuilder:validation:Optional SegmentInHost *float64 `json:"segmentInHost,omitempty" tf:"segment_in_host,omitempty"` @@ -702,6 +830,123 @@ type PxfConfigParameters struct { Xmx *float64 `json:"xmx,omitempty" tf:"xmx,omitempty"` } +type QueryKillerIdleInTransactionInitParameters struct { + + // Flag that indicates whether script is enabled. + Enable *bool `json:"enable,omitempty" tf:"enable,omitempty"` + + // List of users to ignore when considering queries to terminate. + IgnoreUsers []*string `json:"ignoreUsers,omitempty" tf:"ignore_users,omitempty"` + + // Maximum duration for this type of queries (in seconds). + MaxAge *float64 `json:"maxAge,omitempty" tf:"max_age,omitempty"` +} + +type QueryKillerIdleInTransactionObservation struct { + + // Flag that indicates whether script is enabled. + Enable *bool `json:"enable,omitempty" tf:"enable,omitempty"` + + // List of users to ignore when considering queries to terminate. + IgnoreUsers []*string `json:"ignoreUsers,omitempty" tf:"ignore_users,omitempty"` + + // Maximum duration for this type of queries (in seconds). + MaxAge *float64 `json:"maxAge,omitempty" tf:"max_age,omitempty"` +} + +type QueryKillerIdleInTransactionParameters struct { + + // Flag that indicates whether script is enabled. + // +kubebuilder:validation:Optional + Enable *bool `json:"enable,omitempty" tf:"enable,omitempty"` + + // List of users to ignore when considering queries to terminate. + // +kubebuilder:validation:Optional + IgnoreUsers []*string `json:"ignoreUsers,omitempty" tf:"ignore_users,omitempty"` + + // Maximum duration for this type of queries (in seconds). + // +kubebuilder:validation:Optional + MaxAge *float64 `json:"maxAge,omitempty" tf:"max_age,omitempty"` +} + +type QueryKillerIdleInitParameters struct { + + // Flag that indicates whether script is enabled. + Enable *bool `json:"enable,omitempty" tf:"enable,omitempty"` + + // List of users to ignore when considering queries to terminate. + IgnoreUsers []*string `json:"ignoreUsers,omitempty" tf:"ignore_users,omitempty"` + + // Maximum duration for this type of queries (in seconds). + MaxAge *float64 `json:"maxAge,omitempty" tf:"max_age,omitempty"` +} + +type QueryKillerIdleObservation struct { + + // Flag that indicates whether script is enabled. + Enable *bool `json:"enable,omitempty" tf:"enable,omitempty"` + + // List of users to ignore when considering queries to terminate. + IgnoreUsers []*string `json:"ignoreUsers,omitempty" tf:"ignore_users,omitempty"` + + // Maximum duration for this type of queries (in seconds). + MaxAge *float64 `json:"maxAge,omitempty" tf:"max_age,omitempty"` +} + +type QueryKillerIdleParameters struct { + + // Flag that indicates whether script is enabled. + // +kubebuilder:validation:Optional + Enable *bool `json:"enable,omitempty" tf:"enable,omitempty"` + + // List of users to ignore when considering queries to terminate. + // +kubebuilder:validation:Optional + IgnoreUsers []*string `json:"ignoreUsers,omitempty" tf:"ignore_users,omitempty"` + + // Maximum duration for this type of queries (in seconds). + // +kubebuilder:validation:Optional + MaxAge *float64 `json:"maxAge,omitempty" tf:"max_age,omitempty"` +} + +type QueryKillerLongRunningInitParameters struct { + + // Flag that indicates whether script is enabled. + Enable *bool `json:"enable,omitempty" tf:"enable,omitempty"` + + // List of users to ignore when considering queries to terminate. + IgnoreUsers []*string `json:"ignoreUsers,omitempty" tf:"ignore_users,omitempty"` + + // Maximum duration for this type of queries (in seconds). + MaxAge *float64 `json:"maxAge,omitempty" tf:"max_age,omitempty"` +} + +type QueryKillerLongRunningObservation struct { + + // Flag that indicates whether script is enabled. + Enable *bool `json:"enable,omitempty" tf:"enable,omitempty"` + + // List of users to ignore when considering queries to terminate. + IgnoreUsers []*string `json:"ignoreUsers,omitempty" tf:"ignore_users,omitempty"` + + // Maximum duration for this type of queries (in seconds). + MaxAge *float64 `json:"maxAge,omitempty" tf:"max_age,omitempty"` +} + +type QueryKillerLongRunningParameters struct { + + // Flag that indicates whether script is enabled. + // +kubebuilder:validation:Optional + Enable *bool `json:"enable,omitempty" tf:"enable,omitempty"` + + // List of users to ignore when considering queries to terminate. + // +kubebuilder:validation:Optional + IgnoreUsers []*string `json:"ignoreUsers,omitempty" tf:"ignore_users,omitempty"` + + // Maximum duration for this type of queries (in seconds). + // +kubebuilder:validation:Optional + MaxAge *float64 `json:"maxAge,omitempty" tf:"max_age,omitempty"` +} + type SegmentHostsInitParameters struct { } diff --git a/apis/mdb/v1alpha1/zz_kafkacluster_types.go b/apis/mdb/v1alpha1/zz_kafkacluster_types.go index 3cbe7f0..e1bbd8f 100755 --- a/apis/mdb/v1alpha1/zz_kafkacluster_types.go +++ b/apis/mdb/v1alpha1/zz_kafkacluster_types.go @@ -81,8 +81,7 @@ type ConfigZookeeperResourcesInitParameters struct { // Volume of the storage available to a ZooKeeper host, in gigabytes. DiskSize *float64 `json:"diskSize,omitempty" tf:"disk_size,omitempty"` - // Type of the storage of ZooKeeper hosts. - // For more information see the official documentation. + // Type of the storage of ZooKeeper hosts. For more information see the official documentation. DiskTypeID *string `json:"diskTypeId,omitempty" tf:"disk_type_id,omitempty"` ResourcePresetID *string `json:"resourcePresetId,omitempty" tf:"resource_preset_id,omitempty"` @@ -93,8 +92,7 @@ type ConfigZookeeperResourcesObservation struct { // Volume of the storage available to a ZooKeeper host, in gigabytes. DiskSize *float64 `json:"diskSize,omitempty" tf:"disk_size,omitempty"` - // Type of the storage of ZooKeeper hosts. - // For more information see the official documentation. + // Type of the storage of ZooKeeper hosts. For more information see the official documentation. DiskTypeID *string `json:"diskTypeId,omitempty" tf:"disk_type_id,omitempty"` ResourcePresetID *string `json:"resourcePresetId,omitempty" tf:"resource_preset_id,omitempty"` @@ -106,8 +104,7 @@ type ConfigZookeeperResourcesParameters struct { // +kubebuilder:validation:Optional DiskSize *float64 `json:"diskSize,omitempty" tf:"disk_size,omitempty"` - // Type of the storage of ZooKeeper hosts. - // For more information see the official documentation. + // Type of the storage of ZooKeeper hosts. For more information see the official documentation. // +kubebuilder:validation:Optional DiskTypeID *string `json:"diskTypeId,omitempty" tf:"disk_type_id,omitempty"` @@ -115,6 +112,45 @@ type ConfigZookeeperResourcesParameters struct { ResourcePresetID *string `json:"resourcePresetId,omitempty" tf:"resource_preset_id,omitempty"` } +type DiskSizeAutoscalingInitParameters struct { + + // Maximum possible size of disk in bytes. + DiskSizeLimit *float64 `json:"diskSizeLimit,omitempty" tf:"disk_size_limit,omitempty"` + + // Percent of disk utilization. Disk will autoscale immediately, if this threshold reached. Value is between 0 and 100. Default value is 0 (autoscaling disabled). Must be not less then 'planned_usage_threshold' value. + EmergencyUsageThreshold *float64 `json:"emergencyUsageThreshold,omitempty" tf:"emergency_usage_threshold,omitempty"` + + // Percent of disk utilization. During maintenance disk will autoscale, if this threshold reached. Value is between 0 and 100. Default value is 0 (autoscaling disabled). + PlannedUsageThreshold *float64 `json:"plannedUsageThreshold,omitempty" tf:"planned_usage_threshold,omitempty"` +} + +type DiskSizeAutoscalingObservation struct { + + // Maximum possible size of disk in bytes. + DiskSizeLimit *float64 `json:"diskSizeLimit,omitempty" tf:"disk_size_limit,omitempty"` + + // Percent of disk utilization. Disk will autoscale immediately, if this threshold reached. Value is between 0 and 100. Default value is 0 (autoscaling disabled). Must be not less then 'planned_usage_threshold' value. + EmergencyUsageThreshold *float64 `json:"emergencyUsageThreshold,omitempty" tf:"emergency_usage_threshold,omitempty"` + + // Percent of disk utilization. During maintenance disk will autoscale, if this threshold reached. Value is between 0 and 100. Default value is 0 (autoscaling disabled). + PlannedUsageThreshold *float64 `json:"plannedUsageThreshold,omitempty" tf:"planned_usage_threshold,omitempty"` +} + +type DiskSizeAutoscalingParameters struct { + + // Maximum possible size of disk in bytes. + // +kubebuilder:validation:Optional + DiskSizeLimit *float64 `json:"diskSizeLimit" tf:"disk_size_limit,omitempty"` + + // Percent of disk utilization. Disk will autoscale immediately, if this threshold reached. Value is between 0 and 100. Default value is 0 (autoscaling disabled). Must be not less then 'planned_usage_threshold' value. + // +kubebuilder:validation:Optional + EmergencyUsageThreshold *float64 `json:"emergencyUsageThreshold,omitempty" tf:"emergency_usage_threshold,omitempty"` + + // Percent of disk utilization. During maintenance disk will autoscale, if this threshold reached. Value is between 0 and 100. Default value is 0 (autoscaling disabled). + // +kubebuilder:validation:Optional + PlannedUsageThreshold *float64 `json:"plannedUsageThreshold,omitempty" tf:"planned_usage_threshold,omitempty"` +} + type KafkaClusterConfigInitParameters struct { // Access policy to the Kafka cluster. The structure is documented below. @@ -126,6 +162,9 @@ type KafkaClusterConfigInitParameters struct { // Count of brokers per availability zone. The default is 1. BrokersCount *float64 `json:"brokersCount,omitempty" tf:"brokers_count,omitempty"` + // Disk autoscaling settings of the Kafka cluster. The structure is documented below. + DiskSizeAutoscaling []DiskSizeAutoscalingInitParameters `json:"diskSizeAutoscaling,omitempty" tf:"disk_size_autoscaling,omitempty"` + // Configuration of the Kafka subcluster. The structure is documented below. Kafka []ConfigKafkaInitParameters `json:"kafka,omitempty" tf:"kafka,omitempty"` @@ -155,6 +194,9 @@ type KafkaClusterConfigObservation struct { // Count of brokers per availability zone. The default is 1. BrokersCount *float64 `json:"brokersCount,omitempty" tf:"brokers_count,omitempty"` + // Disk autoscaling settings of the Kafka cluster. The structure is documented below. + DiskSizeAutoscaling []DiskSizeAutoscalingObservation `json:"diskSizeAutoscaling,omitempty" tf:"disk_size_autoscaling,omitempty"` + // Configuration of the Kafka subcluster. The structure is documented below. Kafka []ConfigKafkaObservation `json:"kafka,omitempty" tf:"kafka,omitempty"` @@ -187,6 +229,10 @@ type KafkaClusterConfigParameters struct { // +kubebuilder:validation:Optional BrokersCount *float64 `json:"brokersCount,omitempty" tf:"brokers_count,omitempty"` + // Disk autoscaling settings of the Kafka cluster. The structure is documented below. + // +kubebuilder:validation:Optional + DiskSizeAutoscaling []DiskSizeAutoscalingParameters `json:"diskSizeAutoscaling,omitempty" tf:"disk_size_autoscaling,omitempty"` + // Configuration of the Kafka subcluster. The structure is documented below. // +kubebuilder:validation:Optional Kafka []ConfigKafkaParameters `json:"kafka" tf:"kafka,omitempty"` @@ -243,14 +289,13 @@ type KafkaClusterInitParameters struct { // Configuration of the Kafka cluster. The structure is documented below. Config []KafkaClusterConfigInitParameters `json:"config,omitempty" tf:"config,omitempty"` - // Inhibits deletion of the cluster. Can be either true or false. + // Inhibits deletion of the cluster. Can be either true or false. DeletionProtection *bool `json:"deletionProtection,omitempty" tf:"deletion_protection,omitempty"` // Description of the Kafka cluster. Description *string `json:"description,omitempty" tf:"description,omitempty"` - // Deployment environment of the Kafka cluster. Can be either PRESTABLE or PRODUCTION. - // The default is PRODUCTION. + // Deployment environment of the Kafka cluster. Can be either PRESTABLE or PRODUCTION. The default is PRODUCTION. Environment *string `json:"environment,omitempty" tf:"environment,omitempty"` // The ID of the folder that the resource belongs to. If it is not provided, the default provider folder is used. @@ -370,21 +415,19 @@ type KafkaClusterObservation struct { // Timestamp of cluster creation. CreatedAt *string `json:"createdAt,omitempty" tf:"created_at,omitempty"` - // Inhibits deletion of the cluster. Can be either true or false. + // Inhibits deletion of the cluster. Can be either true or false. DeletionProtection *bool `json:"deletionProtection,omitempty" tf:"deletion_protection,omitempty"` // Description of the Kafka cluster. Description *string `json:"description,omitempty" tf:"description,omitempty"` - // Deployment environment of the Kafka cluster. Can be either PRESTABLE or PRODUCTION. - // The default is PRODUCTION. + // Deployment environment of the Kafka cluster. Can be either PRESTABLE or PRODUCTION. The default is PRODUCTION. Environment *string `json:"environment,omitempty" tf:"environment,omitempty"` // The ID of the folder that the resource belongs to. If it is not provided, the default provider folder is used. FolderID *string `json:"folderId,omitempty" tf:"folder_id,omitempty"` - // Aggregated health of the cluster. Can be either ALIVE, DEGRADED, DEAD or HEALTH_UNKNOWN. - // For more information see health field of JSON representation in the official documentation. + // Aggregated health of the cluster. Can be either ALIVE, DEGRADED, DEAD or HEALTH_UNKNOWN. For more information see health field of JSON representation in the official documentation. Health *string `json:"health,omitempty" tf:"health,omitempty"` // A host of the Kafka cluster. The structure is documented below. @@ -413,8 +456,7 @@ type KafkaClusterObservation struct { // +listType=set SecurityGroupIds []*string `json:"securityGroupIds,omitempty" tf:"security_group_ids,omitempty"` - // Status of the cluster. Can be either CREATING, STARTING, RUNNING, UPDATING, STOPPING, STOPPED, ERROR or STATUS_UNKNOWN. - // For more information see status field of JSON representation in the official documentation. + // Status of the cluster. Can be either CREATING, STARTING, RUNNING, UPDATING, STOPPING, STOPPED, ERROR or STATUS_UNKNOWN. For more information see status field of JSON representation in the official documentation. Status *string `json:"status,omitempty" tf:"status,omitempty"` // IDs of the subnets, to which the Kafka cluster belongs. @@ -433,7 +475,7 @@ type KafkaClusterParameters struct { // +kubebuilder:validation:Optional Config []KafkaClusterConfigParameters `json:"config,omitempty" tf:"config,omitempty"` - // Inhibits deletion of the cluster. Can be either true or false. + // Inhibits deletion of the cluster. Can be either true or false. // +kubebuilder:validation:Optional DeletionProtection *bool `json:"deletionProtection,omitempty" tf:"deletion_protection,omitempty"` @@ -441,8 +483,7 @@ type KafkaClusterParameters struct { // +kubebuilder:validation:Optional Description *string `json:"description,omitempty" tf:"description,omitempty"` - // Deployment environment of the Kafka cluster. Can be either PRESTABLE or PRODUCTION. - // The default is PRODUCTION. + // Deployment environment of the Kafka cluster. Can be either PRESTABLE or PRODUCTION. The default is PRODUCTION. // +kubebuilder:validation:Optional Environment *string `json:"environment,omitempty" tf:"environment,omitempty"` @@ -565,9 +606,7 @@ type KafkaClusterUserParameters struct { type KafkaConfigInitParameters struct { AutoCreateTopicsEnable *bool `json:"autoCreateTopicsEnable,omitempty" tf:"auto_create_topics_enable,omitempty"` - // Kafka topic settings. For more information, see - // the official documentation - // and the Kafka documentation. + // Kafka topic settings. For more information, see the official documentation and the Kafka documentation. CompressionType *string `json:"compressionType,omitempty" tf:"compression_type,omitempty"` DefaultReplicationFactor *string `json:"defaultReplicationFactor,omitempty" tf:"default_replication_factor,omitempty"` @@ -612,9 +651,7 @@ type KafkaConfigInitParameters struct { type KafkaConfigObservation struct { AutoCreateTopicsEnable *bool `json:"autoCreateTopicsEnable,omitempty" tf:"auto_create_topics_enable,omitempty"` - // Kafka topic settings. For more information, see - // the official documentation - // and the Kafka documentation. + // Kafka topic settings. For more information, see the official documentation and the Kafka documentation. CompressionType *string `json:"compressionType,omitempty" tf:"compression_type,omitempty"` DefaultReplicationFactor *string `json:"defaultReplicationFactor,omitempty" tf:"default_replication_factor,omitempty"` @@ -661,9 +698,7 @@ type KafkaConfigParameters struct { // +kubebuilder:validation:Optional AutoCreateTopicsEnable *bool `json:"autoCreateTopicsEnable,omitempty" tf:"auto_create_topics_enable,omitempty"` - // Kafka topic settings. For more information, see - // the official documentation - // and the Kafka documentation. + // Kafka topic settings. For more information, see the official documentation and the Kafka documentation. // +kubebuilder:validation:Optional CompressionType *string `json:"compressionType,omitempty" tf:"compression_type,omitempty"` @@ -729,8 +764,7 @@ type KafkaResourcesInitParameters struct { // Volume of the storage available to a ZooKeeper host, in gigabytes. DiskSize *float64 `json:"diskSize,omitempty" tf:"disk_size,omitempty"` - // Type of the storage of ZooKeeper hosts. - // For more information see the official documentation. + // Type of the storage of ZooKeeper hosts. For more information see the official documentation. DiskTypeID *string `json:"diskTypeId,omitempty" tf:"disk_type_id,omitempty"` ResourcePresetID *string `json:"resourcePresetId,omitempty" tf:"resource_preset_id,omitempty"` @@ -741,8 +775,7 @@ type KafkaResourcesObservation struct { // Volume of the storage available to a ZooKeeper host, in gigabytes. DiskSize *float64 `json:"diskSize,omitempty" tf:"disk_size,omitempty"` - // Type of the storage of ZooKeeper hosts. - // For more information see the official documentation. + // Type of the storage of ZooKeeper hosts. For more information see the official documentation. DiskTypeID *string `json:"diskTypeId,omitempty" tf:"disk_type_id,omitempty"` ResourcePresetID *string `json:"resourcePresetId,omitempty" tf:"resource_preset_id,omitempty"` @@ -754,8 +787,7 @@ type KafkaResourcesParameters struct { // +kubebuilder:validation:Optional DiskSize *float64 `json:"diskSize" tf:"disk_size,omitempty"` - // Type of the storage of ZooKeeper hosts. - // For more information see the official documentation. + // Type of the storage of ZooKeeper hosts. For more information see the official documentation. // +kubebuilder:validation:Optional DiskTypeID *string `json:"diskTypeId" tf:"disk_type_id,omitempty"` @@ -766,9 +798,7 @@ type KafkaResourcesParameters struct { type TopicConfigInitParameters struct { CleanupPolicy *string `json:"cleanupPolicy,omitempty" tf:"cleanup_policy,omitempty"` - // Kafka topic settings. For more information, see - // the official documentation - // and the Kafka documentation. + // Kafka topic settings. For more information, see the official documentation and the Kafka documentation. CompressionType *string `json:"compressionType,omitempty" tf:"compression_type,omitempty"` DeleteRetentionMs *string `json:"deleteRetentionMs,omitempty" tf:"delete_retention_ms,omitempty"` @@ -797,9 +827,7 @@ type TopicConfigInitParameters struct { type TopicConfigObservation struct { CleanupPolicy *string `json:"cleanupPolicy,omitempty" tf:"cleanup_policy,omitempty"` - // Kafka topic settings. For more information, see - // the official documentation - // and the Kafka documentation. + // Kafka topic settings. For more information, see the official documentation and the Kafka documentation. CompressionType *string `json:"compressionType,omitempty" tf:"compression_type,omitempty"` DeleteRetentionMs *string `json:"deleteRetentionMs,omitempty" tf:"delete_retention_ms,omitempty"` @@ -830,9 +858,7 @@ type TopicConfigParameters struct { // +kubebuilder:validation:Optional CleanupPolicy *string `json:"cleanupPolicy,omitempty" tf:"cleanup_policy,omitempty"` - // Kafka topic settings. For more information, see - // the official documentation - // and the Kafka documentation. + // Kafka topic settings. For more information, see the official documentation and the Kafka documentation. // +kubebuilder:validation:Optional CompressionType *string `json:"compressionType,omitempty" tf:"compression_type,omitempty"` diff --git a/apis/mdb/v1alpha1/zz_kafkatopic_types.go b/apis/mdb/v1alpha1/zz_kafkatopic_types.go index d9711c8..312b9af 100755 --- a/apis/mdb/v1alpha1/zz_kafkatopic_types.go +++ b/apis/mdb/v1alpha1/zz_kafkatopic_types.go @@ -86,9 +86,7 @@ type KafkaTopicParameters_2 struct { type KafkaTopicTopicConfigInitParameters struct { - // Kafka topic settings. For more information, see - // the official documentation - // and the Kafka documentation. + // Kafka topic settings. For more information, see the official documentation and the Kafka documentation. CleanupPolicy *string `json:"cleanupPolicy,omitempty" tf:"cleanup_policy,omitempty"` CompressionType *string `json:"compressionType,omitempty" tf:"compression_type,omitempty"` @@ -118,9 +116,7 @@ type KafkaTopicTopicConfigInitParameters struct { type KafkaTopicTopicConfigObservation struct { - // Kafka topic settings. For more information, see - // the official documentation - // and the Kafka documentation. + // Kafka topic settings. For more information, see the official documentation and the Kafka documentation. CleanupPolicy *string `json:"cleanupPolicy,omitempty" tf:"cleanup_policy,omitempty"` CompressionType *string `json:"compressionType,omitempty" tf:"compression_type,omitempty"` @@ -150,9 +146,7 @@ type KafkaTopicTopicConfigObservation struct { type KafkaTopicTopicConfigParameters struct { - // Kafka topic settings. For more information, see - // the official documentation - // and the Kafka documentation. + // Kafka topic settings. For more information, see the official documentation and the Kafka documentation. // +kubebuilder:validation:Optional CleanupPolicy *string `json:"cleanupPolicy,omitempty" tf:"cleanup_policy,omitempty"` diff --git a/apis/mdb/v1alpha1/zz_mongodbcluster_types.go b/apis/mdb/v1alpha1/zz_mongodbcluster_types.go index 8062b50..71f0626 100755 --- a/apis/mdb/v1alpha1/zz_mongodbcluster_types.go +++ b/apis/mdb/v1alpha1/zz_mongodbcluster_types.go @@ -11,41 +11,29 @@ import ( type AuditLogInitParameters struct { - // Configuration of the audit log filter in JSON format. - // For more information see auditLog.filter - // description in the official documentation. Available only in enterprise edition. + // Configuration of the audit log filter in JSON format. For more information see auditLog.filter description in the official documentation. Available only in enterprise edition. Filter *string `json:"filter,omitempty" tf:"filter,omitempty"` - // Specifies if a node allows runtime configuration of audit filters and the auditAuthorizationSuccess variable. - // For more information see auditLog.runtimeConfiguration - // description in the official documentation. Available only in enterprise edition. + // Specifies if a node allows runtime configuration of audit filters and the auditAuthorizationSuccess variable. For more information see auditLog.runtimeConfiguration description in the official documentation. Available only in enterprise edition. RuntimeConfiguration *bool `json:"runtimeConfiguration,omitempty" tf:"runtime_configuration,omitempty"` } type AuditLogObservation struct { - // Configuration of the audit log filter in JSON format. - // For more information see auditLog.filter - // description in the official documentation. Available only in enterprise edition. + // Configuration of the audit log filter in JSON format. For more information see auditLog.filter description in the official documentation. Available only in enterprise edition. Filter *string `json:"filter,omitempty" tf:"filter,omitempty"` - // Specifies if a node allows runtime configuration of audit filters and the auditAuthorizationSuccess variable. - // For more information see auditLog.runtimeConfiguration - // description in the official documentation. Available only in enterprise edition. + // Specifies if a node allows runtime configuration of audit filters and the auditAuthorizationSuccess variable. For more information see auditLog.runtimeConfiguration description in the official documentation. Available only in enterprise edition. RuntimeConfiguration *bool `json:"runtimeConfiguration,omitempty" tf:"runtime_configuration,omitempty"` } type AuditLogParameters struct { - // Configuration of the audit log filter in JSON format. - // For more information see auditLog.filter - // description in the official documentation. Available only in enterprise edition. + // Configuration of the audit log filter in JSON format. For more information see auditLog.filter description in the official documentation. Available only in enterprise edition. // +kubebuilder:validation:Optional Filter *string `json:"filter,omitempty" tf:"filter,omitempty"` - // Specifies if a node allows runtime configuration of audit filters and the auditAuthorizationSuccess variable. - // For more information see auditLog.runtimeConfiguration - // description in the official documentation. Available only in enterprise edition. + // Specifies if a node allows runtime configuration of audit filters and the auditAuthorizationSuccess variable. For more information see auditLog.runtimeConfiguration description in the official documentation. Available only in enterprise edition. // +kubebuilder:validation:Optional RuntimeConfiguration *bool `json:"runtimeConfiguration,omitempty" tf:"runtime_configuration,omitempty"` } @@ -207,6 +195,162 @@ type ClusterConfigParameters struct { Version *string `json:"version" tf:"version,omitempty"` } +type DiskSizeAutoscalingMongocfgInitParameters struct { + + // Limit of disk size after autoscaling (GiB). + DiskSizeLimit *float64 `json:"diskSizeLimit,omitempty" tf:"disk_size_limit,omitempty"` + + // Immediate autoscaling disk usage (percent). + EmergencyUsageThreshold *float64 `json:"emergencyUsageThreshold,omitempty" tf:"emergency_usage_threshold,omitempty"` + + // Maintenance window autoscaling disk usage (percent). + PlannedUsageThreshold *float64 `json:"plannedUsageThreshold,omitempty" tf:"planned_usage_threshold,omitempty"` +} + +type DiskSizeAutoscalingMongocfgObservation struct { + + // Limit of disk size after autoscaling (GiB). + DiskSizeLimit *float64 `json:"diskSizeLimit,omitempty" tf:"disk_size_limit,omitempty"` + + // Immediate autoscaling disk usage (percent). + EmergencyUsageThreshold *float64 `json:"emergencyUsageThreshold,omitempty" tf:"emergency_usage_threshold,omitempty"` + + // Maintenance window autoscaling disk usage (percent). + PlannedUsageThreshold *float64 `json:"plannedUsageThreshold,omitempty" tf:"planned_usage_threshold,omitempty"` +} + +type DiskSizeAutoscalingMongocfgParameters struct { + + // Limit of disk size after autoscaling (GiB). + // +kubebuilder:validation:Optional + DiskSizeLimit *float64 `json:"diskSizeLimit" tf:"disk_size_limit,omitempty"` + + // Immediate autoscaling disk usage (percent). + // +kubebuilder:validation:Optional + EmergencyUsageThreshold *float64 `json:"emergencyUsageThreshold,omitempty" tf:"emergency_usage_threshold,omitempty"` + + // Maintenance window autoscaling disk usage (percent). + // +kubebuilder:validation:Optional + PlannedUsageThreshold *float64 `json:"plannedUsageThreshold,omitempty" tf:"planned_usage_threshold,omitempty"` +} + +type DiskSizeAutoscalingMongodInitParameters struct { + + // Limit of disk size after autoscaling (GiB). + DiskSizeLimit *float64 `json:"diskSizeLimit,omitempty" tf:"disk_size_limit,omitempty"` + + // Immediate autoscaling disk usage (percent). + EmergencyUsageThreshold *float64 `json:"emergencyUsageThreshold,omitempty" tf:"emergency_usage_threshold,omitempty"` + + // Maintenance window autoscaling disk usage (percent). + PlannedUsageThreshold *float64 `json:"plannedUsageThreshold,omitempty" tf:"planned_usage_threshold,omitempty"` +} + +type DiskSizeAutoscalingMongodObservation struct { + + // Limit of disk size after autoscaling (GiB). + DiskSizeLimit *float64 `json:"diskSizeLimit,omitempty" tf:"disk_size_limit,omitempty"` + + // Immediate autoscaling disk usage (percent). + EmergencyUsageThreshold *float64 `json:"emergencyUsageThreshold,omitempty" tf:"emergency_usage_threshold,omitempty"` + + // Maintenance window autoscaling disk usage (percent). + PlannedUsageThreshold *float64 `json:"plannedUsageThreshold,omitempty" tf:"planned_usage_threshold,omitempty"` +} + +type DiskSizeAutoscalingMongodParameters struct { + + // Limit of disk size after autoscaling (GiB). + // +kubebuilder:validation:Optional + DiskSizeLimit *float64 `json:"diskSizeLimit" tf:"disk_size_limit,omitempty"` + + // Immediate autoscaling disk usage (percent). + // +kubebuilder:validation:Optional + EmergencyUsageThreshold *float64 `json:"emergencyUsageThreshold,omitempty" tf:"emergency_usage_threshold,omitempty"` + + // Maintenance window autoscaling disk usage (percent). + // +kubebuilder:validation:Optional + PlannedUsageThreshold *float64 `json:"plannedUsageThreshold,omitempty" tf:"planned_usage_threshold,omitempty"` +} + +type DiskSizeAutoscalingMongoinfraInitParameters struct { + + // Limit of disk size after autoscaling (GiB). + DiskSizeLimit *float64 `json:"diskSizeLimit,omitempty" tf:"disk_size_limit,omitempty"` + + // Immediate autoscaling disk usage (percent). + EmergencyUsageThreshold *float64 `json:"emergencyUsageThreshold,omitempty" tf:"emergency_usage_threshold,omitempty"` + + // Maintenance window autoscaling disk usage (percent). + PlannedUsageThreshold *float64 `json:"plannedUsageThreshold,omitempty" tf:"planned_usage_threshold,omitempty"` +} + +type DiskSizeAutoscalingMongoinfraObservation struct { + + // Limit of disk size after autoscaling (GiB). + DiskSizeLimit *float64 `json:"diskSizeLimit,omitempty" tf:"disk_size_limit,omitempty"` + + // Immediate autoscaling disk usage (percent). + EmergencyUsageThreshold *float64 `json:"emergencyUsageThreshold,omitempty" tf:"emergency_usage_threshold,omitempty"` + + // Maintenance window autoscaling disk usage (percent). + PlannedUsageThreshold *float64 `json:"plannedUsageThreshold,omitempty" tf:"planned_usage_threshold,omitempty"` +} + +type DiskSizeAutoscalingMongoinfraParameters struct { + + // Limit of disk size after autoscaling (GiB). + // +kubebuilder:validation:Optional + DiskSizeLimit *float64 `json:"diskSizeLimit" tf:"disk_size_limit,omitempty"` + + // Immediate autoscaling disk usage (percent). + // +kubebuilder:validation:Optional + EmergencyUsageThreshold *float64 `json:"emergencyUsageThreshold,omitempty" tf:"emergency_usage_threshold,omitempty"` + + // Maintenance window autoscaling disk usage (percent). + // +kubebuilder:validation:Optional + PlannedUsageThreshold *float64 `json:"plannedUsageThreshold,omitempty" tf:"planned_usage_threshold,omitempty"` +} + +type DiskSizeAutoscalingMongosInitParameters struct { + + // Limit of disk size after autoscaling (GiB). + DiskSizeLimit *float64 `json:"diskSizeLimit,omitempty" tf:"disk_size_limit,omitempty"` + + // Immediate autoscaling disk usage (percent). + EmergencyUsageThreshold *float64 `json:"emergencyUsageThreshold,omitempty" tf:"emergency_usage_threshold,omitempty"` + + // Maintenance window autoscaling disk usage (percent). + PlannedUsageThreshold *float64 `json:"plannedUsageThreshold,omitempty" tf:"planned_usage_threshold,omitempty"` +} + +type DiskSizeAutoscalingMongosObservation struct { + + // Limit of disk size after autoscaling (GiB). + DiskSizeLimit *float64 `json:"diskSizeLimit,omitempty" tf:"disk_size_limit,omitempty"` + + // Immediate autoscaling disk usage (percent). + EmergencyUsageThreshold *float64 `json:"emergencyUsageThreshold,omitempty" tf:"emergency_usage_threshold,omitempty"` + + // Maintenance window autoscaling disk usage (percent). + PlannedUsageThreshold *float64 `json:"plannedUsageThreshold,omitempty" tf:"planned_usage_threshold,omitempty"` +} + +type DiskSizeAutoscalingMongosParameters struct { + + // Limit of disk size after autoscaling (GiB). + // +kubebuilder:validation:Optional + DiskSizeLimit *float64 `json:"diskSizeLimit" tf:"disk_size_limit,omitempty"` + + // Immediate autoscaling disk usage (percent). + // +kubebuilder:validation:Optional + EmergencyUsageThreshold *float64 `json:"emergencyUsageThreshold,omitempty" tf:"emergency_usage_threshold,omitempty"` + + // Maintenance window autoscaling disk usage (percent). + // +kubebuilder:validation:Optional + PlannedUsageThreshold *float64 `json:"plannedUsageThreshold,omitempty" tf:"planned_usage_threshold,omitempty"` +} + type HostParametersInitParameters struct { // Should this host be hidden in replicaset. Can be either true of false. For more information see the official documentation @@ -261,415 +405,283 @@ type HostParametersParameters struct { type JournalInitParameters struct { - // The maximum amount of time in milliseconds that the mongod process allows between journal operations. - // For more information, see the storage.journal.commitIntervalMs - // description in the official documentation. + // The maximum amount of time in milliseconds that the mongod process allows between journal operations. For more information, see the storage.journal.commitIntervalMs description in the official documentation. CommitInterval *float64 `json:"commitInterval,omitempty" tf:"commit_interval,omitempty"` } type JournalObservation struct { - // The maximum amount of time in milliseconds that the mongod process allows between journal operations. - // For more information, see the storage.journal.commitIntervalMs - // description in the official documentation. + // The maximum amount of time in milliseconds that the mongod process allows between journal operations. For more information, see the storage.journal.commitIntervalMs description in the official documentation. CommitInterval *float64 `json:"commitInterval,omitempty" tf:"commit_interval,omitempty"` } type JournalParameters struct { - // The maximum amount of time in milliseconds that the mongod process allows between journal operations. - // For more information, see the storage.journal.commitIntervalMs - // description in the official documentation. + // The maximum amount of time in milliseconds that the mongod process allows between journal operations. For more information, see the storage.journal.commitIntervalMs description in the official documentation. // +kubebuilder:validation:Optional CommitInterval *float64 `json:"commitInterval,omitempty" tf:"commit_interval,omitempty"` } type KmipInitParameters struct { - // String containing the client certificate used for authenticating MongoDB to the KMIP server. - // For more information see security.kmip.clientCertificateFile - // description in the official documentation. + // String containing the client certificate used for authenticating MongoDB to the KMIP server. For more information see security.kmip.clientCertificateFile description in the official documentation. ClientCertificate *string `json:"clientCertificate,omitempty" tf:"client_certificate,omitempty"` - // Unique KMIP identifier for an existing key within the KMIP server. - // For more information see security.kmip.keyIdentifier - // description in the official documentation. + // Unique KMIP identifier for an existing key within the KMIP server. For more information see security.kmip.keyIdentifier description in the official documentation. KeyIdentifier *string `json:"keyIdentifier,omitempty" tf:"key_identifier,omitempty"` - // Port number to use to communicate with the KMIP server. Default: 5696 - // For more information see security.kmip.port - // description in the official documentation. + // Port number to use to communicate with the KMIP server. Default: 5696 For more information see security.kmip.port description in the official documentation. Port *float64 `json:"port,omitempty" tf:"port,omitempty"` - // Path to CA File. Used for validating secure client connection to KMIP server. - // For more information see security.kmip.serverCAFile - // description in the official documentation. + // Path to CA File. Used for validating secure client connection to KMIP server. For more information see security.kmip.serverCAFile description in the official documentation. ServerCA *string `json:"serverCa,omitempty" tf:"server_ca,omitempty"` - // Hostname or IP address of the KMIP server to connect to. - // For more information see security.kmip.serverName - // description in the official documentation. + // Hostname or IP address of the KMIP server to connect to. For more information see security.kmip.serverName description in the official documentation. ServerName *string `json:"serverName,omitempty" tf:"server_name,omitempty"` } type KmipObservation struct { - // String containing the client certificate used for authenticating MongoDB to the KMIP server. - // For more information see security.kmip.clientCertificateFile - // description in the official documentation. + // String containing the client certificate used for authenticating MongoDB to the KMIP server. For more information see security.kmip.clientCertificateFile description in the official documentation. ClientCertificate *string `json:"clientCertificate,omitempty" tf:"client_certificate,omitempty"` - // Unique KMIP identifier for an existing key within the KMIP server. - // For more information see security.kmip.keyIdentifier - // description in the official documentation. + // Unique KMIP identifier for an existing key within the KMIP server. For more information see security.kmip.keyIdentifier description in the official documentation. KeyIdentifier *string `json:"keyIdentifier,omitempty" tf:"key_identifier,omitempty"` - // Port number to use to communicate with the KMIP server. Default: 5696 - // For more information see security.kmip.port - // description in the official documentation. + // Port number to use to communicate with the KMIP server. Default: 5696 For more information see security.kmip.port description in the official documentation. Port *float64 `json:"port,omitempty" tf:"port,omitempty"` - // Path to CA File. Used for validating secure client connection to KMIP server. - // For more information see security.kmip.serverCAFile - // description in the official documentation. + // Path to CA File. Used for validating secure client connection to KMIP server. For more information see security.kmip.serverCAFile description in the official documentation. ServerCA *string `json:"serverCa,omitempty" tf:"server_ca,omitempty"` - // Hostname or IP address of the KMIP server to connect to. - // For more information see security.kmip.serverName - // description in the official documentation. + // Hostname or IP address of the KMIP server to connect to. For more information see security.kmip.serverName description in the official documentation. ServerName *string `json:"serverName,omitempty" tf:"server_name,omitempty"` } type KmipParameters struct { - // String containing the client certificate used for authenticating MongoDB to the KMIP server. - // For more information see security.kmip.clientCertificateFile - // description in the official documentation. + // String containing the client certificate used for authenticating MongoDB to the KMIP server. For more information see security.kmip.clientCertificateFile description in the official documentation. // +kubebuilder:validation:Optional ClientCertificate *string `json:"clientCertificate,omitempty" tf:"client_certificate,omitempty"` - // Unique KMIP identifier for an existing key within the KMIP server. - // For more information see security.kmip.keyIdentifier - // description in the official documentation. + // Unique KMIP identifier for an existing key within the KMIP server. For more information see security.kmip.keyIdentifier description in the official documentation. // +kubebuilder:validation:Optional KeyIdentifier *string `json:"keyIdentifier,omitempty" tf:"key_identifier,omitempty"` - // Port number to use to communicate with the KMIP server. Default: 5696 - // For more information see security.kmip.port - // description in the official documentation. + // Port number to use to communicate with the KMIP server. Default: 5696 For more information see security.kmip.port description in the official documentation. // +kubebuilder:validation:Optional Port *float64 `json:"port,omitempty" tf:"port,omitempty"` - // Path to CA File. Used for validating secure client connection to KMIP server. - // For more information see security.kmip.serverCAFile - // description in the official documentation. + // Path to CA File. Used for validating secure client connection to KMIP server. For more information see security.kmip.serverCAFile description in the official documentation. // +kubebuilder:validation:Optional ServerCA *string `json:"serverCa,omitempty" tf:"server_ca,omitempty"` - // Hostname or IP address of the KMIP server to connect to. - // For more information see security.kmip.serverName - // description in the official documentation. + // Hostname or IP address of the KMIP server to connect to. For more information see security.kmip.serverName description in the official documentation. // +kubebuilder:validation:Optional ServerName *string `json:"serverName,omitempty" tf:"server_name,omitempty"` } type MongocfgInitParameters struct { - // A set of network settings - // (see the net option). - // The structure is documented below. + // A set of network settings (see the net option). The structure is documented below. Net []NetInitParameters `json:"net,omitempty" tf:"net,omitempty"` - // A set of profiling settings - // (see the operationProfiling option). - // The structure is documented below. + // A set of profiling settings (see the operationProfiling option). The structure is documented below. OperationProfiling []OperationProfilingInitParameters `json:"operationProfiling,omitempty" tf:"operation_profiling,omitempty"` - // A set of storage settings - // (see the storage option). - // The structure is documented below. + // A set of storage settings (see the storage option). The structure is documented below. Storage []StorageInitParameters `json:"storage,omitempty" tf:"storage,omitempty"` } type MongocfgObservation struct { - // A set of network settings - // (see the net option). - // The structure is documented below. + // A set of network settings (see the net option). The structure is documented below. Net []NetObservation `json:"net,omitempty" tf:"net,omitempty"` - // A set of profiling settings - // (see the operationProfiling option). - // The structure is documented below. + // A set of profiling settings (see the operationProfiling option). The structure is documented below. OperationProfiling []OperationProfilingObservation `json:"operationProfiling,omitempty" tf:"operation_profiling,omitempty"` - // A set of storage settings - // (see the storage option). - // The structure is documented below. + // A set of storage settings (see the storage option). The structure is documented below. Storage []StorageObservation `json:"storage,omitempty" tf:"storage,omitempty"` } type MongocfgParameters struct { - // A set of network settings - // (see the net option). - // The structure is documented below. + // A set of network settings (see the net option). The structure is documented below. // +kubebuilder:validation:Optional Net []NetParameters `json:"net,omitempty" tf:"net,omitempty"` - // A set of profiling settings - // (see the operationProfiling option). - // The structure is documented below. + // A set of profiling settings (see the operationProfiling option). The structure is documented below. // +kubebuilder:validation:Optional OperationProfiling []OperationProfilingParameters `json:"operationProfiling,omitempty" tf:"operation_profiling,omitempty"` - // A set of storage settings - // (see the storage option). - // The structure is documented below. + // A set of storage settings (see the storage option). The structure is documented below. // +kubebuilder:validation:Optional Storage []StorageParameters `json:"storage,omitempty" tf:"storage,omitempty"` } type MongodInitParameters struct { - // A set of audit log settings - // (see the auditLog option). - // The structure is documented below. Available only in enterprise edition. + // A set of audit log settings (see the auditLog option). The structure is documented below. Available only in enterprise edition. AuditLog []AuditLogInitParameters `json:"auditLog,omitempty" tf:"audit_log,omitempty"` - // A set of network settings - // (see the net option). - // The structure is documented below. + // A set of network settings (see the net option). The structure is documented below. Net []MongodNetInitParameters `json:"net,omitempty" tf:"net,omitempty"` - // A set of profiling settings - // (see the operationProfiling option). - // The structure is documented below. + // A set of profiling settings (see the operationProfiling option). The structure is documented below. OperationProfiling []MongodOperationProfilingInitParameters `json:"operationProfiling,omitempty" tf:"operation_profiling,omitempty"` - // A set of MongoDB Security settings - // (see the security option). - // The structure is documented below. Available only in enterprise edition. + // A set of MongoDB Security settings (see the security option). The structure is documented below. Available only in enterprise edition. Security []SecurityInitParameters `json:"security,omitempty" tf:"security,omitempty"` - // A set of MongoDB Server Parameters - // (see the setParameter option). - // The structure is documented below. + // A set of MongoDB Server Parameters (see the setParameter option). The structure is documented below. SetParameter []SetParameterInitParameters `json:"setParameter,omitempty" tf:"set_parameter,omitempty"` - // A set of storage settings - // (see the storage option). - // The structure is documented below. + // A set of storage settings (see the storage option). The structure is documented below. Storage []MongodStorageInitParameters `json:"storage,omitempty" tf:"storage,omitempty"` } type MongodNetInitParameters struct { - // Specifies the default compressor(s) to use for communication between this mongod or mongos. - // Accepts array of compressors. Order matters. Available compressors: snappy, zlib, zstd, disabled. To disable network compression, make "disabled" the only value. - // For more information, see the net.Compression.Compressors - // description in the official documentation. + // Specifies the default compressor(s) to use for communication between this mongod or mongos. Accepts array of compressors. Order matters. Available compressors: snappy, zlib, zstd, disabled. To disable network compression, make "disabled" the only value. For more information, see the net.Compression.Compressors description in the official documentation. Compressors []*string `json:"compressors,omitempty" tf:"compressors,omitempty"` - // The maximum number of simultaneous connections that host will accept. - // For more information, see the net.maxIncomingConnections - // description in the official documentation. + // The maximum number of simultaneous connections that host will accept. For more information, see the net.maxIncomingConnections description in the official documentation. MaxIncomingConnections *float64 `json:"maxIncomingConnections,omitempty" tf:"max_incoming_connections,omitempty"` } type MongodNetObservation struct { - // Specifies the default compressor(s) to use for communication between this mongod or mongos. - // Accepts array of compressors. Order matters. Available compressors: snappy, zlib, zstd, disabled. To disable network compression, make "disabled" the only value. - // For more information, see the net.Compression.Compressors - // description in the official documentation. + // Specifies the default compressor(s) to use for communication between this mongod or mongos. Accepts array of compressors. Order matters. Available compressors: snappy, zlib, zstd, disabled. To disable network compression, make "disabled" the only value. For more information, see the net.Compression.Compressors description in the official documentation. Compressors []*string `json:"compressors,omitempty" tf:"compressors,omitempty"` - // The maximum number of simultaneous connections that host will accept. - // For more information, see the net.maxIncomingConnections - // description in the official documentation. + // The maximum number of simultaneous connections that host will accept. For more information, see the net.maxIncomingConnections description in the official documentation. MaxIncomingConnections *float64 `json:"maxIncomingConnections,omitempty" tf:"max_incoming_connections,omitempty"` } type MongodNetParameters struct { - // Specifies the default compressor(s) to use for communication between this mongod or mongos. - // Accepts array of compressors. Order matters. Available compressors: snappy, zlib, zstd, disabled. To disable network compression, make "disabled" the only value. - // For more information, see the net.Compression.Compressors - // description in the official documentation. + // Specifies the default compressor(s) to use for communication between this mongod or mongos. Accepts array of compressors. Order matters. Available compressors: snappy, zlib, zstd, disabled. To disable network compression, make "disabled" the only value. For more information, see the net.Compression.Compressors description in the official documentation. // +kubebuilder:validation:Optional Compressors []*string `json:"compressors,omitempty" tf:"compressors,omitempty"` - // The maximum number of simultaneous connections that host will accept. - // For more information, see the net.maxIncomingConnections - // description in the official documentation. + // The maximum number of simultaneous connections that host will accept. For more information, see the net.maxIncomingConnections description in the official documentation. // +kubebuilder:validation:Optional MaxIncomingConnections *float64 `json:"maxIncomingConnections,omitempty" tf:"max_incoming_connections,omitempty"` } type MongodObservation struct { - // A set of audit log settings - // (see the auditLog option). - // The structure is documented below. Available only in enterprise edition. + // A set of audit log settings (see the auditLog option). The structure is documented below. Available only in enterprise edition. AuditLog []AuditLogObservation `json:"auditLog,omitempty" tf:"audit_log,omitempty"` - // A set of network settings - // (see the net option). - // The structure is documented below. + // A set of network settings (see the net option). The structure is documented below. Net []MongodNetObservation `json:"net,omitempty" tf:"net,omitempty"` - // A set of profiling settings - // (see the operationProfiling option). - // The structure is documented below. + // A set of profiling settings (see the operationProfiling option). The structure is documented below. OperationProfiling []MongodOperationProfilingObservation `json:"operationProfiling,omitempty" tf:"operation_profiling,omitempty"` - // A set of MongoDB Security settings - // (see the security option). - // The structure is documented below. Available only in enterprise edition. + // A set of MongoDB Security settings (see the security option). The structure is documented below. Available only in enterprise edition. Security []SecurityObservation `json:"security,omitempty" tf:"security,omitempty"` - // A set of MongoDB Server Parameters - // (see the setParameter option). - // The structure is documented below. + // A set of MongoDB Server Parameters (see the setParameter option). The structure is documented below. SetParameter []SetParameterObservation `json:"setParameter,omitempty" tf:"set_parameter,omitempty"` - // A set of storage settings - // (see the storage option). - // The structure is documented below. + // A set of storage settings (see the storage option). The structure is documented below. Storage []MongodStorageObservation `json:"storage,omitempty" tf:"storage,omitempty"` } type MongodOperationProfilingInitParameters struct { - // Specifies which operations should be profiled. The following profiler levels are available: off, slow_op, all. - // For more information, see the operationProfiling.mode - // description in the official documentation. + // Specifies which operations should be profiled. The following profiler levels are available: off, slow_op, all. For more information, see the operationProfiling.mode description in the official documentation. Mode *string `json:"mode,omitempty" tf:"mode,omitempty"` - // The fraction of slow operations that should be profiled or logged. Accepts values between 0 and 1, inclusive. - // For more information, see the operationProfiling.slowOpSampleRate - // description in the official documentation. + // The fraction of slow operations that should be profiled or logged. Accepts values between 0 and 1, inclusive. For more information, see the operationProfiling.slowOpSampleRate description in the official documentation. SlowOpSampleRate *float64 `json:"slowOpSampleRate,omitempty" tf:"slow_op_sample_rate,omitempty"` - // The slow operation time threshold, in milliseconds. Operations that run for longer than this threshold are considered slow. - // For more information, see the operationProfiling.slowOpThresholdMs - // description in the official documentation. + // The slow operation time threshold, in milliseconds. Operations that run for longer than this threshold are considered slow. For more information, see the operationProfiling.slowOpThresholdMs description in the official documentation. SlowOpThreshold *float64 `json:"slowOpThreshold,omitempty" tf:"slow_op_threshold,omitempty"` } type MongodOperationProfilingObservation struct { - // Specifies which operations should be profiled. The following profiler levels are available: off, slow_op, all. - // For more information, see the operationProfiling.mode - // description in the official documentation. + // Specifies which operations should be profiled. The following profiler levels are available: off, slow_op, all. For more information, see the operationProfiling.mode description in the official documentation. Mode *string `json:"mode,omitempty" tf:"mode,omitempty"` - // The fraction of slow operations that should be profiled or logged. Accepts values between 0 and 1, inclusive. - // For more information, see the operationProfiling.slowOpSampleRate - // description in the official documentation. + // The fraction of slow operations that should be profiled or logged. Accepts values between 0 and 1, inclusive. For more information, see the operationProfiling.slowOpSampleRate description in the official documentation. SlowOpSampleRate *float64 `json:"slowOpSampleRate,omitempty" tf:"slow_op_sample_rate,omitempty"` - // The slow operation time threshold, in milliseconds. Operations that run for longer than this threshold are considered slow. - // For more information, see the operationProfiling.slowOpThresholdMs - // description in the official documentation. + // The slow operation time threshold, in milliseconds. Operations that run for longer than this threshold are considered slow. For more information, see the operationProfiling.slowOpThresholdMs description in the official documentation. SlowOpThreshold *float64 `json:"slowOpThreshold,omitempty" tf:"slow_op_threshold,omitempty"` } type MongodOperationProfilingParameters struct { - // Specifies which operations should be profiled. The following profiler levels are available: off, slow_op, all. - // For more information, see the operationProfiling.mode - // description in the official documentation. + // Specifies which operations should be profiled. The following profiler levels are available: off, slow_op, all. For more information, see the operationProfiling.mode description in the official documentation. // +kubebuilder:validation:Optional Mode *string `json:"mode,omitempty" tf:"mode,omitempty"` - // The fraction of slow operations that should be profiled or logged. Accepts values between 0 and 1, inclusive. - // For more information, see the operationProfiling.slowOpSampleRate - // description in the official documentation. + // The fraction of slow operations that should be profiled or logged. Accepts values between 0 and 1, inclusive. For more information, see the operationProfiling.slowOpSampleRate description in the official documentation. // +kubebuilder:validation:Optional SlowOpSampleRate *float64 `json:"slowOpSampleRate,omitempty" tf:"slow_op_sample_rate,omitempty"` - // The slow operation time threshold, in milliseconds. Operations that run for longer than this threshold are considered slow. - // For more information, see the operationProfiling.slowOpThresholdMs - // description in the official documentation. + // The slow operation time threshold, in milliseconds. Operations that run for longer than this threshold are considered slow. For more information, see the operationProfiling.slowOpThresholdMs description in the official documentation. // +kubebuilder:validation:Optional SlowOpThreshold *float64 `json:"slowOpThreshold,omitempty" tf:"slow_op_threshold,omitempty"` } type MongodParameters struct { - // A set of audit log settings - // (see the auditLog option). - // The structure is documented below. Available only in enterprise edition. + // A set of audit log settings (see the auditLog option). The structure is documented below. Available only in enterprise edition. // +kubebuilder:validation:Optional AuditLog []AuditLogParameters `json:"auditLog,omitempty" tf:"audit_log,omitempty"` - // A set of network settings - // (see the net option). - // The structure is documented below. + // A set of network settings (see the net option). The structure is documented below. // +kubebuilder:validation:Optional Net []MongodNetParameters `json:"net,omitempty" tf:"net,omitempty"` - // A set of profiling settings - // (see the operationProfiling option). - // The structure is documented below. + // A set of profiling settings (see the operationProfiling option). The structure is documented below. // +kubebuilder:validation:Optional OperationProfiling []MongodOperationProfilingParameters `json:"operationProfiling,omitempty" tf:"operation_profiling,omitempty"` - // A set of MongoDB Security settings - // (see the security option). - // The structure is documented below. Available only in enterprise edition. + // A set of MongoDB Security settings (see the security option). The structure is documented below. Available only in enterprise edition. // +kubebuilder:validation:Optional Security []SecurityParameters `json:"security,omitempty" tf:"security,omitempty"` - // A set of MongoDB Server Parameters - // (see the setParameter option). - // The structure is documented below. + // A set of MongoDB Server Parameters (see the setParameter option). The structure is documented below. // +kubebuilder:validation:Optional SetParameter []SetParameterParameters `json:"setParameter,omitempty" tf:"set_parameter,omitempty"` - // A set of storage settings - // (see the storage option). - // The structure is documented below. + // A set of storage settings (see the storage option). The structure is documented below. // +kubebuilder:validation:Optional Storage []MongodStorageParameters `json:"storage,omitempty" tf:"storage,omitempty"` } type MongodStorageInitParameters struct { - // The durability journal to ensure data files remain valid and recoverable. - // The structure is documented below. + // The durability journal to ensure data files remain valid and recoverable. The structure is documented below. Journal []JournalInitParameters `json:"journal,omitempty" tf:"journal,omitempty"` - // The WiredTiger engine settings. - // (see the storage.wiredTiger option). - // These settings available only on mongod hosts. The structure is documented below. + // The WiredTiger engine settings. (see the storage.wiredTiger option). These settings available only on mongod hosts. The structure is documented below. WiredTiger []StorageWiredTigerInitParameters `json:"wiredTiger,omitempty" tf:"wired_tiger,omitempty"` } type MongodStorageObservation struct { - // The durability journal to ensure data files remain valid and recoverable. - // The structure is documented below. + // The durability journal to ensure data files remain valid and recoverable. The structure is documented below. Journal []JournalObservation `json:"journal,omitempty" tf:"journal,omitempty"` - // The WiredTiger engine settings. - // (see the storage.wiredTiger option). - // These settings available only on mongod hosts. The structure is documented below. + // The WiredTiger engine settings. (see the storage.wiredTiger option). These settings available only on mongod hosts. The structure is documented below. WiredTiger []StorageWiredTigerObservation `json:"wiredTiger,omitempty" tf:"wired_tiger,omitempty"` } type MongodStorageParameters struct { - // The durability journal to ensure data files remain valid and recoverable. - // The structure is documented below. + // The durability journal to ensure data files remain valid and recoverable. The structure is documented below. // +kubebuilder:validation:Optional Journal []JournalParameters `json:"journal,omitempty" tf:"journal,omitempty"` - // The WiredTiger engine settings. - // (see the storage.wiredTiger option). - // These settings available only on mongod hosts. The structure is documented below. + // The WiredTiger engine settings. (see the storage.wiredTiger option). These settings available only on mongod hosts. The structure is documented below. // +kubebuilder:validation:Optional WiredTiger []StorageWiredTigerParameters `json:"wiredTiger,omitempty" tf:"wired_tiger,omitempty"` } @@ -707,8 +719,7 @@ type MongodbClusterHostInitParameters struct { // The name of the shard to which the host belongs. Only for sharded cluster. ShardName *string `json:"shardName,omitempty" tf:"shard_name,omitempty"` - // The ID of the subnet, to which the host belongs. The subnet must - // be a part of the network to which the cluster belongs. + // The ID of the subnet, to which the host belongs. The subnet must be a part of the network to which the cluster belongs. // +crossplane:generate:reference:type=github.com/tagesjump/provider-upjet-yc/apis/vpc/v1alpha1.Subnet SubnetID *string `json:"subnetId,omitempty" tf:"subnet_id,omitempty"` @@ -723,8 +734,7 @@ type MongodbClusterHostInitParameters struct { // type of mongo daemon which runs on this host (mongod, mongos, mongocfg, mongoinfra). Defaults to mongod. Type *string `json:"type,omitempty" tf:"type,omitempty"` - // The availability zone where the MongoDB host will be created. - // For more information see the official documentation. + // The availability zone where the MongoDB host will be created. For more information see the official documentation. ZoneID *string `json:"zoneId,omitempty" tf:"zone_id,omitempty"` } @@ -748,15 +758,13 @@ type MongodbClusterHostObservation struct { // The name of the shard to which the host belongs. Only for sharded cluster. ShardName *string `json:"shardName,omitempty" tf:"shard_name,omitempty"` - // The ID of the subnet, to which the host belongs. The subnet must - // be a part of the network to which the cluster belongs. + // The ID of the subnet, to which the host belongs. The subnet must be a part of the network to which the cluster belongs. SubnetID *string `json:"subnetId,omitempty" tf:"subnet_id,omitempty"` // type of mongo daemon which runs on this host (mongod, mongos, mongocfg, mongoinfra). Defaults to mongod. Type *string `json:"type,omitempty" tf:"type,omitempty"` - // The availability zone where the MongoDB host will be created. - // For more information see the official documentation. + // The availability zone where the MongoDB host will be created. For more information see the official documentation. ZoneID *string `json:"zoneId,omitempty" tf:"zone_id,omitempty"` } @@ -778,8 +786,7 @@ type MongodbClusterHostParameters struct { // +kubebuilder:validation:Optional ShardName *string `json:"shardName,omitempty" tf:"shard_name,omitempty"` - // The ID of the subnet, to which the host belongs. The subnet must - // be a part of the network to which the cluster belongs. + // The ID of the subnet, to which the host belongs. The subnet must be a part of the network to which the cluster belongs. // +crossplane:generate:reference:type=github.com/tagesjump/provider-upjet-yc/apis/vpc/v1alpha1.Subnet // +kubebuilder:validation:Optional SubnetID *string `json:"subnetId,omitempty" tf:"subnet_id,omitempty"` @@ -796,8 +803,7 @@ type MongodbClusterHostParameters struct { // +kubebuilder:validation:Optional Type *string `json:"type,omitempty" tf:"type,omitempty"` - // The availability zone where the MongoDB host will be created. - // For more information see the official documentation. + // The availability zone where the MongoDB host will be created. For more information see the official documentation. // +kubebuilder:validation:Optional ZoneID *string `json:"zoneId" tf:"zone_id,omitempty"` } @@ -813,17 +819,24 @@ type MongodbClusterInitParameters struct { // A database of the MongoDB cluster. The structure is documented below. Database []MongodbClusterDatabaseInitParameters `json:"database,omitempty" tf:"database,omitempty"` - // Inhibits deletion of the cluster. Can be either true or false. + // Inhibits deletion of the cluster. Can be either true or false. DeletionProtection *bool `json:"deletionProtection,omitempty" tf:"deletion_protection,omitempty"` // Description of the MongoDB cluster. Description *string `json:"description,omitempty" tf:"description,omitempty"` + DiskSizeAutoscalingMongocfg []DiskSizeAutoscalingMongocfgInitParameters `json:"diskSizeAutoscalingMongocfg,omitempty" tf:"disk_size_autoscaling_mongocfg,omitempty"` + + DiskSizeAutoscalingMongod []DiskSizeAutoscalingMongodInitParameters `json:"diskSizeAutoscalingMongod,omitempty" tf:"disk_size_autoscaling_mongod,omitempty"` + + DiskSizeAutoscalingMongoinfra []DiskSizeAutoscalingMongoinfraInitParameters `json:"diskSizeAutoscalingMongoinfra,omitempty" tf:"disk_size_autoscaling_mongoinfra,omitempty"` + + DiskSizeAutoscalingMongos []DiskSizeAutoscalingMongosInitParameters `json:"diskSizeAutoscalingMongos,omitempty" tf:"disk_size_autoscaling_mongos,omitempty"` + // Deployment environment of the MongoDB cluster. Can be either PRESTABLE or PRODUCTION. Environment *string `json:"environment,omitempty" tf:"environment,omitempty"` - // The ID of the folder that the resource belongs to. If it - // is not provided, the default provider folder is used. + // The ID of the folder that the resource belongs to. If it is not provided, the default provider folder is used. // +crossplane:generate:reference:type=github.com/tagesjump/provider-upjet-yc/apis/resourcemanager/v1alpha1.Folder FolderID *string `json:"folderId,omitempty" tf:"folder_id,omitempty"` @@ -948,21 +961,27 @@ type MongodbClusterObservation struct { // A database of the MongoDB cluster. The structure is documented below. Database []MongodbClusterDatabaseObservation `json:"database,omitempty" tf:"database,omitempty"` - // Inhibits deletion of the cluster. Can be either true or false. + // Inhibits deletion of the cluster. Can be either true or false. DeletionProtection *bool `json:"deletionProtection,omitempty" tf:"deletion_protection,omitempty"` // Description of the MongoDB cluster. Description *string `json:"description,omitempty" tf:"description,omitempty"` + DiskSizeAutoscalingMongocfg []DiskSizeAutoscalingMongocfgObservation `json:"diskSizeAutoscalingMongocfg,omitempty" tf:"disk_size_autoscaling_mongocfg,omitempty"` + + DiskSizeAutoscalingMongod []DiskSizeAutoscalingMongodObservation `json:"diskSizeAutoscalingMongod,omitempty" tf:"disk_size_autoscaling_mongod,omitempty"` + + DiskSizeAutoscalingMongoinfra []DiskSizeAutoscalingMongoinfraObservation `json:"diskSizeAutoscalingMongoinfra,omitempty" tf:"disk_size_autoscaling_mongoinfra,omitempty"` + + DiskSizeAutoscalingMongos []DiskSizeAutoscalingMongosObservation `json:"diskSizeAutoscalingMongos,omitempty" tf:"disk_size_autoscaling_mongos,omitempty"` + // Deployment environment of the MongoDB cluster. Can be either PRESTABLE or PRODUCTION. Environment *string `json:"environment,omitempty" tf:"environment,omitempty"` - // The ID of the folder that the resource belongs to. If it - // is not provided, the default provider folder is used. + // The ID of the folder that the resource belongs to. If it is not provided, the default provider folder is used. FolderID *string `json:"folderId,omitempty" tf:"folder_id,omitempty"` - // Aggregated health of the cluster. Can be either ALIVE, DEGRADED, DEAD or HEALTH_UNKNOWN. - // For more information see health field of JSON representation in the official documentation. + // Aggregated health of the cluster. Can be either ALIVE, DEGRADED, DEAD or HEALTH_UNKNOWN. For more information see health field of JSON representation in the official documentation. Health *string `json:"health,omitempty" tf:"health,omitempty"` // A host of the MongoDB cluster. The structure is documented below. @@ -1008,8 +1027,7 @@ type MongodbClusterObservation struct { // MongoDB Cluster mode enabled/disabled. Sharded *bool `json:"sharded,omitempty" tf:"sharded,omitempty"` - // Status of the cluster. Can be either CREATING, STARTING, RUNNING, UPDATING, STOPPING, STOPPED, ERROR or STATUS_UNKNOWN. - // For more information see status field of JSON representation in the official documentation. + // Status of the cluster. Can be either CREATING, STARTING, RUNNING, UPDATING, STOPPING, STOPPED, ERROR or STATUS_UNKNOWN. For more information see status field of JSON representation in the official documentation. Status *string `json:"status,omitempty" tf:"status,omitempty"` // A user of the MongoDB cluster. The structure is documented below. @@ -1030,7 +1048,7 @@ type MongodbClusterParameters struct { // +kubebuilder:validation:Optional Database []MongodbClusterDatabaseParameters `json:"database,omitempty" tf:"database,omitempty"` - // Inhibits deletion of the cluster. Can be either true or false. + // Inhibits deletion of the cluster. Can be either true or false. // +kubebuilder:validation:Optional DeletionProtection *bool `json:"deletionProtection,omitempty" tf:"deletion_protection,omitempty"` @@ -1038,12 +1056,23 @@ type MongodbClusterParameters struct { // +kubebuilder:validation:Optional Description *string `json:"description,omitempty" tf:"description,omitempty"` + // +kubebuilder:validation:Optional + DiskSizeAutoscalingMongocfg []DiskSizeAutoscalingMongocfgParameters `json:"diskSizeAutoscalingMongocfg,omitempty" tf:"disk_size_autoscaling_mongocfg,omitempty"` + + // +kubebuilder:validation:Optional + DiskSizeAutoscalingMongod []DiskSizeAutoscalingMongodParameters `json:"diskSizeAutoscalingMongod,omitempty" tf:"disk_size_autoscaling_mongod,omitempty"` + + // +kubebuilder:validation:Optional + DiskSizeAutoscalingMongoinfra []DiskSizeAutoscalingMongoinfraParameters `json:"diskSizeAutoscalingMongoinfra,omitempty" tf:"disk_size_autoscaling_mongoinfra,omitempty"` + + // +kubebuilder:validation:Optional + DiskSizeAutoscalingMongos []DiskSizeAutoscalingMongosParameters `json:"diskSizeAutoscalingMongos,omitempty" tf:"disk_size_autoscaling_mongos,omitempty"` + // Deployment environment of the MongoDB cluster. Can be either PRESTABLE or PRODUCTION. // +kubebuilder:validation:Optional Environment *string `json:"environment,omitempty" tf:"environment,omitempty"` - // The ID of the folder that the resource belongs to. If it - // is not provided, the default provider folder is used. + // The ID of the folder that the resource belongs to. If it is not provided, the default provider folder is used. // +crossplane:generate:reference:type=github.com/tagesjump/provider-upjet-yc/apis/resourcemanager/v1alpha1.Folder // +kubebuilder:validation:Optional FolderID *string `json:"folderId,omitempty" tf:"folder_id,omitempty"` @@ -1134,8 +1163,7 @@ type MongodbClusterResourcesInitParameters struct { // Volume of the storage available to a MongoDB host, in gigabytes. DiskSize *float64 `json:"diskSize,omitempty" tf:"disk_size,omitempty"` - // Type of the storage of MongoDB hosts. - // For more information see the official documentation. + // Type of the storage of MongoDB hosts. For more information see the official documentation. DiskTypeID *string `json:"diskTypeId,omitempty" tf:"disk_type_id,omitempty"` ResourcePresetID *string `json:"resourcePresetId,omitempty" tf:"resource_preset_id,omitempty"` @@ -1146,8 +1174,7 @@ type MongodbClusterResourcesObservation struct { // Volume of the storage available to a MongoDB host, in gigabytes. DiskSize *float64 `json:"diskSize,omitempty" tf:"disk_size,omitempty"` - // Type of the storage of MongoDB hosts. - // For more information see the official documentation. + // Type of the storage of MongoDB hosts. For more information see the official documentation. DiskTypeID *string `json:"diskTypeId,omitempty" tf:"disk_type_id,omitempty"` ResourcePresetID *string `json:"resourcePresetId,omitempty" tf:"resource_preset_id,omitempty"` @@ -1159,8 +1186,7 @@ type MongodbClusterResourcesParameters struct { // +kubebuilder:validation:Optional DiskSize *float64 `json:"diskSize" tf:"disk_size,omitempty"` - // Type of the storage of MongoDB hosts. - // For more information see the official documentation. + // Type of the storage of MongoDB hosts. For more information see the official documentation. // +kubebuilder:validation:Optional DiskTypeID *string `json:"diskTypeId" tf:"disk_type_id,omitempty"` @@ -1235,135 +1261,96 @@ type MongodbClusterUserPermissionParameters struct { type MongosInitParameters struct { - // A set of network settings - // (see the net option). - // The structure is documented below. + // A set of network settings (see the net option). The structure is documented below. Net []MongosNetInitParameters `json:"net,omitempty" tf:"net,omitempty"` } type MongosNetInitParameters struct { - // Specifies the default compressor(s) to use for communication between this mongod or mongos. - // Accepts array of compressors. Order matters. Available compressors: snappy, zlib, zstd, disabled. To disable network compression, make "disabled" the only value. - // For more information, see the net.Compression.Compressors - // description in the official documentation. + // Specifies the default compressor(s) to use for communication between this mongod or mongos. Accepts array of compressors. Order matters. Available compressors: snappy, zlib, zstd, disabled. To disable network compression, make "disabled" the only value. For more information, see the net.Compression.Compressors description in the official documentation. Compressors []*string `json:"compressors,omitempty" tf:"compressors,omitempty"` - // The maximum number of simultaneous connections that host will accept. - // For more information, see the net.maxIncomingConnections - // description in the official documentation. + // The maximum number of simultaneous connections that host will accept. For more information, see the net.maxIncomingConnections description in the official documentation. MaxIncomingConnections *float64 `json:"maxIncomingConnections,omitempty" tf:"max_incoming_connections,omitempty"` } type MongosNetObservation struct { - // Specifies the default compressor(s) to use for communication between this mongod or mongos. - // Accepts array of compressors. Order matters. Available compressors: snappy, zlib, zstd, disabled. To disable network compression, make "disabled" the only value. - // For more information, see the net.Compression.Compressors - // description in the official documentation. + // Specifies the default compressor(s) to use for communication between this mongod or mongos. Accepts array of compressors. Order matters. Available compressors: snappy, zlib, zstd, disabled. To disable network compression, make "disabled" the only value. For more information, see the net.Compression.Compressors description in the official documentation. Compressors []*string `json:"compressors,omitempty" tf:"compressors,omitempty"` - // The maximum number of simultaneous connections that host will accept. - // For more information, see the net.maxIncomingConnections - // description in the official documentation. + // The maximum number of simultaneous connections that host will accept. For more information, see the net.maxIncomingConnections description in the official documentation. MaxIncomingConnections *float64 `json:"maxIncomingConnections,omitempty" tf:"max_incoming_connections,omitempty"` } type MongosNetParameters struct { - // Specifies the default compressor(s) to use for communication between this mongod or mongos. - // Accepts array of compressors. Order matters. Available compressors: snappy, zlib, zstd, disabled. To disable network compression, make "disabled" the only value. - // For more information, see the net.Compression.Compressors - // description in the official documentation. + // Specifies the default compressor(s) to use for communication between this mongod or mongos. Accepts array of compressors. Order matters. Available compressors: snappy, zlib, zstd, disabled. To disable network compression, make "disabled" the only value. For more information, see the net.Compression.Compressors description in the official documentation. // +kubebuilder:validation:Optional Compressors []*string `json:"compressors,omitempty" tf:"compressors,omitempty"` - // The maximum number of simultaneous connections that host will accept. - // For more information, see the net.maxIncomingConnections - // description in the official documentation. + // The maximum number of simultaneous connections that host will accept. For more information, see the net.maxIncomingConnections description in the official documentation. // +kubebuilder:validation:Optional MaxIncomingConnections *float64 `json:"maxIncomingConnections,omitempty" tf:"max_incoming_connections,omitempty"` } type MongosObservation struct { - // A set of network settings - // (see the net option). - // The structure is documented below. + // A set of network settings (see the net option). The structure is documented below. Net []MongosNetObservation `json:"net,omitempty" tf:"net,omitempty"` } type MongosParameters struct { - // A set of network settings - // (see the net option). - // The structure is documented below. + // A set of network settings (see the net option). The structure is documented below. // +kubebuilder:validation:Optional Net []MongosNetParameters `json:"net,omitempty" tf:"net,omitempty"` } type NetInitParameters struct { - // The maximum number of simultaneous connections that host will accept. - // For more information, see the net.maxIncomingConnections - // description in the official documentation. + // The maximum number of simultaneous connections that host will accept. For more information, see the net.maxIncomingConnections description in the official documentation. MaxIncomingConnections *float64 `json:"maxIncomingConnections,omitempty" tf:"max_incoming_connections,omitempty"` } type NetObservation struct { - // The maximum number of simultaneous connections that host will accept. - // For more information, see the net.maxIncomingConnections - // description in the official documentation. + // The maximum number of simultaneous connections that host will accept. For more information, see the net.maxIncomingConnections description in the official documentation. MaxIncomingConnections *float64 `json:"maxIncomingConnections,omitempty" tf:"max_incoming_connections,omitempty"` } type NetParameters struct { - // The maximum number of simultaneous connections that host will accept. - // For more information, see the net.maxIncomingConnections - // description in the official documentation. + // The maximum number of simultaneous connections that host will accept. For more information, see the net.maxIncomingConnections description in the official documentation. // +kubebuilder:validation:Optional MaxIncomingConnections *float64 `json:"maxIncomingConnections,omitempty" tf:"max_incoming_connections,omitempty"` } type OperationProfilingInitParameters struct { - // Specifies which operations should be profiled. The following profiler levels are available: off, slow_op, all. - // For more information, see the operationProfiling.mode - // description in the official documentation. + // Specifies which operations should be profiled. The following profiler levels are available: off, slow_op, all. For more information, see the operationProfiling.mode description in the official documentation. Mode *string `json:"mode,omitempty" tf:"mode,omitempty"` - // The slow operation time threshold, in milliseconds. Operations that run for longer than this threshold are considered slow. - // For more information, see the operationProfiling.slowOpThresholdMs - // description in the official documentation. + // The slow operation time threshold, in milliseconds. Operations that run for longer than this threshold are considered slow. For more information, see the operationProfiling.slowOpThresholdMs description in the official documentation. SlowOpThreshold *float64 `json:"slowOpThreshold,omitempty" tf:"slow_op_threshold,omitempty"` } type OperationProfilingObservation struct { - // Specifies which operations should be profiled. The following profiler levels are available: off, slow_op, all. - // For more information, see the operationProfiling.mode - // description in the official documentation. + // Specifies which operations should be profiled. The following profiler levels are available: off, slow_op, all. For more information, see the operationProfiling.mode description in the official documentation. Mode *string `json:"mode,omitempty" tf:"mode,omitempty"` - // The slow operation time threshold, in milliseconds. Operations that run for longer than this threshold are considered slow. - // For more information, see the operationProfiling.slowOpThresholdMs - // description in the official documentation. + // The slow operation time threshold, in milliseconds. Operations that run for longer than this threshold are considered slow. For more information, see the operationProfiling.slowOpThresholdMs description in the official documentation. SlowOpThreshold *float64 `json:"slowOpThreshold,omitempty" tf:"slow_op_threshold,omitempty"` } type OperationProfilingParameters struct { - // Specifies which operations should be profiled. The following profiler levels are available: off, slow_op, all. - // For more information, see the operationProfiling.mode - // description in the official documentation. + // Specifies which operations should be profiled. The following profiler levels are available: off, slow_op, all. For more information, see the operationProfiling.mode description in the official documentation. // +kubebuilder:validation:Optional Mode *string `json:"mode,omitempty" tf:"mode,omitempty"` - // The slow operation time threshold, in milliseconds. Operations that run for longer than this threshold are considered slow. - // For more information, see the operationProfiling.slowOpThresholdMs - // description in the official documentation. + // The slow operation time threshold, in milliseconds. Operations that run for longer than this threshold are considered slow. For more information, see the operationProfiling.slowOpThresholdMs description in the official documentation. // +kubebuilder:validation:Optional SlowOpThreshold *float64 `json:"slowOpThreshold,omitempty" tf:"slow_op_threshold,omitempty"` } @@ -1392,8 +1379,7 @@ type ResourcesMongocfgInitParameters struct { // Volume of the storage available to a MongoDB host, in gigabytes. DiskSize *float64 `json:"diskSize,omitempty" tf:"disk_size,omitempty"` - // Type of the storage of MongoDB hosts. - // For more information see the official documentation. + // Type of the storage of MongoDB hosts. For more information see the official documentation. DiskTypeID *string `json:"diskTypeId,omitempty" tf:"disk_type_id,omitempty"` ResourcePresetID *string `json:"resourcePresetId,omitempty" tf:"resource_preset_id,omitempty"` @@ -1404,8 +1390,7 @@ type ResourcesMongocfgObservation struct { // Volume of the storage available to a MongoDB host, in gigabytes. DiskSize *float64 `json:"diskSize,omitempty" tf:"disk_size,omitempty"` - // Type of the storage of MongoDB hosts. - // For more information see the official documentation. + // Type of the storage of MongoDB hosts. For more information see the official documentation. DiskTypeID *string `json:"diskTypeId,omitempty" tf:"disk_type_id,omitempty"` ResourcePresetID *string `json:"resourcePresetId,omitempty" tf:"resource_preset_id,omitempty"` @@ -1417,8 +1402,7 @@ type ResourcesMongocfgParameters struct { // +kubebuilder:validation:Optional DiskSize *float64 `json:"diskSize" tf:"disk_size,omitempty"` - // Type of the storage of MongoDB hosts. - // For more information see the official documentation. + // Type of the storage of MongoDB hosts. For more information see the official documentation. // +kubebuilder:validation:Optional DiskTypeID *string `json:"diskTypeId" tf:"disk_type_id,omitempty"` @@ -1431,8 +1415,7 @@ type ResourcesMongodInitParameters struct { // Volume of the storage available to a MongoDB host, in gigabytes. DiskSize *float64 `json:"diskSize,omitempty" tf:"disk_size,omitempty"` - // Type of the storage of MongoDB hosts. - // For more information see the official documentation. + // Type of the storage of MongoDB hosts. For more information see the official documentation. DiskTypeID *string `json:"diskTypeId,omitempty" tf:"disk_type_id,omitempty"` ResourcePresetID *string `json:"resourcePresetId,omitempty" tf:"resource_preset_id,omitempty"` @@ -1443,8 +1426,7 @@ type ResourcesMongodObservation struct { // Volume of the storage available to a MongoDB host, in gigabytes. DiskSize *float64 `json:"diskSize,omitempty" tf:"disk_size,omitempty"` - // Type of the storage of MongoDB hosts. - // For more information see the official documentation. + // Type of the storage of MongoDB hosts. For more information see the official documentation. DiskTypeID *string `json:"diskTypeId,omitempty" tf:"disk_type_id,omitempty"` ResourcePresetID *string `json:"resourcePresetId,omitempty" tf:"resource_preset_id,omitempty"` @@ -1456,8 +1438,7 @@ type ResourcesMongodParameters struct { // +kubebuilder:validation:Optional DiskSize *float64 `json:"diskSize" tf:"disk_size,omitempty"` - // Type of the storage of MongoDB hosts. - // For more information see the official documentation. + // Type of the storage of MongoDB hosts. For more information see the official documentation. // +kubebuilder:validation:Optional DiskTypeID *string `json:"diskTypeId" tf:"disk_type_id,omitempty"` @@ -1470,8 +1451,7 @@ type ResourcesMongoinfraInitParameters struct { // Volume of the storage available to a MongoDB host, in gigabytes. DiskSize *float64 `json:"diskSize,omitempty" tf:"disk_size,omitempty"` - // Type of the storage of MongoDB hosts. - // For more information see the official documentation. + // Type of the storage of MongoDB hosts. For more information see the official documentation. DiskTypeID *string `json:"diskTypeId,omitempty" tf:"disk_type_id,omitempty"` ResourcePresetID *string `json:"resourcePresetId,omitempty" tf:"resource_preset_id,omitempty"` @@ -1482,8 +1462,7 @@ type ResourcesMongoinfraObservation struct { // Volume of the storage available to a MongoDB host, in gigabytes. DiskSize *float64 `json:"diskSize,omitempty" tf:"disk_size,omitempty"` - // Type of the storage of MongoDB hosts. - // For more information see the official documentation. + // Type of the storage of MongoDB hosts. For more information see the official documentation. DiskTypeID *string `json:"diskTypeId,omitempty" tf:"disk_type_id,omitempty"` ResourcePresetID *string `json:"resourcePresetId,omitempty" tf:"resource_preset_id,omitempty"` @@ -1495,8 +1474,7 @@ type ResourcesMongoinfraParameters struct { // +kubebuilder:validation:Optional DiskSize *float64 `json:"diskSize" tf:"disk_size,omitempty"` - // Type of the storage of MongoDB hosts. - // For more information see the official documentation. + // Type of the storage of MongoDB hosts. For more information see the official documentation. // +kubebuilder:validation:Optional DiskTypeID *string `json:"diskTypeId" tf:"disk_type_id,omitempty"` @@ -1509,8 +1487,7 @@ type ResourcesMongosInitParameters struct { // Volume of the storage available to a MongoDB host, in gigabytes. DiskSize *float64 `json:"diskSize,omitempty" tf:"disk_size,omitempty"` - // Type of the storage of MongoDB hosts. - // For more information see the official documentation. + // Type of the storage of MongoDB hosts. For more information see the official documentation. DiskTypeID *string `json:"diskTypeId,omitempty" tf:"disk_type_id,omitempty"` ResourcePresetID *string `json:"resourcePresetId,omitempty" tf:"resource_preset_id,omitempty"` @@ -1521,8 +1498,7 @@ type ResourcesMongosObservation struct { // Volume of the storage available to a MongoDB host, in gigabytes. DiskSize *float64 `json:"diskSize,omitempty" tf:"disk_size,omitempty"` - // Type of the storage of MongoDB hosts. - // For more information see the official documentation. + // Type of the storage of MongoDB hosts. For more information see the official documentation. DiskTypeID *string `json:"diskTypeId,omitempty" tf:"disk_type_id,omitempty"` ResourcePresetID *string `json:"resourcePresetId,omitempty" tf:"resource_preset_id,omitempty"` @@ -1534,8 +1510,7 @@ type ResourcesMongosParameters struct { // +kubebuilder:validation:Optional DiskSize *float64 `json:"diskSize" tf:"disk_size,omitempty"` - // Type of the storage of MongoDB hosts. - // For more information see the official documentation. + // Type of the storage of MongoDB hosts. For more information see the official documentation. // +kubebuilder:validation:Optional DiskTypeID *string `json:"diskTypeId" tf:"disk_type_id,omitempty"` @@ -1574,208 +1549,145 @@ type RestoreParameters struct { type SecurityInitParameters struct { - // Enables the encryption for the WiredTiger storage engine. Can be either true or false. - // For more information see security.enableEncryption - // description in the official documentation. Available only in enterprise edition. + // Enables the encryption for the WiredTiger storage engine. Can be either true or false. For more information see security.enableEncryption description in the official documentation. Available only in enterprise edition. EnableEncryption *bool `json:"enableEncryption,omitempty" tf:"enable_encryption,omitempty"` - // Configuration of the third party key management appliance via the Key Management Interoperability Protocol (KMIP) - // (see Encryption tutorial ). Requires enable_encryption to be true. - // The structure is documented below. Available only in enterprise edition. + // Configuration of the third party key management appliance via the Key Management Interoperability Protocol (KMIP) (see Encryption tutorial ). Requires enable_encryption to be true. The structure is documented below. Available only in enterprise edition. Kmip []KmipInitParameters `json:"kmip,omitempty" tf:"kmip,omitempty"` } type SecurityObservation struct { - // Enables the encryption for the WiredTiger storage engine. Can be either true or false. - // For more information see security.enableEncryption - // description in the official documentation. Available only in enterprise edition. + // Enables the encryption for the WiredTiger storage engine. Can be either true or false. For more information see security.enableEncryption description in the official documentation. Available only in enterprise edition. EnableEncryption *bool `json:"enableEncryption,omitempty" tf:"enable_encryption,omitempty"` - // Configuration of the third party key management appliance via the Key Management Interoperability Protocol (KMIP) - // (see Encryption tutorial ). Requires enable_encryption to be true. - // The structure is documented below. Available only in enterprise edition. + // Configuration of the third party key management appliance via the Key Management Interoperability Protocol (KMIP) (see Encryption tutorial ). Requires enable_encryption to be true. The structure is documented below. Available only in enterprise edition. Kmip []KmipObservation `json:"kmip,omitempty" tf:"kmip,omitempty"` } type SecurityParameters struct { - // Enables the encryption for the WiredTiger storage engine. Can be either true or false. - // For more information see security.enableEncryption - // description in the official documentation. Available only in enterprise edition. + // Enables the encryption for the WiredTiger storage engine. Can be either true or false. For more information see security.enableEncryption description in the official documentation. Available only in enterprise edition. // +kubebuilder:validation:Optional EnableEncryption *bool `json:"enableEncryption,omitempty" tf:"enable_encryption,omitempty"` - // Configuration of the third party key management appliance via the Key Management Interoperability Protocol (KMIP) - // (see Encryption tutorial ). Requires enable_encryption to be true. - // The structure is documented below. Available only in enterprise edition. + // Configuration of the third party key management appliance via the Key Management Interoperability Protocol (KMIP) (see Encryption tutorial ). Requires enable_encryption to be true. The structure is documented below. Available only in enterprise edition. // +kubebuilder:validation:Optional Kmip []KmipParameters `json:"kmip,omitempty" tf:"kmip,omitempty"` } type SetParameterInitParameters struct { - // Enables the auditing of authorization successes. Can be either true or false. - // For more information, see the auditAuthorizationSuccess - // description in the official documentation. Available only in enterprise edition. + // Enables the auditing of authorization successes. Can be either true or false. For more information, see the auditAuthorizationSuccess description in the official documentation. Available only in enterprise edition. AuditAuthorizationSuccess *bool `json:"auditAuthorizationSuccess,omitempty" tf:"audit_authorization_success,omitempty"` - // Enables the flow control. Can be either true or false. - // For more information, see the enableFlowControl - // description in the official documentation. + // Enables the flow control. Can be either true or false. For more information, see the enableFlowControl description in the official documentation. EnableFlowControl *bool `json:"enableFlowControl,omitempty" tf:"enable_flow_control,omitempty"` - // The minimum time window in seconds for which the storage engine keeps the snapshot history. - // For more information, see the minSnapshotHistoryWindowInSeconds - // description in the official documentation. + // The minimum time window in seconds for which the storage engine keeps the snapshot history. For more information, see the minSnapshotHistoryWindowInSeconds description in the official documentation. MinSnapshotHistoryWindowInSeconds *float64 `json:"minSnapshotHistoryWindowInSeconds,omitempty" tf:"min_snapshot_history_window_in_seconds,omitempty"` } type SetParameterObservation struct { - // Enables the auditing of authorization successes. Can be either true or false. - // For more information, see the auditAuthorizationSuccess - // description in the official documentation. Available only in enterprise edition. + // Enables the auditing of authorization successes. Can be either true or false. For more information, see the auditAuthorizationSuccess description in the official documentation. Available only in enterprise edition. AuditAuthorizationSuccess *bool `json:"auditAuthorizationSuccess,omitempty" tf:"audit_authorization_success,omitempty"` - // Enables the flow control. Can be either true or false. - // For more information, see the enableFlowControl - // description in the official documentation. + // Enables the flow control. Can be either true or false. For more information, see the enableFlowControl description in the official documentation. EnableFlowControl *bool `json:"enableFlowControl,omitempty" tf:"enable_flow_control,omitempty"` - // The minimum time window in seconds for which the storage engine keeps the snapshot history. - // For more information, see the minSnapshotHistoryWindowInSeconds - // description in the official documentation. + // The minimum time window in seconds for which the storage engine keeps the snapshot history. For more information, see the minSnapshotHistoryWindowInSeconds description in the official documentation. MinSnapshotHistoryWindowInSeconds *float64 `json:"minSnapshotHistoryWindowInSeconds,omitempty" tf:"min_snapshot_history_window_in_seconds,omitempty"` } type SetParameterParameters struct { - // Enables the auditing of authorization successes. Can be either true or false. - // For more information, see the auditAuthorizationSuccess - // description in the official documentation. Available only in enterprise edition. + // Enables the auditing of authorization successes. Can be either true or false. For more information, see the auditAuthorizationSuccess description in the official documentation. Available only in enterprise edition. // +kubebuilder:validation:Optional AuditAuthorizationSuccess *bool `json:"auditAuthorizationSuccess,omitempty" tf:"audit_authorization_success,omitempty"` - // Enables the flow control. Can be either true or false. - // For more information, see the enableFlowControl - // description in the official documentation. + // Enables the flow control. Can be either true or false. For more information, see the enableFlowControl description in the official documentation. // +kubebuilder:validation:Optional EnableFlowControl *bool `json:"enableFlowControl,omitempty" tf:"enable_flow_control,omitempty"` - // The minimum time window in seconds for which the storage engine keeps the snapshot history. - // For more information, see the minSnapshotHistoryWindowInSeconds - // description in the official documentation. + // The minimum time window in seconds for which the storage engine keeps the snapshot history. For more information, see the minSnapshotHistoryWindowInSeconds description in the official documentation. // +kubebuilder:validation:Optional MinSnapshotHistoryWindowInSeconds *float64 `json:"minSnapshotHistoryWindowInSeconds,omitempty" tf:"min_snapshot_history_window_in_seconds,omitempty"` } type StorageInitParameters struct { - // The WiredTiger engine settings. - // (see the storage.wiredTiger option). - // These settings available only on mongod hosts. The structure is documented below. + // The WiredTiger engine settings. (see the storage.wiredTiger option). These settings available only on mongod hosts. The structure is documented below. WiredTiger []WiredTigerInitParameters `json:"wiredTiger,omitempty" tf:"wired_tiger,omitempty"` } type StorageObservation struct { - // The WiredTiger engine settings. - // (see the storage.wiredTiger option). - // These settings available only on mongod hosts. The structure is documented below. + // The WiredTiger engine settings. (see the storage.wiredTiger option). These settings available only on mongod hosts. The structure is documented below. WiredTiger []WiredTigerObservation `json:"wiredTiger,omitempty" tf:"wired_tiger,omitempty"` } type StorageParameters struct { - // The WiredTiger engine settings. - // (see the storage.wiredTiger option). - // These settings available only on mongod hosts. The structure is documented below. + // The WiredTiger engine settings. (see the storage.wiredTiger option). These settings available only on mongod hosts. The structure is documented below. // +kubebuilder:validation:Optional WiredTiger []WiredTigerParameters `json:"wiredTiger,omitempty" tf:"wired_tiger,omitempty"` } type StorageWiredTigerInitParameters struct { - // Specifies the default compression for collection data. You can override this on a per-collection basis when creating collections. - // Available compressors are: none, snappy, zlib, zstd. This setting available only on mongod hosts. - // For more information, see the storage.wiredTiger.collectionConfig.blockCompressor - // description in the official documentation. + // Specifies the default compression for collection data. You can override this on a per-collection basis when creating collections. Available compressors are: none, snappy, zlib, zstd. This setting available only on mongod hosts. For more information, see the storage.wiredTiger.collectionConfig.blockCompressor description in the official documentation. BlockCompressor *string `json:"blockCompressor,omitempty" tf:"block_compressor,omitempty"` - // Defines the maximum size of the internal cache that WiredTiger will use for all data. - // For more information, see the storage.wiredTiger.engineConfig.cacheSizeGB - // description in the official documentation. + // Defines the maximum size of the internal cache that WiredTiger will use for all data. For more information, see the storage.wiredTiger.engineConfig.cacheSizeGB description in the official documentation. CacheSizeGb *float64 `json:"cacheSizeGb,omitempty" tf:"cache_size_gb,omitempty"` - // Enables or disables prefix compression for index data. Đ¡an be either true or false. - // For more information, see the storage.wiredTiger.indexConfig.prefixCompression - // description in the official documentation. + // Enables or disables prefix compression for index data. Đ¡an be either true or false. For more information, see the storage.wiredTiger.indexConfig.prefixCompression description in the official documentation. PrefixCompression *bool `json:"prefixCompression,omitempty" tf:"prefix_compression,omitempty"` } type StorageWiredTigerObservation struct { - // Specifies the default compression for collection data. You can override this on a per-collection basis when creating collections. - // Available compressors are: none, snappy, zlib, zstd. This setting available only on mongod hosts. - // For more information, see the storage.wiredTiger.collectionConfig.blockCompressor - // description in the official documentation. + // Specifies the default compression for collection data. You can override this on a per-collection basis when creating collections. Available compressors are: none, snappy, zlib, zstd. This setting available only on mongod hosts. For more information, see the storage.wiredTiger.collectionConfig.blockCompressor description in the official documentation. BlockCompressor *string `json:"blockCompressor,omitempty" tf:"block_compressor,omitempty"` - // Defines the maximum size of the internal cache that WiredTiger will use for all data. - // For more information, see the storage.wiredTiger.engineConfig.cacheSizeGB - // description in the official documentation. + // Defines the maximum size of the internal cache that WiredTiger will use for all data. For more information, see the storage.wiredTiger.engineConfig.cacheSizeGB description in the official documentation. CacheSizeGb *float64 `json:"cacheSizeGb,omitempty" tf:"cache_size_gb,omitempty"` - // Enables or disables prefix compression for index data. Đ¡an be either true or false. - // For more information, see the storage.wiredTiger.indexConfig.prefixCompression - // description in the official documentation. + // Enables or disables prefix compression for index data. Đ¡an be either true or false. For more information, see the storage.wiredTiger.indexConfig.prefixCompression description in the official documentation. PrefixCompression *bool `json:"prefixCompression,omitempty" tf:"prefix_compression,omitempty"` } type StorageWiredTigerParameters struct { - // Specifies the default compression for collection data. You can override this on a per-collection basis when creating collections. - // Available compressors are: none, snappy, zlib, zstd. This setting available only on mongod hosts. - // For more information, see the storage.wiredTiger.collectionConfig.blockCompressor - // description in the official documentation. + // Specifies the default compression for collection data. You can override this on a per-collection basis when creating collections. Available compressors are: none, snappy, zlib, zstd. This setting available only on mongod hosts. For more information, see the storage.wiredTiger.collectionConfig.blockCompressor description in the official documentation. // +kubebuilder:validation:Optional BlockCompressor *string `json:"blockCompressor,omitempty" tf:"block_compressor,omitempty"` - // Defines the maximum size of the internal cache that WiredTiger will use for all data. - // For more information, see the storage.wiredTiger.engineConfig.cacheSizeGB - // description in the official documentation. + // Defines the maximum size of the internal cache that WiredTiger will use for all data. For more information, see the storage.wiredTiger.engineConfig.cacheSizeGB description in the official documentation. // +kubebuilder:validation:Optional CacheSizeGb *float64 `json:"cacheSizeGb,omitempty" tf:"cache_size_gb,omitempty"` - // Enables or disables prefix compression for index data. Đ¡an be either true or false. - // For more information, see the storage.wiredTiger.indexConfig.prefixCompression - // description in the official documentation. + // Enables or disables prefix compression for index data. Đ¡an be either true or false. For more information, see the storage.wiredTiger.indexConfig.prefixCompression description in the official documentation. // +kubebuilder:validation:Optional PrefixCompression *bool `json:"prefixCompression,omitempty" tf:"prefix_compression,omitempty"` } type WiredTigerInitParameters struct { - // Defines the maximum size of the internal cache that WiredTiger will use for all data. - // For more information, see the storage.wiredTiger.engineConfig.cacheSizeGB - // description in the official documentation. + // Defines the maximum size of the internal cache that WiredTiger will use for all data. For more information, see the storage.wiredTiger.engineConfig.cacheSizeGB description in the official documentation. CacheSizeGb *float64 `json:"cacheSizeGb,omitempty" tf:"cache_size_gb,omitempty"` } type WiredTigerObservation struct { - // Defines the maximum size of the internal cache that WiredTiger will use for all data. - // For more information, see the storage.wiredTiger.engineConfig.cacheSizeGB - // description in the official documentation. + // Defines the maximum size of the internal cache that WiredTiger will use for all data. For more information, see the storage.wiredTiger.engineConfig.cacheSizeGB description in the official documentation. CacheSizeGb *float64 `json:"cacheSizeGb,omitempty" tf:"cache_size_gb,omitempty"` } type WiredTigerParameters struct { - // Defines the maximum size of the internal cache that WiredTiger will use for all data. - // For more information, see the storage.wiredTiger.engineConfig.cacheSizeGB - // description in the official documentation. + // Defines the maximum size of the internal cache that WiredTiger will use for all data. For more information, see the storage.wiredTiger.engineConfig.cacheSizeGB description in the official documentation. // +kubebuilder:validation:Optional CacheSizeGb *float64 `json:"cacheSizeGb,omitempty" tf:"cache_size_gb,omitempty"` } diff --git a/apis/mdb/v1alpha1/zz_mysqlcluster_types.go b/apis/mdb/v1alpha1/zz_mysqlcluster_types.go index dde2e06..f49b7bb 100755 --- a/apis/mdb/v1alpha1/zz_mysqlcluster_types.go +++ b/apis/mdb/v1alpha1/zz_mysqlcluster_types.go @@ -265,7 +265,7 @@ type MySQLClusterInitParameters struct { // (Deprecated) To manage databases, please switch to using a separate resource type yandex_mdb_mysql_databases. Database []MySQLClusterDatabaseInitParameters `json:"database,omitempty" tf:"database,omitempty"` - // Inhibits deletion of the cluster. Can be either true or false. + // Inhibits deletion of the cluster. Can be either true or false. DeletionProtection *bool `json:"deletionProtection,omitempty" tf:"deletion_protection,omitempty"` // Description of the MySQL cluster. @@ -274,8 +274,7 @@ type MySQLClusterInitParameters struct { // Deployment environment of the MySQL cluster. Environment *string `json:"environment,omitempty" tf:"environment,omitempty"` - // The ID of the folder that the resource belongs to. If it - // is not provided, the default provider folder is used. + // The ID of the folder that the resource belongs to. If it is not provided, the default provider folder is used. // +crossplane:generate:reference:type=github.com/tagesjump/provider-upjet-yc/apis/resourcemanager/v1alpha1.Folder FolderID *string `json:"folderId,omitempty" tf:"folder_id,omitempty"` @@ -407,7 +406,7 @@ type MySQLClusterObservation struct { // (Deprecated) To manage databases, please switch to using a separate resource type yandex_mdb_mysql_databases. Database []MySQLClusterDatabaseObservation `json:"database,omitempty" tf:"database,omitempty"` - // Inhibits deletion of the cluster. Can be either true or false. + // Inhibits deletion of the cluster. Can be either true or false. DeletionProtection *bool `json:"deletionProtection,omitempty" tf:"deletion_protection,omitempty"` // Description of the MySQL cluster. @@ -416,8 +415,7 @@ type MySQLClusterObservation struct { // Deployment environment of the MySQL cluster. Environment *string `json:"environment,omitempty" tf:"environment,omitempty"` - // The ID of the folder that the resource belongs to. If it - // is not provided, the default provider folder is used. + // The ID of the folder that the resource belongs to. If it is not provided, the default provider folder is used. FolderID *string `json:"folderId,omitempty" tf:"folder_id,omitempty"` // Aggregated health of the cluster. @@ -493,7 +491,7 @@ type MySQLClusterParameters struct { // +kubebuilder:validation:Optional Database []MySQLClusterDatabaseParameters `json:"database,omitempty" tf:"database,omitempty"` - // Inhibits deletion of the cluster. Can be either true or false. + // Inhibits deletion of the cluster. Can be either true or false. // +kubebuilder:validation:Optional DeletionProtection *bool `json:"deletionProtection,omitempty" tf:"deletion_protection,omitempty"` @@ -505,8 +503,7 @@ type MySQLClusterParameters struct { // +kubebuilder:validation:Optional Environment *string `json:"environment,omitempty" tf:"environment,omitempty"` - // The ID of the folder that the resource belongs to. If it - // is not provided, the default provider folder is used. + // The ID of the folder that the resource belongs to. If it is not provided, the default provider folder is used. // +crossplane:generate:reference:type=github.com/tagesjump/provider-upjet-yc/apis/resourcemanager/v1alpha1.Folder // +kubebuilder:validation:Optional FolderID *string `json:"folderId,omitempty" tf:"folder_id,omitempty"` @@ -702,13 +699,11 @@ type MySQLClusterUserInitParameters struct { // Authentication plugin. Allowed values: MYSQL_NATIVE_PASSWORD, CACHING_SHA2_PASSWORD, SHA256_PASSWORD (for version 5.7 MYSQL_NATIVE_PASSWORD, SHA256_PASSWORD) AuthenticationPlugin *string `json:"authenticationPlugin,omitempty" tf:"authentication_plugin,omitempty"` - // User's connection limits. The structure is documented below. - // If the attribute is not specified there will be no changes. + // User's connection limits. The structure is documented below. If the attribute is not specified there will be no changes. ConnectionLimits []ConnectionLimitsInitParameters `json:"connectionLimits,omitempty" tf:"connection_limits,omitempty"` // List user's global permissions - // Allowed permissions: REPLICATION_CLIENT, REPLICATION_SLAVE, PROCESS for clear list use empty list. - // If the attribute is not specified there will be no changes. + // Allowed permissions: REPLICATION_CLIENT, REPLICATION_SLAVE, PROCESS for clear list use empty list. If the attribute is not specified there will be no changes. // +listType=set GlobalPermissions []*string `json:"globalPermissions,omitempty" tf:"global_permissions,omitempty"` @@ -727,13 +722,11 @@ type MySQLClusterUserObservation struct { // Authentication plugin. Allowed values: MYSQL_NATIVE_PASSWORD, CACHING_SHA2_PASSWORD, SHA256_PASSWORD (for version 5.7 MYSQL_NATIVE_PASSWORD, SHA256_PASSWORD) AuthenticationPlugin *string `json:"authenticationPlugin,omitempty" tf:"authentication_plugin,omitempty"` - // User's connection limits. The structure is documented below. - // If the attribute is not specified there will be no changes. + // User's connection limits. The structure is documented below. If the attribute is not specified there will be no changes. ConnectionLimits []ConnectionLimitsObservation `json:"connectionLimits,omitempty" tf:"connection_limits,omitempty"` // List user's global permissions - // Allowed permissions: REPLICATION_CLIENT, REPLICATION_SLAVE, PROCESS for clear list use empty list. - // If the attribute is not specified there will be no changes. + // Allowed permissions: REPLICATION_CLIENT, REPLICATION_SLAVE, PROCESS for clear list use empty list. If the attribute is not specified there will be no changes. // +listType=set GlobalPermissions []*string `json:"globalPermissions,omitempty" tf:"global_permissions,omitempty"` @@ -750,14 +743,12 @@ type MySQLClusterUserParameters struct { // +kubebuilder:validation:Optional AuthenticationPlugin *string `json:"authenticationPlugin,omitempty" tf:"authentication_plugin,omitempty"` - // User's connection limits. The structure is documented below. - // If the attribute is not specified there will be no changes. + // User's connection limits. The structure is documented below. If the attribute is not specified there will be no changes. // +kubebuilder:validation:Optional ConnectionLimits []ConnectionLimitsParameters `json:"connectionLimits,omitempty" tf:"connection_limits,omitempty"` // List user's global permissions - // Allowed permissions: REPLICATION_CLIENT, REPLICATION_SLAVE, PROCESS for clear list use empty list. - // If the attribute is not specified there will be no changes. + // Allowed permissions: REPLICATION_CLIENT, REPLICATION_SLAVE, PROCESS for clear list use empty list. If the attribute is not specified there will be no changes. // +kubebuilder:validation:Optional // +listType=set GlobalPermissions []*string `json:"globalPermissions,omitempty" tf:"global_permissions,omitempty"` @@ -780,9 +771,7 @@ type MySQLClusterUserPermissionInitParameters struct { // The name of the database that the permission grants access to. DatabaseName *string `json:"databaseName,omitempty" tf:"database_name,omitempty"` - // List user's roles in the database. - // Allowed roles: ALL,ALTER,ALTER_ROUTINE,CREATE,CREATE_ROUTINE,CREATE_TEMPORARY_TABLES, - // CREATE_VIEW,DELETE,DROP,EVENT,EXECUTE,INDEX,INSERT,LOCK_TABLES,SELECT,SHOW_VIEW,TRIGGER,UPDATE. + // List user's roles in the database. Allowed roles: ALL,ALTER,ALTER_ROUTINE,CREATE,CREATE_ROUTINE,CREATE_TEMPORARY_TABLES, CREATE_VIEW,DELETE,DROP,EVENT,EXECUTE,INDEX,INSERT,LOCK_TABLES,SELECT,SHOW_VIEW,TRIGGER,UPDATE. Roles []*string `json:"roles,omitempty" tf:"roles,omitempty"` } @@ -791,9 +780,7 @@ type MySQLClusterUserPermissionObservation struct { // The name of the database that the permission grants access to. DatabaseName *string `json:"databaseName,omitempty" tf:"database_name,omitempty"` - // List user's roles in the database. - // Allowed roles: ALL,ALTER,ALTER_ROUTINE,CREATE,CREATE_ROUTINE,CREATE_TEMPORARY_TABLES, - // CREATE_VIEW,DELETE,DROP,EVENT,EXECUTE,INDEX,INSERT,LOCK_TABLES,SELECT,SHOW_VIEW,TRIGGER,UPDATE. + // List user's roles in the database. Allowed roles: ALL,ALTER,ALTER_ROUTINE,CREATE,CREATE_ROUTINE,CREATE_TEMPORARY_TABLES, CREATE_VIEW,DELETE,DROP,EVENT,EXECUTE,INDEX,INSERT,LOCK_TABLES,SELECT,SHOW_VIEW,TRIGGER,UPDATE. Roles []*string `json:"roles,omitempty" tf:"roles,omitempty"` } @@ -803,9 +790,7 @@ type MySQLClusterUserPermissionParameters struct { // +kubebuilder:validation:Optional DatabaseName *string `json:"databaseName" tf:"database_name,omitempty"` - // List user's roles in the database. - // Allowed roles: ALL,ALTER,ALTER_ROUTINE,CREATE,CREATE_ROUTINE,CREATE_TEMPORARY_TABLES, - // CREATE_VIEW,DELETE,DROP,EVENT,EXECUTE,INDEX,INSERT,LOCK_TABLES,SELECT,SHOW_VIEW,TRIGGER,UPDATE. + // List user's roles in the database. Allowed roles: ALL,ALTER,ALTER_ROUTINE,CREATE,CREATE_ROUTINE,CREATE_TEMPORARY_TABLES, CREATE_VIEW,DELETE,DROP,EVENT,EXECUTE,INDEX,INSERT,LOCK_TABLES,SELECT,SHOW_VIEW,TRIGGER,UPDATE. // +kubebuilder:validation:Optional Roles []*string `json:"roles,omitempty" tf:"roles,omitempty"` } diff --git a/apis/mdb/v1alpha1/zz_mysqluser_types.go b/apis/mdb/v1alpha1/zz_mysqluser_types.go index 14930bb..63e326e 100755 --- a/apis/mdb/v1alpha1/zz_mysqluser_types.go +++ b/apis/mdb/v1alpha1/zz_mysqluser_types.go @@ -74,13 +74,11 @@ type MySQLUserInitParameters struct { // +kubebuilder:validation:Optional ClusterIDSelector *v1.Selector `json:"clusterIdSelector,omitempty" tf:"-"` - // User's connection limits. The structure is documented below. - // If the attribute is not specified there will be no changes. + // User's connection limits. The structure is documented below. If the attribute is not specified there will be no changes. ConnectionLimits []MySQLUserConnectionLimitsInitParameters `json:"connectionLimits,omitempty" tf:"connection_limits,omitempty"` // List user's global permissions - // Allowed permissions: REPLICATION_CLIENT, REPLICATION_SLAVE, PROCESS for clear list use empty list. - // If the attribute is not specified there will be no changes. + // Allowed permissions: REPLICATION_CLIENT, REPLICATION_SLAVE, PROCESS for clear list use empty list. If the attribute is not specified there will be no changes. // +listType=set GlobalPermissions []*string `json:"globalPermissions,omitempty" tf:"global_permissions,omitempty"` @@ -101,13 +99,11 @@ type MySQLUserObservation struct { ClusterID *string `json:"clusterId,omitempty" tf:"cluster_id,omitempty"` - // User's connection limits. The structure is documented below. - // If the attribute is not specified there will be no changes. + // User's connection limits. The structure is documented below. If the attribute is not specified there will be no changes. ConnectionLimits []MySQLUserConnectionLimitsObservation `json:"connectionLimits,omitempty" tf:"connection_limits,omitempty"` // List user's global permissions - // Allowed permissions: REPLICATION_CLIENT, REPLICATION_SLAVE, PROCESS for clear list use empty list. - // If the attribute is not specified there will be no changes. + // Allowed permissions: REPLICATION_CLIENT, REPLICATION_SLAVE, PROCESS for clear list use empty list. If the attribute is not specified there will be no changes. // +listType=set GlobalPermissions []*string `json:"globalPermissions,omitempty" tf:"global_permissions,omitempty"` @@ -138,14 +134,12 @@ type MySQLUserParameters struct { // +kubebuilder:validation:Optional ClusterIDSelector *v1.Selector `json:"clusterIdSelector,omitempty" tf:"-"` - // User's connection limits. The structure is documented below. - // If the attribute is not specified there will be no changes. + // User's connection limits. The structure is documented below. If the attribute is not specified there will be no changes. // +kubebuilder:validation:Optional ConnectionLimits []MySQLUserConnectionLimitsParameters `json:"connectionLimits,omitempty" tf:"connection_limits,omitempty"` // List user's global permissions - // Allowed permissions: REPLICATION_CLIENT, REPLICATION_SLAVE, PROCESS for clear list use empty list. - // If the attribute is not specified there will be no changes. + // Allowed permissions: REPLICATION_CLIENT, REPLICATION_SLAVE, PROCESS for clear list use empty list. If the attribute is not specified there will be no changes. // +kubebuilder:validation:Optional // +listType=set GlobalPermissions []*string `json:"globalPermissions,omitempty" tf:"global_permissions,omitempty"` @@ -178,9 +172,7 @@ type MySQLUserPermissionInitParameters struct { // +kubebuilder:validation:Optional DatabaseNameSelector *v1.Selector `json:"databaseNameSelector,omitempty" tf:"-"` - // List user's roles in the database. - // Allowed roles: ALL,ALTER,ALTER_ROUTINE,CREATE,CREATE_ROUTINE,CREATE_TEMPORARY_TABLES, - // CREATE_VIEW,DELETE,DROP,EVENT,EXECUTE,INDEX,INSERT,LOCK_TABLES,SELECT,SHOW_VIEW,TRIGGER,UPDATE. + // List user's roles in the database. Allowed roles: ALL,ALTER,ALTER_ROUTINE,CREATE,CREATE_ROUTINE,CREATE_TEMPORARY_TABLES, CREATE_VIEW,DELETE,DROP,EVENT,EXECUTE,INDEX,INSERT,LOCK_TABLES,SELECT,SHOW_VIEW,TRIGGER,UPDATE. Roles []*string `json:"roles,omitempty" tf:"roles,omitempty"` } @@ -189,9 +181,7 @@ type MySQLUserPermissionObservation struct { // The name of the database that the permission grants access to. DatabaseName *string `json:"databaseName,omitempty" tf:"database_name,omitempty"` - // List user's roles in the database. - // Allowed roles: ALL,ALTER,ALTER_ROUTINE,CREATE,CREATE_ROUTINE,CREATE_TEMPORARY_TABLES, - // CREATE_VIEW,DELETE,DROP,EVENT,EXECUTE,INDEX,INSERT,LOCK_TABLES,SELECT,SHOW_VIEW,TRIGGER,UPDATE. + // List user's roles in the database. Allowed roles: ALL,ALTER,ALTER_ROUTINE,CREATE,CREATE_ROUTINE,CREATE_TEMPORARY_TABLES, CREATE_VIEW,DELETE,DROP,EVENT,EXECUTE,INDEX,INSERT,LOCK_TABLES,SELECT,SHOW_VIEW,TRIGGER,UPDATE. Roles []*string `json:"roles,omitempty" tf:"roles,omitempty"` } @@ -211,9 +201,7 @@ type MySQLUserPermissionParameters struct { // +kubebuilder:validation:Optional DatabaseNameSelector *v1.Selector `json:"databaseNameSelector,omitempty" tf:"-"` - // List user's roles in the database. - // Allowed roles: ALL,ALTER,ALTER_ROUTINE,CREATE,CREATE_ROUTINE,CREATE_TEMPORARY_TABLES, - // CREATE_VIEW,DELETE,DROP,EVENT,EXECUTE,INDEX,INSERT,LOCK_TABLES,SELECT,SHOW_VIEW,TRIGGER,UPDATE. + // List user's roles in the database. Allowed roles: ALL,ALTER,ALTER_ROUTINE,CREATE,CREATE_ROUTINE,CREATE_TEMPORARY_TABLES, CREATE_VIEW,DELETE,DROP,EVENT,EXECUTE,INDEX,INSERT,LOCK_TABLES,SELECT,SHOW_VIEW,TRIGGER,UPDATE. // +kubebuilder:validation:Optional Roles []*string `json:"roles,omitempty" tf:"roles,omitempty"` } diff --git a/apis/mdb/v1alpha1/zz_opensearchcluster_types.go b/apis/mdb/v1alpha1/zz_opensearchcluster_types.go deleted file mode 100755 index 88b717a..0000000 --- a/apis/mdb/v1alpha1/zz_opensearchcluster_types.go +++ /dev/null @@ -1,689 +0,0 @@ -// Code generated by upjet. DO NOT EDIT. - -package v1alpha1 - -import ( - metav1 "k8s.io/apimachinery/pkg/apis/meta/v1" - "k8s.io/apimachinery/pkg/runtime/schema" - - v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" -) - -type DashboardsInitParameters struct { - - // A set of named OpenSearch node group configurations. The structure is documented below. - NodeGroups []NodeGroupsInitParameters `json:"nodeGroups,omitempty" tf:"node_groups,omitempty"` -} - -type DashboardsObservation struct { - - // A set of named OpenSearch node group configurations. The structure is documented below. - NodeGroups []NodeGroupsObservation `json:"nodeGroups,omitempty" tf:"node_groups,omitempty"` -} - -type DashboardsParameters struct { - - // A set of named OpenSearch node group configurations. The structure is documented below. - // +kubebuilder:validation:Optional - NodeGroups []NodeGroupsParameters `json:"nodeGroups" tf:"node_groups,omitempty"` -} - -type HostsInitParameters struct { -} - -type HostsObservation struct { - - // Sets whether the host should get a public IP address. Can be either true or false. - AssignPublicIP *bool `json:"assignPublicIp,omitempty" tf:"assign_public_ip,omitempty"` - - // The fully qualified domain name of the host. - Fqdn *string `json:"fqdn,omitempty" tf:"fqdn,omitempty"` - - // The roles of the deployed host. Can contain DATA and/or MANAGER roles. Will be empty for DASHBOARDS type. - // +listType=set - Roles []*string `json:"roles,omitempty" tf:"roles,omitempty"` - - // The ID of the subnet, to which the host belongs. The subnet must - // be a part of the network to which the cluster belongs. - SubnetID *string `json:"subnetId,omitempty" tf:"subnet_id,omitempty"` - - // The type of the deployed host. Can be either OPENSEARCH or DASHBOARDS. - Type *string `json:"type,omitempty" tf:"type,omitempty"` - - // The availability zone where the OpenSearch host will be created. - // For more information see the official documentation. - Zone *string `json:"zone,omitempty" tf:"zone,omitempty"` -} - -type HostsParameters struct { -} - -type NodeGroupsInitParameters struct { - - // Sets whether the hosts should get a public IP address on creation. - AssignPublicIP *bool `json:"assignPublicIp,omitempty" tf:"assign_public_ip,omitempty"` - - HostsCount *float64 `json:"hostsCount,omitempty" tf:"hosts_count,omitempty"` - - // Name of OpenSearch node group. - Name *string `json:"name,omitempty" tf:"name,omitempty"` - - // Resources allocated to hosts of this OpenSearch node group. The structure is documented below. - Resources []NodeGroupsResourcesInitParameters `json:"resources,omitempty" tf:"resources,omitempty"` - - // A set of the subnets, to which the hosts belongs. The subnets must be a part of the network to which the cluster belongs. No other parameters should be changed simultaneously with this one, except zones_ids. - // +listType=set - SubnetIds []*string `json:"subnetIds,omitempty" tf:"subnet_ids,omitempty"` - - // +listType=set - ZoneIds []*string `json:"zoneIds,omitempty" tf:"zone_ids,omitempty"` -} - -type NodeGroupsObservation struct { - - // Sets whether the hosts should get a public IP address on creation. - AssignPublicIP *bool `json:"assignPublicIp,omitempty" tf:"assign_public_ip,omitempty"` - - HostsCount *float64 `json:"hostsCount,omitempty" tf:"hosts_count,omitempty"` - - // Name of OpenSearch node group. - Name *string `json:"name,omitempty" tf:"name,omitempty"` - - // Resources allocated to hosts of this OpenSearch node group. The structure is documented below. - Resources []NodeGroupsResourcesObservation `json:"resources,omitempty" tf:"resources,omitempty"` - - // A set of the subnets, to which the hosts belongs. The subnets must be a part of the network to which the cluster belongs. No other parameters should be changed simultaneously with this one, except zones_ids. - // +listType=set - SubnetIds []*string `json:"subnetIds,omitempty" tf:"subnet_ids,omitempty"` - - // +listType=set - ZoneIds []*string `json:"zoneIds,omitempty" tf:"zone_ids,omitempty"` -} - -type NodeGroupsParameters struct { - - // Sets whether the hosts should get a public IP address on creation. - // +kubebuilder:validation:Optional - AssignPublicIP *bool `json:"assignPublicIp,omitempty" tf:"assign_public_ip,omitempty"` - - // +kubebuilder:validation:Optional - HostsCount *float64 `json:"hostsCount" tf:"hosts_count,omitempty"` - - // Name of OpenSearch node group. - // +kubebuilder:validation:Optional - Name *string `json:"name" tf:"name,omitempty"` - - // Resources allocated to hosts of this OpenSearch node group. The structure is documented below. - // +kubebuilder:validation:Optional - Resources []NodeGroupsResourcesParameters `json:"resources" tf:"resources,omitempty"` - - // A set of the subnets, to which the hosts belongs. The subnets must be a part of the network to which the cluster belongs. No other parameters should be changed simultaneously with this one, except zones_ids. - // +kubebuilder:validation:Optional - // +listType=set - SubnetIds []*string `json:"subnetIds,omitempty" tf:"subnet_ids,omitempty"` - - // +kubebuilder:validation:Optional - // +listType=set - ZoneIds []*string `json:"zoneIds" tf:"zone_ids,omitempty"` -} - -type NodeGroupsResourcesInitParameters struct { - - // Volume of the storage available to a host, in bytes. - DiskSize *float64 `json:"diskSize,omitempty" tf:"disk_size,omitempty"` - - // Type of the storage of OpenSearch hosts. - DiskTypeID *string `json:"diskTypeId,omitempty" tf:"disk_type_id,omitempty"` - - ResourcePresetID *string `json:"resourcePresetId,omitempty" tf:"resource_preset_id,omitempty"` -} - -type NodeGroupsResourcesObservation struct { - - // Volume of the storage available to a host, in bytes. - DiskSize *float64 `json:"diskSize,omitempty" tf:"disk_size,omitempty"` - - // Type of the storage of OpenSearch hosts. - DiskTypeID *string `json:"diskTypeId,omitempty" tf:"disk_type_id,omitempty"` - - ResourcePresetID *string `json:"resourcePresetId,omitempty" tf:"resource_preset_id,omitempty"` -} - -type NodeGroupsResourcesParameters struct { - - // Volume of the storage available to a host, in bytes. - // +kubebuilder:validation:Optional - DiskSize *float64 `json:"diskSize" tf:"disk_size,omitempty"` - - // Type of the storage of OpenSearch hosts. - // +kubebuilder:validation:Optional - DiskTypeID *string `json:"diskTypeId" tf:"disk_type_id,omitempty"` - - // +kubebuilder:validation:Optional - ResourcePresetID *string `json:"resourcePresetId" tf:"resource_preset_id,omitempty"` -} - -type OpensearchClusterConfigInitParameters struct { - - // Password for admin user of OpenSearch. - AdminPasswordSecretRef v1.SecretKeySelector `json:"adminPasswordSecretRef" tf:"-"` - - // Configuration for Dashboards node groups. The structure is documented below. - Dashboards []DashboardsInitParameters `json:"dashboards,omitempty" tf:"dashboards,omitempty"` - - // Configuration for OpenSearch node groups. The structure is documented below. - Opensearch []OpensearchInitParameters `json:"opensearch,omitempty" tf:"opensearch,omitempty"` - - // Version of OpenSearch. - Version *string `json:"version,omitempty" tf:"version,omitempty"` -} - -type OpensearchClusterConfigObservation struct { - - // Configuration for Dashboards node groups. The structure is documented below. - Dashboards []DashboardsObservation `json:"dashboards,omitempty" tf:"dashboards,omitempty"` - - // Configuration for OpenSearch node groups. The structure is documented below. - Opensearch []OpensearchObservation `json:"opensearch,omitempty" tf:"opensearch,omitempty"` - - // Version of OpenSearch. - Version *string `json:"version,omitempty" tf:"version,omitempty"` -} - -type OpensearchClusterConfigParameters struct { - - // Password for admin user of OpenSearch. - // +kubebuilder:validation:Optional - AdminPasswordSecretRef v1.SecretKeySelector `json:"adminPasswordSecretRef" tf:"-"` - - // Configuration for Dashboards node groups. The structure is documented below. - // +kubebuilder:validation:Optional - Dashboards []DashboardsParameters `json:"dashboards,omitempty" tf:"dashboards,omitempty"` - - // Configuration for OpenSearch node groups. The structure is documented below. - // +kubebuilder:validation:Optional - Opensearch []OpensearchParameters `json:"opensearch" tf:"opensearch,omitempty"` - - // Version of OpenSearch. - // +kubebuilder:validation:Optional - Version *string `json:"version,omitempty" tf:"version,omitempty"` -} - -type OpensearchClusterInitParameters struct { - - // Configuration of the OpenSearch cluster. The structure is documented below. - Config []OpensearchClusterConfigInitParameters `json:"config,omitempty" tf:"config,omitempty"` - - // Inhibits deletion of the cluster. Can be either true or false. - DeletionProtection *bool `json:"deletionProtection,omitempty" tf:"deletion_protection,omitempty"` - - // Description of the OpenSearch cluster. - Description *string `json:"description,omitempty" tf:"description,omitempty"` - - // Deployment environment of the OpenSearch cluster. Can be either PRESTABLE or PRODUCTION. Default: PRODUCTION - Environment *string `json:"environment,omitempty" tf:"environment,omitempty"` - - // The ID of the folder that the resource belongs to. If it is not provided, the default provider folder is used. - // +crossplane:generate:reference:type=github.com/tagesjump/provider-upjet-yc/apis/resourcemanager/v1alpha1.Folder - FolderID *string `json:"folderId,omitempty" tf:"folder_id,omitempty"` - - // Reference to a Folder in resourcemanager to populate folderId. - // +kubebuilder:validation:Optional - FolderIDRef *v1.Reference `json:"folderIdRef,omitempty" tf:"-"` - - // Selector for a Folder in resourcemanager to populate folderId. - // +kubebuilder:validation:Optional - FolderIDSelector *v1.Selector `json:"folderIdSelector,omitempty" tf:"-"` - - // A set of key/value label pairs to assign to the OpenSearch cluster. - // +mapType=granular - Labels map[string]*string `json:"labels,omitempty" tf:"labels,omitempty"` - - MaintenanceWindow []OpensearchClusterMaintenanceWindowInitParameters `json:"maintenanceWindow,omitempty" tf:"maintenance_window,omitempty"` - - // Name of the OpenSearch cluster. Provided by the client when the cluster is created. - Name *string `json:"name,omitempty" tf:"name,omitempty"` - - // ID of the network, to which the OpenSearch cluster belongs. - // +crossplane:generate:reference:type=github.com/tagesjump/provider-upjet-yc/apis/vpc/v1alpha1.Network - NetworkID *string `json:"networkId,omitempty" tf:"network_id,omitempty"` - - // Reference to a Network in vpc to populate networkId. - // +kubebuilder:validation:Optional - NetworkIDRef *v1.Reference `json:"networkIdRef,omitempty" tf:"-"` - - // Selector for a Network in vpc to populate networkId. - // +kubebuilder:validation:Optional - NetworkIDSelector *v1.Selector `json:"networkIdSelector,omitempty" tf:"-"` - - // A set of ids of security groups assigned to hosts of the cluster. - // +crossplane:generate:reference:type=github.com/tagesjump/provider-upjet-yc/apis/vpc/v1alpha1.SecurityGroup - // +listType=set - SecurityGroupIds []*string `json:"securityGroupIds,omitempty" tf:"security_group_ids,omitempty"` - - // References to SecurityGroup in vpc to populate securityGroupIds. - // +kubebuilder:validation:Optional - SecurityGroupIdsRefs []v1.Reference `json:"securityGroupIdsRefs,omitempty" tf:"-"` - - // Selector for a list of SecurityGroup in vpc to populate securityGroupIds. - // +kubebuilder:validation:Optional - SecurityGroupIdsSelector *v1.Selector `json:"securityGroupIdsSelector,omitempty" tf:"-"` - - // ID of the service account authorized for this cluster. - // +crossplane:generate:reference:type=github.com/tagesjump/provider-upjet-yc/apis/iam/v1alpha1.ServiceAccount - ServiceAccountID *string `json:"serviceAccountId,omitempty" tf:"service_account_id,omitempty"` - - // Reference to a ServiceAccount in iam to populate serviceAccountId. - // +kubebuilder:validation:Optional - ServiceAccountIDRef *v1.Reference `json:"serviceAccountIdRef,omitempty" tf:"-"` - - // Selector for a ServiceAccount in iam to populate serviceAccountId. - // +kubebuilder:validation:Optional - ServiceAccountIDSelector *v1.Selector `json:"serviceAccountIdSelector,omitempty" tf:"-"` -} - -type OpensearchClusterMaintenanceWindowInitParameters struct { - - // Day of week for maintenance window if window type is weekly. Possible values: MON, TUE, WED, THU, FRI, SAT, SUN. - Day *string `json:"day,omitempty" tf:"day,omitempty"` - - // Hour of day in UTC time zone (1-24) for maintenance window if window type is weekly. - Hour *float64 `json:"hour,omitempty" tf:"hour,omitempty"` - - // Type of maintenance window. Can be either ANYTIME or WEEKLY. A day and hour of window need to be specified with weekly window. - Type *string `json:"type,omitempty" tf:"type,omitempty"` -} - -type OpensearchClusterMaintenanceWindowObservation struct { - - // Day of week for maintenance window if window type is weekly. Possible values: MON, TUE, WED, THU, FRI, SAT, SUN. - Day *string `json:"day,omitempty" tf:"day,omitempty"` - - // Hour of day in UTC time zone (1-24) for maintenance window if window type is weekly. - Hour *float64 `json:"hour,omitempty" tf:"hour,omitempty"` - - // Type of maintenance window. Can be either ANYTIME or WEEKLY. A day and hour of window need to be specified with weekly window. - Type *string `json:"type,omitempty" tf:"type,omitempty"` -} - -type OpensearchClusterMaintenanceWindowParameters struct { - - // Day of week for maintenance window if window type is weekly. Possible values: MON, TUE, WED, THU, FRI, SAT, SUN. - // +kubebuilder:validation:Optional - Day *string `json:"day,omitempty" tf:"day,omitempty"` - - // Hour of day in UTC time zone (1-24) for maintenance window if window type is weekly. - // +kubebuilder:validation:Optional - Hour *float64 `json:"hour,omitempty" tf:"hour,omitempty"` - - // Type of maintenance window. Can be either ANYTIME or WEEKLY. A day and hour of window need to be specified with weekly window. - // +kubebuilder:validation:Optional - Type *string `json:"type" tf:"type,omitempty"` -} - -type OpensearchClusterObservation struct { - - // Configuration of the OpenSearch cluster. The structure is documented below. - Config []OpensearchClusterConfigObservation `json:"config,omitempty" tf:"config,omitempty"` - - // Creation timestamp of the key. - CreatedAt *string `json:"createdAt,omitempty" tf:"created_at,omitempty"` - - // Inhibits deletion of the cluster. Can be either true or false. - DeletionProtection *bool `json:"deletionProtection,omitempty" tf:"deletion_protection,omitempty"` - - // Description of the OpenSearch cluster. - Description *string `json:"description,omitempty" tf:"description,omitempty"` - - // Deployment environment of the OpenSearch cluster. Can be either PRESTABLE or PRODUCTION. Default: PRODUCTION - Environment *string `json:"environment,omitempty" tf:"environment,omitempty"` - - // The ID of the folder that the resource belongs to. If it is not provided, the default provider folder is used. - FolderID *string `json:"folderId,omitempty" tf:"folder_id,omitempty"` - - // Aggregated health of the cluster. Can be either ALIVE, DEGRADED, DEAD or HEALTH_UNKNOWN. - // For more information see health field of JSON representation in the official documentation. - Health *string `json:"health,omitempty" tf:"health,omitempty"` - - // A hosts of the OpenSearch cluster. The structure is documented below. - Hosts []HostsObservation `json:"hosts,omitempty" tf:"hosts,omitempty"` - - ID *string `json:"id,omitempty" tf:"id,omitempty"` - - // A set of key/value label pairs to assign to the OpenSearch cluster. - // +mapType=granular - Labels map[string]*string `json:"labels,omitempty" tf:"labels,omitempty"` - - MaintenanceWindow []OpensearchClusterMaintenanceWindowObservation `json:"maintenanceWindow,omitempty" tf:"maintenance_window,omitempty"` - - // Name of the OpenSearch cluster. Provided by the client when the cluster is created. - Name *string `json:"name,omitempty" tf:"name,omitempty"` - - // ID of the network, to which the OpenSearch cluster belongs. - NetworkID *string `json:"networkId,omitempty" tf:"network_id,omitempty"` - - // A set of ids of security groups assigned to hosts of the cluster. - // +listType=set - SecurityGroupIds []*string `json:"securityGroupIds,omitempty" tf:"security_group_ids,omitempty"` - - // ID of the service account authorized for this cluster. - ServiceAccountID *string `json:"serviceAccountId,omitempty" tf:"service_account_id,omitempty"` - - // Status of the cluster. Can be either CREATING, STARTING, RUNNING, UPDATING, STOPPING, STOPPED, ERROR or STATUS_UNKNOWN. - // For more information see status field of JSON representation in the official documentation. - Status *string `json:"status,omitempty" tf:"status,omitempty"` -} - -type OpensearchClusterParameters struct { - - // Configuration of the OpenSearch cluster. The structure is documented below. - // +kubebuilder:validation:Optional - Config []OpensearchClusterConfigParameters `json:"config,omitempty" tf:"config,omitempty"` - - // Inhibits deletion of the cluster. Can be either true or false. - // +kubebuilder:validation:Optional - DeletionProtection *bool `json:"deletionProtection,omitempty" tf:"deletion_protection,omitempty"` - - // Description of the OpenSearch cluster. - // +kubebuilder:validation:Optional - Description *string `json:"description,omitempty" tf:"description,omitempty"` - - // Deployment environment of the OpenSearch cluster. Can be either PRESTABLE or PRODUCTION. Default: PRODUCTION - // +kubebuilder:validation:Optional - Environment *string `json:"environment,omitempty" tf:"environment,omitempty"` - - // The ID of the folder that the resource belongs to. If it is not provided, the default provider folder is used. - // +crossplane:generate:reference:type=github.com/tagesjump/provider-upjet-yc/apis/resourcemanager/v1alpha1.Folder - // +kubebuilder:validation:Optional - FolderID *string `json:"folderId,omitempty" tf:"folder_id,omitempty"` - - // Reference to a Folder in resourcemanager to populate folderId. - // +kubebuilder:validation:Optional - FolderIDRef *v1.Reference `json:"folderIdRef,omitempty" tf:"-"` - - // Selector for a Folder in resourcemanager to populate folderId. - // +kubebuilder:validation:Optional - FolderIDSelector *v1.Selector `json:"folderIdSelector,omitempty" tf:"-"` - - // A set of key/value label pairs to assign to the OpenSearch cluster. - // +kubebuilder:validation:Optional - // +mapType=granular - Labels map[string]*string `json:"labels,omitempty" tf:"labels,omitempty"` - - // +kubebuilder:validation:Optional - MaintenanceWindow []OpensearchClusterMaintenanceWindowParameters `json:"maintenanceWindow,omitempty" tf:"maintenance_window,omitempty"` - - // Name of the OpenSearch cluster. Provided by the client when the cluster is created. - // +kubebuilder:validation:Optional - Name *string `json:"name,omitempty" tf:"name,omitempty"` - - // ID of the network, to which the OpenSearch cluster belongs. - // +crossplane:generate:reference:type=github.com/tagesjump/provider-upjet-yc/apis/vpc/v1alpha1.Network - // +kubebuilder:validation:Optional - NetworkID *string `json:"networkId,omitempty" tf:"network_id,omitempty"` - - // Reference to a Network in vpc to populate networkId. - // +kubebuilder:validation:Optional - NetworkIDRef *v1.Reference `json:"networkIdRef,omitempty" tf:"-"` - - // Selector for a Network in vpc to populate networkId. - // +kubebuilder:validation:Optional - NetworkIDSelector *v1.Selector `json:"networkIdSelector,omitempty" tf:"-"` - - // A set of ids of security groups assigned to hosts of the cluster. - // +crossplane:generate:reference:type=github.com/tagesjump/provider-upjet-yc/apis/vpc/v1alpha1.SecurityGroup - // +kubebuilder:validation:Optional - // +listType=set - SecurityGroupIds []*string `json:"securityGroupIds,omitempty" tf:"security_group_ids,omitempty"` - - // References to SecurityGroup in vpc to populate securityGroupIds. - // +kubebuilder:validation:Optional - SecurityGroupIdsRefs []v1.Reference `json:"securityGroupIdsRefs,omitempty" tf:"-"` - - // Selector for a list of SecurityGroup in vpc to populate securityGroupIds. - // +kubebuilder:validation:Optional - SecurityGroupIdsSelector *v1.Selector `json:"securityGroupIdsSelector,omitempty" tf:"-"` - - // ID of the service account authorized for this cluster. - // +crossplane:generate:reference:type=github.com/tagesjump/provider-upjet-yc/apis/iam/v1alpha1.ServiceAccount - // +kubebuilder:validation:Optional - ServiceAccountID *string `json:"serviceAccountId,omitempty" tf:"service_account_id,omitempty"` - - // Reference to a ServiceAccount in iam to populate serviceAccountId. - // +kubebuilder:validation:Optional - ServiceAccountIDRef *v1.Reference `json:"serviceAccountIdRef,omitempty" tf:"-"` - - // Selector for a ServiceAccount in iam to populate serviceAccountId. - // +kubebuilder:validation:Optional - ServiceAccountIDSelector *v1.Selector `json:"serviceAccountIdSelector,omitempty" tf:"-"` -} - -type OpensearchInitParameters struct { - - // A set of named OpenSearch node group configurations. The structure is documented below. - NodeGroups []OpensearchNodeGroupsInitParameters `json:"nodeGroups,omitempty" tf:"node_groups,omitempty"` - - // A set of requested OpenSearch plugins. - // +listType=set - Plugins []*string `json:"plugins,omitempty" tf:"plugins,omitempty"` -} - -type OpensearchNodeGroupsInitParameters struct { - - // Sets whether the hosts should get a public IP address on creation. - AssignPublicIP *bool `json:"assignPublicIp,omitempty" tf:"assign_public_ip,omitempty"` - - HostsCount *float64 `json:"hostsCount,omitempty" tf:"hosts_count,omitempty"` - - // Name of OpenSearch node group. - Name *string `json:"name,omitempty" tf:"name,omitempty"` - - // Resources allocated to hosts of this OpenSearch node group. The structure is documented below. - Resources []OpensearchNodeGroupsResourcesInitParameters `json:"resources,omitempty" tf:"resources,omitempty"` - - // A set of OpenSearch roles assigned to hosts. Available roles are: DATA, MANAGER. Default: [DATA, MANAGER] - // +listType=set - Roles []*string `json:"roles,omitempty" tf:"roles,omitempty"` - - // A set of the subnets, to which the hosts belongs. The subnets must be a part of the network to which the cluster belongs. No other parameters should be changed simultaneously with this one, except zones_ids. - // +crossplane:generate:reference:type=github.com/tagesjump/provider-upjet-yc/apis/vpc/v1alpha1.Subnet - // +listType=set - SubnetIds []*string `json:"subnetIds,omitempty" tf:"subnet_ids,omitempty"` - - // References to Subnet in vpc to populate subnetIds. - // +kubebuilder:validation:Optional - SubnetIdsRefs []v1.Reference `json:"subnetIdsRefs,omitempty" tf:"-"` - - // Selector for a list of Subnet in vpc to populate subnetIds. - // +kubebuilder:validation:Optional - SubnetIdsSelector *v1.Selector `json:"subnetIdsSelector,omitempty" tf:"-"` - - // +listType=set - ZoneIds []*string `json:"zoneIds,omitempty" tf:"zone_ids,omitempty"` -} - -type OpensearchNodeGroupsObservation struct { - - // Sets whether the hosts should get a public IP address on creation. - AssignPublicIP *bool `json:"assignPublicIp,omitempty" tf:"assign_public_ip,omitempty"` - - HostsCount *float64 `json:"hostsCount,omitempty" tf:"hosts_count,omitempty"` - - // Name of OpenSearch node group. - Name *string `json:"name,omitempty" tf:"name,omitempty"` - - // Resources allocated to hosts of this OpenSearch node group. The structure is documented below. - Resources []OpensearchNodeGroupsResourcesObservation `json:"resources,omitempty" tf:"resources,omitempty"` - - // A set of OpenSearch roles assigned to hosts. Available roles are: DATA, MANAGER. Default: [DATA, MANAGER] - // +listType=set - Roles []*string `json:"roles,omitempty" tf:"roles,omitempty"` - - // A set of the subnets, to which the hosts belongs. The subnets must be a part of the network to which the cluster belongs. No other parameters should be changed simultaneously with this one, except zones_ids. - // +listType=set - SubnetIds []*string `json:"subnetIds,omitempty" tf:"subnet_ids,omitempty"` - - // +listType=set - ZoneIds []*string `json:"zoneIds,omitempty" tf:"zone_ids,omitempty"` -} - -type OpensearchNodeGroupsParameters struct { - - // Sets whether the hosts should get a public IP address on creation. - // +kubebuilder:validation:Optional - AssignPublicIP *bool `json:"assignPublicIp,omitempty" tf:"assign_public_ip,omitempty"` - - // +kubebuilder:validation:Optional - HostsCount *float64 `json:"hostsCount" tf:"hosts_count,omitempty"` - - // Name of OpenSearch node group. - // +kubebuilder:validation:Optional - Name *string `json:"name" tf:"name,omitempty"` - - // Resources allocated to hosts of this OpenSearch node group. The structure is documented below. - // +kubebuilder:validation:Optional - Resources []OpensearchNodeGroupsResourcesParameters `json:"resources" tf:"resources,omitempty"` - - // A set of OpenSearch roles assigned to hosts. Available roles are: DATA, MANAGER. Default: [DATA, MANAGER] - // +kubebuilder:validation:Optional - // +listType=set - Roles []*string `json:"roles,omitempty" tf:"roles,omitempty"` - - // A set of the subnets, to which the hosts belongs. The subnets must be a part of the network to which the cluster belongs. No other parameters should be changed simultaneously with this one, except zones_ids. - // +crossplane:generate:reference:type=github.com/tagesjump/provider-upjet-yc/apis/vpc/v1alpha1.Subnet - // +kubebuilder:validation:Optional - // +listType=set - SubnetIds []*string `json:"subnetIds,omitempty" tf:"subnet_ids,omitempty"` - - // References to Subnet in vpc to populate subnetIds. - // +kubebuilder:validation:Optional - SubnetIdsRefs []v1.Reference `json:"subnetIdsRefs,omitempty" tf:"-"` - - // Selector for a list of Subnet in vpc to populate subnetIds. - // +kubebuilder:validation:Optional - SubnetIdsSelector *v1.Selector `json:"subnetIdsSelector,omitempty" tf:"-"` - - // +kubebuilder:validation:Optional - // +listType=set - ZoneIds []*string `json:"zoneIds" tf:"zone_ids,omitempty"` -} - -type OpensearchNodeGroupsResourcesInitParameters struct { - - // Volume of the storage available to a host, in bytes. - DiskSize *float64 `json:"diskSize,omitempty" tf:"disk_size,omitempty"` - - // Type of the storage of OpenSearch hosts. - DiskTypeID *string `json:"diskTypeId,omitempty" tf:"disk_type_id,omitempty"` - - ResourcePresetID *string `json:"resourcePresetId,omitempty" tf:"resource_preset_id,omitempty"` -} - -type OpensearchNodeGroupsResourcesObservation struct { - - // Volume of the storage available to a host, in bytes. - DiskSize *float64 `json:"diskSize,omitempty" tf:"disk_size,omitempty"` - - // Type of the storage of OpenSearch hosts. - DiskTypeID *string `json:"diskTypeId,omitempty" tf:"disk_type_id,omitempty"` - - ResourcePresetID *string `json:"resourcePresetId,omitempty" tf:"resource_preset_id,omitempty"` -} - -type OpensearchNodeGroupsResourcesParameters struct { - - // Volume of the storage available to a host, in bytes. - // +kubebuilder:validation:Optional - DiskSize *float64 `json:"diskSize" tf:"disk_size,omitempty"` - - // Type of the storage of OpenSearch hosts. - // +kubebuilder:validation:Optional - DiskTypeID *string `json:"diskTypeId" tf:"disk_type_id,omitempty"` - - // +kubebuilder:validation:Optional - ResourcePresetID *string `json:"resourcePresetId" tf:"resource_preset_id,omitempty"` -} - -type OpensearchObservation struct { - - // A set of named OpenSearch node group configurations. The structure is documented below. - NodeGroups []OpensearchNodeGroupsObservation `json:"nodeGroups,omitempty" tf:"node_groups,omitempty"` - - // A set of requested OpenSearch plugins. - // +listType=set - Plugins []*string `json:"plugins,omitempty" tf:"plugins,omitempty"` -} - -type OpensearchParameters struct { - - // A set of named OpenSearch node group configurations. The structure is documented below. - // +kubebuilder:validation:Optional - NodeGroups []OpensearchNodeGroupsParameters `json:"nodeGroups" tf:"node_groups,omitempty"` - - // A set of requested OpenSearch plugins. - // +kubebuilder:validation:Optional - // +listType=set - Plugins []*string `json:"plugins,omitempty" tf:"plugins,omitempty"` -} - -// OpensearchClusterSpec defines the desired state of OpensearchCluster -type OpensearchClusterSpec struct { - v1.ResourceSpec `json:",inline"` - ForProvider OpensearchClusterParameters `json:"forProvider"` - // THIS IS A BETA FIELD. It will be honored - // unless the Management Policies feature flag is disabled. - // InitProvider holds the same fields as ForProvider, with the exception - // of Identifier and other resource reference fields. The fields that are - // in InitProvider are merged into ForProvider when the resource is created. - // The same fields are also added to the terraform ignore_changes hook, to - // avoid updating them after creation. This is useful for fields that are - // required on creation, but we do not desire to update them after creation, - // for example because of an external controller is managing them, like an - // autoscaler. - InitProvider OpensearchClusterInitParameters `json:"initProvider,omitempty"` -} - -// OpensearchClusterStatus defines the observed state of OpensearchCluster. -type OpensearchClusterStatus struct { - v1.ResourceStatus `json:",inline"` - AtProvider OpensearchClusterObservation `json:"atProvider,omitempty"` -} - -// +kubebuilder:object:root=true -// +kubebuilder:subresource:status -// +kubebuilder:storageversion - -// OpensearchCluster is the Schema for the OpensearchClusters API. Manages a OpenSearch cluster within Yandex.Cloud. -// +kubebuilder:printcolumn:name="SYNCED",type="string",JSONPath=".status.conditions[?(@.type=='Synced')].status" -// +kubebuilder:printcolumn:name="READY",type="string",JSONPath=".status.conditions[?(@.type=='Ready')].status" -// +kubebuilder:printcolumn:name="EXTERNAL-NAME",type="string",JSONPath=".metadata.annotations.crossplane\\.io/external-name" -// +kubebuilder:printcolumn:name="AGE",type="date",JSONPath=".metadata.creationTimestamp" -// +kubebuilder:resource:scope=Cluster,categories={crossplane,managed,yandex-cloud} -type OpensearchCluster struct { - metav1.TypeMeta `json:",inline"` - metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.name) || (has(self.initProvider) && has(self.initProvider.name))",message="spec.forProvider.name is a required parameter" - Spec OpensearchClusterSpec `json:"spec"` - Status OpensearchClusterStatus `json:"status,omitempty"` -} - -// +kubebuilder:object:root=true - -// OpensearchClusterList contains a list of OpensearchClusters -type OpensearchClusterList struct { - metav1.TypeMeta `json:",inline"` - metav1.ListMeta `json:"metadata,omitempty"` - Items []OpensearchCluster `json:"items"` -} - -// Repository type metadata. -var ( - OpensearchCluster_Kind = "OpensearchCluster" - OpensearchCluster_GroupKind = schema.GroupKind{Group: CRDGroup, Kind: OpensearchCluster_Kind}.String() - OpensearchCluster_KindAPIVersion = OpensearchCluster_Kind + "." + CRDGroupVersion.String() - OpensearchCluster_GroupVersionKind = CRDGroupVersion.WithKind(OpensearchCluster_Kind) -) - -func init() { - SchemeBuilder.Register(&OpensearchCluster{}, &OpensearchClusterList{}) -} diff --git a/apis/mdb/v1alpha1/zz_postgresqlcluster_types.go b/apis/mdb/v1alpha1/zz_postgresqlcluster_types.go index 15bc35d..75074e1 100755 --- a/apis/mdb/v1alpha1/zz_postgresqlcluster_types.go +++ b/apis/mdb/v1alpha1/zz_postgresqlcluster_types.go @@ -38,6 +38,45 @@ type ConfigBackupWindowStartParameters struct { Minutes *float64 `json:"minutes,omitempty" tf:"minutes,omitempty"` } +type ConfigDiskSizeAutoscalingInitParameters struct { + + // Limit of disk size after autoscaling (GiB). + DiskSizeLimit *float64 `json:"diskSizeLimit,omitempty" tf:"disk_size_limit,omitempty"` + + // Immediate autoscaling disk usage (percent). + EmergencyUsageThreshold *float64 `json:"emergencyUsageThreshold,omitempty" tf:"emergency_usage_threshold,omitempty"` + + // Maintenance window autoscaling disk usage (percent). + PlannedUsageThreshold *float64 `json:"plannedUsageThreshold,omitempty" tf:"planned_usage_threshold,omitempty"` +} + +type ConfigDiskSizeAutoscalingObservation struct { + + // Limit of disk size after autoscaling (GiB). + DiskSizeLimit *float64 `json:"diskSizeLimit,omitempty" tf:"disk_size_limit,omitempty"` + + // Immediate autoscaling disk usage (percent). + EmergencyUsageThreshold *float64 `json:"emergencyUsageThreshold,omitempty" tf:"emergency_usage_threshold,omitempty"` + + // Maintenance window autoscaling disk usage (percent). + PlannedUsageThreshold *float64 `json:"plannedUsageThreshold,omitempty" tf:"planned_usage_threshold,omitempty"` +} + +type ConfigDiskSizeAutoscalingParameters struct { + + // Limit of disk size after autoscaling (GiB). + // +kubebuilder:validation:Optional + DiskSizeLimit *float64 `json:"diskSizeLimit" tf:"disk_size_limit,omitempty"` + + // Immediate autoscaling disk usage (percent). + // +kubebuilder:validation:Optional + EmergencyUsageThreshold *float64 `json:"emergencyUsageThreshold,omitempty" tf:"emergency_usage_threshold,omitempty"` + + // Maintenance window autoscaling disk usage (percent). + // +kubebuilder:validation:Optional + PlannedUsageThreshold *float64 `json:"plannedUsageThreshold,omitempty" tf:"planned_usage_threshold,omitempty"` +} + type ConfigPerformanceDiagnosticsInitParameters struct { // Enable performance diagnostics @@ -142,45 +181,6 @@ type ConfigResourcesParameters struct { ResourcePresetID *string `json:"resourcePresetId" tf:"resource_preset_id,omitempty"` } -type DiskSizeAutoscalingInitParameters struct { - - // Limit of disk size after autoscaling (GiB). - DiskSizeLimit *float64 `json:"diskSizeLimit,omitempty" tf:"disk_size_limit,omitempty"` - - // Immediate autoscaling disk usage (percent). - EmergencyUsageThreshold *float64 `json:"emergencyUsageThreshold,omitempty" tf:"emergency_usage_threshold,omitempty"` - - // Maintenance window autoscaling disk usage (percent). - PlannedUsageThreshold *float64 `json:"plannedUsageThreshold,omitempty" tf:"planned_usage_threshold,omitempty"` -} - -type DiskSizeAutoscalingObservation struct { - - // Limit of disk size after autoscaling (GiB). - DiskSizeLimit *float64 `json:"diskSizeLimit,omitempty" tf:"disk_size_limit,omitempty"` - - // Immediate autoscaling disk usage (percent). - EmergencyUsageThreshold *float64 `json:"emergencyUsageThreshold,omitempty" tf:"emergency_usage_threshold,omitempty"` - - // Maintenance window autoscaling disk usage (percent). - PlannedUsageThreshold *float64 `json:"plannedUsageThreshold,omitempty" tf:"planned_usage_threshold,omitempty"` -} - -type DiskSizeAutoscalingParameters struct { - - // Limit of disk size after autoscaling (GiB). - // +kubebuilder:validation:Optional - DiskSizeLimit *float64 `json:"diskSizeLimit" tf:"disk_size_limit,omitempty"` - - // Immediate autoscaling disk usage (percent). - // +kubebuilder:validation:Optional - EmergencyUsageThreshold *float64 `json:"emergencyUsageThreshold,omitempty" tf:"emergency_usage_threshold,omitempty"` - - // Maintenance window autoscaling disk usage (percent). - // +kubebuilder:validation:Optional - PlannedUsageThreshold *float64 `json:"plannedUsageThreshold,omitempty" tf:"planned_usage_threshold,omitempty"` -} - type ExtensionInitParameters struct { // Name of the PostgreSQL cluster. Provided by the client when the cluster is created. @@ -274,7 +274,7 @@ type PostgresqlClusterConfigInitParameters struct { BackupWindowStart []ConfigBackupWindowStartInitParameters `json:"backupWindowStart,omitempty" tf:"backup_window_start,omitempty"` // Cluster disk size autoscaling settings. The structure is documented below. - DiskSizeAutoscaling []DiskSizeAutoscalingInitParameters `json:"diskSizeAutoscaling,omitempty" tf:"disk_size_autoscaling,omitempty"` + DiskSizeAutoscaling []ConfigDiskSizeAutoscalingInitParameters `json:"diskSizeAutoscaling,omitempty" tf:"disk_size_autoscaling,omitempty"` // Cluster performance diagnostics settings. The structure is documented below. YC Documentation PerformanceDiagnostics []ConfigPerformanceDiagnosticsInitParameters `json:"performanceDiagnostics,omitempty" tf:"performance_diagnostics,omitempty"` @@ -308,7 +308,7 @@ type PostgresqlClusterConfigObservation struct { BackupWindowStart []ConfigBackupWindowStartObservation `json:"backupWindowStart,omitempty" tf:"backup_window_start,omitempty"` // Cluster disk size autoscaling settings. The structure is documented below. - DiskSizeAutoscaling []DiskSizeAutoscalingObservation `json:"diskSizeAutoscaling,omitempty" tf:"disk_size_autoscaling,omitempty"` + DiskSizeAutoscaling []ConfigDiskSizeAutoscalingObservation `json:"diskSizeAutoscaling,omitempty" tf:"disk_size_autoscaling,omitempty"` // Cluster performance diagnostics settings. The structure is documented below. YC Documentation PerformanceDiagnostics []ConfigPerformanceDiagnosticsObservation `json:"performanceDiagnostics,omitempty" tf:"performance_diagnostics,omitempty"` @@ -347,7 +347,7 @@ type PostgresqlClusterConfigParameters struct { // Cluster disk size autoscaling settings. The structure is documented below. // +kubebuilder:validation:Optional - DiskSizeAutoscaling []DiskSizeAutoscalingParameters `json:"diskSizeAutoscaling,omitempty" tf:"disk_size_autoscaling,omitempty"` + DiskSizeAutoscaling []ConfigDiskSizeAutoscalingParameters `json:"diskSizeAutoscaling,omitempty" tf:"disk_size_autoscaling,omitempty"` // Cluster performance diagnostics settings. The structure is documented below. YC Documentation // +kubebuilder:validation:Optional @@ -428,8 +428,7 @@ type PostgresqlClusterHostInitParameters struct { // Sets whether the host should get a public IP address on creation. It can be changed on the fly only when name is set. AssignPublicIP *bool `json:"assignPublicIp,omitempty" tf:"assign_public_ip,omitempty"` - // Host state name. It should be set for all hosts or unset for all hosts. This field can be used by another host, to select which host will be its replication source. Please see replication_source_name parameter. - // Also, this field is used to select which host will be selected as a master host. Please see host_master_name parameter. + // Host state name. It should be set for all hosts or unset for all hosts. This field can be used by another host, to select which host will be its replication source. Please see replication_source_name parameter. Also, this field is used to select which host will be selected as a master host. Please see host_master_name parameter. Name *string `json:"name,omitempty" tf:"name,omitempty"` // Host priority in HA group. It works only when name is set. @@ -462,8 +461,7 @@ type PostgresqlClusterHostObservation struct { // (Computed) The fully qualified domain name of the host. Fqdn *string `json:"fqdn,omitempty" tf:"fqdn,omitempty"` - // Host state name. It should be set for all hosts or unset for all hosts. This field can be used by another host, to select which host will be its replication source. Please see replication_source_name parameter. - // Also, this field is used to select which host will be selected as a master host. Please see host_master_name parameter. + // Host state name. It should be set for all hosts or unset for all hosts. This field can be used by another host, to select which host will be its replication source. Please see replication_source_name parameter. Also, this field is used to select which host will be selected as a master host. Please see host_master_name parameter. Name *string `json:"name,omitempty" tf:"name,omitempty"` // Host priority in HA group. It works only when name is set. @@ -490,8 +488,7 @@ type PostgresqlClusterHostParameters struct { // +kubebuilder:validation:Optional AssignPublicIP *bool `json:"assignPublicIp,omitempty" tf:"assign_public_ip,omitempty"` - // Host state name. It should be set for all hosts or unset for all hosts. This field can be used by another host, to select which host will be its replication source. Please see replication_source_name parameter. - // Also, this field is used to select which host will be selected as a master host. Please see host_master_name parameter. + // Host state name. It should be set for all hosts or unset for all hosts. This field can be used by another host, to select which host will be its replication source. Please see replication_source_name parameter. Also, this field is used to select which host will be selected as a master host. Please see host_master_name parameter. // +kubebuilder:validation:Optional Name *string `json:"name,omitempty" tf:"name,omitempty"` @@ -529,7 +526,7 @@ type PostgresqlClusterInitParameters struct { // (Deprecated) To manage databases, please switch to using a separate resource type yandex_mdb_postgresql_database. Database []PostgresqlClusterDatabaseInitParameters `json:"database,omitempty" tf:"database,omitempty"` - // Inhibits deletion of the cluster. Can be either true or false. + // Inhibits deletion of the cluster. Can be either true or false. DeletionProtection *bool `json:"deletionProtection,omitempty" tf:"deletion_protection,omitempty"` // Description of the PostgreSQL cluster. @@ -651,7 +648,7 @@ type PostgresqlClusterObservation struct { // (Deprecated) To manage databases, please switch to using a separate resource type yandex_mdb_postgresql_database. Database []PostgresqlClusterDatabaseObservation `json:"database,omitempty" tf:"database,omitempty"` - // Inhibits deletion of the cluster. Can be either true or false. + // Inhibits deletion of the cluster. Can be either true or false. DeletionProtection *bool `json:"deletionProtection,omitempty" tf:"deletion_protection,omitempty"` // Description of the PostgreSQL cluster. @@ -714,7 +711,7 @@ type PostgresqlClusterParameters struct { // +kubebuilder:validation:Optional Database []PostgresqlClusterDatabaseParameters `json:"database,omitempty" tf:"database,omitempty"` - // Inhibits deletion of the cluster. Can be either true or false. + // Inhibits deletion of the cluster. Can be either true or false. // +kubebuilder:validation:Optional DeletionProtection *bool `json:"deletionProtection,omitempty" tf:"deletion_protection,omitempty"` diff --git a/apis/mdb/v1alpha1/zz_rediscluster_types.go b/apis/mdb/v1alpha1/zz_rediscluster_types.go index 278949f..4938f54 100755 --- a/apis/mdb/v1alpha1/zz_rediscluster_types.go +++ b/apis/mdb/v1alpha1/zz_rediscluster_types.go @@ -9,14 +9,41 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type RedisClusterAccessInitParameters struct { + + // Allow access for DataLens. Can be either true or false. + DataLens *bool `json:"dataLens,omitempty" tf:"data_lens,omitempty"` + + // Allow access for Web SQL. Can be either true or false. + WebSQL *bool `json:"webSql,omitempty" tf:"web_sql,omitempty"` +} + +type RedisClusterAccessObservation struct { + + // Allow access for DataLens. Can be either true or false. + DataLens *bool `json:"dataLens,omitempty" tf:"data_lens,omitempty"` + + // Allow access for Web SQL. Can be either true or false. + WebSQL *bool `json:"webSql,omitempty" tf:"web_sql,omitempty"` +} + +type RedisClusterAccessParameters struct { + + // Allow access for DataLens. Can be either true or false. + // +kubebuilder:validation:Optional + DataLens *bool `json:"dataLens,omitempty" tf:"data_lens,omitempty"` + + // Allow access for Web SQL. Can be either true or false. + // +kubebuilder:validation:Optional + WebSQL *bool `json:"webSql,omitempty" tf:"web_sql,omitempty"` +} + type RedisClusterConfigInitParameters struct { - // Normal clients output buffer limits. - // See redis config file. + // Normal clients output buffer limits. See redis config file. ClientOutputBufferLimitNormal *string `json:"clientOutputBufferLimitNormal,omitempty" tf:"client_output_buffer_limit_normal,omitempty"` - // Pubsub clients output buffer limits. - // See redis config file. + // Pubsub clients output buffer limits. See redis config file. ClientOutputBufferLimitPubsub *string `json:"clientOutputBufferLimitPubsub,omitempty" tf:"client_output_buffer_limit_pubsub,omitempty"` // Number of databases (changing requires redis-server restart). @@ -25,8 +52,7 @@ type RedisClusterConfigInitParameters struct { // Redis maxmemory usage in percent MaxmemoryPercent *float64 `json:"maxmemoryPercent,omitempty" tf:"maxmemory_percent,omitempty"` - // Redis key eviction policy for a dataset that reaches maximum memory. - // Can be any of the listed in the official RedisDB documentation. + // Redis key eviction policy for a dataset that reaches maximum memory. Can be any of the listed in the official RedisDB documentation. MaxmemoryPolicy *string `json:"maxmemoryPolicy,omitempty" tf:"maxmemory_policy,omitempty"` // Select the events that Redis will notify among a set of classes. @@ -50,12 +76,10 @@ type RedisClusterConfigInitParameters struct { type RedisClusterConfigObservation struct { - // Normal clients output buffer limits. - // See redis config file. + // Normal clients output buffer limits. See redis config file. ClientOutputBufferLimitNormal *string `json:"clientOutputBufferLimitNormal,omitempty" tf:"client_output_buffer_limit_normal,omitempty"` - // Pubsub clients output buffer limits. - // See redis config file. + // Pubsub clients output buffer limits. See redis config file. ClientOutputBufferLimitPubsub *string `json:"clientOutputBufferLimitPubsub,omitempty" tf:"client_output_buffer_limit_pubsub,omitempty"` // Number of databases (changing requires redis-server restart). @@ -64,8 +88,7 @@ type RedisClusterConfigObservation struct { // Redis maxmemory usage in percent MaxmemoryPercent *float64 `json:"maxmemoryPercent,omitempty" tf:"maxmemory_percent,omitempty"` - // Redis key eviction policy for a dataset that reaches maximum memory. - // Can be any of the listed in the official RedisDB documentation. + // Redis key eviction policy for a dataset that reaches maximum memory. Can be any of the listed in the official RedisDB documentation. MaxmemoryPolicy *string `json:"maxmemoryPolicy,omitempty" tf:"maxmemory_policy,omitempty"` // Select the events that Redis will notify among a set of classes. @@ -86,13 +109,11 @@ type RedisClusterConfigObservation struct { type RedisClusterConfigParameters struct { - // Normal clients output buffer limits. - // See redis config file. + // Normal clients output buffer limits. See redis config file. // +kubebuilder:validation:Optional ClientOutputBufferLimitNormal *string `json:"clientOutputBufferLimitNormal,omitempty" tf:"client_output_buffer_limit_normal,omitempty"` - // Pubsub clients output buffer limits. - // See redis config file. + // Pubsub clients output buffer limits. See redis config file. // +kubebuilder:validation:Optional ClientOutputBufferLimitPubsub *string `json:"clientOutputBufferLimitPubsub,omitempty" tf:"client_output_buffer_limit_pubsub,omitempty"` @@ -104,8 +125,7 @@ type RedisClusterConfigParameters struct { // +kubebuilder:validation:Optional MaxmemoryPercent *float64 `json:"maxmemoryPercent,omitempty" tf:"maxmemory_percent,omitempty"` - // Redis key eviction policy for a dataset that reaches maximum memory. - // Can be any of the listed in the official RedisDB documentation. + // Redis key eviction policy for a dataset that reaches maximum memory. Can be any of the listed in the official RedisDB documentation. // +kubebuilder:validation:Optional MaxmemoryPolicy *string `json:"maxmemoryPolicy,omitempty" tf:"maxmemory_policy,omitempty"` @@ -134,6 +154,45 @@ type RedisClusterConfigParameters struct { Version *string `json:"version" tf:"version,omitempty"` } +type RedisClusterDiskSizeAutoscalingInitParameters struct { + + // Limit of disk size after autoscaling (GiB). + DiskSizeLimit *float64 `json:"diskSizeLimit,omitempty" tf:"disk_size_limit,omitempty"` + + // Immediate autoscaling disk usage (percent). + EmergencyUsageThreshold *float64 `json:"emergencyUsageThreshold,omitempty" tf:"emergency_usage_threshold,omitempty"` + + // Maintenance window autoscaling disk usage (percent). + PlannedUsageThreshold *float64 `json:"plannedUsageThreshold,omitempty" tf:"planned_usage_threshold,omitempty"` +} + +type RedisClusterDiskSizeAutoscalingObservation struct { + + // Limit of disk size after autoscaling (GiB). + DiskSizeLimit *float64 `json:"diskSizeLimit,omitempty" tf:"disk_size_limit,omitempty"` + + // Immediate autoscaling disk usage (percent). + EmergencyUsageThreshold *float64 `json:"emergencyUsageThreshold,omitempty" tf:"emergency_usage_threshold,omitempty"` + + // Maintenance window autoscaling disk usage (percent). + PlannedUsageThreshold *float64 `json:"plannedUsageThreshold,omitempty" tf:"planned_usage_threshold,omitempty"` +} + +type RedisClusterDiskSizeAutoscalingParameters struct { + + // Limit of disk size after autoscaling (GiB). + // +kubebuilder:validation:Optional + DiskSizeLimit *float64 `json:"diskSizeLimit" tf:"disk_size_limit,omitempty"` + + // Immediate autoscaling disk usage (percent). + // +kubebuilder:validation:Optional + EmergencyUsageThreshold *float64 `json:"emergencyUsageThreshold,omitempty" tf:"emergency_usage_threshold,omitempty"` + + // Maintenance window autoscaling disk usage (percent). + // +kubebuilder:validation:Optional + PlannedUsageThreshold *float64 `json:"plannedUsageThreshold,omitempty" tf:"planned_usage_threshold,omitempty"` +} + type RedisClusterHostInitParameters struct { // Sets whether the host should get a public IP address or not. @@ -145,8 +204,7 @@ type RedisClusterHostInitParameters struct { // The name of the shard to which the host belongs. ShardName *string `json:"shardName,omitempty" tf:"shard_name,omitempty"` - // The ID of the subnet, to which the host belongs. The subnet must - // be a part of the network to which the cluster belongs. + // The ID of the subnet, to which the host belongs. The subnet must be a part of the network to which the cluster belongs. // +crossplane:generate:reference:type=github.com/tagesjump/provider-upjet-yc/apis/vpc/v1alpha1.Subnet SubnetID *string `json:"subnetId,omitempty" tf:"subnet_id,omitempty"` @@ -158,8 +216,7 @@ type RedisClusterHostInitParameters struct { // +kubebuilder:validation:Optional SubnetIDSelector *v1.Selector `json:"subnetIdSelector,omitempty" tf:"-"` - // The availability zone where the Redis host will be created. - // For more information see the official documentation. + // The availability zone where the Redis host will be created. For more information see the official documentation. Zone *string `json:"zone,omitempty" tf:"zone,omitempty"` } @@ -177,12 +234,10 @@ type RedisClusterHostObservation struct { // The name of the shard to which the host belongs. ShardName *string `json:"shardName,omitempty" tf:"shard_name,omitempty"` - // The ID of the subnet, to which the host belongs. The subnet must - // be a part of the network to which the cluster belongs. + // The ID of the subnet, to which the host belongs. The subnet must be a part of the network to which the cluster belongs. SubnetID *string `json:"subnetId,omitempty" tf:"subnet_id,omitempty"` - // The availability zone where the Redis host will be created. - // For more information see the official documentation. + // The availability zone where the Redis host will be created. For more information see the official documentation. Zone *string `json:"zone,omitempty" tf:"zone,omitempty"` } @@ -200,8 +255,7 @@ type RedisClusterHostParameters struct { // +kubebuilder:validation:Optional ShardName *string `json:"shardName,omitempty" tf:"shard_name,omitempty"` - // The ID of the subnet, to which the host belongs. The subnet must - // be a part of the network to which the cluster belongs. + // The ID of the subnet, to which the host belongs. The subnet must be a part of the network to which the cluster belongs. // +crossplane:generate:reference:type=github.com/tagesjump/provider-upjet-yc/apis/vpc/v1alpha1.Subnet // +kubebuilder:validation:Optional SubnetID *string `json:"subnetId,omitempty" tf:"subnet_id,omitempty"` @@ -214,31 +268,34 @@ type RedisClusterHostParameters struct { // +kubebuilder:validation:Optional SubnetIDSelector *v1.Selector `json:"subnetIdSelector,omitempty" tf:"-"` - // The availability zone where the Redis host will be created. - // For more information see the official documentation. + // The availability zone where the Redis host will be created. For more information see the official documentation. // +kubebuilder:validation:Optional Zone *string `json:"zone" tf:"zone,omitempty"` } type RedisClusterInitParameters struct { + // Access policy to the Redis cluster. The structure is documented below. + Access []RedisClusterAccessInitParameters `json:"access,omitempty" tf:"access,omitempty"` + // Announce fqdn instead of ip address. AnnounceHostnames *bool `json:"announceHostnames,omitempty" tf:"announce_hostnames,omitempty"` // Configuration of the Redis cluster. The structure is documented below. Config []RedisClusterConfigInitParameters `json:"config,omitempty" tf:"config,omitempty"` - // Inhibits deletion of the cluster. Can be either true or false. + // Inhibits deletion of the cluster. Can be either true or false. DeletionProtection *bool `json:"deletionProtection,omitempty" tf:"deletion_protection,omitempty"` // Description of the Redis cluster. Description *string `json:"description,omitempty" tf:"description,omitempty"` + DiskSizeAutoscaling []RedisClusterDiskSizeAutoscalingInitParameters `json:"diskSizeAutoscaling,omitempty" tf:"disk_size_autoscaling,omitempty"` + // Deployment environment of the Redis cluster. Can be either PRESTABLE or PRODUCTION. Environment *string `json:"environment,omitempty" tf:"environment,omitempty"` - // The ID of the folder that the resource belongs to. If it - // is not provided, the default provider folder is used. + // The ID of the folder that the resource belongs to. If it is not provided, the default provider folder is used. // +crossplane:generate:reference:type=github.com/tagesjump/provider-upjet-yc/apis/resourcemanager/v1alpha1.Folder FolderID *string `json:"folderId,omitempty" tf:"folder_id,omitempty"` @@ -293,8 +350,7 @@ type RedisClusterInitParameters struct { // +kubebuilder:validation:Optional SecurityGroupIdsSelector *v1.Selector `json:"securityGroupIdsSelector,omitempty" tf:"-"` - // Redis Cluster mode enabled/disabled. Enables sharding when cluster non-sharded. - // If cluster is sharded - disabling is not allowed. + // Redis Cluster mode enabled/disabled. Enables sharding when cluster non-sharded. If cluster is sharded - disabling is not allowed. Sharded *bool `json:"sharded,omitempty" tf:"sharded,omitempty"` // TLS support mode enabled/disabled. @@ -342,6 +398,9 @@ type RedisClusterMaintenanceWindowParameters struct { type RedisClusterObservation struct { + // Access policy to the Redis cluster. The structure is documented below. + Access []RedisClusterAccessObservation `json:"access,omitempty" tf:"access,omitempty"` + // Announce fqdn instead of ip address. AnnounceHostnames *bool `json:"announceHostnames,omitempty" tf:"announce_hostnames,omitempty"` @@ -351,21 +410,21 @@ type RedisClusterObservation struct { // Creation timestamp of the key. CreatedAt *string `json:"createdAt,omitempty" tf:"created_at,omitempty"` - // Inhibits deletion of the cluster. Can be either true or false. + // Inhibits deletion of the cluster. Can be either true or false. DeletionProtection *bool `json:"deletionProtection,omitempty" tf:"deletion_protection,omitempty"` // Description of the Redis cluster. Description *string `json:"description,omitempty" tf:"description,omitempty"` + DiskSizeAutoscaling []RedisClusterDiskSizeAutoscalingObservation `json:"diskSizeAutoscaling,omitempty" tf:"disk_size_autoscaling,omitempty"` + // Deployment environment of the Redis cluster. Can be either PRESTABLE or PRODUCTION. Environment *string `json:"environment,omitempty" tf:"environment,omitempty"` - // The ID of the folder that the resource belongs to. If it - // is not provided, the default provider folder is used. + // The ID of the folder that the resource belongs to. If it is not provided, the default provider folder is used. FolderID *string `json:"folderId,omitempty" tf:"folder_id,omitempty"` - // Aggregated health of the cluster. Can be either ALIVE, DEGRADED, DEAD or HEALTH_UNKNOWN. - // For more information see health field of JSON representation in the official documentation. + // Aggregated health of the cluster. Can be either ALIVE, DEGRADED, DEAD or HEALTH_UNKNOWN. For more information see health field of JSON representation in the official documentation. Health *string `json:"health,omitempty" tf:"health,omitempty"` // A host of the Redis cluster. The structure is documented below. @@ -395,12 +454,10 @@ type RedisClusterObservation struct { // +listType=set SecurityGroupIds []*string `json:"securityGroupIds,omitempty" tf:"security_group_ids,omitempty"` - // Redis Cluster mode enabled/disabled. Enables sharding when cluster non-sharded. - // If cluster is sharded - disabling is not allowed. + // Redis Cluster mode enabled/disabled. Enables sharding when cluster non-sharded. If cluster is sharded - disabling is not allowed. Sharded *bool `json:"sharded,omitempty" tf:"sharded,omitempty"` - // Status of the cluster. Can be either CREATING, STARTING, RUNNING, UPDATING, STOPPING, STOPPED, ERROR or STATUS_UNKNOWN. - // For more information see status field of JSON representation in the official documentation. + // Status of the cluster. Can be either CREATING, STARTING, RUNNING, UPDATING, STOPPING, STOPPED, ERROR or STATUS_UNKNOWN. For more information see status field of JSON representation in the official documentation. Status *string `json:"status,omitempty" tf:"status,omitempty"` // TLS support mode enabled/disabled. @@ -409,6 +466,10 @@ type RedisClusterObservation struct { type RedisClusterParameters struct { + // Access policy to the Redis cluster. The structure is documented below. + // +kubebuilder:validation:Optional + Access []RedisClusterAccessParameters `json:"access,omitempty" tf:"access,omitempty"` + // Announce fqdn instead of ip address. // +kubebuilder:validation:Optional AnnounceHostnames *bool `json:"announceHostnames,omitempty" tf:"announce_hostnames,omitempty"` @@ -417,7 +478,7 @@ type RedisClusterParameters struct { // +kubebuilder:validation:Optional Config []RedisClusterConfigParameters `json:"config,omitempty" tf:"config,omitempty"` - // Inhibits deletion of the cluster. Can be either true or false. + // Inhibits deletion of the cluster. Can be either true or false. // +kubebuilder:validation:Optional DeletionProtection *bool `json:"deletionProtection,omitempty" tf:"deletion_protection,omitempty"` @@ -425,12 +486,14 @@ type RedisClusterParameters struct { // +kubebuilder:validation:Optional Description *string `json:"description,omitempty" tf:"description,omitempty"` + // +kubebuilder:validation:Optional + DiskSizeAutoscaling []RedisClusterDiskSizeAutoscalingParameters `json:"diskSizeAutoscaling,omitempty" tf:"disk_size_autoscaling,omitempty"` + // Deployment environment of the Redis cluster. Can be either PRESTABLE or PRODUCTION. // +kubebuilder:validation:Optional Environment *string `json:"environment,omitempty" tf:"environment,omitempty"` - // The ID of the folder that the resource belongs to. If it - // is not provided, the default provider folder is used. + // The ID of the folder that the resource belongs to. If it is not provided, the default provider folder is used. // +crossplane:generate:reference:type=github.com/tagesjump/provider-upjet-yc/apis/resourcemanager/v1alpha1.Folder // +kubebuilder:validation:Optional FolderID *string `json:"folderId,omitempty" tf:"folder_id,omitempty"` @@ -494,8 +557,7 @@ type RedisClusterParameters struct { // +kubebuilder:validation:Optional SecurityGroupIdsSelector *v1.Selector `json:"securityGroupIdsSelector,omitempty" tf:"-"` - // Redis Cluster mode enabled/disabled. Enables sharding when cluster non-sharded. - // If cluster is sharded - disabling is not allowed. + // Redis Cluster mode enabled/disabled. Enables sharding when cluster non-sharded. If cluster is sharded - disabling is not allowed. // +kubebuilder:validation:Optional Sharded *bool `json:"sharded,omitempty" tf:"sharded,omitempty"` diff --git a/apis/mdb/v1alpha1/zz_sqlservercluster_types.go b/apis/mdb/v1alpha1/zz_sqlservercluster_types.go index 3268650..355a2ff 100755 --- a/apis/mdb/v1alpha1/zz_sqlservercluster_types.go +++ b/apis/mdb/v1alpha1/zz_sqlservercluster_types.go @@ -125,7 +125,7 @@ type SqlserverClusterInitParameters struct { // A database of the SQLServer cluster. The structure is documented below. Database []SqlserverClusterDatabaseInitParameters `json:"database,omitempty" tf:"database,omitempty"` - // Inhibits deletion of the cluster. Can be either true or false. + // Inhibits deletion of the cluster. Can be either true or false. DeletionProtection *bool `json:"deletionProtection,omitempty" tf:"deletion_protection,omitempty"` // Description of the SQLServer cluster. @@ -134,8 +134,7 @@ type SqlserverClusterInitParameters struct { // Deployment environment of the SQLServer cluster. (PRODUCTION, PRESTABLE) Environment *string `json:"environment,omitempty" tf:"environment,omitempty"` - // The ID of the folder that the resource belongs to. If it - // is not provided, the default provider folder is used. + // The ID of the folder that the resource belongs to. If it is not provided, the default provider folder is used. // +crossplane:generate:reference:type=github.com/tagesjump/provider-upjet-yc/apis/resourcemanager/v1alpha1.Folder FolderID *string `json:"folderId,omitempty" tf:"folder_id,omitempty"` @@ -214,7 +213,7 @@ type SqlserverClusterObservation struct { // A database of the SQLServer cluster. The structure is documented below. Database []SqlserverClusterDatabaseObservation `json:"database,omitempty" tf:"database,omitempty"` - // Inhibits deletion of the cluster. Can be either true or false. + // Inhibits deletion of the cluster. Can be either true or false. DeletionProtection *bool `json:"deletionProtection,omitempty" tf:"deletion_protection,omitempty"` // Description of the SQLServer cluster. @@ -223,8 +222,7 @@ type SqlserverClusterObservation struct { // Deployment environment of the SQLServer cluster. (PRODUCTION, PRESTABLE) Environment *string `json:"environment,omitempty" tf:"environment,omitempty"` - // The ID of the folder that the resource belongs to. If it - // is not provided, the default provider folder is used. + // The ID of the folder that the resource belongs to. If it is not provided, the default provider folder is used. FolderID *string `json:"folderId,omitempty" tf:"folder_id,omitempty"` // Aggregated health of the cluster. @@ -283,7 +281,7 @@ type SqlserverClusterParameters struct { // +kubebuilder:validation:Optional Database []SqlserverClusterDatabaseParameters `json:"database,omitempty" tf:"database,omitempty"` - // Inhibits deletion of the cluster. Can be either true or false. + // Inhibits deletion of the cluster. Can be either true or false. // +kubebuilder:validation:Optional DeletionProtection *bool `json:"deletionProtection,omitempty" tf:"deletion_protection,omitempty"` @@ -295,8 +293,7 @@ type SqlserverClusterParameters struct { // +kubebuilder:validation:Optional Environment *string `json:"environment,omitempty" tf:"environment,omitempty"` - // The ID of the folder that the resource belongs to. If it - // is not provided, the default provider folder is used. + // The ID of the folder that the resource belongs to. If it is not provided, the default provider folder is used. // +crossplane:generate:reference:type=github.com/tagesjump/provider-upjet-yc/apis/resourcemanager/v1alpha1.Folder // +kubebuilder:validation:Optional FolderID *string `json:"folderId,omitempty" tf:"folder_id,omitempty"` @@ -453,8 +450,7 @@ type SqlserverClusterUserPermissionInitParameters struct { // The name of the database that the permission grants access to. DatabaseName *string `json:"databaseName,omitempty" tf:"database_name,omitempty"` - // List user's roles in the database. - // Allowed roles: OWNER, SECURITYADMIN, ACCESSADMIN, BACKUPOPERATOR, DDLADMIN, DATAWRITER, DATAREADER, DENYDATAWRITER, DENYDATAREADER. + // List user's roles in the database. Allowed roles: OWNER, SECURITYADMIN, ACCESSADMIN, BACKUPOPERATOR, DDLADMIN, DATAWRITER, DATAREADER, DENYDATAWRITER, DENYDATAREADER. // +listType=set Roles []*string `json:"roles,omitempty" tf:"roles,omitempty"` } @@ -464,8 +460,7 @@ type SqlserverClusterUserPermissionObservation struct { // The name of the database that the permission grants access to. DatabaseName *string `json:"databaseName,omitempty" tf:"database_name,omitempty"` - // List user's roles in the database. - // Allowed roles: OWNER, SECURITYADMIN, ACCESSADMIN, BACKUPOPERATOR, DDLADMIN, DATAWRITER, DATAREADER, DENYDATAWRITER, DENYDATAREADER. + // List user's roles in the database. Allowed roles: OWNER, SECURITYADMIN, ACCESSADMIN, BACKUPOPERATOR, DDLADMIN, DATAWRITER, DATAREADER, DENYDATAWRITER, DENYDATAREADER. // +listType=set Roles []*string `json:"roles,omitempty" tf:"roles,omitempty"` } @@ -476,8 +471,7 @@ type SqlserverClusterUserPermissionParameters struct { // +kubebuilder:validation:Optional DatabaseName *string `json:"databaseName" tf:"database_name,omitempty"` - // List user's roles in the database. - // Allowed roles: OWNER, SECURITYADMIN, ACCESSADMIN, BACKUPOPERATOR, DDLADMIN, DATAWRITER, DATAREADER, DENYDATAWRITER, DENYDATAREADER. + // List user's roles in the database. Allowed roles: OWNER, SECURITYADMIN, ACCESSADMIN, BACKUPOPERATOR, DDLADMIN, DATAWRITER, DATAREADER, DENYDATAWRITER, DENYDATAREADER. // +kubebuilder:validation:Optional // +listType=set Roles []*string `json:"roles,omitempty" tf:"roles,omitempty"` diff --git a/apis/message/v1alpha1/zz_queue_types.go b/apis/message/v1alpha1/zz_queue_types.go index b1b4dad..01c8ef6 100755 --- a/apis/message/v1alpha1/zz_queue_types.go +++ b/apis/message/v1alpha1/zz_queue_types.go @@ -51,8 +51,7 @@ type QueueInitParameters struct { // Message redrive policy in Dead Letter Queue. The source queue and DLQ must be the same type: for FIFO queues, the DLQ must also be a FIFO queue. For more information about redrive policy see documentation. Also you can use example in this page. RedrivePolicy *string `json:"redrivePolicy,omitempty" tf:"redrive_policy,omitempty"` - // ID of the region where the message queue is located at. - // The default is 'ru-central1'. + // ID of the region where the message queue is located at. The default is 'ru-central1'. RegionID *string `json:"regionId,omitempty" tf:"region_id,omitempty"` // The secret key to use when applying changes. If omitted, ymq_secret_key specified in provider config is used. For more information see documentation. @@ -100,8 +99,7 @@ type QueueObservation struct { // Message redrive policy in Dead Letter Queue. The source queue and DLQ must be the same type: for FIFO queues, the DLQ must also be a FIFO queue. For more information about redrive policy see documentation. Also you can use example in this page. RedrivePolicy *string `json:"redrivePolicy,omitempty" tf:"redrive_policy,omitempty"` - // ID of the region where the message queue is located at. - // The default is 'ru-central1'. + // ID of the region where the message queue is located at. The default is 'ru-central1'. RegionID *string `json:"regionId,omitempty" tf:"region_id,omitempty"` // Visibility timeout for messages in a queue, specified in seconds. Valid values: from 0 to 43200 seconds (12 hours). Default: 30. @@ -160,8 +158,7 @@ type QueueParameters struct { // +kubebuilder:validation:Optional RedrivePolicy *string `json:"redrivePolicy,omitempty" tf:"redrive_policy,omitempty"` - // ID of the region where the message queue is located at. - // The default is 'ru-central1'. + // ID of the region where the message queue is located at. The default is 'ru-central1'. // +kubebuilder:validation:Optional RegionID *string `json:"regionId,omitempty" tf:"region_id,omitempty"` diff --git a/apis/organizationmanager/v1alpha1/zz_groupiammember_types.go b/apis/organizationmanager/v1alpha1/zz_groupiammember_types.go index ed1f8a5..be5fef3 100755 --- a/apis/organizationmanager/v1alpha1/zz_groupiammember_types.go +++ b/apis/organizationmanager/v1alpha1/zz_groupiammember_types.go @@ -23,8 +23,7 @@ type GroupIAMMemberInitParameters struct { // +kubebuilder:validation:Optional GroupIDSelector *v1.Selector `json:"groupIdSelector,omitempty" tf:"-"` - // The identity that will be granted the privilege that is specified in the role field. - // This field can have one of the following values: + // The identity that will be granted the privilege that is specified in the role field. This field can have one of the following values: Member *string `json:"member,omitempty" tf:"member,omitempty"` // The role that should be assigned. @@ -40,8 +39,7 @@ type GroupIAMMemberObservation struct { ID *string `json:"id,omitempty" tf:"id,omitempty"` - // The identity that will be granted the privilege that is specified in the role field. - // This field can have one of the following values: + // The identity that will be granted the privilege that is specified in the role field. This field can have one of the following values: Member *string `json:"member,omitempty" tf:"member,omitempty"` // The role that should be assigned. @@ -65,8 +63,7 @@ type GroupIAMMemberParameters struct { // +kubebuilder:validation:Optional GroupIDSelector *v1.Selector `json:"groupIdSelector,omitempty" tf:"-"` - // The identity that will be granted the privilege that is specified in the role field. - // This field can have one of the following values: + // The identity that will be granted the privilege that is specified in the role field. This field can have one of the following values: // +kubebuilder:validation:Optional Member *string `json:"member,omitempty" tf:"member,omitempty"` diff --git a/apis/organizationmanager/v1alpha1/zz_organizationiambinding_types.go b/apis/organizationmanager/v1alpha1/zz_organizationiambinding_types.go index 29b5f61..eabec32 100755 --- a/apis/organizationmanager/v1alpha1/zz_organizationiambinding_types.go +++ b/apis/organizationmanager/v1alpha1/zz_organizationiambinding_types.go @@ -11,16 +11,14 @@ import ( type OrganizationIAMBindingInitParameters struct { - // An array of identities that will be granted the privilege in the role. - // Each entry can have one of the following values: + // An array of identities that will be granted the privilege in the role. Each entry can have one of the following values: // +listType=set Members []*string `json:"members,omitempty" tf:"members,omitempty"` // ID of the organization to attach the policy to. OrganizationID *string `json:"organizationId,omitempty" tf:"organization_id,omitempty"` - // The role that should be assigned. Only one - // yandex_organizationmanager_organization_iam_binding can be used per role. + // The role that should be assigned. Only one yandex_organizationmanager_organization_iam_binding can be used per role. Role *string `json:"role,omitempty" tf:"role,omitempty"` SleepAfter *float64 `json:"sleepAfter,omitempty" tf:"sleep_after,omitempty"` @@ -29,16 +27,14 @@ type OrganizationIAMBindingInitParameters struct { type OrganizationIAMBindingObservation struct { ID *string `json:"id,omitempty" tf:"id,omitempty"` - // An array of identities that will be granted the privilege in the role. - // Each entry can have one of the following values: + // An array of identities that will be granted the privilege in the role. Each entry can have one of the following values: // +listType=set Members []*string `json:"members,omitempty" tf:"members,omitempty"` // ID of the organization to attach the policy to. OrganizationID *string `json:"organizationId,omitempty" tf:"organization_id,omitempty"` - // The role that should be assigned. Only one - // yandex_organizationmanager_organization_iam_binding can be used per role. + // The role that should be assigned. Only one yandex_organizationmanager_organization_iam_binding can be used per role. Role *string `json:"role,omitempty" tf:"role,omitempty"` SleepAfter *float64 `json:"sleepAfter,omitempty" tf:"sleep_after,omitempty"` @@ -46,8 +42,7 @@ type OrganizationIAMBindingObservation struct { type OrganizationIAMBindingParameters struct { - // An array of identities that will be granted the privilege in the role. - // Each entry can have one of the following values: + // An array of identities that will be granted the privilege in the role. Each entry can have one of the following values: // +kubebuilder:validation:Optional // +listType=set Members []*string `json:"members,omitempty" tf:"members,omitempty"` @@ -56,8 +51,7 @@ type OrganizationIAMBindingParameters struct { // +kubebuilder:validation:Optional OrganizationID *string `json:"organizationId,omitempty" tf:"organization_id,omitempty"` - // The role that should be assigned. Only one - // yandex_organizationmanager_organization_iam_binding can be used per role. + // The role that should be assigned. Only one yandex_organizationmanager_organization_iam_binding can be used per role. // +kubebuilder:validation:Optional Role *string `json:"role,omitempty" tf:"role,omitempty"` diff --git a/apis/organizationmanager/v1alpha1/zz_organizationiammember_types.go b/apis/organizationmanager/v1alpha1/zz_organizationiammember_types.go index 7b69977..df942a7 100755 --- a/apis/organizationmanager/v1alpha1/zz_organizationiammember_types.go +++ b/apis/organizationmanager/v1alpha1/zz_organizationiammember_types.go @@ -11,8 +11,7 @@ import ( type OrganizationIAMMemberInitParameters struct { - // The identity that will be granted the privilege that is specified in the role field. - // This field can have one of the following values: + // The identity that will be granted the privilege that is specified in the role field. This field can have one of the following values: Member *string `json:"member,omitempty" tf:"member,omitempty"` // ID of the organization to attach a policy to. @@ -27,8 +26,7 @@ type OrganizationIAMMemberInitParameters struct { type OrganizationIAMMemberObservation struct { ID *string `json:"id,omitempty" tf:"id,omitempty"` - // The identity that will be granted the privilege that is specified in the role field. - // This field can have one of the following values: + // The identity that will be granted the privilege that is specified in the role field. This field can have one of the following values: Member *string `json:"member,omitempty" tf:"member,omitempty"` // ID of the organization to attach a policy to. @@ -42,8 +40,7 @@ type OrganizationIAMMemberObservation struct { type OrganizationIAMMemberParameters struct { - // The identity that will be granted the privilege that is specified in the role field. - // This field can have one of the following values: + // The identity that will be granted the privilege that is specified in the role field. This field can have one of the following values: // +kubebuilder:validation:Optional Member *string `json:"member,omitempty" tf:"member,omitempty"` diff --git a/apis/resourcemanager/v1alpha1/zz_cloudiambinding_types.go b/apis/resourcemanager/v1alpha1/zz_cloudiambinding_types.go index 12e781e..0528327 100755 --- a/apis/resourcemanager/v1alpha1/zz_cloudiambinding_types.go +++ b/apis/resourcemanager/v1alpha1/zz_cloudiambinding_types.go @@ -23,13 +23,11 @@ type CloudIAMBindingInitParameters struct { // +kubebuilder:validation:Optional CloudIDSelector *v1.Selector `json:"cloudIdSelector,omitempty" tf:"-"` - // An array of identities that will be granted the privilege in the role. - // Each entry can have one of the following values: + // An array of identities that will be granted the privilege in the role. Each entry can have one of the following values: // +listType=set Members []*string `json:"members,omitempty" tf:"members,omitempty"` - // The role that should be assigned. Only one - // yandex_resourcemanager_cloud_iam_binding can be used per role. + // The role that should be assigned. Only one yandex_resourcemanager_cloud_iam_binding can be used per role. Role *string `json:"role,omitempty" tf:"role,omitempty"` SleepAfter *float64 `json:"sleepAfter,omitempty" tf:"sleep_after,omitempty"` @@ -42,13 +40,11 @@ type CloudIAMBindingObservation struct { ID *string `json:"id,omitempty" tf:"id,omitempty"` - // An array of identities that will be granted the privilege in the role. - // Each entry can have one of the following values: + // An array of identities that will be granted the privilege in the role. Each entry can have one of the following values: // +listType=set Members []*string `json:"members,omitempty" tf:"members,omitempty"` - // The role that should be assigned. Only one - // yandex_resourcemanager_cloud_iam_binding can be used per role. + // The role that should be assigned. Only one yandex_resourcemanager_cloud_iam_binding can be used per role. Role *string `json:"role,omitempty" tf:"role,omitempty"` SleepAfter *float64 `json:"sleepAfter,omitempty" tf:"sleep_after,omitempty"` @@ -69,14 +65,12 @@ type CloudIAMBindingParameters struct { // +kubebuilder:validation:Optional CloudIDSelector *v1.Selector `json:"cloudIdSelector,omitempty" tf:"-"` - // An array of identities that will be granted the privilege in the role. - // Each entry can have one of the following values: + // An array of identities that will be granted the privilege in the role. Each entry can have one of the following values: // +kubebuilder:validation:Optional // +listType=set Members []*string `json:"members,omitempty" tf:"members,omitempty"` - // The role that should be assigned. Only one - // yandex_resourcemanager_cloud_iam_binding can be used per role. + // The role that should be assigned. Only one yandex_resourcemanager_cloud_iam_binding can be used per role. // +kubebuilder:validation:Optional Role *string `json:"role,omitempty" tf:"role,omitempty"` diff --git a/apis/resourcemanager/v1alpha1/zz_cloudiammember_types.go b/apis/resourcemanager/v1alpha1/zz_cloudiammember_types.go index 25e97e7..aef3af9 100755 --- a/apis/resourcemanager/v1alpha1/zz_cloudiammember_types.go +++ b/apis/resourcemanager/v1alpha1/zz_cloudiammember_types.go @@ -23,8 +23,7 @@ type CloudIAMMemberInitParameters struct { // +kubebuilder:validation:Optional CloudIDSelector *v1.Selector `json:"cloudIdSelector,omitempty" tf:"-"` - // The identity that will be granted the privilege that is specified in the role field. - // This field can have one of the following values: + // The identity that will be granted the privilege that is specified in the role field. This field can have one of the following values: Member *string `json:"member,omitempty" tf:"member,omitempty"` // The role that should be assigned. @@ -40,8 +39,7 @@ type CloudIAMMemberObservation struct { ID *string `json:"id,omitempty" tf:"id,omitempty"` - // The identity that will be granted the privilege that is specified in the role field. - // This field can have one of the following values: + // The identity that will be granted the privilege that is specified in the role field. This field can have one of the following values: Member *string `json:"member,omitempty" tf:"member,omitempty"` // The role that should be assigned. @@ -65,8 +63,7 @@ type CloudIAMMemberParameters struct { // +kubebuilder:validation:Optional CloudIDSelector *v1.Selector `json:"cloudIdSelector,omitempty" tf:"-"` - // The identity that will be granted the privilege that is specified in the role field. - // This field can have one of the following values: + // The identity that will be granted the privilege that is specified in the role field. This field can have one of the following values: // +kubebuilder:validation:Optional Member *string `json:"member,omitempty" tf:"member,omitempty"` diff --git a/apis/resourcemanager/v1alpha1/zz_folderiambinding_types.go b/apis/resourcemanager/v1alpha1/zz_folderiambinding_types.go index bd0dc02..403a15f 100755 --- a/apis/resourcemanager/v1alpha1/zz_folderiambinding_types.go +++ b/apis/resourcemanager/v1alpha1/zz_folderiambinding_types.go @@ -23,13 +23,11 @@ type FolderIAMBindingInitParameters struct { // +kubebuilder:validation:Optional FolderIDSelector *v1.Selector `json:"folderIdSelector,omitempty" tf:"-"` - // An array of identities that will be granted the privilege that is specified in the role field. - // Each entry can have one of the following values: + // An array of identities that will be granted the privilege that is specified in the role field. Each entry can have one of the following values: // +listType=set Members []*string `json:"members,omitempty" tf:"members,omitempty"` - // The role that should be assigned. Only one - // yandex_resourcemanager_folder_iam_binding can be used per role. + // The role that should be assigned. Only one yandex_resourcemanager_folder_iam_binding can be used per role. Role *string `json:"role,omitempty" tf:"role,omitempty"` SleepAfter *float64 `json:"sleepAfter,omitempty" tf:"sleep_after,omitempty"` @@ -42,13 +40,11 @@ type FolderIAMBindingObservation struct { ID *string `json:"id,omitempty" tf:"id,omitempty"` - // An array of identities that will be granted the privilege that is specified in the role field. - // Each entry can have one of the following values: + // An array of identities that will be granted the privilege that is specified in the role field. Each entry can have one of the following values: // +listType=set Members []*string `json:"members,omitempty" tf:"members,omitempty"` - // The role that should be assigned. Only one - // yandex_resourcemanager_folder_iam_binding can be used per role. + // The role that should be assigned. Only one yandex_resourcemanager_folder_iam_binding can be used per role. Role *string `json:"role,omitempty" tf:"role,omitempty"` SleepAfter *float64 `json:"sleepAfter,omitempty" tf:"sleep_after,omitempty"` @@ -69,14 +65,12 @@ type FolderIAMBindingParameters struct { // +kubebuilder:validation:Optional FolderIDSelector *v1.Selector `json:"folderIdSelector,omitempty" tf:"-"` - // An array of identities that will be granted the privilege that is specified in the role field. - // Each entry can have one of the following values: + // An array of identities that will be granted the privilege that is specified in the role field. Each entry can have one of the following values: // +kubebuilder:validation:Optional // +listType=set Members []*string `json:"members,omitempty" tf:"members,omitempty"` - // The role that should be assigned. Only one - // yandex_resourcemanager_folder_iam_binding can be used per role. + // The role that should be assigned. Only one yandex_resourcemanager_folder_iam_binding can be used per role. // +kubebuilder:validation:Optional Role *string `json:"role,omitempty" tf:"role,omitempty"` diff --git a/apis/resourcemanager/v1alpha1/zz_folderiammember_types.go b/apis/resourcemanager/v1alpha1/zz_folderiammember_types.go index 54be849..f3da6c6 100755 --- a/apis/resourcemanager/v1alpha1/zz_folderiammember_types.go +++ b/apis/resourcemanager/v1alpha1/zz_folderiammember_types.go @@ -23,8 +23,7 @@ type FolderIAMMemberInitParameters struct { // +kubebuilder:validation:Optional FolderIDSelector *v1.Selector `json:"folderIdSelector,omitempty" tf:"-"` - // The identity that will be granted the privilege that is specified in the role field. - // This field can have one of the following values: + // The identity that will be granted the privilege that is specified in the role field. This field can have one of the following values: Member *string `json:"member,omitempty" tf:"member,omitempty"` // The role that should be assigned. @@ -40,8 +39,7 @@ type FolderIAMMemberObservation struct { ID *string `json:"id,omitempty" tf:"id,omitempty"` - // The identity that will be granted the privilege that is specified in the role field. - // This field can have one of the following values: + // The identity that will be granted the privilege that is specified in the role field. This field can have one of the following values: Member *string `json:"member,omitempty" tf:"member,omitempty"` // The role that should be assigned. @@ -65,8 +63,7 @@ type FolderIAMMemberParameters struct { // +kubebuilder:validation:Optional FolderIDSelector *v1.Selector `json:"folderIdSelector,omitempty" tf:"-"` - // The identity that will be granted the privilege that is specified in the role field. - // This field can have one of the following values: + // The identity that will be granted the privilege that is specified in the role field. This field can have one of the following values: // +kubebuilder:validation:Optional Member *string `json:"member,omitempty" tf:"member,omitempty"` diff --git a/apis/resourcemanager/v1alpha1/zz_folderiampolicy_types.go b/apis/resourcemanager/v1alpha1/zz_folderiampolicy_types.go index a51906a..6b72e3f 100755 --- a/apis/resourcemanager/v1alpha1/zz_folderiampolicy_types.go +++ b/apis/resourcemanager/v1alpha1/zz_folderiampolicy_types.go @@ -23,8 +23,7 @@ type FolderIAMPolicyInitParameters struct { // +kubebuilder:validation:Optional FolderIDSelector *v1.Selector `json:"folderIdSelector,omitempty" tf:"-"` - // The yandex_iam_policy data source that represents - // the IAM policy that will be applied to the folder. This policy overrides any existing policy applied to the folder. + // The yandex_iam_policy data source that represents the IAM policy that will be applied to the folder. This policy overrides any existing policy applied to the folder. PolicyData *string `json:"policyData,omitempty" tf:"policy_data,omitempty"` } @@ -35,8 +34,7 @@ type FolderIAMPolicyObservation struct { ID *string `json:"id,omitempty" tf:"id,omitempty"` - // The yandex_iam_policy data source that represents - // the IAM policy that will be applied to the folder. This policy overrides any existing policy applied to the folder. + // The yandex_iam_policy data source that represents the IAM policy that will be applied to the folder. This policy overrides any existing policy applied to the folder. PolicyData *string `json:"policyData,omitempty" tf:"policy_data,omitempty"` } @@ -55,8 +53,7 @@ type FolderIAMPolicyParameters struct { // +kubebuilder:validation:Optional FolderIDSelector *v1.Selector `json:"folderIdSelector,omitempty" tf:"-"` - // The yandex_iam_policy data source that represents - // the IAM policy that will be applied to the folder. This policy overrides any existing policy applied to the folder. + // The yandex_iam_policy data source that represents the IAM policy that will be applied to the folder. This policy overrides any existing policy applied to the folder. // +kubebuilder:validation:Optional PolicyData *string `json:"policyData,omitempty" tf:"policy_data,omitempty"` } diff --git a/apis/serverless/v1alpha1/zz_container_types.go b/apis/serverless/v1alpha1/zz_container_types.go index ecd3242..f4e1d8c 100755 --- a/apis/serverless/v1alpha1/zz_container_types.go +++ b/apis/serverless/v1alpha1/zz_container_types.go @@ -73,16 +73,32 @@ type ContainerInitParameters struct { // Container memory in megabytes, should be aligned to 128 Memory *float64 `json:"memory,omitempty" tf:"memory,omitempty"` + // Mounts for Yandex Cloud Serverless Container + Mounts []MountsInitParameters `json:"mounts,omitempty" tf:"mounts,omitempty"` + // Yandex Cloud Serverless Container name Name *string `json:"name,omitempty" tf:"name,omitempty"` + // Provision policy. If specified the revision will have prepared instances + ProvisionPolicy []ProvisionPolicyInitParameters `json:"provisionPolicy,omitempty" tf:"provision_policy,omitempty"` + // Secrets for Yandex Cloud Serverless Container Secrets []SecretsInitParameters `json:"secrets,omitempty" tf:"secrets,omitempty"` // Service account ID for Yandex Cloud Serverless Container + // +crossplane:generate:reference:type=github.com/tagesjump/provider-upjet-yc/apis/iam/v1alpha1.ServiceAccount + // +crossplane:generate:reference:extractor=github.com/crossplane/upjet/pkg/resource.ExtractResourceID() ServiceAccountID *string `json:"serviceAccountId,omitempty" tf:"service_account_id,omitempty"` - // Storage mounts for Yandex Cloud Serverless Container + // Reference to a ServiceAccount in iam to populate serviceAccountId. + // +kubebuilder:validation:Optional + ServiceAccountIDRef *v1.Reference `json:"serviceAccountIdRef,omitempty" tf:"-"` + + // Selector for a ServiceAccount in iam to populate serviceAccountId. + // +kubebuilder:validation:Optional + ServiceAccountIDSelector *v1.Selector `json:"serviceAccountIdSelector,omitempty" tf:"-"` + + // (DEPRECATED, use mounts.0.object_storage instead) Storage mounts for Yandex Cloud Serverless Container StorageMounts []StorageMountsInitParameters `json:"storageMounts,omitempty" tf:"storage_mounts,omitempty"` } @@ -111,7 +127,7 @@ type ContainerObservation struct { // Folder ID for the Yandex Cloud Serverless Container FolderID *string `json:"folderId,omitempty" tf:"folder_id,omitempty"` - // Secret's id. + // Secret's id ID *string `json:"id,omitempty" tf:"id,omitempty"` // Revision deployment image for Yandex Cloud Serverless Container @@ -128,9 +144,15 @@ type ContainerObservation struct { // Container memory in megabytes, should be aligned to 128 Memory *float64 `json:"memory,omitempty" tf:"memory,omitempty"` + // Mounts for Yandex Cloud Serverless Container + Mounts []MountsObservation `json:"mounts,omitempty" tf:"mounts,omitempty"` + // Yandex Cloud Serverless Container name Name *string `json:"name,omitempty" tf:"name,omitempty"` + // Provision policy. If specified the revision will have prepared instances + ProvisionPolicy []ProvisionPolicyObservation `json:"provisionPolicy,omitempty" tf:"provision_policy,omitempty"` + // Last revision ID of the Yandex Cloud Serverless Container RevisionID *string `json:"revisionId,omitempty" tf:"revision_id,omitempty"` @@ -140,7 +162,7 @@ type ContainerObservation struct { // Service account ID for Yandex Cloud Serverless Container ServiceAccountID *string `json:"serviceAccountId,omitempty" tf:"service_account_id,omitempty"` - // Storage mounts for Yandex Cloud Serverless Container + // (DEPRECATED, use mounts.0.object_storage instead) Storage mounts for Yandex Cloud Serverless Container StorageMounts []StorageMountsObservation `json:"storageMounts,omitempty" tf:"storage_mounts,omitempty"` // Invoke URL for the Yandex Cloud Serverless Container @@ -203,23 +225,70 @@ type ContainerParameters struct { // +kubebuilder:validation:Optional Memory *float64 `json:"memory,omitempty" tf:"memory,omitempty"` + // Mounts for Yandex Cloud Serverless Container + // +kubebuilder:validation:Optional + Mounts []MountsParameters `json:"mounts,omitempty" tf:"mounts,omitempty"` + // Yandex Cloud Serverless Container name // +kubebuilder:validation:Optional Name *string `json:"name,omitempty" tf:"name,omitempty"` + // Provision policy. If specified the revision will have prepared instances + // +kubebuilder:validation:Optional + ProvisionPolicy []ProvisionPolicyParameters `json:"provisionPolicy,omitempty" tf:"provision_policy,omitempty"` + // Secrets for Yandex Cloud Serverless Container // +kubebuilder:validation:Optional Secrets []SecretsParameters `json:"secrets,omitempty" tf:"secrets,omitempty"` // Service account ID for Yandex Cloud Serverless Container + // +crossplane:generate:reference:type=github.com/tagesjump/provider-upjet-yc/apis/iam/v1alpha1.ServiceAccount + // +crossplane:generate:reference:extractor=github.com/crossplane/upjet/pkg/resource.ExtractResourceID() // +kubebuilder:validation:Optional ServiceAccountID *string `json:"serviceAccountId,omitempty" tf:"service_account_id,omitempty"` - // Storage mounts for Yandex Cloud Serverless Container + // Reference to a ServiceAccount in iam to populate serviceAccountId. + // +kubebuilder:validation:Optional + ServiceAccountIDRef *v1.Reference `json:"serviceAccountIdRef,omitempty" tf:"-"` + + // Selector for a ServiceAccount in iam to populate serviceAccountId. + // +kubebuilder:validation:Optional + ServiceAccountIDSelector *v1.Selector `json:"serviceAccountIdSelector,omitempty" tf:"-"` + + // (DEPRECATED, use mounts.0.object_storage instead) Storage mounts for Yandex Cloud Serverless Container // +kubebuilder:validation:Optional StorageMounts []StorageMountsParameters `json:"storageMounts,omitempty" tf:"storage_mounts,omitempty"` } +type EphemeralDiskInitParameters struct { + + // Optional block size of the ephemeral disk in KB + BlockSizeKb *float64 `json:"blockSizeKb,omitempty" tf:"block_size_kb,omitempty"` + + // Size of the ephemeral disk in GB + SizeGb *float64 `json:"sizeGb,omitempty" tf:"size_gb,omitempty"` +} + +type EphemeralDiskObservation struct { + + // Optional block size of the ephemeral disk in KB + BlockSizeKb *float64 `json:"blockSizeKb,omitempty" tf:"block_size_kb,omitempty"` + + // Size of the ephemeral disk in GB + SizeGb *float64 `json:"sizeGb,omitempty" tf:"size_gb,omitempty"` +} + +type EphemeralDiskParameters struct { + + // Optional block size of the ephemeral disk in KB + // +kubebuilder:validation:Optional + BlockSizeKb *float64 `json:"blockSizeKb,omitempty" tf:"block_size_kb,omitempty"` + + // Size of the ephemeral disk in GB + // +kubebuilder:validation:Optional + SizeGb *float64 `json:"sizeGb" tf:"size_gb,omitempty"` +} + type ImageInitParameters struct { // List of arguments for Yandex Cloud Serverless Container @@ -228,10 +297,7 @@ type ImageInitParameters struct { // List of commands for Yandex Cloud Serverless Container Command []*string `json:"command,omitempty" tf:"command,omitempty"` - // Digest of image that will be deployed as Yandex Cloud Serverless Container. - // If presented, should be equal to digest that will be resolved at server side by URL. - // Container will be updated on digest change even if image.0.url stays the same. - // If field not specified then its value will be computed. + // Digest of image that will be deployed as Yandex Cloud Serverless Container. If presented, should be equal to digest that will be resolved at server side by URL. Container will be updated on digest change even if image.0.url stays the same. If field not specified then its value will be computed. Digest *string `json:"digest,omitempty" tf:"digest,omitempty"` // A set of key/value environment variable pairs for Yandex Cloud Serverless Container @@ -253,10 +319,7 @@ type ImageObservation struct { // List of commands for Yandex Cloud Serverless Container Command []*string `json:"command,omitempty" tf:"command,omitempty"` - // Digest of image that will be deployed as Yandex Cloud Serverless Container. - // If presented, should be equal to digest that will be resolved at server side by URL. - // Container will be updated on digest change even if image.0.url stays the same. - // If field not specified then its value will be computed. + // Digest of image that will be deployed as Yandex Cloud Serverless Container. If presented, should be equal to digest that will be resolved at server side by URL. Container will be updated on digest change even if image.0.url stays the same. If field not specified then its value will be computed. Digest *string `json:"digest,omitempty" tf:"digest,omitempty"` // A set of key/value environment variable pairs for Yandex Cloud Serverless Container @@ -280,10 +343,7 @@ type ImageParameters struct { // +kubebuilder:validation:Optional Command []*string `json:"command,omitempty" tf:"command,omitempty"` - // Digest of image that will be deployed as Yandex Cloud Serverless Container. - // If presented, should be equal to digest that will be resolved at server side by URL. - // Container will be updated on digest change even if image.0.url stays the same. - // If field not specified then its value will be computed. + // Digest of image that will be deployed as Yandex Cloud Serverless Container. If presented, should be equal to digest that will be resolved at server side by URL. Container will be updated on digest change even if image.0.url stays the same. If field not specified then its value will be computed. // +kubebuilder:validation:Optional Digest *string `json:"digest,omitempty" tf:"digest,omitempty"` @@ -350,100 +410,257 @@ type LogOptionsParameters struct { MinLevel *string `json:"minLevel,omitempty" tf:"min_level,omitempty"` } +type MountsInitParameters struct { + + // One of the available mount types. Disk available during the function execution time + EphemeralDisk []EphemeralDiskInitParameters `json:"ephemeralDisk,omitempty" tf:"ephemeral_disk,omitempty"` + + // Mount’s accessibility mode. Valid values are ro and rw + Mode *string `json:"mode,omitempty" tf:"mode,omitempty"` + + // Path inside the container to access the directory in which the bucket is mounted + MountPointPath *string `json:"mountPointPath,omitempty" tf:"mount_point_path,omitempty"` + + // One of the available mount types. Object storage as a mount + ObjectStorage []ObjectStorageInitParameters `json:"objectStorage,omitempty" tf:"object_storage,omitempty"` +} + +type MountsObservation struct { + + // One of the available mount types. Disk available during the function execution time + EphemeralDisk []EphemeralDiskObservation `json:"ephemeralDisk,omitempty" tf:"ephemeral_disk,omitempty"` + + // Mount’s accessibility mode. Valid values are ro and rw + Mode *string `json:"mode,omitempty" tf:"mode,omitempty"` + + // Path inside the container to access the directory in which the bucket is mounted + MountPointPath *string `json:"mountPointPath,omitempty" tf:"mount_point_path,omitempty"` + + // One of the available mount types. Object storage as a mount + ObjectStorage []ObjectStorageObservation `json:"objectStorage,omitempty" tf:"object_storage,omitempty"` +} + +type MountsParameters struct { + + // One of the available mount types. Disk available during the function execution time + // +kubebuilder:validation:Optional + EphemeralDisk []EphemeralDiskParameters `json:"ephemeralDisk,omitempty" tf:"ephemeral_disk,omitempty"` + + // Mount’s accessibility mode. Valid values are ro and rw + // +kubebuilder:validation:Optional + Mode *string `json:"mode,omitempty" tf:"mode,omitempty"` + + // Path inside the container to access the directory in which the bucket is mounted + // +kubebuilder:validation:Optional + MountPointPath *string `json:"mountPointPath" tf:"mount_point_path,omitempty"` + + // One of the available mount types. Object storage as a mount + // +kubebuilder:validation:Optional + ObjectStorage []ObjectStorageParameters `json:"objectStorage,omitempty" tf:"object_storage,omitempty"` +} + +type ObjectStorageInitParameters struct { + + // Name of the mounting bucket + // +crossplane:generate:reference:type=github.com/tagesjump/provider-upjet-yc/apis/storage/v1alpha1.Bucket + // +crossplane:generate:reference:extractor=github.com/crossplane/upjet/pkg/resource.ExtractParamPath("bucket",false) + Bucket *string `json:"bucket,omitempty" tf:"bucket,omitempty"` + + // Reference to a Bucket in storage to populate bucket. + // +kubebuilder:validation:Optional + BucketRef *v1.Reference `json:"bucketRef,omitempty" tf:"-"` + + // Selector for a Bucket in storage to populate bucket. + // +kubebuilder:validation:Optional + BucketSelector *v1.Selector `json:"bucketSelector,omitempty" tf:"-"` + + // Prefix within the bucket. If you leave this field empty, the entire bucket will be mounted + Prefix *string `json:"prefix,omitempty" tf:"prefix,omitempty"` +} + +type ObjectStorageObservation struct { + + // Name of the mounting bucket + Bucket *string `json:"bucket,omitempty" tf:"bucket,omitempty"` + + // Prefix within the bucket. If you leave this field empty, the entire bucket will be mounted + Prefix *string `json:"prefix,omitempty" tf:"prefix,omitempty"` +} + +type ObjectStorageParameters struct { + + // Name of the mounting bucket + // +crossplane:generate:reference:type=github.com/tagesjump/provider-upjet-yc/apis/storage/v1alpha1.Bucket + // +crossplane:generate:reference:extractor=github.com/crossplane/upjet/pkg/resource.ExtractParamPath("bucket",false) + // +kubebuilder:validation:Optional + Bucket *string `json:"bucket,omitempty" tf:"bucket,omitempty"` + + // Reference to a Bucket in storage to populate bucket. + // +kubebuilder:validation:Optional + BucketRef *v1.Reference `json:"bucketRef,omitempty" tf:"-"` + + // Selector for a Bucket in storage to populate bucket. + // +kubebuilder:validation:Optional + BucketSelector *v1.Selector `json:"bucketSelector,omitempty" tf:"-"` + + // Prefix within the bucket. If you leave this field empty, the entire bucket will be mounted + // +kubebuilder:validation:Optional + Prefix *string `json:"prefix,omitempty" tf:"prefix,omitempty"` +} + +type ProvisionPolicyInitParameters struct { + + // Minimum number of prepared instances that are always ready to serve requests + MinInstances *float64 `json:"minInstances,omitempty" tf:"min_instances,omitempty"` +} + +type ProvisionPolicyObservation struct { + + // Minimum number of prepared instances that are always ready to serve requests + MinInstances *float64 `json:"minInstances,omitempty" tf:"min_instances,omitempty"` +} + +type ProvisionPolicyParameters struct { + + // Minimum number of prepared instances that are always ready to serve requests + // +kubebuilder:validation:Optional + MinInstances *float64 `json:"minInstances" tf:"min_instances,omitempty"` +} + type SecretsInitParameters struct { - // Container's environment variable in which secret's value will be stored. + // Container's environment variable in which secret's value will be stored EnvironmentVariable *string `json:"environmentVariable,omitempty" tf:"environment_variable,omitempty"` - // Secret's id. + // Secret's id + // +crossplane:generate:reference:type=github.com/tagesjump/provider-upjet-yc/apis/lockbox/v1alpha1.Secret + // +crossplane:generate:reference:extractor=github.com/crossplane/upjet/pkg/resource.ExtractResourceID() ID *string `json:"id,omitempty" tf:"id,omitempty"` - // Secret's entries key which value will be stored in environment variable. + // Reference to a Secret in lockbox to populate id. + // +kubebuilder:validation:Optional + IDRef *v1.Reference `json:"idRef,omitempty" tf:"-"` + + // Selector for a Secret in lockbox to populate id. + // +kubebuilder:validation:Optional + IDSelector *v1.Selector `json:"idSelector,omitempty" tf:"-"` + + // Secret's entries key which value will be stored in environment variable Key *string `json:"key,omitempty" tf:"key,omitempty"` - // Secret's version id. + // Secret's version id + // +crossplane:generate:reference:type=github.com/tagesjump/provider-upjet-yc/apis/lockbox/v1alpha1.SecretVersion + // +crossplane:generate:reference:extractor=github.com/crossplane/upjet/pkg/resource.ExtractResourceID() VersionID *string `json:"versionId,omitempty" tf:"version_id,omitempty"` + + // Reference to a SecretVersion in lockbox to populate versionId. + // +kubebuilder:validation:Optional + VersionIDRef *v1.Reference `json:"versionIdRef,omitempty" tf:"-"` + + // Selector for a SecretVersion in lockbox to populate versionId. + // +kubebuilder:validation:Optional + VersionIDSelector *v1.Selector `json:"versionIdSelector,omitempty" tf:"-"` } type SecretsObservation struct { - // Container's environment variable in which secret's value will be stored. + // Container's environment variable in which secret's value will be stored EnvironmentVariable *string `json:"environmentVariable,omitempty" tf:"environment_variable,omitempty"` - // Secret's id. + // Secret's id ID *string `json:"id,omitempty" tf:"id,omitempty"` - // Secret's entries key which value will be stored in environment variable. + // Secret's entries key which value will be stored in environment variable Key *string `json:"key,omitempty" tf:"key,omitempty"` - // Secret's version id. + // Secret's version id VersionID *string `json:"versionId,omitempty" tf:"version_id,omitempty"` } type SecretsParameters struct { - // Container's environment variable in which secret's value will be stored. + // Container's environment variable in which secret's value will be stored // +kubebuilder:validation:Optional EnvironmentVariable *string `json:"environmentVariable" tf:"environment_variable,omitempty"` - // Secret's id. + // Secret's id + // +crossplane:generate:reference:type=github.com/tagesjump/provider-upjet-yc/apis/lockbox/v1alpha1.Secret + // +crossplane:generate:reference:extractor=github.com/crossplane/upjet/pkg/resource.ExtractResourceID() // +kubebuilder:validation:Optional - ID *string `json:"id" tf:"id,omitempty"` + ID *string `json:"id,omitempty" tf:"id,omitempty"` - // Secret's entries key which value will be stored in environment variable. + // Reference to a Secret in lockbox to populate id. + // +kubebuilder:validation:Optional + IDRef *v1.Reference `json:"idRef,omitempty" tf:"-"` + + // Selector for a Secret in lockbox to populate id. + // +kubebuilder:validation:Optional + IDSelector *v1.Selector `json:"idSelector,omitempty" tf:"-"` + + // Secret's entries key which value will be stored in environment variable // +kubebuilder:validation:Optional Key *string `json:"key" tf:"key,omitempty"` - // Secret's version id. + // Secret's version id + // +crossplane:generate:reference:type=github.com/tagesjump/provider-upjet-yc/apis/lockbox/v1alpha1.SecretVersion + // +crossplane:generate:reference:extractor=github.com/crossplane/upjet/pkg/resource.ExtractResourceID() + // +kubebuilder:validation:Optional + VersionID *string `json:"versionId,omitempty" tf:"version_id,omitempty"` + + // Reference to a SecretVersion in lockbox to populate versionId. + // +kubebuilder:validation:Optional + VersionIDRef *v1.Reference `json:"versionIdRef,omitempty" tf:"-"` + + // Selector for a SecretVersion in lockbox to populate versionId. // +kubebuilder:validation:Optional - VersionID *string `json:"versionId" tf:"version_id,omitempty"` + VersionIDSelector *v1.Selector `json:"versionIdSelector,omitempty" tf:"-"` } type StorageMountsInitParameters struct { - // Name of the mounting bucket. + // Name of the mounting bucket Bucket *string `json:"bucket,omitempty" tf:"bucket,omitempty"` - // Path inside the container to access the directory in which the bucket is mounted. + // Path inside the container to access the directory in which the bucket is mounted MountPointPath *string `json:"mountPointPath,omitempty" tf:"mount_point_path,omitempty"` - // Prefix within the bucket. If you leave this field empty, the entire bucket will be mounted. + // Prefix within the bucket. If you leave this field empty, the entire bucket will be mounted Prefix *string `json:"prefix,omitempty" tf:"prefix,omitempty"` - // Mount the bucket in read-only mode. + // Mount the bucket in read-only mode ReadOnly *bool `json:"readOnly,omitempty" tf:"read_only,omitempty"` } type StorageMountsObservation struct { - // Name of the mounting bucket. + // Name of the mounting bucket Bucket *string `json:"bucket,omitempty" tf:"bucket,omitempty"` - // Path inside the container to access the directory in which the bucket is mounted. + // Path inside the container to access the directory in which the bucket is mounted MountPointPath *string `json:"mountPointPath,omitempty" tf:"mount_point_path,omitempty"` - // Prefix within the bucket. If you leave this field empty, the entire bucket will be mounted. + // Prefix within the bucket. If you leave this field empty, the entire bucket will be mounted Prefix *string `json:"prefix,omitempty" tf:"prefix,omitempty"` - // Mount the bucket in read-only mode. + // Mount the bucket in read-only mode ReadOnly *bool `json:"readOnly,omitempty" tf:"read_only,omitempty"` } type StorageMountsParameters struct { - // Name of the mounting bucket. + // Name of the mounting bucket // +kubebuilder:validation:Optional Bucket *string `json:"bucket" tf:"bucket,omitempty"` - // Path inside the container to access the directory in which the bucket is mounted. + // Path inside the container to access the directory in which the bucket is mounted // +kubebuilder:validation:Optional MountPointPath *string `json:"mountPointPath" tf:"mount_point_path,omitempty"` - // Prefix within the bucket. If you leave this field empty, the entire bucket will be mounted. + // Prefix within the bucket. If you leave this field empty, the entire bucket will be mounted // +kubebuilder:validation:Optional Prefix *string `json:"prefix,omitempty" tf:"prefix,omitempty"` - // Mount the bucket in read-only mode. + // Mount the bucket in read-only mode // +kubebuilder:validation:Optional ReadOnly *bool `json:"readOnly,omitempty" tf:"read_only,omitempty"` } diff --git a/apis/serverless/v1alpha1/zz_containeriambinding_types.go b/apis/serverless/v1alpha1/zz_containeriambinding_types.go index 8ff5dd3..81896b3 100755 --- a/apis/serverless/v1alpha1/zz_containeriambinding_types.go +++ b/apis/serverless/v1alpha1/zz_containeriambinding_types.go @@ -14,8 +14,7 @@ type ContainerIAMBindingInitParameters struct { // The Yandex Serverless Container ID to apply a binding to. ContainerID *string `json:"containerId,omitempty" tf:"container_id,omitempty"` - // Identities that will be granted the privilege in role. - // Each entry can have one of the following values: + // Identities that will be granted the privilege in role. Each entry can have one of the following values: // +listType=set Members []*string `json:"members,omitempty" tf:"members,omitempty"` @@ -32,8 +31,7 @@ type ContainerIAMBindingObservation struct { ID *string `json:"id,omitempty" tf:"id,omitempty"` - // Identities that will be granted the privilege in role. - // Each entry can have one of the following values: + // Identities that will be granted the privilege in role. Each entry can have one of the following values: // +listType=set Members []*string `json:"members,omitempty" tf:"members,omitempty"` @@ -49,8 +47,7 @@ type ContainerIAMBindingParameters struct { // +kubebuilder:validation:Optional ContainerID *string `json:"containerId,omitempty" tf:"container_id,omitempty"` - // Identities that will be granted the privilege in role. - // Each entry can have one of the following values: + // Identities that will be granted the privilege in role. Each entry can have one of the following values: // +kubebuilder:validation:Optional // +listType=set Members []*string `json:"members,omitempty" tf:"members,omitempty"` diff --git a/apis/serverless/v1alpha1/zz_generated.deepcopy.go b/apis/serverless/v1alpha1/zz_generated.deepcopy.go index 2a4734d..f64775b 100644 --- a/apis/serverless/v1alpha1/zz_generated.deepcopy.go +++ b/apis/serverless/v1alpha1/zz_generated.deepcopy.go @@ -403,11 +403,25 @@ func (in *ContainerInitParameters) DeepCopyInto(out *ContainerInitParameters) { *out = new(float64) **out = **in } + if in.Mounts != nil { + in, out := &in.Mounts, &out.Mounts + *out = make([]MountsInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } if in.Name != nil { in, out := &in.Name, &out.Name *out = new(string) **out = **in } + if in.ProvisionPolicy != nil { + in, out := &in.ProvisionPolicy, &out.ProvisionPolicy + *out = make([]ProvisionPolicyInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } if in.Secrets != nil { in, out := &in.Secrets, &out.Secrets *out = make([]SecretsInitParameters, len(*in)) @@ -420,6 +434,16 @@ func (in *ContainerInitParameters) DeepCopyInto(out *ContainerInitParameters) { *out = new(string) **out = **in } + if in.ServiceAccountIDRef != nil { + in, out := &in.ServiceAccountIDRef, &out.ServiceAccountIDRef + *out = new(v1.Reference) + (*in).DeepCopyInto(*out) + } + if in.ServiceAccountIDSelector != nil { + in, out := &in.ServiceAccountIDSelector, &out.ServiceAccountIDSelector + *out = new(v1.Selector) + (*in).DeepCopyInto(*out) + } if in.StorageMounts != nil { in, out := &in.StorageMounts, &out.StorageMounts *out = make([]StorageMountsInitParameters, len(*in)) @@ -556,11 +580,25 @@ func (in *ContainerObservation) DeepCopyInto(out *ContainerObservation) { *out = new(float64) **out = **in } + if in.Mounts != nil { + in, out := &in.Mounts, &out.Mounts + *out = make([]MountsObservation, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } if in.Name != nil { in, out := &in.Name, &out.Name *out = new(string) **out = **in } + if in.ProvisionPolicy != nil { + in, out := &in.ProvisionPolicy, &out.ProvisionPolicy + *out = make([]ProvisionPolicyObservation, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } if in.RevisionID != nil { in, out := &in.RevisionID, &out.RevisionID *out = new(string) @@ -687,11 +725,25 @@ func (in *ContainerParameters) DeepCopyInto(out *ContainerParameters) { *out = new(float64) **out = **in } + if in.Mounts != nil { + in, out := &in.Mounts, &out.Mounts + *out = make([]MountsParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } if in.Name != nil { in, out := &in.Name, &out.Name *out = new(string) **out = **in } + if in.ProvisionPolicy != nil { + in, out := &in.ProvisionPolicy, &out.ProvisionPolicy + *out = make([]ProvisionPolicyParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } if in.Secrets != nil { in, out := &in.Secrets, &out.Secrets *out = make([]SecretsParameters, len(*in)) @@ -704,6 +756,16 @@ func (in *ContainerParameters) DeepCopyInto(out *ContainerParameters) { *out = new(string) **out = **in } + if in.ServiceAccountIDRef != nil { + in, out := &in.ServiceAccountIDRef, &out.ServiceAccountIDRef + *out = new(v1.Reference) + (*in).DeepCopyInto(*out) + } + if in.ServiceAccountIDSelector != nil { + in, out := &in.ServiceAccountIDSelector, &out.ServiceAccountIDSelector + *out = new(v1.Selector) + (*in).DeepCopyInto(*out) + } if in.StorageMounts != nil { in, out := &in.StorageMounts, &out.StorageMounts *out = make([]StorageMountsParameters, len(*in)) @@ -758,6 +820,81 @@ func (in *ContainerStatus) DeepCopy() *ContainerStatus { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *EphemeralDiskInitParameters) DeepCopyInto(out *EphemeralDiskInitParameters) { + *out = *in + if in.BlockSizeKb != nil { + in, out := &in.BlockSizeKb, &out.BlockSizeKb + *out = new(float64) + **out = **in + } + if in.SizeGb != nil { + in, out := &in.SizeGb, &out.SizeGb + *out = new(float64) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new EphemeralDiskInitParameters. +func (in *EphemeralDiskInitParameters) DeepCopy() *EphemeralDiskInitParameters { + if in == nil { + return nil + } + out := new(EphemeralDiskInitParameters) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *EphemeralDiskObservation) DeepCopyInto(out *EphemeralDiskObservation) { + *out = *in + if in.BlockSizeKb != nil { + in, out := &in.BlockSizeKb, &out.BlockSizeKb + *out = new(float64) + **out = **in + } + if in.SizeGb != nil { + in, out := &in.SizeGb, &out.SizeGb + *out = new(float64) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new EphemeralDiskObservation. +func (in *EphemeralDiskObservation) DeepCopy() *EphemeralDiskObservation { + if in == nil { + return nil + } + out := new(EphemeralDiskObservation) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *EphemeralDiskParameters) DeepCopyInto(out *EphemeralDiskParameters) { + *out = *in + if in.BlockSizeKb != nil { + in, out := &in.BlockSizeKb, &out.BlockSizeKb + *out = new(float64) + **out = **in + } + if in.SizeGb != nil { + in, out := &in.SizeGb, &out.SizeGb + *out = new(float64) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new EphemeralDiskParameters. +func (in *EphemeralDiskParameters) DeepCopy() *EphemeralDiskParameters { + if in == nil { + return nil + } + out := new(EphemeralDiskParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *ImageInitParameters) DeepCopyInto(out *ImageInitParameters) { *out = *in @@ -1067,6 +1204,278 @@ func (in *LogOptionsParameters) DeepCopy() *LogOptionsParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *MountsInitParameters) DeepCopyInto(out *MountsInitParameters) { + *out = *in + if in.EphemeralDisk != nil { + in, out := &in.EphemeralDisk, &out.EphemeralDisk + *out = make([]EphemeralDiskInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Mode != nil { + in, out := &in.Mode, &out.Mode + *out = new(string) + **out = **in + } + if in.MountPointPath != nil { + in, out := &in.MountPointPath, &out.MountPointPath + *out = new(string) + **out = **in + } + if in.ObjectStorage != nil { + in, out := &in.ObjectStorage, &out.ObjectStorage + *out = make([]ObjectStorageInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new MountsInitParameters. +func (in *MountsInitParameters) DeepCopy() *MountsInitParameters { + if in == nil { + return nil + } + out := new(MountsInitParameters) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *MountsObservation) DeepCopyInto(out *MountsObservation) { + *out = *in + if in.EphemeralDisk != nil { + in, out := &in.EphemeralDisk, &out.EphemeralDisk + *out = make([]EphemeralDiskObservation, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Mode != nil { + in, out := &in.Mode, &out.Mode + *out = new(string) + **out = **in + } + if in.MountPointPath != nil { + in, out := &in.MountPointPath, &out.MountPointPath + *out = new(string) + **out = **in + } + if in.ObjectStorage != nil { + in, out := &in.ObjectStorage, &out.ObjectStorage + *out = make([]ObjectStorageObservation, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new MountsObservation. +func (in *MountsObservation) DeepCopy() *MountsObservation { + if in == nil { + return nil + } + out := new(MountsObservation) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *MountsParameters) DeepCopyInto(out *MountsParameters) { + *out = *in + if in.EphemeralDisk != nil { + in, out := &in.EphemeralDisk, &out.EphemeralDisk + *out = make([]EphemeralDiskParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Mode != nil { + in, out := &in.Mode, &out.Mode + *out = new(string) + **out = **in + } + if in.MountPointPath != nil { + in, out := &in.MountPointPath, &out.MountPointPath + *out = new(string) + **out = **in + } + if in.ObjectStorage != nil { + in, out := &in.ObjectStorage, &out.ObjectStorage + *out = make([]ObjectStorageParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new MountsParameters. +func (in *MountsParameters) DeepCopy() *MountsParameters { + if in == nil { + return nil + } + out := new(MountsParameters) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *ObjectStorageInitParameters) DeepCopyInto(out *ObjectStorageInitParameters) { + *out = *in + if in.Bucket != nil { + in, out := &in.Bucket, &out.Bucket + *out = new(string) + **out = **in + } + if in.BucketRef != nil { + in, out := &in.BucketRef, &out.BucketRef + *out = new(v1.Reference) + (*in).DeepCopyInto(*out) + } + if in.BucketSelector != nil { + in, out := &in.BucketSelector, &out.BucketSelector + *out = new(v1.Selector) + (*in).DeepCopyInto(*out) + } + if in.Prefix != nil { + in, out := &in.Prefix, &out.Prefix + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ObjectStorageInitParameters. +func (in *ObjectStorageInitParameters) DeepCopy() *ObjectStorageInitParameters { + if in == nil { + return nil + } + out := new(ObjectStorageInitParameters) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *ObjectStorageObservation) DeepCopyInto(out *ObjectStorageObservation) { + *out = *in + if in.Bucket != nil { + in, out := &in.Bucket, &out.Bucket + *out = new(string) + **out = **in + } + if in.Prefix != nil { + in, out := &in.Prefix, &out.Prefix + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ObjectStorageObservation. +func (in *ObjectStorageObservation) DeepCopy() *ObjectStorageObservation { + if in == nil { + return nil + } + out := new(ObjectStorageObservation) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *ObjectStorageParameters) DeepCopyInto(out *ObjectStorageParameters) { + *out = *in + if in.Bucket != nil { + in, out := &in.Bucket, &out.Bucket + *out = new(string) + **out = **in + } + if in.BucketRef != nil { + in, out := &in.BucketRef, &out.BucketRef + *out = new(v1.Reference) + (*in).DeepCopyInto(*out) + } + if in.BucketSelector != nil { + in, out := &in.BucketSelector, &out.BucketSelector + *out = new(v1.Selector) + (*in).DeepCopyInto(*out) + } + if in.Prefix != nil { + in, out := &in.Prefix, &out.Prefix + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ObjectStorageParameters. +func (in *ObjectStorageParameters) DeepCopy() *ObjectStorageParameters { + if in == nil { + return nil + } + out := new(ObjectStorageParameters) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *ProvisionPolicyInitParameters) DeepCopyInto(out *ProvisionPolicyInitParameters) { + *out = *in + if in.MinInstances != nil { + in, out := &in.MinInstances, &out.MinInstances + *out = new(float64) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ProvisionPolicyInitParameters. +func (in *ProvisionPolicyInitParameters) DeepCopy() *ProvisionPolicyInitParameters { + if in == nil { + return nil + } + out := new(ProvisionPolicyInitParameters) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *ProvisionPolicyObservation) DeepCopyInto(out *ProvisionPolicyObservation) { + *out = *in + if in.MinInstances != nil { + in, out := &in.MinInstances, &out.MinInstances + *out = new(float64) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ProvisionPolicyObservation. +func (in *ProvisionPolicyObservation) DeepCopy() *ProvisionPolicyObservation { + if in == nil { + return nil + } + out := new(ProvisionPolicyObservation) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *ProvisionPolicyParameters) DeepCopyInto(out *ProvisionPolicyParameters) { + *out = *in + if in.MinInstances != nil { + in, out := &in.MinInstances, &out.MinInstances + *out = new(float64) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ProvisionPolicyParameters. +func (in *ProvisionPolicyParameters) DeepCopy() *ProvisionPolicyParameters { + if in == nil { + return nil + } + out := new(ProvisionPolicyParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *SecretsInitParameters) DeepCopyInto(out *SecretsInitParameters) { *out = *in @@ -1080,6 +1489,16 @@ func (in *SecretsInitParameters) DeepCopyInto(out *SecretsInitParameters) { *out = new(string) **out = **in } + if in.IDRef != nil { + in, out := &in.IDRef, &out.IDRef + *out = new(v1.Reference) + (*in).DeepCopyInto(*out) + } + if in.IDSelector != nil { + in, out := &in.IDSelector, &out.IDSelector + *out = new(v1.Selector) + (*in).DeepCopyInto(*out) + } if in.Key != nil { in, out := &in.Key, &out.Key *out = new(string) @@ -1090,6 +1509,16 @@ func (in *SecretsInitParameters) DeepCopyInto(out *SecretsInitParameters) { *out = new(string) **out = **in } + if in.VersionIDRef != nil { + in, out := &in.VersionIDRef, &out.VersionIDRef + *out = new(v1.Reference) + (*in).DeepCopyInto(*out) + } + if in.VersionIDSelector != nil { + in, out := &in.VersionIDSelector, &out.VersionIDSelector + *out = new(v1.Selector) + (*in).DeepCopyInto(*out) + } } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SecretsInitParameters. @@ -1150,6 +1579,16 @@ func (in *SecretsParameters) DeepCopyInto(out *SecretsParameters) { *out = new(string) **out = **in } + if in.IDRef != nil { + in, out := &in.IDRef, &out.IDRef + *out = new(v1.Reference) + (*in).DeepCopyInto(*out) + } + if in.IDSelector != nil { + in, out := &in.IDSelector, &out.IDSelector + *out = new(v1.Selector) + (*in).DeepCopyInto(*out) + } if in.Key != nil { in, out := &in.Key, &out.Key *out = new(string) @@ -1160,6 +1599,16 @@ func (in *SecretsParameters) DeepCopyInto(out *SecretsParameters) { *out = new(string) **out = **in } + if in.VersionIDRef != nil { + in, out := &in.VersionIDRef, &out.VersionIDRef + *out = new(v1.Reference) + (*in).DeepCopyInto(*out) + } + if in.VersionIDSelector != nil { + in, out := &in.VersionIDSelector, &out.VersionIDSelector + *out = new(v1.Selector) + (*in).DeepCopyInto(*out) + } } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SecretsParameters. diff --git a/apis/serverless/v1alpha1/zz_generated.resolvers.go b/apis/serverless/v1alpha1/zz_generated.resolvers.go index 9a72b67..0194a5c 100644 --- a/apis/serverless/v1alpha1/zz_generated.resolvers.go +++ b/apis/serverless/v1alpha1/zz_generated.resolvers.go @@ -5,8 +5,12 @@ package v1alpha1 import ( "context" reference "github.com/crossplane/crossplane-runtime/pkg/reference" + resource "github.com/crossplane/upjet/pkg/resource" errors "github.com/pkg/errors" + v1alpha13 "github.com/tagesjump/provider-upjet-yc/apis/iam/v1alpha1" + v1alpha12 "github.com/tagesjump/provider-upjet-yc/apis/lockbox/v1alpha1" v1alpha1 "github.com/tagesjump/provider-upjet-yc/apis/resourcemanager/v1alpha1" + v1alpha11 "github.com/tagesjump/provider-upjet-yc/apis/storage/v1alpha1" client "sigs.k8s.io/controller-runtime/pkg/client" ) @@ -33,6 +37,78 @@ func (mg *Container) ResolveReferences(ctx context.Context, c client.Reader) err mg.Spec.ForProvider.FolderID = reference.ToPtrValue(rsp.ResolvedValue) mg.Spec.ForProvider.FolderIDRef = rsp.ResolvedReference + for i3 := 0; i3 < len(mg.Spec.ForProvider.Mounts); i3++ { + for i4 := 0; i4 < len(mg.Spec.ForProvider.Mounts[i3].ObjectStorage); i4++ { + rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ + CurrentValue: reference.FromPtrValue(mg.Spec.ForProvider.Mounts[i3].ObjectStorage[i4].Bucket), + Extract: resource.ExtractParamPath("bucket", false), + Reference: mg.Spec.ForProvider.Mounts[i3].ObjectStorage[i4].BucketRef, + Selector: mg.Spec.ForProvider.Mounts[i3].ObjectStorage[i4].BucketSelector, + To: reference.To{ + List: &v1alpha11.BucketList{}, + Managed: &v1alpha11.Bucket{}, + }, + }) + if err != nil { + return errors.Wrap(err, "mg.Spec.ForProvider.Mounts[i3].ObjectStorage[i4].Bucket") + } + mg.Spec.ForProvider.Mounts[i3].ObjectStorage[i4].Bucket = reference.ToPtrValue(rsp.ResolvedValue) + mg.Spec.ForProvider.Mounts[i3].ObjectStorage[i4].BucketRef = rsp.ResolvedReference + + } + } + for i3 := 0; i3 < len(mg.Spec.ForProvider.Secrets); i3++ { + rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ + CurrentValue: reference.FromPtrValue(mg.Spec.ForProvider.Secrets[i3].ID), + Extract: resource.ExtractResourceID(), + Reference: mg.Spec.ForProvider.Secrets[i3].IDRef, + Selector: mg.Spec.ForProvider.Secrets[i3].IDSelector, + To: reference.To{ + List: &v1alpha12.SecretList{}, + Managed: &v1alpha12.Secret{}, + }, + }) + if err != nil { + return errors.Wrap(err, "mg.Spec.ForProvider.Secrets[i3].ID") + } + mg.Spec.ForProvider.Secrets[i3].ID = reference.ToPtrValue(rsp.ResolvedValue) + mg.Spec.ForProvider.Secrets[i3].IDRef = rsp.ResolvedReference + + } + for i3 := 0; i3 < len(mg.Spec.ForProvider.Secrets); i3++ { + rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ + CurrentValue: reference.FromPtrValue(mg.Spec.ForProvider.Secrets[i3].VersionID), + Extract: resource.ExtractResourceID(), + Reference: mg.Spec.ForProvider.Secrets[i3].VersionIDRef, + Selector: mg.Spec.ForProvider.Secrets[i3].VersionIDSelector, + To: reference.To{ + List: &v1alpha12.SecretVersionList{}, + Managed: &v1alpha12.SecretVersion{}, + }, + }) + if err != nil { + return errors.Wrap(err, "mg.Spec.ForProvider.Secrets[i3].VersionID") + } + mg.Spec.ForProvider.Secrets[i3].VersionID = reference.ToPtrValue(rsp.ResolvedValue) + mg.Spec.ForProvider.Secrets[i3].VersionIDRef = rsp.ResolvedReference + + } + rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ + CurrentValue: reference.FromPtrValue(mg.Spec.ForProvider.ServiceAccountID), + Extract: resource.ExtractResourceID(), + Reference: mg.Spec.ForProvider.ServiceAccountIDRef, + Selector: mg.Spec.ForProvider.ServiceAccountIDSelector, + To: reference.To{ + List: &v1alpha13.ServiceAccountList{}, + Managed: &v1alpha13.ServiceAccount{}, + }, + }) + if err != nil { + return errors.Wrap(err, "mg.Spec.ForProvider.ServiceAccountID") + } + mg.Spec.ForProvider.ServiceAccountID = reference.ToPtrValue(rsp.ResolvedValue) + mg.Spec.ForProvider.ServiceAccountIDRef = rsp.ResolvedReference + rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ CurrentValue: reference.FromPtrValue(mg.Spec.InitProvider.FolderID), Extract: reference.ExternalName(), @@ -49,5 +125,77 @@ func (mg *Container) ResolveReferences(ctx context.Context, c client.Reader) err mg.Spec.InitProvider.FolderID = reference.ToPtrValue(rsp.ResolvedValue) mg.Spec.InitProvider.FolderIDRef = rsp.ResolvedReference + for i3 := 0; i3 < len(mg.Spec.InitProvider.Mounts); i3++ { + for i4 := 0; i4 < len(mg.Spec.InitProvider.Mounts[i3].ObjectStorage); i4++ { + rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ + CurrentValue: reference.FromPtrValue(mg.Spec.InitProvider.Mounts[i3].ObjectStorage[i4].Bucket), + Extract: resource.ExtractParamPath("bucket", false), + Reference: mg.Spec.InitProvider.Mounts[i3].ObjectStorage[i4].BucketRef, + Selector: mg.Spec.InitProvider.Mounts[i3].ObjectStorage[i4].BucketSelector, + To: reference.To{ + List: &v1alpha11.BucketList{}, + Managed: &v1alpha11.Bucket{}, + }, + }) + if err != nil { + return errors.Wrap(err, "mg.Spec.InitProvider.Mounts[i3].ObjectStorage[i4].Bucket") + } + mg.Spec.InitProvider.Mounts[i3].ObjectStorage[i4].Bucket = reference.ToPtrValue(rsp.ResolvedValue) + mg.Spec.InitProvider.Mounts[i3].ObjectStorage[i4].BucketRef = rsp.ResolvedReference + + } + } + for i3 := 0; i3 < len(mg.Spec.InitProvider.Secrets); i3++ { + rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ + CurrentValue: reference.FromPtrValue(mg.Spec.InitProvider.Secrets[i3].ID), + Extract: resource.ExtractResourceID(), + Reference: mg.Spec.InitProvider.Secrets[i3].IDRef, + Selector: mg.Spec.InitProvider.Secrets[i3].IDSelector, + To: reference.To{ + List: &v1alpha12.SecretList{}, + Managed: &v1alpha12.Secret{}, + }, + }) + if err != nil { + return errors.Wrap(err, "mg.Spec.InitProvider.Secrets[i3].ID") + } + mg.Spec.InitProvider.Secrets[i3].ID = reference.ToPtrValue(rsp.ResolvedValue) + mg.Spec.InitProvider.Secrets[i3].IDRef = rsp.ResolvedReference + + } + for i3 := 0; i3 < len(mg.Spec.InitProvider.Secrets); i3++ { + rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ + CurrentValue: reference.FromPtrValue(mg.Spec.InitProvider.Secrets[i3].VersionID), + Extract: resource.ExtractResourceID(), + Reference: mg.Spec.InitProvider.Secrets[i3].VersionIDRef, + Selector: mg.Spec.InitProvider.Secrets[i3].VersionIDSelector, + To: reference.To{ + List: &v1alpha12.SecretVersionList{}, + Managed: &v1alpha12.SecretVersion{}, + }, + }) + if err != nil { + return errors.Wrap(err, "mg.Spec.InitProvider.Secrets[i3].VersionID") + } + mg.Spec.InitProvider.Secrets[i3].VersionID = reference.ToPtrValue(rsp.ResolvedValue) + mg.Spec.InitProvider.Secrets[i3].VersionIDRef = rsp.ResolvedReference + + } + rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ + CurrentValue: reference.FromPtrValue(mg.Spec.InitProvider.ServiceAccountID), + Extract: resource.ExtractResourceID(), + Reference: mg.Spec.InitProvider.ServiceAccountIDRef, + Selector: mg.Spec.InitProvider.ServiceAccountIDSelector, + To: reference.To{ + List: &v1alpha13.ServiceAccountList{}, + Managed: &v1alpha13.ServiceAccount{}, + }, + }) + if err != nil { + return errors.Wrap(err, "mg.Spec.InitProvider.ServiceAccountID") + } + mg.Spec.InitProvider.ServiceAccountID = reference.ToPtrValue(rsp.ResolvedValue) + mg.Spec.InitProvider.ServiceAccountIDRef = rsp.ResolvedReference + return nil } diff --git a/apis/smartcaptcha/v1alpha1/zz_captcha_types.go b/apis/smartcaptcha/v1alpha1/zz_captcha_types.go index d48e20f..efb5520 100755 --- a/apis/smartcaptcha/v1alpha1/zz_captcha_types.go +++ b/apis/smartcaptcha/v1alpha1/zz_captcha_types.go @@ -10,16 +10,23 @@ import ( ) type CaptchaInitParameters struct { + + // (List of String) AllowedSites []*string `json:"allowedSites,omitempty" tf:"allowed_sites,omitempty"` + // (String) ChallengeType *string `json:"challengeType,omitempty" tf:"challenge_type,omitempty"` + // (String) CloudID *string `json:"cloudId,omitempty" tf:"cloud_id,omitempty"` + // (String) Complexity *string `json:"complexity,omitempty" tf:"complexity,omitempty"` + // (Boolean) DeletionProtection *bool `json:"deletionProtection,omitempty" tf:"deletion_protection,omitempty"` + // (String) // +crossplane:generate:reference:type=github.com/tagesjump/provider-upjet-yc/apis/resourcemanager/v1alpha1.Folder FolderID *string `json:"folderId,omitempty" tf:"folder_id,omitempty"` @@ -31,70 +38,99 @@ type CaptchaInitParameters struct { // +kubebuilder:validation:Optional FolderIDSelector *v1.Selector `json:"folderIdSelector,omitempty" tf:"-"` + // (String) Name *string `json:"name,omitempty" tf:"name,omitempty"` + // (Block List) (see below for nested schema) OverrideVariant []OverrideVariantInitParameters `json:"overrideVariant,omitempty" tf:"override_variant,omitempty"` + // (String) PreCheckType *string `json:"preCheckType,omitempty" tf:"pre_check_type,omitempty"` + // (Block List) (see below for nested schema) SecurityRule []SecurityRuleInitParameters `json:"securityRule,omitempty" tf:"security_rule,omitempty"` + // (String) StyleJSON *string `json:"styleJson,omitempty" tf:"style_json,omitempty"` + // (Boolean) TurnOffHostnameCheck *bool `json:"turnOffHostnameCheck,omitempty" tf:"turn_off_hostname_check,omitempty"` } type CaptchaObservation struct { + + // (List of String) AllowedSites []*string `json:"allowedSites,omitempty" tf:"allowed_sites,omitempty"` + // (String) ChallengeType *string `json:"challengeType,omitempty" tf:"challenge_type,omitempty"` + // (String) ClientKey *string `json:"clientKey,omitempty" tf:"client_key,omitempty"` + // (String) CloudID *string `json:"cloudId,omitempty" tf:"cloud_id,omitempty"` + // (String) Complexity *string `json:"complexity,omitempty" tf:"complexity,omitempty"` + // (String) CreatedAt *string `json:"createdAt,omitempty" tf:"created_at,omitempty"` + // (Boolean) DeletionProtection *bool `json:"deletionProtection,omitempty" tf:"deletion_protection,omitempty"` + // (String) FolderID *string `json:"folderId,omitempty" tf:"folder_id,omitempty"` + // (String) The ID of this resource. ID *string `json:"id,omitempty" tf:"id,omitempty"` + // (String) Name *string `json:"name,omitempty" tf:"name,omitempty"` + // (Block List) (see below for nested schema) OverrideVariant []OverrideVariantObservation `json:"overrideVariant,omitempty" tf:"override_variant,omitempty"` + // (String) PreCheckType *string `json:"preCheckType,omitempty" tf:"pre_check_type,omitempty"` + // (Block List) (see below for nested schema) SecurityRule []SecurityRuleObservation `json:"securityRule,omitempty" tf:"security_rule,omitempty"` + // (String) StyleJSON *string `json:"styleJson,omitempty" tf:"style_json,omitempty"` + // (Boolean) Suspend *bool `json:"suspend,omitempty" tf:"suspend,omitempty"` + // (Boolean) TurnOffHostnameCheck *bool `json:"turnOffHostnameCheck,omitempty" tf:"turn_off_hostname_check,omitempty"` } type CaptchaParameters struct { + // (List of String) // +kubebuilder:validation:Optional AllowedSites []*string `json:"allowedSites,omitempty" tf:"allowed_sites,omitempty"` + // (String) // +kubebuilder:validation:Optional ChallengeType *string `json:"challengeType,omitempty" tf:"challenge_type,omitempty"` + // (String) // +kubebuilder:validation:Optional CloudID *string `json:"cloudId,omitempty" tf:"cloud_id,omitempty"` + // (String) // +kubebuilder:validation:Optional Complexity *string `json:"complexity,omitempty" tf:"complexity,omitempty"` + // (Boolean) // +kubebuilder:validation:Optional DeletionProtection *bool `json:"deletionProtection,omitempty" tf:"deletion_protection,omitempty"` + // (String) // +crossplane:generate:reference:type=github.com/tagesjump/provider-upjet-yc/apis/resourcemanager/v1alpha1.Folder // +kubebuilder:validation:Optional FolderID *string `json:"folderId,omitempty" tf:"folder_id,omitempty"` @@ -107,504 +143,701 @@ type CaptchaParameters struct { // +kubebuilder:validation:Optional FolderIDSelector *v1.Selector `json:"folderIdSelector,omitempty" tf:"-"` + // (String) // +kubebuilder:validation:Optional Name *string `json:"name,omitempty" tf:"name,omitempty"` + // (Block List) (see below for nested schema) // +kubebuilder:validation:Optional OverrideVariant []OverrideVariantParameters `json:"overrideVariant,omitempty" tf:"override_variant,omitempty"` + // (String) // +kubebuilder:validation:Optional PreCheckType *string `json:"preCheckType,omitempty" tf:"pre_check_type,omitempty"` + // (Block List) (see below for nested schema) // +kubebuilder:validation:Optional SecurityRule []SecurityRuleParameters `json:"securityRule,omitempty" tf:"security_rule,omitempty"` + // (String) // +kubebuilder:validation:Optional StyleJSON *string `json:"styleJson,omitempty" tf:"style_json,omitempty"` + // (Boolean) // +kubebuilder:validation:Optional TurnOffHostnameCheck *bool `json:"turnOffHostnameCheck,omitempty" tf:"turn_off_hostname_check,omitempty"` } type ConditionInitParameters struct { + + // (Block List) (see below for nested schema) Headers []HeadersInitParameters `json:"headers,omitempty" tf:"headers,omitempty"` + // (Block List, Max: 1) (see below for nested schema) Host []HostInitParameters `json:"host,omitempty" tf:"host,omitempty"` + // (Block List, Max: 1) (see below for nested schema) SourceIP []SourceIPInitParameters `json:"sourceIp,omitempty" tf:"source_ip,omitempty"` + // (Block List, Max: 1) (see below for nested schema) URI []URIInitParameters `json:"uri,omitempty" tf:"uri,omitempty"` } type ConditionObservation struct { + + // (Block List) (see below for nested schema) Headers []HeadersObservation `json:"headers,omitempty" tf:"headers,omitempty"` + // (Block List, Max: 1) (see below for nested schema) Host []HostObservation `json:"host,omitempty" tf:"host,omitempty"` + // (Block List, Max: 1) (see below for nested schema) SourceIP []SourceIPObservation `json:"sourceIp,omitempty" tf:"source_ip,omitempty"` + // (Block List, Max: 1) (see below for nested schema) URI []URIObservation `json:"uri,omitempty" tf:"uri,omitempty"` } type ConditionParameters struct { + // (Block List) (see below for nested schema) // +kubebuilder:validation:Optional Headers []HeadersParameters `json:"headers,omitempty" tf:"headers,omitempty"` + // (Block List, Max: 1) (see below for nested schema) // +kubebuilder:validation:Optional Host []HostParameters `json:"host,omitempty" tf:"host,omitempty"` + // (Block List, Max: 1) (see below for nested schema) // +kubebuilder:validation:Optional SourceIP []SourceIPParameters `json:"sourceIp,omitempty" tf:"source_ip,omitempty"` + // (Block List, Max: 1) (see below for nested schema) // +kubebuilder:validation:Optional URI []URIParameters `json:"uri,omitempty" tf:"uri,omitempty"` } type GeoIPMatchInitParameters struct { + + // (List of String) Locations []*string `json:"locations,omitempty" tf:"locations,omitempty"` } type GeoIPMatchObservation struct { + + // (List of String) Locations []*string `json:"locations,omitempty" tf:"locations,omitempty"` } type GeoIPMatchParameters struct { + // (List of String) // +kubebuilder:validation:Optional Locations []*string `json:"locations,omitempty" tf:"locations,omitempty"` } type GeoIPNotMatchInitParameters struct { + + // (List of String) Locations []*string `json:"locations,omitempty" tf:"locations,omitempty"` } type GeoIPNotMatchObservation struct { + + // (List of String) Locations []*string `json:"locations,omitempty" tf:"locations,omitempty"` } type GeoIPNotMatchParameters struct { + // (List of String) // +kubebuilder:validation:Optional Locations []*string `json:"locations,omitempty" tf:"locations,omitempty"` } type HeadersInitParameters struct { + + // (String) Name *string `json:"name,omitempty" tf:"name,omitempty"` + // (Block List, Min: 1, Max: 1) (see below for nested schema) Value []ValueInitParameters `json:"value,omitempty" tf:"value,omitempty"` } type HeadersObservation struct { + + // (String) Name *string `json:"name,omitempty" tf:"name,omitempty"` + // (Block List, Min: 1, Max: 1) (see below for nested schema) Value []ValueObservation `json:"value,omitempty" tf:"value,omitempty"` } type HeadersParameters struct { + // (String) // +kubebuilder:validation:Optional Name *string `json:"name,omitempty" tf:"name,omitempty"` + // (Block List, Min: 1, Max: 1) (see below for nested schema) // +kubebuilder:validation:Optional Value []ValueParameters `json:"value" tf:"value,omitempty"` } type HostInitParameters struct { + + // (Block List) (see below for nested schema) Hosts []HostsInitParameters `json:"hosts,omitempty" tf:"hosts,omitempty"` } type HostObservation struct { + + // (Block List) (see below for nested schema) Hosts []HostsObservation `json:"hosts,omitempty" tf:"hosts,omitempty"` } type HostParameters struct { + // (Block List) (see below for nested schema) // +kubebuilder:validation:Optional Hosts []HostsParameters `json:"hosts,omitempty" tf:"hosts,omitempty"` } type HostsInitParameters struct { + + // (String) ExactMatch *string `json:"exactMatch,omitempty" tf:"exact_match,omitempty"` + // (String) ExactNotMatch *string `json:"exactNotMatch,omitempty" tf:"exact_not_match,omitempty"` + // (String) PireRegexMatch *string `json:"pireRegexMatch,omitempty" tf:"pire_regex_match,omitempty"` + // (String) PireRegexNotMatch *string `json:"pireRegexNotMatch,omitempty" tf:"pire_regex_not_match,omitempty"` + // (String) PrefixMatch *string `json:"prefixMatch,omitempty" tf:"prefix_match,omitempty"` + // (String) PrefixNotMatch *string `json:"prefixNotMatch,omitempty" tf:"prefix_not_match,omitempty"` } type HostsObservation struct { + + // (String) ExactMatch *string `json:"exactMatch,omitempty" tf:"exact_match,omitempty"` + // (String) ExactNotMatch *string `json:"exactNotMatch,omitempty" tf:"exact_not_match,omitempty"` + // (String) PireRegexMatch *string `json:"pireRegexMatch,omitempty" tf:"pire_regex_match,omitempty"` + // (String) PireRegexNotMatch *string `json:"pireRegexNotMatch,omitempty" tf:"pire_regex_not_match,omitempty"` + // (String) PrefixMatch *string `json:"prefixMatch,omitempty" tf:"prefix_match,omitempty"` + // (String) PrefixNotMatch *string `json:"prefixNotMatch,omitempty" tf:"prefix_not_match,omitempty"` } type HostsParameters struct { + // (String) // +kubebuilder:validation:Optional ExactMatch *string `json:"exactMatch,omitempty" tf:"exact_match,omitempty"` + // (String) // +kubebuilder:validation:Optional ExactNotMatch *string `json:"exactNotMatch,omitempty" tf:"exact_not_match,omitempty"` + // (String) // +kubebuilder:validation:Optional PireRegexMatch *string `json:"pireRegexMatch,omitempty" tf:"pire_regex_match,omitempty"` + // (String) // +kubebuilder:validation:Optional PireRegexNotMatch *string `json:"pireRegexNotMatch,omitempty" tf:"pire_regex_not_match,omitempty"` + // (String) // +kubebuilder:validation:Optional PrefixMatch *string `json:"prefixMatch,omitempty" tf:"prefix_match,omitempty"` + // (String) // +kubebuilder:validation:Optional PrefixNotMatch *string `json:"prefixNotMatch,omitempty" tf:"prefix_not_match,omitempty"` } type IPRangesMatchInitParameters struct { + + // (List of String) IPRanges []*string `json:"ipRanges,omitempty" tf:"ip_ranges,omitempty"` } type IPRangesMatchObservation struct { + + // (List of String) IPRanges []*string `json:"ipRanges,omitempty" tf:"ip_ranges,omitempty"` } type IPRangesMatchParameters struct { + // (List of String) // +kubebuilder:validation:Optional IPRanges []*string `json:"ipRanges,omitempty" tf:"ip_ranges,omitempty"` } type IPRangesNotMatchInitParameters struct { + + // (List of String) IPRanges []*string `json:"ipRanges,omitempty" tf:"ip_ranges,omitempty"` } type IPRangesNotMatchObservation struct { + + // (List of String) IPRanges []*string `json:"ipRanges,omitempty" tf:"ip_ranges,omitempty"` } type IPRangesNotMatchParameters struct { + // (List of String) // +kubebuilder:validation:Optional IPRanges []*string `json:"ipRanges,omitempty" tf:"ip_ranges,omitempty"` } type OverrideVariantInitParameters struct { + + // (String) ChallengeType *string `json:"challengeType,omitempty" tf:"challenge_type,omitempty"` + // (String) Complexity *string `json:"complexity,omitempty" tf:"complexity,omitempty"` + // (String) Description *string `json:"description,omitempty" tf:"description,omitempty"` + // (String) PreCheckType *string `json:"preCheckType,omitempty" tf:"pre_check_type,omitempty"` + // (String) UUID *string `json:"uuid,omitempty" tf:"uuid,omitempty"` } type OverrideVariantObservation struct { + + // (String) ChallengeType *string `json:"challengeType,omitempty" tf:"challenge_type,omitempty"` + // (String) Complexity *string `json:"complexity,omitempty" tf:"complexity,omitempty"` + // (String) Description *string `json:"description,omitempty" tf:"description,omitempty"` + // (String) PreCheckType *string `json:"preCheckType,omitempty" tf:"pre_check_type,omitempty"` + // (String) UUID *string `json:"uuid,omitempty" tf:"uuid,omitempty"` } type OverrideVariantParameters struct { + // (String) // +kubebuilder:validation:Optional ChallengeType *string `json:"challengeType,omitempty" tf:"challenge_type,omitempty"` + // (String) // +kubebuilder:validation:Optional Complexity *string `json:"complexity,omitempty" tf:"complexity,omitempty"` + // (String) // +kubebuilder:validation:Optional Description *string `json:"description,omitempty" tf:"description,omitempty"` + // (String) // +kubebuilder:validation:Optional PreCheckType *string `json:"preCheckType,omitempty" tf:"pre_check_type,omitempty"` + // (String) // +kubebuilder:validation:Optional UUID *string `json:"uuid,omitempty" tf:"uuid,omitempty"` } type PathInitParameters struct { + + // (String) ExactMatch *string `json:"exactMatch,omitempty" tf:"exact_match,omitempty"` + // (String) ExactNotMatch *string `json:"exactNotMatch,omitempty" tf:"exact_not_match,omitempty"` + // (String) PireRegexMatch *string `json:"pireRegexMatch,omitempty" tf:"pire_regex_match,omitempty"` + // (String) PireRegexNotMatch *string `json:"pireRegexNotMatch,omitempty" tf:"pire_regex_not_match,omitempty"` + // (String) PrefixMatch *string `json:"prefixMatch,omitempty" tf:"prefix_match,omitempty"` + // (String) PrefixNotMatch *string `json:"prefixNotMatch,omitempty" tf:"prefix_not_match,omitempty"` } type PathObservation struct { + + // (String) ExactMatch *string `json:"exactMatch,omitempty" tf:"exact_match,omitempty"` + // (String) ExactNotMatch *string `json:"exactNotMatch,omitempty" tf:"exact_not_match,omitempty"` + // (String) PireRegexMatch *string `json:"pireRegexMatch,omitempty" tf:"pire_regex_match,omitempty"` + // (String) PireRegexNotMatch *string `json:"pireRegexNotMatch,omitempty" tf:"pire_regex_not_match,omitempty"` + // (String) PrefixMatch *string `json:"prefixMatch,omitempty" tf:"prefix_match,omitempty"` + // (String) PrefixNotMatch *string `json:"prefixNotMatch,omitempty" tf:"prefix_not_match,omitempty"` } type PathParameters struct { + // (String) // +kubebuilder:validation:Optional ExactMatch *string `json:"exactMatch,omitempty" tf:"exact_match,omitempty"` + // (String) // +kubebuilder:validation:Optional ExactNotMatch *string `json:"exactNotMatch,omitempty" tf:"exact_not_match,omitempty"` + // (String) // +kubebuilder:validation:Optional PireRegexMatch *string `json:"pireRegexMatch,omitempty" tf:"pire_regex_match,omitempty"` + // (String) // +kubebuilder:validation:Optional PireRegexNotMatch *string `json:"pireRegexNotMatch,omitempty" tf:"pire_regex_not_match,omitempty"` + // (String) // +kubebuilder:validation:Optional PrefixMatch *string `json:"prefixMatch,omitempty" tf:"prefix_match,omitempty"` + // (String) // +kubebuilder:validation:Optional PrefixNotMatch *string `json:"prefixNotMatch,omitempty" tf:"prefix_not_match,omitempty"` } type QueriesInitParameters struct { + + // (String) Key *string `json:"key,omitempty" tf:"key,omitempty"` + // (Block List, Min: 1, Max: 1) (see below for nested schema) Value []QueriesValueInitParameters `json:"value,omitempty" tf:"value,omitempty"` } type QueriesObservation struct { + + // (String) Key *string `json:"key,omitempty" tf:"key,omitempty"` + // (Block List, Min: 1, Max: 1) (see below for nested schema) Value []QueriesValueObservation `json:"value,omitempty" tf:"value,omitempty"` } type QueriesParameters struct { + // (String) // +kubebuilder:validation:Optional Key *string `json:"key" tf:"key,omitempty"` + // (Block List, Min: 1, Max: 1) (see below for nested schema) // +kubebuilder:validation:Optional Value []QueriesValueParameters `json:"value" tf:"value,omitempty"` } type QueriesValueInitParameters struct { + + // (String) ExactMatch *string `json:"exactMatch,omitempty" tf:"exact_match,omitempty"` + // (String) ExactNotMatch *string `json:"exactNotMatch,omitempty" tf:"exact_not_match,omitempty"` + // (String) PireRegexMatch *string `json:"pireRegexMatch,omitempty" tf:"pire_regex_match,omitempty"` + // (String) PireRegexNotMatch *string `json:"pireRegexNotMatch,omitempty" tf:"pire_regex_not_match,omitempty"` + // (String) PrefixMatch *string `json:"prefixMatch,omitempty" tf:"prefix_match,omitempty"` + // (String) PrefixNotMatch *string `json:"prefixNotMatch,omitempty" tf:"prefix_not_match,omitempty"` } type QueriesValueObservation struct { + + // (String) ExactMatch *string `json:"exactMatch,omitempty" tf:"exact_match,omitempty"` + // (String) ExactNotMatch *string `json:"exactNotMatch,omitempty" tf:"exact_not_match,omitempty"` + // (String) PireRegexMatch *string `json:"pireRegexMatch,omitempty" tf:"pire_regex_match,omitempty"` + // (String) PireRegexNotMatch *string `json:"pireRegexNotMatch,omitempty" tf:"pire_regex_not_match,omitempty"` + // (String) PrefixMatch *string `json:"prefixMatch,omitempty" tf:"prefix_match,omitempty"` + // (String) PrefixNotMatch *string `json:"prefixNotMatch,omitempty" tf:"prefix_not_match,omitempty"` } type QueriesValueParameters struct { + // (String) // +kubebuilder:validation:Optional ExactMatch *string `json:"exactMatch,omitempty" tf:"exact_match,omitempty"` + // (String) // +kubebuilder:validation:Optional ExactNotMatch *string `json:"exactNotMatch,omitempty" tf:"exact_not_match,omitempty"` + // (String) // +kubebuilder:validation:Optional PireRegexMatch *string `json:"pireRegexMatch,omitempty" tf:"pire_regex_match,omitempty"` + // (String) // +kubebuilder:validation:Optional PireRegexNotMatch *string `json:"pireRegexNotMatch,omitempty" tf:"pire_regex_not_match,omitempty"` + // (String) // +kubebuilder:validation:Optional PrefixMatch *string `json:"prefixMatch,omitempty" tf:"prefix_match,omitempty"` + // (String) // +kubebuilder:validation:Optional PrefixNotMatch *string `json:"prefixNotMatch,omitempty" tf:"prefix_not_match,omitempty"` } type SecurityRuleInitParameters struct { + + // (Block List, Max: 1) (see below for nested schema) Condition []ConditionInitParameters `json:"condition,omitempty" tf:"condition,omitempty"` + // (String) Description *string `json:"description,omitempty" tf:"description,omitempty"` + // (String) Name *string `json:"name,omitempty" tf:"name,omitempty"` + // (String) OverrideVariantUUID *string `json:"overrideVariantUuid,omitempty" tf:"override_variant_uuid,omitempty"` + // (Number) Priority *float64 `json:"priority,omitempty" tf:"priority,omitempty"` } type SecurityRuleObservation struct { + + // (Block List, Max: 1) (see below for nested schema) Condition []ConditionObservation `json:"condition,omitempty" tf:"condition,omitempty"` + // (String) Description *string `json:"description,omitempty" tf:"description,omitempty"` + // (String) Name *string `json:"name,omitempty" tf:"name,omitempty"` + // (String) OverrideVariantUUID *string `json:"overrideVariantUuid,omitempty" tf:"override_variant_uuid,omitempty"` + // (Number) Priority *float64 `json:"priority,omitempty" tf:"priority,omitempty"` } type SecurityRuleParameters struct { + // (Block List, Max: 1) (see below for nested schema) // +kubebuilder:validation:Optional Condition []ConditionParameters `json:"condition,omitempty" tf:"condition,omitempty"` + // (String) // +kubebuilder:validation:Optional Description *string `json:"description,omitempty" tf:"description,omitempty"` + // (String) // +kubebuilder:validation:Optional Name *string `json:"name,omitempty" tf:"name,omitempty"` + // (String) // +kubebuilder:validation:Optional OverrideVariantUUID *string `json:"overrideVariantUuid,omitempty" tf:"override_variant_uuid,omitempty"` + // (Number) // +kubebuilder:validation:Optional Priority *float64 `json:"priority,omitempty" tf:"priority,omitempty"` } type SourceIPInitParameters struct { + + // (Block List, Max: 1) (see below for nested schema) GeoIPMatch []GeoIPMatchInitParameters `json:"geoIpMatch,omitempty" tf:"geo_ip_match,omitempty"` + // (Block List, Max: 1) (see below for nested schema) GeoIPNotMatch []GeoIPNotMatchInitParameters `json:"geoIpNotMatch,omitempty" tf:"geo_ip_not_match,omitempty"` + // (Block List, Max: 1) (see below for nested schema) IPRangesMatch []IPRangesMatchInitParameters `json:"ipRangesMatch,omitempty" tf:"ip_ranges_match,omitempty"` + // (Block List, Max: 1) (see below for nested schema) IPRangesNotMatch []IPRangesNotMatchInitParameters `json:"ipRangesNotMatch,omitempty" tf:"ip_ranges_not_match,omitempty"` } type SourceIPObservation struct { + + // (Block List, Max: 1) (see below for nested schema) GeoIPMatch []GeoIPMatchObservation `json:"geoIpMatch,omitempty" tf:"geo_ip_match,omitempty"` + // (Block List, Max: 1) (see below for nested schema) GeoIPNotMatch []GeoIPNotMatchObservation `json:"geoIpNotMatch,omitempty" tf:"geo_ip_not_match,omitempty"` + // (Block List, Max: 1) (see below for nested schema) IPRangesMatch []IPRangesMatchObservation `json:"ipRangesMatch,omitempty" tf:"ip_ranges_match,omitempty"` + // (Block List, Max: 1) (see below for nested schema) IPRangesNotMatch []IPRangesNotMatchObservation `json:"ipRangesNotMatch,omitempty" tf:"ip_ranges_not_match,omitempty"` } type SourceIPParameters struct { + // (Block List, Max: 1) (see below for nested schema) // +kubebuilder:validation:Optional GeoIPMatch []GeoIPMatchParameters `json:"geoIpMatch,omitempty" tf:"geo_ip_match,omitempty"` + // (Block List, Max: 1) (see below for nested schema) // +kubebuilder:validation:Optional GeoIPNotMatch []GeoIPNotMatchParameters `json:"geoIpNotMatch,omitempty" tf:"geo_ip_not_match,omitempty"` + // (Block List, Max: 1) (see below for nested schema) // +kubebuilder:validation:Optional IPRangesMatch []IPRangesMatchParameters `json:"ipRangesMatch,omitempty" tf:"ip_ranges_match,omitempty"` + // (Block List, Max: 1) (see below for nested schema) // +kubebuilder:validation:Optional IPRangesNotMatch []IPRangesNotMatchParameters `json:"ipRangesNotMatch,omitempty" tf:"ip_ranges_not_match,omitempty"` } type URIInitParameters struct { + + // (Block List, Max: 1) (see below for nested schema) Path []PathInitParameters `json:"path,omitempty" tf:"path,omitempty"` + // (Block List) (see below for nested schema) Queries []QueriesInitParameters `json:"queries,omitempty" tf:"queries,omitempty"` } type URIObservation struct { + + // (Block List, Max: 1) (see below for nested schema) Path []PathObservation `json:"path,omitempty" tf:"path,omitempty"` + // (Block List) (see below for nested schema) Queries []QueriesObservation `json:"queries,omitempty" tf:"queries,omitempty"` } type URIParameters struct { + // (Block List, Max: 1) (see below for nested schema) // +kubebuilder:validation:Optional Path []PathParameters `json:"path,omitempty" tf:"path,omitempty"` + // (Block List) (see below for nested schema) // +kubebuilder:validation:Optional Queries []QueriesParameters `json:"queries,omitempty" tf:"queries,omitempty"` } type ValueInitParameters struct { + + // (String) ExactMatch *string `json:"exactMatch,omitempty" tf:"exact_match,omitempty"` + // (String) ExactNotMatch *string `json:"exactNotMatch,omitempty" tf:"exact_not_match,omitempty"` + // (String) PireRegexMatch *string `json:"pireRegexMatch,omitempty" tf:"pire_regex_match,omitempty"` + // (String) PireRegexNotMatch *string `json:"pireRegexNotMatch,omitempty" tf:"pire_regex_not_match,omitempty"` + // (String) PrefixMatch *string `json:"prefixMatch,omitempty" tf:"prefix_match,omitempty"` + // (String) PrefixNotMatch *string `json:"prefixNotMatch,omitempty" tf:"prefix_not_match,omitempty"` } type ValueObservation struct { + + // (String) ExactMatch *string `json:"exactMatch,omitempty" tf:"exact_match,omitempty"` + // (String) ExactNotMatch *string `json:"exactNotMatch,omitempty" tf:"exact_not_match,omitempty"` + // (String) PireRegexMatch *string `json:"pireRegexMatch,omitempty" tf:"pire_regex_match,omitempty"` + // (String) PireRegexNotMatch *string `json:"pireRegexNotMatch,omitempty" tf:"pire_regex_not_match,omitempty"` + // (String) PrefixMatch *string `json:"prefixMatch,omitempty" tf:"prefix_match,omitempty"` + // (String) PrefixNotMatch *string `json:"prefixNotMatch,omitempty" tf:"prefix_not_match,omitempty"` } type ValueParameters struct { + // (String) // +kubebuilder:validation:Optional ExactMatch *string `json:"exactMatch,omitempty" tf:"exact_match,omitempty"` + // (String) // +kubebuilder:validation:Optional ExactNotMatch *string `json:"exactNotMatch,omitempty" tf:"exact_not_match,omitempty"` + // (String) // +kubebuilder:validation:Optional PireRegexMatch *string `json:"pireRegexMatch,omitempty" tf:"pire_regex_match,omitempty"` + // (String) // +kubebuilder:validation:Optional PireRegexNotMatch *string `json:"pireRegexNotMatch,omitempty" tf:"pire_regex_not_match,omitempty"` + // (String) // +kubebuilder:validation:Optional PrefixMatch *string `json:"prefixMatch,omitempty" tf:"prefix_match,omitempty"` + // (String) // +kubebuilder:validation:Optional PrefixNotMatch *string `json:"prefixNotMatch,omitempty" tf:"prefix_not_match,omitempty"` } @@ -636,7 +869,7 @@ type CaptchaStatus struct { // +kubebuilder:subresource:status // +kubebuilder:storageversion -// Captcha is the Schema for the Captchas API. +// Captcha is the Schema for the Captchas API. // +kubebuilder:printcolumn:name="SYNCED",type="string",JSONPath=".status.conditions[?(@.type=='Synced')].status" // +kubebuilder:printcolumn:name="READY",type="string",JSONPath=".status.conditions[?(@.type=='Ready')].status" // +kubebuilder:printcolumn:name="EXTERNAL-NAME",type="string",JSONPath=".metadata.annotations.crossplane\\.io/external-name" diff --git a/apis/storage/v1alpha1/zz_bucket_types.go b/apis/storage/v1alpha1/zz_bucket_types.go index 91d6b9f..9c42098 100755 --- a/apis/storage/v1alpha1/zz_bucket_types.go +++ b/apis/storage/v1alpha1/zz_bucket_types.go @@ -140,12 +140,10 @@ type ApplyServerSideEncryptionByDefaultParameters struct { type BucketInitParameters struct { - // The predefined ACL to apply. - // Defaults to private. Conflicts with grant. + // The predefined ACL to apply. Defaults to private. Conflicts with grant. ACL *string `json:"acl,omitempty" tf:"acl,omitempty"` - // The access key to use when applying changes. If omitted, storage_access_key specified in - // provider config (explicitly or within shared_credentials_file) is used. + // The access key to use when applying changes. This value can also be provided as storage_access_key specified in provider config (explicitly or within shared_credentials_file) is used. // +crossplane:generate:reference:type=github.com/tagesjump/provider-upjet-yc/apis/iam/v1alpha1.ServiceAccountStaticAccessKey // +crossplane:generate:reference:extractor=github.com/tagesjump/provider-upjet-yc/config/common.ExtractAccessKey() AccessKey *string `json:"accessKey,omitempty" tf:"access_key,omitempty"` @@ -158,24 +156,19 @@ type BucketInitParameters struct { // +kubebuilder:validation:Optional AccessKeySelector *v1.Selector `json:"accessKeySelector,omitempty" tf:"-"` - // Provides various access to objects. - // See bucket availability - // for more infomation. + // Provides various access to objects. See bucket availability for more infomation. AnonymousAccessFlags []AnonymousAccessFlagsInitParameters `json:"anonymousAccessFlags,omitempty" tf:"anonymous_access_flags,omitempty"` // The name of the bucket. Bucket *string `json:"bucket,omitempty" tf:"bucket,omitempty"` - // Creates a unique bucket name beginning with the specified prefix. - // Conflicts with bucket. + // Creates a unique bucket name beginning with the specified prefix. Conflicts with bucket. BucketPrefix *string `json:"bucketPrefix,omitempty" tf:"bucket_prefix,omitempty"` // A rule of Cross-Origin Resource Sharing (documented below). CorsRule []CorsRuleInitParameters `json:"corsRule,omitempty" tf:"cors_rule,omitempty"` - // Storage class which is used for storing objects by default. - // Available values are: "STANDARD", "COLD", "ICE". Default is "STANDARD". - // See storage class for more inforamtion. + // Storage class which is used for storing objects by default. Available values are: "STANDARD", "COLD", "ICE". Default is "STANDARD". See storage class for more inforamtion. DefaultStorageClass *string `json:"defaultStorageClass,omitempty" tf:"default_storage_class,omitempty"` // Allow to create bucket in different folder. @@ -213,8 +206,7 @@ type BucketInitParameters struct { Policy *string `json:"policy,omitempty" tf:"policy,omitempty"` - // The secret key to use when applying changes. If omitted, storage_secret_key specified in - // provider config (explicitly or within shared_credentials_file) is used. + // The secret key to use when applying changes. This value can also be provided as storage_secret_key specified in provider config (explicitly or within shared_credentials_file) is used. SecretKeySecretRef *v1.SecretKeySelector `json:"secretKeySecretRef,omitempty" tf:"-"` // A configuration of server-side encryption for the bucket (documented below) @@ -238,17 +230,13 @@ type BucketInitParameters struct { type BucketObservation struct { - // The predefined ACL to apply. - // Defaults to private. Conflicts with grant. + // The predefined ACL to apply. Defaults to private. Conflicts with grant. ACL *string `json:"acl,omitempty" tf:"acl,omitempty"` - // The access key to use when applying changes. If omitted, storage_access_key specified in - // provider config (explicitly or within shared_credentials_file) is used. + // The access key to use when applying changes. This value can also be provided as storage_access_key specified in provider config (explicitly or within shared_credentials_file) is used. AccessKey *string `json:"accessKey,omitempty" tf:"access_key,omitempty"` - // Provides various access to objects. - // See bucket availability - // for more infomation. + // Provides various access to objects. See bucket availability for more infomation. AnonymousAccessFlags []AnonymousAccessFlagsObservation `json:"anonymousAccessFlags,omitempty" tf:"anonymous_access_flags,omitempty"` // The name of the bucket. @@ -257,16 +245,13 @@ type BucketObservation struct { // The bucket domain name. BucketDomainName *string `json:"bucketDomainName,omitempty" tf:"bucket_domain_name,omitempty"` - // Creates a unique bucket name beginning with the specified prefix. - // Conflicts with bucket. + // Creates a unique bucket name beginning with the specified prefix. Conflicts with bucket. BucketPrefix *string `json:"bucketPrefix,omitempty" tf:"bucket_prefix,omitempty"` // A rule of Cross-Origin Resource Sharing (documented below). CorsRule []CorsRuleObservation `json:"corsRule,omitempty" tf:"cors_rule,omitempty"` - // Storage class which is used for storing objects by default. - // Available values are: "STANDARD", "COLD", "ICE". Default is "STANDARD". - // See storage class for more inforamtion. + // Storage class which is used for storing objects by default. Available values are: "STANDARD", "COLD", "ICE". Default is "STANDARD". See storage class for more inforamtion. DefaultStorageClass *string `json:"defaultStorageClass,omitempty" tf:"default_storage_class,omitempty"` // Allow to create bucket in different folder. @@ -319,13 +304,11 @@ type BucketObservation struct { type BucketParameters struct { - // The predefined ACL to apply. - // Defaults to private. Conflicts with grant. + // The predefined ACL to apply. Defaults to private. Conflicts with grant. // +kubebuilder:validation:Optional ACL *string `json:"acl,omitempty" tf:"acl,omitempty"` - // The access key to use when applying changes. If omitted, storage_access_key specified in - // provider config (explicitly or within shared_credentials_file) is used. + // The access key to use when applying changes. This value can also be provided as storage_access_key specified in provider config (explicitly or within shared_credentials_file) is used. // +crossplane:generate:reference:type=github.com/tagesjump/provider-upjet-yc/apis/iam/v1alpha1.ServiceAccountStaticAccessKey // +crossplane:generate:reference:extractor=github.com/tagesjump/provider-upjet-yc/config/common.ExtractAccessKey() // +kubebuilder:validation:Optional @@ -339,9 +322,7 @@ type BucketParameters struct { // +kubebuilder:validation:Optional AccessKeySelector *v1.Selector `json:"accessKeySelector,omitempty" tf:"-"` - // Provides various access to objects. - // See bucket availability - // for more infomation. + // Provides various access to objects. See bucket availability for more infomation. // +kubebuilder:validation:Optional AnonymousAccessFlags []AnonymousAccessFlagsParameters `json:"anonymousAccessFlags,omitempty" tf:"anonymous_access_flags,omitempty"` @@ -349,8 +330,7 @@ type BucketParameters struct { // +kubebuilder:validation:Optional Bucket *string `json:"bucket,omitempty" tf:"bucket,omitempty"` - // Creates a unique bucket name beginning with the specified prefix. - // Conflicts with bucket. + // Creates a unique bucket name beginning with the specified prefix. Conflicts with bucket. // +kubebuilder:validation:Optional BucketPrefix *string `json:"bucketPrefix,omitempty" tf:"bucket_prefix,omitempty"` @@ -358,9 +338,7 @@ type BucketParameters struct { // +kubebuilder:validation:Optional CorsRule []CorsRuleParameters `json:"corsRule,omitempty" tf:"cors_rule,omitempty"` - // Storage class which is used for storing objects by default. - // Available values are: "STANDARD", "COLD", "ICE". Default is "STANDARD". - // See storage class for more inforamtion. + // Storage class which is used for storing objects by default. Available values are: "STANDARD", "COLD", "ICE". Default is "STANDARD". See storage class for more inforamtion. // +kubebuilder:validation:Optional DefaultStorageClass *string `json:"defaultStorageClass,omitempty" tf:"default_storage_class,omitempty"` @@ -408,8 +386,7 @@ type BucketParameters struct { // +kubebuilder:validation:Optional Policy *string `json:"policy,omitempty" tf:"policy,omitempty"` - // The secret key to use when applying changes. If omitted, storage_secret_key specified in - // provider config (explicitly or within shared_credentials_file) is used. + // The secret key to use when applying changes. This value can also be provided as storage_secret_key specified in provider config (explicitly or within shared_credentials_file) is used. // +kubebuilder:validation:Optional SecretKeySecretRef *v1.SecretKeySelector `json:"secretKeySecretRef,omitempty" tf:"-"` @@ -577,7 +554,7 @@ type ExpirationParameters struct { type FilterInitParameters struct { - // operator applied to one or more filter parameters. It should be used when both prefix and tags are used. It supports the following parameters: + // operator applied to one or more filter parameters. It should be used when two or more of the above parameters are used. It supports the following parameters: And []AndInitParameters `json:"and,omitempty" tf:"and,omitempty"` ObjectSizeGreaterThan *float64 `json:"objectSizeGreaterThan,omitempty" tf:"object_size_greater_than,omitempty"` @@ -592,7 +569,7 @@ type FilterInitParameters struct { type FilterObservation struct { - // operator applied to one or more filter parameters. It should be used when both prefix and tags are used. It supports the following parameters: + // operator applied to one or more filter parameters. It should be used when two or more of the above parameters are used. It supports the following parameters: And []AndObservation `json:"and,omitempty" tf:"and,omitempty"` ObjectSizeGreaterThan *float64 `json:"objectSizeGreaterThan,omitempty" tf:"object_size_greater_than,omitempty"` @@ -607,7 +584,7 @@ type FilterObservation struct { type FilterParameters struct { - // operator applied to one or more filter parameters. It should be used when both prefix and tags are used. It supports the following parameters: + // operator applied to one or more filter parameters. It should be used when two or more of the above parameters are used. It supports the following parameters: // +kubebuilder:validation:Optional And []AndParameters `json:"and,omitempty" tf:"and,omitempty"` diff --git a/apis/storage/v1alpha1/zz_object_types.go b/apis/storage/v1alpha1/zz_object_types.go index 0b15734..7caffb4 100755 --- a/apis/storage/v1alpha1/zz_object_types.go +++ b/apis/storage/v1alpha1/zz_object_types.go @@ -14,7 +14,7 @@ type ObjectInitParameters struct { // The predefined ACL to apply. Defaults to private. ACL *string `json:"acl,omitempty" tf:"acl,omitempty"` - // The access key to use when applying changes. If omitted, storage_access_key specified in config is used. + // The access key to use when applying changes. This value can also be provided as storage_access_key specified in provider config (explicitly or within shared_credentials_file) is used. // +crossplane:generate:reference:type=github.com/tagesjump/provider-upjet-yc/apis/iam/v1alpha1.ServiceAccountStaticAccessKey // +crossplane:generate:reference:extractor=github.com/tagesjump/provider-upjet-yc/config/common.ExtractAccessKey() AccessKey *string `json:"accessKey,omitempty" tf:"access_key,omitempty"` @@ -60,7 +60,7 @@ type ObjectInitParameters struct { // Specifies date and time in RTC3339 format until which an object is to be locked. It must be set simultaneously with object_lock_mode. Requires object_lock_configuration to be enabled on a bucket. ObjectLockRetainUntilDate *string `json:"objectLockRetainUntilDate,omitempty" tf:"object_lock_retain_until_date,omitempty"` - // The secret key to use when applying changes. If omitted, storage_secret_key specified in config is used. + // The secret key to use when applying changes. This value can also be provided as storage_secret_key specified in provider config (explicitly or within shared_credentials_file) is used. SecretKeySecretRef *v1.SecretKeySelector `json:"secretKeySecretRef,omitempty" tf:"-"` // The path to a file that will be read and uploaded as raw bytes for the object content. @@ -79,7 +79,7 @@ type ObjectObservation struct { // The predefined ACL to apply. Defaults to private. ACL *string `json:"acl,omitempty" tf:"acl,omitempty"` - // The access key to use when applying changes. If omitted, storage_access_key specified in config is used. + // The access key to use when applying changes. This value can also be provided as storage_access_key specified in provider config (explicitly or within shared_credentials_file) is used. AccessKey *string `json:"accessKey,omitempty" tf:"access_key,omitempty"` // The name of the containing bucket. @@ -126,7 +126,7 @@ type ObjectParameters struct { // +kubebuilder:validation:Optional ACL *string `json:"acl,omitempty" tf:"acl,omitempty"` - // The access key to use when applying changes. If omitted, storage_access_key specified in config is used. + // The access key to use when applying changes. This value can also be provided as storage_access_key specified in provider config (explicitly or within shared_credentials_file) is used. // +crossplane:generate:reference:type=github.com/tagesjump/provider-upjet-yc/apis/iam/v1alpha1.ServiceAccountStaticAccessKey // +crossplane:generate:reference:extractor=github.com/tagesjump/provider-upjet-yc/config/common.ExtractAccessKey() // +kubebuilder:validation:Optional @@ -181,7 +181,7 @@ type ObjectParameters struct { // +kubebuilder:validation:Optional ObjectLockRetainUntilDate *string `json:"objectLockRetainUntilDate,omitempty" tf:"object_lock_retain_until_date,omitempty"` - // The secret key to use when applying changes. If omitted, storage_secret_key specified in config is used. + // The secret key to use when applying changes. This value can also be provided as storage_secret_key specified in provider config (explicitly or within shared_credentials_file) is used. // +kubebuilder:validation:Optional SecretKeySecretRef *v1.SecretKeySelector `json:"secretKeySecretRef,omitempty" tf:"-"` diff --git a/apis/sws/v1alpha1/zz_generated.deepcopy.go b/apis/sws/v1alpha1/zz_generated.deepcopy.go index 24bbbfd..efec01e 100644 --- a/apis/sws/v1alpha1/zz_generated.deepcopy.go +++ b/apis/sws/v1alpha1/zz_generated.deepcopy.go @@ -345,6 +345,141 @@ func (in *AuthorityParameters) DeepCopy() *AuthorityParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *ConditionAuthorityAuthoritiesInitParameters) DeepCopyInto(out *ConditionAuthorityAuthoritiesInitParameters) { + *out = *in + if in.ExactMatch != nil { + in, out := &in.ExactMatch, &out.ExactMatch + *out = new(string) + **out = **in + } + if in.ExactNotMatch != nil { + in, out := &in.ExactNotMatch, &out.ExactNotMatch + *out = new(string) + **out = **in + } + if in.PireRegexMatch != nil { + in, out := &in.PireRegexMatch, &out.PireRegexMatch + *out = new(string) + **out = **in + } + if in.PireRegexNotMatch != nil { + in, out := &in.PireRegexNotMatch, &out.PireRegexNotMatch + *out = new(string) + **out = **in + } + if in.PrefixMatch != nil { + in, out := &in.PrefixMatch, &out.PrefixMatch + *out = new(string) + **out = **in + } + if in.PrefixNotMatch != nil { + in, out := &in.PrefixNotMatch, &out.PrefixNotMatch + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ConditionAuthorityAuthoritiesInitParameters. +func (in *ConditionAuthorityAuthoritiesInitParameters) DeepCopy() *ConditionAuthorityAuthoritiesInitParameters { + if in == nil { + return nil + } + out := new(ConditionAuthorityAuthoritiesInitParameters) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *ConditionAuthorityAuthoritiesObservation) DeepCopyInto(out *ConditionAuthorityAuthoritiesObservation) { + *out = *in + if in.ExactMatch != nil { + in, out := &in.ExactMatch, &out.ExactMatch + *out = new(string) + **out = **in + } + if in.ExactNotMatch != nil { + in, out := &in.ExactNotMatch, &out.ExactNotMatch + *out = new(string) + **out = **in + } + if in.PireRegexMatch != nil { + in, out := &in.PireRegexMatch, &out.PireRegexMatch + *out = new(string) + **out = **in + } + if in.PireRegexNotMatch != nil { + in, out := &in.PireRegexNotMatch, &out.PireRegexNotMatch + *out = new(string) + **out = **in + } + if in.PrefixMatch != nil { + in, out := &in.PrefixMatch, &out.PrefixMatch + *out = new(string) + **out = **in + } + if in.PrefixNotMatch != nil { + in, out := &in.PrefixNotMatch, &out.PrefixNotMatch + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ConditionAuthorityAuthoritiesObservation. +func (in *ConditionAuthorityAuthoritiesObservation) DeepCopy() *ConditionAuthorityAuthoritiesObservation { + if in == nil { + return nil + } + out := new(ConditionAuthorityAuthoritiesObservation) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *ConditionAuthorityAuthoritiesParameters) DeepCopyInto(out *ConditionAuthorityAuthoritiesParameters) { + *out = *in + if in.ExactMatch != nil { + in, out := &in.ExactMatch, &out.ExactMatch + *out = new(string) + **out = **in + } + if in.ExactNotMatch != nil { + in, out := &in.ExactNotMatch, &out.ExactNotMatch + *out = new(string) + **out = **in + } + if in.PireRegexMatch != nil { + in, out := &in.PireRegexMatch, &out.PireRegexMatch + *out = new(string) + **out = **in + } + if in.PireRegexNotMatch != nil { + in, out := &in.PireRegexNotMatch, &out.PireRegexNotMatch + *out = new(string) + **out = **in + } + if in.PrefixMatch != nil { + in, out := &in.PrefixMatch, &out.PrefixMatch + *out = new(string) + **out = **in + } + if in.PrefixNotMatch != nil { + in, out := &in.PrefixNotMatch, &out.PrefixNotMatch + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ConditionAuthorityAuthoritiesParameters. +func (in *ConditionAuthorityAuthoritiesParameters) DeepCopy() *ConditionAuthorityAuthoritiesParameters { + if in == nil { + return nil + } + out := new(ConditionAuthorityAuthoritiesParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *ConditionAuthorityInitParameters) DeepCopyInto(out *ConditionAuthorityInitParameters) { *out = *in @@ -411,6 +546,141 @@ func (in *ConditionAuthorityParameters) DeepCopy() *ConditionAuthorityParameters return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *ConditionHTTPMethodHTTPMethodsInitParameters) DeepCopyInto(out *ConditionHTTPMethodHTTPMethodsInitParameters) { + *out = *in + if in.ExactMatch != nil { + in, out := &in.ExactMatch, &out.ExactMatch + *out = new(string) + **out = **in + } + if in.ExactNotMatch != nil { + in, out := &in.ExactNotMatch, &out.ExactNotMatch + *out = new(string) + **out = **in + } + if in.PireRegexMatch != nil { + in, out := &in.PireRegexMatch, &out.PireRegexMatch + *out = new(string) + **out = **in + } + if in.PireRegexNotMatch != nil { + in, out := &in.PireRegexNotMatch, &out.PireRegexNotMatch + *out = new(string) + **out = **in + } + if in.PrefixMatch != nil { + in, out := &in.PrefixMatch, &out.PrefixMatch + *out = new(string) + **out = **in + } + if in.PrefixNotMatch != nil { + in, out := &in.PrefixNotMatch, &out.PrefixNotMatch + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ConditionHTTPMethodHTTPMethodsInitParameters. +func (in *ConditionHTTPMethodHTTPMethodsInitParameters) DeepCopy() *ConditionHTTPMethodHTTPMethodsInitParameters { + if in == nil { + return nil + } + out := new(ConditionHTTPMethodHTTPMethodsInitParameters) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *ConditionHTTPMethodHTTPMethodsObservation) DeepCopyInto(out *ConditionHTTPMethodHTTPMethodsObservation) { + *out = *in + if in.ExactMatch != nil { + in, out := &in.ExactMatch, &out.ExactMatch + *out = new(string) + **out = **in + } + if in.ExactNotMatch != nil { + in, out := &in.ExactNotMatch, &out.ExactNotMatch + *out = new(string) + **out = **in + } + if in.PireRegexMatch != nil { + in, out := &in.PireRegexMatch, &out.PireRegexMatch + *out = new(string) + **out = **in + } + if in.PireRegexNotMatch != nil { + in, out := &in.PireRegexNotMatch, &out.PireRegexNotMatch + *out = new(string) + **out = **in + } + if in.PrefixMatch != nil { + in, out := &in.PrefixMatch, &out.PrefixMatch + *out = new(string) + **out = **in + } + if in.PrefixNotMatch != nil { + in, out := &in.PrefixNotMatch, &out.PrefixNotMatch + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ConditionHTTPMethodHTTPMethodsObservation. +func (in *ConditionHTTPMethodHTTPMethodsObservation) DeepCopy() *ConditionHTTPMethodHTTPMethodsObservation { + if in == nil { + return nil + } + out := new(ConditionHTTPMethodHTTPMethodsObservation) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *ConditionHTTPMethodHTTPMethodsParameters) DeepCopyInto(out *ConditionHTTPMethodHTTPMethodsParameters) { + *out = *in + if in.ExactMatch != nil { + in, out := &in.ExactMatch, &out.ExactMatch + *out = new(string) + **out = **in + } + if in.ExactNotMatch != nil { + in, out := &in.ExactNotMatch, &out.ExactNotMatch + *out = new(string) + **out = **in + } + if in.PireRegexMatch != nil { + in, out := &in.PireRegexMatch, &out.PireRegexMatch + *out = new(string) + **out = **in + } + if in.PireRegexNotMatch != nil { + in, out := &in.PireRegexNotMatch, &out.PireRegexNotMatch + *out = new(string) + **out = **in + } + if in.PrefixMatch != nil { + in, out := &in.PrefixMatch, &out.PrefixMatch + *out = new(string) + **out = **in + } + if in.PrefixNotMatch != nil { + in, out := &in.PrefixNotMatch, &out.PrefixNotMatch + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ConditionHTTPMethodHTTPMethodsParameters. +func (in *ConditionHTTPMethodHTTPMethodsParameters) DeepCopy() *ConditionHTTPMethodHTTPMethodsParameters { + if in == nil { + return nil + } + out := new(ConditionHTTPMethodHTTPMethodsParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *ConditionHTTPMethodInitParameters) DeepCopyInto(out *ConditionHTTPMethodInitParameters) { *out = *in @@ -559,17 +829,152 @@ func (in *ConditionHeadersParameters) DeepCopy() *ConditionHeadersParameters { } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *ConditionInitParameters) DeepCopyInto(out *ConditionInitParameters) { +func (in *ConditionHeadersValueInitParameters) DeepCopyInto(out *ConditionHeadersValueInitParameters) { *out = *in - if in.Authority != nil { - in, out := &in.Authority, &out.Authority - *out = make([]AuthorityInitParameters, len(*in)) - for i := range *in { - (*in)[i].DeepCopyInto(&(*out)[i]) - } - } - if in.HTTPMethod != nil { - in, out := &in.HTTPMethod, &out.HTTPMethod + if in.ExactMatch != nil { + in, out := &in.ExactMatch, &out.ExactMatch + *out = new(string) + **out = **in + } + if in.ExactNotMatch != nil { + in, out := &in.ExactNotMatch, &out.ExactNotMatch + *out = new(string) + **out = **in + } + if in.PireRegexMatch != nil { + in, out := &in.PireRegexMatch, &out.PireRegexMatch + *out = new(string) + **out = **in + } + if in.PireRegexNotMatch != nil { + in, out := &in.PireRegexNotMatch, &out.PireRegexNotMatch + *out = new(string) + **out = **in + } + if in.PrefixMatch != nil { + in, out := &in.PrefixMatch, &out.PrefixMatch + *out = new(string) + **out = **in + } + if in.PrefixNotMatch != nil { + in, out := &in.PrefixNotMatch, &out.PrefixNotMatch + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ConditionHeadersValueInitParameters. +func (in *ConditionHeadersValueInitParameters) DeepCopy() *ConditionHeadersValueInitParameters { + if in == nil { + return nil + } + out := new(ConditionHeadersValueInitParameters) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *ConditionHeadersValueObservation) DeepCopyInto(out *ConditionHeadersValueObservation) { + *out = *in + if in.ExactMatch != nil { + in, out := &in.ExactMatch, &out.ExactMatch + *out = new(string) + **out = **in + } + if in.ExactNotMatch != nil { + in, out := &in.ExactNotMatch, &out.ExactNotMatch + *out = new(string) + **out = **in + } + if in.PireRegexMatch != nil { + in, out := &in.PireRegexMatch, &out.PireRegexMatch + *out = new(string) + **out = **in + } + if in.PireRegexNotMatch != nil { + in, out := &in.PireRegexNotMatch, &out.PireRegexNotMatch + *out = new(string) + **out = **in + } + if in.PrefixMatch != nil { + in, out := &in.PrefixMatch, &out.PrefixMatch + *out = new(string) + **out = **in + } + if in.PrefixNotMatch != nil { + in, out := &in.PrefixNotMatch, &out.PrefixNotMatch + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ConditionHeadersValueObservation. +func (in *ConditionHeadersValueObservation) DeepCopy() *ConditionHeadersValueObservation { + if in == nil { + return nil + } + out := new(ConditionHeadersValueObservation) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *ConditionHeadersValueParameters) DeepCopyInto(out *ConditionHeadersValueParameters) { + *out = *in + if in.ExactMatch != nil { + in, out := &in.ExactMatch, &out.ExactMatch + *out = new(string) + **out = **in + } + if in.ExactNotMatch != nil { + in, out := &in.ExactNotMatch, &out.ExactNotMatch + *out = new(string) + **out = **in + } + if in.PireRegexMatch != nil { + in, out := &in.PireRegexMatch, &out.PireRegexMatch + *out = new(string) + **out = **in + } + if in.PireRegexNotMatch != nil { + in, out := &in.PireRegexNotMatch, &out.PireRegexNotMatch + *out = new(string) + **out = **in + } + if in.PrefixMatch != nil { + in, out := &in.PrefixMatch, &out.PrefixMatch + *out = new(string) + **out = **in + } + if in.PrefixNotMatch != nil { + in, out := &in.PrefixNotMatch, &out.PrefixNotMatch + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ConditionHeadersValueParameters. +func (in *ConditionHeadersValueParameters) DeepCopy() *ConditionHeadersValueParameters { + if in == nil { + return nil + } + out := new(ConditionHeadersValueParameters) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *ConditionInitParameters) DeepCopyInto(out *ConditionInitParameters) { + *out = *in + if in.Authority != nil { + in, out := &in.Authority, &out.Authority + *out = make([]AuthorityInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.HTTPMethod != nil { + in, out := &in.HTTPMethod, &out.HTTPMethod *out = make([]HTTPMethodInitParameters, len(*in)) for i := range *in { (*in)[i].DeepCopyInto(&(*out)[i]) @@ -796,292 +1201,223 @@ func (in *ConditionRequestURIParameters) DeepCopy() *ConditionRequestURIParamete } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *ConditionSourceIPInitParameters) DeepCopyInto(out *ConditionSourceIPInitParameters) { +func (in *ConditionRequestURIPathInitParameters) DeepCopyInto(out *ConditionRequestURIPathInitParameters) { *out = *in - if in.GeoIPMatch != nil { - in, out := &in.GeoIPMatch, &out.GeoIPMatch - *out = make([]SourceIPGeoIPMatchInitParameters, len(*in)) - for i := range *in { - (*in)[i].DeepCopyInto(&(*out)[i]) - } + if in.ExactMatch != nil { + in, out := &in.ExactMatch, &out.ExactMatch + *out = new(string) + **out = **in } - if in.GeoIPNotMatch != nil { - in, out := &in.GeoIPNotMatch, &out.GeoIPNotMatch - *out = make([]SourceIPGeoIPNotMatchInitParameters, len(*in)) - for i := range *in { - (*in)[i].DeepCopyInto(&(*out)[i]) - } + if in.ExactNotMatch != nil { + in, out := &in.ExactNotMatch, &out.ExactNotMatch + *out = new(string) + **out = **in } - if in.IPRangesMatch != nil { - in, out := &in.IPRangesMatch, &out.IPRangesMatch - *out = make([]SourceIPIPRangesMatchInitParameters, len(*in)) - for i := range *in { - (*in)[i].DeepCopyInto(&(*out)[i]) - } + if in.PireRegexMatch != nil { + in, out := &in.PireRegexMatch, &out.PireRegexMatch + *out = new(string) + **out = **in } - if in.IPRangesNotMatch != nil { - in, out := &in.IPRangesNotMatch, &out.IPRangesNotMatch - *out = make([]SourceIPIPRangesNotMatchInitParameters, len(*in)) - for i := range *in { - (*in)[i].DeepCopyInto(&(*out)[i]) - } + if in.PireRegexNotMatch != nil { + in, out := &in.PireRegexNotMatch, &out.PireRegexNotMatch + *out = new(string) + **out = **in + } + if in.PrefixMatch != nil { + in, out := &in.PrefixMatch, &out.PrefixMatch + *out = new(string) + **out = **in + } + if in.PrefixNotMatch != nil { + in, out := &in.PrefixNotMatch, &out.PrefixNotMatch + *out = new(string) + **out = **in } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ConditionSourceIPInitParameters. -func (in *ConditionSourceIPInitParameters) DeepCopy() *ConditionSourceIPInitParameters { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ConditionRequestURIPathInitParameters. +func (in *ConditionRequestURIPathInitParameters) DeepCopy() *ConditionRequestURIPathInitParameters { if in == nil { return nil } - out := new(ConditionSourceIPInitParameters) + out := new(ConditionRequestURIPathInitParameters) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *ConditionSourceIPObservation) DeepCopyInto(out *ConditionSourceIPObservation) { +func (in *ConditionRequestURIPathObservation) DeepCopyInto(out *ConditionRequestURIPathObservation) { *out = *in - if in.GeoIPMatch != nil { - in, out := &in.GeoIPMatch, &out.GeoIPMatch - *out = make([]SourceIPGeoIPMatchObservation, len(*in)) - for i := range *in { - (*in)[i].DeepCopyInto(&(*out)[i]) - } + if in.ExactMatch != nil { + in, out := &in.ExactMatch, &out.ExactMatch + *out = new(string) + **out = **in } - if in.GeoIPNotMatch != nil { - in, out := &in.GeoIPNotMatch, &out.GeoIPNotMatch - *out = make([]SourceIPGeoIPNotMatchObservation, len(*in)) - for i := range *in { - (*in)[i].DeepCopyInto(&(*out)[i]) - } + if in.ExactNotMatch != nil { + in, out := &in.ExactNotMatch, &out.ExactNotMatch + *out = new(string) + **out = **in } - if in.IPRangesMatch != nil { - in, out := &in.IPRangesMatch, &out.IPRangesMatch - *out = make([]SourceIPIPRangesMatchObservation, len(*in)) - for i := range *in { - (*in)[i].DeepCopyInto(&(*out)[i]) - } + if in.PireRegexMatch != nil { + in, out := &in.PireRegexMatch, &out.PireRegexMatch + *out = new(string) + **out = **in } - if in.IPRangesNotMatch != nil { - in, out := &in.IPRangesNotMatch, &out.IPRangesNotMatch - *out = make([]SourceIPIPRangesNotMatchObservation, len(*in)) - for i := range *in { - (*in)[i].DeepCopyInto(&(*out)[i]) - } + if in.PireRegexNotMatch != nil { + in, out := &in.PireRegexNotMatch, &out.PireRegexNotMatch + *out = new(string) + **out = **in + } + if in.PrefixMatch != nil { + in, out := &in.PrefixMatch, &out.PrefixMatch + *out = new(string) + **out = **in + } + if in.PrefixNotMatch != nil { + in, out := &in.PrefixNotMatch, &out.PrefixNotMatch + *out = new(string) + **out = **in } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ConditionSourceIPObservation. -func (in *ConditionSourceIPObservation) DeepCopy() *ConditionSourceIPObservation { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ConditionRequestURIPathObservation. +func (in *ConditionRequestURIPathObservation) DeepCopy() *ConditionRequestURIPathObservation { if in == nil { return nil } - out := new(ConditionSourceIPObservation) + out := new(ConditionRequestURIPathObservation) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *ConditionSourceIPParameters) DeepCopyInto(out *ConditionSourceIPParameters) { +func (in *ConditionRequestURIPathParameters) DeepCopyInto(out *ConditionRequestURIPathParameters) { *out = *in - if in.GeoIPMatch != nil { - in, out := &in.GeoIPMatch, &out.GeoIPMatch - *out = make([]SourceIPGeoIPMatchParameters, len(*in)) - for i := range *in { - (*in)[i].DeepCopyInto(&(*out)[i]) - } + if in.ExactMatch != nil { + in, out := &in.ExactMatch, &out.ExactMatch + *out = new(string) + **out = **in } - if in.GeoIPNotMatch != nil { - in, out := &in.GeoIPNotMatch, &out.GeoIPNotMatch - *out = make([]SourceIPGeoIPNotMatchParameters, len(*in)) - for i := range *in { - (*in)[i].DeepCopyInto(&(*out)[i]) - } + if in.ExactNotMatch != nil { + in, out := &in.ExactNotMatch, &out.ExactNotMatch + *out = new(string) + **out = **in } - if in.IPRangesMatch != nil { - in, out := &in.IPRangesMatch, &out.IPRangesMatch - *out = make([]SourceIPIPRangesMatchParameters, len(*in)) - for i := range *in { - (*in)[i].DeepCopyInto(&(*out)[i]) - } + if in.PireRegexMatch != nil { + in, out := &in.PireRegexMatch, &out.PireRegexMatch + *out = new(string) + **out = **in } - if in.IPRangesNotMatch != nil { - in, out := &in.IPRangesNotMatch, &out.IPRangesNotMatch - *out = make([]SourceIPIPRangesNotMatchParameters, len(*in)) - for i := range *in { - (*in)[i].DeepCopyInto(&(*out)[i]) - } + if in.PireRegexNotMatch != nil { + in, out := &in.PireRegexNotMatch, &out.PireRegexNotMatch + *out = new(string) + **out = **in } -} - -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ConditionSourceIPParameters. -func (in *ConditionSourceIPParameters) DeepCopy() *ConditionSourceIPParameters { - if in == nil { - return nil + if in.PrefixMatch != nil { + in, out := &in.PrefixMatch, &out.PrefixMatch + *out = new(string) + **out = **in } - out := new(ConditionSourceIPParameters) - in.DeepCopyInto(out) - return out -} - -// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *GeoIPMatchInitParameters) DeepCopyInto(out *GeoIPMatchInitParameters) { - *out = *in - if in.Locations != nil { - in, out := &in.Locations, &out.Locations - *out = make([]*string, len(*in)) - for i := range *in { - if (*in)[i] != nil { - in, out := &(*in)[i], &(*out)[i] - *out = new(string) - **out = **in - } - } + if in.PrefixNotMatch != nil { + in, out := &in.PrefixNotMatch, &out.PrefixNotMatch + *out = new(string) + **out = **in } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new GeoIPMatchInitParameters. -func (in *GeoIPMatchInitParameters) DeepCopy() *GeoIPMatchInitParameters { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ConditionRequestURIPathParameters. +func (in *ConditionRequestURIPathParameters) DeepCopy() *ConditionRequestURIPathParameters { if in == nil { return nil } - out := new(GeoIPMatchInitParameters) + out := new(ConditionRequestURIPathParameters) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *GeoIPMatchObservation) DeepCopyInto(out *GeoIPMatchObservation) { +func (in *ConditionRequestURIQueriesInitParameters) DeepCopyInto(out *ConditionRequestURIQueriesInitParameters) { *out = *in - if in.Locations != nil { - in, out := &in.Locations, &out.Locations - *out = make([]*string, len(*in)) - for i := range *in { - if (*in)[i] != nil { - in, out := &(*in)[i], &(*out)[i] - *out = new(string) - **out = **in - } - } - } -} - -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new GeoIPMatchObservation. -func (in *GeoIPMatchObservation) DeepCopy() *GeoIPMatchObservation { - if in == nil { - return nil + if in.Key != nil { + in, out := &in.Key, &out.Key + *out = new(string) + **out = **in } - out := new(GeoIPMatchObservation) - in.DeepCopyInto(out) - return out -} - -// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *GeoIPMatchParameters) DeepCopyInto(out *GeoIPMatchParameters) { - *out = *in - if in.Locations != nil { - in, out := &in.Locations, &out.Locations - *out = make([]*string, len(*in)) + if in.Value != nil { + in, out := &in.Value, &out.Value + *out = make([]ConditionRequestURIQueriesValueInitParameters, len(*in)) for i := range *in { - if (*in)[i] != nil { - in, out := &(*in)[i], &(*out)[i] - *out = new(string) - **out = **in - } + (*in)[i].DeepCopyInto(&(*out)[i]) } } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new GeoIPMatchParameters. -func (in *GeoIPMatchParameters) DeepCopy() *GeoIPMatchParameters { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ConditionRequestURIQueriesInitParameters. +func (in *ConditionRequestURIQueriesInitParameters) DeepCopy() *ConditionRequestURIQueriesInitParameters { if in == nil { return nil } - out := new(GeoIPMatchParameters) + out := new(ConditionRequestURIQueriesInitParameters) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *GeoIPNotMatchInitParameters) DeepCopyInto(out *GeoIPNotMatchInitParameters) { +func (in *ConditionRequestURIQueriesObservation) DeepCopyInto(out *ConditionRequestURIQueriesObservation) { *out = *in - if in.Locations != nil { - in, out := &in.Locations, &out.Locations - *out = make([]*string, len(*in)) - for i := range *in { - if (*in)[i] != nil { - in, out := &(*in)[i], &(*out)[i] - *out = new(string) - **out = **in - } - } - } -} - -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new GeoIPNotMatchInitParameters. -func (in *GeoIPNotMatchInitParameters) DeepCopy() *GeoIPNotMatchInitParameters { - if in == nil { - return nil + if in.Key != nil { + in, out := &in.Key, &out.Key + *out = new(string) + **out = **in } - out := new(GeoIPNotMatchInitParameters) - in.DeepCopyInto(out) - return out -} - -// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *GeoIPNotMatchObservation) DeepCopyInto(out *GeoIPNotMatchObservation) { - *out = *in - if in.Locations != nil { - in, out := &in.Locations, &out.Locations - *out = make([]*string, len(*in)) + if in.Value != nil { + in, out := &in.Value, &out.Value + *out = make([]ConditionRequestURIQueriesValueObservation, len(*in)) for i := range *in { - if (*in)[i] != nil { - in, out := &(*in)[i], &(*out)[i] - *out = new(string) - **out = **in - } + (*in)[i].DeepCopyInto(&(*out)[i]) } } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new GeoIPNotMatchObservation. -func (in *GeoIPNotMatchObservation) DeepCopy() *GeoIPNotMatchObservation { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ConditionRequestURIQueriesObservation. +func (in *ConditionRequestURIQueriesObservation) DeepCopy() *ConditionRequestURIQueriesObservation { if in == nil { return nil } - out := new(GeoIPNotMatchObservation) + out := new(ConditionRequestURIQueriesObservation) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *GeoIPNotMatchParameters) DeepCopyInto(out *GeoIPNotMatchParameters) { +func (in *ConditionRequestURIQueriesParameters) DeepCopyInto(out *ConditionRequestURIQueriesParameters) { *out = *in - if in.Locations != nil { - in, out := &in.Locations, &out.Locations - *out = make([]*string, len(*in)) + if in.Key != nil { + in, out := &in.Key, &out.Key + *out = new(string) + **out = **in + } + if in.Value != nil { + in, out := &in.Value, &out.Value + *out = make([]ConditionRequestURIQueriesValueParameters, len(*in)) for i := range *in { - if (*in)[i] != nil { - in, out := &(*in)[i], &(*out)[i] - *out = new(string) - **out = **in - } + (*in)[i].DeepCopyInto(&(*out)[i]) } } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new GeoIPNotMatchParameters. -func (in *GeoIPNotMatchParameters) DeepCopy() *GeoIPNotMatchParameters { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ConditionRequestURIQueriesParameters. +func (in *ConditionRequestURIQueriesParameters) DeepCopy() *ConditionRequestURIQueriesParameters { if in == nil { return nil } - out := new(GeoIPNotMatchParameters) + out := new(ConditionRequestURIQueriesParameters) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *HTTPMethodHTTPMethodsInitParameters) DeepCopyInto(out *HTTPMethodHTTPMethodsInitParameters) { +func (in *ConditionRequestURIQueriesValueInitParameters) DeepCopyInto(out *ConditionRequestURIQueriesValueInitParameters) { *out = *in if in.ExactMatch != nil { in, out := &in.ExactMatch, &out.ExactMatch @@ -1115,18 +1451,18 @@ func (in *HTTPMethodHTTPMethodsInitParameters) DeepCopyInto(out *HTTPMethodHTTPM } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new HTTPMethodHTTPMethodsInitParameters. -func (in *HTTPMethodHTTPMethodsInitParameters) DeepCopy() *HTTPMethodHTTPMethodsInitParameters { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ConditionRequestURIQueriesValueInitParameters. +func (in *ConditionRequestURIQueriesValueInitParameters) DeepCopy() *ConditionRequestURIQueriesValueInitParameters { if in == nil { return nil } - out := new(HTTPMethodHTTPMethodsInitParameters) + out := new(ConditionRequestURIQueriesValueInitParameters) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *HTTPMethodHTTPMethodsObservation) DeepCopyInto(out *HTTPMethodHTTPMethodsObservation) { +func (in *ConditionRequestURIQueriesValueObservation) DeepCopyInto(out *ConditionRequestURIQueriesValueObservation) { *out = *in if in.ExactMatch != nil { in, out := &in.ExactMatch, &out.ExactMatch @@ -1160,18 +1496,18 @@ func (in *HTTPMethodHTTPMethodsObservation) DeepCopyInto(out *HTTPMethodHTTPMeth } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new HTTPMethodHTTPMethodsObservation. -func (in *HTTPMethodHTTPMethodsObservation) DeepCopy() *HTTPMethodHTTPMethodsObservation { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ConditionRequestURIQueriesValueObservation. +func (in *ConditionRequestURIQueriesValueObservation) DeepCopy() *ConditionRequestURIQueriesValueObservation { if in == nil { return nil } - out := new(HTTPMethodHTTPMethodsObservation) + out := new(ConditionRequestURIQueriesValueObservation) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *HTTPMethodHTTPMethodsParameters) DeepCopyInto(out *HTTPMethodHTTPMethodsParameters) { +func (in *ConditionRequestURIQueriesValueParameters) DeepCopyInto(out *ConditionRequestURIQueriesValueParameters) { *out = *in if in.ExactMatch != nil { in, out := &in.ExactMatch, &out.ExactMatch @@ -1205,438 +1541,462 @@ func (in *HTTPMethodHTTPMethodsParameters) DeepCopyInto(out *HTTPMethodHTTPMetho } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new HTTPMethodHTTPMethodsParameters. -func (in *HTTPMethodHTTPMethodsParameters) DeepCopy() *HTTPMethodHTTPMethodsParameters { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ConditionRequestURIQueriesValueParameters. +func (in *ConditionRequestURIQueriesValueParameters) DeepCopy() *ConditionRequestURIQueriesValueParameters { if in == nil { return nil } - out := new(HTTPMethodHTTPMethodsParameters) + out := new(ConditionRequestURIQueriesValueParameters) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *HTTPMethodInitParameters) DeepCopyInto(out *HTTPMethodInitParameters) { +func (in *ConditionSourceIPGeoIPMatchInitParameters) DeepCopyInto(out *ConditionSourceIPGeoIPMatchInitParameters) { *out = *in - if in.HTTPMethods != nil { - in, out := &in.HTTPMethods, &out.HTTPMethods - *out = make([]HTTPMethodsInitParameters, len(*in)) + if in.Locations != nil { + in, out := &in.Locations, &out.Locations + *out = make([]*string, len(*in)) for i := range *in { - (*in)[i].DeepCopyInto(&(*out)[i]) + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } } } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new HTTPMethodInitParameters. -func (in *HTTPMethodInitParameters) DeepCopy() *HTTPMethodInitParameters { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ConditionSourceIPGeoIPMatchInitParameters. +func (in *ConditionSourceIPGeoIPMatchInitParameters) DeepCopy() *ConditionSourceIPGeoIPMatchInitParameters { if in == nil { return nil } - out := new(HTTPMethodInitParameters) + out := new(ConditionSourceIPGeoIPMatchInitParameters) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *HTTPMethodObservation) DeepCopyInto(out *HTTPMethodObservation) { +func (in *ConditionSourceIPGeoIPMatchObservation) DeepCopyInto(out *ConditionSourceIPGeoIPMatchObservation) { *out = *in - if in.HTTPMethods != nil { - in, out := &in.HTTPMethods, &out.HTTPMethods - *out = make([]HTTPMethodsObservation, len(*in)) + if in.Locations != nil { + in, out := &in.Locations, &out.Locations + *out = make([]*string, len(*in)) for i := range *in { - (*in)[i].DeepCopyInto(&(*out)[i]) + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } } } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new HTTPMethodObservation. -func (in *HTTPMethodObservation) DeepCopy() *HTTPMethodObservation { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ConditionSourceIPGeoIPMatchObservation. +func (in *ConditionSourceIPGeoIPMatchObservation) DeepCopy() *ConditionSourceIPGeoIPMatchObservation { if in == nil { return nil } - out := new(HTTPMethodObservation) + out := new(ConditionSourceIPGeoIPMatchObservation) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *HTTPMethodParameters) DeepCopyInto(out *HTTPMethodParameters) { +func (in *ConditionSourceIPGeoIPMatchParameters) DeepCopyInto(out *ConditionSourceIPGeoIPMatchParameters) { *out = *in - if in.HTTPMethods != nil { - in, out := &in.HTTPMethods, &out.HTTPMethods - *out = make([]HTTPMethodsParameters, len(*in)) + if in.Locations != nil { + in, out := &in.Locations, &out.Locations + *out = make([]*string, len(*in)) for i := range *in { - (*in)[i].DeepCopyInto(&(*out)[i]) + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } } } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new HTTPMethodParameters. -func (in *HTTPMethodParameters) DeepCopy() *HTTPMethodParameters { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ConditionSourceIPGeoIPMatchParameters. +func (in *ConditionSourceIPGeoIPMatchParameters) DeepCopy() *ConditionSourceIPGeoIPMatchParameters { if in == nil { return nil } - out := new(HTTPMethodParameters) + out := new(ConditionSourceIPGeoIPMatchParameters) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *HTTPMethodsInitParameters) DeepCopyInto(out *HTTPMethodsInitParameters) { +func (in *ConditionSourceIPGeoIPNotMatchInitParameters) DeepCopyInto(out *ConditionSourceIPGeoIPNotMatchInitParameters) { *out = *in - if in.ExactMatch != nil { - in, out := &in.ExactMatch, &out.ExactMatch - *out = new(string) - **out = **in + if in.Locations != nil { + in, out := &in.Locations, &out.Locations + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } } - if in.ExactNotMatch != nil { - in, out := &in.ExactNotMatch, &out.ExactNotMatch - *out = new(string) - **out = **in +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ConditionSourceIPGeoIPNotMatchInitParameters. +func (in *ConditionSourceIPGeoIPNotMatchInitParameters) DeepCopy() *ConditionSourceIPGeoIPNotMatchInitParameters { + if in == nil { + return nil } - if in.PireRegexMatch != nil { - in, out := &in.PireRegexMatch, &out.PireRegexMatch - *out = new(string) - **out = **in - } - if in.PireRegexNotMatch != nil { - in, out := &in.PireRegexNotMatch, &out.PireRegexNotMatch - *out = new(string) - **out = **in - } - if in.PrefixMatch != nil { - in, out := &in.PrefixMatch, &out.PrefixMatch - *out = new(string) - **out = **in - } - if in.PrefixNotMatch != nil { - in, out := &in.PrefixNotMatch, &out.PrefixNotMatch - *out = new(string) - **out = **in + out := new(ConditionSourceIPGeoIPNotMatchInitParameters) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *ConditionSourceIPGeoIPNotMatchObservation) DeepCopyInto(out *ConditionSourceIPGeoIPNotMatchObservation) { + *out = *in + if in.Locations != nil { + in, out := &in.Locations, &out.Locations + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new HTTPMethodsInitParameters. -func (in *HTTPMethodsInitParameters) DeepCopy() *HTTPMethodsInitParameters { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ConditionSourceIPGeoIPNotMatchObservation. +func (in *ConditionSourceIPGeoIPNotMatchObservation) DeepCopy() *ConditionSourceIPGeoIPNotMatchObservation { if in == nil { return nil } - out := new(HTTPMethodsInitParameters) + out := new(ConditionSourceIPGeoIPNotMatchObservation) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *HTTPMethodsObservation) DeepCopyInto(out *HTTPMethodsObservation) { +func (in *ConditionSourceIPGeoIPNotMatchParameters) DeepCopyInto(out *ConditionSourceIPGeoIPNotMatchParameters) { *out = *in - if in.ExactMatch != nil { - in, out := &in.ExactMatch, &out.ExactMatch - *out = new(string) - **out = **in - } - if in.ExactNotMatch != nil { - in, out := &in.ExactNotMatch, &out.ExactNotMatch - *out = new(string) - **out = **in - } - if in.PireRegexMatch != nil { - in, out := &in.PireRegexMatch, &out.PireRegexMatch - *out = new(string) - **out = **in - } - if in.PireRegexNotMatch != nil { - in, out := &in.PireRegexNotMatch, &out.PireRegexNotMatch - *out = new(string) - **out = **in - } - if in.PrefixMatch != nil { - in, out := &in.PrefixMatch, &out.PrefixMatch - *out = new(string) - **out = **in - } - if in.PrefixNotMatch != nil { - in, out := &in.PrefixNotMatch, &out.PrefixNotMatch - *out = new(string) - **out = **in + if in.Locations != nil { + in, out := &in.Locations, &out.Locations + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new HTTPMethodsObservation. -func (in *HTTPMethodsObservation) DeepCopy() *HTTPMethodsObservation { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ConditionSourceIPGeoIPNotMatchParameters. +func (in *ConditionSourceIPGeoIPNotMatchParameters) DeepCopy() *ConditionSourceIPGeoIPNotMatchParameters { if in == nil { return nil } - out := new(HTTPMethodsObservation) + out := new(ConditionSourceIPGeoIPNotMatchParameters) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *HTTPMethodsParameters) DeepCopyInto(out *HTTPMethodsParameters) { +func (in *ConditionSourceIPIPRangesMatchInitParameters) DeepCopyInto(out *ConditionSourceIPIPRangesMatchInitParameters) { *out = *in - if in.ExactMatch != nil { - in, out := &in.ExactMatch, &out.ExactMatch - *out = new(string) - **out = **in - } - if in.ExactNotMatch != nil { - in, out := &in.ExactNotMatch, &out.ExactNotMatch - *out = new(string) - **out = **in - } - if in.PireRegexMatch != nil { - in, out := &in.PireRegexMatch, &out.PireRegexMatch - *out = new(string) - **out = **in - } - if in.PireRegexNotMatch != nil { - in, out := &in.PireRegexNotMatch, &out.PireRegexNotMatch - *out = new(string) - **out = **in - } - if in.PrefixMatch != nil { - in, out := &in.PrefixMatch, &out.PrefixMatch - *out = new(string) - **out = **in - } - if in.PrefixNotMatch != nil { - in, out := &in.PrefixNotMatch, &out.PrefixNotMatch - *out = new(string) - **out = **in + if in.IPRanges != nil { + in, out := &in.IPRanges, &out.IPRanges + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new HTTPMethodsParameters. -func (in *HTTPMethodsParameters) DeepCopy() *HTTPMethodsParameters { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ConditionSourceIPIPRangesMatchInitParameters. +func (in *ConditionSourceIPIPRangesMatchInitParameters) DeepCopy() *ConditionSourceIPIPRangesMatchInitParameters { if in == nil { return nil } - out := new(HTTPMethodsParameters) + out := new(ConditionSourceIPIPRangesMatchInitParameters) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *HeadersInitParameters) DeepCopyInto(out *HeadersInitParameters) { +func (in *ConditionSourceIPIPRangesMatchObservation) DeepCopyInto(out *ConditionSourceIPIPRangesMatchObservation) { *out = *in - if in.Name != nil { - in, out := &in.Name, &out.Name - *out = new(string) - **out = **in - } - if in.Value != nil { - in, out := &in.Value, &out.Value - *out = make([]ValueInitParameters, len(*in)) + if in.IPRanges != nil { + in, out := &in.IPRanges, &out.IPRanges + *out = make([]*string, len(*in)) for i := range *in { - (*in)[i].DeepCopyInto(&(*out)[i]) + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } } } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new HeadersInitParameters. -func (in *HeadersInitParameters) DeepCopy() *HeadersInitParameters { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ConditionSourceIPIPRangesMatchObservation. +func (in *ConditionSourceIPIPRangesMatchObservation) DeepCopy() *ConditionSourceIPIPRangesMatchObservation { if in == nil { return nil } - out := new(HeadersInitParameters) + out := new(ConditionSourceIPIPRangesMatchObservation) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *HeadersObservation) DeepCopyInto(out *HeadersObservation) { +func (in *ConditionSourceIPIPRangesMatchParameters) DeepCopyInto(out *ConditionSourceIPIPRangesMatchParameters) { *out = *in - if in.Name != nil { - in, out := &in.Name, &out.Name - *out = new(string) - **out = **in - } - if in.Value != nil { - in, out := &in.Value, &out.Value - *out = make([]ValueObservation, len(*in)) + if in.IPRanges != nil { + in, out := &in.IPRanges, &out.IPRanges + *out = make([]*string, len(*in)) for i := range *in { - (*in)[i].DeepCopyInto(&(*out)[i]) + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } } } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new HeadersObservation. -func (in *HeadersObservation) DeepCopy() *HeadersObservation { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ConditionSourceIPIPRangesMatchParameters. +func (in *ConditionSourceIPIPRangesMatchParameters) DeepCopy() *ConditionSourceIPIPRangesMatchParameters { if in == nil { return nil } - out := new(HeadersObservation) + out := new(ConditionSourceIPIPRangesMatchParameters) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *HeadersParameters) DeepCopyInto(out *HeadersParameters) { +func (in *ConditionSourceIPIPRangesNotMatchInitParameters) DeepCopyInto(out *ConditionSourceIPIPRangesNotMatchInitParameters) { *out = *in - if in.Name != nil { - in, out := &in.Name, &out.Name - *out = new(string) - **out = **in - } - if in.Value != nil { - in, out := &in.Value, &out.Value - *out = make([]ValueParameters, len(*in)) + if in.IPRanges != nil { + in, out := &in.IPRanges, &out.IPRanges + *out = make([]*string, len(*in)) for i := range *in { - (*in)[i].DeepCopyInto(&(*out)[i]) + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } } } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new HeadersParameters. -func (in *HeadersParameters) DeepCopy() *HeadersParameters { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ConditionSourceIPIPRangesNotMatchInitParameters. +func (in *ConditionSourceIPIPRangesNotMatchInitParameters) DeepCopy() *ConditionSourceIPIPRangesNotMatchInitParameters { if in == nil { return nil } - out := new(HeadersParameters) + out := new(ConditionSourceIPIPRangesNotMatchInitParameters) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *HeadersValueInitParameters) DeepCopyInto(out *HeadersValueInitParameters) { +func (in *ConditionSourceIPIPRangesNotMatchObservation) DeepCopyInto(out *ConditionSourceIPIPRangesNotMatchObservation) { *out = *in - if in.ExactMatch != nil { - in, out := &in.ExactMatch, &out.ExactMatch - *out = new(string) - **out = **in - } - if in.ExactNotMatch != nil { - in, out := &in.ExactNotMatch, &out.ExactNotMatch - *out = new(string) - **out = **in - } - if in.PireRegexMatch != nil { - in, out := &in.PireRegexMatch, &out.PireRegexMatch - *out = new(string) - **out = **in - } - if in.PireRegexNotMatch != nil { - in, out := &in.PireRegexNotMatch, &out.PireRegexNotMatch - *out = new(string) - **out = **in + if in.IPRanges != nil { + in, out := &in.IPRanges, &out.IPRanges + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } } - if in.PrefixMatch != nil { - in, out := &in.PrefixMatch, &out.PrefixMatch - *out = new(string) - **out = **in +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ConditionSourceIPIPRangesNotMatchObservation. +func (in *ConditionSourceIPIPRangesNotMatchObservation) DeepCopy() *ConditionSourceIPIPRangesNotMatchObservation { + if in == nil { + return nil } - if in.PrefixNotMatch != nil { - in, out := &in.PrefixNotMatch, &out.PrefixNotMatch - *out = new(string) - **out = **in + out := new(ConditionSourceIPIPRangesNotMatchObservation) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *ConditionSourceIPIPRangesNotMatchParameters) DeepCopyInto(out *ConditionSourceIPIPRangesNotMatchParameters) { + *out = *in + if in.IPRanges != nil { + in, out := &in.IPRanges, &out.IPRanges + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new HeadersValueInitParameters. -func (in *HeadersValueInitParameters) DeepCopy() *HeadersValueInitParameters { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ConditionSourceIPIPRangesNotMatchParameters. +func (in *ConditionSourceIPIPRangesNotMatchParameters) DeepCopy() *ConditionSourceIPIPRangesNotMatchParameters { if in == nil { return nil } - out := new(HeadersValueInitParameters) + out := new(ConditionSourceIPIPRangesNotMatchParameters) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *HeadersValueObservation) DeepCopyInto(out *HeadersValueObservation) { +func (in *ConditionSourceIPInitParameters) DeepCopyInto(out *ConditionSourceIPInitParameters) { *out = *in - if in.ExactMatch != nil { - in, out := &in.ExactMatch, &out.ExactMatch - *out = new(string) - **out = **in + if in.GeoIPMatch != nil { + in, out := &in.GeoIPMatch, &out.GeoIPMatch + *out = make([]SourceIPGeoIPMatchInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } } - if in.ExactNotMatch != nil { - in, out := &in.ExactNotMatch, &out.ExactNotMatch - *out = new(string) - **out = **in - } - if in.PireRegexMatch != nil { - in, out := &in.PireRegexMatch, &out.PireRegexMatch - *out = new(string) - **out = **in - } - if in.PireRegexNotMatch != nil { - in, out := &in.PireRegexNotMatch, &out.PireRegexNotMatch - *out = new(string) - **out = **in + if in.GeoIPNotMatch != nil { + in, out := &in.GeoIPNotMatch, &out.GeoIPNotMatch + *out = make([]SourceIPGeoIPNotMatchInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } } - if in.PrefixMatch != nil { - in, out := &in.PrefixMatch, &out.PrefixMatch - *out = new(string) - **out = **in + if in.IPRangesMatch != nil { + in, out := &in.IPRangesMatch, &out.IPRangesMatch + *out = make([]SourceIPIPRangesMatchInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } } - if in.PrefixNotMatch != nil { - in, out := &in.PrefixNotMatch, &out.PrefixNotMatch - *out = new(string) - **out = **in + if in.IPRangesNotMatch != nil { + in, out := &in.IPRangesNotMatch, &out.IPRangesNotMatch + *out = make([]SourceIPIPRangesNotMatchInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new HeadersValueObservation. -func (in *HeadersValueObservation) DeepCopy() *HeadersValueObservation { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ConditionSourceIPInitParameters. +func (in *ConditionSourceIPInitParameters) DeepCopy() *ConditionSourceIPInitParameters { if in == nil { return nil } - out := new(HeadersValueObservation) + out := new(ConditionSourceIPInitParameters) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *HeadersValueParameters) DeepCopyInto(out *HeadersValueParameters) { +func (in *ConditionSourceIPObservation) DeepCopyInto(out *ConditionSourceIPObservation) { *out = *in - if in.ExactMatch != nil { - in, out := &in.ExactMatch, &out.ExactMatch - *out = new(string) - **out = **in + if in.GeoIPMatch != nil { + in, out := &in.GeoIPMatch, &out.GeoIPMatch + *out = make([]SourceIPGeoIPMatchObservation, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } } - if in.ExactNotMatch != nil { - in, out := &in.ExactNotMatch, &out.ExactNotMatch - *out = new(string) - **out = **in + if in.GeoIPNotMatch != nil { + in, out := &in.GeoIPNotMatch, &out.GeoIPNotMatch + *out = make([]SourceIPGeoIPNotMatchObservation, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } } - if in.PireRegexMatch != nil { - in, out := &in.PireRegexMatch, &out.PireRegexMatch - *out = new(string) - **out = **in + if in.IPRangesMatch != nil { + in, out := &in.IPRangesMatch, &out.IPRangesMatch + *out = make([]SourceIPIPRangesMatchObservation, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } } - if in.PireRegexNotMatch != nil { - in, out := &in.PireRegexNotMatch, &out.PireRegexNotMatch - *out = new(string) - **out = **in + if in.IPRangesNotMatch != nil { + in, out := &in.IPRangesNotMatch, &out.IPRangesNotMatch + *out = make([]SourceIPIPRangesNotMatchObservation, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } } - if in.PrefixMatch != nil { - in, out := &in.PrefixMatch, &out.PrefixMatch - *out = new(string) - **out = **in +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ConditionSourceIPObservation. +func (in *ConditionSourceIPObservation) DeepCopy() *ConditionSourceIPObservation { + if in == nil { + return nil } - if in.PrefixNotMatch != nil { - in, out := &in.PrefixNotMatch, &out.PrefixNotMatch - *out = new(string) - **out = **in + out := new(ConditionSourceIPObservation) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *ConditionSourceIPParameters) DeepCopyInto(out *ConditionSourceIPParameters) { + *out = *in + if in.GeoIPMatch != nil { + in, out := &in.GeoIPMatch, &out.GeoIPMatch + *out = make([]SourceIPGeoIPMatchParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.GeoIPNotMatch != nil { + in, out := &in.GeoIPNotMatch, &out.GeoIPNotMatch + *out = make([]SourceIPGeoIPNotMatchParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.IPRangesMatch != nil { + in, out := &in.IPRangesMatch, &out.IPRangesMatch + *out = make([]SourceIPIPRangesMatchParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.IPRangesNotMatch != nil { + in, out := &in.IPRangesNotMatch, &out.IPRangesNotMatch + *out = make([]SourceIPIPRangesNotMatchParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new HeadersValueParameters. -func (in *HeadersValueParameters) DeepCopy() *HeadersValueParameters { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ConditionSourceIPParameters. +func (in *ConditionSourceIPParameters) DeepCopy() *ConditionSourceIPParameters { if in == nil { return nil } - out := new(HeadersValueParameters) + out := new(ConditionSourceIPParameters) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *IPRangesMatchInitParameters) DeepCopyInto(out *IPRangesMatchInitParameters) { +func (in *GeoIPMatchInitParameters) DeepCopyInto(out *GeoIPMatchInitParameters) { *out = *in - if in.IPRanges != nil { - in, out := &in.IPRanges, &out.IPRanges + if in.Locations != nil { + in, out := &in.Locations, &out.Locations *out = make([]*string, len(*in)) for i := range *in { if (*in)[i] != nil { @@ -1648,21 +2008,21 @@ func (in *IPRangesMatchInitParameters) DeepCopyInto(out *IPRangesMatchInitParame } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new IPRangesMatchInitParameters. -func (in *IPRangesMatchInitParameters) DeepCopy() *IPRangesMatchInitParameters { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new GeoIPMatchInitParameters. +func (in *GeoIPMatchInitParameters) DeepCopy() *GeoIPMatchInitParameters { if in == nil { return nil } - out := new(IPRangesMatchInitParameters) + out := new(GeoIPMatchInitParameters) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *IPRangesMatchObservation) DeepCopyInto(out *IPRangesMatchObservation) { +func (in *GeoIPMatchObservation) DeepCopyInto(out *GeoIPMatchObservation) { *out = *in - if in.IPRanges != nil { - in, out := &in.IPRanges, &out.IPRanges + if in.Locations != nil { + in, out := &in.Locations, &out.Locations *out = make([]*string, len(*in)) for i := range *in { if (*in)[i] != nil { @@ -1674,21 +2034,21 @@ func (in *IPRangesMatchObservation) DeepCopyInto(out *IPRangesMatchObservation) } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new IPRangesMatchObservation. -func (in *IPRangesMatchObservation) DeepCopy() *IPRangesMatchObservation { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new GeoIPMatchObservation. +func (in *GeoIPMatchObservation) DeepCopy() *GeoIPMatchObservation { if in == nil { return nil } - out := new(IPRangesMatchObservation) + out := new(GeoIPMatchObservation) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *IPRangesMatchParameters) DeepCopyInto(out *IPRangesMatchParameters) { +func (in *GeoIPMatchParameters) DeepCopyInto(out *GeoIPMatchParameters) { *out = *in - if in.IPRanges != nil { - in, out := &in.IPRanges, &out.IPRanges + if in.Locations != nil { + in, out := &in.Locations, &out.Locations *out = make([]*string, len(*in)) for i := range *in { if (*in)[i] != nil { @@ -1700,21 +2060,21 @@ func (in *IPRangesMatchParameters) DeepCopyInto(out *IPRangesMatchParameters) { } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new IPRangesMatchParameters. -func (in *IPRangesMatchParameters) DeepCopy() *IPRangesMatchParameters { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new GeoIPMatchParameters. +func (in *GeoIPMatchParameters) DeepCopy() *GeoIPMatchParameters { if in == nil { return nil } - out := new(IPRangesMatchParameters) + out := new(GeoIPMatchParameters) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *IPRangesNotMatchInitParameters) DeepCopyInto(out *IPRangesNotMatchInitParameters) { +func (in *GeoIPNotMatchInitParameters) DeepCopyInto(out *GeoIPNotMatchInitParameters) { *out = *in - if in.IPRanges != nil { - in, out := &in.IPRanges, &out.IPRanges + if in.Locations != nil { + in, out := &in.Locations, &out.Locations *out = make([]*string, len(*in)) for i := range *in { if (*in)[i] != nil { @@ -1726,21 +2086,21 @@ func (in *IPRangesNotMatchInitParameters) DeepCopyInto(out *IPRangesNotMatchInit } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new IPRangesNotMatchInitParameters. -func (in *IPRangesNotMatchInitParameters) DeepCopy() *IPRangesNotMatchInitParameters { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new GeoIPNotMatchInitParameters. +func (in *GeoIPNotMatchInitParameters) DeepCopy() *GeoIPNotMatchInitParameters { if in == nil { return nil } - out := new(IPRangesNotMatchInitParameters) + out := new(GeoIPNotMatchInitParameters) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *IPRangesNotMatchObservation) DeepCopyInto(out *IPRangesNotMatchObservation) { +func (in *GeoIPNotMatchObservation) DeepCopyInto(out *GeoIPNotMatchObservation) { *out = *in - if in.IPRanges != nil { - in, out := &in.IPRanges, &out.IPRanges + if in.Locations != nil { + in, out := &in.Locations, &out.Locations *out = make([]*string, len(*in)) for i := range *in { if (*in)[i] != nil { @@ -1752,21 +2112,21 @@ func (in *IPRangesNotMatchObservation) DeepCopyInto(out *IPRangesNotMatchObserva } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new IPRangesNotMatchObservation. -func (in *IPRangesNotMatchObservation) DeepCopy() *IPRangesNotMatchObservation { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new GeoIPNotMatchObservation. +func (in *GeoIPNotMatchObservation) DeepCopy() *GeoIPNotMatchObservation { if in == nil { return nil } - out := new(IPRangesNotMatchObservation) + out := new(GeoIPNotMatchObservation) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *IPRangesNotMatchParameters) DeepCopyInto(out *IPRangesNotMatchParameters) { +func (in *GeoIPNotMatchParameters) DeepCopyInto(out *GeoIPNotMatchParameters) { *out = *in - if in.IPRanges != nil { - in, out := &in.IPRanges, &out.IPRanges + if in.Locations != nil { + in, out := &in.Locations, &out.Locations *out = make([]*string, len(*in)) for i := range *in { if (*in)[i] != nil { @@ -1778,18 +2138,18 @@ func (in *IPRangesNotMatchParameters) DeepCopyInto(out *IPRangesNotMatchParamete } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new IPRangesNotMatchParameters. -func (in *IPRangesNotMatchParameters) DeepCopy() *IPRangesNotMatchParameters { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new GeoIPNotMatchParameters. +func (in *GeoIPNotMatchParameters) DeepCopy() *GeoIPNotMatchParameters { if in == nil { return nil } - out := new(IPRangesNotMatchParameters) + out := new(GeoIPNotMatchParameters) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *PathInitParameters) DeepCopyInto(out *PathInitParameters) { +func (in *HTTPMethodHTTPMethodsInitParameters) DeepCopyInto(out *HTTPMethodHTTPMethodsInitParameters) { *out = *in if in.ExactMatch != nil { in, out := &in.ExactMatch, &out.ExactMatch @@ -1823,18 +2183,18 @@ func (in *PathInitParameters) DeepCopyInto(out *PathInitParameters) { } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PathInitParameters. -func (in *PathInitParameters) DeepCopy() *PathInitParameters { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new HTTPMethodHTTPMethodsInitParameters. +func (in *HTTPMethodHTTPMethodsInitParameters) DeepCopy() *HTTPMethodHTTPMethodsInitParameters { if in == nil { return nil } - out := new(PathInitParameters) + out := new(HTTPMethodHTTPMethodsInitParameters) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *PathObservation) DeepCopyInto(out *PathObservation) { +func (in *HTTPMethodHTTPMethodsObservation) DeepCopyInto(out *HTTPMethodHTTPMethodsObservation) { *out = *in if in.ExactMatch != nil { in, out := &in.ExactMatch, &out.ExactMatch @@ -1868,18 +2228,18 @@ func (in *PathObservation) DeepCopyInto(out *PathObservation) { } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PathObservation. -func (in *PathObservation) DeepCopy() *PathObservation { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new HTTPMethodHTTPMethodsObservation. +func (in *HTTPMethodHTTPMethodsObservation) DeepCopy() *HTTPMethodHTTPMethodsObservation { if in == nil { return nil } - out := new(PathObservation) + out := new(HTTPMethodHTTPMethodsObservation) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *PathParameters) DeepCopyInto(out *PathParameters) { +func (in *HTTPMethodHTTPMethodsParameters) DeepCopyInto(out *HTTPMethodHTTPMethodsParameters) { *out = *in if in.ExactMatch != nil { in, out := &in.ExactMatch, &out.ExactMatch @@ -1913,99 +2273,84 @@ func (in *PathParameters) DeepCopyInto(out *PathParameters) { } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PathParameters. -func (in *PathParameters) DeepCopy() *PathParameters { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new HTTPMethodHTTPMethodsParameters. +func (in *HTTPMethodHTTPMethodsParameters) DeepCopy() *HTTPMethodHTTPMethodsParameters { if in == nil { return nil } - out := new(PathParameters) + out := new(HTTPMethodHTTPMethodsParameters) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *QueriesInitParameters) DeepCopyInto(out *QueriesInitParameters) { +func (in *HTTPMethodInitParameters) DeepCopyInto(out *HTTPMethodInitParameters) { *out = *in - if in.Key != nil { - in, out := &in.Key, &out.Key - *out = new(string) - **out = **in - } - if in.Value != nil { - in, out := &in.Value, &out.Value - *out = make([]QueriesValueInitParameters, len(*in)) + if in.HTTPMethods != nil { + in, out := &in.HTTPMethods, &out.HTTPMethods + *out = make([]HTTPMethodsInitParameters, len(*in)) for i := range *in { (*in)[i].DeepCopyInto(&(*out)[i]) } } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new QueriesInitParameters. -func (in *QueriesInitParameters) DeepCopy() *QueriesInitParameters { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new HTTPMethodInitParameters. +func (in *HTTPMethodInitParameters) DeepCopy() *HTTPMethodInitParameters { if in == nil { return nil } - out := new(QueriesInitParameters) + out := new(HTTPMethodInitParameters) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *QueriesObservation) DeepCopyInto(out *QueriesObservation) { +func (in *HTTPMethodObservation) DeepCopyInto(out *HTTPMethodObservation) { *out = *in - if in.Key != nil { - in, out := &in.Key, &out.Key - *out = new(string) - **out = **in - } - if in.Value != nil { - in, out := &in.Value, &out.Value - *out = make([]QueriesValueObservation, len(*in)) + if in.HTTPMethods != nil { + in, out := &in.HTTPMethods, &out.HTTPMethods + *out = make([]HTTPMethodsObservation, len(*in)) for i := range *in { (*in)[i].DeepCopyInto(&(*out)[i]) } } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new QueriesObservation. -func (in *QueriesObservation) DeepCopy() *QueriesObservation { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new HTTPMethodObservation. +func (in *HTTPMethodObservation) DeepCopy() *HTTPMethodObservation { if in == nil { return nil } - out := new(QueriesObservation) + out := new(HTTPMethodObservation) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *QueriesParameters) DeepCopyInto(out *QueriesParameters) { +func (in *HTTPMethodParameters) DeepCopyInto(out *HTTPMethodParameters) { *out = *in - if in.Key != nil { - in, out := &in.Key, &out.Key - *out = new(string) - **out = **in - } - if in.Value != nil { - in, out := &in.Value, &out.Value - *out = make([]QueriesValueParameters, len(*in)) + if in.HTTPMethods != nil { + in, out := &in.HTTPMethods, &out.HTTPMethods + *out = make([]HTTPMethodsParameters, len(*in)) for i := range *in { (*in)[i].DeepCopyInto(&(*out)[i]) } } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new QueriesParameters. -func (in *QueriesParameters) DeepCopy() *QueriesParameters { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new HTTPMethodParameters. +func (in *HTTPMethodParameters) DeepCopy() *HTTPMethodParameters { if in == nil { return nil } - out := new(QueriesParameters) + out := new(HTTPMethodParameters) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *QueriesValueInitParameters) DeepCopyInto(out *QueriesValueInitParameters) { +func (in *HTTPMethodsInitParameters) DeepCopyInto(out *HTTPMethodsInitParameters) { *out = *in if in.ExactMatch != nil { in, out := &in.ExactMatch, &out.ExactMatch @@ -2039,18 +2384,18 @@ func (in *QueriesValueInitParameters) DeepCopyInto(out *QueriesValueInitParamete } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new QueriesValueInitParameters. -func (in *QueriesValueInitParameters) DeepCopy() *QueriesValueInitParameters { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new HTTPMethodsInitParameters. +func (in *HTTPMethodsInitParameters) DeepCopy() *HTTPMethodsInitParameters { if in == nil { return nil } - out := new(QueriesValueInitParameters) + out := new(HTTPMethodsInitParameters) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *QueriesValueObservation) DeepCopyInto(out *QueriesValueObservation) { +func (in *HTTPMethodsObservation) DeepCopyInto(out *HTTPMethodsObservation) { *out = *in if in.ExactMatch != nil { in, out := &in.ExactMatch, &out.ExactMatch @@ -2084,18 +2429,18 @@ func (in *QueriesValueObservation) DeepCopyInto(out *QueriesValueObservation) { } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new QueriesValueObservation. -func (in *QueriesValueObservation) DeepCopy() *QueriesValueObservation { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new HTTPMethodsObservation. +func (in *HTTPMethodsObservation) DeepCopy() *HTTPMethodsObservation { if in == nil { return nil } - out := new(QueriesValueObservation) + out := new(HTTPMethodsObservation) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *QueriesValueParameters) DeepCopyInto(out *QueriesValueParameters) { +func (in *HTTPMethodsParameters) DeepCopyInto(out *HTTPMethodsParameters) { *out = *in if in.ExactMatch != nil { in, out := &in.ExactMatch, &out.ExactMatch @@ -2129,105 +2474,99 @@ func (in *QueriesValueParameters) DeepCopyInto(out *QueriesValueParameters) { } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new QueriesValueParameters. -func (in *QueriesValueParameters) DeepCopy() *QueriesValueParameters { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new HTTPMethodsParameters. +func (in *HTTPMethodsParameters) DeepCopy() *HTTPMethodsParameters { if in == nil { return nil } - out := new(QueriesValueParameters) + out := new(HTTPMethodsParameters) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *RequestURIInitParameters) DeepCopyInto(out *RequestURIInitParameters) { +func (in *HeadersInitParameters) DeepCopyInto(out *HeadersInitParameters) { *out = *in - if in.Path != nil { - in, out := &in.Path, &out.Path - *out = make([]PathInitParameters, len(*in)) - for i := range *in { - (*in)[i].DeepCopyInto(&(*out)[i]) - } + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in } - if in.Queries != nil { - in, out := &in.Queries, &out.Queries - *out = make([]QueriesInitParameters, len(*in)) + if in.Value != nil { + in, out := &in.Value, &out.Value + *out = make([]ValueInitParameters, len(*in)) for i := range *in { (*in)[i].DeepCopyInto(&(*out)[i]) } } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RequestURIInitParameters. -func (in *RequestURIInitParameters) DeepCopy() *RequestURIInitParameters { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new HeadersInitParameters. +func (in *HeadersInitParameters) DeepCopy() *HeadersInitParameters { if in == nil { return nil } - out := new(RequestURIInitParameters) + out := new(HeadersInitParameters) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *RequestURIObservation) DeepCopyInto(out *RequestURIObservation) { +func (in *HeadersObservation) DeepCopyInto(out *HeadersObservation) { *out = *in - if in.Path != nil { - in, out := &in.Path, &out.Path - *out = make([]PathObservation, len(*in)) - for i := range *in { - (*in)[i].DeepCopyInto(&(*out)[i]) - } + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in } - if in.Queries != nil { - in, out := &in.Queries, &out.Queries - *out = make([]QueriesObservation, len(*in)) + if in.Value != nil { + in, out := &in.Value, &out.Value + *out = make([]ValueObservation, len(*in)) for i := range *in { (*in)[i].DeepCopyInto(&(*out)[i]) } } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RequestURIObservation. -func (in *RequestURIObservation) DeepCopy() *RequestURIObservation { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new HeadersObservation. +func (in *HeadersObservation) DeepCopy() *HeadersObservation { if in == nil { return nil } - out := new(RequestURIObservation) + out := new(HeadersObservation) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *RequestURIParameters) DeepCopyInto(out *RequestURIParameters) { +func (in *HeadersParameters) DeepCopyInto(out *HeadersParameters) { *out = *in - if in.Path != nil { - in, out := &in.Path, &out.Path - *out = make([]PathParameters, len(*in)) - for i := range *in { - (*in)[i].DeepCopyInto(&(*out)[i]) - } + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in } - if in.Queries != nil { - in, out := &in.Queries, &out.Queries - *out = make([]QueriesParameters, len(*in)) + if in.Value != nil { + in, out := &in.Value, &out.Value + *out = make([]ValueParameters, len(*in)) for i := range *in { (*in)[i].DeepCopyInto(&(*out)[i]) } } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RequestURIParameters. -func (in *RequestURIParameters) DeepCopy() *RequestURIParameters { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new HeadersParameters. +func (in *HeadersParameters) DeepCopy() *HeadersParameters { if in == nil { return nil } - out := new(RequestURIParameters) + out := new(HeadersParameters) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *RequestURIPathInitParameters) DeepCopyInto(out *RequestURIPathInitParameters) { +func (in *HeadersValueInitParameters) DeepCopyInto(out *HeadersValueInitParameters) { *out = *in if in.ExactMatch != nil { in, out := &in.ExactMatch, &out.ExactMatch @@ -2261,18 +2600,18 @@ func (in *RequestURIPathInitParameters) DeepCopyInto(out *RequestURIPathInitPara } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RequestURIPathInitParameters. -func (in *RequestURIPathInitParameters) DeepCopy() *RequestURIPathInitParameters { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new HeadersValueInitParameters. +func (in *HeadersValueInitParameters) DeepCopy() *HeadersValueInitParameters { if in == nil { return nil } - out := new(RequestURIPathInitParameters) + out := new(HeadersValueInitParameters) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *RequestURIPathObservation) DeepCopyInto(out *RequestURIPathObservation) { +func (in *HeadersValueObservation) DeepCopyInto(out *HeadersValueObservation) { *out = *in if in.ExactMatch != nil { in, out := &in.ExactMatch, &out.ExactMatch @@ -2306,18 +2645,18 @@ func (in *RequestURIPathObservation) DeepCopyInto(out *RequestURIPathObservation } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RequestURIPathObservation. -func (in *RequestURIPathObservation) DeepCopy() *RequestURIPathObservation { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new HeadersValueObservation. +func (in *HeadersValueObservation) DeepCopy() *HeadersValueObservation { if in == nil { return nil } - out := new(RequestURIPathObservation) + out := new(HeadersValueObservation) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *RequestURIPathParameters) DeepCopyInto(out *RequestURIPathParameters) { +func (in *HeadersValueParameters) DeepCopyInto(out *HeadersValueParameters) { *out = *in if in.ExactMatch != nil { in, out := &in.ExactMatch, &out.ExactMatch @@ -2351,109 +2690,184 @@ func (in *RequestURIPathParameters) DeepCopyInto(out *RequestURIPathParameters) } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RequestURIPathParameters. -func (in *RequestURIPathParameters) DeepCopy() *RequestURIPathParameters { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new HeadersValueParameters. +func (in *HeadersValueParameters) DeepCopy() *HeadersValueParameters { if in == nil { return nil } - out := new(RequestURIPathParameters) + out := new(HeadersValueParameters) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *RequestURIQueriesInitParameters) DeepCopyInto(out *RequestURIQueriesInitParameters) { +func (in *IPRangesMatchInitParameters) DeepCopyInto(out *IPRangesMatchInitParameters) { *out = *in - if in.Key != nil { - in, out := &in.Key, &out.Key - *out = new(string) - **out = **in - } - if in.Value != nil { - in, out := &in.Value, &out.Value - *out = make([]RequestURIQueriesValueInitParameters, len(*in)) + if in.IPRanges != nil { + in, out := &in.IPRanges, &out.IPRanges + *out = make([]*string, len(*in)) for i := range *in { - (*in)[i].DeepCopyInto(&(*out)[i]) + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } } } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RequestURIQueriesInitParameters. -func (in *RequestURIQueriesInitParameters) DeepCopy() *RequestURIQueriesInitParameters { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new IPRangesMatchInitParameters. +func (in *IPRangesMatchInitParameters) DeepCopy() *IPRangesMatchInitParameters { if in == nil { return nil } - out := new(RequestURIQueriesInitParameters) + out := new(IPRangesMatchInitParameters) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *RequestURIQueriesObservation) DeepCopyInto(out *RequestURIQueriesObservation) { +func (in *IPRangesMatchObservation) DeepCopyInto(out *IPRangesMatchObservation) { *out = *in - if in.Key != nil { - in, out := &in.Key, &out.Key - *out = new(string) - **out = **in - } - if in.Value != nil { - in, out := &in.Value, &out.Value - *out = make([]RequestURIQueriesValueObservation, len(*in)) + if in.IPRanges != nil { + in, out := &in.IPRanges, &out.IPRanges + *out = make([]*string, len(*in)) for i := range *in { - (*in)[i].DeepCopyInto(&(*out)[i]) + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } } } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RequestURIQueriesObservation. -func (in *RequestURIQueriesObservation) DeepCopy() *RequestURIQueriesObservation { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new IPRangesMatchObservation. +func (in *IPRangesMatchObservation) DeepCopy() *IPRangesMatchObservation { if in == nil { return nil } - out := new(RequestURIQueriesObservation) + out := new(IPRangesMatchObservation) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *RequestURIQueriesParameters) DeepCopyInto(out *RequestURIQueriesParameters) { +func (in *IPRangesMatchParameters) DeepCopyInto(out *IPRangesMatchParameters) { *out = *in - if in.Key != nil { - in, out := &in.Key, &out.Key - *out = new(string) - **out = **in - } - if in.Value != nil { - in, out := &in.Value, &out.Value - *out = make([]RequestURIQueriesValueParameters, len(*in)) + if in.IPRanges != nil { + in, out := &in.IPRanges, &out.IPRanges + *out = make([]*string, len(*in)) for i := range *in { - (*in)[i].DeepCopyInto(&(*out)[i]) + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } } } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RequestURIQueriesParameters. -func (in *RequestURIQueriesParameters) DeepCopy() *RequestURIQueriesParameters { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new IPRangesMatchParameters. +func (in *IPRangesMatchParameters) DeepCopy() *IPRangesMatchParameters { if in == nil { return nil } - out := new(RequestURIQueriesParameters) + out := new(IPRangesMatchParameters) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *RequestURIQueriesValueInitParameters) DeepCopyInto(out *RequestURIQueriesValueInitParameters) { +func (in *IPRangesNotMatchInitParameters) DeepCopyInto(out *IPRangesNotMatchInitParameters) { *out = *in - if in.ExactMatch != nil { - in, out := &in.ExactMatch, &out.ExactMatch - *out = new(string) - **out = **in - } - if in.ExactNotMatch != nil { - in, out := &in.ExactNotMatch, &out.ExactNotMatch - *out = new(string) - **out = **in + if in.IPRanges != nil { + in, out := &in.IPRanges, &out.IPRanges + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new IPRangesNotMatchInitParameters. +func (in *IPRangesNotMatchInitParameters) DeepCopy() *IPRangesNotMatchInitParameters { + if in == nil { + return nil + } + out := new(IPRangesNotMatchInitParameters) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *IPRangesNotMatchObservation) DeepCopyInto(out *IPRangesNotMatchObservation) { + *out = *in + if in.IPRanges != nil { + in, out := &in.IPRanges, &out.IPRanges + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new IPRangesNotMatchObservation. +func (in *IPRangesNotMatchObservation) DeepCopy() *IPRangesNotMatchObservation { + if in == nil { + return nil + } + out := new(IPRangesNotMatchObservation) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *IPRangesNotMatchParameters) DeepCopyInto(out *IPRangesNotMatchParameters) { + *out = *in + if in.IPRanges != nil { + in, out := &in.IPRanges, &out.IPRanges + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new IPRangesNotMatchParameters. +func (in *IPRangesNotMatchParameters) DeepCopy() *IPRangesNotMatchParameters { + if in == nil { + return nil + } + out := new(IPRangesNotMatchParameters) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *PathInitParameters) DeepCopyInto(out *PathInitParameters) { + *out = *in + if in.ExactMatch != nil { + in, out := &in.ExactMatch, &out.ExactMatch + *out = new(string) + **out = **in + } + if in.ExactNotMatch != nil { + in, out := &in.ExactNotMatch, &out.ExactNotMatch + *out = new(string) + **out = **in } if in.PireRegexMatch != nil { in, out := &in.PireRegexMatch, &out.PireRegexMatch @@ -2477,18 +2891,18 @@ func (in *RequestURIQueriesValueInitParameters) DeepCopyInto(out *RequestURIQuer } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RequestURIQueriesValueInitParameters. -func (in *RequestURIQueriesValueInitParameters) DeepCopy() *RequestURIQueriesValueInitParameters { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PathInitParameters. +func (in *PathInitParameters) DeepCopy() *PathInitParameters { if in == nil { return nil } - out := new(RequestURIQueriesValueInitParameters) + out := new(PathInitParameters) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *RequestURIQueriesValueObservation) DeepCopyInto(out *RequestURIQueriesValueObservation) { +func (in *PathObservation) DeepCopyInto(out *PathObservation) { *out = *in if in.ExactMatch != nil { in, out := &in.ExactMatch, &out.ExactMatch @@ -2522,18 +2936,18 @@ func (in *RequestURIQueriesValueObservation) DeepCopyInto(out *RequestURIQueries } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RequestURIQueriesValueObservation. -func (in *RequestURIQueriesValueObservation) DeepCopy() *RequestURIQueriesValueObservation { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PathObservation. +func (in *PathObservation) DeepCopy() *PathObservation { if in == nil { return nil } - out := new(RequestURIQueriesValueObservation) + out := new(PathObservation) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *RequestURIQueriesValueParameters) DeepCopyInto(out *RequestURIQueriesValueParameters) { +func (in *PathParameters) DeepCopyInto(out *PathParameters) { *out = *in if in.ExactMatch != nil { in, out := &in.ExactMatch, &out.ExactMatch @@ -2567,1375 +2981,2740 @@ func (in *RequestURIQueriesValueParameters) DeepCopyInto(out *RequestURIQueriesV } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RequestURIQueriesValueParameters. -func (in *RequestURIQueriesValueParameters) DeepCopy() *RequestURIQueriesValueParameters { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PathParameters. +func (in *PathParameters) DeepCopy() *PathParameters { if in == nil { return nil } - out := new(RequestURIQueriesValueParameters) + out := new(PathParameters) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *RuleConditionInitParameters) DeepCopyInto(out *RuleConditionInitParameters) { +func (in *QueriesInitParameters) DeepCopyInto(out *QueriesInitParameters) { *out = *in - if in.Action != nil { - in, out := &in.Action, &out.Action + if in.Key != nil { + in, out := &in.Key, &out.Key *out = new(string) **out = **in } - if in.Condition != nil { - in, out := &in.Condition, &out.Condition - *out = make([]ConditionInitParameters, len(*in)) + if in.Value != nil { + in, out := &in.Value, &out.Value + *out = make([]QueriesValueInitParameters, len(*in)) for i := range *in { (*in)[i].DeepCopyInto(&(*out)[i]) } } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RuleConditionInitParameters. -func (in *RuleConditionInitParameters) DeepCopy() *RuleConditionInitParameters { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new QueriesInitParameters. +func (in *QueriesInitParameters) DeepCopy() *QueriesInitParameters { if in == nil { return nil } - out := new(RuleConditionInitParameters) + out := new(QueriesInitParameters) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *RuleConditionObservation) DeepCopyInto(out *RuleConditionObservation) { +func (in *QueriesObservation) DeepCopyInto(out *QueriesObservation) { *out = *in - if in.Action != nil { - in, out := &in.Action, &out.Action + if in.Key != nil { + in, out := &in.Key, &out.Key *out = new(string) **out = **in } - if in.Condition != nil { - in, out := &in.Condition, &out.Condition - *out = make([]ConditionObservation, len(*in)) + if in.Value != nil { + in, out := &in.Value, &out.Value + *out = make([]QueriesValueObservation, len(*in)) for i := range *in { (*in)[i].DeepCopyInto(&(*out)[i]) } } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RuleConditionObservation. -func (in *RuleConditionObservation) DeepCopy() *RuleConditionObservation { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new QueriesObservation. +func (in *QueriesObservation) DeepCopy() *QueriesObservation { if in == nil { return nil } - out := new(RuleConditionObservation) + out := new(QueriesObservation) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *RuleConditionParameters) DeepCopyInto(out *RuleConditionParameters) { +func (in *QueriesParameters) DeepCopyInto(out *QueriesParameters) { *out = *in - if in.Action != nil { - in, out := &in.Action, &out.Action + if in.Key != nil { + in, out := &in.Key, &out.Key *out = new(string) **out = **in } - if in.Condition != nil { - in, out := &in.Condition, &out.Condition - *out = make([]ConditionParameters, len(*in)) + if in.Value != nil { + in, out := &in.Value, &out.Value + *out = make([]QueriesValueParameters, len(*in)) for i := range *in { (*in)[i].DeepCopyInto(&(*out)[i]) } } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RuleConditionParameters. -func (in *RuleConditionParameters) DeepCopy() *RuleConditionParameters { - if in == nil { - return nil - } - out := new(RuleConditionParameters) - in.DeepCopyInto(out) - return out -} - -// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *SecurityProfile) DeepCopyInto(out *SecurityProfile) { - *out = *in - out.TypeMeta = in.TypeMeta - in.ObjectMeta.DeepCopyInto(&out.ObjectMeta) - in.Spec.DeepCopyInto(&out.Spec) - in.Status.DeepCopyInto(&out.Status) -} - -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SecurityProfile. -func (in *SecurityProfile) DeepCopy() *SecurityProfile { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new QueriesParameters. +func (in *QueriesParameters) DeepCopy() *QueriesParameters { if in == nil { return nil } - out := new(SecurityProfile) + out := new(QueriesParameters) in.DeepCopyInto(out) return out } -// DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object. -func (in *SecurityProfile) DeepCopyObject() runtime.Object { - if c := in.DeepCopy(); c != nil { - return c - } - return nil -} - // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *SecurityProfileInitParameters) DeepCopyInto(out *SecurityProfileInitParameters) { +func (in *QueriesValueInitParameters) DeepCopyInto(out *QueriesValueInitParameters) { *out = *in - if in.CaptchaID != nil { - in, out := &in.CaptchaID, &out.CaptchaID + if in.ExactMatch != nil { + in, out := &in.ExactMatch, &out.ExactMatch *out = new(string) **out = **in } - if in.CloudID != nil { - in, out := &in.CloudID, &out.CloudID + if in.ExactNotMatch != nil { + in, out := &in.ExactNotMatch, &out.ExactNotMatch *out = new(string) **out = **in } - if in.DefaultAction != nil { - in, out := &in.DefaultAction, &out.DefaultAction + if in.PireRegexMatch != nil { + in, out := &in.PireRegexMatch, &out.PireRegexMatch *out = new(string) **out = **in } - if in.Description != nil { - in, out := &in.Description, &out.Description + if in.PireRegexNotMatch != nil { + in, out := &in.PireRegexNotMatch, &out.PireRegexNotMatch *out = new(string) **out = **in } - if in.FolderID != nil { - in, out := &in.FolderID, &out.FolderID + if in.PrefixMatch != nil { + in, out := &in.PrefixMatch, &out.PrefixMatch *out = new(string) **out = **in } - if in.FolderIDRef != nil { - in, out := &in.FolderIDRef, &out.FolderIDRef - *out = new(v1.Reference) - (*in).DeepCopyInto(*out) - } - if in.FolderIDSelector != nil { - in, out := &in.FolderIDSelector, &out.FolderIDSelector - *out = new(v1.Selector) - (*in).DeepCopyInto(*out) - } - if in.Labels != nil { - in, out := &in.Labels, &out.Labels - *out = make(map[string]*string, len(*in)) - for key, val := range *in { - var outVal *string - if val == nil { - (*out)[key] = nil - } else { - inVal := (*in)[key] - in, out := &inVal, &outVal - *out = new(string) - **out = **in - } - (*out)[key] = outVal - } - } - if in.Name != nil { - in, out := &in.Name, &out.Name + if in.PrefixNotMatch != nil { + in, out := &in.PrefixNotMatch, &out.PrefixNotMatch *out = new(string) **out = **in } - if in.SecurityRule != nil { - in, out := &in.SecurityRule, &out.SecurityRule - *out = make([]SecurityRuleInitParameters, len(*in)) - for i := range *in { - (*in)[i].DeepCopyInto(&(*out)[i]) - } - } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SecurityProfileInitParameters. -func (in *SecurityProfileInitParameters) DeepCopy() *SecurityProfileInitParameters { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new QueriesValueInitParameters. +func (in *QueriesValueInitParameters) DeepCopy() *QueriesValueInitParameters { if in == nil { return nil } - out := new(SecurityProfileInitParameters) + out := new(QueriesValueInitParameters) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *SecurityProfileList) DeepCopyInto(out *SecurityProfileList) { +func (in *QueriesValueObservation) DeepCopyInto(out *QueriesValueObservation) { *out = *in - out.TypeMeta = in.TypeMeta - in.ListMeta.DeepCopyInto(&out.ListMeta) - if in.Items != nil { - in, out := &in.Items, &out.Items - *out = make([]SecurityProfile, len(*in)) - for i := range *in { - (*in)[i].DeepCopyInto(&(*out)[i]) - } - } -} - -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SecurityProfileList. -func (in *SecurityProfileList) DeepCopy() *SecurityProfileList { - if in == nil { - return nil - } - out := new(SecurityProfileList) - in.DeepCopyInto(out) - return out -} - -// DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object. -func (in *SecurityProfileList) DeepCopyObject() runtime.Object { - if c := in.DeepCopy(); c != nil { - return c - } - return nil -} - -// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *SecurityProfileObservation) DeepCopyInto(out *SecurityProfileObservation) { - *out = *in - if in.CaptchaID != nil { - in, out := &in.CaptchaID, &out.CaptchaID - *out = new(string) - **out = **in - } - if in.CloudID != nil { - in, out := &in.CloudID, &out.CloudID - *out = new(string) - **out = **in - } - if in.CreatedAt != nil { - in, out := &in.CreatedAt, &out.CreatedAt + if in.ExactMatch != nil { + in, out := &in.ExactMatch, &out.ExactMatch *out = new(string) **out = **in } - if in.DefaultAction != nil { - in, out := &in.DefaultAction, &out.DefaultAction + if in.ExactNotMatch != nil { + in, out := &in.ExactNotMatch, &out.ExactNotMatch *out = new(string) **out = **in } - if in.Description != nil { - in, out := &in.Description, &out.Description + if in.PireRegexMatch != nil { + in, out := &in.PireRegexMatch, &out.PireRegexMatch *out = new(string) **out = **in } - if in.FolderID != nil { - in, out := &in.FolderID, &out.FolderID + if in.PireRegexNotMatch != nil { + in, out := &in.PireRegexNotMatch, &out.PireRegexNotMatch *out = new(string) **out = **in } - if in.ID != nil { - in, out := &in.ID, &out.ID + if in.PrefixMatch != nil { + in, out := &in.PrefixMatch, &out.PrefixMatch *out = new(string) **out = **in } - if in.Labels != nil { - in, out := &in.Labels, &out.Labels - *out = make(map[string]*string, len(*in)) - for key, val := range *in { - var outVal *string - if val == nil { - (*out)[key] = nil - } else { - inVal := (*in)[key] - in, out := &inVal, &outVal - *out = new(string) - **out = **in - } - (*out)[key] = outVal - } - } - if in.Name != nil { - in, out := &in.Name, &out.Name + if in.PrefixNotMatch != nil { + in, out := &in.PrefixNotMatch, &out.PrefixNotMatch *out = new(string) **out = **in } - if in.SecurityRule != nil { - in, out := &in.SecurityRule, &out.SecurityRule - *out = make([]SecurityRuleObservation, len(*in)) - for i := range *in { - (*in)[i].DeepCopyInto(&(*out)[i]) - } - } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SecurityProfileObservation. -func (in *SecurityProfileObservation) DeepCopy() *SecurityProfileObservation { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new QueriesValueObservation. +func (in *QueriesValueObservation) DeepCopy() *QueriesValueObservation { if in == nil { return nil } - out := new(SecurityProfileObservation) + out := new(QueriesValueObservation) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *SecurityProfileParameters) DeepCopyInto(out *SecurityProfileParameters) { +func (in *QueriesValueParameters) DeepCopyInto(out *QueriesValueParameters) { *out = *in - if in.CaptchaID != nil { - in, out := &in.CaptchaID, &out.CaptchaID + if in.ExactMatch != nil { + in, out := &in.ExactMatch, &out.ExactMatch *out = new(string) **out = **in } - if in.CloudID != nil { - in, out := &in.CloudID, &out.CloudID + if in.ExactNotMatch != nil { + in, out := &in.ExactNotMatch, &out.ExactNotMatch *out = new(string) **out = **in } - if in.DefaultAction != nil { - in, out := &in.DefaultAction, &out.DefaultAction + if in.PireRegexMatch != nil { + in, out := &in.PireRegexMatch, &out.PireRegexMatch *out = new(string) **out = **in } - if in.Description != nil { - in, out := &in.Description, &out.Description + if in.PireRegexNotMatch != nil { + in, out := &in.PireRegexNotMatch, &out.PireRegexNotMatch *out = new(string) **out = **in } - if in.FolderID != nil { - in, out := &in.FolderID, &out.FolderID + if in.PrefixMatch != nil { + in, out := &in.PrefixMatch, &out.PrefixMatch *out = new(string) **out = **in } - if in.FolderIDRef != nil { - in, out := &in.FolderIDRef, &out.FolderIDRef - *out = new(v1.Reference) - (*in).DeepCopyInto(*out) - } - if in.FolderIDSelector != nil { - in, out := &in.FolderIDSelector, &out.FolderIDSelector - *out = new(v1.Selector) - (*in).DeepCopyInto(*out) - } - if in.Labels != nil { - in, out := &in.Labels, &out.Labels - *out = make(map[string]*string, len(*in)) - for key, val := range *in { - var outVal *string - if val == nil { - (*out)[key] = nil - } else { - inVal := (*in)[key] - in, out := &inVal, &outVal - *out = new(string) - **out = **in - } - (*out)[key] = outVal - } - } - if in.Name != nil { - in, out := &in.Name, &out.Name + if in.PrefixNotMatch != nil { + in, out := &in.PrefixNotMatch, &out.PrefixNotMatch *out = new(string) **out = **in } - if in.SecurityRule != nil { - in, out := &in.SecurityRule, &out.SecurityRule - *out = make([]SecurityRuleParameters, len(*in)) - for i := range *in { - (*in)[i].DeepCopyInto(&(*out)[i]) - } - } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SecurityProfileParameters. -func (in *SecurityProfileParameters) DeepCopy() *SecurityProfileParameters { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new QueriesValueParameters. +func (in *QueriesValueParameters) DeepCopy() *QueriesValueParameters { if in == nil { return nil } - out := new(SecurityProfileParameters) + out := new(QueriesValueParameters) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *SecurityProfileSpec) DeepCopyInto(out *SecurityProfileSpec) { +func (in *RequestURIInitParameters) DeepCopyInto(out *RequestURIInitParameters) { *out = *in - in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) - in.ForProvider.DeepCopyInto(&out.ForProvider) - in.InitProvider.DeepCopyInto(&out.InitProvider) + if in.Path != nil { + in, out := &in.Path, &out.Path + *out = make([]PathInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Queries != nil { + in, out := &in.Queries, &out.Queries + *out = make([]QueriesInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SecurityProfileSpec. -func (in *SecurityProfileSpec) DeepCopy() *SecurityProfileSpec { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RequestURIInitParameters. +func (in *RequestURIInitParameters) DeepCopy() *RequestURIInitParameters { if in == nil { return nil } - out := new(SecurityProfileSpec) + out := new(RequestURIInitParameters) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *SecurityProfileStatus) DeepCopyInto(out *SecurityProfileStatus) { +func (in *RequestURIObservation) DeepCopyInto(out *RequestURIObservation) { *out = *in - in.ResourceStatus.DeepCopyInto(&out.ResourceStatus) - in.AtProvider.DeepCopyInto(&out.AtProvider) + if in.Path != nil { + in, out := &in.Path, &out.Path + *out = make([]PathObservation, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Queries != nil { + in, out := &in.Queries, &out.Queries + *out = make([]QueriesObservation, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SecurityProfileStatus. -func (in *SecurityProfileStatus) DeepCopy() *SecurityProfileStatus { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RequestURIObservation. +func (in *RequestURIObservation) DeepCopy() *RequestURIObservation { if in == nil { return nil } - out := new(SecurityProfileStatus) + out := new(RequestURIObservation) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *SecurityRuleInitParameters) DeepCopyInto(out *SecurityRuleInitParameters) { +func (in *RequestURIParameters) DeepCopyInto(out *RequestURIParameters) { *out = *in - if in.Description != nil { - in, out := &in.Description, &out.Description - *out = new(string) - **out = **in - } - if in.DryRun != nil { - in, out := &in.DryRun, &out.DryRun - *out = new(bool) - **out = **in - } - if in.Name != nil { - in, out := &in.Name, &out.Name - *out = new(string) - **out = **in - } - if in.Priority != nil { - in, out := &in.Priority, &out.Priority - *out = new(float64) - **out = **in - } - if in.RuleCondition != nil { - in, out := &in.RuleCondition, &out.RuleCondition - *out = make([]RuleConditionInitParameters, len(*in)) + if in.Path != nil { + in, out := &in.Path, &out.Path + *out = make([]PathParameters, len(*in)) for i := range *in { (*in)[i].DeepCopyInto(&(*out)[i]) } } - if in.SmartProtection != nil { - in, out := &in.SmartProtection, &out.SmartProtection - *out = make([]SmartProtectionInitParameters, len(*in)) + if in.Queries != nil { + in, out := &in.Queries, &out.Queries + *out = make([]QueriesParameters, len(*in)) for i := range *in { (*in)[i].DeepCopyInto(&(*out)[i]) } } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SecurityRuleInitParameters. -func (in *SecurityRuleInitParameters) DeepCopy() *SecurityRuleInitParameters { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RequestURIParameters. +func (in *RequestURIParameters) DeepCopy() *RequestURIParameters { if in == nil { return nil } - out := new(SecurityRuleInitParameters) + out := new(RequestURIParameters) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *SecurityRuleObservation) DeepCopyInto(out *SecurityRuleObservation) { +func (in *RequestURIPathInitParameters) DeepCopyInto(out *RequestURIPathInitParameters) { *out = *in - if in.Description != nil { - in, out := &in.Description, &out.Description + if in.ExactMatch != nil { + in, out := &in.ExactMatch, &out.ExactMatch *out = new(string) **out = **in } - if in.DryRun != nil { - in, out := &in.DryRun, &out.DryRun - *out = new(bool) + if in.ExactNotMatch != nil { + in, out := &in.ExactNotMatch, &out.ExactNotMatch + *out = new(string) **out = **in } - if in.Name != nil { - in, out := &in.Name, &out.Name + if in.PireRegexMatch != nil { + in, out := &in.PireRegexMatch, &out.PireRegexMatch *out = new(string) **out = **in } - if in.Priority != nil { - in, out := &in.Priority, &out.Priority - *out = new(float64) + if in.PireRegexNotMatch != nil { + in, out := &in.PireRegexNotMatch, &out.PireRegexNotMatch + *out = new(string) **out = **in } - if in.RuleCondition != nil { - in, out := &in.RuleCondition, &out.RuleCondition - *out = make([]RuleConditionObservation, len(*in)) + if in.PrefixMatch != nil { + in, out := &in.PrefixMatch, &out.PrefixMatch + *out = new(string) + **out = **in + } + if in.PrefixNotMatch != nil { + in, out := &in.PrefixNotMatch, &out.PrefixNotMatch + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RequestURIPathInitParameters. +func (in *RequestURIPathInitParameters) DeepCopy() *RequestURIPathInitParameters { + if in == nil { + return nil + } + out := new(RequestURIPathInitParameters) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *RequestURIPathObservation) DeepCopyInto(out *RequestURIPathObservation) { + *out = *in + if in.ExactMatch != nil { + in, out := &in.ExactMatch, &out.ExactMatch + *out = new(string) + **out = **in + } + if in.ExactNotMatch != nil { + in, out := &in.ExactNotMatch, &out.ExactNotMatch + *out = new(string) + **out = **in + } + if in.PireRegexMatch != nil { + in, out := &in.PireRegexMatch, &out.PireRegexMatch + *out = new(string) + **out = **in + } + if in.PireRegexNotMatch != nil { + in, out := &in.PireRegexNotMatch, &out.PireRegexNotMatch + *out = new(string) + **out = **in + } + if in.PrefixMatch != nil { + in, out := &in.PrefixMatch, &out.PrefixMatch + *out = new(string) + **out = **in + } + if in.PrefixNotMatch != nil { + in, out := &in.PrefixNotMatch, &out.PrefixNotMatch + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RequestURIPathObservation. +func (in *RequestURIPathObservation) DeepCopy() *RequestURIPathObservation { + if in == nil { + return nil + } + out := new(RequestURIPathObservation) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *RequestURIPathParameters) DeepCopyInto(out *RequestURIPathParameters) { + *out = *in + if in.ExactMatch != nil { + in, out := &in.ExactMatch, &out.ExactMatch + *out = new(string) + **out = **in + } + if in.ExactNotMatch != nil { + in, out := &in.ExactNotMatch, &out.ExactNotMatch + *out = new(string) + **out = **in + } + if in.PireRegexMatch != nil { + in, out := &in.PireRegexMatch, &out.PireRegexMatch + *out = new(string) + **out = **in + } + if in.PireRegexNotMatch != nil { + in, out := &in.PireRegexNotMatch, &out.PireRegexNotMatch + *out = new(string) + **out = **in + } + if in.PrefixMatch != nil { + in, out := &in.PrefixMatch, &out.PrefixMatch + *out = new(string) + **out = **in + } + if in.PrefixNotMatch != nil { + in, out := &in.PrefixNotMatch, &out.PrefixNotMatch + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RequestURIPathParameters. +func (in *RequestURIPathParameters) DeepCopy() *RequestURIPathParameters { + if in == nil { + return nil + } + out := new(RequestURIPathParameters) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *RequestURIQueriesInitParameters) DeepCopyInto(out *RequestURIQueriesInitParameters) { + *out = *in + if in.Key != nil { + in, out := &in.Key, &out.Key + *out = new(string) + **out = **in + } + if in.Value != nil { + in, out := &in.Value, &out.Value + *out = make([]RequestURIQueriesValueInitParameters, len(*in)) for i := range *in { (*in)[i].DeepCopyInto(&(*out)[i]) } } - if in.SmartProtection != nil { - in, out := &in.SmartProtection, &out.SmartProtection - *out = make([]SmartProtectionObservation, len(*in)) +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RequestURIQueriesInitParameters. +func (in *RequestURIQueriesInitParameters) DeepCopy() *RequestURIQueriesInitParameters { + if in == nil { + return nil + } + out := new(RequestURIQueriesInitParameters) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *RequestURIQueriesObservation) DeepCopyInto(out *RequestURIQueriesObservation) { + *out = *in + if in.Key != nil { + in, out := &in.Key, &out.Key + *out = new(string) + **out = **in + } + if in.Value != nil { + in, out := &in.Value, &out.Value + *out = make([]RequestURIQueriesValueObservation, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RequestURIQueriesObservation. +func (in *RequestURIQueriesObservation) DeepCopy() *RequestURIQueriesObservation { + if in == nil { + return nil + } + out := new(RequestURIQueriesObservation) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *RequestURIQueriesParameters) DeepCopyInto(out *RequestURIQueriesParameters) { + *out = *in + if in.Key != nil { + in, out := &in.Key, &out.Key + *out = new(string) + **out = **in + } + if in.Value != nil { + in, out := &in.Value, &out.Value + *out = make([]RequestURIQueriesValueParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RequestURIQueriesParameters. +func (in *RequestURIQueriesParameters) DeepCopy() *RequestURIQueriesParameters { + if in == nil { + return nil + } + out := new(RequestURIQueriesParameters) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *RequestURIQueriesValueInitParameters) DeepCopyInto(out *RequestURIQueriesValueInitParameters) { + *out = *in + if in.ExactMatch != nil { + in, out := &in.ExactMatch, &out.ExactMatch + *out = new(string) + **out = **in + } + if in.ExactNotMatch != nil { + in, out := &in.ExactNotMatch, &out.ExactNotMatch + *out = new(string) + **out = **in + } + if in.PireRegexMatch != nil { + in, out := &in.PireRegexMatch, &out.PireRegexMatch + *out = new(string) + **out = **in + } + if in.PireRegexNotMatch != nil { + in, out := &in.PireRegexNotMatch, &out.PireRegexNotMatch + *out = new(string) + **out = **in + } + if in.PrefixMatch != nil { + in, out := &in.PrefixMatch, &out.PrefixMatch + *out = new(string) + **out = **in + } + if in.PrefixNotMatch != nil { + in, out := &in.PrefixNotMatch, &out.PrefixNotMatch + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RequestURIQueriesValueInitParameters. +func (in *RequestURIQueriesValueInitParameters) DeepCopy() *RequestURIQueriesValueInitParameters { + if in == nil { + return nil + } + out := new(RequestURIQueriesValueInitParameters) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *RequestURIQueriesValueObservation) DeepCopyInto(out *RequestURIQueriesValueObservation) { + *out = *in + if in.ExactMatch != nil { + in, out := &in.ExactMatch, &out.ExactMatch + *out = new(string) + **out = **in + } + if in.ExactNotMatch != nil { + in, out := &in.ExactNotMatch, &out.ExactNotMatch + *out = new(string) + **out = **in + } + if in.PireRegexMatch != nil { + in, out := &in.PireRegexMatch, &out.PireRegexMatch + *out = new(string) + **out = **in + } + if in.PireRegexNotMatch != nil { + in, out := &in.PireRegexNotMatch, &out.PireRegexNotMatch + *out = new(string) + **out = **in + } + if in.PrefixMatch != nil { + in, out := &in.PrefixMatch, &out.PrefixMatch + *out = new(string) + **out = **in + } + if in.PrefixNotMatch != nil { + in, out := &in.PrefixNotMatch, &out.PrefixNotMatch + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RequestURIQueriesValueObservation. +func (in *RequestURIQueriesValueObservation) DeepCopy() *RequestURIQueriesValueObservation { + if in == nil { + return nil + } + out := new(RequestURIQueriesValueObservation) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *RequestURIQueriesValueParameters) DeepCopyInto(out *RequestURIQueriesValueParameters) { + *out = *in + if in.ExactMatch != nil { + in, out := &in.ExactMatch, &out.ExactMatch + *out = new(string) + **out = **in + } + if in.ExactNotMatch != nil { + in, out := &in.ExactNotMatch, &out.ExactNotMatch + *out = new(string) + **out = **in + } + if in.PireRegexMatch != nil { + in, out := &in.PireRegexMatch, &out.PireRegexMatch + *out = new(string) + **out = **in + } + if in.PireRegexNotMatch != nil { + in, out := &in.PireRegexNotMatch, &out.PireRegexNotMatch + *out = new(string) + **out = **in + } + if in.PrefixMatch != nil { + in, out := &in.PrefixMatch, &out.PrefixMatch + *out = new(string) + **out = **in + } + if in.PrefixNotMatch != nil { + in, out := &in.PrefixNotMatch, &out.PrefixNotMatch + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RequestURIQueriesValueParameters. +func (in *RequestURIQueriesValueParameters) DeepCopy() *RequestURIQueriesValueParameters { + if in == nil { + return nil + } + out := new(RequestURIQueriesValueParameters) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *RuleConditionInitParameters) DeepCopyInto(out *RuleConditionInitParameters) { + *out = *in + if in.Action != nil { + in, out := &in.Action, &out.Action + *out = new(string) + **out = **in + } + if in.Condition != nil { + in, out := &in.Condition, &out.Condition + *out = make([]ConditionInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RuleConditionInitParameters. +func (in *RuleConditionInitParameters) DeepCopy() *RuleConditionInitParameters { + if in == nil { + return nil + } + out := new(RuleConditionInitParameters) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *RuleConditionObservation) DeepCopyInto(out *RuleConditionObservation) { + *out = *in + if in.Action != nil { + in, out := &in.Action, &out.Action + *out = new(string) + **out = **in + } + if in.Condition != nil { + in, out := &in.Condition, &out.Condition + *out = make([]ConditionObservation, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RuleConditionObservation. +func (in *RuleConditionObservation) DeepCopy() *RuleConditionObservation { + if in == nil { + return nil + } + out := new(RuleConditionObservation) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *RuleConditionParameters) DeepCopyInto(out *RuleConditionParameters) { + *out = *in + if in.Action != nil { + in, out := &in.Action, &out.Action + *out = new(string) + **out = **in + } + if in.Condition != nil { + in, out := &in.Condition, &out.Condition + *out = make([]ConditionParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RuleConditionParameters. +func (in *RuleConditionParameters) DeepCopy() *RuleConditionParameters { + if in == nil { + return nil + } + out := new(RuleConditionParameters) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *SecurityProfile) DeepCopyInto(out *SecurityProfile) { + *out = *in + out.TypeMeta = in.TypeMeta + in.ObjectMeta.DeepCopyInto(&out.ObjectMeta) + in.Spec.DeepCopyInto(&out.Spec) + in.Status.DeepCopyInto(&out.Status) +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SecurityProfile. +func (in *SecurityProfile) DeepCopy() *SecurityProfile { + if in == nil { + return nil + } + out := new(SecurityProfile) + in.DeepCopyInto(out) + return out +} + +// DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object. +func (in *SecurityProfile) DeepCopyObject() runtime.Object { + if c := in.DeepCopy(); c != nil { + return c + } + return nil +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *SecurityProfileInitParameters) DeepCopyInto(out *SecurityProfileInitParameters) { + *out = *in + if in.AdvancedRateLimiterProfileID != nil { + in, out := &in.AdvancedRateLimiterProfileID, &out.AdvancedRateLimiterProfileID + *out = new(string) + **out = **in + } + if in.CaptchaID != nil { + in, out := &in.CaptchaID, &out.CaptchaID + *out = new(string) + **out = **in + } + if in.CloudID != nil { + in, out := &in.CloudID, &out.CloudID + *out = new(string) + **out = **in + } + if in.DefaultAction != nil { + in, out := &in.DefaultAction, &out.DefaultAction + *out = new(string) + **out = **in + } + if in.Description != nil { + in, out := &in.Description, &out.Description + *out = new(string) + **out = **in + } + if in.FolderID != nil { + in, out := &in.FolderID, &out.FolderID + *out = new(string) + **out = **in + } + if in.FolderIDRef != nil { + in, out := &in.FolderIDRef, &out.FolderIDRef + *out = new(v1.Reference) + (*in).DeepCopyInto(*out) + } + if in.FolderIDSelector != nil { + in, out := &in.FolderIDSelector, &out.FolderIDSelector + *out = new(v1.Selector) + (*in).DeepCopyInto(*out) + } + if in.Labels != nil { + in, out := &in.Labels, &out.Labels + *out = make(map[string]*string, len(*in)) + for key, val := range *in { + var outVal *string + if val == nil { + (*out)[key] = nil + } else { + inVal := (*in)[key] + in, out := &inVal, &outVal + *out = new(string) + **out = **in + } + (*out)[key] = outVal + } + } + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } + if in.SecurityRule != nil { + in, out := &in.SecurityRule, &out.SecurityRule + *out = make([]SecurityRuleInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SecurityProfileInitParameters. +func (in *SecurityProfileInitParameters) DeepCopy() *SecurityProfileInitParameters { + if in == nil { + return nil + } + out := new(SecurityProfileInitParameters) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *SecurityProfileList) DeepCopyInto(out *SecurityProfileList) { + *out = *in + out.TypeMeta = in.TypeMeta + in.ListMeta.DeepCopyInto(&out.ListMeta) + if in.Items != nil { + in, out := &in.Items, &out.Items + *out = make([]SecurityProfile, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SecurityProfileList. +func (in *SecurityProfileList) DeepCopy() *SecurityProfileList { + if in == nil { + return nil + } + out := new(SecurityProfileList) + in.DeepCopyInto(out) + return out +} + +// DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object. +func (in *SecurityProfileList) DeepCopyObject() runtime.Object { + if c := in.DeepCopy(); c != nil { + return c + } + return nil +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *SecurityProfileObservation) DeepCopyInto(out *SecurityProfileObservation) { + *out = *in + if in.AdvancedRateLimiterProfileID != nil { + in, out := &in.AdvancedRateLimiterProfileID, &out.AdvancedRateLimiterProfileID + *out = new(string) + **out = **in + } + if in.CaptchaID != nil { + in, out := &in.CaptchaID, &out.CaptchaID + *out = new(string) + **out = **in + } + if in.CloudID != nil { + in, out := &in.CloudID, &out.CloudID + *out = new(string) + **out = **in + } + if in.CreatedAt != nil { + in, out := &in.CreatedAt, &out.CreatedAt + *out = new(string) + **out = **in + } + if in.DefaultAction != nil { + in, out := &in.DefaultAction, &out.DefaultAction + *out = new(string) + **out = **in + } + if in.Description != nil { + in, out := &in.Description, &out.Description + *out = new(string) + **out = **in + } + if in.FolderID != nil { + in, out := &in.FolderID, &out.FolderID + *out = new(string) + **out = **in + } + if in.ID != nil { + in, out := &in.ID, &out.ID + *out = new(string) + **out = **in + } + if in.Labels != nil { + in, out := &in.Labels, &out.Labels + *out = make(map[string]*string, len(*in)) + for key, val := range *in { + var outVal *string + if val == nil { + (*out)[key] = nil + } else { + inVal := (*in)[key] + in, out := &inVal, &outVal + *out = new(string) + **out = **in + } + (*out)[key] = outVal + } + } + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } + if in.SecurityRule != nil { + in, out := &in.SecurityRule, &out.SecurityRule + *out = make([]SecurityRuleObservation, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SecurityProfileObservation. +func (in *SecurityProfileObservation) DeepCopy() *SecurityProfileObservation { + if in == nil { + return nil + } + out := new(SecurityProfileObservation) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *SecurityProfileParameters) DeepCopyInto(out *SecurityProfileParameters) { + *out = *in + if in.AdvancedRateLimiterProfileID != nil { + in, out := &in.AdvancedRateLimiterProfileID, &out.AdvancedRateLimiterProfileID + *out = new(string) + **out = **in + } + if in.CaptchaID != nil { + in, out := &in.CaptchaID, &out.CaptchaID + *out = new(string) + **out = **in + } + if in.CloudID != nil { + in, out := &in.CloudID, &out.CloudID + *out = new(string) + **out = **in + } + if in.DefaultAction != nil { + in, out := &in.DefaultAction, &out.DefaultAction + *out = new(string) + **out = **in + } + if in.Description != nil { + in, out := &in.Description, &out.Description + *out = new(string) + **out = **in + } + if in.FolderID != nil { + in, out := &in.FolderID, &out.FolderID + *out = new(string) + **out = **in + } + if in.FolderIDRef != nil { + in, out := &in.FolderIDRef, &out.FolderIDRef + *out = new(v1.Reference) + (*in).DeepCopyInto(*out) + } + if in.FolderIDSelector != nil { + in, out := &in.FolderIDSelector, &out.FolderIDSelector + *out = new(v1.Selector) + (*in).DeepCopyInto(*out) + } + if in.Labels != nil { + in, out := &in.Labels, &out.Labels + *out = make(map[string]*string, len(*in)) + for key, val := range *in { + var outVal *string + if val == nil { + (*out)[key] = nil + } else { + inVal := (*in)[key] + in, out := &inVal, &outVal + *out = new(string) + **out = **in + } + (*out)[key] = outVal + } + } + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } + if in.SecurityRule != nil { + in, out := &in.SecurityRule, &out.SecurityRule + *out = make([]SecurityRuleParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SecurityProfileParameters. +func (in *SecurityProfileParameters) DeepCopy() *SecurityProfileParameters { + if in == nil { + return nil + } + out := new(SecurityProfileParameters) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *SecurityProfileSpec) DeepCopyInto(out *SecurityProfileSpec) { + *out = *in + in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) + in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SecurityProfileSpec. +func (in *SecurityProfileSpec) DeepCopy() *SecurityProfileSpec { + if in == nil { + return nil + } + out := new(SecurityProfileSpec) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *SecurityProfileStatus) DeepCopyInto(out *SecurityProfileStatus) { + *out = *in + in.ResourceStatus.DeepCopyInto(&out.ResourceStatus) + in.AtProvider.DeepCopyInto(&out.AtProvider) +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SecurityProfileStatus. +func (in *SecurityProfileStatus) DeepCopy() *SecurityProfileStatus { + if in == nil { + return nil + } + out := new(SecurityProfileStatus) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *SecurityRuleInitParameters) DeepCopyInto(out *SecurityRuleInitParameters) { + *out = *in + if in.Description != nil { + in, out := &in.Description, &out.Description + *out = new(string) + **out = **in + } + if in.DryRun != nil { + in, out := &in.DryRun, &out.DryRun + *out = new(bool) + **out = **in + } + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } + if in.Priority != nil { + in, out := &in.Priority, &out.Priority + *out = new(float64) + **out = **in + } + if in.RuleCondition != nil { + in, out := &in.RuleCondition, &out.RuleCondition + *out = make([]RuleConditionInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.SmartProtection != nil { + in, out := &in.SmartProtection, &out.SmartProtection + *out = make([]SmartProtectionInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Waf != nil { + in, out := &in.Waf, &out.Waf + *out = make([]WafInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SecurityRuleInitParameters. +func (in *SecurityRuleInitParameters) DeepCopy() *SecurityRuleInitParameters { + if in == nil { + return nil + } + out := new(SecurityRuleInitParameters) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *SecurityRuleObservation) DeepCopyInto(out *SecurityRuleObservation) { + *out = *in + if in.Description != nil { + in, out := &in.Description, &out.Description + *out = new(string) + **out = **in + } + if in.DryRun != nil { + in, out := &in.DryRun, &out.DryRun + *out = new(bool) + **out = **in + } + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } + if in.Priority != nil { + in, out := &in.Priority, &out.Priority + *out = new(float64) + **out = **in + } + if in.RuleCondition != nil { + in, out := &in.RuleCondition, &out.RuleCondition + *out = make([]RuleConditionObservation, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.SmartProtection != nil { + in, out := &in.SmartProtection, &out.SmartProtection + *out = make([]SmartProtectionObservation, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Waf != nil { + in, out := &in.Waf, &out.Waf + *out = make([]WafObservation, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SecurityRuleObservation. +func (in *SecurityRuleObservation) DeepCopy() *SecurityRuleObservation { + if in == nil { + return nil + } + out := new(SecurityRuleObservation) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *SecurityRuleParameters) DeepCopyInto(out *SecurityRuleParameters) { + *out = *in + if in.Description != nil { + in, out := &in.Description, &out.Description + *out = new(string) + **out = **in + } + if in.DryRun != nil { + in, out := &in.DryRun, &out.DryRun + *out = new(bool) + **out = **in + } + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } + if in.Priority != nil { + in, out := &in.Priority, &out.Priority + *out = new(float64) + **out = **in + } + if in.RuleCondition != nil { + in, out := &in.RuleCondition, &out.RuleCondition + *out = make([]RuleConditionParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.SmartProtection != nil { + in, out := &in.SmartProtection, &out.SmartProtection + *out = make([]SmartProtectionParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Waf != nil { + in, out := &in.Waf, &out.Waf + *out = make([]WafParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SecurityRuleParameters. +func (in *SecurityRuleParameters) DeepCopy() *SecurityRuleParameters { + if in == nil { + return nil + } + out := new(SecurityRuleParameters) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *SmartProtectionConditionInitParameters) DeepCopyInto(out *SmartProtectionConditionInitParameters) { + *out = *in + if in.Authority != nil { + in, out := &in.Authority, &out.Authority + *out = make([]ConditionAuthorityInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.HTTPMethod != nil { + in, out := &in.HTTPMethod, &out.HTTPMethod + *out = make([]ConditionHTTPMethodInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Headers != nil { + in, out := &in.Headers, &out.Headers + *out = make([]ConditionHeadersInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.RequestURI != nil { + in, out := &in.RequestURI, &out.RequestURI + *out = make([]ConditionRequestURIInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.SourceIP != nil { + in, out := &in.SourceIP, &out.SourceIP + *out = make([]ConditionSourceIPInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SmartProtectionConditionInitParameters. +func (in *SmartProtectionConditionInitParameters) DeepCopy() *SmartProtectionConditionInitParameters { + if in == nil { + return nil + } + out := new(SmartProtectionConditionInitParameters) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *SmartProtectionConditionObservation) DeepCopyInto(out *SmartProtectionConditionObservation) { + *out = *in + if in.Authority != nil { + in, out := &in.Authority, &out.Authority + *out = make([]ConditionAuthorityObservation, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.HTTPMethod != nil { + in, out := &in.HTTPMethod, &out.HTTPMethod + *out = make([]ConditionHTTPMethodObservation, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Headers != nil { + in, out := &in.Headers, &out.Headers + *out = make([]ConditionHeadersObservation, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.RequestURI != nil { + in, out := &in.RequestURI, &out.RequestURI + *out = make([]ConditionRequestURIObservation, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.SourceIP != nil { + in, out := &in.SourceIP, &out.SourceIP + *out = make([]ConditionSourceIPObservation, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SmartProtectionConditionObservation. +func (in *SmartProtectionConditionObservation) DeepCopy() *SmartProtectionConditionObservation { + if in == nil { + return nil + } + out := new(SmartProtectionConditionObservation) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *SmartProtectionConditionParameters) DeepCopyInto(out *SmartProtectionConditionParameters) { + *out = *in + if in.Authority != nil { + in, out := &in.Authority, &out.Authority + *out = make([]ConditionAuthorityParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.HTTPMethod != nil { + in, out := &in.HTTPMethod, &out.HTTPMethod + *out = make([]ConditionHTTPMethodParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Headers != nil { + in, out := &in.Headers, &out.Headers + *out = make([]ConditionHeadersParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.RequestURI != nil { + in, out := &in.RequestURI, &out.RequestURI + *out = make([]ConditionRequestURIParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.SourceIP != nil { + in, out := &in.SourceIP, &out.SourceIP + *out = make([]ConditionSourceIPParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SmartProtectionConditionParameters. +func (in *SmartProtectionConditionParameters) DeepCopy() *SmartProtectionConditionParameters { + if in == nil { + return nil + } + out := new(SmartProtectionConditionParameters) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *SmartProtectionInitParameters) DeepCopyInto(out *SmartProtectionInitParameters) { + *out = *in + if in.Condition != nil { + in, out := &in.Condition, &out.Condition + *out = make([]SmartProtectionConditionInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Mode != nil { + in, out := &in.Mode, &out.Mode + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SmartProtectionInitParameters. +func (in *SmartProtectionInitParameters) DeepCopy() *SmartProtectionInitParameters { + if in == nil { + return nil + } + out := new(SmartProtectionInitParameters) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *SmartProtectionObservation) DeepCopyInto(out *SmartProtectionObservation) { + *out = *in + if in.Condition != nil { + in, out := &in.Condition, &out.Condition + *out = make([]SmartProtectionConditionObservation, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Mode != nil { + in, out := &in.Mode, &out.Mode + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SmartProtectionObservation. +func (in *SmartProtectionObservation) DeepCopy() *SmartProtectionObservation { + if in == nil { + return nil + } + out := new(SmartProtectionObservation) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *SmartProtectionParameters) DeepCopyInto(out *SmartProtectionParameters) { + *out = *in + if in.Condition != nil { + in, out := &in.Condition, &out.Condition + *out = make([]SmartProtectionConditionParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Mode != nil { + in, out := &in.Mode, &out.Mode + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SmartProtectionParameters. +func (in *SmartProtectionParameters) DeepCopy() *SmartProtectionParameters { + if in == nil { + return nil + } + out := new(SmartProtectionParameters) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *SourceIPGeoIPMatchInitParameters) DeepCopyInto(out *SourceIPGeoIPMatchInitParameters) { + *out = *in + if in.Locations != nil { + in, out := &in.Locations, &out.Locations + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SourceIPGeoIPMatchInitParameters. +func (in *SourceIPGeoIPMatchInitParameters) DeepCopy() *SourceIPGeoIPMatchInitParameters { + if in == nil { + return nil + } + out := new(SourceIPGeoIPMatchInitParameters) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *SourceIPGeoIPMatchObservation) DeepCopyInto(out *SourceIPGeoIPMatchObservation) { + *out = *in + if in.Locations != nil { + in, out := &in.Locations, &out.Locations + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SourceIPGeoIPMatchObservation. +func (in *SourceIPGeoIPMatchObservation) DeepCopy() *SourceIPGeoIPMatchObservation { + if in == nil { + return nil + } + out := new(SourceIPGeoIPMatchObservation) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *SourceIPGeoIPMatchParameters) DeepCopyInto(out *SourceIPGeoIPMatchParameters) { + *out = *in + if in.Locations != nil { + in, out := &in.Locations, &out.Locations + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SourceIPGeoIPMatchParameters. +func (in *SourceIPGeoIPMatchParameters) DeepCopy() *SourceIPGeoIPMatchParameters { + if in == nil { + return nil + } + out := new(SourceIPGeoIPMatchParameters) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *SourceIPGeoIPNotMatchInitParameters) DeepCopyInto(out *SourceIPGeoIPNotMatchInitParameters) { + *out = *in + if in.Locations != nil { + in, out := &in.Locations, &out.Locations + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SourceIPGeoIPNotMatchInitParameters. +func (in *SourceIPGeoIPNotMatchInitParameters) DeepCopy() *SourceIPGeoIPNotMatchInitParameters { + if in == nil { + return nil + } + out := new(SourceIPGeoIPNotMatchInitParameters) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *SourceIPGeoIPNotMatchObservation) DeepCopyInto(out *SourceIPGeoIPNotMatchObservation) { + *out = *in + if in.Locations != nil { + in, out := &in.Locations, &out.Locations + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SourceIPGeoIPNotMatchObservation. +func (in *SourceIPGeoIPNotMatchObservation) DeepCopy() *SourceIPGeoIPNotMatchObservation { + if in == nil { + return nil + } + out := new(SourceIPGeoIPNotMatchObservation) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *SourceIPGeoIPNotMatchParameters) DeepCopyInto(out *SourceIPGeoIPNotMatchParameters) { + *out = *in + if in.Locations != nil { + in, out := &in.Locations, &out.Locations + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SourceIPGeoIPNotMatchParameters. +func (in *SourceIPGeoIPNotMatchParameters) DeepCopy() *SourceIPGeoIPNotMatchParameters { + if in == nil { + return nil + } + out := new(SourceIPGeoIPNotMatchParameters) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *SourceIPIPRangesMatchInitParameters) DeepCopyInto(out *SourceIPIPRangesMatchInitParameters) { + *out = *in + if in.IPRanges != nil { + in, out := &in.IPRanges, &out.IPRanges + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SourceIPIPRangesMatchInitParameters. +func (in *SourceIPIPRangesMatchInitParameters) DeepCopy() *SourceIPIPRangesMatchInitParameters { + if in == nil { + return nil + } + out := new(SourceIPIPRangesMatchInitParameters) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *SourceIPIPRangesMatchObservation) DeepCopyInto(out *SourceIPIPRangesMatchObservation) { + *out = *in + if in.IPRanges != nil { + in, out := &in.IPRanges, &out.IPRanges + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SourceIPIPRangesMatchObservation. +func (in *SourceIPIPRangesMatchObservation) DeepCopy() *SourceIPIPRangesMatchObservation { + if in == nil { + return nil + } + out := new(SourceIPIPRangesMatchObservation) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *SourceIPIPRangesMatchParameters) DeepCopyInto(out *SourceIPIPRangesMatchParameters) { + *out = *in + if in.IPRanges != nil { + in, out := &in.IPRanges, &out.IPRanges + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SourceIPIPRangesMatchParameters. +func (in *SourceIPIPRangesMatchParameters) DeepCopy() *SourceIPIPRangesMatchParameters { + if in == nil { + return nil + } + out := new(SourceIPIPRangesMatchParameters) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *SourceIPIPRangesNotMatchInitParameters) DeepCopyInto(out *SourceIPIPRangesNotMatchInitParameters) { + *out = *in + if in.IPRanges != nil { + in, out := &in.IPRanges, &out.IPRanges + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SourceIPIPRangesNotMatchInitParameters. +func (in *SourceIPIPRangesNotMatchInitParameters) DeepCopy() *SourceIPIPRangesNotMatchInitParameters { + if in == nil { + return nil + } + out := new(SourceIPIPRangesNotMatchInitParameters) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *SourceIPIPRangesNotMatchObservation) DeepCopyInto(out *SourceIPIPRangesNotMatchObservation) { + *out = *in + if in.IPRanges != nil { + in, out := &in.IPRanges, &out.IPRanges + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SourceIPIPRangesNotMatchObservation. +func (in *SourceIPIPRangesNotMatchObservation) DeepCopy() *SourceIPIPRangesNotMatchObservation { + if in == nil { + return nil + } + out := new(SourceIPIPRangesNotMatchObservation) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *SourceIPIPRangesNotMatchParameters) DeepCopyInto(out *SourceIPIPRangesNotMatchParameters) { + *out = *in + if in.IPRanges != nil { + in, out := &in.IPRanges, &out.IPRanges + *out = make([]*string, len(*in)) for i := range *in { - (*in)[i].DeepCopyInto(&(*out)[i]) + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } } } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SecurityRuleObservation. -func (in *SecurityRuleObservation) DeepCopy() *SecurityRuleObservation { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SourceIPIPRangesNotMatchParameters. +func (in *SourceIPIPRangesNotMatchParameters) DeepCopy() *SourceIPIPRangesNotMatchParameters { if in == nil { return nil } - out := new(SecurityRuleObservation) + out := new(SourceIPIPRangesNotMatchParameters) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *SecurityRuleParameters) DeepCopyInto(out *SecurityRuleParameters) { +func (in *SourceIPInitParameters) DeepCopyInto(out *SourceIPInitParameters) { *out = *in - if in.Description != nil { - in, out := &in.Description, &out.Description - *out = new(string) - **out = **in - } - if in.DryRun != nil { - in, out := &in.DryRun, &out.DryRun - *out = new(bool) - **out = **in - } - if in.Name != nil { - in, out := &in.Name, &out.Name - *out = new(string) - **out = **in + if in.GeoIPMatch != nil { + in, out := &in.GeoIPMatch, &out.GeoIPMatch + *out = make([]GeoIPMatchInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } } - if in.Priority != nil { - in, out := &in.Priority, &out.Priority - *out = new(float64) - **out = **in + if in.GeoIPNotMatch != nil { + in, out := &in.GeoIPNotMatch, &out.GeoIPNotMatch + *out = make([]GeoIPNotMatchInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } } - if in.RuleCondition != nil { - in, out := &in.RuleCondition, &out.RuleCondition - *out = make([]RuleConditionParameters, len(*in)) + if in.IPRangesMatch != nil { + in, out := &in.IPRangesMatch, &out.IPRangesMatch + *out = make([]IPRangesMatchInitParameters, len(*in)) for i := range *in { (*in)[i].DeepCopyInto(&(*out)[i]) } } - if in.SmartProtection != nil { - in, out := &in.SmartProtection, &out.SmartProtection - *out = make([]SmartProtectionParameters, len(*in)) + if in.IPRangesNotMatch != nil { + in, out := &in.IPRangesNotMatch, &out.IPRangesNotMatch + *out = make([]IPRangesNotMatchInitParameters, len(*in)) for i := range *in { (*in)[i].DeepCopyInto(&(*out)[i]) } } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SecurityRuleParameters. -func (in *SecurityRuleParameters) DeepCopy() *SecurityRuleParameters { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SourceIPInitParameters. +func (in *SourceIPInitParameters) DeepCopy() *SourceIPInitParameters { if in == nil { return nil } - out := new(SecurityRuleParameters) + out := new(SourceIPInitParameters) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *SmartProtectionConditionInitParameters) DeepCopyInto(out *SmartProtectionConditionInitParameters) { +func (in *SourceIPObservation) DeepCopyInto(out *SourceIPObservation) { *out = *in - if in.Authority != nil { - in, out := &in.Authority, &out.Authority - *out = make([]ConditionAuthorityInitParameters, len(*in)) - for i := range *in { - (*in)[i].DeepCopyInto(&(*out)[i]) - } - } - if in.HTTPMethod != nil { - in, out := &in.HTTPMethod, &out.HTTPMethod - *out = make([]ConditionHTTPMethodInitParameters, len(*in)) + if in.GeoIPMatch != nil { + in, out := &in.GeoIPMatch, &out.GeoIPMatch + *out = make([]GeoIPMatchObservation, len(*in)) for i := range *in { (*in)[i].DeepCopyInto(&(*out)[i]) } } - if in.Headers != nil { - in, out := &in.Headers, &out.Headers - *out = make([]ConditionHeadersInitParameters, len(*in)) + if in.GeoIPNotMatch != nil { + in, out := &in.GeoIPNotMatch, &out.GeoIPNotMatch + *out = make([]GeoIPNotMatchObservation, len(*in)) for i := range *in { (*in)[i].DeepCopyInto(&(*out)[i]) } } - if in.RequestURI != nil { - in, out := &in.RequestURI, &out.RequestURI - *out = make([]ConditionRequestURIInitParameters, len(*in)) + if in.IPRangesMatch != nil { + in, out := &in.IPRangesMatch, &out.IPRangesMatch + *out = make([]IPRangesMatchObservation, len(*in)) for i := range *in { (*in)[i].DeepCopyInto(&(*out)[i]) } } - if in.SourceIP != nil { - in, out := &in.SourceIP, &out.SourceIP - *out = make([]ConditionSourceIPInitParameters, len(*in)) + if in.IPRangesNotMatch != nil { + in, out := &in.IPRangesNotMatch, &out.IPRangesNotMatch + *out = make([]IPRangesNotMatchObservation, len(*in)) for i := range *in { (*in)[i].DeepCopyInto(&(*out)[i]) } } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SmartProtectionConditionInitParameters. -func (in *SmartProtectionConditionInitParameters) DeepCopy() *SmartProtectionConditionInitParameters { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SourceIPObservation. +func (in *SourceIPObservation) DeepCopy() *SourceIPObservation { if in == nil { return nil } - out := new(SmartProtectionConditionInitParameters) + out := new(SourceIPObservation) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *SmartProtectionConditionObservation) DeepCopyInto(out *SmartProtectionConditionObservation) { +func (in *SourceIPParameters) DeepCopyInto(out *SourceIPParameters) { *out = *in - if in.Authority != nil { - in, out := &in.Authority, &out.Authority - *out = make([]ConditionAuthorityObservation, len(*in)) + if in.GeoIPMatch != nil { + in, out := &in.GeoIPMatch, &out.GeoIPMatch + *out = make([]GeoIPMatchParameters, len(*in)) for i := range *in { (*in)[i].DeepCopyInto(&(*out)[i]) } } - if in.HTTPMethod != nil { - in, out := &in.HTTPMethod, &out.HTTPMethod - *out = make([]ConditionHTTPMethodObservation, len(*in)) + if in.GeoIPNotMatch != nil { + in, out := &in.GeoIPNotMatch, &out.GeoIPNotMatch + *out = make([]GeoIPNotMatchParameters, len(*in)) for i := range *in { (*in)[i].DeepCopyInto(&(*out)[i]) } } - if in.Headers != nil { - in, out := &in.Headers, &out.Headers - *out = make([]ConditionHeadersObservation, len(*in)) + if in.IPRangesMatch != nil { + in, out := &in.IPRangesMatch, &out.IPRangesMatch + *out = make([]IPRangesMatchParameters, len(*in)) for i := range *in { (*in)[i].DeepCopyInto(&(*out)[i]) } } - if in.RequestURI != nil { - in, out := &in.RequestURI, &out.RequestURI - *out = make([]ConditionRequestURIObservation, len(*in)) + if in.IPRangesNotMatch != nil { + in, out := &in.IPRangesNotMatch, &out.IPRangesNotMatch + *out = make([]IPRangesNotMatchParameters, len(*in)) for i := range *in { (*in)[i].DeepCopyInto(&(*out)[i]) } } - if in.SourceIP != nil { - in, out := &in.SourceIP, &out.SourceIP - *out = make([]ConditionSourceIPObservation, len(*in)) - for i := range *in { - (*in)[i].DeepCopyInto(&(*out)[i]) - } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SourceIPParameters. +func (in *SourceIPParameters) DeepCopy() *SourceIPParameters { + if in == nil { + return nil + } + out := new(SourceIPParameters) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *ValueInitParameters) DeepCopyInto(out *ValueInitParameters) { + *out = *in + if in.ExactMatch != nil { + in, out := &in.ExactMatch, &out.ExactMatch + *out = new(string) + **out = **in + } + if in.ExactNotMatch != nil { + in, out := &in.ExactNotMatch, &out.ExactNotMatch + *out = new(string) + **out = **in + } + if in.PireRegexMatch != nil { + in, out := &in.PireRegexMatch, &out.PireRegexMatch + *out = new(string) + **out = **in + } + if in.PireRegexNotMatch != nil { + in, out := &in.PireRegexNotMatch, &out.PireRegexNotMatch + *out = new(string) + **out = **in + } + if in.PrefixMatch != nil { + in, out := &in.PrefixMatch, &out.PrefixMatch + *out = new(string) + **out = **in + } + if in.PrefixNotMatch != nil { + in, out := &in.PrefixNotMatch, &out.PrefixNotMatch + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ValueInitParameters. +func (in *ValueInitParameters) DeepCopy() *ValueInitParameters { + if in == nil { + return nil + } + out := new(ValueInitParameters) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *ValueObservation) DeepCopyInto(out *ValueObservation) { + *out = *in + if in.ExactMatch != nil { + in, out := &in.ExactMatch, &out.ExactMatch + *out = new(string) + **out = **in + } + if in.ExactNotMatch != nil { + in, out := &in.ExactNotMatch, &out.ExactNotMatch + *out = new(string) + **out = **in + } + if in.PireRegexMatch != nil { + in, out := &in.PireRegexMatch, &out.PireRegexMatch + *out = new(string) + **out = **in + } + if in.PireRegexNotMatch != nil { + in, out := &in.PireRegexNotMatch, &out.PireRegexNotMatch + *out = new(string) + **out = **in + } + if in.PrefixMatch != nil { + in, out := &in.PrefixMatch, &out.PrefixMatch + *out = new(string) + **out = **in + } + if in.PrefixNotMatch != nil { + in, out := &in.PrefixNotMatch, &out.PrefixNotMatch + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ValueObservation. +func (in *ValueObservation) DeepCopy() *ValueObservation { + if in == nil { + return nil + } + out := new(ValueObservation) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *ValueParameters) DeepCopyInto(out *ValueParameters) { + *out = *in + if in.ExactMatch != nil { + in, out := &in.ExactMatch, &out.ExactMatch + *out = new(string) + **out = **in + } + if in.ExactNotMatch != nil { + in, out := &in.ExactNotMatch, &out.ExactNotMatch + *out = new(string) + **out = **in + } + if in.PireRegexMatch != nil { + in, out := &in.PireRegexMatch, &out.PireRegexMatch + *out = new(string) + **out = **in + } + if in.PireRegexNotMatch != nil { + in, out := &in.PireRegexNotMatch, &out.PireRegexNotMatch + *out = new(string) + **out = **in + } + if in.PrefixMatch != nil { + in, out := &in.PrefixMatch, &out.PrefixMatch + *out = new(string) + **out = **in + } + if in.PrefixNotMatch != nil { + in, out := &in.PrefixNotMatch, &out.PrefixNotMatch + *out = new(string) + **out = **in } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SmartProtectionConditionObservation. -func (in *SmartProtectionConditionObservation) DeepCopy() *SmartProtectionConditionObservation { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ValueParameters. +func (in *ValueParameters) DeepCopy() *ValueParameters { if in == nil { return nil } - out := new(SmartProtectionConditionObservation) + out := new(ValueParameters) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *SmartProtectionConditionParameters) DeepCopyInto(out *SmartProtectionConditionParameters) { +func (in *WafConditionAuthorityInitParameters) DeepCopyInto(out *WafConditionAuthorityInitParameters) { *out = *in - if in.Authority != nil { - in, out := &in.Authority, &out.Authority - *out = make([]ConditionAuthorityParameters, len(*in)) - for i := range *in { - (*in)[i].DeepCopyInto(&(*out)[i]) - } - } - if in.HTTPMethod != nil { - in, out := &in.HTTPMethod, &out.HTTPMethod - *out = make([]ConditionHTTPMethodParameters, len(*in)) - for i := range *in { - (*in)[i].DeepCopyInto(&(*out)[i]) - } - } - if in.Headers != nil { - in, out := &in.Headers, &out.Headers - *out = make([]ConditionHeadersParameters, len(*in)) - for i := range *in { - (*in)[i].DeepCopyInto(&(*out)[i]) - } - } - if in.RequestURI != nil { - in, out := &in.RequestURI, &out.RequestURI - *out = make([]ConditionRequestURIParameters, len(*in)) - for i := range *in { - (*in)[i].DeepCopyInto(&(*out)[i]) - } - } - if in.SourceIP != nil { - in, out := &in.SourceIP, &out.SourceIP - *out = make([]ConditionSourceIPParameters, len(*in)) + if in.Authorities != nil { + in, out := &in.Authorities, &out.Authorities + *out = make([]ConditionAuthorityAuthoritiesInitParameters, len(*in)) for i := range *in { (*in)[i].DeepCopyInto(&(*out)[i]) } } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SmartProtectionConditionParameters. -func (in *SmartProtectionConditionParameters) DeepCopy() *SmartProtectionConditionParameters { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WafConditionAuthorityInitParameters. +func (in *WafConditionAuthorityInitParameters) DeepCopy() *WafConditionAuthorityInitParameters { if in == nil { return nil } - out := new(SmartProtectionConditionParameters) + out := new(WafConditionAuthorityInitParameters) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *SmartProtectionInitParameters) DeepCopyInto(out *SmartProtectionInitParameters) { +func (in *WafConditionAuthorityObservation) DeepCopyInto(out *WafConditionAuthorityObservation) { *out = *in - if in.Condition != nil { - in, out := &in.Condition, &out.Condition - *out = make([]SmartProtectionConditionInitParameters, len(*in)) + if in.Authorities != nil { + in, out := &in.Authorities, &out.Authorities + *out = make([]ConditionAuthorityAuthoritiesObservation, len(*in)) for i := range *in { (*in)[i].DeepCopyInto(&(*out)[i]) } } - if in.Mode != nil { - in, out := &in.Mode, &out.Mode - *out = new(string) - **out = **in - } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SmartProtectionInitParameters. -func (in *SmartProtectionInitParameters) DeepCopy() *SmartProtectionInitParameters { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WafConditionAuthorityObservation. +func (in *WafConditionAuthorityObservation) DeepCopy() *WafConditionAuthorityObservation { if in == nil { return nil } - out := new(SmartProtectionInitParameters) + out := new(WafConditionAuthorityObservation) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *SmartProtectionObservation) DeepCopyInto(out *SmartProtectionObservation) { +func (in *WafConditionAuthorityParameters) DeepCopyInto(out *WafConditionAuthorityParameters) { *out = *in - if in.Condition != nil { - in, out := &in.Condition, &out.Condition - *out = make([]SmartProtectionConditionObservation, len(*in)) + if in.Authorities != nil { + in, out := &in.Authorities, &out.Authorities + *out = make([]ConditionAuthorityAuthoritiesParameters, len(*in)) for i := range *in { (*in)[i].DeepCopyInto(&(*out)[i]) } } - if in.Mode != nil { - in, out := &in.Mode, &out.Mode - *out = new(string) - **out = **in - } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SmartProtectionObservation. -func (in *SmartProtectionObservation) DeepCopy() *SmartProtectionObservation { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WafConditionAuthorityParameters. +func (in *WafConditionAuthorityParameters) DeepCopy() *WafConditionAuthorityParameters { if in == nil { return nil } - out := new(SmartProtectionObservation) + out := new(WafConditionAuthorityParameters) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *SmartProtectionParameters) DeepCopyInto(out *SmartProtectionParameters) { +func (in *WafConditionHTTPMethodInitParameters) DeepCopyInto(out *WafConditionHTTPMethodInitParameters) { *out = *in - if in.Condition != nil { - in, out := &in.Condition, &out.Condition - *out = make([]SmartProtectionConditionParameters, len(*in)) + if in.HTTPMethods != nil { + in, out := &in.HTTPMethods, &out.HTTPMethods + *out = make([]ConditionHTTPMethodHTTPMethodsInitParameters, len(*in)) for i := range *in { (*in)[i].DeepCopyInto(&(*out)[i]) } } - if in.Mode != nil { - in, out := &in.Mode, &out.Mode - *out = new(string) - **out = **in - } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SmartProtectionParameters. -func (in *SmartProtectionParameters) DeepCopy() *SmartProtectionParameters { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WafConditionHTTPMethodInitParameters. +func (in *WafConditionHTTPMethodInitParameters) DeepCopy() *WafConditionHTTPMethodInitParameters { if in == nil { return nil } - out := new(SmartProtectionParameters) + out := new(WafConditionHTTPMethodInitParameters) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *SourceIPGeoIPMatchInitParameters) DeepCopyInto(out *SourceIPGeoIPMatchInitParameters) { +func (in *WafConditionHTTPMethodObservation) DeepCopyInto(out *WafConditionHTTPMethodObservation) { *out = *in - if in.Locations != nil { - in, out := &in.Locations, &out.Locations - *out = make([]*string, len(*in)) + if in.HTTPMethods != nil { + in, out := &in.HTTPMethods, &out.HTTPMethods + *out = make([]ConditionHTTPMethodHTTPMethodsObservation, len(*in)) for i := range *in { - if (*in)[i] != nil { - in, out := &(*in)[i], &(*out)[i] - *out = new(string) - **out = **in - } + (*in)[i].DeepCopyInto(&(*out)[i]) } } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SourceIPGeoIPMatchInitParameters. -func (in *SourceIPGeoIPMatchInitParameters) DeepCopy() *SourceIPGeoIPMatchInitParameters { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WafConditionHTTPMethodObservation. +func (in *WafConditionHTTPMethodObservation) DeepCopy() *WafConditionHTTPMethodObservation { if in == nil { return nil } - out := new(SourceIPGeoIPMatchInitParameters) + out := new(WafConditionHTTPMethodObservation) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *SourceIPGeoIPMatchObservation) DeepCopyInto(out *SourceIPGeoIPMatchObservation) { +func (in *WafConditionHTTPMethodParameters) DeepCopyInto(out *WafConditionHTTPMethodParameters) { *out = *in - if in.Locations != nil { - in, out := &in.Locations, &out.Locations - *out = make([]*string, len(*in)) + if in.HTTPMethods != nil { + in, out := &in.HTTPMethods, &out.HTTPMethods + *out = make([]ConditionHTTPMethodHTTPMethodsParameters, len(*in)) for i := range *in { - if (*in)[i] != nil { - in, out := &(*in)[i], &(*out)[i] - *out = new(string) - **out = **in - } + (*in)[i].DeepCopyInto(&(*out)[i]) } } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SourceIPGeoIPMatchObservation. -func (in *SourceIPGeoIPMatchObservation) DeepCopy() *SourceIPGeoIPMatchObservation { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WafConditionHTTPMethodParameters. +func (in *WafConditionHTTPMethodParameters) DeepCopy() *WafConditionHTTPMethodParameters { if in == nil { return nil } - out := new(SourceIPGeoIPMatchObservation) + out := new(WafConditionHTTPMethodParameters) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *SourceIPGeoIPMatchParameters) DeepCopyInto(out *SourceIPGeoIPMatchParameters) { +func (in *WafConditionHeadersInitParameters) DeepCopyInto(out *WafConditionHeadersInitParameters) { *out = *in - if in.Locations != nil { - in, out := &in.Locations, &out.Locations - *out = make([]*string, len(*in)) + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } + if in.Value != nil { + in, out := &in.Value, &out.Value + *out = make([]ConditionHeadersValueInitParameters, len(*in)) for i := range *in { - if (*in)[i] != nil { - in, out := &(*in)[i], &(*out)[i] - *out = new(string) - **out = **in - } + (*in)[i].DeepCopyInto(&(*out)[i]) } } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SourceIPGeoIPMatchParameters. -func (in *SourceIPGeoIPMatchParameters) DeepCopy() *SourceIPGeoIPMatchParameters { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WafConditionHeadersInitParameters. +func (in *WafConditionHeadersInitParameters) DeepCopy() *WafConditionHeadersInitParameters { if in == nil { return nil } - out := new(SourceIPGeoIPMatchParameters) + out := new(WafConditionHeadersInitParameters) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *SourceIPGeoIPNotMatchInitParameters) DeepCopyInto(out *SourceIPGeoIPNotMatchInitParameters) { +func (in *WafConditionHeadersObservation) DeepCopyInto(out *WafConditionHeadersObservation) { *out = *in - if in.Locations != nil { - in, out := &in.Locations, &out.Locations - *out = make([]*string, len(*in)) + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } + if in.Value != nil { + in, out := &in.Value, &out.Value + *out = make([]ConditionHeadersValueObservation, len(*in)) for i := range *in { - if (*in)[i] != nil { - in, out := &(*in)[i], &(*out)[i] - *out = new(string) - **out = **in - } + (*in)[i].DeepCopyInto(&(*out)[i]) } } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SourceIPGeoIPNotMatchInitParameters. -func (in *SourceIPGeoIPNotMatchInitParameters) DeepCopy() *SourceIPGeoIPNotMatchInitParameters { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WafConditionHeadersObservation. +func (in *WafConditionHeadersObservation) DeepCopy() *WafConditionHeadersObservation { if in == nil { return nil } - out := new(SourceIPGeoIPNotMatchInitParameters) + out := new(WafConditionHeadersObservation) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *SourceIPGeoIPNotMatchObservation) DeepCopyInto(out *SourceIPGeoIPNotMatchObservation) { +func (in *WafConditionHeadersParameters) DeepCopyInto(out *WafConditionHeadersParameters) { *out = *in - if in.Locations != nil { - in, out := &in.Locations, &out.Locations - *out = make([]*string, len(*in)) + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } + if in.Value != nil { + in, out := &in.Value, &out.Value + *out = make([]ConditionHeadersValueParameters, len(*in)) for i := range *in { - if (*in)[i] != nil { - in, out := &(*in)[i], &(*out)[i] - *out = new(string) - **out = **in - } + (*in)[i].DeepCopyInto(&(*out)[i]) } } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SourceIPGeoIPNotMatchObservation. -func (in *SourceIPGeoIPNotMatchObservation) DeepCopy() *SourceIPGeoIPNotMatchObservation { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WafConditionHeadersParameters. +func (in *WafConditionHeadersParameters) DeepCopy() *WafConditionHeadersParameters { if in == nil { return nil } - out := new(SourceIPGeoIPNotMatchObservation) + out := new(WafConditionHeadersParameters) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *SourceIPGeoIPNotMatchParameters) DeepCopyInto(out *SourceIPGeoIPNotMatchParameters) { +func (in *WafConditionInitParameters) DeepCopyInto(out *WafConditionInitParameters) { *out = *in - if in.Locations != nil { - in, out := &in.Locations, &out.Locations - *out = make([]*string, len(*in)) + if in.Authority != nil { + in, out := &in.Authority, &out.Authority + *out = make([]WafConditionAuthorityInitParameters, len(*in)) for i := range *in { - if (*in)[i] != nil { - in, out := &(*in)[i], &(*out)[i] - *out = new(string) - **out = **in - } + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.HTTPMethod != nil { + in, out := &in.HTTPMethod, &out.HTTPMethod + *out = make([]WafConditionHTTPMethodInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Headers != nil { + in, out := &in.Headers, &out.Headers + *out = make([]WafConditionHeadersInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.RequestURI != nil { + in, out := &in.RequestURI, &out.RequestURI + *out = make([]WafConditionRequestURIInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.SourceIP != nil { + in, out := &in.SourceIP, &out.SourceIP + *out = make([]WafConditionSourceIPInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) } } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SourceIPGeoIPNotMatchParameters. -func (in *SourceIPGeoIPNotMatchParameters) DeepCopy() *SourceIPGeoIPNotMatchParameters { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WafConditionInitParameters. +func (in *WafConditionInitParameters) DeepCopy() *WafConditionInitParameters { if in == nil { return nil } - out := new(SourceIPGeoIPNotMatchParameters) + out := new(WafConditionInitParameters) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *SourceIPIPRangesMatchInitParameters) DeepCopyInto(out *SourceIPIPRangesMatchInitParameters) { +func (in *WafConditionObservation) DeepCopyInto(out *WafConditionObservation) { *out = *in - if in.IPRanges != nil { - in, out := &in.IPRanges, &out.IPRanges - *out = make([]*string, len(*in)) + if in.Authority != nil { + in, out := &in.Authority, &out.Authority + *out = make([]WafConditionAuthorityObservation, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.HTTPMethod != nil { + in, out := &in.HTTPMethod, &out.HTTPMethod + *out = make([]WafConditionHTTPMethodObservation, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Headers != nil { + in, out := &in.Headers, &out.Headers + *out = make([]WafConditionHeadersObservation, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.RequestURI != nil { + in, out := &in.RequestURI, &out.RequestURI + *out = make([]WafConditionRequestURIObservation, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.SourceIP != nil { + in, out := &in.SourceIP, &out.SourceIP + *out = make([]WafConditionSourceIPObservation, len(*in)) for i := range *in { - if (*in)[i] != nil { - in, out := &(*in)[i], &(*out)[i] - *out = new(string) - **out = **in - } + (*in)[i].DeepCopyInto(&(*out)[i]) } } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SourceIPIPRangesMatchInitParameters. -func (in *SourceIPIPRangesMatchInitParameters) DeepCopy() *SourceIPIPRangesMatchInitParameters { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WafConditionObservation. +func (in *WafConditionObservation) DeepCopy() *WafConditionObservation { if in == nil { return nil } - out := new(SourceIPIPRangesMatchInitParameters) + out := new(WafConditionObservation) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *SourceIPIPRangesMatchObservation) DeepCopyInto(out *SourceIPIPRangesMatchObservation) { +func (in *WafConditionParameters) DeepCopyInto(out *WafConditionParameters) { *out = *in - if in.IPRanges != nil { - in, out := &in.IPRanges, &out.IPRanges - *out = make([]*string, len(*in)) + if in.Authority != nil { + in, out := &in.Authority, &out.Authority + *out = make([]WafConditionAuthorityParameters, len(*in)) for i := range *in { - if (*in)[i] != nil { - in, out := &(*in)[i], &(*out)[i] - *out = new(string) - **out = **in - } + (*in)[i].DeepCopyInto(&(*out)[i]) } } -} - -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SourceIPIPRangesMatchObservation. -func (in *SourceIPIPRangesMatchObservation) DeepCopy() *SourceIPIPRangesMatchObservation { - if in == nil { - return nil + if in.HTTPMethod != nil { + in, out := &in.HTTPMethod, &out.HTTPMethod + *out = make([]WafConditionHTTPMethodParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } } - out := new(SourceIPIPRangesMatchObservation) - in.DeepCopyInto(out) - return out -} - -// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *SourceIPIPRangesMatchParameters) DeepCopyInto(out *SourceIPIPRangesMatchParameters) { - *out = *in - if in.IPRanges != nil { - in, out := &in.IPRanges, &out.IPRanges - *out = make([]*string, len(*in)) + if in.Headers != nil { + in, out := &in.Headers, &out.Headers + *out = make([]WafConditionHeadersParameters, len(*in)) for i := range *in { - if (*in)[i] != nil { - in, out := &(*in)[i], &(*out)[i] - *out = new(string) - **out = **in - } + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.RequestURI != nil { + in, out := &in.RequestURI, &out.RequestURI + *out = make([]WafConditionRequestURIParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.SourceIP != nil { + in, out := &in.SourceIP, &out.SourceIP + *out = make([]WafConditionSourceIPParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) } } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SourceIPIPRangesMatchParameters. -func (in *SourceIPIPRangesMatchParameters) DeepCopy() *SourceIPIPRangesMatchParameters { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WafConditionParameters. +func (in *WafConditionParameters) DeepCopy() *WafConditionParameters { if in == nil { return nil } - out := new(SourceIPIPRangesMatchParameters) + out := new(WafConditionParameters) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *SourceIPIPRangesNotMatchInitParameters) DeepCopyInto(out *SourceIPIPRangesNotMatchInitParameters) { +func (in *WafConditionRequestURIInitParameters) DeepCopyInto(out *WafConditionRequestURIInitParameters) { *out = *in - if in.IPRanges != nil { - in, out := &in.IPRanges, &out.IPRanges - *out = make([]*string, len(*in)) + if in.Path != nil { + in, out := &in.Path, &out.Path + *out = make([]ConditionRequestURIPathInitParameters, len(*in)) for i := range *in { - if (*in)[i] != nil { - in, out := &(*in)[i], &(*out)[i] - *out = new(string) - **out = **in - } + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Queries != nil { + in, out := &in.Queries, &out.Queries + *out = make([]ConditionRequestURIQueriesInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) } } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SourceIPIPRangesNotMatchInitParameters. -func (in *SourceIPIPRangesNotMatchInitParameters) DeepCopy() *SourceIPIPRangesNotMatchInitParameters { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WafConditionRequestURIInitParameters. +func (in *WafConditionRequestURIInitParameters) DeepCopy() *WafConditionRequestURIInitParameters { if in == nil { return nil } - out := new(SourceIPIPRangesNotMatchInitParameters) + out := new(WafConditionRequestURIInitParameters) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *SourceIPIPRangesNotMatchObservation) DeepCopyInto(out *SourceIPIPRangesNotMatchObservation) { +func (in *WafConditionRequestURIObservation) DeepCopyInto(out *WafConditionRequestURIObservation) { *out = *in - if in.IPRanges != nil { - in, out := &in.IPRanges, &out.IPRanges - *out = make([]*string, len(*in)) + if in.Path != nil { + in, out := &in.Path, &out.Path + *out = make([]ConditionRequestURIPathObservation, len(*in)) for i := range *in { - if (*in)[i] != nil { - in, out := &(*in)[i], &(*out)[i] - *out = new(string) - **out = **in - } + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Queries != nil { + in, out := &in.Queries, &out.Queries + *out = make([]ConditionRequestURIQueriesObservation, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) } } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SourceIPIPRangesNotMatchObservation. -func (in *SourceIPIPRangesNotMatchObservation) DeepCopy() *SourceIPIPRangesNotMatchObservation { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WafConditionRequestURIObservation. +func (in *WafConditionRequestURIObservation) DeepCopy() *WafConditionRequestURIObservation { if in == nil { return nil } - out := new(SourceIPIPRangesNotMatchObservation) + out := new(WafConditionRequestURIObservation) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *SourceIPIPRangesNotMatchParameters) DeepCopyInto(out *SourceIPIPRangesNotMatchParameters) { +func (in *WafConditionRequestURIParameters) DeepCopyInto(out *WafConditionRequestURIParameters) { *out = *in - if in.IPRanges != nil { - in, out := &in.IPRanges, &out.IPRanges - *out = make([]*string, len(*in)) + if in.Path != nil { + in, out := &in.Path, &out.Path + *out = make([]ConditionRequestURIPathParameters, len(*in)) for i := range *in { - if (*in)[i] != nil { - in, out := &(*in)[i], &(*out)[i] - *out = new(string) - **out = **in - } + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Queries != nil { + in, out := &in.Queries, &out.Queries + *out = make([]ConditionRequestURIQueriesParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) } } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SourceIPIPRangesNotMatchParameters. -func (in *SourceIPIPRangesNotMatchParameters) DeepCopy() *SourceIPIPRangesNotMatchParameters { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WafConditionRequestURIParameters. +func (in *WafConditionRequestURIParameters) DeepCopy() *WafConditionRequestURIParameters { if in == nil { return nil } - out := new(SourceIPIPRangesNotMatchParameters) + out := new(WafConditionRequestURIParameters) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *SourceIPInitParameters) DeepCopyInto(out *SourceIPInitParameters) { +func (in *WafConditionSourceIPInitParameters) DeepCopyInto(out *WafConditionSourceIPInitParameters) { *out = *in if in.GeoIPMatch != nil { in, out := &in.GeoIPMatch, &out.GeoIPMatch - *out = make([]GeoIPMatchInitParameters, len(*in)) + *out = make([]ConditionSourceIPGeoIPMatchInitParameters, len(*in)) for i := range *in { (*in)[i].DeepCopyInto(&(*out)[i]) } } if in.GeoIPNotMatch != nil { in, out := &in.GeoIPNotMatch, &out.GeoIPNotMatch - *out = make([]GeoIPNotMatchInitParameters, len(*in)) + *out = make([]ConditionSourceIPGeoIPNotMatchInitParameters, len(*in)) for i := range *in { (*in)[i].DeepCopyInto(&(*out)[i]) } } if in.IPRangesMatch != nil { in, out := &in.IPRangesMatch, &out.IPRangesMatch - *out = make([]IPRangesMatchInitParameters, len(*in)) + *out = make([]ConditionSourceIPIPRangesMatchInitParameters, len(*in)) for i := range *in { (*in)[i].DeepCopyInto(&(*out)[i]) } } if in.IPRangesNotMatch != nil { in, out := &in.IPRangesNotMatch, &out.IPRangesNotMatch - *out = make([]IPRangesNotMatchInitParameters, len(*in)) + *out = make([]ConditionSourceIPIPRangesNotMatchInitParameters, len(*in)) for i := range *in { (*in)[i].DeepCopyInto(&(*out)[i]) } } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SourceIPInitParameters. -func (in *SourceIPInitParameters) DeepCopy() *SourceIPInitParameters { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WafConditionSourceIPInitParameters. +func (in *WafConditionSourceIPInitParameters) DeepCopy() *WafConditionSourceIPInitParameters { if in == nil { return nil } - out := new(SourceIPInitParameters) + out := new(WafConditionSourceIPInitParameters) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *SourceIPObservation) DeepCopyInto(out *SourceIPObservation) { +func (in *WafConditionSourceIPObservation) DeepCopyInto(out *WafConditionSourceIPObservation) { *out = *in if in.GeoIPMatch != nil { in, out := &in.GeoIPMatch, &out.GeoIPMatch - *out = make([]GeoIPMatchObservation, len(*in)) + *out = make([]ConditionSourceIPGeoIPMatchObservation, len(*in)) for i := range *in { (*in)[i].DeepCopyInto(&(*out)[i]) } } if in.GeoIPNotMatch != nil { in, out := &in.GeoIPNotMatch, &out.GeoIPNotMatch - *out = make([]GeoIPNotMatchObservation, len(*in)) + *out = make([]ConditionSourceIPGeoIPNotMatchObservation, len(*in)) for i := range *in { (*in)[i].DeepCopyInto(&(*out)[i]) } } if in.IPRangesMatch != nil { in, out := &in.IPRangesMatch, &out.IPRangesMatch - *out = make([]IPRangesMatchObservation, len(*in)) + *out = make([]ConditionSourceIPIPRangesMatchObservation, len(*in)) for i := range *in { (*in)[i].DeepCopyInto(&(*out)[i]) } } if in.IPRangesNotMatch != nil { in, out := &in.IPRangesNotMatch, &out.IPRangesNotMatch - *out = make([]IPRangesNotMatchObservation, len(*in)) + *out = make([]ConditionSourceIPIPRangesNotMatchObservation, len(*in)) for i := range *in { (*in)[i].DeepCopyInto(&(*out)[i]) } } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SourceIPObservation. -func (in *SourceIPObservation) DeepCopy() *SourceIPObservation { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WafConditionSourceIPObservation. +func (in *WafConditionSourceIPObservation) DeepCopy() *WafConditionSourceIPObservation { if in == nil { return nil } - out := new(SourceIPObservation) + out := new(WafConditionSourceIPObservation) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *SourceIPParameters) DeepCopyInto(out *SourceIPParameters) { +func (in *WafConditionSourceIPParameters) DeepCopyInto(out *WafConditionSourceIPParameters) { *out = *in if in.GeoIPMatch != nil { in, out := &in.GeoIPMatch, &out.GeoIPMatch - *out = make([]GeoIPMatchParameters, len(*in)) + *out = make([]ConditionSourceIPGeoIPMatchParameters, len(*in)) for i := range *in { (*in)[i].DeepCopyInto(&(*out)[i]) } } if in.GeoIPNotMatch != nil { in, out := &in.GeoIPNotMatch, &out.GeoIPNotMatch - *out = make([]GeoIPNotMatchParameters, len(*in)) + *out = make([]ConditionSourceIPGeoIPNotMatchParameters, len(*in)) for i := range *in { (*in)[i].DeepCopyInto(&(*out)[i]) } } if in.IPRangesMatch != nil { in, out := &in.IPRangesMatch, &out.IPRangesMatch - *out = make([]IPRangesMatchParameters, len(*in)) + *out = make([]ConditionSourceIPIPRangesMatchParameters, len(*in)) for i := range *in { (*in)[i].DeepCopyInto(&(*out)[i]) } } if in.IPRangesNotMatch != nil { in, out := &in.IPRangesNotMatch, &out.IPRangesNotMatch - *out = make([]IPRangesNotMatchParameters, len(*in)) + *out = make([]ConditionSourceIPIPRangesNotMatchParameters, len(*in)) for i := range *in { (*in)[i].DeepCopyInto(&(*out)[i]) } } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SourceIPParameters. -func (in *SourceIPParameters) DeepCopy() *SourceIPParameters { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WafConditionSourceIPParameters. +func (in *WafConditionSourceIPParameters) DeepCopy() *WafConditionSourceIPParameters { if in == nil { return nil } - out := new(SourceIPParameters) + out := new(WafConditionSourceIPParameters) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *ValueInitParameters) DeepCopyInto(out *ValueInitParameters) { +func (in *WafInitParameters) DeepCopyInto(out *WafInitParameters) { *out = *in - if in.ExactMatch != nil { - in, out := &in.ExactMatch, &out.ExactMatch - *out = new(string) - **out = **in - } - if in.ExactNotMatch != nil { - in, out := &in.ExactNotMatch, &out.ExactNotMatch - *out = new(string) - **out = **in - } - if in.PireRegexMatch != nil { - in, out := &in.PireRegexMatch, &out.PireRegexMatch - *out = new(string) - **out = **in - } - if in.PireRegexNotMatch != nil { - in, out := &in.PireRegexNotMatch, &out.PireRegexNotMatch - *out = new(string) - **out = **in + if in.Condition != nil { + in, out := &in.Condition, &out.Condition + *out = make([]WafConditionInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } } - if in.PrefixMatch != nil { - in, out := &in.PrefixMatch, &out.PrefixMatch + if in.Mode != nil { + in, out := &in.Mode, &out.Mode *out = new(string) **out = **in } - if in.PrefixNotMatch != nil { - in, out := &in.PrefixNotMatch, &out.PrefixNotMatch + if in.WafProfileID != nil { + in, out := &in.WafProfileID, &out.WafProfileID *out = new(string) **out = **in } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ValueInitParameters. -func (in *ValueInitParameters) DeepCopy() *ValueInitParameters { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WafInitParameters. +func (in *WafInitParameters) DeepCopy() *WafInitParameters { if in == nil { return nil } - out := new(ValueInitParameters) + out := new(WafInitParameters) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *ValueObservation) DeepCopyInto(out *ValueObservation) { +func (in *WafObservation) DeepCopyInto(out *WafObservation) { *out = *in - if in.ExactMatch != nil { - in, out := &in.ExactMatch, &out.ExactMatch - *out = new(string) - **out = **in - } - if in.ExactNotMatch != nil { - in, out := &in.ExactNotMatch, &out.ExactNotMatch - *out = new(string) - **out = **in - } - if in.PireRegexMatch != nil { - in, out := &in.PireRegexMatch, &out.PireRegexMatch - *out = new(string) - **out = **in - } - if in.PireRegexNotMatch != nil { - in, out := &in.PireRegexNotMatch, &out.PireRegexNotMatch - *out = new(string) - **out = **in + if in.Condition != nil { + in, out := &in.Condition, &out.Condition + *out = make([]WafConditionObservation, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } } - if in.PrefixMatch != nil { - in, out := &in.PrefixMatch, &out.PrefixMatch + if in.Mode != nil { + in, out := &in.Mode, &out.Mode *out = new(string) **out = **in } - if in.PrefixNotMatch != nil { - in, out := &in.PrefixNotMatch, &out.PrefixNotMatch + if in.WafProfileID != nil { + in, out := &in.WafProfileID, &out.WafProfileID *out = new(string) **out = **in } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ValueObservation. -func (in *ValueObservation) DeepCopy() *ValueObservation { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WafObservation. +func (in *WafObservation) DeepCopy() *WafObservation { if in == nil { return nil } - out := new(ValueObservation) + out := new(WafObservation) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *ValueParameters) DeepCopyInto(out *ValueParameters) { +func (in *WafParameters) DeepCopyInto(out *WafParameters) { *out = *in - if in.ExactMatch != nil { - in, out := &in.ExactMatch, &out.ExactMatch - *out = new(string) - **out = **in - } - if in.ExactNotMatch != nil { - in, out := &in.ExactNotMatch, &out.ExactNotMatch - *out = new(string) - **out = **in - } - if in.PireRegexMatch != nil { - in, out := &in.PireRegexMatch, &out.PireRegexMatch - *out = new(string) - **out = **in - } - if in.PireRegexNotMatch != nil { - in, out := &in.PireRegexNotMatch, &out.PireRegexNotMatch - *out = new(string) - **out = **in + if in.Condition != nil { + in, out := &in.Condition, &out.Condition + *out = make([]WafConditionParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } } - if in.PrefixMatch != nil { - in, out := &in.PrefixMatch, &out.PrefixMatch + if in.Mode != nil { + in, out := &in.Mode, &out.Mode *out = new(string) **out = **in } - if in.PrefixNotMatch != nil { - in, out := &in.PrefixNotMatch, &out.PrefixNotMatch + if in.WafProfileID != nil { + in, out := &in.WafProfileID, &out.WafProfileID *out = new(string) **out = **in } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ValueParameters. -func (in *ValueParameters) DeepCopy() *ValueParameters { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WafParameters. +func (in *WafParameters) DeepCopy() *WafParameters { if in == nil { return nil } - out := new(ValueParameters) + out := new(WafParameters) in.DeepCopyInto(out) return out } diff --git a/apis/sws/v1alpha1/zz_securityprofile_types.go b/apis/sws/v1alpha1/zz_securityprofile_types.go index 6869036..825da4b 100755 --- a/apis/sws/v1alpha1/zz_securityprofile_types.go +++ b/apis/sws/v1alpha1/zz_securityprofile_types.go @@ -121,6 +121,55 @@ type AuthorityParameters struct { Authorities []AuthoritiesParameters `json:"authorities,omitempty" tf:"authorities,omitempty"` } +type ConditionAuthorityAuthoritiesInitParameters struct { + ExactMatch *string `json:"exactMatch,omitempty" tf:"exact_match,omitempty"` + + ExactNotMatch *string `json:"exactNotMatch,omitempty" tf:"exact_not_match,omitempty"` + + PireRegexMatch *string `json:"pireRegexMatch,omitempty" tf:"pire_regex_match,omitempty"` + + PireRegexNotMatch *string `json:"pireRegexNotMatch,omitempty" tf:"pire_regex_not_match,omitempty"` + + PrefixMatch *string `json:"prefixMatch,omitempty" tf:"prefix_match,omitempty"` + + PrefixNotMatch *string `json:"prefixNotMatch,omitempty" tf:"prefix_not_match,omitempty"` +} + +type ConditionAuthorityAuthoritiesObservation struct { + ExactMatch *string `json:"exactMatch,omitempty" tf:"exact_match,omitempty"` + + ExactNotMatch *string `json:"exactNotMatch,omitempty" tf:"exact_not_match,omitempty"` + + PireRegexMatch *string `json:"pireRegexMatch,omitempty" tf:"pire_regex_match,omitempty"` + + PireRegexNotMatch *string `json:"pireRegexNotMatch,omitempty" tf:"pire_regex_not_match,omitempty"` + + PrefixMatch *string `json:"prefixMatch,omitempty" tf:"prefix_match,omitempty"` + + PrefixNotMatch *string `json:"prefixNotMatch,omitempty" tf:"prefix_not_match,omitempty"` +} + +type ConditionAuthorityAuthoritiesParameters struct { + + // +kubebuilder:validation:Optional + ExactMatch *string `json:"exactMatch,omitempty" tf:"exact_match,omitempty"` + + // +kubebuilder:validation:Optional + ExactNotMatch *string `json:"exactNotMatch,omitempty" tf:"exact_not_match,omitempty"` + + // +kubebuilder:validation:Optional + PireRegexMatch *string `json:"pireRegexMatch,omitempty" tf:"pire_regex_match,omitempty"` + + // +kubebuilder:validation:Optional + PireRegexNotMatch *string `json:"pireRegexNotMatch,omitempty" tf:"pire_regex_not_match,omitempty"` + + // +kubebuilder:validation:Optional + PrefixMatch *string `json:"prefixMatch,omitempty" tf:"prefix_match,omitempty"` + + // +kubebuilder:validation:Optional + PrefixNotMatch *string `json:"prefixNotMatch,omitempty" tf:"prefix_not_match,omitempty"` +} + type ConditionAuthorityInitParameters struct { Authorities []AuthorityAuthoritiesInitParameters `json:"authorities,omitempty" tf:"authorities,omitempty"` } @@ -135,6 +184,55 @@ type ConditionAuthorityParameters struct { Authorities []AuthorityAuthoritiesParameters `json:"authorities,omitempty" tf:"authorities,omitempty"` } +type ConditionHTTPMethodHTTPMethodsInitParameters struct { + ExactMatch *string `json:"exactMatch,omitempty" tf:"exact_match,omitempty"` + + ExactNotMatch *string `json:"exactNotMatch,omitempty" tf:"exact_not_match,omitempty"` + + PireRegexMatch *string `json:"pireRegexMatch,omitempty" tf:"pire_regex_match,omitempty"` + + PireRegexNotMatch *string `json:"pireRegexNotMatch,omitempty" tf:"pire_regex_not_match,omitempty"` + + PrefixMatch *string `json:"prefixMatch,omitempty" tf:"prefix_match,omitempty"` + + PrefixNotMatch *string `json:"prefixNotMatch,omitempty" tf:"prefix_not_match,omitempty"` +} + +type ConditionHTTPMethodHTTPMethodsObservation struct { + ExactMatch *string `json:"exactMatch,omitempty" tf:"exact_match,omitempty"` + + ExactNotMatch *string `json:"exactNotMatch,omitempty" tf:"exact_not_match,omitempty"` + + PireRegexMatch *string `json:"pireRegexMatch,omitempty" tf:"pire_regex_match,omitempty"` + + PireRegexNotMatch *string `json:"pireRegexNotMatch,omitempty" tf:"pire_regex_not_match,omitempty"` + + PrefixMatch *string `json:"prefixMatch,omitempty" tf:"prefix_match,omitempty"` + + PrefixNotMatch *string `json:"prefixNotMatch,omitempty" tf:"prefix_not_match,omitempty"` +} + +type ConditionHTTPMethodHTTPMethodsParameters struct { + + // +kubebuilder:validation:Optional + ExactMatch *string `json:"exactMatch,omitempty" tf:"exact_match,omitempty"` + + // +kubebuilder:validation:Optional + ExactNotMatch *string `json:"exactNotMatch,omitempty" tf:"exact_not_match,omitempty"` + + // +kubebuilder:validation:Optional + PireRegexMatch *string `json:"pireRegexMatch,omitempty" tf:"pire_regex_match,omitempty"` + + // +kubebuilder:validation:Optional + PireRegexNotMatch *string `json:"pireRegexNotMatch,omitempty" tf:"pire_regex_not_match,omitempty"` + + // +kubebuilder:validation:Optional + PrefixMatch *string `json:"prefixMatch,omitempty" tf:"prefix_match,omitempty"` + + // +kubebuilder:validation:Optional + PrefixNotMatch *string `json:"prefixNotMatch,omitempty" tf:"prefix_not_match,omitempty"` +} + type ConditionHTTPMethodInitParameters struct { HTTPMethods []HTTPMethodHTTPMethodsInitParameters `json:"httpMethods,omitempty" tf:"http_methods,omitempty"` } @@ -150,12 +248,16 @@ type ConditionHTTPMethodParameters struct { } type ConditionHeadersInitParameters struct { + + // Name of the rule. The name is unique within the security profile. 1-50 characters long. Name *string `json:"name,omitempty" tf:"name,omitempty"` Value []HeadersValueInitParameters `json:"value,omitempty" tf:"value,omitempty"` } type ConditionHeadersObservation struct { + + // Name of the rule. The name is unique within the security profile. 1-50 characters long. Name *string `json:"name,omitempty" tf:"name,omitempty"` Value []HeadersValueObservation `json:"value,omitempty" tf:"value,omitempty"` @@ -163,6 +265,7 @@ type ConditionHeadersObservation struct { type ConditionHeadersParameters struct { + // Name of the rule. The name is unique within the security profile. 1-50 characters long. // +kubebuilder:validation:Optional Name *string `json:"name,omitempty" tf:"name,omitempty"` @@ -170,6 +273,55 @@ type ConditionHeadersParameters struct { Value []HeadersValueParameters `json:"value" tf:"value,omitempty"` } +type ConditionHeadersValueInitParameters struct { + ExactMatch *string `json:"exactMatch,omitempty" tf:"exact_match,omitempty"` + + ExactNotMatch *string `json:"exactNotMatch,omitempty" tf:"exact_not_match,omitempty"` + + PireRegexMatch *string `json:"pireRegexMatch,omitempty" tf:"pire_regex_match,omitempty"` + + PireRegexNotMatch *string `json:"pireRegexNotMatch,omitempty" tf:"pire_regex_not_match,omitempty"` + + PrefixMatch *string `json:"prefixMatch,omitempty" tf:"prefix_match,omitempty"` + + PrefixNotMatch *string `json:"prefixNotMatch,omitempty" tf:"prefix_not_match,omitempty"` +} + +type ConditionHeadersValueObservation struct { + ExactMatch *string `json:"exactMatch,omitempty" tf:"exact_match,omitempty"` + + ExactNotMatch *string `json:"exactNotMatch,omitempty" tf:"exact_not_match,omitempty"` + + PireRegexMatch *string `json:"pireRegexMatch,omitempty" tf:"pire_regex_match,omitempty"` + + PireRegexNotMatch *string `json:"pireRegexNotMatch,omitempty" tf:"pire_regex_not_match,omitempty"` + + PrefixMatch *string `json:"prefixMatch,omitempty" tf:"prefix_match,omitempty"` + + PrefixNotMatch *string `json:"prefixNotMatch,omitempty" tf:"prefix_not_match,omitempty"` +} + +type ConditionHeadersValueParameters struct { + + // +kubebuilder:validation:Optional + ExactMatch *string `json:"exactMatch,omitempty" tf:"exact_match,omitempty"` + + // +kubebuilder:validation:Optional + ExactNotMatch *string `json:"exactNotMatch,omitempty" tf:"exact_not_match,omitempty"` + + // +kubebuilder:validation:Optional + PireRegexMatch *string `json:"pireRegexMatch,omitempty" tf:"pire_regex_match,omitempty"` + + // +kubebuilder:validation:Optional + PireRegexNotMatch *string `json:"pireRegexNotMatch,omitempty" tf:"pire_regex_not_match,omitempty"` + + // +kubebuilder:validation:Optional + PrefixMatch *string `json:"prefixMatch,omitempty" tf:"prefix_match,omitempty"` + + // +kubebuilder:validation:Optional + PrefixNotMatch *string `json:"prefixNotMatch,omitempty" tf:"prefix_not_match,omitempty"` +} + type ConditionInitParameters struct { Authority []AuthorityInitParameters `json:"authority,omitempty" tf:"authority,omitempty"` @@ -233,6 +385,181 @@ type ConditionRequestURIParameters struct { Queries []RequestURIQueriesParameters `json:"queries,omitempty" tf:"queries,omitempty"` } +type ConditionRequestURIPathInitParameters struct { + ExactMatch *string `json:"exactMatch,omitempty" tf:"exact_match,omitempty"` + + ExactNotMatch *string `json:"exactNotMatch,omitempty" tf:"exact_not_match,omitempty"` + + PireRegexMatch *string `json:"pireRegexMatch,omitempty" tf:"pire_regex_match,omitempty"` + + PireRegexNotMatch *string `json:"pireRegexNotMatch,omitempty" tf:"pire_regex_not_match,omitempty"` + + PrefixMatch *string `json:"prefixMatch,omitempty" tf:"prefix_match,omitempty"` + + PrefixNotMatch *string `json:"prefixNotMatch,omitempty" tf:"prefix_not_match,omitempty"` +} + +type ConditionRequestURIPathObservation struct { + ExactMatch *string `json:"exactMatch,omitempty" tf:"exact_match,omitempty"` + + ExactNotMatch *string `json:"exactNotMatch,omitempty" tf:"exact_not_match,omitempty"` + + PireRegexMatch *string `json:"pireRegexMatch,omitempty" tf:"pire_regex_match,omitempty"` + + PireRegexNotMatch *string `json:"pireRegexNotMatch,omitempty" tf:"pire_regex_not_match,omitempty"` + + PrefixMatch *string `json:"prefixMatch,omitempty" tf:"prefix_match,omitempty"` + + PrefixNotMatch *string `json:"prefixNotMatch,omitempty" tf:"prefix_not_match,omitempty"` +} + +type ConditionRequestURIPathParameters struct { + + // +kubebuilder:validation:Optional + ExactMatch *string `json:"exactMatch,omitempty" tf:"exact_match,omitempty"` + + // +kubebuilder:validation:Optional + ExactNotMatch *string `json:"exactNotMatch,omitempty" tf:"exact_not_match,omitempty"` + + // +kubebuilder:validation:Optional + PireRegexMatch *string `json:"pireRegexMatch,omitempty" tf:"pire_regex_match,omitempty"` + + // +kubebuilder:validation:Optional + PireRegexNotMatch *string `json:"pireRegexNotMatch,omitempty" tf:"pire_regex_not_match,omitempty"` + + // +kubebuilder:validation:Optional + PrefixMatch *string `json:"prefixMatch,omitempty" tf:"prefix_match,omitempty"` + + // +kubebuilder:validation:Optional + PrefixNotMatch *string `json:"prefixNotMatch,omitempty" tf:"prefix_not_match,omitempty"` +} + +type ConditionRequestURIQueriesInitParameters struct { + Key *string `json:"key,omitempty" tf:"key,omitempty"` + + Value []ConditionRequestURIQueriesValueInitParameters `json:"value,omitempty" tf:"value,omitempty"` +} + +type ConditionRequestURIQueriesObservation struct { + Key *string `json:"key,omitempty" tf:"key,omitempty"` + + Value []ConditionRequestURIQueriesValueObservation `json:"value,omitempty" tf:"value,omitempty"` +} + +type ConditionRequestURIQueriesParameters struct { + + // +kubebuilder:validation:Optional + Key *string `json:"key" tf:"key,omitempty"` + + // +kubebuilder:validation:Optional + Value []ConditionRequestURIQueriesValueParameters `json:"value" tf:"value,omitempty"` +} + +type ConditionRequestURIQueriesValueInitParameters struct { + ExactMatch *string `json:"exactMatch,omitempty" tf:"exact_match,omitempty"` + + ExactNotMatch *string `json:"exactNotMatch,omitempty" tf:"exact_not_match,omitempty"` + + PireRegexMatch *string `json:"pireRegexMatch,omitempty" tf:"pire_regex_match,omitempty"` + + PireRegexNotMatch *string `json:"pireRegexNotMatch,omitempty" tf:"pire_regex_not_match,omitempty"` + + PrefixMatch *string `json:"prefixMatch,omitempty" tf:"prefix_match,omitempty"` + + PrefixNotMatch *string `json:"prefixNotMatch,omitempty" tf:"prefix_not_match,omitempty"` +} + +type ConditionRequestURIQueriesValueObservation struct { + ExactMatch *string `json:"exactMatch,omitempty" tf:"exact_match,omitempty"` + + ExactNotMatch *string `json:"exactNotMatch,omitempty" tf:"exact_not_match,omitempty"` + + PireRegexMatch *string `json:"pireRegexMatch,omitempty" tf:"pire_regex_match,omitempty"` + + PireRegexNotMatch *string `json:"pireRegexNotMatch,omitempty" tf:"pire_regex_not_match,omitempty"` + + PrefixMatch *string `json:"prefixMatch,omitempty" tf:"prefix_match,omitempty"` + + PrefixNotMatch *string `json:"prefixNotMatch,omitempty" tf:"prefix_not_match,omitempty"` +} + +type ConditionRequestURIQueriesValueParameters struct { + + // +kubebuilder:validation:Optional + ExactMatch *string `json:"exactMatch,omitempty" tf:"exact_match,omitempty"` + + // +kubebuilder:validation:Optional + ExactNotMatch *string `json:"exactNotMatch,omitempty" tf:"exact_not_match,omitempty"` + + // +kubebuilder:validation:Optional + PireRegexMatch *string `json:"pireRegexMatch,omitempty" tf:"pire_regex_match,omitempty"` + + // +kubebuilder:validation:Optional + PireRegexNotMatch *string `json:"pireRegexNotMatch,omitempty" tf:"pire_regex_not_match,omitempty"` + + // +kubebuilder:validation:Optional + PrefixMatch *string `json:"prefixMatch,omitempty" tf:"prefix_match,omitempty"` + + // +kubebuilder:validation:Optional + PrefixNotMatch *string `json:"prefixNotMatch,omitempty" tf:"prefix_not_match,omitempty"` +} + +type ConditionSourceIPGeoIPMatchInitParameters struct { + Locations []*string `json:"locations,omitempty" tf:"locations,omitempty"` +} + +type ConditionSourceIPGeoIPMatchObservation struct { + Locations []*string `json:"locations,omitempty" tf:"locations,omitempty"` +} + +type ConditionSourceIPGeoIPMatchParameters struct { + + // +kubebuilder:validation:Optional + Locations []*string `json:"locations,omitempty" tf:"locations,omitempty"` +} + +type ConditionSourceIPGeoIPNotMatchInitParameters struct { + Locations []*string `json:"locations,omitempty" tf:"locations,omitempty"` +} + +type ConditionSourceIPGeoIPNotMatchObservation struct { + Locations []*string `json:"locations,omitempty" tf:"locations,omitempty"` +} + +type ConditionSourceIPGeoIPNotMatchParameters struct { + + // +kubebuilder:validation:Optional + Locations []*string `json:"locations,omitempty" tf:"locations,omitempty"` +} + +type ConditionSourceIPIPRangesMatchInitParameters struct { + IPRanges []*string `json:"ipRanges,omitempty" tf:"ip_ranges,omitempty"` +} + +type ConditionSourceIPIPRangesMatchObservation struct { + IPRanges []*string `json:"ipRanges,omitempty" tf:"ip_ranges,omitempty"` +} + +type ConditionSourceIPIPRangesMatchParameters struct { + + // +kubebuilder:validation:Optional + IPRanges []*string `json:"ipRanges,omitempty" tf:"ip_ranges,omitempty"` +} + +type ConditionSourceIPIPRangesNotMatchInitParameters struct { + IPRanges []*string `json:"ipRanges,omitempty" tf:"ip_ranges,omitempty"` +} + +type ConditionSourceIPIPRangesNotMatchObservation struct { + IPRanges []*string `json:"ipRanges,omitempty" tf:"ip_ranges,omitempty"` +} + +type ConditionSourceIPIPRangesNotMatchParameters struct { + + // +kubebuilder:validation:Optional + IPRanges []*string `json:"ipRanges,omitempty" tf:"ip_ranges,omitempty"` +} + type ConditionSourceIPInitParameters struct { GeoIPMatch []SourceIPGeoIPMatchInitParameters `json:"geoIpMatch,omitempty" tf:"geo_ip_match,omitempty"` @@ -409,12 +736,16 @@ type HTTPMethodsParameters struct { } type HeadersInitParameters struct { + + // Name of the rule. The name is unique within the security profile. 1-50 characters long. Name *string `json:"name,omitempty" tf:"name,omitempty"` Value []ValueInitParameters `json:"value,omitempty" tf:"value,omitempty"` } type HeadersObservation struct { + + // Name of the rule. The name is unique within the security profile. 1-50 characters long. Name *string `json:"name,omitempty" tf:"name,omitempty"` Value []ValueObservation `json:"value,omitempty" tf:"value,omitempty"` @@ -422,6 +753,7 @@ type HeadersObservation struct { type HeadersParameters struct { + // Name of the rule. The name is unique within the security profile. 1-50 characters long. // +kubebuilder:validation:Optional Name *string `json:"name,omitempty" tf:"name,omitempty"` @@ -766,35 +1098,52 @@ type RequestURIQueriesValueParameters struct { } type RuleConditionInitParameters struct { + + // Action to perform if this rule matched. Possible values: ALLOW or DENY. Action *string `json:"action,omitempty" tf:"action,omitempty"` + // The condition for matching the rule. You can find all possibilities of condition in gRPC specs. Condition []ConditionInitParameters `json:"condition,omitempty" tf:"condition,omitempty"` } type RuleConditionObservation struct { + + // Action to perform if this rule matched. Possible values: ALLOW or DENY. Action *string `json:"action,omitempty" tf:"action,omitempty"` + // The condition for matching the rule. You can find all possibilities of condition in gRPC specs. Condition []ConditionObservation `json:"condition,omitempty" tf:"condition,omitempty"` } type RuleConditionParameters struct { + // Action to perform if this rule matched. Possible values: ALLOW or DENY. // +kubebuilder:validation:Optional Action *string `json:"action,omitempty" tf:"action,omitempty"` + // The condition for matching the rule. You can find all possibilities of condition in gRPC specs. // +kubebuilder:validation:Optional Condition []ConditionParameters `json:"condition,omitempty" tf:"condition,omitempty"` } type SecurityProfileInitParameters struct { + + // Advanced rate limiter profile ID to use with this security profile. Set empty to use default. + AdvancedRateLimiterProfileID *string `json:"advancedRateLimiterProfileId,omitempty" tf:"advanced_rate_limiter_profile_id,omitempty"` + + // Captcha ID to use with this security profile. Set empty to use default. CaptchaID *string `json:"captchaId,omitempty" tf:"captcha_id,omitempty"` + // ID of the security profile. CloudID *string `json:"cloudId,omitempty" tf:"cloud_id,omitempty"` + // Action to perform if none of rules matched. Possible values: ALLOW or DENY. DefaultAction *string `json:"defaultAction,omitempty" tf:"default_action,omitempty"` + // Optional description of the security profile. Description *string `json:"description,omitempty" tf:"description,omitempty"` + // ID of the folder to create a profile in. If omitted, the provider folder is used. // +crossplane:generate:reference:type=github.com/tagesjump/provider-upjet-yc/apis/resourcemanager/v1alpha1.Folder FolderID *string `json:"folderId,omitempty" tf:"folder_id,omitempty"` @@ -806,51 +1155,77 @@ type SecurityProfileInitParameters struct { // +kubebuilder:validation:Optional FolderIDSelector *v1.Selector `json:"folderIdSelector,omitempty" tf:"-"` + // Labels as key:value pairs. Maximum of 64 per resource. // +mapType=granular Labels map[string]*string `json:"labels,omitempty" tf:"labels,omitempty"` + // Name of the security profile. The name is unique within the folder. 1-50 characters long. Name *string `json:"name,omitempty" tf:"name,omitempty"` + // List of security rules. The structure is documented below. SecurityRule []SecurityRuleInitParameters `json:"securityRule,omitempty" tf:"security_rule,omitempty"` } type SecurityProfileObservation struct { + + // Advanced rate limiter profile ID to use with this security profile. Set empty to use default. + AdvancedRateLimiterProfileID *string `json:"advancedRateLimiterProfileId,omitempty" tf:"advanced_rate_limiter_profile_id,omitempty"` + + // Captcha ID to use with this security profile. Set empty to use default. CaptchaID *string `json:"captchaId,omitempty" tf:"captcha_id,omitempty"` + // ID of the security profile. CloudID *string `json:"cloudId,omitempty" tf:"cloud_id,omitempty"` + // The Security Profile creation timestamp. CreatedAt *string `json:"createdAt,omitempty" tf:"created_at,omitempty"` + // Action to perform if none of rules matched. Possible values: ALLOW or DENY. DefaultAction *string `json:"defaultAction,omitempty" tf:"default_action,omitempty"` + // Optional description of the security profile. Description *string `json:"description,omitempty" tf:"description,omitempty"` + // ID of the folder to create a profile in. If omitted, the provider folder is used. FolderID *string `json:"folderId,omitempty" tf:"folder_id,omitempty"` + // ID of the security profile. ID *string `json:"id,omitempty" tf:"id,omitempty"` + // Labels as key:value pairs. Maximum of 64 per resource. // +mapType=granular Labels map[string]*string `json:"labels,omitempty" tf:"labels,omitempty"` + // Name of the security profile. The name is unique within the folder. 1-50 characters long. Name *string `json:"name,omitempty" tf:"name,omitempty"` + // List of security rules. The structure is documented below. SecurityRule []SecurityRuleObservation `json:"securityRule,omitempty" tf:"security_rule,omitempty"` } type SecurityProfileParameters struct { + // Advanced rate limiter profile ID to use with this security profile. Set empty to use default. + // +kubebuilder:validation:Optional + AdvancedRateLimiterProfileID *string `json:"advancedRateLimiterProfileId,omitempty" tf:"advanced_rate_limiter_profile_id,omitempty"` + + // Captcha ID to use with this security profile. Set empty to use default. // +kubebuilder:validation:Optional CaptchaID *string `json:"captchaId,omitempty" tf:"captcha_id,omitempty"` + // ID of the security profile. // +kubebuilder:validation:Optional CloudID *string `json:"cloudId,omitempty" tf:"cloud_id,omitempty"` + // Action to perform if none of rules matched. Possible values: ALLOW or DENY. // +kubebuilder:validation:Optional DefaultAction *string `json:"defaultAction,omitempty" tf:"default_action,omitempty"` + // Optional description of the security profile. // +kubebuilder:validation:Optional Description *string `json:"description,omitempty" tf:"description,omitempty"` + // ID of the folder to create a profile in. If omitted, the provider folder is used. // +crossplane:generate:reference:type=github.com/tagesjump/provider-upjet-yc/apis/resourcemanager/v1alpha1.Folder // +kubebuilder:validation:Optional FolderID *string `json:"folderId,omitempty" tf:"folder_id,omitempty"` @@ -863,64 +1238,97 @@ type SecurityProfileParameters struct { // +kubebuilder:validation:Optional FolderIDSelector *v1.Selector `json:"folderIdSelector,omitempty" tf:"-"` + // Labels as key:value pairs. Maximum of 64 per resource. // +kubebuilder:validation:Optional // +mapType=granular Labels map[string]*string `json:"labels,omitempty" tf:"labels,omitempty"` + // Name of the security profile. The name is unique within the folder. 1-50 characters long. // +kubebuilder:validation:Optional Name *string `json:"name,omitempty" tf:"name,omitempty"` + // List of security rules. The structure is documented below. // +kubebuilder:validation:Optional SecurityRule []SecurityRuleParameters `json:"securityRule,omitempty" tf:"security_rule,omitempty"` } type SecurityRuleInitParameters struct { + + // Optional description of the rule. 0-512 characters long. Description *string `json:"description,omitempty" tf:"description,omitempty"` + // This mode allows you to test your security profile or a single rule. DryRun *bool `json:"dryRun,omitempty" tf:"dry_run,omitempty"` + // Name of the rule. The name is unique within the security profile. 1-50 characters long. Name *string `json:"name,omitempty" tf:"name,omitempty"` + // Determines the priority for checking the incoming traffic. Priority *float64 `json:"priority,omitempty" tf:"priority,omitempty"` + // Rule actions, see Rule actions. The structure is documented below. RuleCondition []RuleConditionInitParameters `json:"ruleCondition,omitempty" tf:"rule_condition,omitempty"` + // Smart Protection rule, see Smart Protection rules. The structure is documented below. SmartProtection []SmartProtectionInitParameters `json:"smartProtection,omitempty" tf:"smart_protection,omitempty"` + + // Web Application Firewall (WAF) rule, see WAF rules. The structure is documented below. + Waf []WafInitParameters `json:"waf,omitempty" tf:"waf,omitempty"` } type SecurityRuleObservation struct { + + // Optional description of the rule. 0-512 characters long. Description *string `json:"description,omitempty" tf:"description,omitempty"` + // This mode allows you to test your security profile or a single rule. DryRun *bool `json:"dryRun,omitempty" tf:"dry_run,omitempty"` + // Name of the rule. The name is unique within the security profile. 1-50 characters long. Name *string `json:"name,omitempty" tf:"name,omitempty"` + // Determines the priority for checking the incoming traffic. Priority *float64 `json:"priority,omitempty" tf:"priority,omitempty"` + // Rule actions, see Rule actions. The structure is documented below. RuleCondition []RuleConditionObservation `json:"ruleCondition,omitempty" tf:"rule_condition,omitempty"` + // Smart Protection rule, see Smart Protection rules. The structure is documented below. SmartProtection []SmartProtectionObservation `json:"smartProtection,omitempty" tf:"smart_protection,omitempty"` + + // Web Application Firewall (WAF) rule, see WAF rules. The structure is documented below. + Waf []WafObservation `json:"waf,omitempty" tf:"waf,omitempty"` } type SecurityRuleParameters struct { + // Optional description of the rule. 0-512 characters long. // +kubebuilder:validation:Optional Description *string `json:"description,omitempty" tf:"description,omitempty"` + // This mode allows you to test your security profile or a single rule. // +kubebuilder:validation:Optional DryRun *bool `json:"dryRun,omitempty" tf:"dry_run,omitempty"` + // Name of the rule. The name is unique within the security profile. 1-50 characters long. // +kubebuilder:validation:Optional Name *string `json:"name,omitempty" tf:"name,omitempty"` + // Determines the priority for checking the incoming traffic. // +kubebuilder:validation:Optional Priority *float64 `json:"priority,omitempty" tf:"priority,omitempty"` + // Rule actions, see Rule actions. The structure is documented below. // +kubebuilder:validation:Optional RuleCondition []RuleConditionParameters `json:"ruleCondition,omitempty" tf:"rule_condition,omitempty"` + // Smart Protection rule, see Smart Protection rules. The structure is documented below. // +kubebuilder:validation:Optional SmartProtection []SmartProtectionParameters `json:"smartProtection,omitempty" tf:"smart_protection,omitempty"` + + // Web Application Firewall (WAF) rule, see WAF rules. The structure is documented below. + // +kubebuilder:validation:Optional + Waf []WafParameters `json:"waf,omitempty" tf:"waf,omitempty"` } type SmartProtectionConditionInitParameters struct { @@ -966,22 +1374,30 @@ type SmartProtectionConditionParameters struct { } type SmartProtectionInitParameters struct { + + // The condition for matching the rule. You can find all possibilities of condition in gRPC specs. Condition []SmartProtectionConditionInitParameters `json:"condition,omitempty" tf:"condition,omitempty"` + // Mode of protection. Possible values: FULL (full protection means that the traffic will be checked based on ML models and behavioral analysis, with suspicious requests being sent to SmartCaptcha) or API (API protection means checking the traffic based on ML models and behavioral analysis without sending suspicious requests to SmartCaptcha. The suspicious requests will be blocked). Mode *string `json:"mode,omitempty" tf:"mode,omitempty"` } type SmartProtectionObservation struct { + + // The condition for matching the rule. You can find all possibilities of condition in gRPC specs. Condition []SmartProtectionConditionObservation `json:"condition,omitempty" tf:"condition,omitempty"` + // Mode of protection. Possible values: FULL (full protection means that the traffic will be checked based on ML models and behavioral analysis, with suspicious requests being sent to SmartCaptcha) or API (API protection means checking the traffic based on ML models and behavioral analysis without sending suspicious requests to SmartCaptcha. The suspicious requests will be blocked). Mode *string `json:"mode,omitempty" tf:"mode,omitempty"` } type SmartProtectionParameters struct { + // The condition for matching the rule. You can find all possibilities of condition in gRPC specs. // +kubebuilder:validation:Optional Condition []SmartProtectionConditionParameters `json:"condition,omitempty" tf:"condition,omitempty"` + // Mode of protection. Possible values: FULL (full protection means that the traffic will be checked based on ML models and behavioral analysis, with suspicious requests being sent to SmartCaptcha) or API (API protection means checking the traffic based on ML models and behavioral analysis without sending suspicious requests to SmartCaptcha. The suspicious requests will be blocked). // +kubebuilder:validation:Optional Mode *string `json:"mode,omitempty" tf:"mode,omitempty"` } @@ -1126,6 +1542,197 @@ type ValueParameters struct { PrefixNotMatch *string `json:"prefixNotMatch,omitempty" tf:"prefix_not_match,omitempty"` } +type WafConditionAuthorityInitParameters struct { + Authorities []ConditionAuthorityAuthoritiesInitParameters `json:"authorities,omitempty" tf:"authorities,omitempty"` +} + +type WafConditionAuthorityObservation struct { + Authorities []ConditionAuthorityAuthoritiesObservation `json:"authorities,omitempty" tf:"authorities,omitempty"` +} + +type WafConditionAuthorityParameters struct { + + // +kubebuilder:validation:Optional + Authorities []ConditionAuthorityAuthoritiesParameters `json:"authorities,omitempty" tf:"authorities,omitempty"` +} + +type WafConditionHTTPMethodInitParameters struct { + HTTPMethods []ConditionHTTPMethodHTTPMethodsInitParameters `json:"httpMethods,omitempty" tf:"http_methods,omitempty"` +} + +type WafConditionHTTPMethodObservation struct { + HTTPMethods []ConditionHTTPMethodHTTPMethodsObservation `json:"httpMethods,omitempty" tf:"http_methods,omitempty"` +} + +type WafConditionHTTPMethodParameters struct { + + // +kubebuilder:validation:Optional + HTTPMethods []ConditionHTTPMethodHTTPMethodsParameters `json:"httpMethods,omitempty" tf:"http_methods,omitempty"` +} + +type WafConditionHeadersInitParameters struct { + + // Name of the rule. The name is unique within the security profile. 1-50 characters long. + Name *string `json:"name,omitempty" tf:"name,omitempty"` + + Value []ConditionHeadersValueInitParameters `json:"value,omitempty" tf:"value,omitempty"` +} + +type WafConditionHeadersObservation struct { + + // Name of the rule. The name is unique within the security profile. 1-50 characters long. + Name *string `json:"name,omitempty" tf:"name,omitempty"` + + Value []ConditionHeadersValueObservation `json:"value,omitempty" tf:"value,omitempty"` +} + +type WafConditionHeadersParameters struct { + + // Name of the rule. The name is unique within the security profile. 1-50 characters long. + // +kubebuilder:validation:Optional + Name *string `json:"name,omitempty" tf:"name,omitempty"` + + // +kubebuilder:validation:Optional + Value []ConditionHeadersValueParameters `json:"value" tf:"value,omitempty"` +} + +type WafConditionInitParameters struct { + Authority []WafConditionAuthorityInitParameters `json:"authority,omitempty" tf:"authority,omitempty"` + + HTTPMethod []WafConditionHTTPMethodInitParameters `json:"httpMethod,omitempty" tf:"http_method,omitempty"` + + Headers []WafConditionHeadersInitParameters `json:"headers,omitempty" tf:"headers,omitempty"` + + RequestURI []WafConditionRequestURIInitParameters `json:"requestUri,omitempty" tf:"request_uri,omitempty"` + + SourceIP []WafConditionSourceIPInitParameters `json:"sourceIp,omitempty" tf:"source_ip,omitempty"` +} + +type WafConditionObservation struct { + Authority []WafConditionAuthorityObservation `json:"authority,omitempty" tf:"authority,omitempty"` + + HTTPMethod []WafConditionHTTPMethodObservation `json:"httpMethod,omitempty" tf:"http_method,omitempty"` + + Headers []WafConditionHeadersObservation `json:"headers,omitempty" tf:"headers,omitempty"` + + RequestURI []WafConditionRequestURIObservation `json:"requestUri,omitempty" tf:"request_uri,omitempty"` + + SourceIP []WafConditionSourceIPObservation `json:"sourceIp,omitempty" tf:"source_ip,omitempty"` +} + +type WafConditionParameters struct { + + // +kubebuilder:validation:Optional + Authority []WafConditionAuthorityParameters `json:"authority,omitempty" tf:"authority,omitempty"` + + // +kubebuilder:validation:Optional + HTTPMethod []WafConditionHTTPMethodParameters `json:"httpMethod,omitempty" tf:"http_method,omitempty"` + + // +kubebuilder:validation:Optional + Headers []WafConditionHeadersParameters `json:"headers,omitempty" tf:"headers,omitempty"` + + // +kubebuilder:validation:Optional + RequestURI []WafConditionRequestURIParameters `json:"requestUri,omitempty" tf:"request_uri,omitempty"` + + // +kubebuilder:validation:Optional + SourceIP []WafConditionSourceIPParameters `json:"sourceIp,omitempty" tf:"source_ip,omitempty"` +} + +type WafConditionRequestURIInitParameters struct { + Path []ConditionRequestURIPathInitParameters `json:"path,omitempty" tf:"path,omitempty"` + + Queries []ConditionRequestURIQueriesInitParameters `json:"queries,omitempty" tf:"queries,omitempty"` +} + +type WafConditionRequestURIObservation struct { + Path []ConditionRequestURIPathObservation `json:"path,omitempty" tf:"path,omitempty"` + + Queries []ConditionRequestURIQueriesObservation `json:"queries,omitempty" tf:"queries,omitempty"` +} + +type WafConditionRequestURIParameters struct { + + // +kubebuilder:validation:Optional + Path []ConditionRequestURIPathParameters `json:"path,omitempty" tf:"path,omitempty"` + + // +kubebuilder:validation:Optional + Queries []ConditionRequestURIQueriesParameters `json:"queries,omitempty" tf:"queries,omitempty"` +} + +type WafConditionSourceIPInitParameters struct { + GeoIPMatch []ConditionSourceIPGeoIPMatchInitParameters `json:"geoIpMatch,omitempty" tf:"geo_ip_match,omitempty"` + + GeoIPNotMatch []ConditionSourceIPGeoIPNotMatchInitParameters `json:"geoIpNotMatch,omitempty" tf:"geo_ip_not_match,omitempty"` + + IPRangesMatch []ConditionSourceIPIPRangesMatchInitParameters `json:"ipRangesMatch,omitempty" tf:"ip_ranges_match,omitempty"` + + IPRangesNotMatch []ConditionSourceIPIPRangesNotMatchInitParameters `json:"ipRangesNotMatch,omitempty" tf:"ip_ranges_not_match,omitempty"` +} + +type WafConditionSourceIPObservation struct { + GeoIPMatch []ConditionSourceIPGeoIPMatchObservation `json:"geoIpMatch,omitempty" tf:"geo_ip_match,omitempty"` + + GeoIPNotMatch []ConditionSourceIPGeoIPNotMatchObservation `json:"geoIpNotMatch,omitempty" tf:"geo_ip_not_match,omitempty"` + + IPRangesMatch []ConditionSourceIPIPRangesMatchObservation `json:"ipRangesMatch,omitempty" tf:"ip_ranges_match,omitempty"` + + IPRangesNotMatch []ConditionSourceIPIPRangesNotMatchObservation `json:"ipRangesNotMatch,omitempty" tf:"ip_ranges_not_match,omitempty"` +} + +type WafConditionSourceIPParameters struct { + + // +kubebuilder:validation:Optional + GeoIPMatch []ConditionSourceIPGeoIPMatchParameters `json:"geoIpMatch,omitempty" tf:"geo_ip_match,omitempty"` + + // +kubebuilder:validation:Optional + GeoIPNotMatch []ConditionSourceIPGeoIPNotMatchParameters `json:"geoIpNotMatch,omitempty" tf:"geo_ip_not_match,omitempty"` + + // +kubebuilder:validation:Optional + IPRangesMatch []ConditionSourceIPIPRangesMatchParameters `json:"ipRangesMatch,omitempty" tf:"ip_ranges_match,omitempty"` + + // +kubebuilder:validation:Optional + IPRangesNotMatch []ConditionSourceIPIPRangesNotMatchParameters `json:"ipRangesNotMatch,omitempty" tf:"ip_ranges_not_match,omitempty"` +} + +type WafInitParameters struct { + + // The condition for matching the rule. You can find all possibilities of condition in gRPC specs. + Condition []WafConditionInitParameters `json:"condition,omitempty" tf:"condition,omitempty"` + + // Mode of protection. Possible values: FULL (full protection means that the traffic will be checked based on ML models and behavioral analysis, with suspicious requests being sent to SmartCaptcha) or API (API protection means checking the traffic based on ML models and behavioral analysis without sending suspicious requests to SmartCaptcha. The suspicious requests will be blocked). + Mode *string `json:"mode,omitempty" tf:"mode,omitempty"` + + // ID of WAF profile to use in this rule. + WafProfileID *string `json:"wafProfileId,omitempty" tf:"waf_profile_id,omitempty"` +} + +type WafObservation struct { + + // The condition for matching the rule. You can find all possibilities of condition in gRPC specs. + Condition []WafConditionObservation `json:"condition,omitempty" tf:"condition,omitempty"` + + // Mode of protection. Possible values: FULL (full protection means that the traffic will be checked based on ML models and behavioral analysis, with suspicious requests being sent to SmartCaptcha) or API (API protection means checking the traffic based on ML models and behavioral analysis without sending suspicious requests to SmartCaptcha. The suspicious requests will be blocked). + Mode *string `json:"mode,omitempty" tf:"mode,omitempty"` + + // ID of WAF profile to use in this rule. + WafProfileID *string `json:"wafProfileId,omitempty" tf:"waf_profile_id,omitempty"` +} + +type WafParameters struct { + + // The condition for matching the rule. You can find all possibilities of condition in gRPC specs. + // +kubebuilder:validation:Optional + Condition []WafConditionParameters `json:"condition,omitempty" tf:"condition,omitempty"` + + // Mode of protection. Possible values: FULL (full protection means that the traffic will be checked based on ML models and behavioral analysis, with suspicious requests being sent to SmartCaptcha) or API (API protection means checking the traffic based on ML models and behavioral analysis without sending suspicious requests to SmartCaptcha. The suspicious requests will be blocked). + // +kubebuilder:validation:Optional + Mode *string `json:"mode,omitempty" tf:"mode,omitempty"` + + // ID of WAF profile to use in this rule. + // +kubebuilder:validation:Optional + WafProfileID *string `json:"wafProfileId" tf:"waf_profile_id,omitempty"` +} + // SecurityProfileSpec defines the desired state of SecurityProfile type SecurityProfileSpec struct { v1.ResourceSpec `json:",inline"` @@ -1153,7 +1760,7 @@ type SecurityProfileStatus struct { // +kubebuilder:subresource:status // +kubebuilder:storageversion -// SecurityProfile is the Schema for the SecurityProfiles API. +// SecurityProfile is the Schema for the SecurityProfiles API. With security profiles you can protect your infrastructure from DDoS attacks at the application level (L7). // +kubebuilder:printcolumn:name="SYNCED",type="string",JSONPath=".status.conditions[?(@.type=='Synced')].status" // +kubebuilder:printcolumn:name="READY",type="string",JSONPath=".status.conditions[?(@.type=='Ready')].status" // +kubebuilder:printcolumn:name="EXTERNAL-NAME",type="string",JSONPath=".metadata.annotations.crossplane\\.io/external-name" diff --git a/apis/vpc/v1alpha1/zz_address_types.go b/apis/vpc/v1alpha1/zz_address_types.go index d4a0421..22ebc44 100755 --- a/apis/vpc/v1alpha1/zz_address_types.go +++ b/apis/vpc/v1alpha1/zz_address_types.go @@ -17,15 +17,13 @@ type AddressInitParameters struct { // Flag that protects the address from accidental deletion. DeletionProtection *bool `json:"deletionProtection,omitempty" tf:"deletion_protection,omitempty"` - // An optional description of this resource. Provide this property when - // you create the resource. + // An optional description of this resource. Provide this property when you create the resource. Description *string `json:"description,omitempty" tf:"description,omitempty"` // spec of IP v4 address ExternalIPv4Address []ExternalIPv4AddressInitParameters `json:"externalIpv4Address,omitempty" tf:"external_ipv4_address,omitempty"` - // ID of the folder that the resource belongs to. If it - // is not provided, the default provider folder is used. + // ID of the folder that the resource belongs to. If it is not provided, the default provider folder is used. // +crossplane:generate:reference:type=github.com/tagesjump/provider-upjet-yc/apis/resourcemanager/v1alpha1.Folder FolderID *string `json:"folderId,omitempty" tf:"folder_id,omitempty"` @@ -56,15 +54,13 @@ type AddressObservation struct { // Flag that protects the address from accidental deletion. DeletionProtection *bool `json:"deletionProtection,omitempty" tf:"deletion_protection,omitempty"` - // An optional description of this resource. Provide this property when - // you create the resource. + // An optional description of this resource. Provide this property when you create the resource. Description *string `json:"description,omitempty" tf:"description,omitempty"` // spec of IP v4 address ExternalIPv4Address []ExternalIPv4AddressObservation `json:"externalIpv4Address,omitempty" tf:"external_ipv4_address,omitempty"` - // ID of the folder that the resource belongs to. If it - // is not provided, the default provider folder is used. + // ID of the folder that the resource belongs to. If it is not provided, the default provider folder is used. FolderID *string `json:"folderId,omitempty" tf:"folder_id,omitempty"` ID *string `json:"id,omitempty" tf:"id,omitempty"` @@ -93,8 +89,7 @@ type AddressParameters struct { // +kubebuilder:validation:Optional DeletionProtection *bool `json:"deletionProtection,omitempty" tf:"deletion_protection,omitempty"` - // An optional description of this resource. Provide this property when - // you create the resource. + // An optional description of this resource. Provide this property when you create the resource. // +kubebuilder:validation:Optional Description *string `json:"description,omitempty" tf:"description,omitempty"` @@ -102,8 +97,7 @@ type AddressParameters struct { // +kubebuilder:validation:Optional ExternalIPv4Address []ExternalIPv4AddressParameters `json:"externalIpv4Address,omitempty" tf:"external_ipv4_address,omitempty"` - // ID of the folder that the resource belongs to. If it - // is not provided, the default provider folder is used. + // ID of the folder that the resource belongs to. If it is not provided, the default provider folder is used. // +crossplane:generate:reference:type=github.com/tagesjump/provider-upjet-yc/apis/resourcemanager/v1alpha1.Folder // +kubebuilder:validation:Optional FolderID *string `json:"folderId,omitempty" tf:"folder_id,omitempty"` diff --git a/apis/vpc/v1alpha1/zz_gateway_types.go b/apis/vpc/v1alpha1/zz_gateway_types.go index 09b05dc..6e4835b 100755 --- a/apis/vpc/v1alpha1/zz_gateway_types.go +++ b/apis/vpc/v1alpha1/zz_gateway_types.go @@ -11,12 +11,10 @@ import ( type GatewayInitParameters struct { - // An optional description of this resource. Provide this property when - // you create the resource. + // An optional description of this resource. Provide this property when you create the resource. Description *string `json:"description,omitempty" tf:"description,omitempty"` - // ID of the folder that the resource belongs to. If it - // is not provided, the default provider folder is used. + // ID of the folder that the resource belongs to. If it is not provided, the default provider folder is used. // +crossplane:generate:reference:type=github.com/tagesjump/provider-upjet-yc/apis/resourcemanager/v1alpha1.Folder FolderID *string `json:"folderId,omitempty" tf:"folder_id,omitempty"` @@ -44,12 +42,10 @@ type GatewayObservation struct { // Creation timestamp of the key. CreatedAt *string `json:"createdAt,omitempty" tf:"created_at,omitempty"` - // An optional description of this resource. Provide this property when - // you create the resource. + // An optional description of this resource. Provide this property when you create the resource. Description *string `json:"description,omitempty" tf:"description,omitempty"` - // ID of the folder that the resource belongs to. If it - // is not provided, the default provider folder is used. + // ID of the folder that the resource belongs to. If it is not provided, the default provider folder is used. FolderID *string `json:"folderId,omitempty" tf:"folder_id,omitempty"` ID *string `json:"id,omitempty" tf:"id,omitempty"` @@ -67,13 +63,11 @@ type GatewayObservation struct { type GatewayParameters struct { - // An optional description of this resource. Provide this property when - // you create the resource. + // An optional description of this resource. Provide this property when you create the resource. // +kubebuilder:validation:Optional Description *string `json:"description,omitempty" tf:"description,omitempty"` - // ID of the folder that the resource belongs to. If it - // is not provided, the default provider folder is used. + // ID of the folder that the resource belongs to. If it is not provided, the default provider folder is used. // +crossplane:generate:reference:type=github.com/tagesjump/provider-upjet-yc/apis/resourcemanager/v1alpha1.Folder // +kubebuilder:validation:Optional FolderID *string `json:"folderId,omitempty" tf:"folder_id,omitempty"` diff --git a/apis/vpc/v1alpha1/zz_generated.conversion_hubs.go b/apis/vpc/v1alpha1/zz_generated.conversion_hubs.go index 2a1a47f..b9d65b2 100755 --- a/apis/vpc/v1alpha1/zz_generated.conversion_hubs.go +++ b/apis/vpc/v1alpha1/zz_generated.conversion_hubs.go @@ -14,6 +14,9 @@ func (tr *Gateway) Hub() {} // Hub marks this type as a conversion hub. func (tr *Network) Hub() {} +// Hub marks this type as a conversion hub. +func (tr *PrivateEndpoint) Hub() {} + // Hub marks this type as a conversion hub. func (tr *RouteTable) Hub() {} diff --git a/apis/vpc/v1alpha1/zz_generated.deepcopy.go b/apis/vpc/v1alpha1/zz_generated.deepcopy.go index dab7f65..3298982 100644 --- a/apis/vpc/v1alpha1/zz_generated.deepcopy.go +++ b/apis/vpc/v1alpha1/zz_generated.deepcopy.go @@ -464,6 +464,66 @@ func (in *DHCPOptionsParameters) DeepCopy() *DHCPOptionsParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *DNSOptionsInitParameters) DeepCopyInto(out *DNSOptionsInitParameters) { + *out = *in + if in.PrivateDNSRecordsEnabled != nil { + in, out := &in.PrivateDNSRecordsEnabled, &out.PrivateDNSRecordsEnabled + *out = new(bool) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DNSOptionsInitParameters. +func (in *DNSOptionsInitParameters) DeepCopy() *DNSOptionsInitParameters { + if in == nil { + return nil + } + out := new(DNSOptionsInitParameters) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *DNSOptionsObservation) DeepCopyInto(out *DNSOptionsObservation) { + *out = *in + if in.PrivateDNSRecordsEnabled != nil { + in, out := &in.PrivateDNSRecordsEnabled, &out.PrivateDNSRecordsEnabled + *out = new(bool) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DNSOptionsObservation. +func (in *DNSOptionsObservation) DeepCopy() *DNSOptionsObservation { + if in == nil { + return nil + } + out := new(DNSOptionsObservation) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *DNSOptionsParameters) DeepCopyInto(out *DNSOptionsParameters) { + *out = *in + if in.PrivateDNSRecordsEnabled != nil { + in, out := &in.PrivateDNSRecordsEnabled, &out.PrivateDNSRecordsEnabled + *out = new(bool) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DNSOptionsParameters. +func (in *DNSOptionsParameters) DeepCopy() *DNSOptionsParameters { + if in == nil { + return nil + } + out := new(DNSOptionsParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *DNSRecordInitParameters) DeepCopyInto(out *DNSRecordInitParameters) { *out = *in @@ -1172,6 +1232,116 @@ func (in *EgressParameters) DeepCopy() *EgressParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *EndpointAddressInitParameters) DeepCopyInto(out *EndpointAddressInitParameters) { + *out = *in + if in.Address != nil { + in, out := &in.Address, &out.Address + *out = new(string) + **out = **in + } + if in.AddressID != nil { + in, out := &in.AddressID, &out.AddressID + *out = new(string) + **out = **in + } + if in.SubnetID != nil { + in, out := &in.SubnetID, &out.SubnetID + *out = new(string) + **out = **in + } + if in.SubnetIDRef != nil { + in, out := &in.SubnetIDRef, &out.SubnetIDRef + *out = new(v1.Reference) + (*in).DeepCopyInto(*out) + } + if in.SubnetIDSelector != nil { + in, out := &in.SubnetIDSelector, &out.SubnetIDSelector + *out = new(v1.Selector) + (*in).DeepCopyInto(*out) + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new EndpointAddressInitParameters. +func (in *EndpointAddressInitParameters) DeepCopy() *EndpointAddressInitParameters { + if in == nil { + return nil + } + out := new(EndpointAddressInitParameters) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *EndpointAddressObservation) DeepCopyInto(out *EndpointAddressObservation) { + *out = *in + if in.Address != nil { + in, out := &in.Address, &out.Address + *out = new(string) + **out = **in + } + if in.AddressID != nil { + in, out := &in.AddressID, &out.AddressID + *out = new(string) + **out = **in + } + if in.SubnetID != nil { + in, out := &in.SubnetID, &out.SubnetID + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new EndpointAddressObservation. +func (in *EndpointAddressObservation) DeepCopy() *EndpointAddressObservation { + if in == nil { + return nil + } + out := new(EndpointAddressObservation) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *EndpointAddressParameters) DeepCopyInto(out *EndpointAddressParameters) { + *out = *in + if in.Address != nil { + in, out := &in.Address, &out.Address + *out = new(string) + **out = **in + } + if in.AddressID != nil { + in, out := &in.AddressID, &out.AddressID + *out = new(string) + **out = **in + } + if in.SubnetID != nil { + in, out := &in.SubnetID, &out.SubnetID + *out = new(string) + **out = **in + } + if in.SubnetIDRef != nil { + in, out := &in.SubnetIDRef, &out.SubnetIDRef + *out = new(v1.Reference) + (*in).DeepCopyInto(*out) + } + if in.SubnetIDSelector != nil { + in, out := &in.SubnetIDSelector, &out.SubnetIDSelector + *out = new(v1.Selector) + (*in).DeepCopyInto(*out) + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new EndpointAddressParameters. +func (in *EndpointAddressParameters) DeepCopy() *EndpointAddressParameters { + if in == nil { + return nil + } + out := new(EndpointAddressParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *ExternalIPv4AddressInitParameters) DeepCopyInto(out *ExternalIPv4AddressInitParameters) { *out = *in @@ -2091,6 +2261,410 @@ func (in *NetworkStatus) DeepCopy() *NetworkStatus { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *ObjectStorageInitParameters) DeepCopyInto(out *ObjectStorageInitParameters) { + *out = *in +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ObjectStorageInitParameters. +func (in *ObjectStorageInitParameters) DeepCopy() *ObjectStorageInitParameters { + if in == nil { + return nil + } + out := new(ObjectStorageInitParameters) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *ObjectStorageObservation) DeepCopyInto(out *ObjectStorageObservation) { + *out = *in +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ObjectStorageObservation. +func (in *ObjectStorageObservation) DeepCopy() *ObjectStorageObservation { + if in == nil { + return nil + } + out := new(ObjectStorageObservation) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *ObjectStorageParameters) DeepCopyInto(out *ObjectStorageParameters) { + *out = *in +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ObjectStorageParameters. +func (in *ObjectStorageParameters) DeepCopy() *ObjectStorageParameters { + if in == nil { + return nil + } + out := new(ObjectStorageParameters) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *PrivateEndpoint) DeepCopyInto(out *PrivateEndpoint) { + *out = *in + out.TypeMeta = in.TypeMeta + in.ObjectMeta.DeepCopyInto(&out.ObjectMeta) + in.Spec.DeepCopyInto(&out.Spec) + in.Status.DeepCopyInto(&out.Status) +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PrivateEndpoint. +func (in *PrivateEndpoint) DeepCopy() *PrivateEndpoint { + if in == nil { + return nil + } + out := new(PrivateEndpoint) + in.DeepCopyInto(out) + return out +} + +// DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object. +func (in *PrivateEndpoint) DeepCopyObject() runtime.Object { + if c := in.DeepCopy(); c != nil { + return c + } + return nil +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *PrivateEndpointInitParameters) DeepCopyInto(out *PrivateEndpointInitParameters) { + *out = *in + if in.DNSOptions != nil { + in, out := &in.DNSOptions, &out.DNSOptions + *out = make([]DNSOptionsInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Description != nil { + in, out := &in.Description, &out.Description + *out = new(string) + **out = **in + } + if in.EndpointAddress != nil { + in, out := &in.EndpointAddress, &out.EndpointAddress + *out = make([]EndpointAddressInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.FolderID != nil { + in, out := &in.FolderID, &out.FolderID + *out = new(string) + **out = **in + } + if in.FolderIDRef != nil { + in, out := &in.FolderIDRef, &out.FolderIDRef + *out = new(v1.Reference) + (*in).DeepCopyInto(*out) + } + if in.FolderIDSelector != nil { + in, out := &in.FolderIDSelector, &out.FolderIDSelector + *out = new(v1.Selector) + (*in).DeepCopyInto(*out) + } + if in.Labels != nil { + in, out := &in.Labels, &out.Labels + *out = make(map[string]*string, len(*in)) + for key, val := range *in { + var outVal *string + if val == nil { + (*out)[key] = nil + } else { + inVal := (*in)[key] + in, out := &inVal, &outVal + *out = new(string) + **out = **in + } + (*out)[key] = outVal + } + } + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } + if in.NetworkID != nil { + in, out := &in.NetworkID, &out.NetworkID + *out = new(string) + **out = **in + } + if in.NetworkIDRef != nil { + in, out := &in.NetworkIDRef, &out.NetworkIDRef + *out = new(v1.Reference) + (*in).DeepCopyInto(*out) + } + if in.NetworkIDSelector != nil { + in, out := &in.NetworkIDSelector, &out.NetworkIDSelector + *out = new(v1.Selector) + (*in).DeepCopyInto(*out) + } + if in.ObjectStorage != nil { + in, out := &in.ObjectStorage, &out.ObjectStorage + *out = make([]ObjectStorageInitParameters, len(*in)) + copy(*out, *in) + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PrivateEndpointInitParameters. +func (in *PrivateEndpointInitParameters) DeepCopy() *PrivateEndpointInitParameters { + if in == nil { + return nil + } + out := new(PrivateEndpointInitParameters) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *PrivateEndpointList) DeepCopyInto(out *PrivateEndpointList) { + *out = *in + out.TypeMeta = in.TypeMeta + in.ListMeta.DeepCopyInto(&out.ListMeta) + if in.Items != nil { + in, out := &in.Items, &out.Items + *out = make([]PrivateEndpoint, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PrivateEndpointList. +func (in *PrivateEndpointList) DeepCopy() *PrivateEndpointList { + if in == nil { + return nil + } + out := new(PrivateEndpointList) + in.DeepCopyInto(out) + return out +} + +// DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object. +func (in *PrivateEndpointList) DeepCopyObject() runtime.Object { + if c := in.DeepCopy(); c != nil { + return c + } + return nil +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *PrivateEndpointObservation) DeepCopyInto(out *PrivateEndpointObservation) { + *out = *in + if in.CreatedAt != nil { + in, out := &in.CreatedAt, &out.CreatedAt + *out = new(string) + **out = **in + } + if in.DNSOptions != nil { + in, out := &in.DNSOptions, &out.DNSOptions + *out = make([]DNSOptionsObservation, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Description != nil { + in, out := &in.Description, &out.Description + *out = new(string) + **out = **in + } + if in.EndpointAddress != nil { + in, out := &in.EndpointAddress, &out.EndpointAddress + *out = make([]EndpointAddressObservation, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.FolderID != nil { + in, out := &in.FolderID, &out.FolderID + *out = new(string) + **out = **in + } + if in.ID != nil { + in, out := &in.ID, &out.ID + *out = new(string) + **out = **in + } + if in.Labels != nil { + in, out := &in.Labels, &out.Labels + *out = make(map[string]*string, len(*in)) + for key, val := range *in { + var outVal *string + if val == nil { + (*out)[key] = nil + } else { + inVal := (*in)[key] + in, out := &inVal, &outVal + *out = new(string) + **out = **in + } + (*out)[key] = outVal + } + } + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } + if in.NetworkID != nil { + in, out := &in.NetworkID, &out.NetworkID + *out = new(string) + **out = **in + } + if in.ObjectStorage != nil { + in, out := &in.ObjectStorage, &out.ObjectStorage + *out = make([]ObjectStorageParameters, len(*in)) + copy(*out, *in) + } + if in.Status != nil { + in, out := &in.Status, &out.Status + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PrivateEndpointObservation. +func (in *PrivateEndpointObservation) DeepCopy() *PrivateEndpointObservation { + if in == nil { + return nil + } + out := new(PrivateEndpointObservation) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *PrivateEndpointParameters) DeepCopyInto(out *PrivateEndpointParameters) { + *out = *in + if in.DNSOptions != nil { + in, out := &in.DNSOptions, &out.DNSOptions + *out = make([]DNSOptionsParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Description != nil { + in, out := &in.Description, &out.Description + *out = new(string) + **out = **in + } + if in.EndpointAddress != nil { + in, out := &in.EndpointAddress, &out.EndpointAddress + *out = make([]EndpointAddressParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.FolderID != nil { + in, out := &in.FolderID, &out.FolderID + *out = new(string) + **out = **in + } + if in.FolderIDRef != nil { + in, out := &in.FolderIDRef, &out.FolderIDRef + *out = new(v1.Reference) + (*in).DeepCopyInto(*out) + } + if in.FolderIDSelector != nil { + in, out := &in.FolderIDSelector, &out.FolderIDSelector + *out = new(v1.Selector) + (*in).DeepCopyInto(*out) + } + if in.Labels != nil { + in, out := &in.Labels, &out.Labels + *out = make(map[string]*string, len(*in)) + for key, val := range *in { + var outVal *string + if val == nil { + (*out)[key] = nil + } else { + inVal := (*in)[key] + in, out := &inVal, &outVal + *out = new(string) + **out = **in + } + (*out)[key] = outVal + } + } + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } + if in.NetworkID != nil { + in, out := &in.NetworkID, &out.NetworkID + *out = new(string) + **out = **in + } + if in.NetworkIDRef != nil { + in, out := &in.NetworkIDRef, &out.NetworkIDRef + *out = new(v1.Reference) + (*in).DeepCopyInto(*out) + } + if in.NetworkIDSelector != nil { + in, out := &in.NetworkIDSelector, &out.NetworkIDSelector + *out = new(v1.Selector) + (*in).DeepCopyInto(*out) + } + if in.ObjectStorage != nil { + in, out := &in.ObjectStorage, &out.ObjectStorage + *out = make([]ObjectStorageParameters, len(*in)) + copy(*out, *in) + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PrivateEndpointParameters. +func (in *PrivateEndpointParameters) DeepCopy() *PrivateEndpointParameters { + if in == nil { + return nil + } + out := new(PrivateEndpointParameters) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *PrivateEndpointSpec) DeepCopyInto(out *PrivateEndpointSpec) { + *out = *in + in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) + in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PrivateEndpointSpec. +func (in *PrivateEndpointSpec) DeepCopy() *PrivateEndpointSpec { + if in == nil { + return nil + } + out := new(PrivateEndpointSpec) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *PrivateEndpointStatus) DeepCopyInto(out *PrivateEndpointStatus) { + *out = *in + in.ResourceStatus.DeepCopyInto(&out.ResourceStatus) + in.AtProvider.DeepCopyInto(&out.AtProvider) +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PrivateEndpointStatus. +func (in *PrivateEndpointStatus) DeepCopy() *PrivateEndpointStatus { + if in == nil { + return nil + } + out := new(PrivateEndpointStatus) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *RouteTable) DeepCopyInto(out *RouteTable) { *out = *in diff --git a/apis/vpc/v1alpha1/zz_generated.managed.go b/apis/vpc/v1alpha1/zz_generated.managed.go index 31b32e0..4a7d915 100644 --- a/apis/vpc/v1alpha1/zz_generated.managed.go +++ b/apis/vpc/v1alpha1/zz_generated.managed.go @@ -244,6 +244,66 @@ func (mg *Network) SetWriteConnectionSecretToReference(r *xpv1.SecretReference) mg.Spec.WriteConnectionSecretToReference = r } +// GetCondition of this PrivateEndpoint. +func (mg *PrivateEndpoint) GetCondition(ct xpv1.ConditionType) xpv1.Condition { + return mg.Status.GetCondition(ct) +} + +// GetDeletionPolicy of this PrivateEndpoint. +func (mg *PrivateEndpoint) GetDeletionPolicy() xpv1.DeletionPolicy { + return mg.Spec.DeletionPolicy +} + +// GetManagementPolicies of this PrivateEndpoint. +func (mg *PrivateEndpoint) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies +} + +// GetProviderConfigReference of this PrivateEndpoint. +func (mg *PrivateEndpoint) GetProviderConfigReference() *xpv1.Reference { + return mg.Spec.ProviderConfigReference +} + +// GetPublishConnectionDetailsTo of this PrivateEndpoint. +func (mg *PrivateEndpoint) GetPublishConnectionDetailsTo() *xpv1.PublishConnectionDetailsTo { + return mg.Spec.PublishConnectionDetailsTo +} + +// GetWriteConnectionSecretToReference of this PrivateEndpoint. +func (mg *PrivateEndpoint) GetWriteConnectionSecretToReference() *xpv1.SecretReference { + return mg.Spec.WriteConnectionSecretToReference +} + +// SetConditions of this PrivateEndpoint. +func (mg *PrivateEndpoint) SetConditions(c ...xpv1.Condition) { + mg.Status.SetConditions(c...) +} + +// SetDeletionPolicy of this PrivateEndpoint. +func (mg *PrivateEndpoint) SetDeletionPolicy(r xpv1.DeletionPolicy) { + mg.Spec.DeletionPolicy = r +} + +// SetManagementPolicies of this PrivateEndpoint. +func (mg *PrivateEndpoint) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r +} + +// SetProviderConfigReference of this PrivateEndpoint. +func (mg *PrivateEndpoint) SetProviderConfigReference(r *xpv1.Reference) { + mg.Spec.ProviderConfigReference = r +} + +// SetPublishConnectionDetailsTo of this PrivateEndpoint. +func (mg *PrivateEndpoint) SetPublishConnectionDetailsTo(r *xpv1.PublishConnectionDetailsTo) { + mg.Spec.PublishConnectionDetailsTo = r +} + +// SetWriteConnectionSecretToReference of this PrivateEndpoint. +func (mg *PrivateEndpoint) SetWriteConnectionSecretToReference(r *xpv1.SecretReference) { + mg.Spec.WriteConnectionSecretToReference = r +} + // GetCondition of this RouteTable. func (mg *RouteTable) GetCondition(ct xpv1.ConditionType) xpv1.Condition { return mg.Status.GetCondition(ct) diff --git a/apis/vpc/v1alpha1/zz_generated.managedlist.go b/apis/vpc/v1alpha1/zz_generated.managedlist.go index f187059..de88a4a 100644 --- a/apis/vpc/v1alpha1/zz_generated.managedlist.go +++ b/apis/vpc/v1alpha1/zz_generated.managedlist.go @@ -40,6 +40,15 @@ func (l *NetworkList) GetItems() []resource.Managed { return items } +// GetItems of this PrivateEndpointList. +func (l *PrivateEndpointList) GetItems() []resource.Managed { + items := make([]resource.Managed, len(l.Items)) + for i := range l.Items { + items[i] = &l.Items[i] + } + return items +} + // GetItems of this RouteTableList. func (l *RouteTableList) GetItems() []resource.Managed { items := make([]resource.Managed, len(l.Items)) diff --git a/apis/vpc/v1alpha1/zz_generated.resolvers.go b/apis/vpc/v1alpha1/zz_generated.resolvers.go index 4659c98..75ae70c 100644 --- a/apis/vpc/v1alpha1/zz_generated.resolvers.go +++ b/apis/vpc/v1alpha1/zz_generated.resolvers.go @@ -5,6 +5,7 @@ package v1alpha1 import ( "context" reference "github.com/crossplane/crossplane-runtime/pkg/reference" + resource "github.com/crossplane/upjet/pkg/resource" errors "github.com/pkg/errors" v1alpha1 "github.com/tagesjump/provider-upjet-yc/apis/resourcemanager/v1alpha1" client "sigs.k8s.io/controller-runtime/pkg/client" @@ -210,6 +211,116 @@ func (mg *Network) ResolveReferences(ctx context.Context, c client.Reader) error return nil } +// ResolveReferences of this PrivateEndpoint. +func (mg *PrivateEndpoint) ResolveReferences(ctx context.Context, c client.Reader) error { + r := reference.NewAPIResolver(c, mg) + + var rsp reference.ResolutionResponse + var err error + + for i3 := 0; i3 < len(mg.Spec.ForProvider.EndpointAddress); i3++ { + rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ + CurrentValue: reference.FromPtrValue(mg.Spec.ForProvider.EndpointAddress[i3].SubnetID), + Extract: resource.ExtractResourceID(), + Reference: mg.Spec.ForProvider.EndpointAddress[i3].SubnetIDRef, + Selector: mg.Spec.ForProvider.EndpointAddress[i3].SubnetIDSelector, + To: reference.To{ + List: &SubnetList{}, + Managed: &Subnet{}, + }, + }) + if err != nil { + return errors.Wrap(err, "mg.Spec.ForProvider.EndpointAddress[i3].SubnetID") + } + mg.Spec.ForProvider.EndpointAddress[i3].SubnetID = reference.ToPtrValue(rsp.ResolvedValue) + mg.Spec.ForProvider.EndpointAddress[i3].SubnetIDRef = rsp.ResolvedReference + + } + rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ + CurrentValue: reference.FromPtrValue(mg.Spec.ForProvider.FolderID), + Extract: reference.ExternalName(), + Reference: mg.Spec.ForProvider.FolderIDRef, + Selector: mg.Spec.ForProvider.FolderIDSelector, + To: reference.To{ + List: &v1alpha1.FolderList{}, + Managed: &v1alpha1.Folder{}, + }, + }) + if err != nil { + return errors.Wrap(err, "mg.Spec.ForProvider.FolderID") + } + mg.Spec.ForProvider.FolderID = reference.ToPtrValue(rsp.ResolvedValue) + mg.Spec.ForProvider.FolderIDRef = rsp.ResolvedReference + + rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ + CurrentValue: reference.FromPtrValue(mg.Spec.ForProvider.NetworkID), + Extract: resource.ExtractResourceID(), + Reference: mg.Spec.ForProvider.NetworkIDRef, + Selector: mg.Spec.ForProvider.NetworkIDSelector, + To: reference.To{ + List: &NetworkList{}, + Managed: &Network{}, + }, + }) + if err != nil { + return errors.Wrap(err, "mg.Spec.ForProvider.NetworkID") + } + mg.Spec.ForProvider.NetworkID = reference.ToPtrValue(rsp.ResolvedValue) + mg.Spec.ForProvider.NetworkIDRef = rsp.ResolvedReference + + for i3 := 0; i3 < len(mg.Spec.InitProvider.EndpointAddress); i3++ { + rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ + CurrentValue: reference.FromPtrValue(mg.Spec.InitProvider.EndpointAddress[i3].SubnetID), + Extract: resource.ExtractResourceID(), + Reference: mg.Spec.InitProvider.EndpointAddress[i3].SubnetIDRef, + Selector: mg.Spec.InitProvider.EndpointAddress[i3].SubnetIDSelector, + To: reference.To{ + List: &SubnetList{}, + Managed: &Subnet{}, + }, + }) + if err != nil { + return errors.Wrap(err, "mg.Spec.InitProvider.EndpointAddress[i3].SubnetID") + } + mg.Spec.InitProvider.EndpointAddress[i3].SubnetID = reference.ToPtrValue(rsp.ResolvedValue) + mg.Spec.InitProvider.EndpointAddress[i3].SubnetIDRef = rsp.ResolvedReference + + } + rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ + CurrentValue: reference.FromPtrValue(mg.Spec.InitProvider.FolderID), + Extract: reference.ExternalName(), + Reference: mg.Spec.InitProvider.FolderIDRef, + Selector: mg.Spec.InitProvider.FolderIDSelector, + To: reference.To{ + List: &v1alpha1.FolderList{}, + Managed: &v1alpha1.Folder{}, + }, + }) + if err != nil { + return errors.Wrap(err, "mg.Spec.InitProvider.FolderID") + } + mg.Spec.InitProvider.FolderID = reference.ToPtrValue(rsp.ResolvedValue) + mg.Spec.InitProvider.FolderIDRef = rsp.ResolvedReference + + rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ + CurrentValue: reference.FromPtrValue(mg.Spec.InitProvider.NetworkID), + Extract: resource.ExtractResourceID(), + Reference: mg.Spec.InitProvider.NetworkIDRef, + Selector: mg.Spec.InitProvider.NetworkIDSelector, + To: reference.To{ + List: &NetworkList{}, + Managed: &Network{}, + }, + }) + if err != nil { + return errors.Wrap(err, "mg.Spec.InitProvider.NetworkID") + } + mg.Spec.InitProvider.NetworkID = reference.ToPtrValue(rsp.ResolvedValue) + mg.Spec.InitProvider.NetworkIDRef = rsp.ResolvedReference + + return nil +} + // ResolveReferences of this RouteTable. func (mg *RouteTable) ResolveReferences(ctx context.Context, c client.Reader) error { r := reference.NewAPIResolver(c, mg) diff --git a/apis/vpc/v1alpha1/zz_network_types.go b/apis/vpc/v1alpha1/zz_network_types.go index 89cf433..b475e6d 100755 --- a/apis/vpc/v1alpha1/zz_network_types.go +++ b/apis/vpc/v1alpha1/zz_network_types.go @@ -11,12 +11,10 @@ import ( type NetworkInitParameters struct { - // An optional description of this resource. Provide this property when - // you create the resource. + // An optional description of this resource. Provide this property when you create the resource. Description *string `json:"description,omitempty" tf:"description,omitempty"` - // ID of the folder that the resource belongs to. If it - // is not provided, the default provider folder is used. + // ID of the folder that the resource belongs to. If it is not provided, the default provider folder is used. // +crossplane:generate:reference:type=github.com/tagesjump/provider-upjet-yc/apis/resourcemanager/v1alpha1.Folder FolderID *string `json:"folderId,omitempty" tf:"folder_id,omitempty"` @@ -44,12 +42,10 @@ type NetworkObservation struct { // ID of default Security Group of this network. DefaultSecurityGroupID *string `json:"defaultSecurityGroupId,omitempty" tf:"default_security_group_id,omitempty"` - // An optional description of this resource. Provide this property when - // you create the resource. + // An optional description of this resource. Provide this property when you create the resource. Description *string `json:"description,omitempty" tf:"description,omitempty"` - // ID of the folder that the resource belongs to. If it - // is not provided, the default provider folder is used. + // ID of the folder that the resource belongs to. If it is not provided, the default provider folder is used. FolderID *string `json:"folderId,omitempty" tf:"folder_id,omitempty"` ID *string `json:"id,omitempty" tf:"id,omitempty"` @@ -66,13 +62,11 @@ type NetworkObservation struct { type NetworkParameters struct { - // An optional description of this resource. Provide this property when - // you create the resource. + // An optional description of this resource. Provide this property when you create the resource. // +kubebuilder:validation:Optional Description *string `json:"description,omitempty" tf:"description,omitempty"` - // ID of the folder that the resource belongs to. If it - // is not provided, the default provider folder is used. + // ID of the folder that the resource belongs to. If it is not provided, the default provider folder is used. // +crossplane:generate:reference:type=github.com/tagesjump/provider-upjet-yc/apis/resourcemanager/v1alpha1.Folder // +kubebuilder:validation:Optional FolderID *string `json:"folderId,omitempty" tf:"folder_id,omitempty"` diff --git a/apis/mdb/v1alpha1/zz_opensearchcluster_terraformed.go b/apis/vpc/v1alpha1/zz_privateendpoint_terraformed.go similarity index 64% rename from apis/mdb/v1alpha1/zz_opensearchcluster_terraformed.go rename to apis/vpc/v1alpha1/zz_privateendpoint_terraformed.go index 36a6697..547d541 100755 --- a/apis/mdb/v1alpha1/zz_opensearchcluster_terraformed.go +++ b/apis/vpc/v1alpha1/zz_privateendpoint_terraformed.go @@ -10,18 +10,18 @@ import ( "github.com/crossplane/upjet/pkg/resource/json" ) -// GetTerraformResourceType returns Terraform resource type for this OpensearchCluster -func (mg *OpensearchCluster) GetTerraformResourceType() string { - return "yandex_mdb_opensearch_cluster" +// GetTerraformResourceType returns Terraform resource type for this PrivateEndpoint +func (mg *PrivateEndpoint) GetTerraformResourceType() string { + return "yandex_vpc_private_endpoint" } -// GetConnectionDetailsMapping for this OpensearchCluster -func (tr *OpensearchCluster) GetConnectionDetailsMapping() map[string]string { - return map[string]string{"config[*].admin_password": "config[*].adminPasswordSecretRef"} +// GetConnectionDetailsMapping for this PrivateEndpoint +func (tr *PrivateEndpoint) GetConnectionDetailsMapping() map[string]string { + return nil } -// GetObservation of this OpensearchCluster -func (tr *OpensearchCluster) GetObservation() (map[string]any, error) { +// GetObservation of this PrivateEndpoint +func (tr *PrivateEndpoint) GetObservation() (map[string]any, error) { o, err := json.TFParser.Marshal(tr.Status.AtProvider) if err != nil { return nil, err @@ -30,8 +30,8 @@ func (tr *OpensearchCluster) GetObservation() (map[string]any, error) { return base, json.TFParser.Unmarshal(o, &base) } -// SetObservation for this OpensearchCluster -func (tr *OpensearchCluster) SetObservation(obs map[string]any) error { +// SetObservation for this PrivateEndpoint +func (tr *PrivateEndpoint) SetObservation(obs map[string]any) error { p, err := json.TFParser.Marshal(obs) if err != nil { return err @@ -39,16 +39,16 @@ func (tr *OpensearchCluster) SetObservation(obs map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Status.AtProvider) } -// GetID returns ID of underlying Terraform resource of this OpensearchCluster -func (tr *OpensearchCluster) GetID() string { +// GetID returns ID of underlying Terraform resource of this PrivateEndpoint +func (tr *PrivateEndpoint) GetID() string { if tr.Status.AtProvider.ID == nil { return "" } return *tr.Status.AtProvider.ID } -// GetParameters of this OpensearchCluster -func (tr *OpensearchCluster) GetParameters() (map[string]any, error) { +// GetParameters of this PrivateEndpoint +func (tr *PrivateEndpoint) GetParameters() (map[string]any, error) { p, err := json.TFParser.Marshal(tr.Spec.ForProvider) if err != nil { return nil, err @@ -57,8 +57,8 @@ func (tr *OpensearchCluster) GetParameters() (map[string]any, error) { return base, json.TFParser.Unmarshal(p, &base) } -// SetParameters for this OpensearchCluster -func (tr *OpensearchCluster) SetParameters(params map[string]any) error { +// SetParameters for this PrivateEndpoint +func (tr *PrivateEndpoint) SetParameters(params map[string]any) error { p, err := json.TFParser.Marshal(params) if err != nil { return err @@ -66,8 +66,8 @@ func (tr *OpensearchCluster) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } -// GetInitParameters of this OpensearchCluster -func (tr *OpensearchCluster) GetInitParameters() (map[string]any, error) { +// GetInitParameters of this PrivateEndpoint +func (tr *PrivateEndpoint) GetInitParameters() (map[string]any, error) { p, err := json.TFParser.Marshal(tr.Spec.InitProvider) if err != nil { return nil, err @@ -76,8 +76,8 @@ func (tr *OpensearchCluster) GetInitParameters() (map[string]any, error) { return base, json.TFParser.Unmarshal(p, &base) } -// GetInitParameters of this OpensearchCluster -func (tr *OpensearchCluster) GetMergedParameters(shouldMergeInitProvider bool) (map[string]any, error) { +// GetInitParameters of this PrivateEndpoint +func (tr *PrivateEndpoint) GetMergedParameters(shouldMergeInitProvider bool) (map[string]any, error) { params, err := tr.GetParameters() if err != nil { return nil, errors.Wrapf(err, "cannot get parameters for resource '%q'", tr.GetName()) @@ -106,10 +106,10 @@ func (tr *OpensearchCluster) GetMergedParameters(shouldMergeInitProvider bool) ( return params, nil } -// LateInitialize this OpensearchCluster using its observed tfState. +// LateInitialize this PrivateEndpoint using its observed tfState. // returns True if there are any spec changes for the resource. -func (tr *OpensearchCluster) LateInitialize(attrs []byte) (bool, error) { - params := &OpensearchClusterParameters{} +func (tr *PrivateEndpoint) LateInitialize(attrs []byte) (bool, error) { + params := &PrivateEndpointParameters{} if err := json.TFParser.Unmarshal(attrs, params); err != nil { return false, errors.Wrap(err, "failed to unmarshal Terraform state parameters for late-initialization") } @@ -120,6 +120,6 @@ func (tr *OpensearchCluster) LateInitialize(attrs []byte) (bool, error) { } // GetTerraformSchemaVersion returns the associated Terraform schema version -func (tr *OpensearchCluster) GetTerraformSchemaVersion() int { +func (tr *PrivateEndpoint) GetTerraformSchemaVersion() int { return 0 } diff --git a/apis/vpc/v1alpha1/zz_privateendpoint_types.go b/apis/vpc/v1alpha1/zz_privateendpoint_types.go new file mode 100755 index 0000000..5e7ba8b --- /dev/null +++ b/apis/vpc/v1alpha1/zz_privateendpoint_types.go @@ -0,0 +1,294 @@ +// Code generated by upjet. DO NOT EDIT. + +package v1alpha1 + +import ( + metav1 "k8s.io/apimachinery/pkg/apis/meta/v1" + "k8s.io/apimachinery/pkg/runtime/schema" + + v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" +) + +type DNSOptionsInitParameters struct { + + // If enabled - additional service dns will be created. + PrivateDNSRecordsEnabled *bool `json:"privateDnsRecordsEnabled,omitempty" tf:"private_dns_records_enabled,omitempty"` +} + +type DNSOptionsObservation struct { + + // If enabled - additional service dns will be created. + PrivateDNSRecordsEnabled *bool `json:"privateDnsRecordsEnabled,omitempty" tf:"private_dns_records_enabled,omitempty"` +} + +type DNSOptionsParameters struct { + + // If enabled - additional service dns will be created. + // +kubebuilder:validation:Optional + PrivateDNSRecordsEnabled *bool `json:"privateDnsRecordsEnabled,omitempty" tf:"private_dns_records_enabled,omitempty"` +} + +type EndpointAddressInitParameters struct { + + // Specifies IP address within subnet_id. + Address *string `json:"address,omitempty" tf:"address,omitempty"` + + // ID of the address. + AddressID *string `json:"addressId,omitempty" tf:"address_id,omitempty"` + + // Subnet of the IP address. + // +crossplane:generate:reference:type=github.com/tagesjump/provider-upjet-yc/apis/vpc/v1alpha1.Subnet + // +crossplane:generate:reference:extractor=github.com/crossplane/upjet/pkg/resource.ExtractResourceID() + SubnetID *string `json:"subnetId,omitempty" tf:"subnet_id,omitempty"` + + // Reference to a Subnet in vpc to populate subnetId. + // +kubebuilder:validation:Optional + SubnetIDRef *v1.Reference `json:"subnetIdRef,omitempty" tf:"-"` + + // Selector for a Subnet in vpc to populate subnetId. + // +kubebuilder:validation:Optional + SubnetIDSelector *v1.Selector `json:"subnetIdSelector,omitempty" tf:"-"` +} + +type EndpointAddressObservation struct { + + // Specifies IP address within subnet_id. + Address *string `json:"address,omitempty" tf:"address,omitempty"` + + // ID of the address. + AddressID *string `json:"addressId,omitempty" tf:"address_id,omitempty"` + + // Subnet of the IP address. + SubnetID *string `json:"subnetId,omitempty" tf:"subnet_id,omitempty"` +} + +type EndpointAddressParameters struct { + + // Specifies IP address within subnet_id. + // +kubebuilder:validation:Optional + Address *string `json:"address,omitempty" tf:"address,omitempty"` + + // ID of the address. + // +kubebuilder:validation:Optional + AddressID *string `json:"addressId,omitempty" tf:"address_id,omitempty"` + + // Subnet of the IP address. + // +crossplane:generate:reference:type=github.com/tagesjump/provider-upjet-yc/apis/vpc/v1alpha1.Subnet + // +crossplane:generate:reference:extractor=github.com/crossplane/upjet/pkg/resource.ExtractResourceID() + // +kubebuilder:validation:Optional + SubnetID *string `json:"subnetId,omitempty" tf:"subnet_id,omitempty"` + + // Reference to a Subnet in vpc to populate subnetId. + // +kubebuilder:validation:Optional + SubnetIDRef *v1.Reference `json:"subnetIdRef,omitempty" tf:"-"` + + // Selector for a Subnet in vpc to populate subnetId. + // +kubebuilder:validation:Optional + SubnetIDSelector *v1.Selector `json:"subnetIdSelector,omitempty" tf:"-"` +} + +type ObjectStorageInitParameters struct { +} + +type ObjectStorageObservation struct { +} + +type ObjectStorageParameters struct { +} + +type PrivateEndpointInitParameters struct { + + // Private endpoint DNS options block. + DNSOptions []DNSOptionsInitParameters `json:"dnsOptions,omitempty" tf:"dns_options,omitempty"` + + // An optional description of this resource. Provide this property when you create the resource. + Description *string `json:"description,omitempty" tf:"description,omitempty"` + + // Private endpoint address specification block. + EndpointAddress []EndpointAddressInitParameters `json:"endpointAddress,omitempty" tf:"endpoint_address,omitempty"` + + // ID of the folder that the resource belongs to. If it is not provided, the default provider folder is used. + // +crossplane:generate:reference:type=github.com/tagesjump/provider-upjet-yc/apis/resourcemanager/v1alpha1.Folder + FolderID *string `json:"folderId,omitempty" tf:"folder_id,omitempty"` + + // Reference to a Folder in resourcemanager to populate folderId. + // +kubebuilder:validation:Optional + FolderIDRef *v1.Reference `json:"folderIdRef,omitempty" tf:"-"` + + // Selector for a Folder in resourcemanager to populate folderId. + // +kubebuilder:validation:Optional + FolderIDSelector *v1.Selector `json:"folderIdSelector,omitempty" tf:"-"` + + // Labels to apply to this resource. A list of key/value pairs. + // +mapType=granular + Labels map[string]*string `json:"labels,omitempty" tf:"labels,omitempty"` + + // Name of the private endpoint. Provided by the client when the private endpoint is created. + Name *string `json:"name,omitempty" tf:"name,omitempty"` + + // ID of the network which private endpoint belongs to. + // +crossplane:generate:reference:type=github.com/tagesjump/provider-upjet-yc/apis/vpc/v1alpha1.Network + // +crossplane:generate:reference:extractor=github.com/crossplane/upjet/pkg/resource.ExtractResourceID() + NetworkID *string `json:"networkId,omitempty" tf:"network_id,omitempty"` + + // Reference to a Network in vpc to populate networkId. + // +kubebuilder:validation:Optional + NetworkIDRef *v1.Reference `json:"networkIdRef,omitempty" tf:"-"` + + // Selector for a Network in vpc to populate networkId. + // +kubebuilder:validation:Optional + NetworkIDSelector *v1.Selector `json:"networkIdSelector,omitempty" tf:"-"` + + ObjectStorage []ObjectStorageInitParameters `json:"objectStorage,omitempty" tf:"object_storage,omitempty"` +} + +type PrivateEndpointObservation struct { + + // Creation timestamp of the key. + CreatedAt *string `json:"createdAt,omitempty" tf:"created_at,omitempty"` + + // Private endpoint DNS options block. + DNSOptions []DNSOptionsObservation `json:"dnsOptions,omitempty" tf:"dns_options,omitempty"` + + // An optional description of this resource. Provide this property when you create the resource. + Description *string `json:"description,omitempty" tf:"description,omitempty"` + + // Private endpoint address specification block. + EndpointAddress []EndpointAddressObservation `json:"endpointAddress,omitempty" tf:"endpoint_address,omitempty"` + + // ID of the folder that the resource belongs to. If it is not provided, the default provider folder is used. + FolderID *string `json:"folderId,omitempty" tf:"folder_id,omitempty"` + + ID *string `json:"id,omitempty" tf:"id,omitempty"` + + // Labels to apply to this resource. A list of key/value pairs. + // +mapType=granular + Labels map[string]*string `json:"labels,omitempty" tf:"labels,omitempty"` + + // Name of the private endpoint. Provided by the client when the private endpoint is created. + Name *string `json:"name,omitempty" tf:"name,omitempty"` + + // ID of the network which private endpoint belongs to. + NetworkID *string `json:"networkId,omitempty" tf:"network_id,omitempty"` + + ObjectStorage []ObjectStorageParameters `json:"objectStorage,omitempty" tf:"object_storage,omitempty"` + + // Status of the private endpoint. + Status *string `json:"status,omitempty" tf:"status,omitempty"` +} + +type PrivateEndpointParameters struct { + + // Private endpoint DNS options block. + // +kubebuilder:validation:Optional + DNSOptions []DNSOptionsParameters `json:"dnsOptions,omitempty" tf:"dns_options,omitempty"` + + // An optional description of this resource. Provide this property when you create the resource. + // +kubebuilder:validation:Optional + Description *string `json:"description,omitempty" tf:"description,omitempty"` + + // Private endpoint address specification block. + // +kubebuilder:validation:Optional + EndpointAddress []EndpointAddressParameters `json:"endpointAddress,omitempty" tf:"endpoint_address,omitempty"` + + // ID of the folder that the resource belongs to. If it is not provided, the default provider folder is used. + // +crossplane:generate:reference:type=github.com/tagesjump/provider-upjet-yc/apis/resourcemanager/v1alpha1.Folder + // +kubebuilder:validation:Optional + FolderID *string `json:"folderId,omitempty" tf:"folder_id,omitempty"` + + // Reference to a Folder in resourcemanager to populate folderId. + // +kubebuilder:validation:Optional + FolderIDRef *v1.Reference `json:"folderIdRef,omitempty" tf:"-"` + + // Selector for a Folder in resourcemanager to populate folderId. + // +kubebuilder:validation:Optional + FolderIDSelector *v1.Selector `json:"folderIdSelector,omitempty" tf:"-"` + + // Labels to apply to this resource. A list of key/value pairs. + // +kubebuilder:validation:Optional + // +mapType=granular + Labels map[string]*string `json:"labels,omitempty" tf:"labels,omitempty"` + + // Name of the private endpoint. Provided by the client when the private endpoint is created. + // +kubebuilder:validation:Optional + Name *string `json:"name,omitempty" tf:"name,omitempty"` + + // ID of the network which private endpoint belongs to. + // +crossplane:generate:reference:type=github.com/tagesjump/provider-upjet-yc/apis/vpc/v1alpha1.Network + // +crossplane:generate:reference:extractor=github.com/crossplane/upjet/pkg/resource.ExtractResourceID() + // +kubebuilder:validation:Optional + NetworkID *string `json:"networkId,omitempty" tf:"network_id,omitempty"` + + // Reference to a Network in vpc to populate networkId. + // +kubebuilder:validation:Optional + NetworkIDRef *v1.Reference `json:"networkIdRef,omitempty" tf:"-"` + + // Selector for a Network in vpc to populate networkId. + // +kubebuilder:validation:Optional + NetworkIDSelector *v1.Selector `json:"networkIdSelector,omitempty" tf:"-"` + + // +kubebuilder:validation:Optional + ObjectStorage []ObjectStorageParameters `json:"objectStorage,omitempty" tf:"object_storage,omitempty"` +} + +// PrivateEndpointSpec defines the desired state of PrivateEndpoint +type PrivateEndpointSpec struct { + v1.ResourceSpec `json:",inline"` + ForProvider PrivateEndpointParameters `json:"forProvider"` + // THIS IS A BETA FIELD. It will be honored + // unless the Management Policies feature flag is disabled. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider PrivateEndpointInitParameters `json:"initProvider,omitempty"` +} + +// PrivateEndpointStatus defines the observed state of PrivateEndpoint. +type PrivateEndpointStatus struct { + v1.ResourceStatus `json:",inline"` + AtProvider PrivateEndpointObservation `json:"atProvider,omitempty"` +} + +// +kubebuilder:object:root=true +// +kubebuilder:subresource:status +// +kubebuilder:storageversion + +// PrivateEndpoint is the Schema for the PrivateEndpoints API. Manages a VPC Private Endpoint within Yandex.Cloud. +// +kubebuilder:printcolumn:name="SYNCED",type="string",JSONPath=".status.conditions[?(@.type=='Synced')].status" +// +kubebuilder:printcolumn:name="READY",type="string",JSONPath=".status.conditions[?(@.type=='Ready')].status" +// +kubebuilder:printcolumn:name="EXTERNAL-NAME",type="string",JSONPath=".metadata.annotations.crossplane\\.io/external-name" +// +kubebuilder:printcolumn:name="AGE",type="date",JSONPath=".metadata.creationTimestamp" +// +kubebuilder:resource:scope=Cluster,categories={crossplane,managed,yandex-cloud} +type PrivateEndpoint struct { + metav1.TypeMeta `json:",inline"` + metav1.ObjectMeta `json:"metadata,omitempty"` + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.objectStorage) || (has(self.initProvider) && has(self.initProvider.objectStorage))",message="spec.forProvider.objectStorage is a required parameter" + Spec PrivateEndpointSpec `json:"spec"` + Status PrivateEndpointStatus `json:"status,omitempty"` +} + +// +kubebuilder:object:root=true + +// PrivateEndpointList contains a list of PrivateEndpoints +type PrivateEndpointList struct { + metav1.TypeMeta `json:",inline"` + metav1.ListMeta `json:"metadata,omitempty"` + Items []PrivateEndpoint `json:"items"` +} + +// Repository type metadata. +var ( + PrivateEndpoint_Kind = "PrivateEndpoint" + PrivateEndpoint_GroupKind = schema.GroupKind{Group: CRDGroup, Kind: PrivateEndpoint_Kind}.String() + PrivateEndpoint_KindAPIVersion = PrivateEndpoint_Kind + "." + CRDGroupVersion.String() + PrivateEndpoint_GroupVersionKind = CRDGroupVersion.WithKind(PrivateEndpoint_Kind) +) + +func init() { + SchemeBuilder.Register(&PrivateEndpoint{}, &PrivateEndpointList{}) +} diff --git a/apis/vpc/v1alpha1/zz_routetable_types.go b/apis/vpc/v1alpha1/zz_routetable_types.go index e860535..5ae2209 100755 --- a/apis/vpc/v1alpha1/zz_routetable_types.go +++ b/apis/vpc/v1alpha1/zz_routetable_types.go @@ -11,12 +11,10 @@ import ( type RouteTableInitParameters struct { - // An optional description of the route table. Provide this property when - // you create the resource. + // An optional description of the route table. Provide this property when you create the resource. Description *string `json:"description,omitempty" tf:"description,omitempty"` - // The ID of the folder to which the resource belongs. - // If omitted, the provider folder is used. + // The ID of the folder to which the resource belongs. If omitted, the provider folder is used. // +crossplane:generate:reference:type=github.com/tagesjump/provider-upjet-yc/apis/resourcemanager/v1alpha1.Folder FolderID *string `json:"folderId,omitempty" tf:"folder_id,omitempty"` @@ -56,12 +54,10 @@ type RouteTableObservation struct { // Creation timestamp of the route table. CreatedAt *string `json:"createdAt,omitempty" tf:"created_at,omitempty"` - // An optional description of the route table. Provide this property when - // you create the resource. + // An optional description of the route table. Provide this property when you create the resource. Description *string `json:"description,omitempty" tf:"description,omitempty"` - // The ID of the folder to which the resource belongs. - // If omitted, the provider folder is used. + // The ID of the folder to which the resource belongs. If omitted, the provider folder is used. FolderID *string `json:"folderId,omitempty" tf:"folder_id,omitempty"` ID *string `json:"id,omitempty" tf:"id,omitempty"` @@ -82,13 +78,11 @@ type RouteTableObservation struct { type RouteTableParameters struct { - // An optional description of the route table. Provide this property when - // you create the resource. + // An optional description of the route table. Provide this property when you create the resource. // +kubebuilder:validation:Optional Description *string `json:"description,omitempty" tf:"description,omitempty"` - // The ID of the folder to which the resource belongs. - // If omitted, the provider folder is used. + // The ID of the folder to which the resource belongs. If omitted, the provider folder is used. // +crossplane:generate:reference:type=github.com/tagesjump/provider-upjet-yc/apis/resourcemanager/v1alpha1.Folder // +kubebuilder:validation:Optional FolderID *string `json:"folderId,omitempty" tf:"folder_id,omitempty"` diff --git a/apis/vpc/v1alpha1/zz_subnet_types.go b/apis/vpc/v1alpha1/zz_subnet_types.go index 4657a58..ffaa1d5 100755 --- a/apis/vpc/v1alpha1/zz_subnet_types.go +++ b/apis/vpc/v1alpha1/zz_subnet_types.go @@ -53,12 +53,10 @@ type SubnetInitParameters struct { // Options for DHCP client. The structure is documented below. DHCPOptions []DHCPOptionsInitParameters `json:"dhcpOptions,omitempty" tf:"dhcp_options,omitempty"` - // An optional description of the subnet. Provide this property when - // you create the resource. + // An optional description of the subnet. Provide this property when you create the resource. Description *string `json:"description,omitempty" tf:"description,omitempty"` - // The ID of the folder to which the resource belongs. - // If omitted, the provider folder is used. + // The ID of the folder to which the resource belongs. If omitted, the provider folder is used. // +crossplane:generate:reference:type=github.com/tagesjump/provider-upjet-yc/apis/resourcemanager/v1alpha1.Folder FolderID *string `json:"folderId,omitempty" tf:"folder_id,omitempty"` @@ -77,8 +75,7 @@ type SubnetInitParameters struct { // Name of the subnet. Provided by the client when the subnet is created. Name *string `json:"name,omitempty" tf:"name,omitempty"` - // ID of the network this subnet belongs to. - // Only networks that are in the distributed mode can have subnets. + // ID of the network this subnet belongs to. Only networks that are in the distributed mode can have subnets. // +crossplane:generate:reference:type=Network NetworkID *string `json:"networkId,omitempty" tf:"network_id,omitempty"` @@ -90,14 +87,10 @@ type SubnetInitParameters struct { // +kubebuilder:validation:Optional NetworkIDSelector *v1.Selector `json:"networkIdSelector,omitempty" tf:"-"` - // The ID of the route table to assign to this subnet. Assigned route table should - // belong to the same network as this subnet. + // The ID of the route table to assign to this subnet. Assigned route table should belong to the same network as this subnet. RouteTableID *string `json:"routeTableId,omitempty" tf:"route_table_id,omitempty"` - // A list of blocks of internal IPv4 addresses that are owned by this subnet. - // Provide this property when you create the subnet. For example, 10.0.0.0/22 or 192.168.0.0/16. - // Blocks of addresses must be unique and non-overlapping within a network. - // Minimum subnet size is /28, and maximum subnet size is /16. Only IPv4 is supported. + // A list of blocks of internal IPv4 addresses that are owned by this subnet. Provide this property when you create the subnet. For example, 10.0.0.0/22 or 192.168.0.0/16. Blocks of addresses must be unique and non-overlapping within a network. Minimum subnet size is /28, and maximum subnet size is /16. Only IPv4 is supported. V4CidrBlocks []*string `json:"v4CidrBlocks,omitempty" tf:"v4_cidr_blocks,omitempty"` // Name of the Yandex.Cloud zone for this subnet. @@ -110,12 +103,10 @@ type SubnetObservation struct { // Options for DHCP client. The structure is documented below. DHCPOptions []DHCPOptionsObservation `json:"dhcpOptions,omitempty" tf:"dhcp_options,omitempty"` - // An optional description of the subnet. Provide this property when - // you create the resource. + // An optional description of the subnet. Provide this property when you create the resource. Description *string `json:"description,omitempty" tf:"description,omitempty"` - // The ID of the folder to which the resource belongs. - // If omitted, the provider folder is used. + // The ID of the folder to which the resource belongs. If omitted, the provider folder is used. FolderID *string `json:"folderId,omitempty" tf:"folder_id,omitempty"` ID *string `json:"id,omitempty" tf:"id,omitempty"` @@ -127,18 +118,13 @@ type SubnetObservation struct { // Name of the subnet. Provided by the client when the subnet is created. Name *string `json:"name,omitempty" tf:"name,omitempty"` - // ID of the network this subnet belongs to. - // Only networks that are in the distributed mode can have subnets. + // ID of the network this subnet belongs to. Only networks that are in the distributed mode can have subnets. NetworkID *string `json:"networkId,omitempty" tf:"network_id,omitempty"` - // The ID of the route table to assign to this subnet. Assigned route table should - // belong to the same network as this subnet. + // The ID of the route table to assign to this subnet. Assigned route table should belong to the same network as this subnet. RouteTableID *string `json:"routeTableId,omitempty" tf:"route_table_id,omitempty"` - // A list of blocks of internal IPv4 addresses that are owned by this subnet. - // Provide this property when you create the subnet. For example, 10.0.0.0/22 or 192.168.0.0/16. - // Blocks of addresses must be unique and non-overlapping within a network. - // Minimum subnet size is /28, and maximum subnet size is /16. Only IPv4 is supported. + // A list of blocks of internal IPv4 addresses that are owned by this subnet. Provide this property when you create the subnet. For example, 10.0.0.0/22 or 192.168.0.0/16. Blocks of addresses must be unique and non-overlapping within a network. Minimum subnet size is /28, and maximum subnet size is /16. Only IPv4 is supported. V4CidrBlocks []*string `json:"v4CidrBlocks,omitempty" tf:"v4_cidr_blocks,omitempty"` // An optional list of blocks of IPv6 addresses that are owned by this subnet. @@ -154,13 +140,11 @@ type SubnetParameters struct { // +kubebuilder:validation:Optional DHCPOptions []DHCPOptionsParameters `json:"dhcpOptions,omitempty" tf:"dhcp_options,omitempty"` - // An optional description of the subnet. Provide this property when - // you create the resource. + // An optional description of the subnet. Provide this property when you create the resource. // +kubebuilder:validation:Optional Description *string `json:"description,omitempty" tf:"description,omitempty"` - // The ID of the folder to which the resource belongs. - // If omitted, the provider folder is used. + // The ID of the folder to which the resource belongs. If omitted, the provider folder is used. // +crossplane:generate:reference:type=github.com/tagesjump/provider-upjet-yc/apis/resourcemanager/v1alpha1.Folder // +kubebuilder:validation:Optional FolderID *string `json:"folderId,omitempty" tf:"folder_id,omitempty"` @@ -182,8 +166,7 @@ type SubnetParameters struct { // +kubebuilder:validation:Optional Name *string `json:"name,omitempty" tf:"name,omitempty"` - // ID of the network this subnet belongs to. - // Only networks that are in the distributed mode can have subnets. + // ID of the network this subnet belongs to. Only networks that are in the distributed mode can have subnets. // +crossplane:generate:reference:type=Network // +kubebuilder:validation:Optional NetworkID *string `json:"networkId,omitempty" tf:"network_id,omitempty"` @@ -196,15 +179,11 @@ type SubnetParameters struct { // +kubebuilder:validation:Optional NetworkIDSelector *v1.Selector `json:"networkIdSelector,omitempty" tf:"-"` - // The ID of the route table to assign to this subnet. Assigned route table should - // belong to the same network as this subnet. + // The ID of the route table to assign to this subnet. Assigned route table should belong to the same network as this subnet. // +kubebuilder:validation:Optional RouteTableID *string `json:"routeTableId,omitempty" tf:"route_table_id,omitempty"` - // A list of blocks of internal IPv4 addresses that are owned by this subnet. - // Provide this property when you create the subnet. For example, 10.0.0.0/22 or 192.168.0.0/16. - // Blocks of addresses must be unique and non-overlapping within a network. - // Minimum subnet size is /28, and maximum subnet size is /16. Only IPv4 is supported. + // A list of blocks of internal IPv4 addresses that are owned by this subnet. Provide this property when you create the subnet. For example, 10.0.0.0/22 or 192.168.0.0/16. Blocks of addresses must be unique and non-overlapping within a network. Minimum subnet size is /28, and maximum subnet size is /16. Only IPv4 is supported. // +kubebuilder:validation:Optional V4CidrBlocks []*string `json:"v4CidrBlocks,omitempty" tf:"v4_cidr_blocks,omitempty"` diff --git a/apis/yandex/v1alpha1/zz_function_terraformed.go b/apis/yandex/v1alpha1/zz_function_terraformed.go index 74edffd..2094ac3 100755 --- a/apis/yandex/v1alpha1/zz_function_terraformed.go +++ b/apis/yandex/v1alpha1/zz_function_terraformed.go @@ -121,5 +121,5 @@ func (tr *Function) LateInitialize(attrs []byte) (bool, error) { // GetTerraformSchemaVersion returns the associated Terraform schema version func (tr *Function) GetTerraformSchemaVersion() int { - return 0 + return 1 } diff --git a/apis/yandex/v1alpha1/zz_function_types.go b/apis/yandex/v1alpha1/zz_function_types.go index a8730c1..20ee606 100755 --- a/apis/yandex/v1alpha1/zz_function_types.go +++ b/apis/yandex/v1alpha1/zz_function_types.go @@ -60,54 +60,83 @@ type AsyncInvocationParameters struct { type ConnectivityInitParameters struct { - // Network the version will have access to. It's essential to specify network with subnets in all availability zones. + // Network the version will have access to. It's essential to specify network with subnets in all availability zones NetworkID *string `json:"networkId,omitempty" tf:"network_id,omitempty"` } type ConnectivityObservation struct { - // Network the version will have access to. It's essential to specify network with subnets in all availability zones. + // Network the version will have access to. It's essential to specify network with subnets in all availability zones NetworkID *string `json:"networkId,omitempty" tf:"network_id,omitempty"` } type ConnectivityParameters struct { - // Network the version will have access to. It's essential to specify network with subnets in all availability zones. + // Network the version will have access to. It's essential to specify network with subnets in all availability zones // +kubebuilder:validation:Optional NetworkID *string `json:"networkId" tf:"network_id,omitempty"` } type ContentInitParameters struct { - // Filename to zip archive for the version. + // Filename to zip archive for the version ZipFilename *string `json:"zipFilename,omitempty" tf:"zip_filename,omitempty"` } type ContentObservation struct { - // Filename to zip archive for the version. + // Filename to zip archive for the version ZipFilename *string `json:"zipFilename,omitempty" tf:"zip_filename,omitempty"` } type ContentParameters struct { - // Filename to zip archive for the version. + // Filename to zip archive for the version // +kubebuilder:validation:Optional ZipFilename *string `json:"zipFilename" tf:"zip_filename,omitempty"` } +type EphemeralDiskInitParameters struct { + + // Optional block size of the ephemeral disk in KB + BlockSizeKb *float64 `json:"blockSizeKb,omitempty" tf:"block_size_kb,omitempty"` + + // Size of the ephemeral disk in GB + SizeGb *float64 `json:"sizeGb,omitempty" tf:"size_gb,omitempty"` +} + +type EphemeralDiskObservation struct { + + // Optional block size of the ephemeral disk in KB + BlockSizeKb *float64 `json:"blockSizeKb,omitempty" tf:"block_size_kb,omitempty"` + + // Size of the ephemeral disk in GB + SizeGb *float64 `json:"sizeGb,omitempty" tf:"size_gb,omitempty"` +} + +type EphemeralDiskParameters struct { + + // Optional block size of the ephemeral disk in KB + // +kubebuilder:validation:Optional + BlockSizeKb *float64 `json:"blockSizeKb,omitempty" tf:"block_size_kb,omitempty"` + + // Size of the ephemeral disk in GB + // +kubebuilder:validation:Optional + SizeGb *float64 `json:"sizeGb" tf:"size_gb,omitempty"` +} + type FunctionInitParameters struct { - // Config for asynchronous invocations of Yandex Cloud Function. + // Config for asynchronous invocations of Yandex Cloud Function AsyncInvocation []AsyncInvocationInitParameters `json:"asyncInvocation,omitempty" tf:"async_invocation,omitempty"` - // The maximum number of requests processed by a function instance at the same time. + // The maximum number of requests processed by a function instance at the same time Concurrency *float64 `json:"concurrency,omitempty" tf:"concurrency,omitempty"` - // Function version connectivity. If specified the version will be attached to specified network. + // Function version connectivity. If specified the version will be attached to specified network Connectivity []ConnectivityInitParameters `json:"connectivity,omitempty" tf:"connectivity,omitempty"` - // Version deployment content for Yandex Cloud Function code. Can be only one package or content section. Either package or content section must be specified. + // Version deployment content for Yandex Cloud Function code. Can be only one package or content section. Either package or content section must be specified Content []ContentInitParameters `json:"content,omitempty" tf:"content,omitempty"` // Description of the Yandex Cloud Function @@ -139,16 +168,19 @@ type FunctionInitParameters struct { // +mapType=granular Labels map[string]*string `json:"labels,omitempty" tf:"labels,omitempty"` - // Options for logging from Yandex Cloud Function. + // Options for logging from Yandex Cloud Function LogOptions []LogOptionsInitParameters `json:"logOptions,omitempty" tf:"log_options,omitempty"` // Memory in megabytes (aligned to 128MB) for Yandex Cloud Function Memory *float64 `json:"memory,omitempty" tf:"memory,omitempty"` + // Mounts for Yandex Cloud Function. + Mounts []MountsInitParameters `json:"mounts,omitempty" tf:"mounts,omitempty"` + // Yandex Cloud Function name used to define trigger Name *string `json:"name,omitempty" tf:"name,omitempty"` - // Version deployment package for Yandex Cloud Function code. Can be only one package or content section. Either package or content section must be specified. + // Version deployment package for Yandex Cloud Function code. Can be only one package or content section. Either package or content section must be specified Package []PackageInitParameters `json:"package,omitempty" tf:"package,omitempty"` // Runtime for Yandex Cloud Function @@ -160,14 +192,14 @@ type FunctionInitParameters struct { // Service account ID for Yandex Cloud Function ServiceAccountID *string `json:"serviceAccountId,omitempty" tf:"service_account_id,omitempty"` - // Storage mounts for Yandex Cloud Function. + // (DEPRECATED, use mounts.0.object_storage instead) Storage mounts for Yandex Cloud Function StorageMounts []StorageMountsInitParameters `json:"storageMounts,omitempty" tf:"storage_mounts,omitempty"` - // Tags for Yandex Cloud Function. Tag "$latest" isn't returned. + // Tags for Yandex Cloud Function. Tag "$latest" isn't returned // +listType=set Tags []*string `json:"tags,omitempty" tf:"tags,omitempty"` - // Tmpfs size for Yandex Cloud Function. + // Tmpfs size for Yandex Cloud Function TmpfsSize *float64 `json:"tmpfsSize,omitempty" tf:"tmpfs_size,omitempty"` // User-defined string for current function version. User must change this string any times when function changed. Function will be updated when hash is changed. @@ -176,19 +208,19 @@ type FunctionInitParameters struct { type FunctionObservation struct { - // Config for asynchronous invocations of Yandex Cloud Function. + // Config for asynchronous invocations of Yandex Cloud Function AsyncInvocation []AsyncInvocationObservation `json:"asyncInvocation,omitempty" tf:"async_invocation,omitempty"` - // The maximum number of requests processed by a function instance at the same time. + // The maximum number of requests processed by a function instance at the same time Concurrency *float64 `json:"concurrency,omitempty" tf:"concurrency,omitempty"` - // Function version connectivity. If specified the version will be attached to specified network. + // Function version connectivity. If specified the version will be attached to specified network Connectivity []ConnectivityObservation `json:"connectivity,omitempty" tf:"connectivity,omitempty"` - // Version deployment content for Yandex Cloud Function code. Can be only one package or content section. Either package or content section must be specified. + // Version deployment content for Yandex Cloud Function code. Can be only one package or content section. Either package or content section must be specified Content []ContentObservation `json:"content,omitempty" tf:"content,omitempty"` - // Creation timestamp of the Yandex Cloud Function. + // Creation timestamp of the Yandex Cloud Function CreatedAt *string `json:"createdAt,omitempty" tf:"created_at,omitempty"` // Description of the Yandex Cloud Function @@ -207,29 +239,29 @@ type FunctionObservation struct { // Folder ID for the Yandex Cloud Function FolderID *string `json:"folderId,omitempty" tf:"folder_id,omitempty"` - // Secret's id. + // Secret's id ID *string `json:"id,omitempty" tf:"id,omitempty"` - // Image size for Yandex Cloud Function. + // Image size for Yandex Cloud Function ImageSize *float64 `json:"imageSize,omitempty" tf:"image_size,omitempty"` // A set of key/value label pairs to assign to the Yandex Cloud Function // +mapType=granular Labels map[string]*string `json:"labels,omitempty" tf:"labels,omitempty"` - // Options for logging from Yandex Cloud Function. + // Options for logging from Yandex Cloud Function LogOptions []LogOptionsObservation `json:"logOptions,omitempty" tf:"log_options,omitempty"` - // Loggroup ID size for Yandex Cloud Function. - LoggroupID *string `json:"loggroupId,omitempty" tf:"loggroup_id,omitempty"` - // Memory in megabytes (aligned to 128MB) for Yandex Cloud Function Memory *float64 `json:"memory,omitempty" tf:"memory,omitempty"` + // Mounts for Yandex Cloud Function. + Mounts []MountsObservation `json:"mounts,omitempty" tf:"mounts,omitempty"` + // Yandex Cloud Function name used to define trigger Name *string `json:"name,omitempty" tf:"name,omitempty"` - // Version deployment package for Yandex Cloud Function code. Can be only one package or content section. Either package or content section must be specified. + // Version deployment package for Yandex Cloud Function code. Can be only one package or content section. Either package or content section must be specified Package []PackageObservation `json:"package,omitempty" tf:"package,omitempty"` // Runtime for Yandex Cloud Function @@ -241,38 +273,38 @@ type FunctionObservation struct { // Service account ID for Yandex Cloud Function ServiceAccountID *string `json:"serviceAccountId,omitempty" tf:"service_account_id,omitempty"` - // Storage mounts for Yandex Cloud Function. + // (DEPRECATED, use mounts.0.object_storage instead) Storage mounts for Yandex Cloud Function StorageMounts []StorageMountsObservation `json:"storageMounts,omitempty" tf:"storage_mounts,omitempty"` - // Tags for Yandex Cloud Function. Tag "$latest" isn't returned. + // Tags for Yandex Cloud Function. Tag "$latest" isn't returned // +listType=set Tags []*string `json:"tags,omitempty" tf:"tags,omitempty"` - // Tmpfs size for Yandex Cloud Function. + // Tmpfs size for Yandex Cloud Function TmpfsSize *float64 `json:"tmpfsSize,omitempty" tf:"tmpfs_size,omitempty"` // User-defined string for current function version. User must change this string any times when function changed. Function will be updated when hash is changed. UserHash *string `json:"userHash,omitempty" tf:"user_hash,omitempty"` - // Version for Yandex Cloud Function. + // Version for Yandex Cloud Function Version *string `json:"version,omitempty" tf:"version,omitempty"` } type FunctionParameters struct { - // Config for asynchronous invocations of Yandex Cloud Function. + // Config for asynchronous invocations of Yandex Cloud Function // +kubebuilder:validation:Optional AsyncInvocation []AsyncInvocationParameters `json:"asyncInvocation,omitempty" tf:"async_invocation,omitempty"` - // The maximum number of requests processed by a function instance at the same time. + // The maximum number of requests processed by a function instance at the same time // +kubebuilder:validation:Optional Concurrency *float64 `json:"concurrency,omitempty" tf:"concurrency,omitempty"` - // Function version connectivity. If specified the version will be attached to specified network. + // Function version connectivity. If specified the version will be attached to specified network // +kubebuilder:validation:Optional Connectivity []ConnectivityParameters `json:"connectivity,omitempty" tf:"connectivity,omitempty"` - // Version deployment content for Yandex Cloud Function code. Can be only one package or content section. Either package or content section must be specified. + // Version deployment content for Yandex Cloud Function code. Can be only one package or content section. Either package or content section must be specified // +kubebuilder:validation:Optional Content []ContentParameters `json:"content,omitempty" tf:"content,omitempty"` @@ -311,7 +343,7 @@ type FunctionParameters struct { // +mapType=granular Labels map[string]*string `json:"labels,omitempty" tf:"labels,omitempty"` - // Options for logging from Yandex Cloud Function. + // Options for logging from Yandex Cloud Function // +kubebuilder:validation:Optional LogOptions []LogOptionsParameters `json:"logOptions,omitempty" tf:"log_options,omitempty"` @@ -319,11 +351,15 @@ type FunctionParameters struct { // +kubebuilder:validation:Optional Memory *float64 `json:"memory,omitempty" tf:"memory,omitempty"` + // Mounts for Yandex Cloud Function. + // +kubebuilder:validation:Optional + Mounts []MountsParameters `json:"mounts,omitempty" tf:"mounts,omitempty"` + // Yandex Cloud Function name used to define trigger // +kubebuilder:validation:Optional Name *string `json:"name,omitempty" tf:"name,omitempty"` - // Version deployment package for Yandex Cloud Function code. Can be only one package or content section. Either package or content section must be specified. + // Version deployment package for Yandex Cloud Function code. Can be only one package or content section. Either package or content section must be specified // +kubebuilder:validation:Optional Package []PackageParameters `json:"package,omitempty" tf:"package,omitempty"` @@ -339,16 +375,16 @@ type FunctionParameters struct { // +kubebuilder:validation:Optional ServiceAccountID *string `json:"serviceAccountId,omitempty" tf:"service_account_id,omitempty"` - // Storage mounts for Yandex Cloud Function. + // (DEPRECATED, use mounts.0.object_storage instead) Storage mounts for Yandex Cloud Function // +kubebuilder:validation:Optional StorageMounts []StorageMountsParameters `json:"storageMounts,omitempty" tf:"storage_mounts,omitempty"` - // Tags for Yandex Cloud Function. Tag "$latest" isn't returned. + // Tags for Yandex Cloud Function. Tag "$latest" isn't returned // +kubebuilder:validation:Optional // +listType=set Tags []*string `json:"tags,omitempty" tf:"tags,omitempty"` - // Tmpfs size for Yandex Cloud Function. + // Tmpfs size for Yandex Cloud Function // +kubebuilder:validation:Optional TmpfsSize *float64 `json:"tmpfsSize,omitempty" tf:"tmpfs_size,omitempty"` @@ -362,7 +398,7 @@ type LogOptionsInitParameters struct { // Is logging from function disabled Disabled *bool `json:"disabled,omitempty" tf:"disabled,omitempty"` - // Folder ID for the Yandex Cloud Function + // Log entries are written to default log group for specified folder FolderID *string `json:"folderId,omitempty" tf:"folder_id,omitempty"` // Log entries are written to specified log group @@ -377,7 +413,7 @@ type LogOptionsObservation struct { // Is logging from function disabled Disabled *bool `json:"disabled,omitempty" tf:"disabled,omitempty"` - // Folder ID for the Yandex Cloud Function + // Log entries are written to default log group for specified folder FolderID *string `json:"folderId,omitempty" tf:"folder_id,omitempty"` // Log entries are written to specified log group @@ -393,7 +429,7 @@ type LogOptionsParameters struct { // +kubebuilder:validation:Optional Disabled *bool `json:"disabled,omitempty" tf:"disabled,omitempty"` - // Folder ID for the Yandex Cloud Function + // Log entries are written to default log group for specified folder // +kubebuilder:validation:Optional FolderID *string `json:"folderId,omitempty" tf:"folder_id,omitempty"` @@ -406,139 +442,277 @@ type LogOptionsParameters struct { MinLevel *string `json:"minLevel,omitempty" tf:"min_level,omitempty"` } +type MountsInitParameters struct { + + // One of the available mount types. Disk available during the function execution time + EphemeralDisk []EphemeralDiskInitParameters `json:"ephemeralDisk,omitempty" tf:"ephemeral_disk,omitempty"` + + // Mount’s accessibility mode. Valid values are ro and rw + Mode *string `json:"mode,omitempty" tf:"mode,omitempty"` + + // Yandex Cloud Function name used to define trigger + Name *string `json:"name,omitempty" tf:"name,omitempty"` + + // One of the available mount types. Object storage as a mount + ObjectStorage []ObjectStorageInitParameters `json:"objectStorage,omitempty" tf:"object_storage,omitempty"` +} + +type MountsObservation struct { + + // One of the available mount types. Disk available during the function execution time + EphemeralDisk []EphemeralDiskObservation `json:"ephemeralDisk,omitempty" tf:"ephemeral_disk,omitempty"` + + // Mount’s accessibility mode. Valid values are ro and rw + Mode *string `json:"mode,omitempty" tf:"mode,omitempty"` + + // Yandex Cloud Function name used to define trigger + Name *string `json:"name,omitempty" tf:"name,omitempty"` + + // One of the available mount types. Object storage as a mount + ObjectStorage []ObjectStorageObservation `json:"objectStorage,omitempty" tf:"object_storage,omitempty"` +} + +type MountsParameters struct { + + // One of the available mount types. Disk available during the function execution time + // +kubebuilder:validation:Optional + EphemeralDisk []EphemeralDiskParameters `json:"ephemeralDisk,omitempty" tf:"ephemeral_disk,omitempty"` + + // Mount’s accessibility mode. Valid values are ro and rw + // +kubebuilder:validation:Optional + Mode *string `json:"mode,omitempty" tf:"mode,omitempty"` + + // Yandex Cloud Function name used to define trigger + // +kubebuilder:validation:Optional + Name *string `json:"name" tf:"name,omitempty"` + + // One of the available mount types. Object storage as a mount + // +kubebuilder:validation:Optional + ObjectStorage []ObjectStorageParameters `json:"objectStorage,omitempty" tf:"object_storage,omitempty"` +} + +type ObjectStorageInitParameters struct { + + // Name of the mounting bucket + // +crossplane:generate:reference:type=github.com/tagesjump/provider-upjet-yc/apis/storage/v1alpha1.Bucket + // +crossplane:generate:reference:extractor=github.com/crossplane/upjet/pkg/resource.ExtractParamPath("bucket",false) + Bucket *string `json:"bucket,omitempty" tf:"bucket,omitempty"` + + // Reference to a Bucket in storage to populate bucket. + // +kubebuilder:validation:Optional + BucketRef *v1.Reference `json:"bucketRef,omitempty" tf:"-"` + + // Selector for a Bucket in storage to populate bucket. + // +kubebuilder:validation:Optional + BucketSelector *v1.Selector `json:"bucketSelector,omitempty" tf:"-"` + + // Prefix within the bucket. If you leave this field empty, the entire bucket will be mounted + Prefix *string `json:"prefix,omitempty" tf:"prefix,omitempty"` +} + +type ObjectStorageObservation struct { + + // Name of the mounting bucket + Bucket *string `json:"bucket,omitempty" tf:"bucket,omitempty"` + + // Prefix within the bucket. If you leave this field empty, the entire bucket will be mounted + Prefix *string `json:"prefix,omitempty" tf:"prefix,omitempty"` +} + +type ObjectStorageParameters struct { + + // Name of the mounting bucket + // +crossplane:generate:reference:type=github.com/tagesjump/provider-upjet-yc/apis/storage/v1alpha1.Bucket + // +crossplane:generate:reference:extractor=github.com/crossplane/upjet/pkg/resource.ExtractParamPath("bucket",false) + // +kubebuilder:validation:Optional + Bucket *string `json:"bucket,omitempty" tf:"bucket,omitempty"` + + // Reference to a Bucket in storage to populate bucket. + // +kubebuilder:validation:Optional + BucketRef *v1.Reference `json:"bucketRef,omitempty" tf:"-"` + + // Selector for a Bucket in storage to populate bucket. + // +kubebuilder:validation:Optional + BucketSelector *v1.Selector `json:"bucketSelector,omitempty" tf:"-"` + + // Prefix within the bucket. If you leave this field empty, the entire bucket will be mounted + // +kubebuilder:validation:Optional + Prefix *string `json:"prefix,omitempty" tf:"prefix,omitempty"` +} + type PackageInitParameters struct { - // Name of the bucket that stores the code for the version. + // Name of the bucket that stores the code for the version BucketName *string `json:"bucketName,omitempty" tf:"bucket_name,omitempty"` - // Name of the object in the bucket that stores the code for the version. + // Name of the object in the bucket that stores the code for the version ObjectName *string `json:"objectName,omitempty" tf:"object_name,omitempty"` - // SHA256 hash of the version deployment package. + // SHA256 hash of the version deployment package Sha256 *string `json:"sha256,omitempty" tf:"sha_256,omitempty"` } type PackageObservation struct { - // Name of the bucket that stores the code for the version. + // Name of the bucket that stores the code for the version BucketName *string `json:"bucketName,omitempty" tf:"bucket_name,omitempty"` - // Name of the object in the bucket that stores the code for the version. + // Name of the object in the bucket that stores the code for the version ObjectName *string `json:"objectName,omitempty" tf:"object_name,omitempty"` - // SHA256 hash of the version deployment package. + // SHA256 hash of the version deployment package Sha256 *string `json:"sha256,omitempty" tf:"sha_256,omitempty"` } type PackageParameters struct { - // Name of the bucket that stores the code for the version. + // Name of the bucket that stores the code for the version // +kubebuilder:validation:Optional BucketName *string `json:"bucketName" tf:"bucket_name,omitempty"` - // Name of the object in the bucket that stores the code for the version. + // Name of the object in the bucket that stores the code for the version // +kubebuilder:validation:Optional ObjectName *string `json:"objectName" tf:"object_name,omitempty"` - // SHA256 hash of the version deployment package. + // SHA256 hash of the version deployment package // +kubebuilder:validation:Optional Sha256 *string `json:"sha256,omitempty" tf:"sha_256,omitempty"` } type SecretsInitParameters struct { - // Function's environment variable in which secret's value will be stored. + // Function's environment variable in which secret's value will be stored EnvironmentVariable *string `json:"environmentVariable,omitempty" tf:"environment_variable,omitempty"` - // Secret's id. + // Secret's id + // +crossplane:generate:reference:type=github.com/tagesjump/provider-upjet-yc/apis/lockbox/v1alpha1.Secret + // +crossplane:generate:reference:extractor=github.com/crossplane/upjet/pkg/resource.ExtractResourceID() ID *string `json:"id,omitempty" tf:"id,omitempty"` - // Secret's entries key which value will be stored in environment variable. + // Reference to a Secret in lockbox to populate id. + // +kubebuilder:validation:Optional + IDRef *v1.Reference `json:"idRef,omitempty" tf:"-"` + + // Selector for a Secret in lockbox to populate id. + // +kubebuilder:validation:Optional + IDSelector *v1.Selector `json:"idSelector,omitempty" tf:"-"` + + // Secret's entries key which value will be stored in environment variable Key *string `json:"key,omitempty" tf:"key,omitempty"` - // Secret's version id. + // Secret's version id + // +crossplane:generate:reference:type=github.com/tagesjump/provider-upjet-yc/apis/lockbox/v1alpha1.SecretVersion + // +crossplane:generate:reference:extractor=github.com/crossplane/upjet/pkg/resource.ExtractResourceID() VersionID *string `json:"versionId,omitempty" tf:"version_id,omitempty"` + + // Reference to a SecretVersion in lockbox to populate versionId. + // +kubebuilder:validation:Optional + VersionIDRef *v1.Reference `json:"versionIdRef,omitempty" tf:"-"` + + // Selector for a SecretVersion in lockbox to populate versionId. + // +kubebuilder:validation:Optional + VersionIDSelector *v1.Selector `json:"versionIdSelector,omitempty" tf:"-"` } type SecretsObservation struct { - // Function's environment variable in which secret's value will be stored. + // Function's environment variable in which secret's value will be stored EnvironmentVariable *string `json:"environmentVariable,omitempty" tf:"environment_variable,omitempty"` - // Secret's id. + // Secret's id ID *string `json:"id,omitempty" tf:"id,omitempty"` - // Secret's entries key which value will be stored in environment variable. + // Secret's entries key which value will be stored in environment variable Key *string `json:"key,omitempty" tf:"key,omitempty"` - // Secret's version id. + // Secret's version id VersionID *string `json:"versionId,omitempty" tf:"version_id,omitempty"` } type SecretsParameters struct { - // Function's environment variable in which secret's value will be stored. + // Function's environment variable in which secret's value will be stored // +kubebuilder:validation:Optional EnvironmentVariable *string `json:"environmentVariable" tf:"environment_variable,omitempty"` - // Secret's id. + // Secret's id + // +crossplane:generate:reference:type=github.com/tagesjump/provider-upjet-yc/apis/lockbox/v1alpha1.Secret + // +crossplane:generate:reference:extractor=github.com/crossplane/upjet/pkg/resource.ExtractResourceID() + // +kubebuilder:validation:Optional + ID *string `json:"id,omitempty" tf:"id,omitempty"` + + // Reference to a Secret in lockbox to populate id. + // +kubebuilder:validation:Optional + IDRef *v1.Reference `json:"idRef,omitempty" tf:"-"` + + // Selector for a Secret in lockbox to populate id. // +kubebuilder:validation:Optional - ID *string `json:"id" tf:"id,omitempty"` + IDSelector *v1.Selector `json:"idSelector,omitempty" tf:"-"` - // Secret's entries key which value will be stored in environment variable. + // Secret's entries key which value will be stored in environment variable // +kubebuilder:validation:Optional Key *string `json:"key" tf:"key,omitempty"` - // Secret's version id. + // Secret's version id + // +crossplane:generate:reference:type=github.com/tagesjump/provider-upjet-yc/apis/lockbox/v1alpha1.SecretVersion + // +crossplane:generate:reference:extractor=github.com/crossplane/upjet/pkg/resource.ExtractResourceID() + // +kubebuilder:validation:Optional + VersionID *string `json:"versionId,omitempty" tf:"version_id,omitempty"` + + // Reference to a SecretVersion in lockbox to populate versionId. + // +kubebuilder:validation:Optional + VersionIDRef *v1.Reference `json:"versionIdRef,omitempty" tf:"-"` + + // Selector for a SecretVersion in lockbox to populate versionId. // +kubebuilder:validation:Optional - VersionID *string `json:"versionId" tf:"version_id,omitempty"` + VersionIDSelector *v1.Selector `json:"versionIdSelector,omitempty" tf:"-"` } type StorageMountsInitParameters struct { - // Name of the mounting bucket. + // Name of the mounting bucket Bucket *string `json:"bucket,omitempty" tf:"bucket,omitempty"` - // Name of the mount point. The directory where the bucket is mounted will be accessible at the /function/storage/ path. + // Name of the mount point. The directory where the bucket is mounted will be accessible at the /function/storage/ path MountPointName *string `json:"mountPointName,omitempty" tf:"mount_point_name,omitempty"` - // Prefix within the bucket. If you leave this field empty, the entire bucket will be mounted. + // Prefix within the bucket. If you leave this field empty, the entire bucket will be mounted Prefix *string `json:"prefix,omitempty" tf:"prefix,omitempty"` - // Mount the bucket in read-only mode. + // Mount the bucket in read-only mode ReadOnly *bool `json:"readOnly,omitempty" tf:"read_only,omitempty"` } type StorageMountsObservation struct { - // Name of the mounting bucket. + // Name of the mounting bucket Bucket *string `json:"bucket,omitempty" tf:"bucket,omitempty"` - // Name of the mount point. The directory where the bucket is mounted will be accessible at the /function/storage/ path. + // Name of the mount point. The directory where the bucket is mounted will be accessible at the /function/storage/ path MountPointName *string `json:"mountPointName,omitempty" tf:"mount_point_name,omitempty"` - // Prefix within the bucket. If you leave this field empty, the entire bucket will be mounted. + // Prefix within the bucket. If you leave this field empty, the entire bucket will be mounted Prefix *string `json:"prefix,omitempty" tf:"prefix,omitempty"` - // Mount the bucket in read-only mode. + // Mount the bucket in read-only mode ReadOnly *bool `json:"readOnly,omitempty" tf:"read_only,omitempty"` } type StorageMountsParameters struct { - // Name of the mounting bucket. + // Name of the mounting bucket // +kubebuilder:validation:Optional Bucket *string `json:"bucket" tf:"bucket,omitempty"` - // Name of the mount point. The directory where the bucket is mounted will be accessible at the /function/storage/ path. + // Name of the mount point. The directory where the bucket is mounted will be accessible at the /function/storage/ path // +kubebuilder:validation:Optional MountPointName *string `json:"mountPointName" tf:"mount_point_name,omitempty"` - // Prefix within the bucket. If you leave this field empty, the entire bucket will be mounted. + // Prefix within the bucket. If you leave this field empty, the entire bucket will be mounted // +kubebuilder:validation:Optional Prefix *string `json:"prefix,omitempty" tf:"prefix,omitempty"` - // Mount the bucket in read-only mode. + // Mount the bucket in read-only mode // +kubebuilder:validation:Optional ReadOnly *bool `json:"readOnly,omitempty" tf:"read_only,omitempty"` } diff --git a/apis/yandex/v1alpha1/zz_generated.deepcopy.go b/apis/yandex/v1alpha1/zz_generated.deepcopy.go index 88bf919..8aae5a6 100644 --- a/apis/yandex/v1alpha1/zz_generated.deepcopy.go +++ b/apis/yandex/v1alpha1/zz_generated.deepcopy.go @@ -246,6 +246,81 @@ func (in *ContentParameters) DeepCopy() *ContentParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *EphemeralDiskInitParameters) DeepCopyInto(out *EphemeralDiskInitParameters) { + *out = *in + if in.BlockSizeKb != nil { + in, out := &in.BlockSizeKb, &out.BlockSizeKb + *out = new(float64) + **out = **in + } + if in.SizeGb != nil { + in, out := &in.SizeGb, &out.SizeGb + *out = new(float64) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new EphemeralDiskInitParameters. +func (in *EphemeralDiskInitParameters) DeepCopy() *EphemeralDiskInitParameters { + if in == nil { + return nil + } + out := new(EphemeralDiskInitParameters) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *EphemeralDiskObservation) DeepCopyInto(out *EphemeralDiskObservation) { + *out = *in + if in.BlockSizeKb != nil { + in, out := &in.BlockSizeKb, &out.BlockSizeKb + *out = new(float64) + **out = **in + } + if in.SizeGb != nil { + in, out := &in.SizeGb, &out.SizeGb + *out = new(float64) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new EphemeralDiskObservation. +func (in *EphemeralDiskObservation) DeepCopy() *EphemeralDiskObservation { + if in == nil { + return nil + } + out := new(EphemeralDiskObservation) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *EphemeralDiskParameters) DeepCopyInto(out *EphemeralDiskParameters) { + *out = *in + if in.BlockSizeKb != nil { + in, out := &in.BlockSizeKb, &out.BlockSizeKb + *out = new(float64) + **out = **in + } + if in.SizeGb != nil { + in, out := &in.SizeGb, &out.SizeGb + *out = new(float64) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new EphemeralDiskParameters. +func (in *EphemeralDiskParameters) DeepCopy() *EphemeralDiskParameters { + if in == nil { + return nil + } + out := new(EphemeralDiskParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *Function) DeepCopyInto(out *Function) { *out = *in @@ -376,6 +451,13 @@ func (in *FunctionInitParameters) DeepCopyInto(out *FunctionInitParameters) { *out = new(float64) **out = **in } + if in.Mounts != nil { + in, out := &in.Mounts, &out.Mounts + *out = make([]MountsInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } if in.Name != nil { in, out := &in.Name, &out.Name *out = new(string) @@ -580,16 +662,18 @@ func (in *FunctionObservation) DeepCopyInto(out *FunctionObservation) { (*in)[i].DeepCopyInto(&(*out)[i]) } } - if in.LoggroupID != nil { - in, out := &in.LoggroupID, &out.LoggroupID - *out = new(string) - **out = **in - } if in.Memory != nil { in, out := &in.Memory, &out.Memory *out = new(float64) **out = **in } + if in.Mounts != nil { + in, out := &in.Mounts, &out.Mounts + *out = make([]MountsObservation, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } if in.Name != nil { in, out := &in.Name, &out.Name *out = new(string) @@ -767,6 +851,13 @@ func (in *FunctionParameters) DeepCopyInto(out *FunctionParameters) { *out = new(float64) **out = **in } + if in.Mounts != nil { + in, out := &in.Mounts, &out.Mounts + *out = make([]MountsParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } if in.Name != nil { in, out := &in.Name, &out.Name *out = new(string) @@ -976,6 +1067,218 @@ func (in *LogOptionsParameters) DeepCopy() *LogOptionsParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *MountsInitParameters) DeepCopyInto(out *MountsInitParameters) { + *out = *in + if in.EphemeralDisk != nil { + in, out := &in.EphemeralDisk, &out.EphemeralDisk + *out = make([]EphemeralDiskInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Mode != nil { + in, out := &in.Mode, &out.Mode + *out = new(string) + **out = **in + } + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } + if in.ObjectStorage != nil { + in, out := &in.ObjectStorage, &out.ObjectStorage + *out = make([]ObjectStorageInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new MountsInitParameters. +func (in *MountsInitParameters) DeepCopy() *MountsInitParameters { + if in == nil { + return nil + } + out := new(MountsInitParameters) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *MountsObservation) DeepCopyInto(out *MountsObservation) { + *out = *in + if in.EphemeralDisk != nil { + in, out := &in.EphemeralDisk, &out.EphemeralDisk + *out = make([]EphemeralDiskObservation, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Mode != nil { + in, out := &in.Mode, &out.Mode + *out = new(string) + **out = **in + } + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } + if in.ObjectStorage != nil { + in, out := &in.ObjectStorage, &out.ObjectStorage + *out = make([]ObjectStorageObservation, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new MountsObservation. +func (in *MountsObservation) DeepCopy() *MountsObservation { + if in == nil { + return nil + } + out := new(MountsObservation) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *MountsParameters) DeepCopyInto(out *MountsParameters) { + *out = *in + if in.EphemeralDisk != nil { + in, out := &in.EphemeralDisk, &out.EphemeralDisk + *out = make([]EphemeralDiskParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Mode != nil { + in, out := &in.Mode, &out.Mode + *out = new(string) + **out = **in + } + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } + if in.ObjectStorage != nil { + in, out := &in.ObjectStorage, &out.ObjectStorage + *out = make([]ObjectStorageParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new MountsParameters. +func (in *MountsParameters) DeepCopy() *MountsParameters { + if in == nil { + return nil + } + out := new(MountsParameters) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *ObjectStorageInitParameters) DeepCopyInto(out *ObjectStorageInitParameters) { + *out = *in + if in.Bucket != nil { + in, out := &in.Bucket, &out.Bucket + *out = new(string) + **out = **in + } + if in.BucketRef != nil { + in, out := &in.BucketRef, &out.BucketRef + *out = new(v1.Reference) + (*in).DeepCopyInto(*out) + } + if in.BucketSelector != nil { + in, out := &in.BucketSelector, &out.BucketSelector + *out = new(v1.Selector) + (*in).DeepCopyInto(*out) + } + if in.Prefix != nil { + in, out := &in.Prefix, &out.Prefix + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ObjectStorageInitParameters. +func (in *ObjectStorageInitParameters) DeepCopy() *ObjectStorageInitParameters { + if in == nil { + return nil + } + out := new(ObjectStorageInitParameters) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *ObjectStorageObservation) DeepCopyInto(out *ObjectStorageObservation) { + *out = *in + if in.Bucket != nil { + in, out := &in.Bucket, &out.Bucket + *out = new(string) + **out = **in + } + if in.Prefix != nil { + in, out := &in.Prefix, &out.Prefix + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ObjectStorageObservation. +func (in *ObjectStorageObservation) DeepCopy() *ObjectStorageObservation { + if in == nil { + return nil + } + out := new(ObjectStorageObservation) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *ObjectStorageParameters) DeepCopyInto(out *ObjectStorageParameters) { + *out = *in + if in.Bucket != nil { + in, out := &in.Bucket, &out.Bucket + *out = new(string) + **out = **in + } + if in.BucketRef != nil { + in, out := &in.BucketRef, &out.BucketRef + *out = new(v1.Reference) + (*in).DeepCopyInto(*out) + } + if in.BucketSelector != nil { + in, out := &in.BucketSelector, &out.BucketSelector + *out = new(v1.Selector) + (*in).DeepCopyInto(*out) + } + if in.Prefix != nil { + in, out := &in.Prefix, &out.Prefix + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ObjectStorageParameters. +func (in *ObjectStorageParameters) DeepCopy() *ObjectStorageParameters { + if in == nil { + return nil + } + out := new(ObjectStorageParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *PackageInitParameters) DeepCopyInto(out *PackageInitParameters) { *out = *in @@ -1079,6 +1382,16 @@ func (in *SecretsInitParameters) DeepCopyInto(out *SecretsInitParameters) { *out = new(string) **out = **in } + if in.IDRef != nil { + in, out := &in.IDRef, &out.IDRef + *out = new(v1.Reference) + (*in).DeepCopyInto(*out) + } + if in.IDSelector != nil { + in, out := &in.IDSelector, &out.IDSelector + *out = new(v1.Selector) + (*in).DeepCopyInto(*out) + } if in.Key != nil { in, out := &in.Key, &out.Key *out = new(string) @@ -1089,6 +1402,16 @@ func (in *SecretsInitParameters) DeepCopyInto(out *SecretsInitParameters) { *out = new(string) **out = **in } + if in.VersionIDRef != nil { + in, out := &in.VersionIDRef, &out.VersionIDRef + *out = new(v1.Reference) + (*in).DeepCopyInto(*out) + } + if in.VersionIDSelector != nil { + in, out := &in.VersionIDSelector, &out.VersionIDSelector + *out = new(v1.Selector) + (*in).DeepCopyInto(*out) + } } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SecretsInitParameters. @@ -1149,6 +1472,16 @@ func (in *SecretsParameters) DeepCopyInto(out *SecretsParameters) { *out = new(string) **out = **in } + if in.IDRef != nil { + in, out := &in.IDRef, &out.IDRef + *out = new(v1.Reference) + (*in).DeepCopyInto(*out) + } + if in.IDSelector != nil { + in, out := &in.IDSelector, &out.IDSelector + *out = new(v1.Selector) + (*in).DeepCopyInto(*out) + } if in.Key != nil { in, out := &in.Key, &out.Key *out = new(string) @@ -1159,6 +1492,16 @@ func (in *SecretsParameters) DeepCopyInto(out *SecretsParameters) { *out = new(string) **out = **in } + if in.VersionIDRef != nil { + in, out := &in.VersionIDRef, &out.VersionIDRef + *out = new(v1.Reference) + (*in).DeepCopyInto(*out) + } + if in.VersionIDSelector != nil { + in, out := &in.VersionIDSelector, &out.VersionIDSelector + *out = new(v1.Selector) + (*in).DeepCopyInto(*out) + } } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SecretsParameters. diff --git a/apis/yandex/v1alpha1/zz_generated.resolvers.go b/apis/yandex/v1alpha1/zz_generated.resolvers.go index e790d73..34ef644 100644 --- a/apis/yandex/v1alpha1/zz_generated.resolvers.go +++ b/apis/yandex/v1alpha1/zz_generated.resolvers.go @@ -5,8 +5,11 @@ package v1alpha1 import ( "context" reference "github.com/crossplane/crossplane-runtime/pkg/reference" + resource "github.com/crossplane/upjet/pkg/resource" errors "github.com/pkg/errors" + v1alpha12 "github.com/tagesjump/provider-upjet-yc/apis/lockbox/v1alpha1" v1alpha1 "github.com/tagesjump/provider-upjet-yc/apis/resourcemanager/v1alpha1" + v1alpha11 "github.com/tagesjump/provider-upjet-yc/apis/storage/v1alpha1" client "sigs.k8s.io/controller-runtime/pkg/client" ) @@ -33,6 +36,62 @@ func (mg *Function) ResolveReferences(ctx context.Context, c client.Reader) erro mg.Spec.ForProvider.FolderID = reference.ToPtrValue(rsp.ResolvedValue) mg.Spec.ForProvider.FolderIDRef = rsp.ResolvedReference + for i3 := 0; i3 < len(mg.Spec.ForProvider.Mounts); i3++ { + for i4 := 0; i4 < len(mg.Spec.ForProvider.Mounts[i3].ObjectStorage); i4++ { + rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ + CurrentValue: reference.FromPtrValue(mg.Spec.ForProvider.Mounts[i3].ObjectStorage[i4].Bucket), + Extract: resource.ExtractParamPath("bucket", false), + Reference: mg.Spec.ForProvider.Mounts[i3].ObjectStorage[i4].BucketRef, + Selector: mg.Spec.ForProvider.Mounts[i3].ObjectStorage[i4].BucketSelector, + To: reference.To{ + List: &v1alpha11.BucketList{}, + Managed: &v1alpha11.Bucket{}, + }, + }) + if err != nil { + return errors.Wrap(err, "mg.Spec.ForProvider.Mounts[i3].ObjectStorage[i4].Bucket") + } + mg.Spec.ForProvider.Mounts[i3].ObjectStorage[i4].Bucket = reference.ToPtrValue(rsp.ResolvedValue) + mg.Spec.ForProvider.Mounts[i3].ObjectStorage[i4].BucketRef = rsp.ResolvedReference + + } + } + for i3 := 0; i3 < len(mg.Spec.ForProvider.Secrets); i3++ { + rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ + CurrentValue: reference.FromPtrValue(mg.Spec.ForProvider.Secrets[i3].ID), + Extract: resource.ExtractResourceID(), + Reference: mg.Spec.ForProvider.Secrets[i3].IDRef, + Selector: mg.Spec.ForProvider.Secrets[i3].IDSelector, + To: reference.To{ + List: &v1alpha12.SecretList{}, + Managed: &v1alpha12.Secret{}, + }, + }) + if err != nil { + return errors.Wrap(err, "mg.Spec.ForProvider.Secrets[i3].ID") + } + mg.Spec.ForProvider.Secrets[i3].ID = reference.ToPtrValue(rsp.ResolvedValue) + mg.Spec.ForProvider.Secrets[i3].IDRef = rsp.ResolvedReference + + } + for i3 := 0; i3 < len(mg.Spec.ForProvider.Secrets); i3++ { + rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ + CurrentValue: reference.FromPtrValue(mg.Spec.ForProvider.Secrets[i3].VersionID), + Extract: resource.ExtractResourceID(), + Reference: mg.Spec.ForProvider.Secrets[i3].VersionIDRef, + Selector: mg.Spec.ForProvider.Secrets[i3].VersionIDSelector, + To: reference.To{ + List: &v1alpha12.SecretVersionList{}, + Managed: &v1alpha12.SecretVersion{}, + }, + }) + if err != nil { + return errors.Wrap(err, "mg.Spec.ForProvider.Secrets[i3].VersionID") + } + mg.Spec.ForProvider.Secrets[i3].VersionID = reference.ToPtrValue(rsp.ResolvedValue) + mg.Spec.ForProvider.Secrets[i3].VersionIDRef = rsp.ResolvedReference + + } rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ CurrentValue: reference.FromPtrValue(mg.Spec.InitProvider.FolderID), Extract: reference.ExternalName(), @@ -49,5 +108,62 @@ func (mg *Function) ResolveReferences(ctx context.Context, c client.Reader) erro mg.Spec.InitProvider.FolderID = reference.ToPtrValue(rsp.ResolvedValue) mg.Spec.InitProvider.FolderIDRef = rsp.ResolvedReference + for i3 := 0; i3 < len(mg.Spec.InitProvider.Mounts); i3++ { + for i4 := 0; i4 < len(mg.Spec.InitProvider.Mounts[i3].ObjectStorage); i4++ { + rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ + CurrentValue: reference.FromPtrValue(mg.Spec.InitProvider.Mounts[i3].ObjectStorage[i4].Bucket), + Extract: resource.ExtractParamPath("bucket", false), + Reference: mg.Spec.InitProvider.Mounts[i3].ObjectStorage[i4].BucketRef, + Selector: mg.Spec.InitProvider.Mounts[i3].ObjectStorage[i4].BucketSelector, + To: reference.To{ + List: &v1alpha11.BucketList{}, + Managed: &v1alpha11.Bucket{}, + }, + }) + if err != nil { + return errors.Wrap(err, "mg.Spec.InitProvider.Mounts[i3].ObjectStorage[i4].Bucket") + } + mg.Spec.InitProvider.Mounts[i3].ObjectStorage[i4].Bucket = reference.ToPtrValue(rsp.ResolvedValue) + mg.Spec.InitProvider.Mounts[i3].ObjectStorage[i4].BucketRef = rsp.ResolvedReference + + } + } + for i3 := 0; i3 < len(mg.Spec.InitProvider.Secrets); i3++ { + rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ + CurrentValue: reference.FromPtrValue(mg.Spec.InitProvider.Secrets[i3].ID), + Extract: resource.ExtractResourceID(), + Reference: mg.Spec.InitProvider.Secrets[i3].IDRef, + Selector: mg.Spec.InitProvider.Secrets[i3].IDSelector, + To: reference.To{ + List: &v1alpha12.SecretList{}, + Managed: &v1alpha12.Secret{}, + }, + }) + if err != nil { + return errors.Wrap(err, "mg.Spec.InitProvider.Secrets[i3].ID") + } + mg.Spec.InitProvider.Secrets[i3].ID = reference.ToPtrValue(rsp.ResolvedValue) + mg.Spec.InitProvider.Secrets[i3].IDRef = rsp.ResolvedReference + + } + for i3 := 0; i3 < len(mg.Spec.InitProvider.Secrets); i3++ { + rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ + CurrentValue: reference.FromPtrValue(mg.Spec.InitProvider.Secrets[i3].VersionID), + Extract: resource.ExtractResourceID(), + Reference: mg.Spec.InitProvider.Secrets[i3].VersionIDRef, + Selector: mg.Spec.InitProvider.Secrets[i3].VersionIDSelector, + To: reference.To{ + List: &v1alpha12.SecretVersionList{}, + Managed: &v1alpha12.SecretVersion{}, + }, + }) + if err != nil { + return errors.Wrap(err, "mg.Spec.InitProvider.Secrets[i3].VersionID") + } + mg.Spec.InitProvider.Secrets[i3].VersionID = reference.ToPtrValue(rsp.ResolvedValue) + mg.Spec.InitProvider.Secrets[i3].VersionIDRef = rsp.ResolvedReference + + } + return nil } diff --git a/apis/ydb/v1alpha1/zz_databasededicated_types.go b/apis/ydb/v1alpha1/zz_databasededicated_types.go index 8933a3b..4f77f96 100755 --- a/apis/ydb/v1alpha1/zz_databasededicated_types.go +++ b/apis/ydb/v1alpha1/zz_databasededicated_types.go @@ -20,8 +20,7 @@ type DatabaseDedicatedInitParameters struct { // A description for the Yandex Database cluster. Description *string `json:"description,omitempty" tf:"description,omitempty"` - // ID of the folder that the Yandex Database cluster belongs to. - // It will be deduced from provider configuration if not set explicitly. + // ID of the folder that the Yandex Database cluster belongs to. It will be deduced from provider configuration if not set explicitly. // +crossplane:generate:reference:type=github.com/tagesjump/provider-upjet-yc/apis/resourcemanager/v1alpha1.Folder FolderID *string `json:"folderId,omitempty" tf:"folder_id,omitempty"` @@ -37,8 +36,7 @@ type DatabaseDedicatedInitParameters struct { // +mapType=granular Labels map[string]*string `json:"labels,omitempty" tf:"labels,omitempty"` - // Location for the Yandex Database cluster. - // The structure is documented below. + // Location for the Yandex Database cluster. The structure is documented below. Location []LocationInitParameters `json:"location,omitempty" tf:"location,omitempty"` // Location ID for the Yandex Database cluster. @@ -59,18 +57,15 @@ type DatabaseDedicatedInitParameters struct { // +kubebuilder:validation:Optional NetworkIDSelector *v1.Selector `json:"networkIdSelector,omitempty" tf:"-"` - // The Yandex Database cluster preset. - // Available presets can be obtained via yc ydb resource-preset list command. + // The Yandex Database cluster preset. Available presets can be obtained via yc ydb resource-preset list command. ResourcePresetID *string `json:"resourcePresetId,omitempty" tf:"resource_preset_id,omitempty"` - // Scaling policy for the Yandex Database cluster. - // The structure is documented below. + // Scaling policy for the Yandex Database cluster. The structure is documented below. ScalePolicy []ScalePolicyInitParameters `json:"scalePolicy,omitempty" tf:"scale_policy,omitempty"` SleepAfter *float64 `json:"sleepAfter,omitempty" tf:"sleep_after,omitempty"` - // A list of storage configuration options for the Yandex Database cluster. - // The structure is documented below. + // A list of storage configuration options for the Yandex Database cluster. The structure is documented below. StorageConfig []StorageConfigInitParameters `json:"storageConfig,omitempty" tf:"storage_config,omitempty"` // List of subnet IDs to attach the Yandex Database cluster to. @@ -95,8 +90,7 @@ type DatabaseDedicatedObservation struct { // The Yandex Database cluster creation timestamp. CreatedAt *string `json:"createdAt,omitempty" tf:"created_at,omitempty"` - // Full database path of the Yandex Database cluster. - // Useful for SDK configuration. + // Full database path of the Yandex Database cluster. Useful for SDK configuration. DatabasePath *string `json:"databasePath,omitempty" tf:"database_path,omitempty"` // Inhibits deletion of the database. Can be either true or false @@ -105,8 +99,7 @@ type DatabaseDedicatedObservation struct { // A description for the Yandex Database cluster. Description *string `json:"description,omitempty" tf:"description,omitempty"` - // ID of the folder that the Yandex Database cluster belongs to. - // It will be deduced from provider configuration if not set explicitly. + // ID of the folder that the Yandex Database cluster belongs to. It will be deduced from provider configuration if not set explicitly. FolderID *string `json:"folderId,omitempty" tf:"folder_id,omitempty"` // ID of the Yandex Database cluster. @@ -116,8 +109,7 @@ type DatabaseDedicatedObservation struct { // +mapType=granular Labels map[string]*string `json:"labels,omitempty" tf:"labels,omitempty"` - // Location for the Yandex Database cluster. - // The structure is documented below. + // Location for the Yandex Database cluster. The structure is documented below. Location []LocationObservation `json:"location,omitempty" tf:"location,omitempty"` // Location ID for the Yandex Database cluster. @@ -129,12 +121,10 @@ type DatabaseDedicatedObservation struct { // ID of the network to attach the Yandex Database cluster to. NetworkID *string `json:"networkId,omitempty" tf:"network_id,omitempty"` - // The Yandex Database cluster preset. - // Available presets can be obtained via yc ydb resource-preset list command. + // The Yandex Database cluster preset. Available presets can be obtained via yc ydb resource-preset list command. ResourcePresetID *string `json:"resourcePresetId,omitempty" tf:"resource_preset_id,omitempty"` - // Scaling policy for the Yandex Database cluster. - // The structure is documented below. + // Scaling policy for the Yandex Database cluster. The structure is documented below. ScalePolicy []ScalePolicyObservation `json:"scalePolicy,omitempty" tf:"scale_policy,omitempty"` SleepAfter *float64 `json:"sleepAfter,omitempty" tf:"sleep_after,omitempty"` @@ -142,20 +132,17 @@ type DatabaseDedicatedObservation struct { // Status of the Yandex Database cluster. Status *string `json:"status,omitempty" tf:"status,omitempty"` - // A list of storage configuration options for the Yandex Database cluster. - // The structure is documented below. + // A list of storage configuration options for the Yandex Database cluster. The structure is documented below. StorageConfig []StorageConfigObservation `json:"storageConfig,omitempty" tf:"storage_config,omitempty"` // List of subnet IDs to attach the Yandex Database cluster to. // +listType=set SubnetIds []*string `json:"subnetIds,omitempty" tf:"subnet_ids,omitempty"` - // Whether TLS is enabled for the Yandex Database cluster. - // Useful for SDK configuration. + // Whether TLS is enabled for the Yandex Database cluster. Useful for SDK configuration. TLSEnabled *bool `json:"tlsEnabled,omitempty" tf:"tls_enabled,omitempty"` - // API endpoint of the Yandex Database cluster. - // Useful for SDK configuration. + // API endpoint of the Yandex Database cluster. Useful for SDK configuration. YdbAPIEndpoint *string `json:"ydbApiEndpoint,omitempty" tf:"ydb_api_endpoint,omitempty"` // Full endpoint of the Yandex Database cluster. @@ -176,8 +163,7 @@ type DatabaseDedicatedParameters struct { // +kubebuilder:validation:Optional Description *string `json:"description,omitempty" tf:"description,omitempty"` - // ID of the folder that the Yandex Database cluster belongs to. - // It will be deduced from provider configuration if not set explicitly. + // ID of the folder that the Yandex Database cluster belongs to. It will be deduced from provider configuration if not set explicitly. // +crossplane:generate:reference:type=github.com/tagesjump/provider-upjet-yc/apis/resourcemanager/v1alpha1.Folder // +kubebuilder:validation:Optional FolderID *string `json:"folderId,omitempty" tf:"folder_id,omitempty"` @@ -195,8 +181,7 @@ type DatabaseDedicatedParameters struct { // +mapType=granular Labels map[string]*string `json:"labels,omitempty" tf:"labels,omitempty"` - // Location for the Yandex Database cluster. - // The structure is documented below. + // Location for the Yandex Database cluster. The structure is documented below. // +kubebuilder:validation:Optional Location []LocationParameters `json:"location,omitempty" tf:"location,omitempty"` @@ -221,21 +206,18 @@ type DatabaseDedicatedParameters struct { // +kubebuilder:validation:Optional NetworkIDSelector *v1.Selector `json:"networkIdSelector,omitempty" tf:"-"` - // The Yandex Database cluster preset. - // Available presets can be obtained via yc ydb resource-preset list command. + // The Yandex Database cluster preset. Available presets can be obtained via yc ydb resource-preset list command. // +kubebuilder:validation:Optional ResourcePresetID *string `json:"resourcePresetId,omitempty" tf:"resource_preset_id,omitempty"` - // Scaling policy for the Yandex Database cluster. - // The structure is documented below. + // Scaling policy for the Yandex Database cluster. The structure is documented below. // +kubebuilder:validation:Optional ScalePolicy []ScalePolicyParameters `json:"scalePolicy,omitempty" tf:"scale_policy,omitempty"` // +kubebuilder:validation:Optional SleepAfter *float64 `json:"sleepAfter,omitempty" tf:"sleep_after,omitempty"` - // A list of storage configuration options for the Yandex Database cluster. - // The structure is documented below. + // A list of storage configuration options for the Yandex Database cluster. The structure is documented below. // +kubebuilder:validation:Optional StorageConfig []StorageConfigParameters `json:"storageConfig,omitempty" tf:"storage_config,omitempty"` @@ -275,22 +257,19 @@ type FixedScaleParameters struct { type LocationInitParameters struct { - // Region for the Yandex Database cluster. - // The structure is documented below. + // Region for the Yandex Database cluster. The structure is documented below. Region []RegionInitParameters `json:"region,omitempty" tf:"region,omitempty"` } type LocationObservation struct { - // Region for the Yandex Database cluster. - // The structure is documented below. + // Region for the Yandex Database cluster. The structure is documented below. Region []RegionObservation `json:"region,omitempty" tf:"region,omitempty"` } type LocationParameters struct { - // Region for the Yandex Database cluster. - // The structure is documented below. + // Region for the Yandex Database cluster. The structure is documented below. // +kubebuilder:validation:Optional Region []RegionParameters `json:"region,omitempty" tf:"region,omitempty"` } @@ -316,22 +295,19 @@ type RegionParameters struct { type ScalePolicyInitParameters struct { - // Fixed scaling policy for the Yandex Database cluster. - // The structure is documented below. + // Fixed scaling policy for the Yandex Database cluster. The structure is documented below. FixedScale []FixedScaleInitParameters `json:"fixedScale,omitempty" tf:"fixed_scale,omitempty"` } type ScalePolicyObservation struct { - // Fixed scaling policy for the Yandex Database cluster. - // The structure is documented below. + // Fixed scaling policy for the Yandex Database cluster. The structure is documented below. FixedScale []FixedScaleObservation `json:"fixedScale,omitempty" tf:"fixed_scale,omitempty"` } type ScalePolicyParameters struct { - // Fixed scaling policy for the Yandex Database cluster. - // The structure is documented below. + // Fixed scaling policy for the Yandex Database cluster. The structure is documented below. // +kubebuilder:validation:Optional FixedScale []FixedScaleParameters `json:"fixedScale" tf:"fixed_scale,omitempty"` } @@ -341,8 +317,7 @@ type StorageConfigInitParameters struct { // Amount of storage groups of selected type for the Yandex Database cluster. GroupCount *float64 `json:"groupCount,omitempty" tf:"group_count,omitempty"` - // Storage type ID for the Yandex Database cluster. - // Available presets can be obtained via yc ydb storage-type list command. + // Storage type ID for the Yandex Database cluster. Available presets can be obtained via yc ydb storage-type list command. StorageTypeID *string `json:"storageTypeId,omitempty" tf:"storage_type_id,omitempty"` } @@ -351,8 +326,7 @@ type StorageConfigObservation struct { // Amount of storage groups of selected type for the Yandex Database cluster. GroupCount *float64 `json:"groupCount,omitempty" tf:"group_count,omitempty"` - // Storage type ID for the Yandex Database cluster. - // Available presets can be obtained via yc ydb storage-type list command. + // Storage type ID for the Yandex Database cluster. Available presets can be obtained via yc ydb storage-type list command. StorageTypeID *string `json:"storageTypeId,omitempty" tf:"storage_type_id,omitempty"` } @@ -362,8 +336,7 @@ type StorageConfigParameters struct { // +kubebuilder:validation:Optional GroupCount *float64 `json:"groupCount" tf:"group_count,omitempty"` - // Storage type ID for the Yandex Database cluster. - // Available presets can be obtained via yc ydb storage-type list command. + // Storage type ID for the Yandex Database cluster. Available presets can be obtained via yc ydb storage-type list command. // +kubebuilder:validation:Optional StorageTypeID *string `json:"storageTypeId" tf:"storage_type_id,omitempty"` } diff --git a/apis/ydb/v1alpha1/zz_databaseiambinding_types.go b/apis/ydb/v1alpha1/zz_databaseiambinding_types.go index 0ab581b..600e0f0 100755 --- a/apis/ydb/v1alpha1/zz_databaseiambinding_types.go +++ b/apis/ydb/v1alpha1/zz_databaseiambinding_types.go @@ -23,8 +23,7 @@ type DatabaseIAMBindingInitParameters struct { // +kubebuilder:validation:Optional DatabaseIDSelector *v1.Selector `json:"databaseIdSelector,omitempty" tf:"-"` - // Identities that will be granted the privilege in role. - // Each entry can have one of the following values: + // Identities that will be granted the privilege in role. Each entry can have one of the following values: // +crossplane:generate:reference:type=github.com/tagesjump/provider-upjet-yc/apis/iam/v1alpha1.ServiceAccount // +crossplane:generate:reference:extractor=github.com/tagesjump/provider-upjet-yc/config/iam.ServiceAccountRefValue() // +crossplane:generate:reference:refFieldName=ServiceAccountRef @@ -53,8 +52,7 @@ type DatabaseIAMBindingObservation struct { ID *string `json:"id,omitempty" tf:"id,omitempty"` - // Identities that will be granted the privilege in role. - // Each entry can have one of the following values: + // Identities that will be granted the privilege in role. Each entry can have one of the following values: // +listType=set Members []*string `json:"members,omitempty" tf:"members,omitempty"` @@ -79,8 +77,7 @@ type DatabaseIAMBindingParameters struct { // +kubebuilder:validation:Optional DatabaseIDSelector *v1.Selector `json:"databaseIdSelector,omitempty" tf:"-"` - // Identities that will be granted the privilege in role. - // Each entry can have one of the following values: + // Identities that will be granted the privilege in role. Each entry can have one of the following values: // +crossplane:generate:reference:type=github.com/tagesjump/provider-upjet-yc/apis/iam/v1alpha1.ServiceAccount // +crossplane:generate:reference:extractor=github.com/tagesjump/provider-upjet-yc/config/iam.ServiceAccountRefValue() // +crossplane:generate:reference:refFieldName=ServiceAccountRef diff --git a/apis/ydb/v1alpha1/zz_databaseserverless_types.go b/apis/ydb/v1alpha1/zz_databaseserverless_types.go index 7a6af4a..b19716c 100755 --- a/apis/ydb/v1alpha1/zz_databaseserverless_types.go +++ b/apis/ydb/v1alpha1/zz_databaseserverless_types.go @@ -17,8 +17,7 @@ type DatabaseServerlessInitParameters struct { // A description for the Yandex Database serverless cluster. Description *string `json:"description,omitempty" tf:"description,omitempty"` - // ID of the folder that the Yandex Database serverless cluster belongs to. - // It will be deduced from provider configuration if not set explicitly. + // ID of the folder that the Yandex Database serverless cluster belongs to. It will be deduced from provider configuration if not set explicitly. // +crossplane:generate:reference:type=github.com/tagesjump/provider-upjet-yc/apis/resourcemanager/v1alpha1.Folder FolderID *string `json:"folderId,omitempty" tf:"folder_id,omitempty"` @@ -50,8 +49,7 @@ type DatabaseServerlessObservation struct { // The Yandex Database serverless cluster creation timestamp. CreatedAt *string `json:"createdAt,omitempty" tf:"created_at,omitempty"` - // Full database path of the Yandex Database serverless cluster. - // Useful for SDK configuration. + // Full database path of the Yandex Database serverless cluster. Useful for SDK configuration. DatabasePath *string `json:"databasePath,omitempty" tf:"database_path,omitempty"` // Inhibits deletion of the database. Can be either true or false @@ -63,8 +61,7 @@ type DatabaseServerlessObservation struct { // Document API endpoint of the Yandex Database serverless cluster. DocumentAPIEndpoint *string `json:"documentApiEndpoint,omitempty" tf:"document_api_endpoint,omitempty"` - // ID of the folder that the Yandex Database serverless cluster belongs to. - // It will be deduced from provider configuration if not set explicitly. + // ID of the folder that the Yandex Database serverless cluster belongs to. It will be deduced from provider configuration if not set explicitly. FolderID *string `json:"folderId,omitempty" tf:"folder_id,omitempty"` // ID of the Yandex Database serverless cluster. @@ -87,12 +84,10 @@ type DatabaseServerlessObservation struct { // Status of the Yandex Database serverless cluster. Status *string `json:"status,omitempty" tf:"status,omitempty"` - // Whether TLS is enabled for the Yandex Database serverless cluster. - // Useful for SDK configuration. + // Whether TLS is enabled for the Yandex Database serverless cluster. Useful for SDK configuration. TLSEnabled *bool `json:"tlsEnabled,omitempty" tf:"tls_enabled,omitempty"` - // API endpoint of the Yandex Database serverless cluster. - // Useful for SDK configuration. + // API endpoint of the Yandex Database serverless cluster. Useful for SDK configuration. YdbAPIEndpoint *string `json:"ydbApiEndpoint,omitempty" tf:"ydb_api_endpoint,omitempty"` // Full endpoint of the Yandex Database serverless cluster. @@ -109,8 +104,7 @@ type DatabaseServerlessParameters struct { // +kubebuilder:validation:Optional Description *string `json:"description,omitempty" tf:"description,omitempty"` - // ID of the folder that the Yandex Database serverless cluster belongs to. - // It will be deduced from provider configuration if not set explicitly. + // ID of the folder that the Yandex Database serverless cluster belongs to. It will be deduced from provider configuration if not set explicitly. // +crossplane:generate:reference:type=github.com/tagesjump/provider-upjet-yc/apis/resourcemanager/v1alpha1.Folder // +kubebuilder:validation:Optional FolderID *string `json:"folderId,omitempty" tf:"folder_id,omitempty"` diff --git a/apis/ydb/v1alpha1/zz_generated.deepcopy.go b/apis/ydb/v1alpha1/zz_generated.deepcopy.go index 19ec8c2..7b3c872 100644 --- a/apis/ydb/v1alpha1/zz_generated.deepcopy.go +++ b/apis/ydb/v1alpha1/zz_generated.deepcopy.go @@ -117,6 +117,11 @@ func (in *ColumnParameters) DeepCopy() *ColumnParameters { // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *ConsumerInitParameters) DeepCopyInto(out *ConsumerInitParameters) { *out = *in + if in.Important != nil { + in, out := &in.Important, &out.Important + *out = new(bool) + **out = **in + } if in.Name != nil { in, out := &in.Name, &out.Name *out = new(string) @@ -153,6 +158,11 @@ func (in *ConsumerInitParameters) DeepCopy() *ConsumerInitParameters { // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *ConsumerObservation) DeepCopyInto(out *ConsumerObservation) { *out = *in + if in.Important != nil { + in, out := &in.Important, &out.Important + *out = new(bool) + **out = **in + } if in.Name != nil { in, out := &in.Name, &out.Name *out = new(string) @@ -189,6 +199,11 @@ func (in *ConsumerObservation) DeepCopy() *ConsumerObservation { // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *ConsumerParameters) DeepCopyInto(out *ConsumerParameters) { *out = *in + if in.Important != nil { + in, out := &in.Important, &out.Important + *out = new(bool) + **out = **in + } if in.Name != nil { in, out := &in.Name, &out.Name *out = new(string) @@ -3333,6 +3348,16 @@ func (in *TopicInitParameters) DeepCopyInto(out *TopicInitParameters) { *out = new(string) **out = **in } + if in.DatabaseEndpointRef != nil { + in, out := &in.DatabaseEndpointRef, &out.DatabaseEndpointRef + *out = new(v1.Reference) + (*in).DeepCopyInto(*out) + } + if in.DatabaseEndpointSelector != nil { + in, out := &in.DatabaseEndpointSelector, &out.DatabaseEndpointSelector + *out = new(v1.Selector) + (*in).DeepCopyInto(*out) + } if in.Description != nil { in, out := &in.Description, &out.Description *out = new(string) @@ -3516,6 +3541,16 @@ func (in *TopicParameters) DeepCopyInto(out *TopicParameters) { *out = new(string) **out = **in } + if in.DatabaseEndpointRef != nil { + in, out := &in.DatabaseEndpointRef, &out.DatabaseEndpointRef + *out = new(v1.Reference) + (*in).DeepCopyInto(*out) + } + if in.DatabaseEndpointSelector != nil { + in, out := &in.DatabaseEndpointSelector, &out.DatabaseEndpointSelector + *out = new(v1.Selector) + (*in).DeepCopyInto(*out) + } if in.Description != nil { in, out := &in.Description, &out.Description *out = new(string) diff --git a/apis/ydb/v1alpha1/zz_generated.resolvers.go b/apis/ydb/v1alpha1/zz_generated.resolvers.go index 4773938..64cbe23 100644 --- a/apis/ydb/v1alpha1/zz_generated.resolvers.go +++ b/apis/ydb/v1alpha1/zz_generated.resolvers.go @@ -279,3 +279,45 @@ func (mg *Table) ResolveReferences(ctx context.Context, c client.Reader) error { return nil } + +// ResolveReferences of this Topic. +func (mg *Topic) ResolveReferences(ctx context.Context, c client.Reader) error { + r := reference.NewAPIResolver(c, mg) + + var rsp reference.ResolutionResponse + var err error + + rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ + CurrentValue: reference.FromPtrValue(mg.Spec.ForProvider.DatabaseEndpoint), + Extract: resource.ExtractParamPath("ydb_full_endpoint", true), + Reference: mg.Spec.ForProvider.DatabaseEndpointRef, + Selector: mg.Spec.ForProvider.DatabaseEndpointSelector, + To: reference.To{ + List: &DatabaseServerlessList{}, + Managed: &DatabaseServerless{}, + }, + }) + if err != nil { + return errors.Wrap(err, "mg.Spec.ForProvider.DatabaseEndpoint") + } + mg.Spec.ForProvider.DatabaseEndpoint = reference.ToPtrValue(rsp.ResolvedValue) + mg.Spec.ForProvider.DatabaseEndpointRef = rsp.ResolvedReference + + rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ + CurrentValue: reference.FromPtrValue(mg.Spec.InitProvider.DatabaseEndpoint), + Extract: resource.ExtractParamPath("ydb_full_endpoint", true), + Reference: mg.Spec.InitProvider.DatabaseEndpointRef, + Selector: mg.Spec.InitProvider.DatabaseEndpointSelector, + To: reference.To{ + List: &DatabaseServerlessList{}, + Managed: &DatabaseServerless{}, + }, + }) + if err != nil { + return errors.Wrap(err, "mg.Spec.InitProvider.DatabaseEndpoint") + } + mg.Spec.InitProvider.DatabaseEndpoint = reference.ToPtrValue(rsp.ResolvedValue) + mg.Spec.InitProvider.DatabaseEndpointRef = rsp.ResolvedReference + + return nil +} diff --git a/apis/ydb/v1alpha1/zz_table_types.go b/apis/ydb/v1alpha1/zz_table_types.go index c21fa8e..5287673 100755 --- a/apis/ydb/v1alpha1/zz_table_types.go +++ b/apis/ydb/v1alpha1/zz_table_types.go @@ -17,7 +17,7 @@ type ColumnInitParameters struct { // Column name Name *string `json:"name,omitempty" tf:"name,omitempty"` - // A column cannot have the NULL data type. ( Default: false ) + // A column cannot have the NULL data type. ( Default: false ) NotNull *bool `json:"notNull,omitempty" tf:"not_null,omitempty"` // Column data type. YQL data types are used. @@ -32,7 +32,7 @@ type ColumnObservation struct { // Column name Name *string `json:"name,omitempty" tf:"name,omitempty"` - // A column cannot have the NULL data type. ( Default: false ) + // A column cannot have the NULL data type. ( Default: false ) NotNull *bool `json:"notNull,omitempty" tf:"not_null,omitempty"` // Column data type. YQL data types are used. @@ -49,7 +49,7 @@ type ColumnParameters struct { // +kubebuilder:validation:Optional Name *string `json:"name" tf:"name,omitempty"` - // A column cannot have the NULL data type. ( Default: false ) + // A column cannot have the NULL data type. ( Default: false ) // +kubebuilder:validation:Optional NotNull *bool `json:"notNull,omitempty" tf:"not_null,omitempty"` @@ -209,8 +209,7 @@ type TableInitParameters struct { // +mapType=granular Attributes map[string]*string `json:"attributes,omitempty" tf:"attributes,omitempty"` - // A list of column configuration options. - // The structure is documented below. + // A list of column configuration options. The structure is documented below. Column []ColumnInitParameters `json:"column,omitempty" tf:"column,omitempty"` // Connection string for database. @@ -226,15 +225,13 @@ type TableInitParameters struct { // +kubebuilder:validation:Optional ConnectionStringSelector *v1.Selector `json:"connectionStringSelector,omitempty" tf:"-"` - // A list of column group configuration options. - // The structure is documented below. + // A list of column group configuration options. The structure is documented below. Family []FamilyInitParameters `json:"family,omitempty" tf:"family,omitempty"` // Use the Bloom filter for the primary key KeyBloomFilter *bool `json:"keyBloomFilter,omitempty" tf:"key_bloom_filter,omitempty"` - // Table partiotioning settings - // The structure is documented below. + // Table partiotioning settings The structure is documented below. PartitioningSettings []PartitioningSettingsInitParameters `json:"partitioningSettings,omitempty" tf:"partitioning_settings,omitempty"` // Table path. @@ -246,8 +243,7 @@ type TableInitParameters struct { // Read replication settings ReadReplicasSettings *string `json:"readReplicasSettings,omitempty" tf:"read_replicas_settings,omitempty"` - // ttl TTL settings - // The structure is documented below. + // ttl TTL settings The structure is documented below. TTL []TTLInitParameters `json:"ttl,omitempty" tf:"ttl,omitempty"` } @@ -257,15 +253,13 @@ type TableObservation struct { // +mapType=granular Attributes map[string]*string `json:"attributes,omitempty" tf:"attributes,omitempty"` - // A list of column configuration options. - // The structure is documented below. + // A list of column configuration options. The structure is documented below. Column []ColumnObservation `json:"column,omitempty" tf:"column,omitempty"` // Connection string for database. ConnectionString *string `json:"connectionString,omitempty" tf:"connection_string,omitempty"` - // A list of column group configuration options. - // The structure is documented below. + // A list of column group configuration options. The structure is documented below. Family []FamilyObservation `json:"family,omitempty" tf:"family,omitempty"` ID *string `json:"id,omitempty" tf:"id,omitempty"` @@ -273,8 +267,7 @@ type TableObservation struct { // Use the Bloom filter for the primary key KeyBloomFilter *bool `json:"keyBloomFilter,omitempty" tf:"key_bloom_filter,omitempty"` - // Table partiotioning settings - // The structure is documented below. + // Table partiotioning settings The structure is documented below. PartitioningSettings []PartitioningSettingsObservation `json:"partitioningSettings,omitempty" tf:"partitioning_settings,omitempty"` // Table path. @@ -286,8 +279,7 @@ type TableObservation struct { // Read replication settings ReadReplicasSettings *string `json:"readReplicasSettings,omitempty" tf:"read_replicas_settings,omitempty"` - // ttl TTL settings - // The structure is documented below. + // ttl TTL settings The structure is documented below. TTL []TTLObservation `json:"ttl,omitempty" tf:"ttl,omitempty"` } @@ -298,8 +290,7 @@ type TableParameters struct { // +mapType=granular Attributes map[string]*string `json:"attributes,omitempty" tf:"attributes,omitempty"` - // A list of column configuration options. - // The structure is documented below. + // A list of column configuration options. The structure is documented below. // +kubebuilder:validation:Optional Column []ColumnParameters `json:"column,omitempty" tf:"column,omitempty"` @@ -317,8 +308,7 @@ type TableParameters struct { // +kubebuilder:validation:Optional ConnectionStringSelector *v1.Selector `json:"connectionStringSelector,omitempty" tf:"-"` - // A list of column group configuration options. - // The structure is documented below. + // A list of column group configuration options. The structure is documented below. // +kubebuilder:validation:Optional Family []FamilyParameters `json:"family,omitempty" tf:"family,omitempty"` @@ -326,8 +316,7 @@ type TableParameters struct { // +kubebuilder:validation:Optional KeyBloomFilter *bool `json:"keyBloomFilter,omitempty" tf:"key_bloom_filter,omitempty"` - // Table partiotioning settings - // The structure is documented below. + // Table partiotioning settings The structure is documented below. // +kubebuilder:validation:Optional PartitioningSettings []PartitioningSettingsParameters `json:"partitioningSettings,omitempty" tf:"partitioning_settings,omitempty"` @@ -343,8 +332,7 @@ type TableParameters struct { // +kubebuilder:validation:Optional ReadReplicasSettings *string `json:"readReplicasSettings,omitempty" tf:"read_replicas_settings,omitempty"` - // ttl TTL settings - // The structure is documented below. + // ttl TTL settings The structure is documented below. // +kubebuilder:validation:Optional TTL []TTLParameters `json:"ttl,omitempty" tf:"ttl,omitempty"` } diff --git a/apis/ydb/v1alpha1/zz_tablechangefeed_types.go b/apis/ydb/v1alpha1/zz_tablechangefeed_types.go index 1ad0f48..550a4ce 100755 --- a/apis/ydb/v1alpha1/zz_tablechangefeed_types.go +++ b/apis/ydb/v1alpha1/zz_tablechangefeed_types.go @@ -10,6 +10,7 @@ import ( ) type ConsumerInitParameters struct { + Important *bool `json:"important,omitempty" tf:"important,omitempty"` // : Changefeed name. Name *string `json:"name,omitempty" tf:"name,omitempty"` @@ -23,6 +24,7 @@ type ConsumerInitParameters struct { } type ConsumerObservation struct { + Important *bool `json:"important,omitempty" tf:"important,omitempty"` // : Changefeed name. Name *string `json:"name,omitempty" tf:"name,omitempty"` @@ -37,6 +39,9 @@ type ConsumerObservation struct { type ConsumerParameters struct { + // +kubebuilder:validation:Optional + Important *bool `json:"important,omitempty" tf:"important,omitempty"` + // : Changefeed name. // +kubebuilder:validation:Optional Name *string `json:"name" tf:"name,omitempty"` diff --git a/apis/ydb/v1alpha1/zz_tableindex_types.go b/apis/ydb/v1alpha1/zz_tableindex_types.go index fcf83f5..3eb678a 100755 --- a/apis/ydb/v1alpha1/zz_tableindex_types.go +++ b/apis/ydb/v1alpha1/zz_tableindex_types.go @@ -10,59 +10,83 @@ import ( ) type TableIndexInitParameters struct { + + // (List of String) Columns []*string `json:"columns,omitempty" tf:"columns,omitempty"` + // (String) ConnectionString *string `json:"connectionString,omitempty" tf:"connection_string,omitempty"` + // (List of String) Cover []*string `json:"cover,omitempty" tf:"cover,omitempty"` + // (String) Name *string `json:"name,omitempty" tf:"name,omitempty"` + // (String) TableID *string `json:"tableId,omitempty" tf:"table_id,omitempty"` + // (String) TablePath *string `json:"tablePath,omitempty" tf:"table_path,omitempty"` + // (String) Type *string `json:"type,omitempty" tf:"type,omitempty"` } type TableIndexObservation struct { + + // (List of String) Columns []*string `json:"columns,omitempty" tf:"columns,omitempty"` + // (String) ConnectionString *string `json:"connectionString,omitempty" tf:"connection_string,omitempty"` + // (List of String) Cover []*string `json:"cover,omitempty" tf:"cover,omitempty"` + // (String) The ID of this resource. ID *string `json:"id,omitempty" tf:"id,omitempty"` + // (String) Name *string `json:"name,omitempty" tf:"name,omitempty"` + // (String) TableID *string `json:"tableId,omitempty" tf:"table_id,omitempty"` + // (String) TablePath *string `json:"tablePath,omitempty" tf:"table_path,omitempty"` + // (String) Type *string `json:"type,omitempty" tf:"type,omitempty"` } type TableIndexParameters struct { + // (List of String) // +kubebuilder:validation:Optional Columns []*string `json:"columns,omitempty" tf:"columns,omitempty"` + // (String) // +kubebuilder:validation:Optional ConnectionString *string `json:"connectionString,omitempty" tf:"connection_string,omitempty"` + // (List of String) // +kubebuilder:validation:Optional Cover []*string `json:"cover,omitempty" tf:"cover,omitempty"` + // (String) // +kubebuilder:validation:Optional Name *string `json:"name,omitempty" tf:"name,omitempty"` + // (String) // +kubebuilder:validation:Optional TableID *string `json:"tableId,omitempty" tf:"table_id,omitempty"` + // (String) // +kubebuilder:validation:Optional TablePath *string `json:"tablePath,omitempty" tf:"table_path,omitempty"` + // (String) // +kubebuilder:validation:Optional Type *string `json:"type,omitempty" tf:"type,omitempty"` } @@ -94,7 +118,7 @@ type TableIndexStatus struct { // +kubebuilder:subresource:status // +kubebuilder:storageversion -// TableIndex is the Schema for the TableIndexs API. +// TableIndex is the Schema for the TableIndexs API. // +kubebuilder:printcolumn:name="SYNCED",type="string",JSONPath=".status.conditions[?(@.type=='Synced')].status" // +kubebuilder:printcolumn:name="READY",type="string",JSONPath=".status.conditions[?(@.type=='Ready')].status" // +kubebuilder:printcolumn:name="EXTERNAL-NAME",type="string",JSONPath=".metadata.annotations.crossplane\\.io/external-name" diff --git a/apis/ydb/v1alpha1/zz_topic_types.go b/apis/ydb/v1alpha1/zz_topic_types.go index 5189d7d..c654f9f 100755 --- a/apis/ydb/v1alpha1/zz_topic_types.go +++ b/apis/ydb/v1alpha1/zz_topic_types.go @@ -10,6 +10,8 @@ import ( ) type TopicConsumerInitParameters struct { + + // Defines an important consumer. No data will be deleted from the topic until all the important consumers read them. Value type: boolean, default value: false. Important *bool `json:"important,omitempty" tf:"important,omitempty"` // Topic name. Type: string, required. Default value: "". @@ -24,6 +26,8 @@ type TopicConsumerInitParameters struct { } type TopicConsumerObservation struct { + + // Defines an important consumer. No data will be deleted from the topic until all the important consumers read them. Value type: boolean, default value: false. Important *bool `json:"important,omitempty" tf:"important,omitempty"` // Topic name. Type: string, required. Default value: "". @@ -39,6 +43,7 @@ type TopicConsumerObservation struct { type TopicConsumerParameters struct { + // Defines an important consumer. No data will be deleted from the topic until all the important consumers read them. Value type: boolean, default value: false. // +kubebuilder:validation:Optional Important *bool `json:"important,omitempty" tf:"important,omitempty"` @@ -62,15 +67,27 @@ type TopicInitParameters struct { Consumer []TopicConsumerInitParameters `json:"consumer,omitempty" tf:"consumer,omitempty"` // YDB database endpoint. Types: string, required. Default value: "". + // +crossplane:generate:reference:type=github.com/tagesjump/provider-upjet-yc/apis/ydb/v1alpha1.DatabaseServerless + // +crossplane:generate:reference:extractor=github.com/crossplane/upjet/pkg/resource.ExtractParamPath("ydb_full_endpoint",true) DatabaseEndpoint *string `json:"databaseEndpoint,omitempty" tf:"database_endpoint,omitempty"` + // Reference to a DatabaseServerless in ydb to populate databaseEndpoint. + // +kubebuilder:validation:Optional + DatabaseEndpointRef *v1.Reference `json:"databaseEndpointRef,omitempty" tf:"-"` + + // Selector for a DatabaseServerless in ydb to populate databaseEndpoint. + // +kubebuilder:validation:Optional + DatabaseEndpointSelector *v1.Selector `json:"databaseEndpointSelector,omitempty" tf:"-"` + Description *string `json:"description,omitempty" tf:"description,omitempty"` + // Resource metering mode (reserved_capacity - based on the allocated resources or request_units - based on actual usage). This option applies to topics in serverless databases. Value type: String. MeteringMode *string `json:"meteringMode,omitempty" tf:"metering_mode,omitempty"` // Topic name. Type: string, required. Default value: "". Name *string `json:"name,omitempty" tf:"name,omitempty"` + // Maximum allowed write speed per partition. If a write speed for a given partition exceeds this value, the write speed will be capped. Value type: integer, default value: 1024 (1MB). PartitionWriteSpeedKbps *float64 `json:"partitionWriteSpeedKbps,omitempty" tf:"partition_write_speed_kbps,omitempty"` // Number of partitions. Types: integer, optional. Default value: 2. @@ -97,11 +114,13 @@ type TopicObservation struct { ID *string `json:"id,omitempty" tf:"id,omitempty"` + // Resource metering mode (reserved_capacity - based on the allocated resources or request_units - based on actual usage). This option applies to topics in serverless databases. Value type: String. MeteringMode *string `json:"meteringMode,omitempty" tf:"metering_mode,omitempty"` // Topic name. Type: string, required. Default value: "". Name *string `json:"name,omitempty" tf:"name,omitempty"` + // Maximum allowed write speed per partition. If a write speed for a given partition exceeds this value, the write speed will be capped. Value type: integer, default value: 1024 (1MB). PartitionWriteSpeedKbps *float64 `json:"partitionWriteSpeedKbps,omitempty" tf:"partition_write_speed_kbps,omitempty"` // Number of partitions. Types: integer, optional. Default value: 2. @@ -123,12 +142,23 @@ type TopicParameters struct { Consumer []TopicConsumerParameters `json:"consumer,omitempty" tf:"consumer,omitempty"` // YDB database endpoint. Types: string, required. Default value: "". + // +crossplane:generate:reference:type=github.com/tagesjump/provider-upjet-yc/apis/ydb/v1alpha1.DatabaseServerless + // +crossplane:generate:reference:extractor=github.com/crossplane/upjet/pkg/resource.ExtractParamPath("ydb_full_endpoint",true) // +kubebuilder:validation:Optional DatabaseEndpoint *string `json:"databaseEndpoint,omitempty" tf:"database_endpoint,omitempty"` + // Reference to a DatabaseServerless in ydb to populate databaseEndpoint. + // +kubebuilder:validation:Optional + DatabaseEndpointRef *v1.Reference `json:"databaseEndpointRef,omitempty" tf:"-"` + + // Selector for a DatabaseServerless in ydb to populate databaseEndpoint. + // +kubebuilder:validation:Optional + DatabaseEndpointSelector *v1.Selector `json:"databaseEndpointSelector,omitempty" tf:"-"` + // +kubebuilder:validation:Optional Description *string `json:"description,omitempty" tf:"description,omitempty"` + // Resource metering mode (reserved_capacity - based on the allocated resources or request_units - based on actual usage). This option applies to topics in serverless databases. Value type: String. // +kubebuilder:validation:Optional MeteringMode *string `json:"meteringMode,omitempty" tf:"metering_mode,omitempty"` @@ -136,6 +166,7 @@ type TopicParameters struct { // +kubebuilder:validation:Optional Name *string `json:"name,omitempty" tf:"name,omitempty"` + // Maximum allowed write speed per partition. If a write speed for a given partition exceeds this value, the write speed will be capped. Value type: integer, default value: 1024 (1MB). // +kubebuilder:validation:Optional PartitionWriteSpeedKbps *float64 `json:"partitionWriteSpeedKbps,omitempty" tf:"partition_write_speed_kbps,omitempty"` @@ -191,7 +222,6 @@ type TopicStatus struct { type Topic struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.databaseEndpoint) || (has(self.initProvider) && has(self.initProvider.databaseEndpoint))",message="spec.forProvider.databaseEndpoint is a required parameter" // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.name) || (has(self.initProvider) && has(self.initProvider.name))",message="spec.forProvider.name is a required parameter" Spec TopicSpec `json:"spec"` Status TopicStatus `json:"status,omitempty"` diff --git a/config/external_name.go b/config/external_name.go index c5258b2..b561330 100644 --- a/config/external_name.go +++ b/config/external_name.go @@ -12,7 +12,6 @@ import ( // under the no-fork architecture for this provider. var TerraformPluginSDKExternalNameConfigs = map[string]config.ExternalName{ // Import requires using a randomly generated ID from provider: nl-2e21sda - "yandex_airflow_cluster": config.IdentifierFromProvider, "yandex_api_gateway": config.IdentifierFromProvider, "yandex_backup_policy": config.IdentifierFromProvider, "yandex_backup_policy_bindings": config.IdentifierFromProvider, @@ -124,7 +123,6 @@ var TerraformPluginSDKExternalNameConfigs = map[string]config.ExternalName{ "yandex_lockbox_secret_version": config.IdentifierFromProvider, "yandex_monitoring_dashboard": config.IdentifierFromProvider, "yandex_loadtesting_agent": config.IdentifierFromProvider, - "yandex_mdb_opensearch_cluster": config.IdentifierFromProvider, "yandex_audit_trails_trail": config.IdentifierFromProvider, // "yandex_lockbox_secret_version_hashed": config.IdentifierFromProvider, "yandex_sws_security_profile": config.IdentifierFromProvider, @@ -148,8 +146,10 @@ var TerraformPluginSDKExternalNameConfigs = map[string]config.ExternalName{ // resources to be reconciled under the no-fork architecture for this // provider. var TerraformPluginFrameworkExternalNameConfigs = map[string]config.ExternalName{ - "yandex_mdb_mongodb_user": config.IdentifierFromProvider, - "yandex_mdb_mongodb_database": config.IdentifierFromProvider, + "yandex_mdb_mongodb_user": config.IdentifierFromProvider, + "yandex_mdb_mongodb_database": config.IdentifierFromProvider, + // "yandex_mdb_opensearch_cluster": config.IdentifierFromProvider, + // "yandex_airflow_cluster": config.IdentifierFromProvider, "yandex_compute_disk_placement_group_iam_binding": config.IdentifierFromProvider, "yandex_compute_disk_iam_binding": config.IdentifierFromProvider, "yandex_compute_image_iam_binding": config.IdentifierFromProvider, diff --git a/config/provider-metadata.yaml b/config/provider-metadata.yaml index d843e02..c27d0c2 100644 --- a/config/provider-metadata.yaml +++ b/config/provider-metadata.yaml @@ -1,7 +1,102 @@ name: yandex-cloud/yandex resources: + yandex_airflow_cluster: + subCategory: Airflow + description: Manages an Apache Airflow cluster within Yandex.Cloud. + name: yandex_airflow_cluster + title: yandex_airflow_cluster + examples: + - name: this + manifest: |- + { + "admin_password": "some-strong-password", + "airflow_config": { + "api": { + "auth_backends": "airflow.api.auth.backend.basic_auth,airflow.api.auth.backend.session" + } + }, + "code_sync": { + "s3": { + "bucket": "bucket-for-airflow-dags" + } + }, + "lockbox_secrets_backend": { + "enabled": true + }, + "logging": { + "enabled": true, + "folder_id": "${var.folder_id}", + "min_level": "INFO" + }, + "name": "airflow-created-with-terraform", + "pip_packages": [ + "dbt" + ], + "scheduler": { + "count": 1, + "resource_preset_id": "c1-m4" + }, + "service_account_id": "${yandex_iam_service_account.for-airflow.id}", + "subnet_ids": [ + "${yandex_vpc_subnet.a.id}", + "${yandex_vpc_subnet.b.id}", + "${yandex_vpc_subnet.d.id}" + ], + "webserver": { + "count": 1, + "resource_preset_id": "c1-m4" + }, + "worker": { + "max_count": 2, + "min_count": 1, + "resource_preset_id": "c1-m4" + } + } + references: + service_account_id: yandex_iam_service_account.for-airflow.id + argumentDocs: + admin_password: '- (Required) Password that is used to log in to Apache Airflow web UI under admin user.' + airflow_config: '- (Optional) Configuration of the Apache Airflow application itself. The value of this attribute is a two-level map. Keys of top-level map are the names of configuration sections. Keys of inner maps are the names of configuration options within corresponding section.' + code_sync: '- (Required) Parameters of the location and access to the code that will be executed in the cluster. The structure is documented below.' + code_sync.s3: '- (Required) Currently only Object Storage (S3) is supported as the source of DAG files. The structure is documented below.' + code_sync.s3.bucket: '- (Required) The name of the Object Storage bucket that stores DAG files used in the cluster.' + created_at: '- Timestamp of cluster creation.' + deb_packages: '- (Optional) System packages that are installed in the cluster.' + deletion_protection: '- (Optional) Inhibits deletion of the cluster. Can be either true or false.' + description: '- (Optional) Description of the cluster.' + folder_id: '- (Optional) The ID of the folder that the cluster belongs to. If it is not provided, the default provider folder is used.' + health: '- Aggregated health of the cluster. Can be either ALIVE, DEGRADED, DEAD or HEALTH_UNKNOWN. For more information see health field of JSON representation in the official documentation.' + id: '- ID of the cluster.' + labels: '- (Optional) A set of key/value label pairs to assign to the cluster.' + lockbox_secrets_backend: '- (Optional) Configuration of Lockbox Secrets Backend. See documentation for details. The structure is documented below.' + lockbox_secrets_backend.enabled: '- (Required) Enables usage of Lockbox Secrets Backend.' + logging: '- (Optional) Cloud Logging configuration. The structure is documented below.' + logging.enabled: '- (Required) Enables delivery of logs generated by the Airflow components to Cloud Logging.' + logging.folder_id: '- (Optional) Logs will be written to default log group of specified folder. Exactly one of the attributes folder_id and log_group_id should be specified.' + logging.log_group_id: '- (Optional) Logs will be written to the specified log group. Exactly one of the attributes folder_id and log_group_id should be specified.' + logging.min_level: '- (Optional) Minimum level of messages that will be sent to Cloud Logging. Can be either TRACE, DEBUG, INFO, WARN, ERROR or FATAL. If not set then server default is applied (currently INFO).' + name: '- (Required) Name of Apache Airflow cluster.' + pip_packages: '- (Optional) Python packages that are installed in the cluster.' + scheduler: '- (Required) Configuration of scheduler instances. The structure is documented below.' + scheduler.count: '- (Required) The number of scheduler instances in the cluster.' + scheduler.resource_preset_id: '- (Required) ID of the preset for computational resources available to an instance (CPU, memory etc.).' + security_group_ids: '- (Optional) List of security groups applied to cluster components.' + service_account_id: '- (Required) Service account used to access Cloud resources. For more information, see documentation.' + status: '- Status of the cluster. Can be either CREATING, STARTING, RUNNING, UPDATING, STOPPING, STOPPED, ERROR or STATUS_UNKNOWN. For more information see status field of JSON representation in the official documentation.' + subnet_ids: '- (Required) IDs of VPC network subnets where instances of the cluster are attached.' + triggerer: '- (Optional) Configuration of triggerer instances. The structure is documented below.' + triggerer.count: '- (Required) The number of triggerer instances in the cluster.' + triggerer.resource_preset_id: '- (Required) ID of the preset for computational resources available to an instance (CPU, memory etc.).' + webserver: '- (Required) Configuration of webserver instances. The structure is documented below.' + webserver.count: '- (Required) The number of webserver instances in the cluster.' + webserver.resource_preset_id: '- (Required) ID of the preset for computational resources available to an instance (CPU, memory etc.).' + worker: '- (Required) Configuration of worker instances. The structure is documented below.' + worker.max_count: '- (Required) The maximum number of worker instances in the cluster.' + worker.min_count: '- (Required) The minimum number of worker instances in the cluster.' + worker.resource_preset_id: '- (Required) ID of the preset for computational resources available to an instance (CPU, memory etc.).' + importStatements: [] yandex_alb_backend_group: - subCategory: "" + subCategory: ALB (Application Load Balancer) description: An application load balancer distributes the load across cloud resources that are combined into a backend group. name: yandex_alb_backend_group title: yandex_alb_backend_group @@ -81,7 +176,7 @@ resources: healthcheck.interval_jitter_percent: '- (Optional) An optional jitter amount as a percentage of interval. If specified, during every interval value of (interval_ms * interval_jitter_percent / 100) will be added to the wait time.' healthcheck.stream_healthcheck: '- (Optional) Stream Healthcheck specification that will be used by this healthcheck. Structure is documented below.' healthcheck.stream_healthcheck.receive: '- (Optional) Data that must be contained in the messages received from targets for a successful health check. If not specified, no messages are expected from targets, and those that are received are not checked.' - healthcheck.stream_healthcheck.send: '- (Optional) Message sent to targets during TCP data transfer. If not specified, no data is sent to the target.' + healthcheck.stream_healthcheck.send: '- (Optional) Message sent to targets during TCP data transfer. If not specified, no data is sent to the target.' healthcheck.timeout: '- (Required) Time to wait for a health check response.' healthcheck.unhealthy_threshold: '- (Optional) Number of consecutive failed health checks required to demote endpoint into the unhealthy state. 0 means 1. Note that for HTTP health checks, a single 503 immediately makes endpoint unhealthy.' http_backend: '- (Optional) Http backend specification that will be used by the ALB Backend Group. Structure is documented below.' @@ -100,7 +195,7 @@ resources: labels: '- (Optional) Labels to assign to this backend group.' load_balancing_config.locality_aware_routing_percent: '- (Optional) Percent of traffic to be sent to the same availability zone. The rest will be equally divided between other zones.' load_balancing_config.mode: '- (Optional) Load balancing mode for the backend. Possible values: "ROUND_ROBIN", "RANDOM", "LEAST_REQUEST", "MAGLEV_HASH".' - load_balancing_config.panic_threshold: '- (Optional) If percentage of healthy hosts in the backend is lower than panic_threshold, traffic will be routed to all backends no matter what the health status is. This helps to avoid healthy backends overloading when everything is bad. Zero means no panic threshold.' + load_balancing_config.panic_threshold: '- (Optional) If percentage of healthy hosts in the backend is lower than panic_threshold, traffic will be routed to all backends no matter what the health status is. This helps to avoid healthy backends overloading when everything is bad. Zero means no panic threshold.' load_balancing_config.strict_locality: '- (Optional) If set, will route requests only to the same availability zone. Balancer won''t know about endpoints in other zones.' name: '- (Optional) Name of the Backend Group.' session_affinity: '- (Optional) Session affinity mode determines how incoming requests are grouped into one session. Structure is documented below.' @@ -119,7 +214,7 @@ resources: update: '- Default is 5 minute.' importStatements: [] yandex_alb_http_router: - subCategory: "" + subCategory: ALB (Application Load Balancer) description: The HTTP router defines the routing rules for HTTP requests to backend groups. name: yandex_alb_http_router title: yandex_alb_http_router @@ -139,19 +234,15 @@ resources: create: '- Default is 5 minute.' created_at: '- The HTTP Router creation timestamp.' delete: '- Default is 5 minute.' - description: |- - - (Optional) An optional description of the HTTP Router. Provide this property when - you create the resource. - folder_id: |- - - (Optional) The ID of the folder to which the resource belongs. - If omitted, the provider folder is used. + description: '- (Optional) An optional description of the HTTP Router. Provide this property when you create the resource.' + folder_id: '- (Optional) The ID of the folder to which the resource belongs. If omitted, the provider folder is used.' id: '- The ID of the HTTP Router.' labels: '- (Optional) Labels to assign to this HTTP Router. A list of key/value pairs.' name: '- (Optional) Name of the HTTP Router. Provided by the client when the HTTP Router is created.' update: '- Default is 5 minute.' importStatements: [] yandex_alb_load_balancer: - subCategory: "" + subCategory: ALB (Application Load Balancer) description: A Load Balancer is used for receiving incoming traffic and transmitting it to the backend endpoints specified in the ALB Target Groups. name: yandex_alb_load_balancer title: yandex_alb_load_balancer @@ -227,9 +318,7 @@ resources: allocation_policy.location.zone_id: '- (Required) ID of the zone that location is located at.' create: '- Default is 10 minute.' created_at: '- The Load Balancer creation timestamp.' - default_handler.certificate_ids: |- - - (Required) Certificate IDs in the Certificate Manager. Multiple TLS certificates can be associated - with the same context to allow both RSA and ECDSA certificates. Only the first certificate of each type will be used. + default_handler.certificate_ids: '- (Required) Certificate IDs in the Certificate Manager. Multiple TLS certificates can be associated with the same context to allow both RSA and ECDSA certificates. Only the first certificate of each type will be used.' default_handler.http_handler: '- (Required) HTTP handler resource. The structure is documented below.' default_handler.stream_handler: '- (Required) Stream handler resource. The structure is documented below.' delete: '- Default is 10 minute.' @@ -280,7 +369,7 @@ resources: update: '- Default is 10 minute.' importStatements: [] yandex_alb_target_group: - subCategory: "" + subCategory: ALB (Application Load Balancer) description: An application load balancer distributes the load across cloud resources that are combined into a target group. name: yandex_alb_target_group title: yandex_alb_target_group @@ -300,28 +389,25 @@ resources: } ] } + references: + target.ip_address: yandex_compute_instance.my-instance-2.network_interface.0.ip_address + target.subnet_id: yandex_vpc_subnet.my-subnet.id argumentDocs: create: '- Default is 5 minute.' created_at: '- The target group creation timestamp.' delete: '- Default is 5 minute.' - description: |- - - (Optional) An optional description of the target group. Provide this property when - you create the resource. - folder_id: |- - - (Optional) The ID of the folder to which the resource belongs. - If omitted, the provider folder is used. + description: '- (Optional) An optional description of the target group. Provide this property when you create the resource.' + folder_id: '- (Optional) The ID of the folder to which the resource belongs. If omitted, the provider folder is used.' id: '- The ID of the target group.' labels: '- (Optional) Labels to assign to this target group. A list of key/value pairs.' name: '- (Optional) Name of the target group. Provided by the client when the target group is created.' target: '- (Optional) A Target resource. The structure is documented below.' target.ip_address: '- (Required) IP address of the target.' - target.subnet_id: |- - - (Required) ID of the subnet that targets are connected to. - All targets in the target group must be connected to the same subnet within a single availability zone. + target.subnet_id: '- (Required) ID of the subnet that targets are connected to. All targets in the target group must be connected to the same subnet within a single availability zone.' update: '- Default is 5 minute.' importStatements: [] yandex_alb_virtual_host: - subCategory: "" + subCategory: ALB (Application Load Balancer) description: Virtual hosts combine routes belonging to the same set of domains. name: yandex_alb_virtual_host title: yandex_alb_virtual_host @@ -351,9 +437,7 @@ resources: http_router_id: yandex_alb_http_router.my-router.id route.http_route.http_route_action.backend_group_id: yandex_alb_backend_group.my-bg.id argumentDocs: - authority: |- - - (Optional) A list of domains (host/authority header) that will be matched to this virtual host. Wildcard - hosts are supported in the form of '.foo.com' or '-bar.foo.com'. If not specified, all domains will be matched. + authority: '- (Optional) A list of domains (host/authority header) that will be matched to this virtual host. Wildcard hosts are supported in the form of ''.foo.com'' or ''-bar.foo.com''. If not specified, all domains will be matched.' create: '- Default is 5 minute.' delete: '- Default is 5 minute.' direct_response_action.body: '- (Optional) Response body text.' @@ -365,17 +449,9 @@ resources: grpc_route_action.auto_host_rewrite: '- (Optional) If set, will automatically rewrite host.' grpc_route_action.backend_group_id: '- (Required) Backend group to route requests.' grpc_route_action.host_rewrite: '- (Optional) Host rewrite specifier.' - grpc_route_action.idle_timeout: |- - - (Optional) Specifies the idle timeout (time without any data transfer for the active request) for the - route. It is useful for streaming scenarios - one should set idle_timeout to something meaningful and max_timeout - to the maximum time the stream is allowed to be alive. If not specified, there is no - per-route idle timeout. - grpc_route_action.max_timeout: |- - - (Optional) Lower timeout may be specified by the client (using grpc-timeout header). If not set, default is - 60 seconds. - grpc_status_response_action.status: |- - - (Optional) The status of the response. Supported values are: ok, invalid_argumet, not_found, - permission_denied, unauthenticated, unimplemented, internal, unavailable. + grpc_route_action.idle_timeout: '- (Optional) Specifies the idle timeout (time without any data transfer for the active request) for the route. It is useful for streaming scenarios - one should set idle_timeout to something meaningful and max_timeout to the maximum time the stream is allowed to be alive. If not specified, there is no per-route idle timeout.' + grpc_route_action.max_timeout: '- (Optional) Lower timeout may be specified by the client (using grpc-timeout header). If not set, default is 60 seconds.' + grpc_status_response_action.status: '- (Optional) The status of the response. Supported values are: ok, invalid_argumet, not_found, permission_denied, unauthenticated, unimplemented, internal, unavailable.' http_match.http_method: '- (Optional) List of methods(strings).' http_match.path: '- (Optional) If not set, ''/'' is assumed. The structure is documented below.' http_route.direct_response_action: '- (Required) Direct response action resource. The structure is documented below.' @@ -385,32 +461,18 @@ resources: http_route_action.auto_host_rewrite: '- (Optional) If set, will automatically rewrite host.' http_route_action.backend_group_id: '- (Required) Backend group to route requests.' http_route_action.host_rewrite: '- (Optional) Host rewrite specifier.' - http_route_action.idle_timeout: |- - - (Optional) Specifies the idle timeout (time without any data transfer for the active request) for the - route. It is useful for streaming scenarios (i.e. long-polling, server-sent events) - one should set idle_timeout to - something meaningful and timeout to the maximum time the stream is allowed to be alive. If not specified, there is no - per-route idle timeout. + http_route_action.idle_timeout: '- (Optional) Specifies the idle timeout (time without any data transfer for the active request) for the route. It is useful for streaming scenarios (i.e. long-polling, server-sent events) - one should set idle_timeout to something meaningful and timeout to the maximum time the stream is allowed to be alive. If not specified, there is no per-route idle timeout.' http_route_action.prefix_rewrite: '- (Optional) If not empty, matched path prefix will be replaced by this value.' - http_route_action.timeout: |- - - (Optional) Specifies the request timeout (overall time request processing is allowed to take) for the - route. If not set, default is 60 seconds. - http_route_action.upgrade_types: |- - - (Optional) List of upgrade types. Only specified upgrade types will be allowed. For example, - "websocket". + http_route_action.timeout: '- (Optional) Specifies the request timeout (overall time request processing is allowed to take) for the route. If not set, default is 60 seconds.' + http_route_action.upgrade_types: '- (Optional) List of upgrade types. Only specified upgrade types will be allowed. For example, "websocket".' http_router_id: '- (Required) The ID of the HTTP router to which the virtual host belongs.' id: '- The ID of the virtual host.' - modify_request_headers: |- - - (Optional) Apply the following modifications to the request - headers. The structure is documented below. + modify_request_headers: '- (Optional) Apply the following modifications to the request headers. The structure is documented below.' modify_request_headers.append: '- (Optional) Append string to the header value.' modify_request_headers.name: '- (Required) name of the header to modify.' modify_request_headers.remove: '- (Optional) If set, remove the header.' - modify_request_headers.replace: |- - - (Optional) New value for a header. Header values support the following - formatters. - modify_response_headers: |- - - (Optional) Apply the following modifications to the response - headers. The structure is documented below. + modify_request_headers.replace: '- (Optional) New value for a header. Header values support the following formatters.' + modify_response_headers: '- (Optional) Apply the following modifications to the response headers. The structure is documented below.' name: '- (Required) Name of the virtual host. Provided by the client when the virtual host is created.' path.exact: '- (Optional) Match exactly.' path.prefix: '- (Optional) Match prefix.' @@ -419,16 +481,10 @@ resources: redirect_action.replace_host: '- (Optional) Replaces hostname.' redirect_action.replace_path: '- (Optional) Replace path.' redirect_action.replace_port: '- (Optional) Replaces port.' - redirect_action.replace_prefix: "- (Optional) Replace only matched prefix. Example: match:{ prefix_match: \"/some\" } \nredirect: { replace_prefix: \"/other\" } will redirect \"/something\" to \"/otherthing\"." - redirect_action.replace_scheme: |- - - (Optional) Replaces scheme. If the original scheme is http or https, will also remove the - 80 or 443 port, if present. - redirect_action.response_code: |- - - (Optional) The HTTP status code to use in the redirect response. Supported values are: - moved_permanently, found, see_other, temporary_redirect, permanent_redirect. - route: |- - - (Optional) A Route resource. Routes are matched in-order. Be careful when adding them to the end. For instance, having - http '/' match first makes all other routes unused. The structure is documented below. + redirect_action.replace_prefix: '- (Optional) Replace only matched prefix. Example: match:{ prefix_match: "/some" } redirect: { replace_prefix: "/other" } will redirect "/something" to "/otherthing".' + redirect_action.replace_scheme: '- (Optional) Replaces scheme. If the original scheme is http or https, will also remove the 80 or 443 port, if present.' + redirect_action.response_code: '- (Optional) The HTTP status code to use in the redirect response. Supported values are: moved_permanently, found, see_other, temporary_redirect, permanent_redirect.' + route: '- (Optional) A Route resource. Routes are matched in-order. Be careful when adding them to the end. For instance, having http ''/'' match first makes all other routes unused. The structure is documented below.' route.grpc_route: '- (Optional) GRPC route resource. The structure is documented below.' route.http_route: '- (Optional) HTTP route resource. The structure is documented below.' route.name: '- (Required) name of the route.' @@ -438,7 +494,7 @@ resources: update: '- Default is 5 minute.' importStatements: [] yandex_api_gateway: - subCategory: "" + subCategory: Serverless API Gateway description: Allows management of a Yandex Cloud API Gateway. name: yandex_api_gateway title: yandex_api_gateway @@ -508,7 +564,7 @@ resources: variables: '- (Optional) A set of values for variables in gateway specification.' importStatements: [] yandex_audit_trails_trail: - subCategory: "" + subCategory: Audit Trails description: Manages a trail resource. name: yandex_audit_trails_trail title: yandex_audit_trails_trail @@ -517,61 +573,35 @@ resources: manifest: |- { "description": "Some trail description", - "filter": [ + "filtering_policy": [ { - "event_filters": [ + "data_events_filter": [ { - "categories": [ - { - "plane": "DATA_PLANE", - "type": "WRITE" - } - ], - "path_filter": [ + "resource_scope": [ { - "any_filter": [ - { - "resource_id": "home-folder", - "resource_type": "resource-manager.folder" - } - ] + "resource_id": "home-folder", + "resource_type": "resource-manager.folder" } ], "service": "storage" }, { - "categories": [ + "resource_scope": [ { - "plane": "DATA_PLANE", - "type": "READ" - } - ], - "path_filter": [ + "resource_id": "vpc-net-id-1", + "resource_type": "vpc.network" + }, { - "some_filter": [ - { - "any_filters": [ - { - "resource_id": "vpc-net-id-1", - "resource_type": "vpc.network" - }, - { - "resource_id": "vpc-net-id-2", - "resource_type": "vpc.network" - } - ], - "resource_id": "home-folder", - "resource_type": "resource-manager.folder" - } - ] + "resource_id": "vpc-net-id-2", + "resource_type": "vpc.network" } ], "service": "dns" } ], - "path_filter": [ + "management_events_filter": [ { - "any_filter": [ + "resource_scope": [ { "resource_id": "home-folder", "resource_type": "resource-manager.folder" @@ -603,51 +633,31 @@ resources: } ], "description": "Some trail description", - "filter": [ + "filtering_policy": [ { - "event_filters": [ + "data_events_filter": [ { - "categories": [ - { - "plane": "DATA_PLANE", - "type": "WRITE" - } - ], - "path_filter": [ + "resource_scope": [ { - "any_filter": [ - { - "resource_id": "some-organization", - "resource_type": "organization-manager.organization" - } - ] + "resource_id": "some-organization", + "resource_type": "organization-manager.organization" } ], "service": "storage" }, { - "categories": [ - { - "plane": "DATA_PLANE", - "type": "READ" - } - ], - "path_filter": [ + "resource_scope": [ { - "any_filter": [ - { - "resource_id": "some-organization", - "resource_type": "organization-manager.organization" - } - ] + "resource_id": "some-organization", + "resource_type": "organization-manager.organization" } ], "service": "dns" } ], - "path_filter": [ + "management_events_filter": [ { - "any_filter": [ + "resource_scope": [ { "resource_id": "some-organization", "resource_type": "organization-manager.organization" @@ -668,32 +678,22 @@ resources: manifest: |- { "description": "Some trail description", - "filter": [ + "filtering_policy": [ { - "event_filters": [ + "data_events_filter": [ { - "categories": [ - { - "plane": "DATA_PLANE", - "type": "WRITE" - } - ], - "path_filter": [ + "resource_scope": [ { - "any_filter": [ - { - "resource_id": "home-folder", - "resource_type": "resource-manager.folder" - } - ] + "resource_id": "home-folder", + "resource_type": "resource-manager.folder" } ], "service": "mdb.postgresql" } ], - "path_filter": [ + "management_events_filter": [ { - "any_filter": [ + "resource_scope": [ { "resource_id": "home-folder", "resource_type": "resource-manager.folder" @@ -718,38 +718,47 @@ resources: } argumentDocs: any_filter: '- Structure describing that events will be gathered from all cloud resources that belong to the parent resource. Mutually exclusive with some_filter.' - any_filters: '- (Required) List of child resources from which events will be gathered' - bucket_name: '- (Required) Name of the destination bucket' - categories: '- (Required) List of structures describing categories of gathered data plane events' + any_filters: '- (Required) List of child resources from which events will be gathered.' + bucket_name: '- (Required) Name of the destination bucket.' + categories: '- (Required) List of structures describing categories of gathered data plane events.' create: '- Default 5 minutes.' + data_events_filter: '- (Optional) Structure describing filtering process for the service-specific data events.' data_stream_destination: '- Structure describing destination data stream of the trail. Mutually exclusive with logging_destination and storage_destination.' database_id: '- (Required) ID of the YDB hosting the destination data stream.' delete: '- Default 5 minutes.' description: '- (Optional) Description of the trail.' - event_filters: '- Structure describing filtering process for the service-specific data plane events' + event_filters: '- Structure describing filtering process for the service-specific data plane events.' + excluded_events: '- (Optional) A list of events that won''t be gathered by the trail from this service. New events will be automatically gathered when this option is specified. Mutually exclusive with included_events.' filter: '- Structure describing event filtering process for the trail.' + filter.event_filters.categories: blocks. With the introduction of included_events/excluded_events you can configure filtering per each event type. + filter.event_filters.path_filter: with the appropriate resource_scope blocks. You have to account that resource_scope does not support specifying relations between resources, so your configuration will simplify to only the actual resources, that will be monitored. + filter.path_filter: block with the filtering_policy.management_events_filter. New API states management events filtration in a more clear way. The resources, that were specified, must migrate into the filtering_policy.management_events_filter.resource_scope + filtering_policy: '- (Optional) Structure describing event filtering process for the trail. Mutually exclusive with filter. At least one of the management_events_filter or data_events_filter fields will be filled.' folder_id: '- (Required) ID of the folder to which the trail belongs.' + included_events: '- (Optional) A list of events that will be gathered by the trail from this service. New events won''t be gathered by default when this option is specified. Mutually exclusive with excluded_events.' labels: '- (Optional) Labels defined by the user.' - log_group_id: '- (Required) ID of the destination Cloud Logging Group' + log_group_id: '- (Required) ID of the destination Cloud Logging Group.' logging_destination: '- Structure describing destination log group of the trail. Mutually exclusive with storage_destination and data_stream_destination.' + management_events_filter: '- (Optional) Structure describing filtering process for management events.' name: '- (Required) Name of the trail.' - object_prefix: '- (Optional) Additional prefix of the uploaded objects. If not specified, objects will be uploaded with prefix equal to trail_id' - path_filter: '- (Optional) Structure describing filtering process for default control plane events. If omitted, the trail will not deliver this category' - plane: '- (Required) Type of the event by its relation to the cloud resource model. Possible values: CONTROL_PLANE/DATA_PLANE' + object_prefix: '- (Optional) Additional prefix of the uploaded objects. If not specified, objects will be uploaded with prefix equal to trail_id.' + path_filter: '- (Optional) Structure describing filtering process for default control plane events. If omitted, the trail will not deliver this category.' + plane: '- (Required) Type of the event by its relation to the cloud resource model. Possible values: CONTROL_PLANE/DATA_PLANE.' resource_id: '- (Required) ID of the parent resource.' + resource_scope: '- (Required) Structure describing that events will be gathered from the specified resource.' resource_type: '- (Required) Resource type of the parent resource.' - service: '- (Required) ID of the service which events will be gathered' + service: '- (Required) ID of the service which events will be gathered.' service_account_id: '- (Required) ID of the IAM service account that is used by the trail.' some_filter: '- Structure describing that events will be gathered from some of the cloud resources that belong to the parent resource. Mutually exclusive with any_filter.' status: '- Status of this trail.' storage_destination: '- Structure describing destination bucket of the trail. Mutually exclusive with logging_destination and data_stream_destination.' stream_name: '- (Required) Name of the YDS stream belonging to the specified YDB.' trail_id: '- ID of the trail resource.' - type: '- (Required) Type of the event by its operation effect on the resource. Possible values: READ/WRITE' + type: '- (Required) Type of the event by its operation effect on the resource. Possible values: READ/WRITE.' update: '- Default 5 minutes.' importStatements: [] yandex_backup_policy: - subCategory: "" + subCategory: Backup description: Allows management of Yandex.Cloud Backup Policy. name: yandex_backup_policy title: yandex_backup_policy @@ -768,8 +777,12 @@ resources: ], "scheduling": [ { - "enabled": false, - "execute_by_interval": 86400 + "backup_sets": [ + { + "execute_by_interval": 86400 + } + ], + "enabled": false } ], "vm_snapshot_reattempts": [ @@ -809,33 +822,37 @@ resources: ], "scheduling": [ { - "enabled": false, - "execute_by_time": [ - { - "include_last_day_of_month": true, - "monthdays": [], - "months": [ - 1, - 2, - 3, - 4, - 5, - 6, - 7, - 8, - 9, - 10, - 11, - 12 - ], - "repeat_at": [ - "04:10" - ], - "repeat_every": "30m", - "type": "MONTHLY", - "weekdays": [] + "backup_sets": [ + { + "execute_by_time": [ + { + "include_last_day_of_month": true, + "monthdays": [], + "months": [ + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12 + ], + "repeat_at": [ + "04:10" + ], + "repeat_every": "30m", + "type": "MONTHLY", + "weekdays": [] + } + ] } ], + "enabled": false, "max_parallel_backups": 0, "random_max_delay": "30m", "scheme": "ALWAYS_INCREMENTAL", @@ -857,25 +874,16 @@ resources: M: — months after_backup: — Defines whether retention rule applies after creating backup or before. archive_name: '(Optional. Default: [Machine Name]-[Plan ID]-[Unique ID]a) — The name of generated archives.' - cbt: |- - (Optional. Default: DO_NOT_USE) — Configuration of Changed Block Tracking. - Available values are: "USE_IF_ENABLED", "ENABLED_AND_USE", "DO_NOT_USE". - compression: |- - (Optional. Default: NORMAL) — Archive compression level. Affects CPU. - Available values: "NORMAL", "HIGH", "MAX", "OFF". + backup_sets: (Required) - A list of schedules with backup sets that compose the whole scheme. + cbt: '(Optional. Default: DO_NOT_USE) — Configuration of Changed Block Tracking. Available values are: "USE_IF_ENABLED", "ENABLED_AND_USE", "DO_NOT_USE".' + compression: '(Optional. Default: NORMAL) — Archive compression level. Affects CPU. Available values: "NORMAL", "HIGH", "MAX", "OFF".' d: — days enabled: '(Optional. Default: true) — Enable flag' - execute_by_interval: |- - (Optional) — Perform backup by interval, since last backup of the host. Maximum value is: 9999 days. - See interval_type for available values. Exactly on of options should be set: execute_by_interval or execute_by_time. + execute_by_interval: '(Optional) — Perform backup by interval, since last backup of the host. Maximum value is: 9999 days. See interval_type for available values. Exactly on of options should be set: execute_by_interval or execute_by_time.' execute_by_time: '(Optional) — Perform backup periodically at specific time. Exactly on of options should be set: execute_by_interval or execute_by_time.' - format: |- - (Optional. Default: AUTO) — Format of the backup. It's strongly recommend to leave this option empty or "AUTO". - Available values: "AUTO", "VERSION_11", "VERSION_12". + format: '(Optional. Default: AUTO) — Format of the backup. It''s strongly recommend to leave this option empty or "AUTO". Available values: "AUTO", "VERSION_11", "VERSION_12".' h: — hours - include_last_day_of_month: |- - (Optional. Default: false) — If true, schedule will be applied on the last day of month. - See day_type for available values. + include_last_day_of_month: '(Optional. Default: false) — If true, schedule will be applied on the last day of month. See day_type for available values.' interval: '(Optional. Default: "5m") — Retry interval. See interval_type for available values' m: — minutes max_age: (Conflicts with max_count) — Deletes backups that older than max_age. Exactly one of max_count or max_age should be set. @@ -888,39 +896,149 @@ resources: performance_window_enabled: '(Optional. Default: false) — Time windows for performance limitations of backup.' preserve_file_security_settings: '(Optional. Default: true) — Preserves file security settings. It''s better to set this option to true.' quiesce_snapshotting_enabled: '(Optional. Default: false) — If true, a quiesced snapshot of the virtual machine will be taken.' - random_max_delay: |- - (Optional. Default: 30m) — Configuration of the random delay between the execution of parallel tasks. - See interval_type for available values. - reattempts: |- - (Required) — Amount of reattempts that should be performed while trying to make backup at the host. - This attribute consists of the following parameters: + random_max_delay: '(Optional. Default: 30m) — Configuration of the random delay between the execution of parallel tasks. See interval_type for available values.' + reattempts: '(Required) — Amount of reattempts that should be performed while trying to make backup at the host. This attribute consists of the following parameters:' repeat_at: '(Optional. Default: []) — List of time in format "HH:MM" (24-hours format), when the schedule applies.' repeat_every: (Optional) — Frequency of backup repetition. See interval_type for available values. - retention: |- - (Required) — Retention policy for backups. Allows to setup backups lifecycle. - This attribute consists of the following parameters: + retention: '(Required) — Retention policy for backups. Allows to setup backups lifecycle. This attribute consists of the following parameters:' s: — seconds scheduling: (Required) — Schedule settings for creating backups on the host. - scheme: |- - (Optional. Default: ALWAYS_INCREMENTAL) — Scheme of the backups. - Available values are: "ALWAYS_INCREMENTAL", "ALWAYS_FULL", "WEEKLY_FULL_DAILY_INCREMENTAL", 'WEEKLY_INCREMENTAL". + scheme: '(Optional. Default: ALWAYS_INCREMENTAL) — Scheme of the backups. Available values are: "ALWAYS_INCREMENTAL", "ALWAYS_FULL", "WEEKLY_FULL_DAILY_INCREMENTAL", ''WEEKLY_INCREMENTAL".' silent_mode_enabled: '(Optional. Default: true) — if true, a user interaction will be avoided when possible.' splitting_bytes: (Optional. Default 9223372036854775807) — determines the size to split backups. It's better to leave this option unchanged. type: '(Required) — Type of the scheduling. Available values are: "HOURLY", "DAILY", "WEEKLY", "MONTHLY".' - vm_snapshot_reattempts: |- - (Requied) — Amount of reattempts that should be performed while trying to make snapshot. - This attribute consists of the following parameters: - vss_provider: |- - (Optional. Default: NATIVE) — Settings for the volume shadow copy service. - Available values are: "NATIVE", "TARGET_SYSTEM_DEFINED" + vm_snapshot_reattempts: '(Requied) — Amount of reattempts that should be performed while trying to make snapshot. This attribute consists of the following parameters:' + vss_provider: '(Optional. Default: NATIVE) — Settings for the volume shadow copy service. Available values are: "NATIVE", "TARGET_SYSTEM_DEFINED"' w: — weekdays weekdays: '(Optional. Default: []) — List of weekdays when the backup will be applied. Used in "WEEKLY" type.' - weekly_backup_day: |- - (Optional. Default: MONDAY) — A day of week to start weekly backups. - See day_type for available values. + weekly_backup_day: '(Optional. Default: MONDAY) — A day of week to start weekly backups. See day_type for available values.' + importStatements: [] + yandex_backup_policy_bindings: + subCategory: Backup + description: Allows to bind compute instance with backup policy. + name: yandex_backup_policy_bindings + title: yandex_backup_policy_bindings + examples: + - name: test_backup_binding + manifest: |- + { + "instance_id": "${yandex_compute_instance.test_backup_compute.id}", + "policy_id": "${data.yandex_backup_policy.test_backup_policy.id}" + } + references: + instance_id: yandex_compute_instance.test_backup_compute.id + policy_id: data.yandex_backup_policy.test_backup_policy.id + dependencies: + yandex_compute_instance.test_backup_compute: |- + { + "boot_disk": [ + { + "initialize_params": [ + { + "image_id": "${data.yandex_compute_image.ubuntu.id}" + } + ] + } + ], + "metadata": { + "user-data": "#cloud-config\npackages:\n - curl\n - perl\n - jq\nruncmd:\n - curl https://storage.yandexcloud.net/backup-distributions/agent_installer.sh | sudo bash\n" + }, + "name": "test-backup-compute", + "network_interface": [ + { + "nat": true, + "security_group_ids": [ + "${yandex_vpc_security_group.test_backup_security_group.id}" + ], + "subnet_id": "${yandex_vpc_subnet.test_backup_subnet.id}" + } + ], + "platform_id": "standard-v1", + "resources": [ + { + "cores": 2, + "memory": 4 + } + ], + "service_account_id": "${yandex_iam_service_account.test_sa.id}", + "zone": "ru-central1-a" + } + yandex_iam_service_account.test_sa: |- + { + "name": "sa-backup-editor" + } + yandex_resourcemanager_folder_iam_member.test_binding: |- + { + "folder_id": "${yandex_iam_service_account.test_sa.folder_id}", + "member": "serviceAccount:${yandex_iam_service_account.test_sa.id}", + "role": "backup.editor" + } + yandex_vpc_network.test_backup_network: '{}' + yandex_vpc_security_group.test_backup_security_group: |- + { + "egress": [ + { + "from_port": 7770, + "protocol": "TCP", + "to_port": 7800, + "v4_cidr_blocks": [ + "84.47.172.0/24" + ] + }, + { + "port": 443, + "protocol": "TCP", + "v4_cidr_blocks": [ + "213.180.204.0/24", + "213.180.193.0/24", + "178.176.128.0/24", + "84.201.181.0/24", + "84.47.172.0/24" + ] + }, + { + "port": 80, + "protocol": "TCP", + "v4_cidr_blocks": [ + "213.180.204.0/24", + "213.180.193.0/24" + ] + }, + { + "port": 8443, + "protocol": "TCP", + "v4_cidr_blocks": [ + "84.47.172.0/24" + ] + }, + { + "port": 44445, + "protocol": "TCP", + "v4_cidr_blocks": [ + "51.250.1.0/24" + ] + } + ], + "name": "cloud-backup", + "network_id": "${yandex_vpc_network.test_backup_network.id}" + } + yandex_vpc_subnet.test_backup_subnet: |- + { + "network_id": "${yandex_vpc_network.test_backup_network.id}", + "v4_cidr_blocks": [ + "192.168.0.0/24" + ], + "zone": "ru-central1-a" + } + argumentDocs: + created_at: (Computed) - Creation timestamp of the Yandex Cloud Policy Bindings. + enabled: (Computed) - Boolean flag that specifies whether the policy application is enabled. May be false if processing flag is true. + instance_id: (Required) — Compute Cloud instance ID. + policy_id: (Required) — Backup Policy ID. + processing: (Computed) - Boolean flag that specifies whether the policy is in the process of binding to an instance. importStatements: [] yandex_billing_cloud_binding: - subCategory: "" + subCategory: Billing description: Bind cloud to billing account. name: yandex_billing_cloud_binding title: yandex_billing_cloud_binding @@ -936,7 +1054,7 @@ resources: cloud_id: '- (Required) ID of cloud to bind.' importStatements: [] yandex_cdn_origin_group: - subCategory: "" + subCategory: CDN (Content Delivery Network) description: Allows management of a Yandex.Cloud CDN Origin Groups. name: yandex_cdn_origin_group title: yandex_cdn_origin_group @@ -972,7 +1090,7 @@ resources: use_next: (Optional) - If the option is active (has true value), in case the origin responds with 4XX or 5XX codes, use the next origin from the list. importStatements: [] yandex_cdn_resource: - subCategory: "" + subCategory: CDN (Content Delivery Network) description: Allows management of a Yandex.Cloud CDN Resource. name: yandex_cdn_resource title: yandex_cdn_resource @@ -1018,7 +1136,7 @@ resources: disable_cache: '- setup a cache status.' disable_proxy_force_ranges: '- disabling proxy force ranges.' edge_cache_settings: '- content will be cached according to origin cache settings. The value applies for a response with codes 200, 201, 204, 206, 301, 302, 303, 304, 307, 308 if an origin server does not have caching HTTP headers. Responses with other codes will not be cached.' - enable_ip_url_signing: '- enable access limiting by IP addresses, option available only with setting secure_key.' + enable_ip_url_signing: '- enable access limiting by IP addresses, option available only with setting secure_key.' fetched_compressed: '- option helps you to reduce the bandwidth between origin and CDN servers. Also, content delivery speed becomes higher because of reducing the time for compressing files in a CDN.' forward_host_header: '- choose the Forward Host header option if is important to send in the request to the Origin the same Host header as was sent in the request to CDN server.' gzip_on: '- GZip compression at CDN servers reduces file size by 70% and can be as high as 90%.' @@ -1037,13 +1155,13 @@ resources: secure_key: '- set secure key for url encoding to protect contect and limit access by IP addresses and time limits.' slice: '- files larger than 10 MB will be requested and cached in parts (no larger than 10 MB each part). It reduces time to first byte. The origin must support HTTP Range requests.' ssl_certificate: (Optional) - SSL certificate of CDN resource. - stale: '- list of errors which instruct CDN servers to serve stale content to clients.' + stale: '- list of errors which instruct CDN servers to serve stale content to clients.' static_request_headers: '- set up custom headers that CDN servers will send in requests to origins.' static_response_headers: '- set up custom headers that CDN servers will send in response to clients.' update: '- Default is 5 minutes.' importStatements: [] yandex_cm_certificate: - subCategory: "" + subCategory: Certificate Manager description: A TLS certificate signed by a certification authority confirming that it belongs to the owner of the domain name. name: yandex_cm_certificate title: yandex_cm_certificate @@ -1149,10 +1267,7 @@ resources: issuer: '- Certificate issuer.' labels: '- (Optional) Labels to assign to this certificate.' managed: '- (Optional) Managed specification. Structure is documented below.' - managed.challenge_count: |- - - (Optional). Expected number of challenge count needed to validate certificate. - Resource creation will fail if the specified value does not match the actual number of challenges received from issue provider. - This argument is helpful for safe automatic resource creation for passing challenges for multi-domain certificates. + managed.challenge_count: '- (Optional). Expected number of challenge count needed to validate certificate. Resource creation will fail if the specified value does not match the actual number of challenges received from issue provider. This argument is helpful for safe automatic resource creation for passing challenges for multi-domain certificates.' managed.challenge_type: '- (Required) Domain owner-check method. Possible values:' name: '- (Optional) Certificate name.' not_after: '- Certificate end valid period.' @@ -1165,14 +1280,14 @@ resources: self_managed.private_key_lockbox_secret.id: '- (Required) Lockbox secret Id.' self_managed.private_key_lockbox_secret.key: '- (Required) Key of the Lockbox secret, the value of which contains the private key of the certificate.' serial: '- Certificate serial number.' - status: '- Certificate status: "VALIDATING", "INVALID", "ISSUED", "REVOKED", "RENEWING" or "RENEWAL_FAILED".' + status: '- Certificate status: "VALIDATING", "INVALID", "ISSUED", "REVOKED", "RENEWING" or "RENEWAL_FAILED".' subject: '- Certificate subject.' type: '- Certificate type: "MANAGED" or "IMPORTED".' update: '- Default is 1 minute.' updated_at: '- Certificate update timestamp.' importStatements: [] yandex_compute_disk: - subCategory: "" + subCategory: Compute description: Persistent disks are durable storage devices that function similarly to the physical disks in a desktop or a server. name: yandex_compute_disk title: yandex_compute_disk @@ -1213,46 +1328,30 @@ resources: create: '- Default is 5 minutes.' created_at: '- Creation timestamp of the disk.' delete: '- Default is 5 minutes.' - description: |- - - - (Optional) Description of the disk. Provide this property when - you create a resource. + description: '- (Optional) Description of the disk. Provide this property when you create a resource.' disk_placement_policy: '- (Optional) Disk placement policy configuration. The structure is documented below.' disk_placement_policy.disk_placement_group_id: '- (Required) Specifies Disk Placement Group id.' - folder_id: |- - - - (Optional) The ID of the folder that the disk belongs to. - If it is not provided, the default provider folder is used. - image_id: '- (Optional) The source image to use for disk creation.' - labels: |- - - - (Optional) - Labels to assign to this disk. A list of key/value pairs. - name: |- - - - (Optional) - Name of the disk. Provide this property when - you create a resource. - size: |- - - - (Optional) - Size of the persistent disk, specified in GB. You can specify this - field when creating a persistent disk using the image_id or snapshot_id - parameter, or specify it alone to create an empty persistent disk. - If you specify this field along with image_id or snapshot_id, - the size value must not be less than the size of the source image - or the size of the snapshot. + folder_id: '- (Optional) The ID of the folder that the disk belongs to. If it is not provided, the default provider folder is used.' + hardware_generation: |- + - (Optional) Hardware generation and its features, + which will be applied to the instance when this disk is used as a boot + disk. Provide this property if you wish to override this value, which + otherwise is inherited from the source. The structure is documented below. + hardware_generation.generation2_features: '- A newer hardware generation, which always uses PCI_TOPOLOGY_V2 and UEFI boot.' + hardware_generation.legacy_features: '- Defines the first known hardware generation and its features, which are:' + image_id: '- (Optional) The source image to use for disk creation.' + labels: '- (Optional) Labels to assign to this disk. A list of key/value pairs.' + name: '- (Optional) Name of the disk. Provide this property when you create a resource.' + pci_topology: '- A variant of PCI topology, one of PCI_TOPOLOGY_V1 or PCI_TOPOLOGY_V2.' + size: '- (Optional) Size of the persistent disk, specified in GB. You can specify this field when creating a persistent disk using the image_id or snapshot_id parameter, or specify it alone to create an empty persistent disk. If you specify this field along with image_id or snapshot_id, the size value must not be less than the size of the source image or the size of the snapshot.' snapshot_id: '- (Optional) The source snapshot to use for disk creation.' status: '- The status of the disk.' type: '- (Optional) Type of disk to create. Provide this when creating a disk.' update: '- Default is 5 minutes.' - zone: |- - - - (Optional) - Availability zone where the disk will reside. + zone: '- (Optional) Availability zone where the disk will reside.' importStatements: [] yandex_compute_disk_iam_binding: - subCategory: "" + subCategory: Compute description: Allows management of a single IAM binding for a Disk. name: yandex_compute_disk_iam_binding title: yandex_compute_disk_iam_binding @@ -1266,6 +1365,8 @@ resources: ], "role": "editor" } + references: + disk_id: data.yandex_compute_disk.disk1.id dependencies: yandex_compute_disk.disk1: |- { @@ -1279,15 +1380,11 @@ resources: } argumentDocs: disk_id: '- (Required) ID of the disk to attach the policy to.' - members: |- - - (Required) An array of identities that will be granted the privilege in the role. - Each entry can have one of the following values: - role: |- - - (Required) The role that should be assigned. Only one - yandex_compute_disk_iam_binding can be used per role. + members: '- (Required) An array of identities that will be granted the privilege in the role. Each entry can have one of the following values:' + role: '- (Required) The role that should be assigned. Only one yandex_compute_disk_iam_binding can be used per role.' importStatements: [] yandex_compute_disk_placement_group: - subCategory: "" + subCategory: Compute description: Manages a Disk Placement Group resource. name: yandex_compute_disk_placement_group title: yandex_compute_disk_placement_group @@ -1308,10 +1405,10 @@ resources: name: '- (Optional) The name of the Disk Placement Group.' status: '- Status of the Disk Placement Group.' update: '- Default is 1 minute.' - zone: '- ID of the zone where the Disk Placement Group resides.' + zone: '- ID of the zone where the Disk Placement Group resides. Default is ru-central1-b' importStatements: [] yandex_compute_disk_placement_group_iam_binding: - subCategory: "" + subCategory: Compute description: Allows management of a single IAM binding for a Disk Placement Group. name: yandex_compute_disk_placement_group_iam_binding title: yandex_compute_disk_placement_group_iam_binding @@ -1325,6 +1422,8 @@ resources: ], "role": "editor" } + references: + disk_placement_group_id: data.yandex_compute_disk_placement_group.group1.id dependencies: yandex_compute_disk_placement_group.group1: |- { @@ -1334,15 +1433,11 @@ resources: } argumentDocs: disk_placement_group_id: '- (Required) ID of the disk placement group to attach the policy to.' - members: |- - - (Required) An array of identities that will be granted the privilege in the role. - Each entry can have one of the following values: - role: |- - - (Required) The role that should be assigned. Only one - yandex_compute_disk_placement_group_iam_binding can be used per role. + members: '- (Required) An array of identities that will be granted the privilege in the role. Each entry can have one of the following values:' + role: '- (Required) The role that should be assigned. Only one yandex_compute_disk_placement_group_iam_binding can be used per role.' importStatements: [] yandex_compute_filesystem: - subCategory: "" + subCategory: Compute description: File storage is a virtual file system that can be attached to multiple Compute Cloud VMs in the same availability zone. name: yandex_compute_filesystem title: yandex_compute_filesystem @@ -1364,12 +1459,8 @@ resources: created_at: '- Creation timestamp of the filesystem.' delete: '- Default is 5 minutes.' description: '- (Optional) Description of the filesystem. Provide this property when you create a resource.' - folder_id: |- - - (Optional) The ID of the folder that the filesystem belongs to. If it is not provided, the default - provider folder is used. - labels: |- - - (Optional) Labels to assign to this filesystem. A list of key/value pairs. For details about the concept, - see documentation. + folder_id: '- (Optional) The ID of the folder that the filesystem belongs to. If it is not provided, the default provider folder is used.' + labels: '- (Optional) Labels to assign to this filesystem. A list of key/value pairs. For details about the concept, see documentation.' name: '- (Optional) Name of the filesystem. Provide this property when you create a resource.' size: '- (Optional) Size of the filesystem, specified in GB.' status: '- The status of the filesystem.' @@ -1378,7 +1469,7 @@ resources: zone: '- (Optional) Availability zone where the filesystem will reside.' importStatements: [] yandex_compute_filesystem_iam_binding: - subCategory: "" + subCategory: Compute description: Allows management of a single IAM binding for a Filesystem. name: yandex_compute_filesystem_iam_binding title: yandex_compute_filesystem_iam_binding @@ -1392,6 +1483,8 @@ resources: ], "role": "editor" } + references: + filesystem_id: data.yandex_compute_filesystem.fs1.id dependencies: yandex_compute_filesystem.fs1: |- { @@ -1405,15 +1498,11 @@ resources: } argumentDocs: filesystem_id: '- (Required) ID of the filesystem to attach the policy to.' - members: |- - - (Required) An array of identities that will be granted the privilege in the role. - Each entry can have one of the following values: - role: |- - - (Required) The role that should be assigned. Only one - yandex_compute_filesystem_iam_binding can be used per role. + members: '- (Required) An array of identities that will be granted the privilege in the role. Each entry can have one of the following values:' + role: '- (Required) The role that should be assigned. Only one yandex_compute_filesystem_iam_binding can be used per role.' importStatements: [] yandex_compute_gpu_cluster: - subCategory: "" + subCategory: Compute description: GPU Cluster connects multiple Compute GPU Instances in the same availability zone with high-speed low-latency network. name: yandex_compute_gpu_cluster title: yandex_compute_gpu_cluster @@ -1433,22 +1522,16 @@ resources: created_at: '- Creation timestamp of the GPU cluster.' delete: '- Default is 5 minutes.' description: '- (Optional) Description of the GPU cluster. Provide this property when you create a resource.' - folder_id: |- - - (Optional) The ID of the folder that the GPU cluster belongs to. If it is not provided, the default - provider folder is used. - interconnect_type: |- - - (Optional) Type of interconnect between nodes to use in GPU cluster. Type infiniband is set by default, - and it is the only one available at the moment. - labels: |- - - (Optional) Labels to assign to this GPU cluster. A list of key/value pairs. For details about the concept, - see documentation. + folder_id: '- (Optional) The ID of the folder that the GPU cluster belongs to. If it is not provided, the default provider folder is used.' + interconnect_type: '- (Optional) Type of interconnect between nodes to use in GPU cluster. Type infiniband is set by default, and it is the only one available at the moment.' + labels: '- (Optional) Labels to assign to this GPU cluster. A list of key/value pairs. For details about the concept, see documentation.' name: '- (Optional) Name of the GPU cluster. Provide this property when you create a resource.' status: '- The status of the GPU cluster.' update: '- Default is 5 minutes.' zone: '- (Optional) Availability zone where the GPU cluster will reside.' importStatements: [] yandex_compute_gpu_cluster_iam_binding: - subCategory: "" + subCategory: Compute description: Allows management of a single IAM binding for a GPU Cluster. name: yandex_compute_gpu_cluster_iam_binding title: yandex_compute_gpu_cluster_iam_binding @@ -1462,6 +1545,8 @@ resources: ], "role": "editor" } + references: + gpu_cluster_id: data.yandex_compute_gpu_cluster.cluster1.id dependencies: yandex_compute_gpu_cluster.cluster1: |- { @@ -1474,15 +1559,11 @@ resources: } argumentDocs: gpu_cluster_id: '- (Required) ID of the gpu cluster to attach the policy to.' - members: |- - - (Required) An array of identities that will be granted the privilege in the role. - Each entry can have one of the following values: - role: |- - - (Required) The role that should be assigned. Only one - yandex_compute_gpu_cluster_iam_binding can be used per role. + members: '- (Required) An array of identities that will be granted the privilege in the role. Each entry can have one of the following values:' + role: '- (Required) The role that should be assigned. Only one yandex_compute_gpu_cluster_iam_binding can be used per role.' importStatements: [] yandex_compute_image: - subCategory: "" + subCategory: Compute description: Creates a VM image for the Yandex Compute service from an existing tarball. name: yandex_compute_image title: yandex_compute_image @@ -1511,43 +1592,26 @@ resources: create: '- Default 5 minutes' created_at: '- Creation timestamp of the image.' delete: '- Default 5 minutes' - description: |- - - (Optional) An optional description of the image. Provide this property when - you create a resource. + description: '- (Optional) An optional description of the image. Provide this property when you create a resource.' family: '- (Optional) The name of the image family to which this image belongs.' - folder_id: |- - - (Optional) The ID of the folder that the resource belongs to. If it - is not provided, the default provider folder is used. + folder_id: '- (Optional) The ID of the folder that the resource belongs to. If it is not provided, the default provider folder is used.' labels: '- (Optional) A set of key/value label pairs to assign to the image.' min_disk_size: '- (Optional) Minimum size in GB of the disk that will be created from this image.' name: '- (Optional) Name of the disk.' os_type: '- (Optional) Operating system type that is contained in the image. Possible values: "LINUX", "WINDOWS".' pooled: '- (Optional) Optimize the image to create a disk.' - product_ids: |- - - (Optional) License IDs that indicate which licenses are - attached to this image. + product_ids: '- (Optional) License IDs that indicate which licenses are attached to this image.' size: '- The size of the image, specified in GB.' - source_disk: |- - - (Optional) The ID of a disk to use as the source of the - image. Changing this ID forces a new resource to be created. - source_family: |- - - (Optional) The name of the family to use as the source of the new image. - The ID of the latest image is taken from the "standard-images" folder. Changing the family forces - a new resource to be created. - source_image: |- - - (Optional) The ID of an existing image to use as the source of the - image. Changing this ID forces a new resource to be created. - source_snapshot: |- - - (Optional) The ID of a snapshot to use as the source of the - image. Changing this ID forces a new resource to be created. - source_url: |- - - (Optional) The URL to use as the source of the - image. Changing this URL forces a new resource to be created. + source_disk: '- (Optional) The ID of a disk to use as the source of the image. Changing this ID forces a new resource to be created.' + source_family: '- (Optional) The name of the family to use as the source of the new image. The ID of the latest image is taken from the "standard-images" folder. Changing the family forces a new resource to be created.' + source_image: '- (Optional) The ID of an existing image to use as the source of the image. Changing this ID forces a new resource to be created.' + source_snapshot: '- (Optional) The ID of a snapshot to use as the source of the image. Changing this ID forces a new resource to be created.' + source_url: '- (Optional) The URL to use as the source of the image. Changing this URL forces a new resource to be created.' status: '- The status of the image.' update: '- Default 5 minutes' importStatements: [] yandex_compute_image_iam_binding: - subCategory: "" + subCategory: Compute description: Allows management of a single IAM binding for an image. name: yandex_compute_image_iam_binding title: yandex_compute_image_iam_binding @@ -1561,6 +1625,8 @@ resources: ], "role": "editor" } + references: + image_id: data.yandex_compute_image.image1.id dependencies: yandex_compute_image.image1: |- { @@ -1569,15 +1635,11 @@ resources: } argumentDocs: image_id: '- (Required) ID of the image to attach the policy to.' - members: |- - - (Required) An array of identities that will be granted the privilege in the role. - Each entry can have one of the following values: - role: |- - - (Required) The role that should be assigned. Only one - yandex_compute_image_iam_binding can be used per role. + members: '- (Required) An array of identities that will be granted the privilege in the role. Each entry can have one of the following values:' + role: '- (Required) The role that should be assigned. Only one yandex_compute_image_iam_binding can be used per role.' importStatements: [] yandex_compute_instance: - subCategory: "" + subCategory: Compute description: Manages a VM instance resource. name: yandex_compute_instance title: yandex_compute_instance @@ -1612,6 +1674,7 @@ resources: } references: boot_disk.disk_id: yandex_compute_disk.boot-disk.id + network_interface.subnet_id: yandex_vpc_subnet.foo.id dependencies: yandex_vpc_network.foo: '{}' yandex_vpc_subnet.foo: |- @@ -1623,20 +1686,12 @@ resources: "zone": "ru-central1-a" } argumentDocs: - allow_stopping_for_update: |- - - (Optional) If true, allows Terraform to stop the instance in order to update its properties. - If you try to update a property that requires stopping the instance without setting this field, the update will fail. + allow_stopping_for_update: '- (Optional) If true, allows Terraform to stop the instance in order to update its properties. If you try to update a property that requires stopping the instance without setting this field, the update will fail.' boot_disk: '- (Required) The boot disk for the instance. The structure is documented below.' - boot_disk.auto_delete: |- - - (Optional) Defines whether the disk will be auto-deleted when the instance - is deleted. The default value is True. + boot_disk.auto_delete: '- (Optional) Defines whether the disk will be auto-deleted when the instance is deleted. The default value is True.' boot_disk.device_name: '- (Optional) Name that can be used to access an attached disk.' - boot_disk.disk_id: |- - - (Optional) The ID of the existing disk (such as those managed by - yandex_compute_disk) to attach as a boot disk. - boot_disk.initialize_params: |- - - (Optional) Parameters for a new disk that will be created - alongside the new instance. Either initialize_params or disk_id must be set. The structure is documented below. + boot_disk.disk_id: '- (Optional) The ID of the existing disk (such as those managed by yandex_compute_disk) to attach as a boot disk.' + boot_disk.initialize_params: '- (Optional) Parameters for a new disk that will be created alongside the new instance. Either initialize_params or disk_id must be set. The structure is documented below.' boot_disk.mode: '- (Optional) Type of access to the disk resource. By default, a disk is attached in READ_WRITE mode.' create: '- Default 5 minutes' created_at: '- Creation timestamp of the instance.' @@ -1649,22 +1704,14 @@ resources: filesystem: '- (Optional) List of filesystems that are attached to the instance. Structure is documented below.' filesystem.device_name: '- (Optional) Name of the device representing the filesystem on the instance.' filesystem.filesystem_id: '- (Required) ID of the filesystem that should be attached.' - filesystem.mode: |- - - (Optional) Mode of access to the filesystem that should be attached. By default, filesystem is attached - in READ_WRITE mode. - folder_id: |- - - (Optional) The ID of the folder that the resource belongs to. If it - is not provided, the default provider folder is used. + filesystem.mode: '- (Optional) Mode of access to the filesystem that should be attached. By default, filesystem is attached in READ_WRITE mode.' + folder_id: '- (Optional) The ID of the folder that the resource belongs to. If it is not provided, the default provider folder is used.' fqdn: '- The fully qualified DNS name of this instance.' gpu_cluster_id: '- (Optional) ID of the GPU cluster to attach this instance to. The GPU cluster must exist in the same zone as the instance.' host_affinity_rules.key: '- (Required) Affinity label or one of reserved values - yc.hostId, yc.hostGroupId.' host_affinity_rules.op: '- (Required) Affinity action. The only value supported is IN.' host_affinity_rules.value: '- (Required) List of values (host IDs or host group IDs).' - hostname: |- - - (Optional) Host name for the instance. This field is used to generate the instance fqdn value. - The host name must be unique within the network and region. If not specified, the host name will be equal - to id of the instance and fqdn will be .auto.internal. - Otherwise FQDN will be ..internal. + hostname: '- (Optional) Host name for the instance. This field is used to generate the instance fqdn value. The host name must be unique within the network and region. If not specified, the host name will be equal to id of the instance and fqdn will be .auto.internal. Otherwise FQDN will be ..internal.' initialize_params.block_size: '- (Optional) Block size of the disk, specified in bytes.' initialize_params.description: '- (Optional) Description of the boot disk.' initialize_params.image_id: '- (Optional) A disk image to initialize this disk from.' @@ -1682,9 +1729,7 @@ resources: local_disk.size_bytes: '- (Required) Size of the disk, specified in bytes.' maintenance_grace_period: '- (Optional) Time between notification via metadata service and maintenance. E.g., 60s.' maintenance_policy: '- (Optional) Behaviour on maintenance events. The default is unspecified. Values: unspecified, migrate, restart.' - metadata: |- - - (Optional) Metadata key/value pairs to make available from - within the instance. + metadata: '- (Optional) Metadata key/value pairs to make available from within the instance.' metadata_options: '- (Optional) Options allow user to configure access to instance''s metadata' name: '- (Optional) Resource name.' nat_dns_record.dns_zone_id: '- (Optional) DNS zone ID (if not set, private zone used).' @@ -1692,32 +1737,21 @@ resources: nat_dns_record.ptr: '- (Optional) When set to true, also create a PTR DNS record.' nat_dns_record.ttl: '- (Optional) DNS record TTL. in seconds' network_acceleration_type: '- (Optional) Type of network acceleration. The default is standard. Values: standard, software_accelerated' - network_interface: |- - - (Required) Networks to attach to the instance. This can - be specified multiple times. The structure is documented below. + network_interface: '- (Required) Networks to attach to the instance. This can be specified multiple times. The structure is documented below.' network_interface.0.ip_address: '- The internal IP address of the instance.' network_interface.0.nat_ip_address: '- The external IP address of the instance.' network_interface.dns_record: '- (Optional) List of configurations for creating ipv4 DNS records. The structure is documented below.' - network_interface.index: |- - - (Optional) Index of network interface, will be calculated automatically for instance create or update operations - if not specified. Required for attach/detach operations. - network_interface.ip_address: |- - - (Optional) The private IP address to assign to the instance. If - empty, the address will be automatically assigned from the specified subnet. + network_interface.index: '- (Optional) Index of network interface, will be calculated automatically for instance create or update operations if not specified. Required for attach/detach operations.' + network_interface.ip_address: '- (Optional) The private IP address to assign to the instance. If empty, the address will be automatically assigned from the specified subnet.' network_interface.ipv4: '- (Optional) Allocate an IPv4 address for the interface. The default value is true.' - network_interface.ipv6: |- - - (Optional) If true, allocate an IPv6 address for the interface. - The address will be automatically assigned from the specified subnet. + network_interface.ipv6: '- (Optional) If true, allocate an IPv6 address for the interface. The address will be automatically assigned from the specified subnet.' network_interface.ipv6_address: '- (Optional) The private IPv6 address to assign to the instance.' network_interface.ipv6_dns_record: '- (Optional) List of configurations for creating ipv6 DNS records. The structure is documented below.' network_interface.nat: '- (Optional) Provide a public address, for instance, to access the internet over NAT.' network_interface.nat_dns_record: '- (Optional) List of configurations for creating ipv4 NAT DNS records. The structure is documented below.' network_interface.nat_ip_address: '- (Optional) Provide a public address, for instance, to access the internet over NAT. Address should be already reserved in web UI.' network_interface.security_group_ids: '- (Optional) Security group ids for network interface.' - network_interface.subnet_id: |- - - (Required) ID of the subnet to attach this - interface to. The subnet must exist in the same zone where this instance will be - created. + network_interface.subnet_id: '- (Required) ID of the subnet to attach this interface to. The subnet must exist in the same zone where this instance will be created.' placement_policy: '- (Optional) The placement policy configuration. The structure is documented below.' placement_policy.host_affinity_rules: '- (Optional) List of host affinity rules. The structure is documented below.' placement_policy.placement_group_id: '- (Optional) Specifies the id of the Placement Group to assign to the instance.' @@ -1729,26 +1763,18 @@ resources: resources.memory: '- (Required) Memory size in GB.' scheduling_policy: '- (Optional) Scheduling policy configuration. The structure is documented below.' scheduling_policy.preemptible: '- (Optional) Specifies if the instance is preemptible. Defaults to false.' - secondary_disk: |- - - (Optional) A set of disks to attach to the instance. The structure is documented below. - Note: The allow_stopping_for_update property must be set to true in order to update this structure. - secondary_disk.auto_delete: |- - - (Optional) Whether the disk is auto-deleted when the instance - is deleted. The default value is false. - secondary_disk.device_name: |- - - (Optional) Name that can be used to access an attached disk - under /dev/disk/by-id/. + secondary_disk: '- (Optional) A set of disks to attach to the instance. The structure is documented below. Note: The allow_stopping_for_update property must be set to true in order to update this structure.' + secondary_disk.auto_delete: '- (Optional) Whether the disk is auto-deleted when the instance is deleted. The default value is false.' + secondary_disk.device_name: '- (Optional) Name that can be used to access an attached disk under /dev/disk/by-id/.' secondary_disk.disk_id: '- (Required) ID of the disk that is attached to the instance.' secondary_disk.mode: '- (Optional) Type of access to the disk resource. By default, a disk is attached in READ_WRITE mode.' service_account_id: '- (Optional) ID of the service account authorized for this instance.' status: '- The status of this instance.' update: '- Default 5 minutes' - zone: |- - - (Optional) The availability zone where the virtual machine will be created. If it is not provided, - the default provider folder is used. + zone: '- (Optional) The availability zone where the virtual machine will be created. If it is not provided, the default provider folder is used.' importStatements: [] yandex_compute_instance_group: - subCategory: "" + subCategory: Compute description: Manages an Instance group resource. name: yandex_compute_instance_group title: yandex_compute_instance_group @@ -1832,6 +1858,11 @@ resources: "test_key2": "test_value2" } } + references: + folder_id: data.yandex_resourcemanager_folder.test_folder.id + instance_template.boot_disk.initialize_params.image_id: data.yandex_compute_image.ubuntu.id + instance_template.network_interface.network_id: yandex_vpc_network.my-inst-group-network.id + service_account_id: yandex_iam_service_account.test_account.id argumentDocs: allocation_policy: '- (Required) The allocation policy of the instance group by zone and region. The structure is documented below.' allocation_policy.instance_tags_pool: '- (Optional) Array of availability zone IDs with list of instance tags.' @@ -1842,22 +1873,15 @@ resources: application_load_balancer.target_group_description: '- (Optional) A description of the target group.' application_load_balancer.target_group_labels: '- (Optional) A set of key/value label pairs.' application_load_balancer.target_group_name: '- (Optional) The name of the target group.' + auto_scale.auto_scale_type: '- (Optional). Autoscale type, can be ZONAL or REGIONAL. By default ZONAL type is used.' auto_scale.cpu_utilization_target: '- (Required) Target CPU load level.' auto_scale.custom_rule: '- (Optional) A list of custom rules. The structure is documented below.' auto_scale.initial_size: '- (Required) The initial number of instances in the instance group.' auto_scale.max_size: '- (Optional) The maximum number of virtual machines in the group.' - auto_scale.measurement_duration: |- - - (Required) The amount of time, in seconds, that metrics are averaged for. - If the average value at the end of the interval is higher than the cpu_utilization_target, - the instance group will increase the number of virtual machines in the group. + auto_scale.measurement_duration: '- (Required) The amount of time, in seconds, that metrics are averaged for. If the average value at the end of the interval is higher than the cpu_utilization_target, the instance group will increase the number of virtual machines in the group.' auto_scale.min_zone_size: '- (Optional) The minimum number of virtual machines in a single availability zone.' - auto_scale.stabilization_duration: |- - - (Optional) The minimum time interval, in seconds, to monitor the load before - an instance group can reduce the number of virtual machines in the group. During this time, the group - will not decrease even if the average load falls below the value of cpu_utilization_target. - auto_scale.warmup_duration: |- - - (Optional) The warm-up time of the virtual machine, in seconds. During this time, - traffic is fed to the virtual machine, but load metrics are not taken into account. + auto_scale.stabilization_duration: '- (Optional) The minimum time interval, in seconds, to monitor the load before an instance group can reduce the number of virtual machines in the group. During this time, the group will not decrease even if the average load falls below the value of cpu_utilization_target.' + auto_scale.warmup_duration: '- (Optional) The warm-up time of the virtual machine, in seconds. During this time, traffic is fed to the virtual machine, but load metrics are not taken into account.' boot_disk.device_name: '- (Optional) This value can be used to reference the device under /dev/disk/by-id/.' boot_disk.initialize_params: '- (Required) Parameters for creating a disk alongside the instance. The structure is documented below.' boot_disk.mode: '- (Optional) The access mode to the disk resource. By default a disk is attached in READ_WRITE mode.' @@ -1868,12 +1892,7 @@ resources: custom_rule.labels: '- (Optional) A map of labels of metric.' custom_rule.metric_name: '- (Required) The name of metric.' custom_rule.metric_type: '- (Required) Metric type, GAUGE or COUNTER.' - custom_rule.rule_type: |- - - (Required) Rule type: UTILIZATION - This type means that the metric applies to one instance. - First, Instance Groups calculates the average metric value for each instance, - then averages the values for instances in one availability zone. - This type of metric must have the instance_id label. WORKLOAD - This type means that the metric applies to instances in one availability zone. - This type of metric must have the zone_id label. + custom_rule.rule_type: '- (Required) Rule type: UTILIZATION - This type means that the metric applies to one instance. First, Instance Groups calculates the average metric value for each instance, then averages the values for instances in one availability zone. This type of metric must have the instance_id label. WORKLOAD - This type means that the metric applies to instances in one availability zone. This type of metric must have the zone_id label.' custom_rule.service: '- (Optional) Service of custom metric in Yandex Monitoring that should be used for scaling.' custom_rule.target: '- (Required) Target metric value level.' delete: '- Default 30 minutes' @@ -1881,20 +1900,10 @@ resources: deploy_policy: '- (Required) The deployment policy of the instance group. The structure is documented below.' deploy_policy.max_creating: '- (Optional) The maximum number of instances that can be created at the same time.' deploy_policy.max_deleting: '- (Optional) The maximum number of instances that can be deleted at the same time.' - deploy_policy.max_expansion: |- - - (Required) The maximum number of instances that can be temporarily allocated above the group's target size - during the update process. - deploy_policy.max_unavailable: |- - - (Required) The maximum number of running instances that can be taken offline (stopped or deleted) at the same time - during the update process. - deploy_policy.startup_duration: |- - - (Optional) The amount of time in seconds to allow for an instance to start. - Instance will be considered up and running (and start receiving traffic) only after the startup_duration - has elapsed and all health checks are passed. - deploy_policy.strategy: |- - - (Optional) Affects the lifecycle of the instance during deployment. If set to proactive (default), Instance Groups - can forcefully stop a running instance. If opportunistic, Instance Groups does not stop a running instance. Instead, - it will wait until the instance stops itself or becomes unhealthy. + deploy_policy.max_expansion: '- (Required) The maximum number of instances that can be temporarily allocated above the group''s target size during the update process.' + deploy_policy.max_unavailable: '- (Required) The maximum number of running instances that can be taken offline (stopped or deleted) at the same time during the update process.' + deploy_policy.startup_duration: '- (Optional) The amount of time in seconds to allow for an instance to start. Instance will be considered up and running (and start receiving traffic) only after the startup_duration has elapsed and all health checks are passed.' + deploy_policy.strategy: '- (Optional) Affects the lifecycle of the instance during deployment. If set to proactive (default), Instance Groups can forcefully stop a running instance. If opportunistic, Instance Groups does not stop a running instance. Instead, it will wait until the instance stops itself or becomes unhealthy.' description: '- (Optional) A description of the instance group.' dns_record.dns_zone_id: '- (Optional) DNS zone id (if not set, private zone used).' dns_record.fqdn: '- (Required) DNS record fqdn (must have dot at the end).' @@ -1902,9 +1911,7 @@ resources: dns_record.ttl: '- (Optional) DNS record TTL.' filesystem.device_name: '- (Optional) Name of the device representing the filesystem on the instance.' filesystem.filesystem_id: '- (Required) ID of the filesystem that should be attached.' - filesystem.mode: |- - - (Optional) Mode of access to the filesystem that should be attached. By default, filesystem is attached - in READ_WRITE mode. + filesystem.mode: '- (Optional) Mode of access to the filesystem that should be attached. By default, filesystem is attached in READ_WRITE mode.' fixed_scale.size: '- (Required) The number of instances in the instance group.' folder_id: '- (Required) The ID of the folder that the resources belong to.' health_check: '- (Optional) Health check specifications. The structure is documented below.' @@ -1995,12 +2002,12 @@ resources: nat_dns_record.fqdn: '- (Required) DNS record fqdn (must have dot at the end).' nat_dns_record.ptr: '- (Optional) When set to true, also create PTR DNS record.' nat_dns_record.ttl: '- (Optional) DNS record TTL.' - network_interface.dns_record: '- (Optional) List of dns records. The structure is documented below.' + network_interface.dns_record: '- (Optional) List of dns records. The structure is documented below.' network_interface.ip_address: '- (Optional) Manual set static IP address.' network_interface.ipv6_address: '- (Optional) Manual set static IPv6 address.' - network_interface.ipv6_dns_record: '- (Optional) List of ipv6 dns records. The structure is documented below.' + network_interface.ipv6_dns_record: '- (Optional) List of ipv6 dns records. The structure is documented below.' network_interface.nat: '- (Optional) Flag for using NAT.' - network_interface.nat_dns_record: '- (Optional) List of nat dns records. The structure is documented below.' + network_interface.nat_dns_record: '- (Optional) List of nat dns records. The structure is documented below.' network_interface.nat_ip_address: '- (Optional) A public address that can be used to access the internet over NAT. Use variables to set.' network_interface.network_id: '- (Optional) The ID of the network.' network_interface.security_group_ids: '- (Optional) Security group ids for network interface.' @@ -2022,27 +2029,20 @@ resources: secondary_disk.name: '- (Optional) When set can be later used to change DiskSpec of actual disk.' service_account_id: '- (Required) The ID of the service account authorized for this instance group.' tcp_options.port: '- (Required) The port used for TCP health checks.' + test_auto_scale.auto_scale_type: '- (Optional). Autoscale type, can be ZONAL or REGIONAL. By default ZONAL type is used.' test_auto_scale.cpu_utilization_target: '- (Required) Target CPU load level.' test_auto_scale.custom_rule: '- (Optional) A list of custom rules. The structure is documented below.' test_auto_scale.initial_size: '- (Required) The initial number of instances in the instance group.' test_auto_scale.max_size: '- (Optional) The maximum number of virtual machines in the group.' - test_auto_scale.measurement_duration: |- - - (Required) The amount of time, in seconds, that metrics are averaged for. - If the average value at the end of the interval is higher than the cpu_utilization_target, - the instance group will increase the number of virtual machines in the group. + test_auto_scale.measurement_duration: '- (Required) The amount of time, in seconds, that metrics are averaged for. If the average value at the end of the interval is higher than the cpu_utilization_target, the instance group will increase the number of virtual machines in the group.' test_auto_scale.min_zone_size: '- (Optional) The minimum number of virtual machines in a single availability zone.' - test_auto_scale.stabilization_duration: |- - - (Optional) The minimum time interval, in seconds, to monitor the load before - an instance group can reduce the number of virtual machines in the group. During this time, the group - will not decrease even if the average load falls below the value of cpu_utilization_target. - test_auto_scale.warmup_duration: |- - - (Optional) The warm-up time of the virtual machine, in seconds. During this time, - traffic is fed to the virtual machine, but load metrics are not taken into account. + test_auto_scale.stabilization_duration: '- (Optional) The minimum time interval, in seconds, to monitor the load before an instance group can reduce the number of virtual machines in the group. During this time, the group will not decrease even if the average load falls below the value of cpu_utilization_target.' + test_auto_scale.warmup_duration: '- (Optional) The warm-up time of the virtual machine, in seconds. During this time, traffic is fed to the virtual machine, but load metrics are not taken into account.' update: '- Default 30 minutes' - variables: '- (Optional) A set of key/value variables pairs to assign to the instance group.' + variables: '- (Optional) A set of key/value variables pairs to assign to the instance group.' importStatements: [] yandex_compute_instance_iam_binding: - subCategory: "" + subCategory: Compute description: Allows management of a single IAM binding for an instance. name: yandex_compute_instance_iam_binding title: yandex_compute_instance_iam_binding @@ -2056,6 +2056,8 @@ resources: ], "role": "editor" } + references: + instance_id: data.yandex_compute_instance.instance1.id dependencies: yandex_compute_instance.instance1: |- { @@ -2095,15 +2097,11 @@ resources: } argumentDocs: instance_id: '- (Required) ID of the instance to attach the policy to.' - members: |- - - (Required) An array of identities that will be granted the privilege in the role. - Each entry can have one of the following values: - role: |- - - (Required) The role that should be assigned. Only one - yandex_compute_instance_iam_binding can be used per role. + members: '- (Required) An array of identities that will be granted the privilege in the role. Each entry can have one of the following values:' + role: '- (Required) The role that should be assigned. Only one yandex_compute_instance_iam_binding can be used per role.' importStatements: [] yandex_compute_placement_group: - subCategory: "" + subCategory: Compute description: Manages a Placement group resource. name: yandex_compute_placement_group title: yandex_compute_placement_group @@ -2127,7 +2125,7 @@ resources: update: '- Default is 1 minute.' importStatements: [] yandex_compute_placement_group_iam_binding: - subCategory: "" + subCategory: Compute description: Allows management of a single IAM binding for a Placement Group. name: yandex_compute_placement_group_iam_binding title: yandex_compute_placement_group_iam_binding @@ -2141,6 +2139,8 @@ resources: "placement_group_id": "${data.yandex_compute_placement_group.pg1.id}", "role": "editor" } + references: + placement_group_id: data.yandex_compute_placement_group.pg1.id dependencies: yandex_compute_placement_group.pg1: |- { @@ -2149,16 +2149,12 @@ resources: "name": "test-pg" } argumentDocs: - members: |- - - (Required) An array of identities that will be granted the privilege in the role. - Each entry can have one of the following values: + members: '- (Required) An array of identities that will be granted the privilege in the role. Each entry can have one of the following values:' placement_group_id: '- (Required) ID of the placement group to attach the policy to.' - role: |- - - (Required) The role that should be assigned. Only one - yandex_compute_placement_group_iam_binding can be used per role. + role: '- (Required) The role that should be assigned. Only one yandex_compute_placement_group_iam_binding can be used per role.' importStatements: [] yandex_compute_snapshot: - subCategory: "" + subCategory: Compute description: Creates a new snapshot of a disk. name: yandex_compute_snapshot title: yandex_compute_snapshot @@ -2178,17 +2174,23 @@ resources: delete: '- Default 20 minutes' description: '- (Optional) Description of the resource.' disk_size: '- Size of the disk when the snapshot was created, specified in GB.' - folder_id: |- - - (Optional) The ID of the folder that the resource belongs to. If it - is not provided, the default provider folder is used. + folder_id: '- (Optional) The ID of the folder that the resource belongs to. If it is not provided, the default provider folder is used.' + hardware_generation: |- + - (Optional) Hardware generation and its features, + which will be applied to the instance when this snapshot is used as a boot + disk source. Provide this property if you wish to override this value, which + otherwise is inherited from the source. The structure is documented below. + hardware_generation.generation2_features: '- A newer hardware generation, which always uses PCI_TOPOLOGY_V2 and UEFI boot.' + hardware_generation.legacy_features: '- Defines the first known hardware generation and its features, which are:' labels: '- (Optional) A set of key/value label pairs to assign to the snapshot.' name: '- (Optional) A name for the resource.' + pci_topology: '- A variant of PCI topology, one of PCI_TOPOLOGY_V1 or PCI_TOPOLOGY_V2.' source_disk_id: '- (Required) ID of the disk to create a snapshot from.' storage_size: '- Size of the snapshot, specified in GB.' update: '- Default 20 minutes' importStatements: [] yandex_compute_snapshot_iam_binding: - subCategory: "" + subCategory: Compute description: Allows management of a single IAM binding for a Snapshot. name: yandex_compute_snapshot_iam_binding title: yandex_compute_snapshot_iam_binding @@ -2202,6 +2204,8 @@ resources: "role": "editor", "snapshot_id": "${data.yandex_compute_snapshot.snapshot1.id}" } + references: + snapshot_id: data.yandex_compute_snapshot.snapshot1.id dependencies: yandex_compute_snapshot.snapshot1: |- { @@ -2212,16 +2216,12 @@ resources: "source_disk_id": "test_disk_id" } argumentDocs: - members: |- - - (Required) An array of identities that will be granted the privilege in the role. - Each entry can have one of the following values: - role: |- - - (Required) The role that should be assigned. Only one - yandex_compute_snapshot_iam_binding can be used per role. + members: '- (Required) An array of identities that will be granted the privilege in the role. Each entry can have one of the following values:' + role: '- (Required) The role that should be assigned. Only one yandex_compute_snapshot_iam_binding can be used per role.' snapshot_id: '- (Required) ID of the snapshot to attach the policy to.' importStatements: [] yandex_compute_snapshot_schedule: - subCategory: "" + subCategory: Compute description: Creates a new snapshot schedule. name: yandex_compute_snapshot_schedule title: yandex_compute_snapshot_schedule @@ -2277,9 +2277,7 @@ resources: delete: '- Default 5 minutes' description: '- (Optional) Description of the resource.' disk_ids: '- (Optional) IDs of the disk for snapshot schedule.' - folder_id: |- - - (Optional) The ID of the folder that the resource belongs to. If it - is not provided, the default provider folder is used. + folder_id: '- (Optional) The ID of the folder that the resource belongs to. If it is not provided, the default provider folder is used.' labels: '- (Optional) A set of key/value label pairs to assign to the snapshot schedule.' name: '- (Optional) A name for the resource.' retention_period: '- (Optional) Time duration applied to snapshots created by this snapshot schedule. This is a signed sequence of decimal numbers, each with optional fraction and a unit suffix. Valid time units are "ns", "us" (or "µs"), "ms", "s", "m", "h". Examples: "300ms", "1.5h" or "2h45m".' @@ -2294,7 +2292,7 @@ resources: update: '- Default 5 minutes' importStatements: [] yandex_compute_snapshot_schedule_iam_binding: - subCategory: "" + subCategory: Compute description: Allows management of a single IAM binding for a Snapshot Schedule. name: yandex_compute_snapshot_schedule_iam_binding title: yandex_compute_snapshot_schedule_iam_binding @@ -2308,6 +2306,8 @@ resources: "role": "editor", "snapshot_schedule_id": "${data.yandex_compute_snapshot_schedule.schedule1.id}" } + references: + snapshot_schedule_id: data.yandex_compute_snapshot_schedule.schedule1.id dependencies: yandex_compute_snapshot_schedule.schedule1: |- { @@ -2328,16 +2328,12 @@ resources: ] } argumentDocs: - members: |- - - (Required) An array of identities that will be granted the privilege in the role. - Each entry can have one of the following values: - role: |- - - (Required) The role that should be assigned. Only one - yandex_compute_snapshot_schedule_iam_binding can be used per role. + members: '- (Required) An array of identities that will be granted the privilege in the role. Each entry can have one of the following values:' + role: '- (Required) The role that should be assigned. Only one yandex_compute_snapshot_schedule_iam_binding can be used per role.' snapshot_schedule_id: '- (Required) ID of the snapshot schedule to attach the policy to.' importStatements: [] yandex_container_registry: - subCategory: "" + subCategory: Container Registry description: Creates a new container registry. name: yandex_container_registry title: yandex_container_registry @@ -2359,7 +2355,7 @@ resources: status: '- Status of the registry.' importStatements: [] yandex_container_registry_iam_binding: - subCategory: "" + subCategory: Container Registry description: Allows management of a single IAM binding for a name: yandex_container_registry_iam_binding title: yandex_container_registry_iam_binding @@ -2382,14 +2378,12 @@ resources: "name": "registry-name" } argumentDocs: - members: |- - - (Required) Identities that will be granted the privilege in role. - Each entry can have one of the following values: + members: '- (Required) Identities that will be granted the privilege in role. Each entry can have one of the following values:' registry_id: '- (Required) The Yandex Container Registry ID to apply a binding to.' role: '- (Required) The role that should be applied. See roles.' importStatements: [] yandex_container_registry_ip_permission: - subCategory: "" + subCategory: Container Registry description: Creates a new Container Registry IP Permission. name: yandex_container_registry_ip_permission title: yandex_container_registry_ip_permission @@ -2421,125 +2415,50 @@ resources: registry_id: '- (Required) The ID of the registry that ip restrictions applied to.' importStatements: [] yandex_container_repository: - subCategory: "" - description: Creates a new container repository. + subCategory: Container Repository name: yandex_container_repository title: yandex_container_repository - examples: - - name: my-repository - manifest: |- - { - "name": "${yandex_container_registry.my-registry.id}/test-repository" - } - dependencies: - yandex_container_registry.my-registry: |- - { - "name": "test-registry" - } argumentDocs: - name: '- A name of the repository. The name of the repository should start with id of a container registry and match the name of the images that will be pushed in the repository.' + create: (String) A string that can be parsed as a duration consisting of numbers and unit suffixes, such as "30s" or "2h45m". Valid time units are "s" (seconds), "m" (minutes), "h" (hours). + delete: (String) A string that can be parsed as a duration consisting of numbers and unit suffixes, such as "30s" or "2h45m". Valid time units are "s" (seconds), "m" (minutes), "h" (hours). Setting a timeout for a Delete operation is only applicable if changes are saved into state before the destroy operation occurs. + id: (String) The ID of this resource. + name: (String) + timeouts: (Block, Optional) (see below for nested schema) importStatements: [] yandex_container_repository_iam_binding: - subCategory: "" - description: Allows management of a single IAM binding for a + subCategory: Container Repository name: yandex_container_repository_iam_binding title: yandex_container_repository_iam_binding - examples: - - name: puller - manifest: |- - { - "members": [ - "system:allUsers" - ], - "repository_id": "${yandex_container_repository.repo-1.id}", - "role": "container-registry.images.puller" - } - references: - repository_id: yandex_container_repository.repo-1.id - dependencies: - yandex_container_registry.your-registry: |- - { - "folder_id": "your-folder-id", - "name": "registry-name" - } - yandex_container_repository.repo-1: |- - { - "name": "${yandex_container_registry.your-registry.id}/repo-1" - } - - name: pusher - manifest: |- - { - "members": [ - "serviceAccount:your-service-account-id" - ], - "repository_id": "${yandex_container_repository.repo-2.id}", - "role": "container-registry.images.pusher" - } - references: - repository_id: yandex_container_repository.repo-2.id - dependencies: - yandex_container_registry.your-registry: |- - { - "folder_id": "your-folder-id", - "name": "registry-name" - } - yandex_container_repository.repo-1: |- - { - "name": "${yandex_container_registry.your-registry.id}/repo-1" - } argumentDocs: - members: |- - - (Required) Identities that will be granted the privilege in role. - Each entry can have one of the following values: - repository_id: '- (Required) The Yandex Container Repository ID to apply a binding to.' - role: '- (Required) The role that should be applied. See roles.' + default: (String) A string that can be parsed as a duration consisting of numbers and unit suffixes, such as "30s" or "2h45m". Valid time units are "s" (seconds), "m" (minutes), "h" (hours). + id: (String) The ID of this resource. + members: (Set of String) + repository_id: (String) + role: (String) + sleep_after: (Number) + timeouts: (Block, Optional) (see below for nested schema) importStatements: [] yandex_container_repository_lifecycle_policy: - subCategory: "" - description: Creates a new container repository lifecycle policy. + subCategory: Container Repository name: yandex_container_repository_lifecycle_policy title: yandex_container_repository_lifecycle_policy - examples: - - name: my_lifecycle_policy - manifest: |- - { - "name": "test-lifecycle-policy-name", - "repository_id": "${yandex_container_repository.my_repository.id}", - "rule": [ - { - "description": "my description", - "retained_top": 1, - "tag_regexp": ".*", - "untagged": true - } - ], - "status": "active" - } - references: - repository_id: yandex_container_repository.my_repository.id - dependencies: - yandex_container_registry.my_registry: |- - { - "name": "test-registry" - } - yandex_container_repository.my_repository: |- - { - "name": "${yandex_container_registry.my_registry.id}/test-repository" - } argumentDocs: - created_at: '- Creation timestamp of the instance.' - description: '- (Optional) Description of the lifecycle policy.' - name: '- (Optional) Lifecycle policy name.' - repository_id: '- (Required) The ID of the repository that the resource belongs to.' - rule.description: '- (Optional) Description of the lifecycle policy.' - rule.expire_period: '- (Optional) The period of time that must pass after creating a image for it to suit the automatic deletion criteria. It must be a multiple of 24 hours.' - rule.retained_top: '- (Optional) The number of images to be retained even if the expire_period already expired.' - rule.tag_regexp: '- (Optional) Tag to specify a filter as a regular expression. For example .* - all images with tags.' - rule.untagged: '- (Optional) If enabled, rules apply to untagged Docker images.' - status: '- (Required) The status of lifecycle policy. Must be active or disabled.' + created_at: (String) + default: (String) A string that can be parsed as a duration consisting of numbers and unit suffixes, such as "30s" or "2h45m". Valid time units are "s" (seconds), "m" (minutes), "h" (hours). + description: (String) + expire_period: (String) + id: (String) The ID of this resource. + name: (String) + repository_id: (String) + retained_top: (Number) + rule: (Block List) (see below for nested schema) + status: (String) + tag_regexp: (String) + timeouts: (Block, Optional) (see below for nested schema) + untagged: (Boolean) importStatements: [] yandex_dataproc_cluster: - subCategory: "" + subCategory: Data Proc description: Manages a Data Proc cluster within Yandex.Cloud. name: yandex_dataproc_cluster title: yandex_dataproc_cluster @@ -2724,7 +2643,7 @@ resources: cluster_config.subcluster_spec: '- (Required) Configuration of the Data Proc subcluster. The structure is documented below.' cluster_config.version_id: '- (Required) Version of Data Proc image.' created_at: '- (Computed) The Data Proc cluster creation timestamp.' - deletion_protection: '- (Optional) Inhibits deletion of the cluster. Can be either true or false.' + deletion_protection: '- (Optional) Inhibits deletion of the cluster. Can be either true or false.' description: '- (Optional) Description of the Data Proc cluster.' folder_id: '- (Optional) ID of the folder to create a cluster in. If it is not provided, the default provider folder is used.' host_group_ids: '- (Optional) A list of host group IDs to place VMs of the cluster on.' @@ -2747,7 +2666,7 @@ resources: zone_id: '- (Optional) ID of the availability zone to create cluster in. If it is not provided, the default provider zone is used.' importStatements: [] yandex_datasphere_community: - subCategory: "" + subCategory: Datasphere description: Allows management of a Yandex.Cloud Datasphere Community. name: yandex_datasphere_community title: yandex_datasphere_community @@ -2769,7 +2688,7 @@ resources: created_at: '- Creation timestamp of the Yandex Datasphere Community' created_by: '- Creator account ID of the Yandex Datasphere Community' delete: '- Default is 1 minute.' - description: '- (Optional) Datasphere Community description.' + description: '- (Optional) Datasphere Community description.' id: '- Datasphere Community unique identifier' labels: '- (Optional) A set of key/value label pairs to assign to the Datasphere Community.' name: '- (Required) Name of the Datasphere Community.' @@ -2777,7 +2696,7 @@ resources: update: '- Default is 1 minute.' importStatements: [] yandex_datasphere_community_iam_binding: - subCategory: "" + subCategory: Datasphere description: Allows management of a single IAM binding for a Yandex Datasphere Community. name: yandex_datasphere_community_iam_binding title: yandex_datasphere_community_iam_binding @@ -2793,13 +2712,11 @@ resources: } argumentDocs: community_id: '- (Required) The Yandex Cloud Datasphere Community ID to apply a binding to.' - members: |- - - (Required) Identities that will be granted the privilege in role. - Each entry can have one of the following values: + members: '- (Required) Identities that will be granted the privilege in role. Each entry can have one of the following values:' role: '- (Required) The role that should be applied. See roles' importStatements: [] yandex_datasphere_project: - subCategory: "" + subCategory: Datasphere description: Allows management of a Yandex.Cloud Datasphere project. name: yandex_datasphere_project title: yandex_datasphere_project @@ -2865,7 +2782,7 @@ resources: update: '- Default is 1 minute.' importStatements: [] yandex_datasphere_project_iam_binding: - subCategory: "" + subCategory: Datasphere description: Allows management of a single IAM binding for a Yandex Datasphere Project. name: yandex_datasphere_project_iam_binding title: yandex_datasphere_project_iam_binding @@ -2880,490 +2797,231 @@ resources: "role": "datasphere.community-projects.developer" } argumentDocs: - members: |- - - (Required) Identities that will be granted the privilege in role. - Each entry can have one of the following values: + members: '- (Required) Identities that will be granted the privilege in role. Each entry can have one of the following values:' project_id: '- (Required) The Yandex Cloud Datasphere Project ID to apply a binding to.' role: '- (Required) The role that should be applied. See roles' importStatements: [] yandex_datatransfer_endpoint: - subCategory: "" - description: Manages a Data Transfer endpoint within Yandex.Cloud. + subCategory: Data Transfer name: yandex_datatransfer_endpoint title: yandex_datatransfer_endpoint + argumentDocs: + add_rest_column: (Boolean) + allow_ttl_rewind: (Boolean) + alt_names: (Block List) (see below for nested schema) + audit_trails_v1_parser: '(Block List, Max: 1) (see below for nested schema)' + auth: '(Block List, Max: 1) (see below for nested schema)' + auth_source: (String) + broker_urls: (List of String) + buffer_flush_interval: (String) + buffer_size: (String) + ca_certificate: (String) + cast: (String) + changefeed_custom_name: (String) + cleanup_policy: (String) + clickhouse_cluster_name: (String) + clickhouse_source: '(Block List, Max: 1) (see below for nested schema)' + clickhouse_target: '(Block List, Max: 1) (see below for nested schema)' + cloud_function: (String) + cloud_logging_parser: '(Block List, Max: 1) (see below for nested schema)' + cluster_id: (String) + collation: (String) + collection_name: (String) + collections: (Block List) (see below for nested schema) + column_name: (String) + column_value: '(Block List, Max: 1) (see below for nested schema)' + column_value_hash: '(Block List, Max: 1) (see below for nested schema)' + columns: (List of String) + connection: '(Block List, Max: 1) (see below for nested schema)' + connection_options: '(Block List, Max: 1) (see below for nested schema)' + constraint: (String) + consumer: (String) + counter_ids: (List of Number) + custom_mapping: '(Block List, Max: 1) (see below for nested schema)' + data_schema: '(Block List, Max: 1) (see below for nested schema)' + database: (String) + database_name: (String) + default_compression: (String) + default_values: (String) + description: (String) + disabled: '(Block List, Max: 1) (see below for nested schema)' + enabled: '(Block List, Max: 1) (see below for nested schema)' + endpoint: (String) + exclude_tables: (List of String) + exclude_tables_regex: (List of String) + excluded_collections: (Block List) (see below for nested schema) + fields: '(Block List, Max: 1) (see below for nested schema)' + fk_constraint: (String) + folder_id: (String) + from_name: (String) + function: (String) + hosts: (List of String) + http_port: (Number) + id: (String) The ID of this resource. + include_tables: (List of String) + include_tables_regex: (List of String) + index: (String) + instance: (String) + invocation_timeout: (String) + is_table_column_oriented: (Boolean) + json_fields: (String) + json_parser: '(Block List, Max: 1) (see below for nested schema)' + kafka_source: '(Block List, Max: 1) (see below for nested schema)' + kafka_target: '(Block List, Max: 1) (see below for nested schema)' + key: (Boolean) + labels: (Map of String) + mapping: (Block List) (see below for nested schema) + materialized_view: (String) + mdb_cluster_id: (String) + mechanism: (String) + metrika_source: '(Block List, Max: 1) (see below for nested schema)' + mongo_source: '(Block List, Max: 1) (see below for nested schema)' + mongo_target: '(Block List, Max: 1) (see below for nested schema)' + mysql_source: '(Block List, Max: 1) (see below for nested schema)' + mysql_target: '(Block List, Max: 1) (see below for nested schema)' + name: (String) + native_port: (Number) + no_auth: '(Block List, Max: 1) (see below for nested schema)' + null_keys_allowed: (Boolean) + number_of_retries: (Number) + object_transfer_settings: '(Block List, Max: 1) (see below for nested schema)' + on_premise: '(Block List, Max: 1) (see below for nested schema)' + parser: '(Block List, Max: 1) (see below for nested schema)' + password: '(Block List, Max: 1) (see below for nested schema)' + path: (String) + paths: (List of String) + policy: (String) + port: (Number) + postgres_source: '(Block List, Max: 1) (see below for nested schema)' + postgres_target: '(Block List, Max: 1) (see below for nested schema)' + primary_key: (String) + raw: (String, Sensitive) + replica_set: (String) + required: (Boolean) + round_robin: '(Block List, Max: 1) (see below for nested schema)' + routine: (String) + rule: (String) + sa_key_content: (String, Sensitive) + sasl: '(Block List, Max: 1) (see below for nested schema)' + save_tx_order: (Boolean) + secondary_preferred_mode: (Boolean) + security_groups: (List of String) + sequence: (String) + sequence_owned_by: (String) + sequence_set: (String) + serializer: '(Block List, Max: 1) (see below for nested schema)' + serializer_auto: '(Block List, Max: 1) (see below for nested schema)' + serializer_debezium: '(Block List, Max: 1) (see below for nested schema)' + serializer_json: '(Block List, Max: 1) (see below for nested schema)' + serializer_parameters: (Block List) (see below for nested schema) + service_account_id: (String) + service_database: (String) + service_schema: (String) + settings: '(Block List, Max: 1) (see below for nested schema)' + shard_name: (String) + sharding: '(Block List, Max: 1) (see below for nested schema)' + shards: (Block List) (see below for nested schema) + skip_constraint_checks: (Boolean) + slot_gigabyte_lag_limit: (Number) + sql_mode: (String) + stream: (String) + streams: (Block List) (see below for nested schema) + string_value: (String) + subnet_id: (String) + supported_codecs: (List of String) + table: (String) + tables: (String) + timezone: (String) + tls_mode: '(Block List, Max: 1) (see below for nested schema)' + to_name: (String) + token: '(Block List, Max: 1) (see below for nested schema)' + topic: '(Block List, Max: 1) (see below for nested schema)' + topic_name: (String) + topic_names: (List of String) + topic_prefix: (String) + topic_settings: '(Block List, Max: 1) (see below for nested schema)' + transfer_id: '(Block List, Max: 1) (see below for nested schema)' + transformer: '(Block List, Max: 1) (see below for nested schema)' + trigger: (String) + tskv_parser: '(Block List, Max: 1) (see below for nested schema)' + type: (String) + unescape_string_values: (Boolean) + user: (String) + value: (String) + view: (String) + ydb_source: '(Block List, Max: 1) (see below for nested schema)' + ydb_target: '(Block List, Max: 1) (see below for nested schema)' + yds_source: '(Block List, Max: 1) (see below for nested schema)' + yds_target: '(Block List, Max: 1) (see below for nested schema)' + importStatements: [] + yandex_datatransfer_transfer: + subCategory: Data Transfer + name: yandex_datatransfer_transfer + title: yandex_datatransfer_transfer + argumentDocs: + columns: '(Block List, Max: 1) (see below for nested schema)' + convert_to_string: '(Block List, Max: 1) (see below for nested schema)' + description: (String) + exclude_columns: (List of String) + exclude_tables: (List of String) + filter: (String) + filter_columns: '(Block List, Max: 1) (see below for nested schema)' + filter_rows: '(Block List, Max: 1) (see below for nested schema)' + folder_id: (String) + function: '(Block List, Max: 1) (see below for nested schema)' + id: (String) The ID of this resource. + include_columns: (List of String) + include_tables: (List of String) + job_count: (Number) + keys: (List of String) + labels: (Map of String) + mask_field: '(Block List, Max: 1) (see below for nested schema)' + mask_function_hash: '(Block List, Max: 1) (see below for nested schema)' + name: (String) + name_space: (String) + new_name: '(Block List, Max: 1) (see below for nested schema)' + on_create_activate_mode: (String) + original_name: '(Block List, Max: 1) (see below for nested schema)' + process_count: (Number) + rename_tables: '(Block List, Max: 1) (see below for nested schema)' + replace_primary_key: '(Block List, Max: 1) (see below for nested schema)' + runtime: '(Block List, Max: 1) (see below for nested schema)' + sharder_transformer: '(Block List, Max: 1) (see below for nested schema)' + shards_count: (Number) + source_id: (String) + splitter: (String) + table_splitter_transformer: '(Block List, Max: 1) (see below for nested schema)' + tables: '(Block List, Max: 1) (see below for nested schema)' + target_id: (String) + transformation: '(Block List, Max: 1) (see below for nested schema)' + transformers: (Block List) (see below for nested schema) + type: (String) + upload_shard_params: '(Block List, Max: 1) (see below for nested schema)' + user_defined_salt: (String) + warning: (String) + yc_runtime: '(Block List, Max: 1) (see below for nested schema)' + importStatements: [] + yandex_dns_recordset: + subCategory: DNS (Domain Name System) + description: Manages a DNS Recordset within Yandex.Cloud. + name: yandex_dns_recordset + title: yandex_dns_recordset examples: - - name: pg_source + - name: rs1 manifest: |- { - "name": "pg-test-source", - "settings": [ - { - "postgres_source": [ - { - "connection": [ - { - "on_premise": [ - { - "hosts": [ - "example.org" - ], - "port": 5432 - } - ] - } - ], - "database": "db1", - "password": [ - { - "raw": "123" - } - ], - "slot_gigabyte_lag_limit": 100, - "user": "user1" - } - ] - } - ] - } - - name: pg_target - manifest: |- - { - "folder_id": "some_folder_id", - "name": "pg-test-target2", - "settings": [ - { - "postgres_target": [ - { - "connection": [ - { - "mdb_cluster_id": "some_cluster_id" - } - ], - "database": "db2", - "password": [ - { - "raw": "321" - } - ], - "security_groups": [ - "${list}" - ], - "user": "user2" - } - ] - } - ] - } - argumentDocs: - auth.no_auth: '- Connection without authentication data.' - auth.sasl: '- Authentication using sasl.' - author: '- (Computed) Identifier of the IAM user account of the user who created the endpoint.' - clickhouse_source.connection: '- (Required) Connection settings. The structure is documented below.' - clickhouse_source.exclude_tables: '- (Optional) The list of tables that should not be transferred.' - clickhouse_source.include_tables: '- (Optional) The list of tables that should be transferred. Leave empty if all tables should be transferred.' - clickhouse_source.security_groups: '- (Optional) List of security groups that the transfer associated with this endpoint should use.' - clickhouse_source.subnet_id: '- (Optional) Identifier of the Yandex Cloud VPC subnetwork to user for accessing the database. If omitted, the server has to be accessible via Internet.' - clickhouse_target.alt_names: '- (Optional) Table renaming rules. The structure is documented below.' - clickhouse_target.cleanup_policy: '- (Optional) How to clean collections when activating the transfer. One of "CLICKHOUSE_CLEANUP_POLICY_DISABLED" or "CLICKHOUSE_CLEANUP_POLICY_DROP".' - clickhouse_target.clickhouse_cluster_name: '- (Optional) Name of the ClickHouse cluster. For managed ClickHouse clusters defaults to managed cluster ID.' - clickhouse_target.connection: '- (Required) Connection settings. The structure is documented below.' - clickhouse_target.connection.connection_options: (Required) Connection options. The structure is documented below. - clickhouse_target.connection.connection_options.database: '- (Required) Database name.' - clickhouse_target.connection.connection_options.mdb_cluster_id: '- (Optional) Identifier of the Managed ClickHouse cluster.' - clickhouse_target.connection.connection_options.on_premise: '- (Optional) Connection settings of the on-premise ClickHouse server.' - clickhouse_target.connection.connection_options.on_premise.http_port: '- (Required) TCP port number for the HTTP interface of the ClickHouse server.' - clickhouse_target.connection.connection_options.on_premise.native_port: '- (Required) TCP port number for the native interface of the ClickHouse server.' - clickhouse_target.connection.connection_options.on_premise.shards: '- (Required) The list of ClickHouse shards. The structure is documented below.' - clickhouse_target.connection.connection_options.on_premise.shards.hosts: '- (Required) List of ClickHouse server host names.' - clickhouse_target.connection.connection_options.on_premise.shards.name: '- (Required) Arbitrary shard name. This name may be used in sharding block to specify custom sharding rules.' - clickhouse_target.connection.connection_options.on_premise.tls_mode: '- (Optional) TLS settings for the server connection. Empty implies plaintext connection. The structure is documented below.' - clickhouse_target.connection.connection_options.password: '- (Required) Password for the database access. This is a block with a single field named raw which should contain the password.' - clickhouse_target.connection.connection_options.user: '- (Required) User for database access.' - clickhouse_target.custom_mapping: (Optional) A custom shard mapping by the value of the specified column. The structure is documented below. - clickhouse_target.round_robin: (Optional) Distribute incoming rows between ClickHouse shards in a round-robin manner. Specify as an empty block to enable. - clickhouse_target.security_groups: '- (Optional) List of security groups that the transfer associated with this endpoint should use.' - clickhouse_target.sharding: '- (Optional) Shard selection rules for the data being transferred. The structure is documented below.' - clickhouse_target.subnet_id: '- (Optional) Identifier of the Yandex Cloud VPC subnetwork to user for accessing the database. If omitted, the server has to be accessible via Internet.' - collections.collection_name: '- (Required) Collection name.' - collections.database_name: '- (Required) Database name.' - connection.cluster_id: '- Identifier of the Managed Kafka cluster.' - connection.on_premise: '- Connection settings of the on-premise Kafka server.' - connection.on_premise.broker_urls: (Required) List of Kafka broker URLs. - connection.on_premise.subnet_id: (Optional) Identifier of the Yandex Cloud VPC subnetwork to user for accessing the database. If omitted, the server has to be accessible via Internet. - connection.on_premise.tls_mode: (Optional) TLS settings for the server connection. Empty implies plaintext connection. The structure is documented below. - created_at: '- (Computed) Data Transfer endpoint creation timestamp.' - custom_mapping.column_name: '- (Required) The name of the column to inspect when deciding the shard to chose for an incoming row.' - custom_mapping.mapping: '- (Required) The mapping of the specified column values to the shard names. The structure is documented below.' - custom_mapping.mapping.column_value: '- (Required) The value of the column. Currently only the string columns are supported. The structure is documented below.' - custom_mapping.mapping.column_value.string_value: '- (Optional) The string value of the column.' - custom_mapping.mapping.shard_name: '- (Required) The name of the shard into which all the rows with the specified column_value will be written.' - description: '- (Optional) Arbitrary description text for the endpoint.' - folder_id: '- (Optional) ID of the folder to create the endpoint in. If it is not provided, the default provider folder is used.' - id: '- (Computed) Identifier of a new Data Transfer endpoint.' - kafka_source.auth: '- (Required) Authentication data.' - kafka_source.connection: '- (Required) Connection settings.' - kafka_source.parser: '- (Optional) Data parsing parameters. If not set, the source messages are read in raw.' - kafka_source.security_groups: '- (Optional) List of security groups that the transfer associated with this endpoint should use.' - kafka_source.topic_name: '- (Optional) Deprecated. Please use topic_names instead.' - kafka_source.topic_names: '- (Optional) The list of full source topic names.' - kafka_source.transformer: '- (Optional) Transform data with a custom Cloud Function.' - kafka_target.auth: '- (Required) Authentication data.' - kafka_target.connection: '- (Required) Connection settings.' - kafka_target.security_groups: '- (Optional) List of security groups that the transfer associated with this endpoint should use.' - kafka_target.serializer: '- (Required) Data serialization settings.' - kafka_target.topic_settings: '- (Required) Target topic settings.' - kafka_target.topic_settings.topic: '- All messages will be sent to one topic. The structure is documented below.' - kafka_target.topic_settings.topic.save_tx_order: '- Not to split events queue into separate per-table queues.' - kafka_target.topic_settings.topic.topic_name: '- Full topic name' - kafka_target.topic_settings.topic_prefix: '- Topic name prefix. Messages will be sent to topic with name ...' - labels: '- (Optional) A set of key/value label pairs to assign to the Data Transfer endpoint.' - mongo_source.collections: '- (Optional) The list of the MongoDB collections that should be transferred. If omitted, all available collections will be transferred. The structure of the list item is documented below.' - mongo_source.connection: '- (Required) Connection settings. The structure is documented below.' - mongo_source.excluded_collections: '- (Optional) The list of the MongoDB collections that should not be transferred.' - mongo_source.secondary_preferred_mode: '- (Optional) whether the secondary server should be preferred to the primary when copying data.' - mongo_source.security_groups: '- (Optional) List of security groups that the transfer associated with this endpoint should use.' - mongo_source.subnet_id: '- (Optional) Identifier of the Yandex Cloud VPC subnetwork to user for accessing the database. If omitted, the server has to be accessible via Internet.' - mongo_target.cleanup_policy: '- (Optional) How to clean collections when activating the transfer. One of "DISABLED", "DROP" or "TRUNCATE".' - mongo_target.connection: '- (Required) Connection settings. The structure is documented below.' - mongo_target.connection.connection_options: (Required) Connection options. The structure is documented below. - mongo_target.connection.connection_options.auth_source: '- (Required) Name of the database associated with the credentials.' - mongo_target.connection.connection_options.mdb_cluster_id: '- (Optional) Identifier of the Managed MongoDB cluster.' - mongo_target.connection.connection_options.on_premise: '- (Optional) Connection settings of the on-premise MongoDB server.' - mongo_target.connection.connection_options.on_premise.hosts: '- (Required) Host names of the replica set.' - mongo_target.connection.connection_options.on_premise.port: '- (Required) TCP Port number.' - mongo_target.connection.connection_options.on_premise.replica_set: '- (Optional) Replica set name.' - mongo_target.connection.connection_options.on_premise.tls_mode: '- (Optional) TLS settings for the server connection. Empty implies plaintext connection. The structure is documented below.' - mongo_target.connection.connection_options.password: '- (Required) Password for the database access. This is a block with a single field named raw which should contain the password.' - mongo_target.connection.connection_options.user: '- (Required) User for database access.' - mongo_target.database: '- (Optional) If not empty, then all the data will be written to the database with the specified name; otherwise the database name is the same as in the source endpoint.' - mongo_target.security_groups: '- (Optional) List of security groups that the transfer associated with this endpoint should use.' - mongo_target.subnet_id: '- (Optional) Identifier of the Yandex Cloud VPC subnetwork to user for accessing the database. If omitted, the server has to be accessible via Internet.' - mysql_source.connection: '- (Required) Connection settings. The structure is documented below.' - mysql_source.database: '- (Required) Name of the database to transfer.' - mysql_source.exclude_tables_regex: '- (Optional) Opposite of include_table_regex. The tables matching the specified regular expressions will not be transferred.' - mysql_source.include_tables_regex: '- (Optional) List of regular expressions of table names which should be transferred. A table name is formatted as schemaname.tablename. For example, a single regular expression may look like ^mydb.employees$.' - mysql_source.object_transfer_settings: '- (Optional) Defines which database schema objects should be transferred, e.g. views, routines, etc.' - mysql_source.password: '- (Required) Password for the database access. This is a block with a single field named raw which should contain the password.' - mysql_source.security_groups: '- (Optional) List of security groups that the transfer associated with this endpoint should use.' - mysql_source.timezone: '- (Optional) Timezone to use for parsing timestamps for saving source timezones. Accepts values from IANA timezone database. Default: local timezone.' - mysql_source.user: '- (Required) User for the database access.' - mysql_target.cleanup_policy: '- (Optional) How to clean tables when activating the transfer. One of "DISABLED", "DROP" or "TRUNCATE".' - mysql_target.connection: '- (Required) Connection settings. The structure is documented below.' - mysql_target.connection.mdb_cluster_id: '- Identifier of the Managed MySQL cluster.' - mysql_target.connection.on_premise: '- Connection settings of the on-premise MySQL server.' - mysql_target.connection.on_premise.hosts: '- (Required) List of host names of the MySQL server. Exactly one host is expected currently.' - mysql_target.connection.on_premise.port: '- (Required) Port for the database connection.' - mysql_target.connection.on_premise.subnet_id: '- (Optional) Identifier of the Yandex Cloud VPC subnetwork to user for accessing the database. If omitted, the server has to be accessible via Internet.' - mysql_target.connection.on_premise.tls_mode: '- (Optional) TLS settings for the server connection. Empty implies plaintext connection. The structure is documented below.' - mysql_target.database: '- (Required) Name of the database to transfer.' - mysql_target.password: '- (Required) Password for the database access. This is a block with a single field named raw which should contain the password.' - mysql_target.security_groups: '- (Optional) List of security groups that the transfer associated with this endpoint should use.' - mysql_target.service_database: '- (Optional) The name of the database where technical tables (__tm_keeper, __tm_gtid_keeper) will be created. Default is the value of the attribute database.' - mysql_target.skip_constraint_checks: '- (Optional) When true, disables foreign key checks. See foreign_key_checks. False by default.' - mysql_target.sql_mode: '- (Optional) sql_mode to use when interacting with the server. Defaults to "NO_AUTO_VALUE_ON_ZERO,NO_DIR_IN_CREATE,NO_ENGINE_SUBSTITUTION".' - mysql_target.timezone: '- (Optional) Timezone to use for parsing timestamps for saving source timezones. Accepts values from IANA timezone database. Default: local timezone.' - mysql_target.user: '- (Required) User for the database access.' - name: '- (Required) Name of the endpoint.' - object_transfer_settings.cast: All of the attrubutes are optional and should be either "BEFORE_DATA", "AFTER_DATA" or "NEVER". - object_transfer_settings.trigger: All of the attrubutes are optional and should be either "BEFORE_DATA", "AFTER_DATA" or "NEVER". - parser.audit_trails_v1_parser: '- Parse Audit Trails data. Empty struct.' - parser.cloud_logging_parser: '- Parse Cloud Logging data. Empty struct.' - parser.json_parser: '- Parse data in json format.' - parser.json_parser.add_rest_column: '- Add fields, that are not in the schema, into the _rest column.' - parser.json_parser.data_schema: '- (Required) Data parsing scheme.The structure is documented below.' - parser.json_parser.data_schema.fields: '- Description of the data schema in the array of fields structure (documented below).' - parser.json_parser.data_schema.fields.key: -Mark field as Primary Key. - parser.json_parser.data_schema.fields.name: '- (Required) Field name.' - parser.json_parser.data_schema.fields.path: '- Path to the field.' - parser.json_parser.data_schema.fields.required: '- Mark field as required.' - parser.json_parser.data_schema.fields.type: '- (Required) Field type, one of: INT64, INT32, INT16, INT8, UINT64, UINT32, UINT16, UINT8, DOUBLE, BOOLEAN, STRING, UTF8, ANY, DATETIME.' - parser.json_parser.data_schema.json_fields: '- Description of the data schema as JSON specification.' - parser.json_parser.null_keys_allowed: '- Allow null keys. If false - null keys will be putted to unparsed data' - parser.json_parser.unescape_string_values: '- Allow unescape string values.' - parser.tskv_parser: '- Parse data if tskv format.' - postgres_target.connection: '- (Required) Connection settings. The structure is documented below.' - postgres_target.connection.mdb_cluster_id: '- Identifier of the Managed PostgreSQL cluster.' - postgres_target.connection.on_premise: '- Connection settings of the on-premise PostgreSQL server.' - postgres_target.connection.on_premise.hosts: '- (Required) List of host names of the PostgreSQL server. Exactly one host is expected currently.' - postgres_target.connection.on_premise.port: '- (Required) Port for the database connection.' - postgres_target.connection.on_premise.subnet_id: '- (Optional) Identifier of the Yandex Cloud VPC subnetwork to user for accessing the database. If omitted, the server has to be accessible via Internet.' - postgres_target.connection.on_premise.tls_mode: '- (Optional) TLS settings for the server connection. Empty implies plaintext connection. The structure is documented below.' - postgres_target.database: '- (Required) Name of the database to transfer.' - postgres_target.password: '- (Required) Password for the database access. This is a block with a single field named raw which should contain the password.' - postgres_target.security_groups: '- (Optional) List of security groups that the transfer associated with this endpoint should use.' - postgres_target.user: '- (Required) User for the database access.' - serializer.serializer_auto: '- Empty block. Select data serialization format automatically.' - serializer.serializer_debezium: '- Serialize data in json format. The structure is documented below.' - serializer.serializer_debezium.serializer_parameters: '- A list of debezium parameters set by the structure of the key and value string fields.' - serializer.serializer_json: '- Empty block. Serialize data in json format.' - settings: '- (Required) Settings for the endpoint. The structure is documented below.' - settings.clickhouse_source: '- (Optional) Settings specific to the ClickHouse source endpoint.' - settings.clickhouse_target: '- (Optional) Settings specific to the ClickHouse target endpoint.' - settings.kafka_source: '- (Optional) Settings specific to the Kafka source endpoint.' - settings.kafka_target: '- (Optional) Settings specific to the Kafka target endpoint.' - settings.mongo_source: '- (Optional) Settings specific to the MongoDB source endpoint.' - settings.mongo_target: '- (Optional) Settings specific to the MongoDB target endpoint.' - settings.mysql_source: '- (Optional) Settings specific to the MySQL source endpoint.' - settings.mysql_target: '- (Optional) Settings specific to the MySQL target endpoint.' - settings.postgres_source: '- (Optional) Settings specific to the PostgreSQL source endpoint.' - settings.postgres_source.connection: '- (Required) Connection settings. The structure is documented below.' - settings.postgres_source.database: '- (Required) Name of the database to transfer.' - settings.postgres_source.exclude_tables: '- List of tables which will not be transfered, formatted as schemaname.tablename.' - settings.postgres_source.include_tables: '- List of tables to transfer, formatted as schemaname.tablename. If omitted or an empty list is specified, all tables will be transferred.' - settings.postgres_source.object_transfer_settings: '- (Optional) Defines which database schema objects should be transferred, e.g. views, functions, etc.' - settings.postgres_source.password: '- (Required) Password for the database access. This is a block with a single field named raw which should contain the password.' - settings.postgres_source.security_groups: '- (Optional) List of security groups that the transfer associated with this endpoint should use.' - settings.postgres_source.service_schema: '- (Optional) Name of the database schema in which auxiliary tables needed for the transfer will be created. Empty service_schema implies schema "public".' - settings.postgres_source.slot_gigabyte_lag_limit: '- (Optional) Maximum WAL size held by the replication slot, in gigabytes. Exceeding this limit will result in a replication failure and deletion of the replication slot. Unlimited by default.' - settings.postgres_source.user: '- (Required) User for the database access.' - settings.postgres_target: '- (Optional) Settings specific to the PostgreSQL target endpoint.' - settings.ydb_source: '- (Optional) Settings specific to the YDB source endpoint.' - settings.ydb_target: '- (Optional) Settings specific to the YDB target endpoint.' - settings.yds_source: '- (Optional) Settings specific to the YDS source endpoint.' - settings.yds_target: '- (Optional) Settings specific to the YDS target endpoint.' - sharding.column_value_hash: '- Shard data by the hash value of the specified column. The structure is documented below.' - sharding.column_value_hash.column_name: '- The name of the column to calculate hash from.' - sharding.transfer_id: '- Shard data by ID of the transfer.' - tls_mode.disabled: '- Empty block designating that the connection is not secured, i.e. plaintext connection.' - tls_mode.enabled: '- If this attribute is not an empty block, then TLS is used for the server connection. The structure is documented below.' - tls_mode.enabled.ca_certificate: '- (Optional) X.509 certificate of the certificate authority which issued the server''s certificate, in PEM format. If empty, the server''s certificate must be signed by a well-known CA.' - topic_settings.topic: '- All messages will be sent to one topic. The structure is documented below.' - topic_settings.topic.save_tx_order: '- Not to split events queue into separate per-table queues.' - topic_settings.topic.topic_name: '- Full topic name' - topic_settings.topic_prefix: '- Topic name prefix. Messages will be sent to topic with name ...' - ydb_source.changefeed_custom_name: -- (Optional) Custom name for changefeed. - ydb_source.database: '-- (Required) Database path in YDB where tables are stored. Example: "/ru/transfer_manager/prod/data-transfer-yt".' - ydb_source.instance: '-- (Optional) Instance of YDB. Example: "my-cute-ydb.cloud.yandex.ru:2135".' - ydb_source.paths: -- (Optional) A list of paths which should be uploaded. When not specified, all available tables are uploaded. - ydb_source.sa_key_content: -- (Optional, Sensitive) Authentication key. - ydb_source.security_groups: -- (Optional) List of security groups that the transfer associated with this endpoint should use. - ydb_source.service_account_id: -- (Optional) Service account ID for interaction with database. - ydb_source.subnet_id: -- (Optional) Identifier of the Yandex Cloud VPC subnetwork to user for accessing the database. If omitted, the server has to be accessible via Internet. - ydb_target.auth: '- (Required) Authentication data.' - ydb_target.cleanup_policy: -- (Optional) How to clean collections when activating the transfer. One of "YDB_CLEANUP_POLICY_DISABLED" or "YDB_CLEANUP_POLICY_DROP". - ydb_target.connection: '- (Required) Connection settings.' - ydb_target.database: '-- (Required) Database path in YDB where tables are stored. Example: "/ru/transfer_manager/prod/data-transfer-yt".' - ydb_target.default_compression: -- (Optional) Compression that will be used for default columns family on YDB table creation One of "YDB_DEFAULT_COMPRESSION_UNSPECIFIED", "YDB_DEFAULT_COMPRESSION_DISABLED", "YDB_DEFAULT_COMPRESSION_LZ4". - ydb_target.instance: '-- (Optional) Instance of YDB. Example: "my-cute-ydb.cloud.yandex.ru:2135".' - ydb_target.is_table_column_oriented: -- (Optional) Whether a column-oriented (i.e. OLAP) tables should be created. Default is false (create row-oriented OLTP tables). - ydb_target.path: -- (Optional) A path where resulting tables are stored. - ydb_target.sa_key_content: -- (Optional, Sensitive) Authentication key. - ydb_target.security_groups: -- (Optional) List of security groups that the transfer associated with this endpoint should use. - ydb_target.service_account_id: -- (Optional) Service account ID for interaction with database. - ydb_target.subnet_id: -- (Optional) Identifier of the Yandex Cloud VPC subnetwork to user for accessing the database. If omitted, the server has to be accessible via Internet. - ydb_target.topic_settings: '- (Required) Target topic settings.' - yds_source.allow_ttl_rewind: -- (Optional) Should continue working, if consumer read lag exceed TTL of topic. - yds_source.consumer: -- (Optional) Consumer. - yds_source.database: -- (Required) Database. - yds_source.endpoint: -- (Optional) YDS Endpoint. - yds_source.parser: -- (Optional) Data parsing rules. - yds_source.security_groups: -- (Optional) List of security groups that the transfer associated with this endpoint should use. - yds_source.service_account_id: -- (Required) Service account ID for interaction with database. - yds_source.stream: -- (Optional) Stream. - yds_source.subnet_id: -- (Optional) Identifier of the Yandex Cloud VPC subnetwork to user for accessing the database. If omitted, the server has to be accessible via Internet. - yds_source.supported_codecs: -- (Optional) List of supported compression codec. - yds_target.database: -- (Required) Database. - yds_target.endpoint: -- (Optional) YDS Endpoint. - yds_target.save_tx_order: -- (Optional) Save transaction order - yds_target.security_groups: -- (Optional) List of security groups that the transfer associated with this endpoint should use. - yds_target.serializer: -- (Optional) Data serialization format. - yds_target.service_account_id: -- (Required) Service account ID for interaction with database. - yds_target.stream: -- (Optional) Stream. - yds_target.subnet_id: -- (Optional) Identifier of the Yandex Cloud VPC subnetwork to user for accessing the database. If omitted, the server has to be accessible via Internet. - importStatements: [] - yandex_datatransfer_transfer: - subCategory: "" - description: Manages a Data Transfer transfer within Yandex.Cloud. - name: yandex_datatransfer_transfer - title: yandex_datatransfer_transfer - examples: - - name: pgpg_transfer - manifest: |- - { - "folder_id": "some_folder_id", - "name": "pgpg", - "runtime": [ - { - "yc_runtime": [ - { - "job_count": 1, - "upload_shard_params": [ - { - "job_count": 4, - "process_count": 1 - } - ] - } - ] - } - ], - "source_id": "${yandex_datatransfer_endpoint.pg_source.id}", - "target_id": "${yandex_datatransfer_endpoint.pg_target.id}", - "transformation": [ - { - "transformers": [ - { - "one": { - "of": { - "transfomer": [ - {} - ] - } - } - }, - { - "one": { - "of": { - "transfomers": [ - {} - ] - } - } - } - ] - } - ], - "type": "SNAPSHOT_AND_INCREMENT" - } - references: - source_id: yandex_datatransfer_endpoint.pg_source.id - target_id: yandex_datatransfer_endpoint.pg_target.id - dependencies: - yandex_datatransfer_endpoint.pg_source: |- - { - "name": "pg-test-source", - "settings": [ - { - "postgres_source": [ - { - "connection": [ - { - "on_premise": [ - { - "hosts": [ - "example.org" - ], - "port": 5432 - } - ] - } - ], - "database": "db1", - "password": [ - { - "raw": "123" - } - ], - "slot_gigabyte_lag_limit": 100, - "user": "user1" - } - ] - } - ] - } - yandex_datatransfer_endpoint.pg_target: |- - { - "folder_id": "some_folder_id", - "name": "pg-test-target2", - "settings": [ - { - "postgres_target": [ - { - "connection": [ - { - "mdb_cluster_id": "some_cluster_id" - } - ], - "database": "db2", - "password": [ - { - "raw": "321" - } - ], - "user": "user2" - } - ] - } - ] - } - argumentDocs: - columns.exclude_columns: '- (Optional) List of columns that will be excluded to transfer.' - columns.include_columns: '- (Optional) List of columns that will be included to transfer.' - convert_to_string.columns: '- (Optional) List of the columns to transfer to the target tables using lists of included and excluded columns (see block documentation below).' - convert_to_string.tables: '- (Optional) Table filter (see block documentation below).' - description: '- (Optional) Arbitrary description text for the transfer.' - filter_columns.columns: '- (Optional) List of the columns to transfer to the target tables using lists of included and excluded columns (see block documentation below).' - filter_columns.tables: '- (Optional) Table filter (see block documentation below).' - filter_rows.filter: '- (Optional) Filtering criterion. This can be comparison operators for numeric, string, and Boolean values, comparison to NULL, and checking whether a substring is part of a string. Details here: https://cloud.yandex.com/en/docs/data-transfer/concepts/data-transformation#append-only-sources' - filter_rows.tables: '- (Optional) Table filter (see block documentation below).' - folder_id: '- (Optional) ID of the folder to create the transfer in. If it is not provided, the default provider folder is used.' - id: '- (Computed) Identifier of a new Data Transfer transfer.' - labels: '- (Optional) A set of key/value label pairs to assign to the Data Transfer transfer.' - name: '- (Required) Name of the transfer.' - on_create_activate_mode: |- - - (Optional) Activation action on create a new incremental transfer. - It is not part of the transfer parameter and is used only on create. - One of "sync_activate", "async_activate", "dont_activate". The default is "sync_activate". - rename_tables.rename_tables: '- (Optional) List of renaming rules.' - rename_tables.rename_tables.new_name: '- (Optional) Specify the new names for this table in the target.' - rename_tables.rename_tables.original_name: '- (Optional) Specify the current names of the table in the source.' - replace_primary_key.keys: '- (Optional) List of columns to be used as primary keys.' - replace_primary_key.tables: '- (Optional) Table filter (see block documentation below).' - runtime: '- (Optional) Runtime parameters for the transfer.' - runtime.yc_runtime: '- (Optional) YC Runtime parameters for the transfer.' - runtime.yc_runtime.job_count: '- (Optional) Number of workers in parallel replication.' - runtime.yc_runtime.upload_shard_params: '- (Optional) Parallel snapshot parameters.' - runtime.yc_runtime.upload_shard_params.job_count: '- (Optional) Number of workers.' - runtime.yc_runtime.upload_shard_params.process_count: '- (Optional) Number of threads.' - sharder_transformer.columns: '- (Optional) List of the columns to transfer to the target tables using lists of included and excluded columns (see block documentation below).' - sharder_transformer.shards_count: '- (Optional) Number of shards.' - sharder_transformer.tables: '- (Optional) Table filter (see block documentation below).' - source_id: '- (Optional) ID of the source endpoint for the transfer.' - table_splitter_transformer.columns: '- (Optional) List of strings that specify the columns in the tables to be partitioned.' - table_splitter_transformer.splitter: '- (Optional) Specify the split string to be used for merging components in a new table name.' - table_splitter_transformer.tables: '- (Optional) Table filter (see block documentation below).' - tables.exclude_tables: '- (Optional) List of tables that will be excluded to transfer.' - tables.include_tables: '- (Optional) List of tables that will be included to transfer.' - target_id: '- (Optional) ID of the target endpoint for the transfer.' - transformation: '- (Optional) Transformation for the transfer.' - transformation.transformers: '- (Optional) A list of transformers. You can specify exactly 1 transformer in each element of list.' - transformation.transformers.convert_to_string: '- (Optional) Convert column values to strings.' - transformation.transformers.filter_columns: '- (Optional) Set up a list of table columns to transfer.' - transformation.transformers.filter_rows: '- (Optional) This filter only applies to transfers with queues (Apache Kafka®) as a data source. When running a transfer, only the strings meeting the specified criteria remain in a changefeed.' - transformation.transformers.mask_field: '- (Optional) Mask field transformer allows you to hash data.' - transformation.transformers.mask_field.columns: '- (Optional) List of strings that specify the name of the column for data masking (a regular expression).' - transformation.transformers.mask_field.function: '- (Optional) Mask function.' - transformation.transformers.mask_field.function.mask_function_hash: '- (Optional) Hash mask function.' - transformation.transformers.mask_field.function.mask_function_hash.user_defined_salt: '- (Optional) This string will be used in the HMAC(sha256, salt) function applied to the column data.' - transformation.transformers.mask_field.tables: '- (Optional) Table filter.' - transformation.transformers.rename_tables: '- (Optional) Set rules for renaming tables by specifying the current names of the tables in the source and new names for these tables in the target.' - transformation.transformers.replace_primary_key: '- (Optional) Override primary keys.' - transformation.transformers.sharder_transformer: '- (Optional) Set the number of shards for particular tables and a list of columns whose values will be used for calculating a hash to determine a shard.' - transformation.transformers.table_splitter_transformer: '- (Optional) Splits the X table into multiple tables (X_1, X_2, ..., X_n) based on data.' - type: '- (Required) Type of the transfer. One of "SNAPSHOT_ONLY", "INCREMENT_ONLY", "SNAPSHOT_AND_INCREMENT".' - warning: '- (Computed) Error description if transfer has any errors.' - importStatements: [] - yandex_dns_recordset: - subCategory: "" - description: Manages a DNS Recordset within Yandex.Cloud. - name: yandex_dns_recordset - title: yandex_dns_recordset - examples: - - name: rs1 - manifest: |- - { - "data": [ - "10.1.0.1" - ], - "name": "srv.example.com.", - "ttl": 200, - "type": "A", - "zone_id": "${yandex_dns_zone.zone1.id}" - } - references: - zone_id: yandex_dns_zone.zone1.id - dependencies: - yandex_dns_zone.zone1: |- + "data": [ + "10.1.0.1" + ], + "name": "srv.example.com.", + "ttl": 200, + "type": "A", + "zone_id": "${yandex_dns_zone.zone1.id}" + } + references: + zone_id: yandex_dns_zone.zone1.id + dependencies: + yandex_dns_zone.zone1: |- { "description": "desc", "labels": { @@ -3413,7 +3071,7 @@ resources: zone_id: '- (Required) The id of the zone in which this record set will reside.' importStatements: [] yandex_dns_zone: - subCategory: "" + subCategory: DNS (Domain Name System) description: Manages a DNS Zone within Yandex.Cloud. name: yandex_dns_zone title: yandex_dns_zone @@ -3446,19 +3104,23 @@ resources: } yandex_vpc_network.foo: '{}' argumentDocs: - created_at: '- (Computed) The DNS zone creation timestamp.' - deletion_protection: '- (Optional) Flag that protects the dns zone from accidental deletion.' - description: '- (Optional) Description of the DNS zone.' - folder_id: '- (Optional) ID of the folder to create a zone in. If it is not provided, the default provider folder is used.' - id: '- (Computed) ID of a new DNS zone.' - labels: '- (Optional) A set of key/value label pairs to assign to the DNS zone.' - name: '- (Optional) User assigned name of a specific resource. Must be unique within the folder.' - private_networks: '- (Optional) For privately visible zones, the set of Virtual Private Cloud resources that the zone is visible from.' - public: '- (Optional) The zone''s visibility: public zones are exposed to the Internet, while private zones are visible only to Virtual Private Cloud resources.' - zone: '- (Required) The DNS name of this zone, e.g. "example.com.". Must ends with dot.' + create: (String) A string that can be parsed as a duration consisting of numbers and unit suffixes, such as "30s" or "2h45m". Valid time units are "s" (seconds), "m" (minutes), "h" (hours). + created_at: (String) The DNS zone creation timestamp. + delete: (String) A string that can be parsed as a duration consisting of numbers and unit suffixes, such as "30s" or "2h45m". Valid time units are "s" (seconds), "m" (minutes), "h" (hours). Setting a timeout for a Delete operation is only applicable if changes are saved into state before the destroy operation occurs. + deletion_protection: (Boolean) Flag that protects the dns zone from accidental deletion. + description: (String) Description of the DNS zone. + folder_id: (String) ID of the folder to create a zone in. If it is not provided, the default provider folder is used. + id: (String) The ID of this resource. + labels: (Map of String) A set of key/value label pairs to assign to the DNS zone. + name: (String) User assigned name of a specific resource. Must be unique within the folder. + private_networks: (Set of String) For privately visible zones, the set of Virtual Private Cloud resources that the zone is visible from. + public: '(Boolean) The zone''s visibility: public zones are exposed to the Internet, while private zones are visible only to Virtual Private Cloud resources.' + timeouts: (Block, Optional) (see below for nested schema) + update: (String) A string that can be parsed as a duration consisting of numbers and unit suffixes, such as "30s" or "2h45m". Valid time units are "s" (seconds), "m" (minutes), "h" (hours). + zone: (String) The DNS name of this zone, e.g. "example.com.". Must ends with dot. importStatements: [] yandex_dns_zone_iam_binding: - subCategory: "" + subCategory: DNS (Domain Name System) description: Allows management of a single IAM binding for a name: yandex_dns_zone_iam_binding title: yandex_dns_zone_iam_binding @@ -3482,13 +3144,11 @@ resources: } argumentDocs: dns_zone_id: '- (Required) The DNS Zone ID to apply a binding to.' - members: |- - - (Required) Identities that will be granted the privilege in role. - Each entry can have one of the following values: + members: '- (Required) Identities that will be granted the privilege in role. Each entry can have one of the following values:' role: '- (Required) The role that should be applied. See roles.' importStatements: [] yandex_function: - subCategory: "" + subCategory: Serverless Function description: Allows management of a Yandex Cloud Function. name: yandex_function title: yandex_function @@ -3529,6 +3189,16 @@ resources: } ], "memory": "128", + "mounts": [ + { + "ephemeral_disk": [ + { + "size_gb": 32 + } + ], + "name": "mnt" + } + ], "name": "some_name", "runtime": "python37", "secrets": [ @@ -3545,60 +3215,121 @@ resources: ], "user_hash": "any_user_defined_string" } + references: + secrets.id: yandex_lockbox_secret.secret.id + secrets.version_id: yandex_lockbox_secret_version.secret_version.id + - name: test-function + manifest: |- + { + "content": [ + { + "zip_filename": "function.zip" + } + ], + "entrypoint": "index.handler", + "execution_timeout": "10", + "memory": "128", + "mounts": [ + { + "mode": "ro", + "name": "mnt", + "object_storage": [ + { + "bucket": "${yandex_storage_bucket.my-bucket.bucket}" + } + ] + } + ], + "name": "some_name", + "runtime": "python37", + "service_account_id": "are1service2account3id", + "user_hash": "v1" + } + references: + mounts.object_storage.bucket: yandex_storage_bucket.my-bucket.bucket + dependencies: + yandex_iam_service_account.sa: |- + { + "folder_id": "${local.folder_id}", + "name": "test-sa" + } + yandex_iam_service_account_static_access_key.sa-static-key: |- + { + "description": "static access key for object storage", + "service_account_id": "${yandex_iam_service_account.sa.id}" + } + yandex_resourcemanager_folder_iam_member.sa-editor: |- + { + "folder_id": "${local.folder_id}", + "member": "serviceAccount:${yandex_iam_service_account.sa.id}", + "role": "storage.editor" + } + yandex_storage_bucket.my-bucket: |- + { + "access_key": "${yandex_iam_service_account_static_access_key.sa-static-key.access_key}", + "bucket": "bucket", + "secret_key": "${yandex_iam_service_account_static_access_key.sa-static-key.secret_key}" + } argumentDocs: - async_invocation: '- Config for asynchronous invocations of Yandex Cloud Function.' + async_invocation: '- Config for asynchronous invocations of Yandex Cloud Function' async_invocation.retries_count: '- Maximum number of retries for async invocation' async_invocation.service_account_id: '- Service account used for async invocation' async_invocation.ymq_failure_target: '- Target for unsuccessful async invocation' async_invocation.ymq_success_target: '- Target for successful async invocation' async_invocation.ymq_success_target.arn: '- YMQ ARN' - async_invocation.ymq_success_target.disabled: '- Is logging from function disabled' - async_invocation.ymq_success_target.folder_id: '- Log entries are written to default log group for specified folder' - async_invocation.ymq_success_target.log_group_id: '- Log entries are written to specified log group' - async_invocation.ymq_success_target.log_options: 'block supports:' - async_invocation.ymq_success_target.min_level: '- Minimum log entry level' async_invocation.ymq_success_target.service_account_id: '- Service account used for writing result to queue' - concurrency: '- The maximum number of requests processed by a function instance at the same time.' - connectivity: '- Function version connectivity. If specified the version will be attached to specified network.' - connectivity.0.network_id: '- Network the version will have access to. It''s essential to specify network with subnets in all availability zones.' - content: '- Version deployment content for Yandex Cloud Function code. Can be only one package or content section. Either package or content section must be specified.' - content.0.zip_filename: '- Filename to zip archive for the version.' - created_at: '- Creation timestamp of the Yandex Cloud Function.' + concurrency: '- The maximum number of requests processed by a function instance at the same time' + connectivity: '- Function version connectivity. If specified the version will be attached to specified network' + connectivity.0.network_id: '- Network the version will have access to. It''s essential to specify network with subnets in all availability zones' + content: '- Version deployment content for Yandex Cloud Function code. Can be only one package or content section. Either package or content section must be specified' + content.0.zip_filename: '- Filename to zip archive for the version' + created_at: '- Creation timestamp of the Yandex Cloud Function' description: '- Description of the Yandex Cloud Function' entrypoint: '- (Required) Entrypoint for Yandex Cloud Function' environment: '- A set of key/value environment variables for Yandex Cloud Function' execution_timeout: '- Execution timeout in seconds for Yandex Cloud Function' folder_id: '- Folder ID for the Yandex Cloud Function' - image_size: '- Image size for Yandex Cloud Function.' + image_size: '- Image size for Yandex Cloud Function' labels: '- A set of key/value label pairs to assign to the Yandex Cloud Function' - log_options: '- Options for logging from Yandex Cloud Function.' - loggroup_id: '- Loggroup ID size for Yandex Cloud Function.' + log_options: '- Options for logging from Yandex Cloud Function' + log_options.disabled: '- Is logging from function disabled' + log_options.folder_id: '- Log entries are written to default log group for specified folder' + log_options.log_group_id: '- Log entries are written to specified log group' + log_options.min_level: '- Minimum log entry level' memory: '- (Required) Memory in megabytes (aligned to 128MB) for Yandex Cloud Function' + mounts: '- Mounts for Yandex Cloud Function.' + mounts.0.ephemeral_disk: '- One of the available mount types. Disk available during the function execution time' + mounts.0.ephemeral_disk.0.block_size_kb: '- Optional block size of the ephemeral disk in KB' + mounts.0.ephemeral_disk.0.size_gb: '- (Required) Size of the ephemeral disk in GB' + mounts.0.mode: '- Mount’s accessibility mode. Valid values are ro and rw' + mounts.0.name: '- (Required) Name of the mount point. The directory where the target is mounted will be accessible at the /function/storage/ path' + mounts.0.object_storage: '- One of the available mount types. Object storage as a mount' + mounts.0.object_storage.0.bucket: '- (Required) Name of the mounting bucket' + mounts.0.object_storage.0.prefix: '- Prefix within the bucket. If you leave this field empty, the entire bucket will be mounted' name: (Required) - Yandex Cloud Function name used to define trigger - package: '- Version deployment package for Yandex Cloud Function code. Can be only one package or content section. Either package or content section must be specified.' - package.0.bucket_name: '- Name of the bucket that stores the code for the version.' - package.0.object_name: '- Name of the object in the bucket that stores the code for the version.' - package.0.sha_256: '- SHA256 hash of the version deployment package.' + package: '- Version deployment package for Yandex Cloud Function code. Can be only one package or content section. Either package or content section must be specified' + package.0.bucket_name: '- Name of the bucket that stores the code for the version' + package.0.object_name: '- Name of the object in the bucket that stores the code for the version' + package.0.sha_256: '- SHA256 hash of the version deployment package' runtime: '- (Required) Runtime for Yandex Cloud Function' secrets: '- Secrets for Yandex Cloud Function.' - secrets.bucket: '- (Required) Name of the mounting bucket.' - secrets.environment_variable: '- (Required) Function''s environment variable in which secret''s value will be stored.' - secrets.id: '- (Required) Secret''s id.' - secrets.key: '- (Required) Secret''s entries key which value will be stored in environment variable.' - secrets.mount_point_name: '- (Required) Name of the mount point. The directory where the bucket is mounted will be accessible at the /function/storage/ path.' - secrets.prefix: '- Prefix within the bucket. If you leave this field empty, the entire bucket will be mounted.' - secrets.read_only: '- Mount the bucket in read-only mode.' - secrets.storage_mounts: 'block supports:' - secrets.version_id: '- (Required) Secret''s version id.' + secrets.environment_variable: '- (Required) Function''s environment variable in which secret''s value will be stored' + secrets.id: '- (Required) Secret''s id' + secrets.key: '- (Required) Secret''s entries key which value will be stored in environment variable' + secrets.version_id: '- (Required) Secret''s version id' service_account_id: '- Service account ID for Yandex Cloud Function' - storage_mounts: '- Storage mounts for Yandex Cloud Function.' - tags: '- Tags for Yandex Cloud Function. Tag "$latest" isn''t returned.' - tmpfs_size: '- Tmpfs size for Yandex Cloud Function.' + storage_mounts: '- (DEPRECATED, use mounts.0.object_storage instead) Storage mounts for Yandex Cloud Function' + storage_mounts.0.bucket: '- (Required) Name of the mounting bucket' + storage_mounts.0.mount_point_name: '- (Required) Name of the mount point. The directory where the bucket is mounted will be accessible at the /function/storage/ path' + storage_mounts.0.prefix: '- Prefix within the bucket. If you leave this field empty, the entire bucket will be mounted' + storage_mounts.0.read_only: '- Mount the bucket in read-only mode' + tags: '- Tags for Yandex Cloud Function. Tag "$latest" isn''t returned' + tmpfs_size: '- Tmpfs size for Yandex Cloud Function' user_hash: '- (Required) User-defined string for current function version. User must change this string any times when function changed. Function will be updated when hash is changed.' - version: '- Version for Yandex Cloud Function.' + version: '- Version for Yandex Cloud Function' importStatements: [] yandex_function_iam_binding: - subCategory: "" + subCategory: Serverless Function description: Allows management of a single IAM binding for a name: yandex_function_iam_binding title: yandex_function_iam_binding @@ -3614,13 +3345,11 @@ resources: } argumentDocs: function_id: '- (Required) The Yandex Cloud Function ID to apply a binding to.' - members: |- - - (Required) Identities that will be granted the privilege in role. - Each entry can have one of the following values: + members: '- (Required) Identities that will be granted the privilege in role. Each entry can have one of the following values:' role: '- (Required) The role that should be applied. See roles' importStatements: [] yandex_function_scaling_policy: - subCategory: "" + subCategory: Serverless Function description: Allows management of a Yandex Cloud Function Scaling Policy. name: yandex_function_scaling_policy title: yandex_function_scaling_policy @@ -3651,7 +3380,7 @@ resources: policy.{num}.zone_requests_limit: '- max number of requests in one zone for Yandex.Cloud Function with tag' importStatements: [] yandex_function_trigger: - subCategory: "" + subCategory: Serverless Function description: Allows management of a Yandex Cloud Functions Trigger. name: yandex_function_trigger title: yandex_function_trigger @@ -3747,7 +3476,7 @@ resources: timer.0.payload: '- Payload to be passed to function' importStatements: [] yandex_iam_service_account: - subCategory: "" + subCategory: IAM (Identity and Access Management) description: Allows management of a Yandex.Cloud IAM service account. name: yandex_iam_service_account title: yandex_iam_service_account @@ -3760,15 +3489,11 @@ resources: } argumentDocs: description: '- (Optional) Description of the service account.' - folder_id: |- - - (Optional) ID of the folder that the service account will be created in. - Defaults to the provider folder configuration. - name: |- - - (Required) Name of the service account. - Can be updated without creating a new resource. + folder_id: '- (Optional) ID of the folder that the service account will be created in. Defaults to the provider folder configuration.' + name: '- (Required) Name of the service account. Can be updated without creating a new resource.' importStatements: [] yandex_iam_service_account_api_key: - subCategory: "" + subCategory: IAM (Identity and Access Management) description: Allows management of a Yandex.Cloud IAM service account API key. name: yandex_iam_service_account_api_key title: yandex_iam_service_account_api_key @@ -3777,20 +3502,28 @@ resources: manifest: |- { "description": "api key for authorization", + "expires_at": "2024-11-11T00:00:00Z", "pgp_key": "keybase:keybaseusername", + "scope": "yc.ydb.topics.manage", "service_account_id": "some_sa_id" } argumentDocs: created_at: '- Creation timestamp of the static access key.' description: '- (Optional) The description of the key.' encrypted_secret_key: '- The encrypted secret key, base64 encoded. This is only populated when pgp_key is supplied.' + expires_at: '- (Optional) The key will be no longer valid after expiration timestamp.' key_fingerprint: '- The fingerprint of the PGP key used to encrypt the secret key. This is only populated when pgp_key is supplied.' + output_to_lockbox: '- (Optional) Used to store the sensitive values into a Lockbox secret, to avoid leaking them to the Terraform state.' + output_to_lockbox.entry_for_secret_key: '- (Required) Entry where to store the value of secret_key.' + output_to_lockbox.secret_id: '- (Required) ID of the Lockbox secret where to store the sensible values.' + output_to_lockbox_version_id: '- ID of the Lockbox secret version that contains the value of secret_key. This is only populated when output_to_lockbox is supplied. This version will be destroyed when the IAM key is destroyed, or when output_to_lockbox is removed.' pgp_key: '- (Optional) An optional PGP key to encrypt the resulting secret key material. May either be a base64-encoded public key or a keybase username in the form keybase:keybaseusername.' - secret_key: '- The secret key. This is only populated when no pgp_key is provided.' + scope: '- (Optional) The scope of the key.' + secret_key: '- The secret key. This is only populated when neither pgp_key nor output_to_lockbox are provided.' service_account_id: '- (Required) ID of the service account to an API key for.' importStatements: [] yandex_iam_service_account_iam_binding: - subCategory: "" + subCategory: IAM (Identity and Access Management) description: Allows management of a single IAM binding for a Yandex IAM service account. name: yandex_iam_service_account_iam_binding title: yandex_iam_service_account_iam_binding @@ -3805,16 +3538,12 @@ resources: "service_account_id": "your-service-account-id" } argumentDocs: - members: |- - - (Required) Identities that will be granted the privilege in role. - Each entry can have one of the following values: - role: |- - - (Required) The role that should be applied. Only one - yandex_iam_service_account_iam_binding can be used per role. + members: '- (Required) Identities that will be granted the privilege in role. Each entry can have one of the following values:' + role: '- (Required) The role that should be applied. Only one yandex_iam_service_account_iam_binding can be used per role.' service_account_id: '- (Required) The service account ID to apply a binding to.' importStatements: [] yandex_iam_service_account_iam_member: - subCategory: "" + subCategory: IAM (Identity and Access Management) description: Allows management of a single member for a single IAM binding for a Yandex IAM service account. name: yandex_iam_service_account_iam_member title: yandex_iam_service_account_iam_member @@ -3827,16 +3556,12 @@ resources: "service_account_id": "your-service-account-id" } argumentDocs: - member: |- - - (Required) Identity that will be granted the privilege in role. - Entry can have one of the following values: - role: |- - - (Required) The role that should be applied. Only one - yandex_iam_service_account_iam_binding can be used per role. + member: '- (Required) Identity that will be granted the privilege in role. Entry can have one of the following values:' + role: '- (Required) The role that should be applied. Only one yandex_iam_service_account_iam_binding can be used per role.' service_account_id: '- (Required) The service account ID to apply a policy to.' importStatements: [] yandex_iam_service_account_iam_policy: - subCategory: "" + subCategory: IAM (Identity and Access Management) description: Allows management of the IAM policy for a Yandex IAM service account. name: yandex_iam_service_account_iam_policy title: yandex_iam_service_account_iam_policy @@ -3847,20 +3572,16 @@ resources: "policy_data": "${data.yandex_iam_policy.admin.policy_data}", "service_account_id": "your-service-account-id" } + references: + policy_data: data.yandex_iam_policy.admin.policy_data argumentDocs: - members: |- - - (Required) Identities that will be granted the privilege in role. - Each entry can have one of the following values: - policy_data: |- - - (Required only by yandex_iam_service_account_iam_policy) The policy data generated by - a yandex_iam_policy data source. - role: |- - - (Required) The role that should be applied. Only one - yandex_iam_service_account_iam_binding can be used per role. + members: '- (Required) Identities that will be granted the privilege in role. Each entry can have one of the following values:' + policy_data: '- (Required only by yandex_iam_service_account_iam_policy) The policy data generated by a yandex_iam_policy data source.' + role: '- (Required) The role that should be applied. Only one yandex_iam_service_account_iam_binding can be used per role.' service_account_id: '- (Required) The service account ID to apply a policy to.' importStatements: [] yandex_iam_service_account_key: - subCategory: "" + subCategory: IAM (Identity and Access Management) description: Allows management of a Yandex.Cloud IAM service account key. name: yandex_iam_service_account_key title: yandex_iam_service_account_key @@ -3878,17 +3599,19 @@ resources: description: '- (Optional) The description of the key pair.' encrypted_private_key: '- The encrypted private key, base64 encoded. This is only populated when pgp_key is supplied.' format: '- (Optional) The output format of the keys. PEM_FILE is the default format.' - key_algorithm: |- - - (Optional) The algorithm used to generate the key. RSA_2048 is the default algorithm. - Valid values are listed in the API reference. + key_algorithm: '- (Optional) The algorithm used to generate the key. RSA_2048 is the default algorithm. Valid values are listed in the API reference.' key_fingerprint: '- The fingerprint of the PGP key used to encrypt the private key. This is only populated when pgp_key is supplied.' + output_to_lockbox: '- (Optional) Used to store the sensible values into a Lockbox secret, to avoid leaking them to the Terraform state.' + output_to_lockbox.entry_for_private_key: '- (Required) Entry where to store the value of private_key.' + output_to_lockbox.secret_id: '- (Required) ID of the Lockbox secret where to store the sensible values.' + output_to_lockbox_version_id: '- ID of the Lockbox secret version that contains the value of private_key. This is only populated when output_to_lockbox is supplied. This version will be destroyed when the IAM key is destroyed, or when output_to_lockbox is removed.' pgp_key: '- (Optional) An optional PGP key to encrypt the resulting private key material. May either be a base64-encoded public key or a keybase username in the form keybase:keybaseusername.' - private_key: '- The private key. This is only populated when no pgp_key is provided.' + private_key: '- The private key. This is only populated when neither pgp_key nor output_to_lockbox are provided.' public_key: '- The public key.' service_account_id: '- (Required) ID of the service account to create a pair for.' importStatements: [] yandex_iam_service_account_static_access_key: - subCategory: "" + subCategory: IAM (Identity and Access Management) description: Allows management of a Yandex.Cloud IAM service account static access key. name: yandex_iam_service_account_static_access_key title: yandex_iam_service_account_static_access_key @@ -3901,17 +3624,61 @@ resources: "service_account_id": "some_sa_id" } argumentDocs: - access_key: '- ID of the static access key.' + access_key: '- ID of the static access key. This is only populated when output_to_lockbox is not provided.' created_at: '- Creation timestamp of the static access key.' description: '- (Optional) The description of the service account static key.' encrypted_secret_key: '- The encrypted secret, base64 encoded. This is only populated when pgp_key is supplied.' key_fingerprint: '- The fingerprint of the PGP key used to encrypt the secret key. This is only populated when pgp_key is supplied.' + output_to_lockbox: '- (Optional) Used to store the sensible values into a Lockbox secret, to avoid leaking them to the Terraform state.' + output_to_lockbox.entry_for_access_key: '- (Required) Entry where to store the value of access_key.' + output_to_lockbox.entry_for_secret_key: '- (Required) Entry where to store the value of secret_key.' + output_to_lockbox.secret_id: '- (Required) ID of the Lockbox secret where to store the sensible values.' + output_to_lockbox_version_id: '- ID of the Lockbox secret version that contains the values of access_key and secret_key. This is only populated when output_to_lockbox is supplied. This version will be destroyed when the IAM key is destroyed, or when output_to_lockbox is removed.' pgp_key: '- (Optional) An optional PGP key to encrypt the resulting secret key material. May either be a base64-encoded public key or a keybase username in the form keybase:keybaseusername.' - secret_key: '- Private part of generated static access key. This is only populated when no pgp_key is provided.' + secret_key: '- Private part of generated static access key. This is only populated when neither pgp_key nor output_to_lockbox are provided.' service_account_id: '- (Required) ID of the service account which is used to get a static key.' importStatements: [] + yandex_iam_workload_identity_federated_credential: + subCategory: IAM (Identity and Access Management) + name: yandex_iam_workload_identity_federated_credential + title: yandex_iam_workload_identity_federated_credential + argumentDocs: + create: (String) A string that can be parsed as a duration consisting of numbers and unit suffixes, such as "30s" or "2h45m". Valid time units are "s" (seconds), "m" (minutes), "h" (hours). + created_at: (String) + delete: (String) A string that can be parsed as a duration consisting of numbers and unit suffixes, such as "30s" or "2h45m". Valid time units are "s" (seconds), "m" (minutes), "h" (hours). Setting a timeout for a Delete operation is only applicable if changes are saved into state before the destroy operation occurs. + external_subject_id: (String) + federation_id: (String) + id: (String) The ID of this resource. + read: (String) A string that can be parsed as a duration consisting of numbers and unit suffixes, such as "30s" or "2h45m". Valid time units are "s" (seconds), "m" (minutes), "h" (hours). Read operations occur during any refresh or planning operation when refresh is enabled. + service_account_id: (String) + timeouts: (Block, Optional) (see below for nested schema) + update: (String) A string that can be parsed as a duration consisting of numbers and unit suffixes, such as "30s" or "2h45m". Valid time units are "s" (seconds), "m" (minutes), "h" (hours). + importStatements: [] + yandex_iam_workload_identity_oidc_federation: + subCategory: IAM (Identity and Access Management) + name: yandex_iam_workload_identity_oidc_federation + title: yandex_iam_workload_identity_oidc_federation + argumentDocs: + audiences: (List of String) + create: (String) A string that can be parsed as a duration consisting of numbers and unit suffixes, such as "30s" or "2h45m". Valid time units are "s" (seconds), "m" (minutes), "h" (hours). + created_at: (String) + delete: (String) A string that can be parsed as a duration consisting of numbers and unit suffixes, such as "30s" or "2h45m". Valid time units are "s" (seconds), "m" (minutes), "h" (hours). Setting a timeout for a Delete operation is only applicable if changes are saved into state before the destroy operation occurs. + description: (String) + disabled: (Boolean) + enabled: (Boolean) + federation_id: (String) + folder_id: (String) + id: (String) The ID of this resource. + issuer: (String) + jwks_url: (String) + labels: (Map of String) + name: (String) + read: (String) A string that can be parsed as a duration consisting of numbers and unit suffixes, such as "30s" or "2h45m". Valid time units are "s" (seconds), "m" (minutes), "h" (hours). Read operations occur during any refresh or planning operation when refresh is enabled. + timeouts: (Block, Optional) (see below for nested schema) + update: (String) A string that can be parsed as a duration consisting of numbers and unit suffixes, such as "30s" or "2h45m". Valid time units are "s" (seconds), "m" (minutes), "h" (hours). + importStatements: [] yandex_iot_core_broker: - subCategory: "" + subCategory: IoT Core description: Allows management of a Yandex.Cloud IoT Core Broker. name: yandex_iot_core_broker title: yandex_iot_core_broker @@ -3949,7 +3716,7 @@ resources: name: (Required) - IoT Core Broker name used to define broker importStatements: [] yandex_iot_core_device: - subCategory: "" + subCategory: IoT Core description: Allows management of a Yandex.Cloud IoT Core Device. name: yandex_iot_core_device title: yandex_iot_core_device @@ -3983,7 +3750,7 @@ resources: registry_id: '- IoT Core Registry ID for the IoT Core Device' importStatements: [] yandex_iot_core_registry: - subCategory: "" + subCategory: IoT Core description: Allows management of a Yandex.Cloud IoT Core Registry. name: yandex_iot_core_registry title: yandex_iot_core_registry @@ -4026,7 +3793,7 @@ resources: passwords: '- A set of passwords''s id for the IoT Core Registry' importStatements: [] yandex_kms_asymmetric_encryption_key: - subCategory: "" + subCategory: KMS (Key Management Service) description: Creates a Yandex KMS asymmetric encryption key that can be used for cryptographic operation. name: yandex_kms_asymmetric_encryption_key title: yandex_kms_asymmetric_encryption_key @@ -4044,16 +3811,14 @@ resources: delete: '- Default 1 minute' description: '- (Optional) An optional description of the key.' encryption_algorithm: '- (Optional) Encryption algorithm to be used with a new key. The default value is RSA_2048_ENC_OAEP_SHA_256.' - folder_id: |- - - (Optional) The ID of the folder that the resource belongs to. If it - is not provided, the default provider folder is used. + folder_id: '- (Optional) The ID of the folder that the resource belongs to. If it is not provided, the default provider folder is used.' labels: '- (Optional) A set of key/value label pairs to assign to the key.' name: '- (Optional) Name of the key.' status: '- The status of the key.' update: '- Default 1 minute' importStatements: [] yandex_kms_asymmetric_encryption_key_iam_binding: - subCategory: "" + subCategory: KMS (Key Management Service) description: Allows management of a single IAM binding for a name: yandex_kms_asymmetric_encryption_key_iam_binding title: yandex_kms_asymmetric_encryption_key_iam_binding @@ -4077,13 +3842,11 @@ resources: } argumentDocs: asymmetric_encryption_key_id: '- (Required) The Yandex Key Management Service Asymmetric Encryption Key ID to apply a binding to.' - members: |- - - (Required) Identities that will be granted the privilege in role. - Each entry can have one of the following values: + members: '- (Required) Identities that will be granted the privilege in role. Each entry can have one of the following values:' role: '- (Required) The role that should be applied. See roles.' importStatements: [] yandex_kms_asymmetric_signature_key: - subCategory: "" + subCategory: KMS (Key Management Service) description: Creates a Yandex KMS asymmetric signature key that can be used for cryptographic operation. name: yandex_kms_asymmetric_signature_key title: yandex_kms_asymmetric_signature_key @@ -4100,9 +3863,7 @@ resources: created_at: '- Creation timestamp of the key.' delete: '- Default 1 minute' description: '- (Optional) An optional description of the key.' - folder_id: |- - - (Optional) The ID of the folder that the resource belongs to. If it - is not provided, the default provider folder is used. + folder_id: '- (Optional) The ID of the folder that the resource belongs to. If it is not provided, the default provider folder is used.' labels: '- (Optional) A set of key/value label pairs to assign to the key.' name: '- (Optional) Name of the key.' signature_algorithm: '- (Optional) Signature algorithm to be used with a new key. The default value is RSA_2048_SIGN_PSS_SHA_256.' @@ -4110,7 +3871,7 @@ resources: update: '- Default 1 minute' importStatements: [] yandex_kms_asymmetric_signature_key_iam_binding: - subCategory: "" + subCategory: KMS (Key Management Service) description: Allows management of a single IAM binding for a name: yandex_kms_asymmetric_signature_key_iam_binding title: yandex_kms_asymmetric_signature_key_iam_binding @@ -4134,13 +3895,11 @@ resources: } argumentDocs: asymmetric_signature_key_id: '- (Required) The Yandex Key Management Service Asymmetric Signature Key ID to apply a binding to.' - members: |- - - (Required) Identities that will be granted the privilege in role. - Each entry can have one of the following values: + members: '- (Required) Identities that will be granted the privilege in role. Each entry can have one of the following values:' role: '- (Required) The role that should be applied. See roles.' importStatements: [] yandex_kms_secret_ciphertext: - subCategory: "" + subCategory: KMS (Key Management Service) description: Encrypts given plaintext with the specified Yandex KMS key and provides access to the ciphertext. name: yandex_kms_secret_ciphertext title: yandex_kms_secret_ciphertext @@ -4152,6 +3911,8 @@ resources: "key_id": "${yandex_kms_symmetric_key.example.id}", "plaintext": "strong password" } + references: + key_id: yandex_kms_symmetric_key.example.id dependencies: yandex_kms_symmetric_key.example: |- { @@ -4163,12 +3924,12 @@ resources: ciphertext: '- Resulting ciphertext, encoded with "standard" base64 alphabet as defined in RFC 4648 section 4' create: '- Default 1 minute' delete: '- Default 1 minute' - id: '- an identifier for the resource with format {{key_id}}/{{ciphertext}}' + id: '- an identifier for the resource with format {key_id}/{ciphertext}' key_id: '- (Required) ID of the symmetric KMS key to use for encryption.' plaintext: '- (Required) Plaintext to be encrypted.' importStatements: [] yandex_kms_symmetric_key: - subCategory: "" + subCategory: KMS (Key Management Service) description: Creates a Yandex KMS symmetric key that can be used for cryptographic operation. name: yandex_kms_symmetric_key title: yandex_kms_symmetric_key @@ -4184,14 +3945,10 @@ resources: argumentDocs: create: '- Default 1 minute' created_at: '- Creation timestamp of the key.' - default_algorithm: |- - - (Optional) Encryption algorithm to be used with a new key version, - generated with the next rotation. The default value is AES_128. + default_algorithm: '- (Optional) Encryption algorithm to be used with a new key version, generated with the next rotation. The default value is AES_128.' delete: '- Default 1 minute' description: '- (Optional) An optional description of the key.' - folder_id: |- - - (Optional) The ID of the folder that the resource belongs to. If it - is not provided, the default provider folder is used. + folder_id: '- (Optional) The ID of the folder that the resource belongs to. If it is not provided, the default provider folder is used.' labels: '- (Optional) A set of key/value label pairs to assign to the key.' name: '- (Optional) Name of the key.' rotated_at: '- Last rotation timestamp of the key.' @@ -4200,7 +3957,7 @@ resources: update: '- Default 1 minute' importStatements: [] yandex_kms_symmetric_key_iam_binding: - subCategory: "" + subCategory: KMS (Key Management Service) description: Allows management of a single IAM binding for a name: yandex_kms_symmetric_key_iam_binding title: yandex_kms_symmetric_key_iam_binding @@ -4223,14 +3980,12 @@ resources: "name": "symmetric-key-name" } argumentDocs: - members: |- - - (Required) Identities that will be granted the privilege in role. - Each entry can have one of the following values: + members: '- (Required) Identities that will be granted the privilege in role. Each entry can have one of the following values:' role: '- (Required) The role that should be applied. See roles.' symmetric_key_id: '- (Required) The Yandex Key Management Service Symmetric Key ID to apply a binding to.' importStatements: [] yandex_kubernetes_cluster: - subCategory: "" + subCategory: K8S (Kubernetes) description: Allows management of Yandex Kubernetes Cluster. For more information, see name: yandex_kubernetes_cluster title: yandex_kubernetes_cluster @@ -4291,6 +4046,14 @@ resources: "release_channel": "RAPID", "service_account_id": "${yandex_iam_service_account.service_account_resource_name.id}" } + references: + kms_provider.key_id: yandex_kms_symmetric_key.kms_key_resource_name.id + master.master_logging.log_group_id: yandex_logging_group.log_group_resoruce_name.id + master.zonal.subnet_id: yandex_vpc_subnet.subnet_resource_name.id + master.zonal.zone: yandex_vpc_subnet.subnet_resource_name.zone + network_id: yandex_vpc_network.network_resource_name.id + node_service_account_id: yandex_iam_service_account.node_service_account_resource_name.id + service_account_id: yandex_iam_service_account.service_account_resource_name.id - name: regional_cluster_resource_name manifest: |- { @@ -4357,19 +4120,21 @@ resources: "release_channel": "STABLE", "service_account_id": "${yandex_iam_service_account.service_account_resource_name.id}" } - argumentDocs: - cluster_ipv4_range: |- - - (Optional) CIDR block. IP range for allocating pod addresses. - It should not overlap with any subnet in the network the Kubernetes cluster located in. Static routes will be - set up for this CIDR blocks in node subnets. + references: + master.master_logging.folder_id: data.yandex_resourcemanager_folder.folder_resource_name.id + master.regional.location.subnet_id: yandex_vpc_subnet.subnet_c_resource_name.id + master.regional.location.zone: yandex_vpc_subnet.subnet_c_resource_name.zone + network_id: yandex_vpc_network.network_resource_name.id + node_service_account_id: yandex_iam_service_account.node_service_account_resource_name.id + service_account_id: yandex_iam_service_account.service_account_resource_name.id + argumentDocs: + cluster_ipv4_range: '- (Optional) CIDR block. IP range for allocating pod addresses. It should not overlap with any subnet in the network the Kubernetes cluster located in. Static routes will be set up for this CIDR blocks in node subnets.' cluster_ipv6_range: '- (Optional) Identical to cluster_ipv4_range but for IPv6 protocol.' create: '- Default is 30 minute.' created_at: '- (Computed) The Kubernetes cluster creation timestamp.' delete: '- Default is 20 minute.' description: '- (Optional) A description of the Kubernetes cluster.' - folder_id: |- - - (Optional) The ID of the folder that the Kubernetes cluster belongs to. - If it is not provided, the default provider folder is used. + folder_id: '- (Optional) The ID of the folder that the Kubernetes cluster belongs to. If it is not provided, the default provider folder is used.' health: '- (Computed) Health of the Kubernetes cluster.' id: '- (Computed) ID of a new Kubernetes cluster.' kms_provider: '- (Optional) cluster KMS provider parameters.' @@ -4377,26 +4142,15 @@ resources: labels: '- (Optional) A set of key/value label pairs to assign to the Kubernetes cluster.' log_group_id: '- Log group where cluster stores cluster system logs, like audit, events, or controlplane logs.' maintenance_policy.auto_upgrade: '- (Required) Boolean flag that specifies if master can be upgraded automatically. When omitted, default value is TRUE.' - maintenance_policy.maintenance_window: |- - - (Optional) (Computed) This structure specifies maintenance window, when update for master is allowed. When omitted, it defaults to any time. - To specify time of day interval, for all days, one element should be provided, with two fields set, start_time and duration. - Please see zonal_cluster_resource_name config example. + maintenance_policy.maintenance_window: '- (Optional) (Computed) This structure specifies maintenance window, when update for master is allowed. When omitted, it defaults to any time. To specify time of day interval, for all days, one element should be provided, with two fields set, start_time and duration. Please see zonal_cluster_resource_name config example.' master: '- Kubernetes master configuration options. The structure is documented below.' master.cluster_ca_certificate: '- (Computed) PEM-encoded public certificate that is the root of trust for the Kubernetes cluster.' master.external_v4_address: '- (Computed) An IPv4 external network address that is assigned to the master.' master.external_v4_endpoint: '- (Computed) External endpoint that can be used to access Kubernetes cluster API from the internet (outside of the cloud).' master.internal_v4_address: '- (Computed) An IPv4 internal network address that is assigned to the master.' master.internal_v4_endpoint: '- (Computed) Internal endpoint that can be used to connect to the master from cloud networks.' - master.maintenance_policy: |- - - (Optional) (Computed) Maintenance policy for Kubernetes master. - If policy is omitted, automatic revision upgrades of the kubernetes master are enabled and could happen at any time. - Revision upgrades are performed only within the same minor version, e.g. 1.13. - Minor version upgrades (e.g. 1.13->1.14) should be performed manually. The structure is documented below. - master.master_location: |- - - (Optional) Cluster master's instances locations array (zone and subnet). - Cannot be used together with zonal or regional. Currently, supports either one, for zonal master, or three instances of master_location. - Can be updated inplace. When creating regional cluster (three master instances), its region will be evaluated automatically by backend. - The structure is documented below. + master.maintenance_policy: '- (Optional) (Computed) Maintenance policy for Kubernetes master. If policy is omitted, automatic revision upgrades of the kubernetes master are enabled and could happen at any time. Revision upgrades are performed only within the same minor version, e.g. 1.13. Minor version upgrades (e.g. 1.13->1.14) should be performed manually. The structure is documented below.' + master.master_location: '- (Optional) Cluster master''s instances locations array (zone and subnet). Cannot be used together with zonal or regional. Currently, supports either one, for zonal master, or three instances of master_location. Can be updated inplace. When creating regional cluster (three master instances), its region will be evaluated automatically by backend. The structure is documented below.' master.master_logging: '- (Optional) Master Logging options. The structure is documented below.' master.public_ip: '- (Optional) (Computed) Boolean flag. When true, Kubernetes master will have visible ipv4 address.' master.regional: '- (Optional) Initialize parameters for Regional Master (highly available master). The structure is documented below.' @@ -4419,42 +4173,26 @@ resources: network_implementation.cilium: '- (Optional) Cilium network implementation configuration. No options exist.' network_policy_provider: '- (Optional) Network policy provider for the cluster. Possible values: CALICO.' node_ipv4_cidr_mask_size: '- (Optional) Size of the masks that are assigned to each node in the cluster. Effectively limits maximum number of pods for each node.' - node_service_account_id: |- - - Service account to be used by the worker nodes of the Kubernetes cluster - to access Container Registry or to push node logs and metrics. + node_service_account_id: '- Service account to be used by the worker nodes of the Kubernetes cluster to access Container Registry or to push node logs and metrics.' regional.location: '- Array of locations, where master instances will be allocated. The structure is documented below.' regional.location.subnet_id: '- (Optional) ID of the subnet.' regional.location.zone: '- (Optional) ID of the availability zone.' regional.region: '- (Required) Name of availability region (e.g. "ru-central1"), where master instances will be allocated.' release_channel: '- Cluster release channel.' - service_account_id: |- - - Service account to be used for provisioning Compute Cloud and VPC resources - for Kubernetes cluster. Selected service account should have edit role on the folder where the Kubernetes - cluster will be located and on the folder where selected network resides. - service_ipv4_range: |- - - (Optional) CIDR block. IP range Kubernetes service Kubernetes cluster - IP addresses will be allocated from. It should not overlap with any subnet in the network - the Kubernetes cluster located in. + service_account_id: '- Service account to be used for provisioning Compute Cloud and VPC resources for Kubernetes cluster. Selected service account should have edit role on the folder where the Kubernetes cluster will be located and on the folder where selected network resides.' + service_ipv4_range: '- (Optional) CIDR block. IP range Kubernetes service Kubernetes cluster IP addresses will be allocated from. It should not overlap with any subnet in the network the Kubernetes cluster located in.' service_ipv6_range: '- (Optional) Identical to service_ipv4_range but for IPv6 protocol.' status: '- (Computed)Status of the Kubernetes cluster.' update: '- Default is 20 minute.' version_info.current_version: '- Current Kubernetes version, major.minor (e.g. 1.15).' - version_info.new_revision_available: |- - - Boolean flag. - Newer revisions may include Kubernetes patches (e.g 1.15.1 -> 1.15.2) as well - as some internal component updates - new features or bug fixes in yandex-specific - components either on the master or nodes. - version_info.new_revision_summary: |- - - Human readable description of the changes to be applied - when updating to the latest revision. Empty if new_revision_available is false. - version_info.version_deprecated: |- - - Boolean flag. The current version is on the deprecation schedule, - component (master or node group) should be upgraded. + version_info.new_revision_available: '- Boolean flag. Newer revisions may include Kubernetes patches (e.g 1.15.1 -> 1.15.2) as well as some internal component updates - new features or bug fixes in yandex-specific components either on the master or nodes.' + version_info.new_revision_summary: '- Human readable description of the changes to be applied when updating to the latest revision. Empty if new_revision_available is false.' + version_info.version_deprecated: '- Boolean flag. The current version is on the deprecation schedule, component (master or node group) should be upgraded.' zonal.subnet_id: '- (Optional) ID of the subnet. If no ID is specified, and there only one subnet in specified zone, an address in this subnet will be allocated.' zonal.zone: '- (Optional) ID of the availability zone.' importStatements: [] yandex_kubernetes_node_group: - subCategory: "" + subCategory: K8S (Kubernetes) description: Allows management of Yandex Kubernetes Node Group. For more information, see name: yandex_kubernetes_node_group title: yandex_kubernetes_node_group @@ -4541,6 +4279,8 @@ resources: ], "version": "1.17" } + references: + cluster_id: yandex_kubernetes_cluster.my_cluster.id argumentDocs: allocation_policy: '- This argument specify subnets (zones), that will be used by node group compute instances. The structure is documented below.' allocation_policy.location: '- Repeated field, that specify subnets (zones), that will be used by node group compute instances. The structure is documented below.' @@ -4573,8 +4313,7 @@ resources: instance_template.labels: '- (Optional) Labels that will be assigned to compute nodes (instances), created by the Node Group.' instance_template.metadata: '- The set of metadata key:value pairs assigned to this instance template. This includes custom metadata and predefined keys. Note: key "user-data" won''t be provided into instances. It reserved for internal activity in kubernetes_node_group resource.' instance_template.name: |- - - (Optional) Name template of the instance. - In order to be unique it must contain at least one of instance unique placeholders: + - (Optional) Name template of the instance. In order to be unique it must contain at least one of instance unique placeholders: {instance.short_id} {instance.index} combination of {instance.zone_id} and {instance.index_in_zone} @@ -4596,11 +4335,7 @@ resources: ipv6_dns_records.ptr: '- (Optional) When set to true, also create a PTR DNS record.' ipv6_dns_records.ttl: '- (Optional) DNS record TTL (in seconds).' labels: '- (Optional) A set of key/value label pairs assigned to the Kubernetes node group.' - maintenance_policy: |- - - (Optional) (Computed) Maintenance policy for this Kubernetes node group. - If policy is omitted, automatic revision upgrades are enabled and could happen at any time. - Revision upgrades are performed only within the same minor version, e.g. 1.13. - Minor version upgrades (e.g. 1.13->1.14) should be performed manually. The structure is documented below. + maintenance_policy: '- (Optional) (Computed) Maintenance policy for this Kubernetes node group. If policy is omitted, automatic revision upgrades are enabled and could happen at any time. Revision upgrades are performed only within the same minor version, e.g. 1.13. Minor version upgrades (e.g. 1.13->1.14) should be performed manually. The structure is documented below.' maintenance_policy.auto_repair: '- (Required) Boolean flag that specifies if node group can be repaired automatically. When omitted, default value is TRUE.' maintenance_policy.auto_upgrade: '- (Required) Boolean flag that specifies if node group can be upgraded automatically. When omitted, default value is TRUE.' maintenance_policy.maintenance_window: '- (Optional) (Computed) Set of day intervals, when maintenance is allowed for this node group. When omitted, it defaults to any time.' @@ -4629,20 +4364,12 @@ resources: version: '- (Optional) Version of Kubernetes that will be used for Kubernetes node group.' version_info: '- (Computed) Information about Kubernetes node group version. The structure is documented below.' version_info.current_version: '- Current Kubernetes version, major.minor (e.g. 1.15).' - version_info.new_revision_available: |- - - True/false flag. - Newer revisions may include Kubernetes patches (e.g 1.15.1 -> 1.15.2) as well - as some internal component updates - new features or bug fixes in yandex-specific - components either on the master or nodes. - version_info.new_revision_summary: |- - - Human readable description of the changes to be applied - when updating to the latest revision. Empty if new_revision_available is false. - version_info.version_deprecated: |- - - True/false flag. The current version is on the deprecation schedule, - component (master or node group) should be upgraded. + version_info.new_revision_available: '- True/false flag. Newer revisions may include Kubernetes patches (e.g 1.15.1 -> 1.15.2) as well as some internal component updates - new features or bug fixes in yandex-specific components either on the master or nodes.' + version_info.new_revision_summary: '- Human readable description of the changes to be applied when updating to the latest revision. Empty if new_revision_available is false.' + version_info.version_deprecated: '- True/false flag. The current version is on the deprecation schedule, component (master or node group) should be upgraded.' importStatements: [] yandex_lb_network_load_balancer: - subCategory: "" + subCategory: Network Load Balancer description: A network load balancer is used to evenly distribute the load across cloud resources. name: yandex_lb_network_load_balancer title: yandex_lb_network_load_balancer @@ -4679,6 +4406,8 @@ resources: ], "name": "my-network-load-balancer" } + references: + attached_target_group.target_group_id: yandex_lb_target_group.my-target-group.id argumentDocs: attached_target_group: '- (Optional) An AttachedTargetGroup resource. The structure is documented below.' attached_target_group.healthcheck: '- (Required) A HealthCheck resource. The structure is documented below.' @@ -4687,14 +4416,10 @@ resources: created_at: '- The network load balancer creation timestamp.' delete: '- Default is 5 minute.' deletion_protection: '- (Optional) Flag that protects the network load balancer from accidental deletion.' - description: |- - - (Optional) An optional description of the network load balancer. Provide this property when - you create the resource. + description: '- (Optional) An optional description of the network load balancer. Provide this property when you create the resource.' external_address_spec.address: '- (Optional) External IP address for a listener. IP address will be allocated if it wasn''t been set.' external_address_spec.ip_version: '- (Optional) IP version of the external addresses that the load balancer works with. Must be one of ipv4 or ipv6. The default is ipv4.' - folder_id: |- - - (Optional) The ID of the folder to which the resource belongs. - If omitted, the provider folder is used. + folder_id: '- (Optional) The ID of the folder to which the resource belongs. If omitted, the provider folder is used.' healthcheck.healthy_threshold: '- (Optional) Number of successful health checks required in order to set the HEALTHY status for the target.' healthcheck.http_options: '- (Optional) Options for HTTP health check. The structure is documented below.' healthcheck.interval: '- (Optional) The interval between health checks. The default is 2 seconds.' @@ -4717,15 +4442,13 @@ resources: listener.protocol: '- (Optional) Protocol for incoming traffic. TCP or UDP and the default is TCP.' listener.target_port: '- (Optional) Port of a target. The default is the same as listener''s port.' name: '- (Optional) Name of the network load balancer. Provided by the client when the network load balancer is created.' - region_id: |- - - (Optional) ID of the availability zone where the network load balancer resides. - If omitted, default region is being used. + region_id: '- (Optional) ID of the availability zone where the network load balancer resides. If omitted, default region is being used.' tcp_options.port: '- (Required) Port to use for TCP health checks.' type: '- (Optional) Type of the network load balancer. Must be one of ''external'' or ''internal''. The default is ''external''.' update: '- Default is 5 minute.' importStatements: [] yandex_lb_target_group: - subCategory: "" + subCategory: Network Load Balancer description: A load balancer distributes the load across cloud resources that are combined into a target group. name: yandex_lb_target_group title: yandex_lb_target_group @@ -4746,31 +4469,26 @@ resources: } ] } + references: + target.address: yandex_compute_instance.my-instance-2.network_interface.0.ip_address + target.subnet_id: yandex_vpc_subnet.my-subnet.id argumentDocs: create: '- Default is 5 minute.' created_at: '- The target group creation timestamp.' delete: '- Default is 5 minute.' - description: |- - - (Optional) An optional description of the target group. Provide this property when - you create the resource. - folder_id: |- - - (Optional) The ID of the folder to which the resource belongs. - If omitted, the provider folder is used. + description: '- (Optional) An optional description of the target group. Provide this property when you create the resource.' + folder_id: '- (Optional) The ID of the folder to which the resource belongs. If omitted, the provider folder is used.' id: '- The ID of the target group.' labels: '- (Optional) Labels to assign to this target group. A list of key/value pairs.' name: '- (Optional) Name of the target group. Provided by the client when the target group is created.' - region_id: |- - - (Optional) ID of the availability zone where the target group resides. - If omitted, default region is being used. + region_id: '- (Optional) ID of the availability zone where the target group resides. If omitted, default region is being used.' target: '- (Optional) A Target resource. The structure is documented below.' target.address: '- (Required) IP address of the target.' - target.subnet_id: |- - - (Required) ID of the subnet that targets are connected to. - All targets in the target group must be connected to the same subnet within a single availability zone. + target.subnet_id: '- (Required) ID of the subnet that targets are connected to. All targets in the target group must be connected to the same subnet within a single availability zone.' update: '- Default is 5 minute.' importStatements: [] yandex_loadtesting_agent: - subCategory: "" + subCategory: Load Testing description: Manages an Yandex Cloud Load Testing Agent resource. name: yandex_loadtesting_agent title: yandex_loadtesting_agent @@ -4812,6 +4530,10 @@ resources: }, "name": "my-agent" } + references: + compute_instance.network_interface.subnet_id: yandex_vpc_subnet.my-subnet-a.id + compute_instance.service_account_id: yandex_iam_service_account.test_account.id + folder_id: data.yandex_resourcemanager_folder.test_folder.id argumentDocs: boot_disk.auto_delete: '- (Optional) Whether the disk is auto-deleted when the instance is deleted. The default value is true.' boot_disk.device_name: '- (Optional) This value can be used to reference the device under /dev/disk/by-id/.' @@ -4819,6 +4541,7 @@ resources: boot_disk.initialize_params: '- (Required) Parameters for creating a disk alongside the instance. The structure is documented below.' compute_instance: '- (Required) The template for creating new compute instance running load testing agent. The structure is documented below.' compute_instance.boot_disk: '- (Required) Boot disk specifications for the instance. The structure is documented below.' + compute_instance.computed_labels: '- (Computed) The set of labels key:value pairs assigned to this instance. This includes user custom labels and predefined items created by Yandex Cloud Load Testing.' compute_instance.computed_metadata: '- (Computed) The set of metadata key:value pairs assigned to this instance. This includes user custom metadata, and predefined items created by Yandex Cloud Load Testing.' compute_instance.labels: '- (Optional) A set of key/value label pairs to assign to the instance.' compute_instance.metadata: '- (Optional) A set of metadata key/value pairs to make available from within the instance.' @@ -4826,9 +4549,7 @@ resources: compute_instance.platform_id: '- (Optional) The Compute platform of virtual machine. If it is not provided, the standard-v2 platform will be used.' compute_instance.resources: '- (Required) Compute resource specifications for the instance. The structure is documented below.' compute_instance.service_account_id: '- (Required) The ID of the service account authorized for this load testing agent. Service account should have loadtesting.generatorClient or loadtesting.externalAgent role in the folder.' - compute_instance.zone_id: |- - - (Optional) The availability zone where the virtual machine will be created. If it is not provided, - the default provider folder is used. + compute_instance.zone_id: '- (Optional) The availability zone where the virtual machine will be created. If it is not provided, the default provider folder is used.' create: '- Default 10 minutes' delete: '- Default 10 minutes' description: '- (Optional) A description of the load testing agent.' @@ -4854,7 +4575,7 @@ resources: update: '- Default 10 minutes' importStatements: [] yandex_lockbox_secret: - subCategory: "" + subCategory: Lockbox (Secret Management) description: Manages Yandex Cloud Lockbox secret. name: yandex_lockbox_secret title: yandex_lockbox_secret @@ -4864,20 +4585,38 @@ resources: { "name": "test secret" } + - name: my_secret + manifest: |- + { + "name": "test secret with passowrd", + "password_payload_specification": [ + { + "length": 12, + "password_key": "some_password" + } + ] + } argumentDocs: created_at: '- The Yandex Cloud Lockbox secret creation timestamp.' deletion_protection: '- (Optional) Whether the Yandex Cloud Lockbox secret is protected from deletion.' description: '- (Optional) A description for the Yandex Cloud Lockbox secret.' - folder_id: |- - - (Optional) ID of the folder that the Yandex Cloud Lockbox secret belongs to. - It will be deduced from provider configuration if not set explicitly. + folder_id: '- (Optional) ID of the folder that the Yandex Cloud Lockbox secret belongs to. It will be deduced from provider configuration if not set explicitly.' kms_key_id: '- (Optional) The KMS key used to encrypt the Yandex Cloud Lockbox secret.' labels: '- (Optional) A set of key/value label pairs to assign to the Yandex Cloud Lockbox secret.' name: '- (Optional) Name for the Yandex Cloud Lockbox secret.' + password_payload_specification: '- (Optional) Payload specification for password generation.' + password_payload_specification.excluded_punctuation: '- (Optional) String of punctuation characters to exclude from the default. Requires include_punctuation = true. Default is empty.' + password_payload_specification.include_digits: '- (Optional) Use digits in the generated password. Default is true.' + password_payload_specification.include_lowercase: '- (Optional) Use lowercase letters in the generated password. Default is true.' + password_payload_specification.include_punctuation: '- (Optional) Use punctuations (!"#$%&''()*+,-./:;<=>?@[\]^_{|}~`) in the generated password. Default is true.' + password_payload_specification.include_uppercase: '- (Optional) Use capital letters in the generated password. Default is true.' + password_payload_specification.included_punctuation: '- (Optional) String of specific punctuation characters to use. Requires include_punctuation = true. Default is empty.' + password_payload_specification.length: '- (Optional) Length of generated password. Default is 36.' + password_payload_specification.password_key: '- (Required) The key with which the generated password will be placed in the secret version.' status: '- The Yandex Cloud Lockbox secret status.' importStatements: [] yandex_lockbox_secret_iam_binding: - subCategory: "" + subCategory: Lockbox (Secret Management) description: Allows management of a single IAM binding for a name: yandex_lockbox_secret_iam_binding title: yandex_lockbox_secret_iam_binding @@ -4899,14 +4638,12 @@ resources: "name": "secret-name" } argumentDocs: - members: |- - - (Required) Identities that will be granted the privilege in role. - Each entry can have one of the following values: + members: '- (Required) Identities that will be granted the privilege in role. Each entry can have one of the following values:' role: '- (Required) The role that should be applied. See roles.' secret_id: '- (Required) The Yandex Lockbox Secret Secret ID to apply a binding to.' importStatements: [] yandex_lockbox_secret_version: - subCategory: "" + subCategory: Lockbox (Secret Management) description: Manages Yandex Cloud Lockbox secret version. name: yandex_lockbox_secret_version title: yandex_lockbox_secret_version @@ -4937,9 +4674,27 @@ resources: { "name": "test secret" } + - name: my_version + manifest: |- + { + "secret_id": "${yandex_lockbox_secret.my_secret.id}" + } + references: + secret_id: yandex_lockbox_secret.my_secret.id + dependencies: + yandex_lockbox_secret.my_secret: |- + { + "name": "test secret with passowrd", + "password_payload_specification": [ + { + "length": 12, + "password_key": "some_password" + } + ] + } argumentDocs: description: '- (Optional) The Yandex Cloud Lockbox secret version description.' - entries: '- (Required) List of entries in the Yandex Cloud Lockbox secret version.' + entries: '- (Optional) List of entries in the Yandex Cloud Lockbox secret version. Must be omitted for secrets with a payload specification.' entries.command: '- (Optional) The command that generates the text value of the entry.' entries.command.args: '- (Optional) List of arguments to be passed to the script/command.' entries.command.env: '- (Optional) Map of environment variables to set before calling the script/command.' @@ -4949,7 +4704,7 @@ resources: secret_id: '- (Required) The Yandex Cloud Lockbox secret ID where to add the version.' importStatements: [] yandex_lockbox_secret_version_hashed: - subCategory: "" + subCategory: Lockbox (Secret Management) description: Manages Yandex Cloud Lockbox secret version (with values hashed in state). name: yandex_lockbox_secret_version_hashed title: yandex_lockbox_secret_version_hashed @@ -4977,7 +4732,7 @@ resources: text_value_: '- (Optional) Each of the entry values in the Yandex Cloud Lockbox secret version.' importStatements: [] yandex_logging_group: - subCategory: "" + subCategory: Cloud Logging description: Manages Yandex Cloud Logging group. name: yandex_logging_group title: yandex_logging_group @@ -4988,13 +4743,13 @@ resources: "folder_id": "${data.yandex_resourcemanager_folder.test_folder.id}", "name": "test-logging-group" } + references: + folder_id: data.yandex_resourcemanager_folder.test_folder.id argumentDocs: cloud_id: '- ID of the cloud that the Yandex Cloud Logging group belong to.' created_at: '- The Yandex Cloud Logging group creation timestamp.' description: '- (Optional) A description for the Yandex Cloud Logging group.' - folder_id: |- - - (Optional) ID of the folder that the Yandex Cloud Logging group belongs to. - It will be deduced from provider configuration if not set explicitly. + folder_id: '- (Optional) ID of the folder that the Yandex Cloud Logging group belongs to. It will be deduced from provider configuration if not set explicitly.' id: '- The Yandex Cloud Logging group ID.' labels: '- (Optional) A set of key/value label pairs to assign to the Yandex Cloud Logging group.' location_id: '- (Optional) Location ID for the Yandex Cloud Logging group.' @@ -5003,7 +4758,7 @@ resources: status: '- The Yandex Cloud Logging group status.' importStatements: [] yandex_mdb_clickhouse_cluster: - subCategory: "" + subCategory: Managed Service for ClickHouse description: Manages a ClickHouse cluster within Yandex.Cloud. name: yandex_mdb_clickhouse_cluster title: yandex_mdb_clickhouse_cluster @@ -5100,6 +4855,7 @@ resources: "max_table_size_to_drop": 53687091200, "merge_tree": [ { + "max_bytes_to_merge_at_max_space_in_pool": 161061273600, "max_bytes_to_merge_at_min_space_in_pool": 1048576, "max_replicated_merges_in_queue": 16, "number_of_free_entries_in_pool_to_lower_max_size_of_merge": 8, @@ -5216,6 +4972,9 @@ resources: } ] } + references: + host.subnet_id: yandex_vpc_subnet.foo.id + network_id: yandex_vpc_network.foo.id dependencies: yandex_vpc_network.foo: '{}' yandex_vpc_subnet.foo: |- @@ -5322,6 +5081,9 @@ resources: } ] } + references: + host.subnet_id: yandex_vpc_subnet.baz.id + network_id: yandex_vpc_network.foo.id dependencies: yandex_vpc_network.foo: '{}' yandex_vpc_subnet.bar: |- @@ -5462,6 +5224,9 @@ resources: } ] } + references: + host.subnet_id: yandex_vpc_subnet.baz.id + network_id: yandex_vpc_network.foo.id dependencies: yandex_vpc_network.foo: '{}' yandex_vpc_subnet.bar: |- @@ -5499,6 +5264,8 @@ resources: admin_password: '- (Optional) A password used to authorize as user admin when sql_user_management enabled.' age: '- (Required) Minimum data age in seconds.' any: '- perform approximate GROUP BY operation by continuing aggregation for the keys that got into the set, but don’t add new keys to the set.' + auto: '- when set to auto, hash join is tried first, and the algorithm is switched on the fly to another algorithm if the memory limit is violated.' + backup_retain_period_days: '- (Optional) The period in days during which backups are stored.' backup_window_start: '- (Optional) Time to start the daily backup, in the UTC timezone. The structure is documented below.' backup_window_start.hours: '- (Optional) The hour at which backup will be started.' backup_window_start.minutes: '- (Optional) The minute at which backup will be started.' @@ -5519,49 +5286,44 @@ resources: config.graphite_rollup: '- (Optional) Graphite rollup configuration. The structure is documented below.' config.kafka: '- (Optional) Kafka connection configuration. The structure is documented below.' config.kafka_topic: '- (Optional) Kafka topic connection configuration. The structure is documented below.' - config.log_level: |- - , max_connections, max_concurrent_queries, keep_alive_timeout, uncompressed_cache_size, mark_cache_size, - max_table_size_to_drop, max_partition_size_to_drop, timezone, geobase_uri, query_log_retention_size, - query_log_retention_time, query_thread_log_enabled, query_thread_log_retention_size, query_thread_log_retention_time, - part_log_retention_size, part_log_retention_time, metric_log_enabled, metric_log_retention_size, metric_log_retention_time, - trace_log_enabled, trace_log_retention_size, trace_log_retention_time, text_log_enabled, text_log_retention_size, - text_log_retention_time, text_log_level, - background_pool_size, background_schedule_pool_size, background_fetches_pool_size, background_message_broker_schedule_pool_size,background_merges_mutations_concurrency_ratio, - default_database, - total_memory_profiler_step - (Optional) ClickHouse server parameters. For more information, see - the official documentation. + config.log_level: ', max_connections, max_concurrent_queries, keep_alive_timeout, uncompressed_cache_size, mark_cache_size, max_table_size_to_drop, max_partition_size_to_drop, timezone, geobase_uri, query_log_retention_size, query_log_retention_time, query_thread_log_enabled, query_thread_log_retention_size, query_thread_log_retention_time, part_log_retention_size, part_log_retention_time, metric_log_enabled, metric_log_retention_size, metric_log_retention_time, trace_log_enabled, trace_log_retention_size, trace_log_retention_time, text_log_enabled, text_log_retention_size, text_log_retention_time, text_log_level, background_pool_size, background_schedule_pool_size, background_fetches_pool_size, background_message_broker_schedule_pool_size,background_merges_mutations_concurrency_ratio, background_move_pool_size, background_distributed_schedule_pool_size, background_common_pool_size default_database, total_memory_profiler_step, dictionaries_lazy_load, opentelemetry_span_log_enabled, opentelemetry_span_log_retention_size, opentelemetry_span_log_retention_time, query_views_log_enabled, query_views_log_retention_size, query_views_log_retention_time, asynchronous_metric_log_enabled, asynchronous_metric_log_retention_size, asynchronous_metric_log_retention_time, session_log_enabled, session_log_retention_size, session_log_retention_time, zookeeper_log_enabled, zookeeper_log_retention_size, zookeeper_log_retention_time, asynchronous_insert_log_enabled, asynchronous_insert_log_retention_size, asynchronous_insert_log_retention_time - (Optional) ClickHouse server parameters. For more information, see the official documentation.' config.merge_tree: '- (Optional) MergeTree engine configuration. The structure is documented below.' + config.query_cache: '- (Optional) Query cache configuration. The structure is documented below.' + config.query_masking_rules: '- (Optional) Query masking rules configuration. The structure is documented below.' config.rabbitmq: '- (Optional) RabbitMQ connection configuration. The structure is documented below.' copy_schema_on_new_hosts: '- (Optional) Whether to copy schema on new ClickHouse hosts.' created_at: '- Timestamp of cluster creation.' database: '- (Required) A database of the ClickHouse cluster. The structure is documented below.' database.name: '- (Required) The name of the database.' - deletion_protection: '- (Optional) Inhibits deletion of the cluster. Can be either true or false.' + deletion_protection: '- (Optional) Inhibits deletion of the cluster. Can be either true or false.' description: '- (Optional) Description of the ClickHouse cluster.' + direct: '- this algorithm can be applied when the storage for the right table supports key-value requests.' embedded_keeper: '- (Optional, ForceNew) Whether to use ClickHouse Keeper as a coordination system and place it on the same hosts with ClickHouse. If not, it''s used ZooKeeper with placement on separate hosts.' environment: '- (Required) Deployment environment of the ClickHouse cluster. Can be either PRESTABLE or PRODUCTION.' - folder_id: |- - - (Optional) The ID of the folder that the resource belongs to. If it - is not provided, the default provider folder is used. + folder_id: '- (Optional) The ID of the folder that the resource belongs to. If it is not provided, the default provider folder is used.' format_schema: '- (Optional) A set of protobuf or capnproto format schemas. The structure is documented below.' format_schema.name: '- (Required) The name of the format schema.' format_schema.type: '- (Required) Type of the format schema.' format_schema.uri: '- (Required) Format schema file URL. You can only use format schemas stored in Yandex Object Storage.' + full_sorting_merge: '- sort-merge algorithm with full sorting joined tables before joining.' function: '- (Required) Aggregation function name.' graphite_rollup.name: '- (Required) Graphite rollup configuration name.' + graphite_rollup.path_column_name: '- (Optional) The name of the column storing the metric name (Graphite sensor). Default value: Path.' graphite_rollup.pattern: '- (Required) Set of thinning rules.' - health: |- - - Aggregated health of the cluster. Can be ALIVE, DEGRADED, DEAD or HEALTH_UNKNOWN. - For more information see health field of JSON representation in the official documentation. + graphite_rollup.time_column_name: '- (Optional) The name of the column storing the time of measuring the metric. Default value: Time.' + graphite_rollup.value_column_name: '- (Optional) The name of the column storing the value of the metric at the time set in time_column_name. Default value: Value.' + graphite_rollup.version_column_name: '- (Optional) The name of the column storing the version of the metric. Default value: Timestamp.' + hash: '- hash join algorithm is used. The most generic implementation that supports all combinations of kind and strictness and multiple join keys that are combined with OR in the JOIN ON section.' + health: '- Aggregated health of the cluster. Can be ALIVE, DEGRADED, DEAD or HEALTH_UNKNOWN. For more information see health field of JSON representation in the official documentation.' host: '- (Required) A host of the ClickHouse cluster. The structure is documented below.' host.assign_public_ip: (Optional) - Sets whether the host should get a public IP address on creation. Can be either true or false. host.fqdn: '- (Computed) The fully qualified domain name of the host.' host.shard_name: (Optional) - The name of the shard to which the host belongs. host.subnet_id: (Optional) - The ID of the subnet, to which the host belongs. The subnet must be a part of the network to which the cluster belongs. host.type: '- (Required) The type of the host to be deployed. Can be either CLICKHOUSE or ZOOKEEPER.' - host.zone: |- - - (Required) The availability zone where the ClickHouse host will be created. - For more information see the official documentation. + host.zone: '- (Required) The availability zone where the ClickHouse host will be created. For more information see the official documentation.' + kafka.auto_offset_reset: '- (Optional) Action to take when there is no initial offset in offset store or the desired offset is out of range: ''smallest'',''earliest'' - automatically reset the offset to the smallest offset, ''largest'',''latest'' - automatically reset the offset to the largest offset, ''error'' - trigger an error (ERR__AUTO_OFFSET_RESET) which is retrieved by consuming messages and checking ''message->err''.' + kafka.debug: '- (Optional) A comma-separated list of debug contexts to enable.' kafka.enable_ssl_certificate_verification: '- (Optional) enable verification of SSL certificates.' kafka.max_poll_interval_ms: '- (Optional) Maximum allowed time between calls to consume messages (e.g., rd_kafka_consumer_poll()) for high-level consumers. If this interval is exceeded the consumer is considered failed and the group will rebalance in order to reassign the partitions to another consumer group member.' kafka.sasl_mechanism: '- (Optional) SASL mechanism used in kafka authentication.' @@ -5575,12 +5337,20 @@ resources: maintenance_window.day: '- (Optional) Day of week for maintenance window if window type is weekly. Possible values: MON, TUE, WED, THU, FRI, SAT, SUN.' maintenance_window.hour: '- (Optional) Hour of day in UTC time zone (1-24) for maintenance window if window type is weekly.' maintenance_window.type: '- (Required) Type of maintenance window. Can be either ANYTIME or WEEKLY. A day and hour of window need to be specified with weekly window.' + merge_tree.allow_remote_fs_zero_copy_replication: '- (Optional) When this setting has a value greater than zero only a single replica starts the merge immediately if merged part on shared storage and allow_remote_fs_zero_copy_replication is enabled.' + merge_tree.check_sample_column_is_correct: '- (Optional) Enables the check at table creation, that the data type of a column for sampling or sampling expression is correct. The data type must be one of unsigned integer types: UInt8, UInt16, UInt32, UInt64. Default value: true.' merge_tree.cleanup_delay_period: '- (Optional) Minimum period to clean old queue logs, blocks hashes and parts.' + merge_tree.inactive_parts_to_delay_insert: '- (Optional) If the number of inactive parts in a single partition in the table at least that many the inactive_parts_to_delay_insert value, an INSERT artificially slows down. It is useful when a server fails to clean up parts quickly enough.' + merge_tree.inactive_parts_to_throw_insert: '- (Optional) If the number of inactive parts in a single partition more than the inactive_parts_to_throw_insert value, INSERT is interrupted with the "Too many inactive parts (N). Parts cleaning are processing significantly slower than inserts" exception.' merge_tree.max_avg_part_size_for_too_many_parts: '- (Optional) The too many parts check according to parts_to_delay_insert and parts_to_throw_insert will be active only if the average part size (in the relevant partition) is not larger than the specified threshold. If it is larger than the specified threshold, the INSERTs will be neither delayed or rejected. This allows to have hundreds of terabytes in a single table on a single server if the parts are successfully merged to larger parts. This does not affect the thresholds on inactive parts or total parts.' + merge_tree.max_bytes_to_merge_at_max_space_in_pool: '- (Optional) The maximum total parts size (in bytes) to be merged into one part, if there are enough resources available. max_bytes_to_merge_at_max_space_in_pool -- roughly corresponds to the maximum possible part size created by an automatic background merge.' merge_tree.max_bytes_to_merge_at_min_space_in_pool: '- (Optional) Max bytes to merge at min space in pool: Maximum total size of a data part to merge when the number of free threads in the background pool is minimum.' + merge_tree.max_cleanup_delay_period: '- (Optional) Maximum period to clean old queue logs, blocks hashes and parts. Default value: 300 seconds.' + merge_tree.max_merge_selecting_sleep_ms: '- (Optional) Maximum sleep time for merge selecting, a lower setting will trigger selecting tasks in background_schedule_pool frequently which result in large amount of requests to zookeeper in large-scale clusters. Default value: 60000 milliseconds (60 seconds).' merge_tree.max_number_of_merges_with_ttl_in_pool: '- (Optional) When there is more than specified number of merges with TTL entries in pool, do not assign new merge with TTL.' merge_tree.max_parts_in_total: '- (Optional) Maximum number of parts in all partitions.' merge_tree.max_replicated_merges_in_queue: '- (Optional) Max replicated merges in queue: Maximum number of merge tasks that can be in the ReplicatedMergeTree queue at the same time.' + merge_tree.merge_max_block_size: '- (Optional) The number of rows that are read from the merged parts into memory. Default value: 8192.' merge_tree.merge_selecting_sleep_ms: '- (Optional) Sleep time for merge selecting when no part is selected. A lower setting triggers selecting tasks in background_schedule_pool frequently, which results in a large number of requests to ClickHouse Keeper in large-scale clusters.' merge_tree.merge_with_recompression_ttl_timeout: '- (Optional) Minimum delay in seconds before repeating a merge with recompression TTL. Default value: 14400 seconds (4 hours).' merge_tree.merge_with_ttl_timeout: '- (Optional) Minimum delay in seconds before repeating a merge with delete TTL. Default value: 14400 seconds (4 hours).' @@ -5588,25 +5358,33 @@ resources: merge_tree.min_age_to_force_merge_seconds: '- (Optional) Merge parts if every part in the range is older than the value of min_age_to_force_merge_seconds.' merge_tree.min_bytes_for_wide_part: '- (Optional) Minimum number of bytes in a data part that can be stored in Wide format. You can set one, both or none of these settings.' merge_tree.min_rows_for_wide_part: '- (Optional) Minimum number of rows in a data part that can be stored in Wide format. You can set one, both or none of these settings.' - merge_tree.number_of_free_entries_in_pool_to_execute_mutation: '- (Optional)' + merge_tree.number_of_free_entries_in_pool_to_execute_mutation: '- (Optional) When there is less than specified number of free entries in pool, do not execute part mutations. This is to leave free threads for regular merges and avoid "Too many parts". Default value: 20.' merge_tree.number_of_free_entries_in_pool_to_lower_max_size_of_merge: '- (Optional) Number of free entries in pool to lower max size of merge: Threshold value of free entries in the pool. If the number of entries in the pool falls below this value, ClickHouse reduces the maximum size of a data part to merge. This helps handle small merges faster, rather than filling the pool with lengthy merges.' merge_tree.parts_to_delay_insert: '- (Optional) Parts to delay insert: Number of active data parts in a table, on exceeding which ClickHouse starts artificially reduce the rate of inserting data into the table.' merge_tree.parts_to_throw_insert: '- (Optional) Parts to throw insert: Threshold value of active data parts in a table, on exceeding which ClickHouse throws the ''Too many parts ...'' exception.' merge_tree.replicated_deduplication_window: '- (Optional) Replicated deduplication window: Number of recent hash blocks that ZooKeeper will store (the old ones will be deleted).' merge_tree.replicated_deduplication_window_seconds: '- (Optional) Replicated deduplication window seconds: Time during which ZooKeeper stores the hash blocks (the old ones wil be deleted).' - merge_tree.ttl_only_drop_parts: '- (Optional) Enables or disables complete dropping of data parts where all rows are expired in MergeTree tables.' + merge_tree.ttl_only_drop_parts: '- (Optional) Enables zero-copy replication when a replica is located on a remote filesystem.' ml_model: '- (Optional) A group of machine learning models. The structure is documented below' ml_model.name: '- (Required) The name of the ml model.' ml_model.type: '- (Required) Type of the model.' ml_model.uri: '- (Required) Model file URL. You can only use models stored in Yandex Object Storage.' name: '- (Required) Name of the ClickHouse cluster. Provided by the client when the cluster is created.' network_id: '- (Required) ID of the network, to which the ClickHouse cluster belongs.' + parallel_hash: '- a variation of hash join that splits the data into buckets and builds several hashtables instead of one concurrently to speed up this process.' + partial_merge: '- a variation of the sort-merge algorithm, where only the right table is fully sorted.' permission.database_name: '- (Required) The name of the database that the permission grants access to.' pread: '- abort query execution, return an error.' - pread_threadpool: |- - - stop query execution, return partial result. - If the parameter is set to 0 (default), no hops is allowed. + pread_threadpool: '- stop query execution, return partial result. If the parameter is set to 0 (default), no hops is allowed.' precision: '- (Required) Accuracy of determining the age of the data in seconds.' + prefer_partial_merge: '- clickHouse always tries to use partial_merge join if possible, otherwise, it uses hash. Deprecated, same as partial_merge,hash.' + query_cache.max_entries: '- (Optional) The maximum number of SELECT query results stored in the cache. Default value: 1024.' + query_cache.max_entry_size_in_bytes: '- (Optional) The maximum size in bytes SELECT query results may have to be saved in the cache. Default value: 1048576 (1 MiB).' + query_cache.max_entry_size_in_rows: '- (Optional) The maximum number of rows SELECT query results may have to be saved in the cache. Default value: 30000000 (30 mil).' + query_cache.max_size_in_bytes: '- (Optional) The maximum cache size in bytes. 0 means the query cache is disabled. Default value: 1073741824 (1 GiB).' + query_masking_rules.name: '- (Optional) Name for the rule.' + query_masking_rules.regexp: '- (Required) RE2 compatible regular expression.' + query_masking_rules.replace: '- (Optional) Substitution string for sensitive data. Default value: six asterisks.' quota.errors: '- (Optional) The number of queries that threw exception.' quota.execution_time: '- (Optional) The total query execution time, in milliseconds (wall time).' quota.interval_duration: '- (Required) Duration of interval for quota in milliseconds.' @@ -5619,12 +5397,8 @@ resources: read: '- abort query execution, return an error.' regexp: '- (Optional) Regular expression that the metric name must match.' resources.disk_size: '- (Required) Volume of the storage available to a ClickHouse host, in gigabytes.' - resources.disk_type_id: |- - - (Required) Type of the storage of ClickHouse hosts. - For more information see the official documentation. - resources.resources_preset_id: |- - - (Required) The ID of the preset for computational resources available to a ClickHouse host (CPU, memory etc.). - For more information, see the official documentation. + resources.disk_type_id: '- (Required) Type of the storage of ClickHouse hosts. For more information see the official documentation.' + resources.resources_preset_id: '- (Required) The ID of the preset for computational resources available to a ClickHouse host (CPU, memory etc.). For more information, see the official documentation.' retention: '- Retain parameters.' security_group_ids: '- (Optional) A set of ids of security groups assigned to hosts of the cluster.' service_account_id: '- (Optional) ID of the service account used for access to Yandex Object Storage.' @@ -5632,19 +5406,21 @@ resources: settings.allow_ddl: '- (Optional) Allows or denies DDL queries.' settings.allow_introspection_functions: '- (Optional) Enables introspections functions for query profiling.' settings.allow_suspicious_low_cardinality_types: '- (Optional) Allows specifying LowCardinality modifier for types of small fixed size (8 or less) in CREATE TABLE statements. Enabling this may increase merge times and memory consumption.' + settings.any_join_distinct_right_table_keys: '- enables legacy ClickHouse server behaviour in ANY INNER|LEFT JOIN operations.' settings.async_insert: '- (Optional) Enables asynchronous inserts. Disabled by default.' settings.async_insert_busy_timeout: '- (Optional) The maximum timeout in milliseconds since the first INSERT query before inserting collected data. If the parameter is set to 0, the timeout is disabled. Default value: 200.' settings.async_insert_max_data_size: '- (Optional) The maximum size of the unparsed data in bytes collected per query before being inserted. If the parameter is set to 0, asynchronous insertions are disabled. Default value: 100000.' settings.async_insert_stale_timeout: '- (Optional) The maximum timeout in milliseconds since the last INSERT query before dumping collected data. If enabled, the settings prolongs the async_insert_busy_timeout with every INSERT query as long as async_insert_max_data_size is not exceeded.' settings.async_insert_threads: '- (Optional) The maximum number of threads for background data parsing and insertion. If the parameter is set to 0, asynchronous insertions are disabled. Default value: 16.' - settings.cancel_http_readonly_queries_on_client_close: |- - - (Optional) Cancels HTTP read-only queries (e.g. SELECT) when a client closes the connection without waiting for the response. - Default value: false. + settings.cancel_http_readonly_queries_on_client_close: '- (Optional) Cancels HTTP read-only queries (e.g. SELECT) when a client closes the connection without waiting for the response. Default value: false.' settings.compile: '- (Optional) Enable compilation of queries.' settings.compile_expressions: '- (Optional) Turn on expression compilation.' settings.connect_timeout: '- (Optional) Connect timeout in milliseconds on the socket used for communicating with the client.' settings.connect_timeout_with_failover: '- (Optional) The timeout in milliseconds for connecting to a remote server for a Distributed table engine, if the ‘shard’ and ‘replica’ sections are used in the cluster definition. If unsuccessful, several attempts are made to connect to various replicas. Default value: 50.' settings.count_distinct_implementation: '- (Optional) Specifies which of the uniq* functions should be used to perform the COUNT(DISTINCT …) construction.' + settings.date_time_input_format: '- (Optional) Allows choosing a parser of the text representation of date and time, one of: best_effort, basic, best_effort_us. Default value: basic. Cloud default value: best_effort.' + settings.date_time_output_format: '- (Optional) Allows choosing different output formats of the text representation of date and time, one of: simple, iso, unix_timestamp. Default value: simple.' + settings.deduplicate_blocks_in_dependent_materialized_views: '- Enables or disables the deduplication check for materialized views that receive data from Replicated* tables.' settings.distinct_overflow_mode: '- (Optional) Sets behaviour on overflow when using DISTINCT. Possible values:' settings.distributed_aggregation_memory_efficient: '- (Optional) Determine the behavior of distributed subqueries.' settings.distributed_ddl_task_timeout: '- (Optional) Timeout for DDL queries, in milliseconds.' @@ -5655,25 +5431,35 @@ resources: settings.flatten_nested: '- (Optional) Sets the data format of a nested columns.' settings.force_index_by_date: '- (Optional) Disables query execution if the index can’t be used by date.' settings.force_primary_key: '- (Optional) Disables query execution if indexing by the primary key is not possible.' + settings.format_regexp: '- (Optional) Regular expression (for Regexp format).' + settings.format_regexp_skip_unmatched: '- (Optional) Skip lines unmatched by regular expression.' settings.group_by_overflow_mode: '- (Optional) Sets behaviour on overflow while GROUP BY operation. Possible values:' settings.group_by_two_level_threshold: '- (Optional) Sets the threshold of the number of keys, after that the two-level aggregation should be used.' settings.group_by_two_level_threshold_bytes: '- (Optional) Sets the threshold of the number of bytes, after that the two-level aggregation should be used.' + settings.hedged_connection_timeout_ms: '- (Optional) Connection timeout for establishing connection with replica for Hedged requests. Default value: 50 milliseconds.' settings.http_connection_timeout: '- (Optional) Timeout for HTTP connection in milliseconds.' settings.http_headers_progress_interval: '- (Optional) Sets minimal interval between notifications about request process in HTTP header X-ClickHouse-Progress.' settings.http_receive_timeout: '- (Optional) Timeout for HTTP connection in milliseconds.' settings.http_send_timeout: '- (Optional) Timeout for HTTP connection in milliseconds.' + settings.idle_connection_timeout: '- (Optional) Timeout to close idle TCP connections after specified number of seconds. Default value: 3600 seconds.' settings.input_format_defaults_for_omitted_fields: '- (Optional) When performing INSERT queries, replace omitted input column values with default values of the respective columns.' settings.input_format_import_nested_json: '- (Optional) Enables or disables the insertion of JSON data with nested objects.' + settings.input_format_null_as_default: '- Enables or disables the initialization of NULL fields with default values, if data type of these fields is not nullable.' settings.input_format_parallel_parsing: '- (Optional) Enables or disables order-preserving parallel parsing of data formats. Supported only for TSV, TKSV, CSV and JSONEachRow formats.' settings.input_format_values_interpret_expressions: '- (Optional) Enables or disables the full SQL parser if the fast stream parser can’t parse the data.' + settings.input_format_with_names_use_header: '- Enables or disables checking the column order when inserting data.' settings.insert_keeper_max_retries: '- (Optional) The setting sets the maximum number of retries for ClickHouse Keeper (or ZooKeeper) requests during insert into replicated MergeTree. Only Keeper requests which failed due to network error, Keeper session timeout, or request timeout are considered for retries.' settings.insert_null_as_default: '- (Optional) Enables the insertion of default values instead of NULL into columns with not nullable data type. Default value: true.' settings.insert_quorum: '- (Optional) Enables the quorum writes.' + settings.insert_quorum_parallel: '- Enables or disables parallelism for quorum INSERT queries.' settings.insert_quorum_timeout: '- (Optional) Write to a quorum timeout in milliseconds.' + settings.join_algorithm: '- (Optional) Specifies which JOIN algorithm is used. Possible values:' settings.join_overflow_mode: '- (Optional) Sets behaviour on overflow in JOIN. Possible values:' settings.join_use_nulls: '- (Optional) Sets the type of JOIN behaviour. When merging tables, empty cells may appear. ClickHouse fills them differently based on this setting.' settings.joined_subquery_requires_alias: '- (Optional) Require aliases for subselects and table functions in FROM that more than one table is present.' + settings.load_balancing: '- (Optional) Specifies the algorithm of replicas selection that is used for distributed query processing, one of: random, nearest_hostname, in_order, first_or_random, round_robin. Default value: random.' settings.local_filesystem_read_method: '- (Optional) Method of reading data from local filesystem. Possible values:' + settings.log_query_threads: '- (Optional) Setting up query threads logging. Query threads log into the system.query_thread_log table. This setting has effect only when log_queries is true. Queries’ threads run by ClickHouse with this setup are logged according to the rules in the query_thread_log server configuration parameter. Default value: true.' settings.low_cardinality_allow_in_native_format: '- (Optional) Allows or restricts using the LowCardinality data type with the Native format.' settings.max_ast_depth: '- (Optional) Maximum abstract syntax tree depth.' settings.max_ast_elements: '- (Optional) Maximum abstract syntax tree elements.' @@ -5693,6 +5479,7 @@ resources: settings.max_final_threads: '- (Optional) Sets the maximum number of parallel threads for the SELECT query data read phase with the FINAL modifier.' settings.max_http_get_redirects: '- (Optional) Limits the maximum number of HTTP GET redirect hops for URL-engine tables.' settings.max_insert_block_size: '- (Optional) The size of blocks (in a count of rows) to form for insertion into a table.' + settings.max_insert_threads: '- (Optional) The maximum number of threads to execute the INSERT SELECT query. Default value: 0.' settings.max_memory_usage: '- (Optional) Limits the maximum memory usage (in bytes) for processing queries on a single server.' settings.max_memory_usage_for_user: '- (Optional) Limits the maximum memory usage (in bytes) for processing of user''s queries on a single server.' settings.max_network_bandwidth: '- (Optional) Limits the speed of the data exchange over the network in bytes per second.' @@ -5718,7 +5505,7 @@ resources: settings.memory_overcommit_ratio_denominator: '- (Optional) It represents soft memory limit in case when hard limit is reached on user level. This value is used to compute overcommit ratio for the query. Zero means skip the query.' settings.memory_overcommit_ratio_denominator_for_user: '- (Optional) It represents soft memory limit in case when hard limit is reached on global level. This value is used to compute overcommit ratio for the query. Zero means skip the query.' settings.memory_profiler_sample_probability: '- (Optional) Collect random allocations and deallocations and write them into system.trace_log with ''MemorySample'' trace_type. The probability is for every alloc/free regardless to the size of the allocation. Possible values: from 0 to 1. Default: 0.' - settings.memory_profiler_step: '- (Optional) Memory profiler step (in bytes). If the next query step requires more memory than this parameter specifies, the memory profiler collects the allocating stack trace. Values lower than a few megabytes slow down query processing. Default value: 4194304 (4 MB). Zero means disabled memory profiler.' + settings.memory_profiler_step: '- (Optional) Memory profiler step (in bytes). If the next query step requires more memory than this parameter specifies, the memory profiler collects the allocating stack trace. Values lower than a few megabytes slow down query processing. Default value: 4194304 (4 MB). Zero means disabled memory profiler.' settings.memory_usage_overcommit_max_wait_microseconds: '- (Optional) Maximum time thread will wait for memory to be freed in the case of memory overcommit on a user level. If the timeout is reached and memory is not freed, an exception is thrown.' settings.merge_tree_max_bytes_to_use_cache: '- (Optional) If ClickHouse should read more than merge_tree_max_bytes_to_use_cache bytes in one query, it doesn’t use the cache of uncompressed blocks.' settings.merge_tree_max_rows_to_use_cache: '- (Optional) If ClickHouse should read more than merge_tree_max_rows_to_use_cache rows in one query, it doesn’t use the cache of uncompressed blocks.' @@ -5733,12 +5520,13 @@ resources: settings.min_insert_block_size_rows: '- (Optional) Sets the minimum number of rows in the block which can be inserted into a table by an INSERT query.' settings.output_format_json_quote_64bit_integers: '- (Optional) If the value is true, integers appear in quotes when using JSON* Int64 and UInt64 formats (for compatibility with most JavaScript implementations); otherwise, integers are output without the quotes.' settings.output_format_json_quote_denormals: '- (Optional) Enables +nan, -nan, +inf, -inf outputs in JSON output format.' + settings.prefer_localhost_replica: '- (Optional) Enables/disables preferable using the localhost replica when processing distributed queries. Default value: true.' settings.priority: '- (Optional) Query priority.' settings.quota_mode: '- (Optional) Quota accounting mode.' settings.read_overflow_mode: '- (Optional) Sets behaviour on overflow while read. Possible values:' settings.readonly: '- (Optional) Restricts permissions for reading data, write data and change settings queries.' settings.receive_timeout: '- (Optional) Receive timeout in milliseconds on the socket used for communicating with the client.' - settings.remote_filesystem_read_method: '- (Optional) Method of reading data from remote filesystem, one of: read, threadpool.' + settings.remote_filesystem_read_method: '- (Optional) Method of reading data from remote filesystem, one of: read, threadpool.' settings.replication_alter_partitions_sync: '- (Optional) For ALTER ... ATTACH|DETACH|DROP queries, you can use the replication_alter_partitions_sync setting to set up waiting.' settings.result_overflow_mode: '- (Optional) Sets behaviour on overflow in result. Possible values:' settings.select_sequential_consistency: '- (Optional) Enables or disables sequential consistency for SELECT queries.' @@ -5747,12 +5535,11 @@ resources: settings.set_overflow_mode: '- (Optional) Sets behaviour on overflow in the set resulting. Possible values:' settings.skip_unavailable_shards: '- (Optional) Enables or disables silently skipping of unavailable shards.' settings.sort_overflow_mode: '- (Optional) Sets behaviour on overflow while sort. Possible values:' - settings.timeout_before_checking_execution_speed: |- - - (Optional) Timeout (in seconds) between checks of execution speed. It is checked that execution speed is not less that specified in min_execution_speed parameter. - Must be at least 1000. + settings.timeout_before_checking_execution_speed: '- (Optional) Timeout (in seconds) between checks of execution speed. It is checked that execution speed is not less that specified in min_execution_speed parameter. Must be at least 1000.' settings.timeout_overflow_mode: '- (Optional) Sets behaviour on overflow. Possible values:' settings.transfer_overflow_mode: '- (Optional) Sets behaviour on overflow. Possible values:' settings.transform_null_in: '- (Optional) Enables equality of NULL values for IN operator.' + settings.use_hedged_requests: '- (Optional) Enables hedged requests logic for remote queries. It allows to establish many connections with different replicas for query. New connection is enabled in case existent connection(s) with replica(s) were not established within hedged_connection_timeout or no data was received within receive_data_timeout. Query uses the first connection which send non empty progress packet (or data packet, if allow_changing_replica_until_first_data_packet); other connections are cancelled. Queries with max_parallel_replicas > 1 are supported. Default value: true.' settings.use_uncompressed_cache: '- (Optional) Whether to use a cache of uncompressed blocks.' settings.wait_for_async_insert: '- (Optional) Enables waiting for processing of asynchronous insertion. If enabled, server returns OK only after the data is inserted.' settings.wait_for_async_insert_timeout: '- (Optional) The timeout (in seconds) for waiting for processing of asynchronous insertion. Value must be at least 1000 (1 second).' @@ -5762,12 +5549,10 @@ resources: shard_group: '- (Optional) A group of clickhouse shards. The structure is documented below.' shard_group.description: (Optional) - Description of the shard group. shard_group.name: (Required) - The name of the shard group, used as cluster name in Distributed tables. - shard_group.shard_names: (Required) - List of shards names that belong to the shard group. + shard_group.shard_names: (Required) - List of shards names that belong to the shard group. sql_database_management: '- (Optional, ForceNew) Grants admin user database management permission.' sql_user_management: '- (Optional, ForceNew) Enables admin user with user management permission.' - status: |- - - Status of the cluster. Can be CREATING, STARTING, RUNNING, UPDATING, STOPPING, STOPPED, ERROR or STATUS_UNKNOWN. - For more information see status field of JSON representation in the official documentation. + status: '- Status of the cluster. Can be CREATING, STARTING, RUNNING, UPDATING, STOPPING, STOPPED, ERROR or STATUS_UNKNOWN. For more information see status field of JSON representation in the official documentation.' throw: '- abort query execution, return an error.' user: '- (Required) A user of the ClickHouse cluster. The structure is documented below.' user.name: '- (Required) The name of the user.' @@ -5779,15 +5564,11 @@ resources: zookeeper: '- (Optional) Configuration of the ZooKeeper subcluster. The structure is documented below.' zookeeper.resources: '- (Optional) Resources allocated to hosts of the ZooKeeper subcluster. The structure is documented below.' zookeeper.resources.disk_size: '- (Optional) Volume of the storage available to a ZooKeeper host, in gigabytes.' - zookeeper.resources.disk_type_id: |- - - (Optional) Type of the storage of ZooKeeper hosts. - For more information see the official documentation. - zookeeper.resources.resources_preset_id: |- - - (Optional) The ID of the preset for computational resources available to a ZooKeeper host (CPU, memory etc.). - For more information, see the official documentation. + zookeeper.resources.disk_type_id: '- (Optional) Type of the storage of ZooKeeper hosts. For more information see the official documentation.' + zookeeper.resources.resources_preset_id: '- (Optional) The ID of the preset for computational resources available to a ZooKeeper host (CPU, memory etc.). For more information, see the official documentation.' importStatements: [] yandex_mdb_elasticsearch_cluster: - subCategory: "" + subCategory: Managed Service for Elasticsearch description: Manages a Elasticsearch cluster within Yandex.Cloud. name: yandex_mdb_elasticsearch_cluster title: yandex_mdb_elasticsearch_cluster @@ -5829,6 +5610,9 @@ resources: "name": "test", "network_id": "${yandex_vpc_network.foo.id}" } + references: + host.subnet_id: yandex_vpc_subnet.foo.id + network_id: yandex_vpc_network.foo.id dependencies: yandex_vpc_network.foo: '{}' yandex_vpc_subnet.foo: |- @@ -5886,20 +5670,20 @@ resources: "assign_public_ip": true, "name": "datanode${host.value}", "type": "DATA_NODE", - "zone": "${local.zones[(host.value)%3]}" + "zone": "${local.zones[(host.value) % 3]}" } ], - "for_each": "${toset(range(0,6))}" + "for_each": "${toset(range(0, 6))}" }, { "content": [ { "name": "masternode${host.value}", "type": "MASTER_NODE", - "zone": "${local.zones[host.value%3]}" + "zone": "${local.zones[host.value % 3]}" } ], - "for_each": "${toset(range(0,3))}" + "for_each": "${toset(range(0, 3))}" } ] }, @@ -5907,6 +5691,8 @@ resources: "name": "my-cluster", "network_id": "${yandex_vpc_network.es-net.id}" } + references: + network_id: yandex_vpc_network.es-net.id dependencies: yandex_vpc_network.es-net: '{}' yandex_vpc_subnet.es-subnet-a: |- @@ -5943,24 +5729,18 @@ resources: config.version: '- (Optional) Version of Elasticsearch.' created_at: '- Creation timestamp of the key.' data_node.resources: '- (Required) Resources allocated to hosts of the Elasticsearch data nodes subcluster. The structure is documented below.' - deletion_protection: '- (Optional) Inhibits deletion of the cluster. Can be either true or false.' + deletion_protection: '- (Optional) Inhibits deletion of the cluster. Can be either true or false.' description: '- (Optional) Description of the Elasticsearch cluster.' environment: '- (Required) Deployment environment of the Elasticsearch cluster. Can be either PRESTABLE or PRODUCTION.' folder_id: '- (Optional) The ID of the folder that the resource belongs to. If it is not provided, the default provider folder is used.' - health: |- - - Aggregated health of the cluster. Can be either ALIVE, DEGRADED, DEAD or HEALTH_UNKNOWN. - For more information see health field of JSON representation in the official documentation. + health: '- Aggregated health of the cluster. Can be either ALIVE, DEGRADED, DEAD or HEALTH_UNKNOWN. For more information see health field of JSON representation in the official documentation.' host: '- (Required) A host of the Elasticsearch cluster. The structure is documented below.' host.assign_public_ip: (Optional) - Sets whether the host should get a public IP address on creation. Can be either true or false. host.fqdn: (Computed) - The fully qualified domain name of the host. host.name: (Required) - User defined host name. - host.subnet_id: |- - (Optional) - The ID of the subnet, to which the host belongs. The subnet must - be a part of the network to which the cluster belongs. + host.subnet_id: (Optional) - The ID of the subnet, to which the host belongs. The subnet must be a part of the network to which the cluster belongs. host.type: '- (Required) The type of the host to be deployed. Can be either DATA_NODE or MASTER_NODE.' - host.zone: |- - - (Required) The availability zone where the Elasticsearch host will be created. - For more information see the official documentation. + host.zone: '- (Required) The availability zone where the Elasticsearch host will be created. For more information see the official documentation.' labels: '- (Optional) A set of key/value label pairs to assign to the Elasticsearch cluster.' maintenance_window.day: '- (Optional) Day of week for maintenance window if window type is weekly. Possible values: MON, TUE, WED, THU, FRI, SAT, SUN.' maintenance_window.hour: '- (Optional) Hour of day in UTC time zone (1-24) for maintenance window if window type is weekly.' @@ -5973,12 +5753,10 @@ resources: network_id: '- (Required) ID of the network, to which the Elasticsearch cluster belongs.' security_group_ids: '- (Optional) A set of ids of security groups assigned to hosts of the cluster.' service_account_id: '- (Optional) ID of the service account authorized for this cluster.' - status: |- - - Status of the cluster. Can be either CREATING, STARTING, RUNNING, UPDATING, STOPPING, STOPPED, ERROR or STATUS_UNKNOWN. - For more information see status field of JSON representation in the official documentation. + status: '- Status of the cluster. Can be either CREATING, STARTING, RUNNING, UPDATING, STOPPING, STOPPED, ERROR or STATUS_UNKNOWN. For more information see status field of JSON representation in the official documentation.' importStatements: [] yandex_mdb_greenplum_cluster: - subCategory: "" + subCategory: Managed Service for Greenplum description: Manages a Greenplum cluster within Yandex.Cloud. name: yandex_mdb_greenplum_cluster title: yandex_mdb_greenplum_cluster @@ -6078,32 +5856,40 @@ resources: access.data_lens: '- (Optional) Allow access for Yandex DataLens.' access.data_transfer: '- (Optional) Allow access for DataTransfer' access.web_sql: '- (Optional) Allows access for SQL queries in the management console.' + access.yandex_query: '- (Optional) Allow access for Yandex Query' + analyze_timeout: '- Maximum duration of the ANALYZE operation, in seconds. The default value is 36000. As soon as this period expires, the ANALYZE operation will be forced to terminate.' assign_public_ip: '- (Required) Sets whether the master hosts should get a public IP address on creation. Changing this parameter for an existing host is not supported at the moment.' + background_activities.analyze_and_vacuum: '- (Optional) Block to configure ''ANALYZE'' and ''VACUUM'' daily operations.' + background_activities.query_killer_idle: '- (Optional) Block to configure script that kills long running queries that are in idle state.' + background_activities.query_killer_idle_in_transaction: '- (Optional) block to configure script that kills long running queries that are in idle in transaction state.' + background_activities.query_killer_long_running: '- (Optional) block to configure script that kills long running queries (in any state).' backup_window_start: '- (Optional) Time to start the daily backup, in the UTC timezone. The structure is documented below.' backup_window_start.hours: '- (Optional) The hour at which backup will be started (UTC).' backup_window_start.minutes: '- (Optional) The minute at which backup will be started (UTC).' cloud_storage: '- (Optional) Cloud Storage settings of the Greenplum cluster. The structure is documented below.' cloud_storage.enable: '- (Optional) Whether to use cloud storage or not.' created_at: '- Creation timestamp of the cluster.' - deletion_protection: '- (Optional) Inhibits deletion of the cluster. Can be either true or false.' + deletion_protection: '- (Optional) Inhibits deletion of the cluster. Can be either true or false.' description: '- (Optional) Description of the Greenplum cluster.' + enable: '- Flag that indicates whether script is enabled.' environment: '- (Required) Deployment environment of the Greenplum cluster. (PRODUCTION, PRESTABLE)' - folder_id: |- - - (Optional) The ID of the folder that the resource belongs to. If it - is not provided, the default provider folder is used. + folder_id: '- (Optional) The ID of the folder that the resource belongs to. If it is not provided, the default provider folder is used.' greenplum_config: '- (Optional) Greenplum cluster config. Detail info in "Greenplum cluster settings" section (documented below).' health: '- Aggregated health of the cluster.' + ignore_users: '- List of users to ignore when considering queries to terminate.' labels: '- (Optional) A set of key/value label pairs to assign to the Greenplum cluster.' maintenance_window: '- (Optional) Maintenance policy of the Greenplum cluster. The structure is documented below.' maintenance_window.day: '- (Optional) Day of the week (in DDD format). Allowed values: "MON", "TUE", "WED", "THU", "FRI", "SAT", "SUN"' maintenance_window.hour: '- (Optional) Hour of the day in UTC (in HH format). Allowed value is between 0 and 23.' maintenance_window.type: '- (Required) Type of maintenance window. Can be either ANYTIME or WEEKLY. A day and hour of window need to be specified with weekly window.' master_host_count: '- (Required) Number of hosts in master subcluster (1 or 2).' + master_host_group_ids: '- (Optional) A list of IDs of the host groups to place master subclusters'' VMs of the cluster on.' master_hosts: '- (Computed) Info about hosts in master subcluster. The structure is documented below.' master_hosts.assign_public_ip: '- (Computed) Flag indicating that master hosts should be created with a public IP address.' master_hosts.fqdn: '- (Computed) The fully qualified domain name of the host.' master_subcluster: '- (Required) Settings for master subcluster. The structure is documented below.' master_subcluster.resources: '- (Required) Resources allocated to hosts for master subcluster of the Greenplum cluster. The structure is documented below.' + max_age: '- Maximum duration for this type of queries (in seconds).' name: '- (Required) Name of the Greenplum cluster. Provided by the client when the cluster is created.' network_id: '- (Required) ID of the network, to which the Greenplum cluster uses.' pooler_config: '- (Optional) Configuration of the connection pooler. The structure is documented below.' @@ -6122,20 +5908,23 @@ resources: pxf_config.xmx: '- (Optional) Initial JVM heap size for PXF daemon. Value is between 64 and 16384.' security_group_ids: '- (Optional) A set of ids of security groups assigned to hosts of the cluster.' segment_host_count: '- (Required) Number of hosts in segment subcluster (from 1 to 32).' + segment_host_group_ids: '- (Optional) A list of IDs of the host groups to place segment subclusters'' VMs of the cluster on.' segment_hosts: '- (Computed) Info about hosts in segment subcluster. The structure is documented below.' segment_hosts.fqdn: '- (Computed) The fully qualified domain name of the host.' segment_in_host: '- (Required) Number of segments on segment host (not more then 1 + RAM/8).' segment_subcluster: '- (Required) Settings for segment subcluster. The structure is documented below.' segment_subcluster.resources: '- (Required) Resources allocated to hosts for segment subcluster of the Greenplum cluster. The structure is documented below.' + start_time: '- Time of day in ''HH:MM'' format when scripts should run.' status: '- Status of the cluster.' subnet_id: '- (Required) The ID of the subnet, to which the hosts belongs. The subnet must be a part of the network to which the cluster belongs.' user_name: '- (Required) Greenplum cluster admin user name.' user_password: '- (Required) Greenplum cluster admin password name.' + vacuum_timeout: '- Maximum duration of the VACUUM operation, in seconds. The default value is 36000. As soon as this period expires, the VACUUM operation will be forced to terminate.' version: '- (Required) Version of the Greenplum cluster. (6.22 or 6.25)' zone: '- (Required) The availability zone where the Greenplum hosts will be created.' importStatements: [] yandex_mdb_kafka_cluster: - subCategory: "" + subCategory: Managed Service for Apache Kafka description: Manages a Kafka cluster within Yandex.Cloud. name: yandex_mdb_kafka_cluster title: yandex_mdb_kafka_cluster @@ -6229,6 +6018,8 @@ resources: } ] } + references: + network_id: yandex_vpc_network.foo.id dependencies: yandex_vpc_network.foo: '{}' yandex_vpc_subnet.foo: |- @@ -6343,6 +6134,8 @@ resources: } ] } + references: + network_id: yandex_vpc_network.foo.id dependencies: yandex_vpc_network.foo: '{}' yandex_vpc_subnet.bar: |- @@ -6381,15 +6174,15 @@ resources: config.zones: '- (Required) List of availability zones.' config.zookeeper: '- (Optional) Configuration of the ZooKeeper subcluster. The structure is documented below.' created_at: '- Timestamp of cluster creation.' - deletion_protection: '- (Optional) Inhibits deletion of the cluster. Can be either true or false.' + deletion_protection: '- (Optional) Inhibits deletion of the cluster. Can be either true or false.' description: '- (Optional) Description of the Kafka cluster.' - environment: |- - - (Optional) Deployment environment of the Kafka cluster. Can be either PRESTABLE or PRODUCTION. - The default is PRODUCTION. + disk_size_autoscaling: '- (Optional) Disk autoscaling settings of the Kafka cluster. The structure is documented below.' + disk_size_autoscaling.disk_size_limit: '- (Required) Maximum possible size of disk in bytes.' + disk_size_autoscaling.emergency_usage_threshold: '- (Optional) Percent of disk utilization. Disk will autoscale immediately, if this threshold reached. Value is between 0 and 100. Default value is 0 (autoscaling disabled). Must be not less then ''planned_usage_threshold'' value.' + disk_size_autoscaling.planned_usage_threshold: '- (Optional) Percent of disk utilization. During maintenance disk will autoscale, if this threshold reached. Value is between 0 and 100. Default value is 0 (autoscaling disabled).' + environment: '- (Optional) Deployment environment of the Kafka cluster. Can be either PRESTABLE or PRODUCTION. The default is PRODUCTION.' folder_id: '- (Optional) The ID of the folder that the resource belongs to. If it is not provided, the default provider folder is used.' - health: |- - - Aggregated health of the cluster. Can be either ALIVE, DEGRADED, DEAD or HEALTH_UNKNOWN. - For more information see health field of JSON representation in the official documentation. + health: '- Aggregated health of the cluster. Can be either ALIVE, DEGRADED, DEAD or HEALTH_UNKNOWN. For more information see health field of JSON representation in the official documentation.' host: '- A host of the Kafka cluster. The structure is documented below.' host.assign_public_ip: '- The flag that defines whether a public IP address is assigned to the node.' host.health: '- Health of the host.' @@ -6400,12 +6193,7 @@ resources: host_group_ids: '- (Optional) A list of IDs of the host groups to place VMs of the cluster on.' kafka.kafka_config: '- (Optional) User-defined settings for the Kafka cluster. The structure is documented below.' kafka.resources: '- (Required) Resources allocated to hosts of the Kafka subcluster. The structure is documented below.' - kafka_config.compression_type: |- - , log_flush_interval_messages, log_flush_interval_ms, log_flush_scheduler_interval_ms, log_retention_bytes, log_retention_hours, - log_retention_minutes, log_retention_ms, log_segment_bytes, log_preallocate, socket_send_buffer_bytes, socket_receive_buffer_bytes, auto_create_topics_enable, - num_partitions, default_replication_factor, message_max_bytes, replica_fetch_max_bytes, ssl_cipher_suites, offsets_retention_minutes, sasl_enabled_mechanisms - (Optional) Kafka server settings. For more information, see - the official documentation - and the Kafka documentation. + kafka_config.compression_type: ', log_flush_interval_messages, log_flush_interval_ms, log_flush_scheduler_interval_ms, log_retention_bytes, log_retention_hours, log_retention_minutes, log_retention_ms, log_segment_bytes, log_preallocate, socket_send_buffer_bytes, socket_receive_buffer_bytes, auto_create_topics_enable, num_partitions, default_replication_factor, message_max_bytes, replica_fetch_max_bytes, ssl_cipher_suites, offsets_retention_minutes, sasl_enabled_mechanisms - (Optional) Kafka server settings. For more information, see the official documentation and the Kafka documentation.' labels: '- (Optional) A set of key/value label pairs to assign to the Kafka cluster.' maintenance_window: '- (Optional) Maintenance policy of the Kafka cluster. The structure is documented below.' maintenance_window.day: '- (Optional) Day of the week (in DDD format). Allowed values: "MON", "TUE", "WED", "THU", "FRI", "SAT", "SUN"' @@ -6417,45 +6205,31 @@ resources: permission.role: '- (Required) The role type to grant to the topic.' permission.topic_name: '- (Required) The name of the topic that the permission grants access to.' resources.disk_size: '- (Required) Volume of the storage available to a Kafka host, in gigabytes.' - resources.disk_type_id: |- - - (Required) Type of the storage of Kafka hosts. - For more information see the official documentation. - resources.resources_preset_id: |- - - (Required) The ID of the preset for computational resources available to a Kafka host (CPU, memory etc.). - For more information, see the official documentation. + resources.disk_type_id: '- (Required) Type of the storage of Kafka hosts. For more information see the official documentation.' + resources.resources_preset_id: '- (Required) The ID of the preset for computational resources available to a Kafka host (CPU, memory etc.). For more information, see the official documentation.' security_group_ids: '- (Optional) Security group ids, to which the Kafka cluster belongs.' - status: |- - - Status of the cluster. Can be either CREATING, STARTING, RUNNING, UPDATING, STOPPING, STOPPED, ERROR or STATUS_UNKNOWN. - For more information see status field of JSON representation in the official documentation. + status: '- Status of the cluster. Can be either CREATING, STARTING, RUNNING, UPDATING, STOPPING, STOPPED, ERROR or STATUS_UNKNOWN. For more information see status field of JSON representation in the official documentation.' subnet_ids: '- (Optional) IDs of the subnets, to which the Kafka cluster belongs.' topic: '- (Deprecated) To manage topics, please switch to using a separate resource type yandex_mdb_kafka_topic.' topic.name: '- (Required) The name of the topic.' topic.partitions: '- (Required) The number of the topic''s partitions.' topic.replication_factor: '- (Required) Amount of data copies (replicas) for the topic in the cluster.' topic.topic_config: '- (Required) User-defined settings for the topic. The structure is documented below.' - topic_config.compression_type: |- - , delete_retention_ms, file_delete_delay_ms, flush_messages, flush_ms, min_compaction_lag_ms, - retention_bytes, retention_ms, max_message_bytes, min_insync_replicas, segment_bytes, preallocate, - (Optional) Kafka topic settings. For more information, see - the official documentation - and the Kafka documentation. + topic_config.compression_type: ', delete_retention_ms, file_delete_delay_ms, flush_messages, flush_ms, min_compaction_lag_ms, retention_bytes, retention_ms, max_message_bytes, min_insync_replicas, segment_bytes, preallocate, - (Optional) Kafka topic settings. For more information, see the official documentation and the Kafka documentation.' user: '- (Deprecated) To manage users, please switch to using a separate resource type yandex_mdb_kafka_user.' user.name: '- (Required) The name of the user.' user.password: '- (Required) The password of the user.' user.permission: '- (Optional) Set of permissions granted to the user. The structure is documented below.' zookeeper.resources: '- (Optional) Resources allocated to hosts of the ZooKeeper subcluster. The structure is documented below.' zookeeper.resources.disk_size: '- (Optional) Volume of the storage available to a ZooKeeper host, in gigabytes.' - zookeeper.resources.disk_type_id: |- - - (Optional) Type of the storage of ZooKeeper hosts. - For more information see the official documentation. - zookeeper.resources.resources_preset_id: |- - - (Optional) The ID of the preset for computational resources available to a ZooKeeper host (CPU, memory etc.). - For more information, see the official documentation. + zookeeper.resources.disk_type_id: '- (Optional) Type of the storage of ZooKeeper hosts. For more information see the official documentation.' + zookeeper.resources.resources_preset_id: '- (Optional) The ID of the preset for computational resources available to a ZooKeeper host (CPU, memory etc.). For more information, see the official documentation.' importStatements: [] yandex_mdb_kafka_connector: - subCategory: "" + subCategory: Managed Service for Apache Kafka description: Manages a connectors of a Kafka cluster within Yandex.Cloud. name: yandex_mdb_kafka_connector - title: yandex_mdb_kafka_connect + title: yandex_mdb_kafka_connector examples: - name: connector manifest: |- @@ -6613,7 +6387,7 @@ resources: tasks_max: '- (Optional) The number of the connector''s parallel working tasks. Default is the number of brokers' importStatements: [] yandex_mdb_kafka_topic: - subCategory: "" + subCategory: Managed Service for Apache Kafka description: Manages a topic of a Kafka cluster within Yandex.Cloud. name: yandex_mdb_kafka_topic title: yandex_mdb_kafka_topic @@ -6675,15 +6449,10 @@ resources: partitions: '- (Required) The number of the topic''s partitions.' replication_factor: '- (Required) Amount of data copies (replicas) for the topic in the cluster.' topic_config: '- (Optional) User-defined settings for the topic. The structure is documented below.' - topic_config.cleanup_policy: |- - , compression_type, delete_retention_ms, file_delete_delay_ms, flush_messages, flush_ms, - min_compaction_lag_ms, retention_bytes, retention_ms, max_message_bytes, min_insync_replicas, - segment_bytes, preallocate - (Optional) Kafka topic settings. For more information, see - the official documentation - and the Kafka documentation. + topic_config.cleanup_policy: ', compression_type, delete_retention_ms, file_delete_delay_ms, flush_messages, flush_ms, min_compaction_lag_ms, retention_bytes, retention_ms, max_message_bytes, min_insync_replicas, segment_bytes, preallocate - (Optional) Kafka topic settings. For more information, see the official documentation and the Kafka documentation.' importStatements: [] yandex_mdb_kafka_user: - subCategory: "" + subCategory: Managed Service for Apache Kafka description: Manages a user of a Kafka cluster within Yandex.Cloud. name: yandex_mdb_kafka_user title: yandex_mdb_kafka_user @@ -6752,7 +6521,7 @@ resources: permission.topic_name: '- (Required) The name of the topic that the permission grants access to.' importStatements: [] yandex_mdb_mongodb_cluster: - subCategory: "" + subCategory: Managed Service for MongoDB description: Manages a MongoDB cluster within Yandex.Cloud. name: yandex_mdb_mongodb_cluster title: yandex_mdb_mongodb_cluster @@ -6820,6 +6589,9 @@ resources: } ] } + references: + host.subnet_id: yandex_vpc_subnet.foo.id + network_id: yandex_vpc_network.foo.id dependencies: yandex_vpc_network.foo: '{}' yandex_vpc_subnet.foo: |- @@ -6833,14 +6605,8 @@ resources: argumentDocs: access.data_lens: '- (Optional) Allow access for Yandex DataLens.' access.data_transfer: '- (Optional) Allow access for DataTransfer' - audit_log.filter: |- - - (Optional) Configuration of the audit log filter in JSON format. - For more information see auditLog.filter - description in the official documentation. Available only in enterprise edition. - audit_log.runtime_configuration: |- - - (Optional) Specifies if a node allows runtime configuration of audit filters and the auditAuthorizationSuccess variable. - For more information see auditLog.runtimeConfiguration - description in the official documentation. Available only in enterprise edition. + audit_log.filter: '- (Optional) Configuration of the audit log filter in JSON format. For more information see auditLog.filter description in the official documentation. Available only in enterprise edition.' + audit_log.runtime_configuration: '- (Optional) Specifies if a node allows runtime configuration of audit filters and the auditAuthorizationSuccess variable. For more information see auditLog.runtimeConfiguration description in the official documentation. Available only in enterprise edition.' backup_window_start.hours: '- (Optional) The hour at which backup will be started.' backup_window_start.minutes: '- (Optional) The minute at which backup will be started.' cluster_config: '- (Required) Configuration of the MongoDB subcluster. The structure is documented below.' @@ -6859,134 +6625,61 @@ resources: database: '- (Optional) A database of the MongoDB cluster. The structure is documented below.' database.name: '- (Required) The name of the database.' delete: '- Default 30 minutes.' - deletion_protection: '- (Optional) Inhibits deletion of the cluster. Can be either true or false.' + deletion_protection: '- (Optional) Inhibits deletion of the cluster. Can be either true or false.' description: '- (Optional) Description of the MongoDB cluster.' + disk_size_autoscaling_mongod.disk_size_limit: '- Limit of disk size after autoscaling (GiB).' + disk_size_autoscaling_mongod.emergency_usage_threshold: '- Immediate autoscaling disk usage (percent).' + disk_size_autoscaling_mongod.planned_usage_threshold: '- Maintenance window autoscaling disk usage (percent).' environment: '- (Required, ForceNew) Deployment environment of the MongoDB cluster. Can be either PRESTABLE or PRODUCTION.' - folder_id: |- - - (Optional) The ID of the folder that the resource belongs to. If it - is not provided, the default provider folder is used. - health: |- - - Aggregated health of the cluster. Can be either ALIVE, DEGRADED, DEAD or HEALTH_UNKNOWN. - For more information see health field of JSON representation in the official documentation. + folder_id: '- (Optional) The ID of the folder that the resource belongs to. If it is not provided, the default provider folder is used.' + health: '- Aggregated health of the cluster. Can be either ALIVE, DEGRADED, DEAD or HEALTH_UNKNOWN. For more information see health field of JSON representation in the official documentation.' hidden: '- (Optional) Should this host be hidden in replicaset. Can be either true of false. For more information see the official documentation' host: '- (Required) A host of the MongoDB cluster. The structure is documented below.' - host.assign_public_ip: -(Optional) Should this host have assigned public IP assigned. Can be either true or false. + host.assign_public_ip: -(Optional) Should this host have assigned public IP assigned. Can be either true or false. host.health: '- (Computed) The health of the host.' host.host_parameters: '- (Optional) The parameters of mongod host in replicaset.' host.name: '- (Computed) The fully qualified domain name of the host. Computed on server side.' host.role: '- (Optional) The role of the cluster (either PRIMARY or SECONDARY).' host.shard_name: '- (Optional) The name of the shard to which the host belongs. Only for sharded cluster.' - host.subnet_id: |- - - (Required) The ID of the subnet, to which the host belongs. The subnet must - be a part of the network to which the cluster belongs. + host.subnet_id: '- (Required) The ID of the subnet, to which the host belongs. The subnet must be a part of the network to which the cluster belongs.' host.type: '- (Optional) type of mongo daemon which runs on this host (mongod, mongos, mongocfg, mongoinfra). Defaults to mongod.' - host.zone_id: |- - - (Required) The availability zone where the MongoDB host will be created. - For more information see the official documentation. - journal.commit_interval: |- - - (Optional) The maximum amount of time in milliseconds that the mongod process allows between journal operations. - For more information, see the storage.journal.commitIntervalMs - description in the official documentation. - kmip.client_certificate: |- - - (Required) String containing the client certificate used for authenticating MongoDB to the KMIP server. - For more information see security.kmip.clientCertificateFile - description in the official documentation. - kmip.key_identifier: |- - - (Optional) Unique KMIP identifier for an existing key within the KMIP server. - For more information see security.kmip.keyIdentifier - description in the official documentation. - kmip.port: |- - - (Optional) Port number to use to communicate with the KMIP server. Default: 5696 - For more information see security.kmip.port - description in the official documentation. - kmip.server_ca: |- - - (Required) Path to CA File. Used for validating secure client connection to KMIP server. - For more information see security.kmip.serverCAFile - description in the official documentation. - kmip.server_name: |- - - (Required) Hostname or IP address of the KMIP server to connect to. - For more information see security.kmip.serverName - description in the official documentation. + host.zone_id: '- (Required) The availability zone where the MongoDB host will be created. For more information see the official documentation.' + journal.commit_interval: '- (Optional) The maximum amount of time in milliseconds that the mongod process allows between journal operations. For more information, see the storage.journal.commitIntervalMs description in the official documentation.' + kmip.client_certificate: '- (Required) String containing the client certificate used for authenticating MongoDB to the KMIP server. For more information see security.kmip.clientCertificateFile description in the official documentation.' + kmip.key_identifier: '- (Optional) Unique KMIP identifier for an existing key within the KMIP server. For more information see security.kmip.keyIdentifier description in the official documentation.' + kmip.port: '- (Optional) Port number to use to communicate with the KMIP server. Default: 5696 For more information see security.kmip.port description in the official documentation.' + kmip.server_ca: '- (Required) Path to CA File. Used for validating secure client connection to KMIP server. For more information see security.kmip.serverCAFile description in the official documentation.' + kmip.server_name: '- (Required) Hostname or IP address of the KMIP server to connect to. For more information see security.kmip.serverName description in the official documentation.' labels: '- (Optional) A set of key/value label pairs to assign to the MongoDB cluster.' maintenance_window: '- (Optional) Maintenance window settings of the MongoDB cluster. The structure is documented below.' maintenance_window.day: '- (Optional) Day of week for maintenance window if window type is weekly. Possible values: MON, TUE, WED, THU, FRI, SAT, SUN.' maintenance_window.hour: '- (Optional) Hour of day in UTC time zone (1-24) for maintenance window if window type is weekly.' maintenance_window.type: '- (Required) Type of maintenance window. Can be either ANYTIME or WEEKLY. A day and hour of window need to be specified with weekly window.' - mongocfg.net: |- - - (Optional) A set of network settings - (see the net option). - The structure is documented below. - mongocfg.operation_profiling: |- - - (Optional) A set of profiling settings - (see the operationProfiling option). - The structure is documented below. - mongocfg.storage: |- - - (Optional) A set of storage settings - (see the storage option). - The structure is documented below. - mongod.audit_log: |- - - (Optional) A set of audit log settings - (see the auditLog option). - The structure is documented below. Available only in enterprise edition. - mongod.net: |- - - (Optional) A set of network settings - (see the net option). - The structure is documented below. - mongod.operation_profiling: |- - - (Optional) A set of profiling settings - (see the operationProfiling option). - The structure is documented below. - mongod.security: |- - - (Optional) A set of MongoDB Security settings - (see the security option). - The structure is documented below. Available only in enterprise edition. - mongod.set_parameter: |- - - (Optional) A set of MongoDB Server Parameters - (see the setParameter option). - The structure is documented below. - mongod.storage: |- - - (Optional) A set of storage settings - (see the storage option). - The structure is documented below. - mongos.net: |- - - (Optional) A set of network settings - (see the net option). - The structure is documented below. + mongocfg.net: '- (Optional) A set of network settings (see the net option). The structure is documented below.' + mongocfg.operation_profiling: '- (Optional) A set of profiling settings (see the operationProfiling option). The structure is documented below.' + mongocfg.storage: '- (Optional) A set of storage settings (see the storage option). The structure is documented below.' + mongod.audit_log: '- (Optional) A set of audit log settings (see the auditLog option). The structure is documented below. Available only in enterprise edition.' + mongod.net: '- (Optional) A set of network settings (see the net option). The structure is documented below.' + mongod.operation_profiling: '- (Optional) A set of profiling settings (see the operationProfiling option). The structure is documented below.' + mongod.security: '- (Optional) A set of MongoDB Security settings (see the security option). The structure is documented below. Available only in enterprise edition.' + mongod.set_parameter: '- (Optional) A set of MongoDB Server Parameters (see the setParameter option). The structure is documented below.' + mongod.storage: '- (Optional) A set of storage settings (see the storage option). The structure is documented below.' + mongos.net: '- (Optional) A set of network settings (see the net option). The structure is documented below.' name: '- (Required) Name of the MongoDB cluster. Provided by the client when the cluster is created.' - net.compressors: |- - - (Optional) Specifies the default compressor(s) to use for communication between this mongod or mongos. - Accepts array of compressors. Order matters. Available compressors: snappy, zlib, zstd, disabled. To disable network compression, make "disabled" the only value. - For more information, see the net.Compression.Compressors - description in the official documentation. - net.max_incoming_connections: |- - - (Optional) The maximum number of simultaneous connections that host will accept. - For more information, see the net.maxIncomingConnections - description in the official documentation. + net.compressors: '- (Optional) Specifies the default compressor(s) to use for communication between this mongod or mongos. Accepts array of compressors. Order matters. Available compressors: snappy, zlib, zstd, disabled. To disable network compression, make "disabled" the only value. For more information, see the net.Compression.Compressors description in the official documentation.' + net.max_incoming_connections: '- (Optional) The maximum number of simultaneous connections that host will accept. For more information, see the net.maxIncomingConnections description in the official documentation.' network_id: '- (Required, ForceNew) ID of the network, to which the MongoDB cluster belongs.' - operation_profiling.mode: |- - - (Optional) Specifies which operations should be profiled. The following profiler levels are available: off, slow_op, all. - For more information, see the operationProfiling.mode - description in the official documentation. - operation_profiling.slow_op_sample_rate: |- - - (Optional) The fraction of slow operations that should be profiled or logged. Accepts values between 0 and 1, inclusive. - For more information, see the operationProfiling.slowOpSampleRate - description in the official documentation. - operation_profiling.slow_op_threshold: |- - - (Optional) The slow operation time threshold, in milliseconds. Operations that run for longer than this threshold are considered slow. - For more information, see the operationProfiling.slowOpThresholdMs - description in the official documentation. + operation_profiling.mode: '- (Optional) Specifies which operations should be profiled. The following profiler levels are available: off, slow_op, all. For more information, see the operationProfiling.mode description in the official documentation.' + operation_profiling.slow_op_sample_rate: '- (Optional) The fraction of slow operations that should be profiled or logged. Accepts values between 0 and 1, inclusive. For more information, see the operationProfiling.slowOpSampleRate description in the official documentation.' + operation_profiling.slow_op_threshold: '- (Optional) The slow operation time threshold, in milliseconds. Operations that run for longer than this threshold are considered slow. For more information, see the operationProfiling.slowOpThresholdMs description in the official documentation.' performance_diagnostics.enabled: '- (Optional) Enable or disable performance diagnostics.' permission.database_name: '- (Required) The name of the database that the permission grants access to.' permission.roles: '- (Optional) The roles of the user in this database. For more information see the official documentation.' priority: '- (Optional) A floating point number that indicates the relative likelihood of a replica set member to become the primary. For more information see the official documentation' resources: '- (DEPRECATED, use resources_* instead) Resources allocated to hosts of the MongoDB cluster. The structure is documented below.' resources.disk_size: '- (Required) Volume of the storage available to a MongoDB host, in gigabytes.' - resources.disk_type_id: |- - - (Required) Type of the storage of MongoDB hosts. - For more information see the official documentation. - resources.resources_preset_id: |- - - (Required) The ID of the preset for computational resources available to a MongoDB host (CPU, memory etc.). - For more information, see the official documentation. + resources.disk_type_id: '- (Required) Type of the storage of MongoDB hosts. For more information see the official documentation.' + resources.resources_preset_id: '- (Required) The ID of the preset for computational resources available to a MongoDB host (CPU, memory etc.). For more information, see the official documentation.' resources_mongocfg: '- (Optional) Resources allocated to mongocfg hosts of the MongoDB cluster. The structure is documented below.' resources_mongod: '- (Optional) Resources allocated to mongod hosts of the MongoDB cluster. The structure is documented below.' resources_mongoinfra: '- (Optional) Resources allocated to mongoinfra hosts of the MongoDB cluster. The structure is documented below.' @@ -6995,60 +6688,28 @@ resources: restore.backup_id: '- (Required, ForceNew) Backup ID. The cluster will be created from the specified backup. How to get a list of PostgreSQL backups' restore.time: '- (Optional, ForceNew) Timestamp of the moment to which the MongoDB cluster should be restored. (Format: "2006-01-02T15:04:05" - UTC). When not set, current time is used.' secondary_delay_secs: '- (Optional) The number of seconds "behind" the primary that this replica set member should "lag". For more information see the official documentation' - security.enable_encryption: |- - - (Optional) Enables the encryption for the WiredTiger storage engine. Can be either true or false. - For more information see security.enableEncryption - description in the official documentation. Available only in enterprise edition. - security.kmip: |- - - (Optional) Configuration of the third party key management appliance via the Key Management Interoperability Protocol (KMIP) - (see Encryption tutorial ). Requires enable_encryption to be true. - The structure is documented below. Available only in enterprise edition. + security.enable_encryption: '- (Optional) Enables the encryption for the WiredTiger storage engine. Can be either true or false. For more information see security.enableEncryption description in the official documentation. Available only in enterprise edition.' + security.kmip: '- (Optional) Configuration of the third party key management appliance via the Key Management Interoperability Protocol (KMIP) (see Encryption tutorial ). Requires enable_encryption to be true. The structure is documented below. Available only in enterprise edition.' security_group_ids: '- (Optional) A set of ids of security groups assigned to hosts of the cluster.' - set_parameter.audit_authorization_success: |- - - (Optional) Enables the auditing of authorization successes. Can be either true or false. - For more information, see the auditAuthorizationSuccess - description in the official documentation. Available only in enterprise edition. - set_parameter.enable_flow_control: |- - - (Optional) Enables the flow control. Can be either true or false. - For more information, see the enableFlowControl - description in the official documentation. - set_parameter.min_snapshot_history_window_in_seconds: |- - - (Optional) The minimum time window in seconds for which the storage engine keeps the snapshot history. - For more information, see the minSnapshotHistoryWindowInSeconds - description in the official documentation. + set_parameter.audit_authorization_success: '- (Optional) Enables the auditing of authorization successes. Can be either true or false. For more information, see the auditAuthorizationSuccess description in the official documentation. Available only in enterprise edition.' + set_parameter.enable_flow_control: '- (Optional) Enables the flow control. Can be either true or false. For more information, see the enableFlowControl description in the official documentation.' + set_parameter.min_snapshot_history_window_in_seconds: '- (Optional) The minimum time window in seconds for which the storage engine keeps the snapshot history. For more information, see the minSnapshotHistoryWindowInSeconds description in the official documentation.' sharded: '- MongoDB Cluster mode enabled/disabled.' - status: |- - - Status of the cluster. Can be either CREATING, STARTING, RUNNING, UPDATING, STOPPING, STOPPED, ERROR or STATUS_UNKNOWN. - For more information see status field of JSON representation in the official documentation. - storage.journal: |- - - (Optional) The durability journal to ensure data files remain valid and recoverable. - The structure is documented below. - storage.wired_tiger: |- - - (Optional) The WiredTiger engine settings. - (see the storage.wiredTiger option). - These settings available only on mongod hosts. The structure is documented below. + status: '- Status of the cluster. Can be either CREATING, STARTING, RUNNING, UPDATING, STOPPING, STOPPED, ERROR or STATUS_UNKNOWN. For more information see status field of JSON representation in the official documentation.' + storage.journal: '- (Optional) The durability journal to ensure data files remain valid and recoverable. The structure is documented below.' + storage.wired_tiger: '- (Optional) The WiredTiger engine settings. (see the storage.wiredTiger option). These settings available only on mongod hosts. The structure is documented below.' tags: '- (Optional) A set of key/value pairs to assign for the replica set member. For more information see the official documentation' update: '- Default 60 minutes.' user: '- (Optional) A user of the MongoDB cluster. The structure is documented below.' user.name: '- (Required) The name of the user.' user.password: '- (Required) The password of the user.' user.permission: '- (Optional) Set of permissions granted to the user. The structure is documented below.' - wired_tiger.block_compressor: |- - - (Optional) Specifies the default compression for collection data. You can override this on a per-collection basis when creating collections. - Available compressors are: none, snappy, zlib, zstd. This setting available only on mongod hosts. - For more information, see the storage.wiredTiger.collectionConfig.blockCompressor - description in the official documentation. - wired_tiger.cache_size_gb: |- - - (Optional) Defines the maximum size of the internal cache that WiredTiger will use for all data. - For more information, see the storage.wiredTiger.engineConfig.cacheSizeGB - description in the official documentation. - wired_tiger.prefix_compression: |- - - (Optional) Enables or disables prefix compression for index data. Đ¡an be either true or false. - For more information, see the storage.wiredTiger.indexConfig.prefixCompression - description in the official documentation. + wired_tiger.block_compressor: '- (Optional) Specifies the default compression for collection data. You can override this on a per-collection basis when creating collections. Available compressors are: none, snappy, zlib, zstd. This setting available only on mongod hosts. For more information, see the storage.wiredTiger.collectionConfig.blockCompressor description in the official documentation.' + wired_tiger.cache_size_gb: '- (Optional) Defines the maximum size of the internal cache that WiredTiger will use for all data. For more information, see the storage.wiredTiger.engineConfig.cacheSizeGB description in the official documentation.' + wired_tiger.prefix_compression: '- (Optional) Enables or disables prefix compression for index data. Đ¡an be either true or false. For more information, see the storage.wiredTiger.indexConfig.prefixCompression description in the official documentation.' importStatements: [] yandex_mdb_mongodb_database: - subCategory: "" + subCategory: Managed Service for MongoDB description: Manages a MongoDB database within Yandex.Cloud. name: yandex_mdb_mongodb_database title: yandex_mdb_mongodb_database @@ -7099,7 +6760,7 @@ resources: name: '- (Required) The name of the database.' importStatements: [] yandex_mdb_mongodb_user: - subCategory: "" + subCategory: Managed Service for MongoDB description: Manages a MongoDB user within Yandex.Cloud. name: yandex_mdb_mongodb_user title: yandex_mdb_mongodb_user @@ -7155,7 +6816,7 @@ resources: permission.roles: '- (Optional) List of strings. The roles of the user in this database. For more information see the official documentation.' importStatements: [] yandex_mdb_mysql_cluster: - subCategory: "" + subCategory: Managed Service for MySQL description: Manages a MySQL cluster within Yandex.Cloud. name: yandex_mdb_mysql_cluster title: yandex_mdb_mysql_cluster @@ -7550,13 +7211,11 @@ resources: database.name: '- (Required) The name of the database.' default_authentication_plugin: 'one of:' default_time_zone: text - deletion_protection: '- (Optional) Inhibits deletion of the cluster. Can be either true or false.' + deletion_protection: '- (Optional) Inhibits deletion of the cluster. Can be either true or false.' description: '- (Optional) Description of the MySQL cluster.' environment: '- (Required) Deployment environment of the MySQL cluster.' explicit_defaults_for_timestamp: boolean - folder_id: |- - - (Optional) The ID of the folder that the resource belongs to. If it - is not provided, the default provider folder is used. + folder_id: '- (Optional) The ID of the folder that the resource belongs to. If it is not provided, the default provider folder is used.' general_log: boolean group_concat_max_len: integer health: '- Aggregated health of the cluster.' @@ -7618,18 +7277,13 @@ resources: performance_diagnostics.sessions_sampling_interval: '- Interval (in seconds) for my_stat_activity sampling Acceptable values are 1 to 86400, inclusive.' performance_diagnostics.statements_sampling_interval: '- Interval (in seconds) for my_stat_statements sampling Acceptable values are 1 to 86400, inclusive.' permission.database_name: '- (Required) The name of the database that the permission grants access to.' - permission.roles: |- - - (Optional) List user's roles in the database. - Allowed roles: ALL,ALTER,ALTER_ROUTINE,CREATE,CREATE_ROUTINE,CREATE_TEMPORARY_TABLES, - CREATE_VIEW,DELETE,DROP,EVENT,EXECUTE,INDEX,INSERT,LOCK_TABLES,SELECT,SHOW_VIEW,TRIGGER,UPDATE. + permission.roles: '- (Optional) List user''s roles in the database. Allowed roles: ALL,ALTER,ALTER_ROUTINE,CREATE,CREATE_ROUTINE,CREATE_TEMPORARY_TABLES, CREATE_VIEW,DELETE,DROP,EVENT,EXECUTE,INDEX,INSERT,LOCK_TABLES,SELECT,SHOW_VIEW,TRIGGER,UPDATE.' range_optimizer_max_mem_size: integer regexp_time_limit: integer resources: '- (Required) Resources allocated to hosts of the MySQL cluster. The structure is documented below.' resources.disk_size: '- (Required) Volume of the storage available to a MySQL host, in gigabytes.' resources.disk_type_id: '- (Required) Type of the storage of MySQL hosts.' - resources.resources_preset_id: |- - - (Required) The ID of the preset for computational resources available to a MySQL host (CPU, memory etc.). - For more information, see the official documentation. + resources.resources_preset_id: '- (Required) The ID of the preset for computational resources available to a MySQL host (CPU, memory etc.). For more information, see the official documentation.' restore: '- (Optional, ForceNew) The cluster will be created from the specified backup. The structure is documented below.' restore.backup_id: '- (Required, ForceNew) Backup ID. The cluster will be created from the specified backup. How to get a list of MySQL backups.' restore.time: '- (Optional, ForceNew) Timestamp of the moment to which the MySQL cluster should be restored. (Format: "2006-01-02T15:04:05" - UTC). When not set, current time is used.' @@ -7653,13 +7307,10 @@ resources: transaction_isolation: 'one of:' user: '- (Deprecated) To manage users, please switch to using a separate resource type yandex_mdb_mysql_user.' user.authentication_plugin: '- (Optional) Authentication plugin. Allowed values: MYSQL_NATIVE_PASSWORD, CACHING_SHA2_PASSWORD, SHA256_PASSWORD (for version 5.7 MYSQL_NATIVE_PASSWORD, SHA256_PASSWORD)' - user.connection_limits: |- - - (Optional) User's connection limits. The structure is documented below. - If the attribute is not specified there will be no changes. + user.connection_limits: '- (Optional) User''s connection limits. The structure is documented below. If the attribute is not specified there will be no changes.' user.global_permissions: |- - (Optional) List user's global permissions - Allowed permissions: REPLICATION_CLIENT, REPLICATION_SLAVE, PROCESS for clear list use empty list. - If the attribute is not specified there will be no changes. + Allowed permissions: REPLICATION_CLIENT, REPLICATION_SLAVE, PROCESS for clear list use empty list. If the attribute is not specified there will be no changes. user.name: '- (Required) The name of the user.' user.password: '- (Required) The password of the user.' user.permission: '- (Optional) Set of permissions granted to the user. The structure is documented below.' @@ -7667,7 +7318,7 @@ resources: wait_timeout: integer importStatements: [] yandex_mdb_mysql_database: - subCategory: "" + subCategory: Managed Service for MySQL description: Manages a MySQL database within Yandex.Cloud. name: yandex_mdb_mysql_database title: yandex_mdb_mysql_database @@ -7714,7 +7365,7 @@ resources: name: '- (Required) The name of the database.' importStatements: [] yandex_mdb_mysql_user: - subCategory: "" + subCategory: Managed Service for MySQL description: Manages a MySQL user within Yandex.Cloud. name: yandex_mdb_mysql_user title: yandex_mdb_mysql_user @@ -7792,28 +7443,22 @@ resources: } argumentDocs: authentication_plugin: '- (Optional) Authentication plugin. Allowed values: MYSQL_NATIVE_PASSWORD, CACHING_SHA2_PASSWORD, SHA256_PASSWORD (for version 5.7 MYSQL_NATIVE_PASSWORD, SHA256_PASSWORD)' - connection_limits: |- - - (Optional) User's connection limits. The structure is documented below. - If the attribute is not specified there will be no changes. + connection_limits: '- (Optional) User''s connection limits. The structure is documented below. If the attribute is not specified there will be no changes.' connection_limits.max_connections_per_hour: '- Max connections per hour.' connection_limits.max_questions_per_hour: '- Max questions per hour.' connection_limits.max_updates_per_hour: '- Max updates per hour.' connection_limits.max_user_connections: '- Max user connections.' global_permissions: |- - (Optional) List user's global permissions - Allowed permissions: REPLICATION_CLIENT, REPLICATION_SLAVE, PROCESS for clear list use empty list. - If the attribute is not specified there will be no changes. + Allowed permissions: REPLICATION_CLIENT, REPLICATION_SLAVE, PROCESS for clear list use empty list. If the attribute is not specified there will be no changes. name: '- (Required) The name of the user.' password: '- (Required) The password of the user.' permission: '- (Optional) Set of permissions granted to the user. The structure is documented below.' permission.database_name: '- (Required) The name of the database that the permission grants access to.' - permission.roles: |- - - (Optional) List user's roles in the database. - Allowed roles: ALL,ALTER,ALTER_ROUTINE,CREATE,CREATE_ROUTINE,CREATE_TEMPORARY_TABLES, - CREATE_VIEW,DELETE,DROP,EVENT,EXECUTE,INDEX,INSERT,LOCK_TABLES,SELECT,SHOW_VIEW,TRIGGER,UPDATE. + permission.roles: '- (Optional) List user''s roles in the database. Allowed roles: ALL,ALTER,ALTER_ROUTINE,CREATE,CREATE_ROUTINE,CREATE_TEMPORARY_TABLES, CREATE_VIEW,DELETE,DROP,EVENT,EXECUTE,INDEX,INSERT,LOCK_TABLES,SELECT,SHOW_VIEW,TRIGGER,UPDATE.' importStatements: [] yandex_mdb_opensearch_cluster: - subCategory: "" + subCategory: Managed Service for OpenSearch description: Manages a OpenSearch cluster within Yandex.Cloud. name: yandex_mdb_opensearch_cluster title: yandex_mdb_opensearch_cluster @@ -7863,6 +7508,8 @@ resources: "name": "test", "network_id": "${yandex_vpc_network.foo.id}" } + references: + network_id: yandex_vpc_network.foo.id dependencies: yandex_vpc_network.foo: '{}' yandex_vpc_subnet.foo: |- @@ -7876,6 +7523,14 @@ resources: - name: foo manifest: |- { + "auth_settings": { + "saml": { + "dashboards_url": "https://dashboards.example.com", + "idp_entity_id": "urn:dev.auth0.example.com", + "idp_metadata_file_content": "\u003cEntityDescriptor entityID=\"https://test_identity_provider.example.com\"\u003e\u003c/EntityDescriptor\u003e", + "sp_entity_id": "https://test.example.com" + } + }, "config": [ { "admin_password": "super-password", @@ -7969,6 +7624,7 @@ resources: references: config.dashboards.node_groups.zone_ids: local.zones config.opensearch.node_groups.zone_ids: local.zones + network_id: yandex_vpc_network.es-net.id dependencies: yandex_vpc_network.es-net: '{}' yandex_vpc_subnet.es-subnet-a: |- @@ -7996,43 +7652,47 @@ resources: "zone": "ru-central1-c" } argumentDocs: + auth_settings: '- (Optional) Authorization settings for Dashboards. The structure is documented below.' + auth_settings.saml: '- (Optional) SAML auth option. The structure is documented below.' + auth_settings.saml.dashboards_url: '- (Required) Dashboards URL.' + auth_settings.saml.enabled: '- (Required) Enables SAML auth.' + auth_settings.saml.idp_entity_id: '- (Required) ID of the SAML Identity Provider.' + auth_settings.saml.idp_metadata_file_content: '- (Required) Metadata file content of the SAML Identity Provider. You can either put file content manually or use file function' + auth_settings.saml.roles_key: '- (Optional) Roles key.' + auth_settings.saml.sp_entity_id: '- (Required) Service provider entity ID.' + auth_settings.saml.subject_key: '- (Optional) Subject key.' config: '- (Required) Configuration of the OpenSearch cluster. The structure is documented below.' config.admin_password: '- (Required) Password for admin user of OpenSearch.' config.dashboards: '- (Optional) Configuration for Dashboards node groups. The structure is documented below.' config.opensearch: '- (Required) Configuration for OpenSearch node groups. The structure is documented below.' config.version: '- (Optional) Version of OpenSearch.' created_at: '- Creation timestamp of the key.' - deletion_protection: '- (Optional) Inhibits deletion of the cluster. Can be either true or false.' + deletion_protection: '- (Optional) Inhibits deletion of the cluster. Can be either true or false.' description: '- (Optional) Description of the OpenSearch cluster.' - environment: '- (Optional) Deployment environment of the OpenSearch cluster. Can be either PRESTABLE or PRODUCTION. Default: PRODUCTION' + environment: '- (Optional) Deployment environment of the OpenSearch cluster. Can be either PRESTABLE or PRODUCTION. Default: PRODUCTION. It is not possible to change this value after cluster creation.' folder_id: '- (Optional) The ID of the folder that the resource belongs to. If it is not provided, the default provider folder is used.' - health: |- - - Aggregated health of the cluster. Can be either ALIVE, DEGRADED, DEAD or HEALTH_UNKNOWN. - For more information see health field of JSON representation in the official documentation. + health: '- Aggregated health of the cluster. Can be either ALIVE, DEGRADED, DEAD or HEALTH_UNKNOWN. For more information see health field of JSON representation in the official documentation.' hosts: '- A hosts of the OpenSearch cluster. The structure is documented below.' hosts.assign_public_ip: '- Sets whether the host should get a public IP address. Can be either true or false.' hosts.fqdn: '- The fully qualified domain name of the host.' + hosts.node_group: '- Name of the node group.' hosts.roles: '- The roles of the deployed host. Can contain DATA and/or MANAGER roles. Will be empty for DASHBOARDS type.' - hosts.subnet_id: |- - - The ID of the subnet, to which the host belongs. The subnet must - be a part of the network to which the cluster belongs. + hosts.subnet_id: '- The ID of the subnet, to which the host belongs. The subnet must be a part of the network to which the cluster belongs.' hosts.type: '- The type of the deployed host. Can be either OPENSEARCH or DASHBOARDS.' - hosts.zone: |- - - The availability zone where the OpenSearch host will be created. - For more information see the official documentation. + hosts.zone: '- The availability zone where the OpenSearch host will be created. For more information see the official documentation.' labels: '- (Optional) A set of key/value label pairs to assign to the OpenSearch cluster.' maintenance_window.day: '- (Optional) Day of week for maintenance window if window type is weekly. Possible values: MON, TUE, WED, THU, FRI, SAT, SUN.' maintenance_window.hour: '- (Optional) Hour of day in UTC time zone (1-24) for maintenance window if window type is weekly.' maintenance_window.type: '- (Required) Type of maintenance window. Can be either ANYTIME or WEEKLY. A day and hour of window need to be specified with weekly window.' name: '- (Required) Name of the OpenSearch cluster. Provided by the client when the cluster is created.' - network_id: '- (Required) ID of the network, to which the OpenSearch cluster belongs.' - node_groups.assign_public_ip: '- (Optional) Sets whether the hosts should get a public IP address on creation.' + network_id: '- (Required) ID of the network, to which the OpenSearch cluster belongs. It is not possible to change this value after cluster creation.' + node_groups.assign_public_ip: '- (Optional) Sets whether the hosts should get a public IP address.' node_groups.host_count: '- (Required) Number of hosts in this node group.' node_groups.name: '- (Required) Name of OpenSearch node group.' node_groups.resources: '- (Required) Resources allocated to hosts of this OpenSearch node group. The structure is documented below.' node_groups.roles: '- (Optional) A set of OpenSearch roles assigned to hosts. Available roles are: DATA, MANAGER. Default: [DATA, MANAGER]' - node_groups.subnet_ids: '- (Optional) A set of the subnets, to which the hosts belongs. The subnets must be a part of the network to which the cluster belongs. No other parameters should be changed simultaneously with this one, except zones_ids.' - node_groups.zones_ids: '- (Required) A set of availability zones where hosts of node group may be allocated. No other parameters should be changed simultaneously with this one, except subnet_ids.' + node_groups.subnet_ids: '- (Optional) A set of the subnets, to which the hosts belongs. The subnets must be a part of the network to which the cluster belongs.' + node_groups.zones_ids: '- (Required) A set of availability zones where hosts of node group may be allocated.' opensearch.node_groups: '- (Required) A set of named OpenSearch node group configurations. The structure is documented below.' opensearch.plugins: '- (Optional) A set of requested OpenSearch plugins.' resources.disk_size: '- (Required) Volume of the storage available to a host, in bytes.' @@ -8040,12 +7700,10 @@ resources: resources.resources_preset_id: '- (Required) The ID of the preset for computational resources available to a host (CPU, memory etc.). For more information, see the official documentation.' security_group_ids: '- (Optional) A set of ids of security groups assigned to hosts of the cluster.' service_account_id: '- (Optional) ID of the service account authorized for this cluster.' - status: |- - - Status of the cluster. Can be either CREATING, STARTING, RUNNING, UPDATING, STOPPING, STOPPED, ERROR or STATUS_UNKNOWN. - For more information see status field of JSON representation in the official documentation. + status: '- Status of the cluster. Can be either CREATING, STARTING, RUNNING, UPDATING, STOPPING, STOPPED, ERROR or STATUS_UNKNOWN. For more information see status field of JSON representation in the official documentation.' importStatements: [] yandex_mdb_postgresql_cluster: - subCategory: "" + subCategory: Managed Service for PostgreSQL description: Manages a PostgreSQL cluster within Yandex.Cloud. name: yandex_mdb_postgresql_cluster title: yandex_mdb_postgresql_cluster @@ -8301,7 +7959,7 @@ resources: config.resources: '- (Required) Resources allocated to hosts of the PostgreSQL cluster. The structure is documented below.' config.version: '- (Required) Version of the PostgreSQL cluster. (allowed versions are: 10, 10-1c, 11, 11-1c, 12, 12-1c, 13, 13-1c, 14, 14-1c, 15, 15-1c, 16)' created_at: '- Timestamp of cluster creation.' - deletion_protection: '- (Optional) Inhibits deletion of the cluster. Can be either true or false.' + deletion_protection: '- (Optional) Inhibits deletion of the cluster. Can be either true or false.' description: '- (Optional) Description of the PostgreSQL cluster.' disk_size_autoscaling.disk_size_limit: '- Limit of disk size after autoscaling (GiB).' disk_size_autoscaling.emergency_usage_threshold: '- Immediate autoscaling disk usage (percent).' @@ -8312,9 +7970,7 @@ resources: host: '- (Required) A host of the PostgreSQL cluster. The structure is documented below.' host.assign_public_ip: '- (Optional) Sets whether the host should get a public IP address on creation. It can be changed on the fly only when name is set.' host.fqdn: '- (Computed) The fully qualified domain name of the host.' - host.name: |- - - (Optional) Host state name. It should be set for all hosts or unset for all hosts. This field can be used by another host, to select which host will be its replication source. Please see replication_source_name parameter. - Also, this field is used to select which host will be selected as a master host. Please see host_master_name parameter. + host.name: '- (Optional) Host state name. It should be set for all hosts or unset for all hosts. This field can be used by another host, to select which host will be its replication source. Please see replication_source_name parameter. Also, this field is used to select which host will be selected as a master host. Please see host_master_name parameter.' host.priority: '- Host priority in HA group. It works only when name is set.' host.replication_source: '- (Computed) Host replication source (fqdn), when replication_source is empty then host is in HA group.' host.replication_source_name: '- (Optional) Host replication source name points to host''s name from which this host should replicate. When not set then host in HA group. It works only when name is set.' @@ -8337,9 +7993,7 @@ resources: pooler_config.pooling_mode: '- (Optional) Mode that the connection pooler is working in. See descriptions of all modes in the [documentation for Odyssey](https://github.com/yandex/odyssey/blob/master/documentation/configuration.md#pool-string.' resources.disk_size: '- (Required) Volume of the storage available to a PostgreSQL host, in gigabytes.' resources.disk_type_id: '- (Required) Type of the storage of PostgreSQL hosts.' - resources.resources_preset_id: |- - - (Required) The ID of the preset for computational resources available to a PostgreSQL host (CPU, memory etc.). - For more information, see the official documentation. + resources.resources_preset_id: '- (Required) The ID of the preset for computational resources available to a PostgreSQL host (CPU, memory etc.). For more information, see the official documentation.' restore: '- (Optional, ForceNew) The cluster will be created from the specified backup. The structure is documented below.' restore.backup_id: '- (Required, ForceNew) Backup ID. The cluster will be created from the specified backup. How to get a list of PostgreSQL backups.' restore.time: '- (Optional, ForceNew) Timestamp of the moment to which the PostgreSQL cluster should be restored. (Format: "2006-01-02T15:04:05" - UTC). When not set, current time is used.' @@ -8350,7 +8004,7 @@ resources: status: '- Status of the cluster.' importStatements: [] yandex_mdb_postgresql_database: - subCategory: "" + subCategory: Managed Service for PostgreSQL description: Manages a PostgreSQL database within Yandex.Cloud. name: yandex_mdb_postgresql_database title: yandex_mdb_postgresql_database @@ -8427,7 +8081,7 @@ resources: template_db: '- (Optional) Name of the template database.' importStatements: [] yandex_mdb_postgresql_user: - subCategory: "" + subCategory: Managed Service for PostgreSQL description: Manages a PostgreSQL user within Yandex.Cloud. name: yandex_mdb_postgresql_user title: yandex_mdb_postgresql_user @@ -8504,7 +8158,7 @@ resources: settings.wal_sender_timeout: '- The maximum time (in milliseconds) to wait for WAL replication (can be set only for PostgreSQL 12+). Terminate replication connections that are inactive for longer than this amount of time. Integer.' importStatements: [] yandex_mdb_redis_cluster: - subCategory: "" + subCategory: Managed Service for Redis description: Manages a Redis cluster within Yandex.Cloud. name: yandex_mdb_redis_cluster title: yandex_mdb_redis_cluster @@ -8539,6 +8193,9 @@ resources: } ] } + references: + host.subnet_id: yandex_vpc_subnet.foo.id + network_id: yandex_vpc_network.foo.id dependencies: yandex_vpc_network.foo: '{}' yandex_vpc_subnet.foo: |- @@ -8586,6 +8243,9 @@ resources: ], "sharded": true } + references: + host.subnet_id: yandex_vpc_subnet.baz.id + network_id: yandex_vpc_network.foo.id dependencies: yandex_vpc_network.foo: '{}' yandex_vpc_subnet.bar: |- @@ -8613,19 +8273,16 @@ resources: "zone": "ru-central1-a" } argumentDocs: + access: '- (Optional) Access policy to the Redis cluster. The structure is documented below.' + access.data_lens: '- (Optional) Allow access for DataLens. Can be either true or false.' + access.web_sql: '- (Optional) Allow access for Web SQL. Can be either true or false.' announce_hostnames: '- Announce fqdn instead of ip address.' config: '- (Required) Configuration of the Redis cluster. The structure is documented below.' - config.client_output_buffer_limit_normal: |- - - (Optional) Normal clients output buffer limits. - See redis config file. - config.client_output_buffer_limit_pubsub: |- - - (Optional) Pubsub clients output buffer limits. - See redis config file. + config.client_output_buffer_limit_normal: '- (Optional) Normal clients output buffer limits. See redis config file.' + config.client_output_buffer_limit_pubsub: '- (Optional) Pubsub clients output buffer limits. See redis config file.' config.databases: '- (Optional) Number of databases (changing requires redis-server restart).' config.maxmemory_percent: '- (Optional) Redis maxmemory usage in percent' - config.maxmemory_policy: |- - - (Optional) Redis key eviction policy for a dataset that reaches maximum memory. - Can be any of the listed in the official RedisDB documentation. + config.maxmemory_policy: '- (Optional) Redis key eviction policy for a dataset that reaches maximum memory. Can be any of the listed in the official RedisDB documentation.' config.notify_keyspace_events: '- (Optional) Select the events that Redis will notify among a set of classes.' config.password: '- (Required) Password for the Redis cluster.' config.slowlog_log_slower_than: '- (Optional) Log slow queries below this number in microseconds.' @@ -8633,26 +8290,21 @@ resources: config.timeout: '- (Optional) Close the connection after a client is idle for N seconds.' config.version: '- (Required) Version of Redis (6.2).' created_at: '- Creation timestamp of the key.' - deletion_protection: '- (Optional) Inhibits deletion of the cluster. Can be either true or false.' + deletion_protection: '- (Optional) Inhibits deletion of the cluster. Can be either true or false.' description: '- (Optional) Description of the Redis cluster.' + disk_size_autoscaling.disk_size_limit: '- Limit of disk size after autoscaling (GiB).' + disk_size_autoscaling.emergency_usage_threshold: '- Immediate autoscaling disk usage (percent).' + disk_size_autoscaling.planned_usage_threshold: '- Maintenance window autoscaling disk usage (percent).' environment: '- (Required) Deployment environment of the Redis cluster. Can be either PRESTABLE or PRODUCTION.' - folder_id: |- - - (Optional) The ID of the folder that the resource belongs to. If it - is not provided, the default provider folder is used. - health: |- - - Aggregated health of the cluster. Can be either ALIVE, DEGRADED, DEAD or HEALTH_UNKNOWN. - For more information see health field of JSON representation in the official documentation. + folder_id: '- (Optional) The ID of the folder that the resource belongs to. If it is not provided, the default provider folder is used.' + health: '- Aggregated health of the cluster. Can be either ALIVE, DEGRADED, DEAD or HEALTH_UNKNOWN. For more information see health field of JSON representation in the official documentation.' host: '- (Required) A host of the Redis cluster. The structure is documented below.' host.assign_public_ip: '- (Optional) Sets whether the host should get a public IP address or not.' host.fqdn: (Computed) - The fully qualified domain name of the host. host.replica_priority: '- (Optional) Replica priority of a current replica (usable for non-sharded only).' host.shard_name: (Optional) - The name of the shard to which the host belongs. - host.subnet_id: |- - (Optional) - The ID of the subnet, to which the host belongs. The subnet must - be a part of the network to which the cluster belongs. - host.zone: |- - - (Required) The availability zone where the Redis host will be created. - For more information see the official documentation. + host.subnet_id: (Optional) - The ID of the subnet, to which the host belongs. The subnet must be a part of the network to which the cluster belongs. + host.zone: '- (Required) The availability zone where the Redis host will be created. For more information see the official documentation.' labels: '- (Optional) A set of key/value label pairs to assign to the Redis cluster.' maintenance_window.day: '- (Optional) Day of week for maintenance window if window type is weekly. Possible values: MON, TUE, WED, THU, FRI, SAT, SUN.' maintenance_window.hour: '- (Optional) Hour of day in UTC time zone (1-24) for maintenance window if window type is weekly.' @@ -8663,20 +8315,14 @@ resources: resources: '- (Required) Resources allocated to hosts of the Redis cluster. The structure is documented below.' resources.disk_size: '- (Required) Volume of the storage available to a host, in gigabytes.' resources.disk_type_id: '- (Optional) Type of the storage of Redis hosts - environment default is used if missing.' - resources.resources_preset_id: |- - - (Required) The ID of the preset for computational resources available to a host (CPU, memory etc.). - For more information, see the official documentation. + resources.resources_preset_id: '- (Required) The ID of the preset for computational resources available to a host (CPU, memory etc.). For more information, see the official documentation.' security_group_ids: '- (Optional) A set of ids of security groups assigned to hosts of the cluster.' - sharded: |- - - (Optional) Redis Cluster mode enabled/disabled. Enables sharding when cluster non-sharded. - If cluster is sharded - disabling is not allowed. - status: |- - - Status of the cluster. Can be either CREATING, STARTING, RUNNING, UPDATING, STOPPING, STOPPED, ERROR or STATUS_UNKNOWN. - For more information see status field of JSON representation in the official documentation. + sharded: '- (Optional) Redis Cluster mode enabled/disabled. Enables sharding when cluster non-sharded. If cluster is sharded - disabling is not allowed.' + status: '- Status of the cluster. Can be either CREATING, STARTING, RUNNING, UPDATING, STOPPING, STOPPED, ERROR or STATUS_UNKNOWN. For more information see status field of JSON representation in the official documentation.' tls_enabled: '- (Optional) TLS support mode enabled/disabled.' importStatements: [] yandex_mdb_sqlserver_cluster: - subCategory: "" + subCategory: Managed Service for SQLServer description: Manages a Microsoft SQLServer cluster within Yandex.Cloud. name: yandex_mdb_sqlserver_cluster title: yandex_mdb_sqlserver_cluster @@ -8823,12 +8469,10 @@ resources: created_at: '- Creation timestamp of the cluster.' database: '- (Required) A database of the SQLServer cluster. The structure is documented below.' database.name: '- (Required) The name of the database.' - deletion_protection: '- (Optional) Inhibits deletion of the cluster. Can be either true or false.' + deletion_protection: '- (Optional) Inhibits deletion of the cluster. Can be either true or false.' description: '- (Optional) Description of the SQLServer cluster.' environment: '- (Required) Deployment environment of the SQLServer cluster. (PRODUCTION, PRESTABLE)' - folder_id: |- - - (Optional) The ID of the folder that the resource belongs to. If it - is not provided, the default provider folder is used. + folder_id: '- (Optional) The ID of the folder that the resource belongs to. If it is not provided, the default provider folder is used.' health: '- Aggregated health of the cluster.' host: '- (Required) A host of the SQLServer cluster. The structure is documented below.' host.assign_public_ip: '- (Optional) Sets whether the host should get a public IP address on creation. Changing this parameter for an existing host is not supported at the moment' @@ -8840,15 +8484,11 @@ resources: name: '- (Required) Name of the SQLServer cluster. Provided by the client when the cluster is created.' network_id: '- (Required) ID of the network, to which the SQLServer cluster uses.' permission.database_name: '- (Required) The name of the database that the permission grants access to.' - permission.roles: |- - - (Optional) List user's roles in the database. - Allowed roles: OWNER, SECURITYADMIN, ACCESSADMIN, BACKUPOPERATOR, DDLADMIN, DATAWRITER, DATAREADER, DENYDATAWRITER, DENYDATAREADER. + permission.roles: '- (Optional) List user''s roles in the database. Allowed roles: OWNER, SECURITYADMIN, ACCESSADMIN, BACKUPOPERATOR, DDLADMIN, DATAWRITER, DATAREADER, DENYDATAWRITER, DENYDATAREADER.' resources: '- (Required) Resources allocated to hosts of the SQLServer cluster. The structure is documented below.' resources.disk_size: '- (Required) Volume of the storage available to a SQLServer host, in gigabytes.' resources.disk_type_id: '- (Required) Type of the storage of SQLServer hosts.' - resources.resources_preset_id: |- - - (Required) The ID of the preset for computational resources available to a SQLServer host (CPU, memory etc.). - For more information, see the official documentation. + resources.resources_preset_id: '- (Required) The ID of the preset for computational resources available to a SQLServer host (CPU, memory etc.). For more information, see the official documentation.' security_group_ids: '- (Optional) A set of ids of security groups assigned to hosts of the cluster.' sqlcollation: '- (Optional) SQL Collation cluster will be created with. This attribute cannot be changed when cluster is created!' sqlserver_config: '- (Optional) SQLServer cluster config. Detail info in "SQLServer config" section (documented below).' @@ -8860,7 +8500,7 @@ resources: version: '- (Required) Version of the SQLServer cluster. (2016sp2std, 2016sp2ent)' importStatements: [] yandex_message_queue: - subCategory: "" + subCategory: Message Queue description: Allows management of a Yandex.Cloud Message Queue. name: yandex_message_queue title: yandex_message_queue @@ -8899,14 +8539,12 @@ resources: name_prefix: '- (Optional, forces new resource) Generates random name with the specified prefix. Conflicts with name.' receive_wait_time_seconds: '- (Optional) Wait time for the ReceiveMessage method (for long polling), in seconds. Valid values: from 0 to 20 seconds. Default: 0. For more information about long polling see documentation.' redrive_policy: '- (Optional) Message redrive policy in Dead Letter Queue. The source queue and DLQ must be the same type: for FIFO queues, the DLQ must also be a FIFO queue. For more information about redrive policy see documentation. Also you can use example in this page.' - region_id: |- - - (Optional, forces new resource) ID of the region where the message queue is located at. - The default is 'ru-central1'. + region_id: '- (Optional, forces new resource) ID of the region where the message queue is located at. The default is ''ru-central1''.' secret_key: '- (Optional) The secret key to use when applying changes. If omitted, ymq_secret_key specified in provider config is used. For more information see documentation.' visibility_timeout_seconds: '- (Optional) Visibility timeout for messages in a queue, specified in seconds. Valid values: from 0 to 43200 seconds (12 hours). Default: 30.' importStatements: [] yandex_monitoring_dashboard: - subCategory: "" + subCategory: Monitoring description: Allows management of a Yandex.Cloud Monitoring Dashboard. name: yandex_monitoring_dashboard title: yandex_monitoring_dashboard @@ -9227,7 +8865,7 @@ resources: yaxis_settings.right: Right yaxis config. importStatements: [] yandex_organizationmanager_group: - subCategory: "" + subCategory: Organization Manager description: Allows management of a single Group within an existing Yandex.Cloud Organization. name: yandex_organizationmanager_group title: yandex_organizationmanager_group @@ -9246,7 +8884,7 @@ resources: organization_id: '- (Required, Forces new resource) The organization to attach this Group to.' importStatements: [] yandex_organizationmanager_group_iam_member: - subCategory: "" + subCategory: Organization Manager description: Allows management of a single member for a single IAM binding on a Yandex.Cloud Organization Manager Group. name: yandex_organizationmanager_group_iam_member title: yandex_organizationmanager_group_iam_member @@ -9260,13 +8898,11 @@ resources: } argumentDocs: group_id: '- (Required) ID of the organization to attach a policy to.' - member: |- - - (Required) The identity that will be granted the privilege that is specified in the role field. - This field can have one of the following values: + member: '- (Required) The identity that will be granted the privilege that is specified in the role field. This field can have one of the following values:' role: '- (Required) The role that should be assigned.' importStatements: [] yandex_organizationmanager_group_membership: - subCategory: "" + subCategory: Organization Manager description: Allows management of members of Yandex.Cloud Organization Manager Group. name: yandex_organizationmanager_group_membership title: yandex_organizationmanager_group_membership @@ -9284,7 +8920,7 @@ resources: members: '- A set of members of the Group. Each member is represented by an id.' importStatements: [] yandex_organizationmanager_organization_iam_binding: - subCategory: "" + subCategory: Organization Manager description: Allows management of a single IAM binding for a Yandex Organization Manager organization. name: yandex_organizationmanager_organization_iam_binding title: yandex_organizationmanager_organization_iam_binding @@ -9299,16 +8935,12 @@ resources: "role": "editor" } argumentDocs: - members: |- - - (Required) An array of identities that will be granted the privilege in the role. - Each entry can have one of the following values: + members: '- (Required) An array of identities that will be granted the privilege in the role. Each entry can have one of the following values:' organization_id: '- (Required) ID of the organization to attach the policy to.' - role: |- - - (Required) The role that should be assigned. Only one - yandex_organizationmanager_organization_iam_binding can be used per role. + role: '- (Required) The role that should be assigned. Only one yandex_organizationmanager_organization_iam_binding can be used per role.' importStatements: [] yandex_organizationmanager_organization_iam_member: - subCategory: "" + subCategory: Organization Manager description: Allows management of a single member for a single IAM binding on a Yandex.Cloud Organization Manager organization. name: yandex_organizationmanager_organization_iam_member title: yandex_organizationmanager_organization_iam_member @@ -9321,14 +8953,12 @@ resources: "role": "editor" } argumentDocs: - member: |- - - (Required) The identity that will be granted the privilege that is specified in the role field. - This field can have one of the following values: + member: '- (Required) The identity that will be granted the privilege that is specified in the role field. This field can have one of the following values:' organization_id: '- (Required) ID of the organization to attach a policy to.' role: '- (Required) The role that should be assigned.' importStatements: [] yandex_organizationmanager_os_login_settings: - subCategory: "" + subCategory: Organization Manager description: Allows management of OsLogin Settings within an existing Yandex.Cloud Organization. name: yandex_organizationmanager_os_login_settings title: yandex_organizationmanager_os_login_settings @@ -9358,7 +8988,7 @@ resources: user_ssh_key_settings.enabled: '- Enables or disables usage of ssh keys assigned to a specific subject.' importStatements: [] yandex_organizationmanager_saml_federation: - subCategory: "" + subCategory: Organization Manager description: Allows management of a single SAML Federation within an existing Yandex.Cloud Organization. name: yandex_organizationmanager_saml_federation title: yandex_organizationmanager_saml_federation @@ -9389,7 +9019,7 @@ resources: sso_url: '- (Required) Single sign-on endpoint URL. Specify the link to the IdP login page here.' importStatements: [] yandex_organizationmanager_saml_federation_user_account: - subCategory: "" + subCategory: Organization Manager description: Allows management of a single SAML Federation user account within an existing Yandex.Cloud Organization. name: yandex_organizationmanager_saml_federation_user_account title: yandex_organizationmanager_saml_federation_user_account @@ -9405,7 +9035,7 @@ resources: name_id: '- (Required) Name ID of the SAML federated user.' importStatements: [] yandex_organizationmanager_user_ssh_key: - subCategory: "" + subCategory: Organization Manager description: Allows management of User Ssh Keys within an existing Yandex.Cloud Organization and Subject. name: yandex_organizationmanager_user_ssh_key title: yandex_organizationmanager_user_ssh_key @@ -9425,7 +9055,7 @@ resources: subject_id: '- (Required) Subject that the user ssh key belongs to.' importStatements: [] yandex_resourcemanager_cloud: - subCategory: "" + subCategory: Resource Manager description: Allows management of the Cloud resource. name: yandex_resourcemanager_cloud title: yandex_resourcemanager_cloud @@ -9442,7 +9072,7 @@ resources: organization_id: '- (Optional) Yandex.Cloud Organization that the cloud belongs to. If value is omitted, the default provider Organization ID is used.' importStatements: [] yandex_resourcemanager_cloud_iam_binding: - subCategory: "" + subCategory: Resource Manager description: Allows management of a single IAM binding for a Yandex Resource Manager cloud. name: yandex_resourcemanager_cloud_iam_binding title: yandex_resourcemanager_cloud_iam_binding @@ -9456,17 +9086,15 @@ resources: ], "role": "editor" } + references: + cloud_id: data.yandex_resourcemanager_cloud.project1.id argumentDocs: cloud_id: '- (Required) ID of the cloud to attach the policy to.' - members: |- - - (Required) An array of identities that will be granted the privilege in the role. - Each entry can have one of the following values: - role: |- - - (Required) The role that should be assigned. Only one - yandex_resourcemanager_cloud_iam_binding can be used per role. + members: '- (Required) An array of identities that will be granted the privilege in the role. Each entry can have one of the following values:' + role: '- (Required) The role that should be assigned. Only one yandex_resourcemanager_cloud_iam_binding can be used per role.' importStatements: [] yandex_resourcemanager_cloud_iam_member: - subCategory: "" + subCategory: Resource Manager description: Allows management of a single member for a single IAM binding on a Yandex Resource Manager cloud. name: yandex_resourcemanager_cloud_iam_member title: yandex_resourcemanager_cloud_iam_member @@ -9478,15 +9106,15 @@ resources: "member": "userAccount:user_id", "role": "editor" } + references: + cloud_id: data.yandex_resourcemanager_cloud.department1.id argumentDocs: cloud_id: '- (Required) ID of the cloud to attach a policy to.' - member: |- - - (Required) The identity that will be granted the privilege that is specified in the role field. - This field can have one of the following values: + member: '- (Required) The identity that will be granted the privilege that is specified in the role field. This field can have one of the following values:' role: '- (Required) The role that should be assigned.' importStatements: [] yandex_resourcemanager_folder: - subCategory: "" + subCategory: Resource Manager description: Allows management of the Cloud Folder. name: yandex_resourcemanager_folder title: yandex_resourcemanager_folder @@ -9503,7 +9131,7 @@ resources: name: '- (Optional) The name of the Folder.' importStatements: [] yandex_resourcemanager_folder_iam_binding: - subCategory: "" + subCategory: Resource Manager description: Allows management of a single IAM binding for a Yandex Resource Manager folder. name: yandex_resourcemanager_folder_iam_binding title: yandex_resourcemanager_folder_iam_binding @@ -9517,17 +9145,15 @@ resources: ], "role": "editor" } + references: + folder_id: data.yandex_resourcemanager_folder.project1.id argumentDocs: folder_id: '- (Required) ID of the folder to attach a policy to.' - members: |- - - (Required) An array of identities that will be granted the privilege that is specified in the role field. - Each entry can have one of the following values: - role: |- - - (Required) The role that should be assigned. Only one - yandex_resourcemanager_folder_iam_binding can be used per role. + members: '- (Required) An array of identities that will be granted the privilege that is specified in the role field. Each entry can have one of the following values:' + role: '- (Required) The role that should be assigned. Only one yandex_resourcemanager_folder_iam_binding can be used per role.' importStatements: [] yandex_resourcemanager_folder_iam_member: - subCategory: "" + subCategory: Resource Manager description: Allows management of a single member for a single IAM binding for a Yandex Resource Manager folder. name: yandex_resourcemanager_folder_iam_member title: yandex_resourcemanager_folder_iam_member @@ -9539,15 +9165,15 @@ resources: "member": "userAccount:user_id", "role": "editor" } + references: + folder_id: data.yandex_resourcemanager.department1.name argumentDocs: folder_id: '- (Required) ID of the folder to attach a policy to.' - member: |- - - (Required) The identity that will be granted the privilege that is specified in the role field. - This field can have one of the following values: + member: '- (Required) The identity that will be granted the privilege that is specified in the role field. This field can have one of the following values:' role: '- (Required) The role that should be assigned.' importStatements: [] yandex_resourcemanager_folder_iam_policy: - subCategory: "" + subCategory: Resource Manager description: Allows management of the IAM policy for a Yandex Resource Manager folder. name: yandex_resourcemanager_folder_iam_policy title: yandex_resourcemanager_folder_iam_policy @@ -9558,14 +9184,15 @@ resources: "folder_id": "${data.yandex_folder.project1.id}", "policy_data": "${data.yandex_iam_policy.admin.policy_data}" } + references: + folder_id: data.yandex_folder.project1.id + policy_data: data.yandex_iam_policy.admin.policy_data argumentDocs: folder_id: '- (Required) ID of the folder that the policy is attached to.' - policy_data: |- - - (Required) The yandex_iam_policy data source that represents - the IAM policy that will be applied to the folder. This policy overrides any existing policy applied to the folder. + policy_data: '- (Required) The yandex_iam_policy data source that represents the IAM policy that will be applied to the folder. This policy overrides any existing policy applied to the folder.' importStatements: [] yandex_serverless_container: - subCategory: "" + subCategory: Serverless Container description: Allows management of a Yandex Cloud Serverless Container. name: yandex_serverless_container title: yandex_serverless_container @@ -9589,8 +9216,23 @@ resources: } ], "memory": 256, + "mounts": [ + { + "ephemeral_disk": [ + { + "size_gb": 5 + } + ], + "mount_point_path": "/mount/point" + } + ], "name": "some_name", - "secrets": [ + "provision_policy": [ + { + "min_instances": 1 + } + ], + "secrets": [ { "environment_variable": "ENV_VARIABLE", "id": "${yandex_lockbox_secret.secret.id}", @@ -9600,6 +9242,9 @@ resources: ], "service_account_id": "are1service2account3id" } + references: + secrets.id: yandex_lockbox_secret.secret.id + secrets.version_id: yandex_lockbox_secret_version.secret_version.id - name: test-container-with-digest manifest: |- { @@ -9612,6 +9257,55 @@ resources: "memory": 128, "name": "some_name" } + - name: test-container-object-storage-mount + manifest: |- + { + "image": [ + { + "url": "cr.yandex/yc/test-image:v1" + } + ], + "memory": 128, + "mounts": [ + { + "mode": "ro", + "mount_point_path": "/mount/point", + "object_storage": [ + { + "bucket": "${yandex_storage_bucket.my-bucket.bucket}" + } + ] + } + ], + "name": "some_name", + "service_account_id": "${yandex_iam_service_account.sa.id}" + } + references: + mounts.object_storage.bucket: yandex_storage_bucket.my-bucket.bucket + service_account_id: yandex_iam_service_account.sa.id + dependencies: + yandex_iam_service_account.sa: |- + { + "folder_id": "${local.folder_id}", + "name": "test-sa" + } + yandex_iam_service_account_static_access_key.sa-static-key: |- + { + "description": "static access key for object storage", + "service_account_id": "${yandex_iam_service_account.sa.id}" + } + yandex_resourcemanager_folder_iam_member.sa-editor: |- + { + "folder_id": "${local.folder_id}", + "member": "serviceAccount:${yandex_iam_service_account.sa.id}", + "role": "storage.editor" + } + yandex_storage_bucket.my-bucket: |- + { + "access_key": "${yandex_iam_service_account_static_access_key.sa-static-key.access_key}", + "bucket": "bucket", + "secret_key": "${yandex_iam_service_account_static_access_key.sa-static-key.secret_key}" + } argumentDocs: concurrency: '- Concurrency of Yandex Cloud Serverless Container' connectivity: '- Network access. If specified the revision will be attached to specified network' @@ -9625,40 +9319,46 @@ resources: image: '- Revision deployment image for Yandex Cloud Serverless Container' image.0.args: '- List of arguments for Yandex Cloud Serverless Container' image.0.command: '- List of commands for Yandex Cloud Serverless Container' - image.0.digest: |- - - Digest of image that will be deployed as Yandex Cloud Serverless Container. - If presented, should be equal to digest that will be resolved at server side by URL. - Container will be updated on digest change even if image.0.url stays the same. - If field not specified then its value will be computed. - image.0.environment: '- A set of key/value environment variable pairs for Yandex Cloud Serverless Container' + image.0.digest: '- Digest of image that will be deployed as Yandex Cloud Serverless Container. If presented, should be equal to digest that will be resolved at server side by URL. Container will be updated on digest change even if image.0.url stays the same. If field not specified then its value will be computed.' + image.0.environment: '- A set of key/value environment variable pairs for Yandex Cloud Serverless Container' image.0.url: (Required) - URL of image that will be deployed as Yandex Cloud Serverless Container image.0.work_dir: '- Working directory for Yandex Cloud Serverless Container' labels: '- A set of key/value label pairs to assign to the Yandex Cloud Serverless Container' log_options: '- Options for logging from Yandex Cloud Serverless Container' memory: (Required) - Memory in megabytes (aligned to 128MB) for Yandex Cloud Serverless Container + mounts: '- Mounts for Yandex Cloud Serverless Container' + mounts.0.ephemeral_disk: '- One of the available mount types. Disk available during the function execution time' + mounts.0.ephemeral_disk.0.block_size_kb: '- Optional block size of the ephemeral disk in KB' + mounts.0.ephemeral_disk.0.size_gb: '- (Required) Size of the ephemeral disk in GB' + mounts.0.mode: '- Mount’s accessibility mode. Valid values are ro and rw' + mounts.0.mount_point_path: '- (Required) Path inside the container to access the directory in which the target is mounted' + mounts.0.object_storage: '- One of the available mount types. Object storage as a mount' + mounts.0.object_storage.0.bucket: '- (Required) Name of the mounting bucket' + mounts.0.object_storage.0.prefix: '- Prefix within the bucket. If you leave this field empty, the entire bucket will be mounted' name: (Required) - Yandex Cloud Serverless Container name + provision_policy: '- Provision policy. If specified the revision will have prepared instances' + provision_policy.0.min_instances: '- Minimum number of prepared instances that are always ready to serve requests' revision_id: '- Last revision ID of the Yandex Cloud Serverless Container' secrets: '- Secrets for Yandex Cloud Serverless Container' - secrets.bucket: '- (Required) Name of the mounting bucket.' secrets.disabled: '- Is logging from container disabled' - secrets.environment_variable: '- (Required) Container''s environment variable in which secret''s value will be stored.' + secrets.environment_variable: '- (Required) Container''s environment variable in which secret''s value will be stored' secrets.folder_id: '- Log entries are written to default log group for specified folder' - secrets.id: '- (Required) Secret''s id.' - secrets.key: '- (Required) Secret''s entries key which value will be stored in environment variable.' + secrets.id: '- (Required) Secret''s id' + secrets.key: '- (Required) Secret''s entries key which value will be stored in environment variable' secrets.log_group_id: '- Log entries are written to specified log group' secrets.log_options: 'block supports:' secrets.min_level: '- Minimum log entry level' - secrets.mount_point_path: '- (Required) Path inside the container to access the directory in which the bucket is mounted.' - secrets.prefix: '- Prefix within the bucket. If you leave this field empty, the entire bucket will be mounted.' - secrets.read_only: '- Mount the bucket in read-only mode.' - secrets.storage_mounts: 'block supports:' - secrets.version_id: '- (Required) Secret''s version id.' + secrets.version_id: '- (Required) Secret''s version id' service_account_id: '- Service account ID for Yandex Cloud Serverless Container' - storage_mounts: '- Storage mounts for Yandex Cloud Serverless Container' + storage_mounts: '- (DEPRECATED, use mounts.0.object_storage instead) Storage mounts for Yandex Cloud Serverless Container' + storage_mounts.0.bucket: '- (Required) Name of the mounting bucket' + storage_mounts.0.mount_point_path: '- (Required) Path inside the container to access the directory in which the bucket is mounted' + storage_mounts.0.prefix: '- Prefix within the bucket. If you leave this field empty, the entire bucket will be mounted' + storage_mounts.0.read_only: '- Mount the bucket in read-only mode' url: '- Invoke URL for the Yandex Cloud Serverless Container' importStatements: [] yandex_serverless_container_iam_binding: - subCategory: "" + subCategory: Serverless Container description: Allows management of a single IAM binding for a name: yandex_serverless_container_iam_binding title: yandex_serverless_container_iam_binding @@ -9674,17 +9374,73 @@ resources: } argumentDocs: container_id: '- (Required) The Yandex Serverless Container ID to apply a binding to.' - members: |- - - (Required) Identities that will be granted the privilege in role. - Each entry can have one of the following values: + members: '- (Required) Identities that will be granted the privilege in role. Each entry can have one of the following values:' role: '- (Required) The role that should be applied.' importStatements: [] + yandex_smartcaptcha_captcha: + subCategory: SmartCaptcha + name: yandex_smartcaptcha_captcha + title: yandex_smartcaptcha_captcha + argumentDocs: + allowed_sites: (List of String) + challenge_type: (String) + client_key: (String) + cloud_id: (String) + complexity: (String) + condition: '(Block List, Max: 1) (see below for nested schema)' + create: (String) A string that can be parsed as a duration consisting of numbers and unit suffixes, such as "30s" or "2h45m". Valid time units are "s" (seconds), "m" (minutes), "h" (hours). + created_at: (String) + delete: (String) A string that can be parsed as a duration consisting of numbers and unit suffixes, such as "30s" or "2h45m". Valid time units are "s" (seconds), "m" (minutes), "h" (hours). Setting a timeout for a Delete operation is only applicable if changes are saved into state before the destroy operation occurs. + deletion_protection: (Boolean) + description: (String) + exact_match: (String) + exact_not_match: (String) + folder_id: (String) + geo_ip_match: '(Block List, Max: 1) (see below for nested schema)' + geo_ip_not_match: '(Block List, Max: 1) (see below for nested schema)' + headers: (Block List) (see below for nested schema) + host: '(Block List, Max: 1) (see below for nested schema)' + hosts: (Block List) (see below for nested schema) + id: (String) The ID of this resource. + ip_ranges: (List of String) + ip_ranges_match: '(Block List, Max: 1) (see below for nested schema)' + ip_ranges_not_match: '(Block List, Max: 1) (see below for nested schema)' + key: (String) + locations: (List of String) + name: (String) + override_variant: (Block List) (see below for nested schema) + override_variant_uuid: (String) + path: '(Block List, Max: 1) (see below for nested schema)' + pire_regex_match: (String) + pire_regex_not_match: (String) + pre_check_type: (String) + prefix_match: (String) + prefix_not_match: (String) + priority: (Number) + queries: (Block List) (see below for nested schema) + read: (String) A string that can be parsed as a duration consisting of numbers and unit suffixes, such as "30s" or "2h45m". Valid time units are "s" (seconds), "m" (minutes), "h" (hours). Read operations occur during any refresh or planning operation when refresh is enabled. + security_rule: (Block List) (see below for nested schema) + source_ip: '(Block List, Max: 1) (see below for nested schema)' + style_json: (String) + suspend: (Boolean) + timeouts: (Block, Optional) (see below for nested schema) + turn_off_hostname_check: (Boolean) + update: (String) A string that can be parsed as a duration consisting of numbers and unit suffixes, such as "30s" or "2h45m". Valid time units are "s" (seconds), "m" (minutes), "h" (hours). + uri: '(Block List, Max: 1) (see below for nested schema)' + uuid: (String) + value: '(Block List, Min: 1, Max: 1) (see below for nested schema)' + importStatements: [] yandex_storage_bucket: - subCategory: "" + subCategory: Storage description: Allows management of a Yandex.Cloud Storage Bucket. name: yandex_storage_bucket title: yandex_storage_bucket examples: + - name: test + manifest: |- + { + "bucket": "tf-test-bucket" + } - name: test manifest: |- { @@ -9782,183 +9538,6 @@ resources: } ] } - - name: b - manifest: |- - { - "acl": "private", - "bucket": "my-tf-test-bucket", - "object_lock_configuration": [ - { - "object_lock_enabled": "Enabled", - "rule": [ - { - "default_retention": [ - { - "mode": "GOVERNANCE", - "years": 1 - } - ] - } - ] - } - ], - "versioning": [ - { - "enabled": true - } - ] - } - - name: log_bucket - manifest: |- - { - "bucket": "my-tf-log-bucket" - } - - name: b - manifest: |- - { - "acl": "private", - "bucket": "my-tf-test-bucket", - "logging": [ - { - "target_bucket": "${yandex_storage_bucket.log_bucket.id}", - "target_prefix": "log/" - } - ] - } - references: - logging.target_bucket: yandex_storage_bucket.log_bucket.id - - name: bucket - manifest: |- - { - "acl": "private", - "bucket": "my-bucket", - "lifecycle_rule": [ - { - "enabled": true, - "expiration": [ - { - "days": 90 - } - ], - "id": "log", - "prefix": "log/", - "transition": [ - { - "days": 30, - "storage_class": "COLD" - } - ] - }, - { - "enabled": true, - "expiration": [ - { - "date": "2020-12-21" - } - ], - "id": "tmp", - "prefix": "tmp/" - }, - { - "enabled": true, - "expiration": [ - { - "date": "2020-12-21" - } - ], - "filter": [ - { - "tag": [ - { - "key": "key1", - "value": "value1" - } - ] - } - ], - "id": "test_tag" - }, - { - "enabled": true, - "expiration": [ - { - "date": "2020-12-21" - } - ], - "filter": [ - { - "and": [ - { - "prefix": "path2/", - "tags": { - "key1": "value1", - "key2": "value2" - } - } - ] - } - ], - "id": "test_filter" - } - ] - } - - name: versioning_bucket - manifest: |- - { - "acl": "private", - "bucket": "my-versioning-bucket", - "lifecycle_rule": [ - { - "enabled": true, - "noncurrent_version_expiration": [ - { - "days": 90 - } - ], - "noncurrent_version_transition": [ - { - "days": 30, - "storage_class": "COLD" - } - ], - "prefix": "config/" - } - ], - "versioning": [ - { - "enabled": true - } - ] - } - - name: test - manifest: |- - { - "bucket": "mybucket", - "server_side_encryption_configuration": [ - { - "rule": [ - { - "apply_server_side_encryption_by_default": [ - { - "kms_master_key_id": "${yandex_kms_symmetric_key.key-a.id}", - "sse_algorithm": "aws:kms" - } - ] - } - ] - } - ] - } - references: - server_side_encryption_configuration.rule.apply_server_side_encryption_by_default.kms_master_key_id: yandex_kms_symmetric_key.key-a.id - dependencies: - yandex_kms_symmetric_key.key-a: |- - { - "default_algorithm": "AES_128", - "description": "description for key", - "name": "example-symetric-key", - "rotation_period": "8760h" - } - name: b manifest: |- { @@ -10180,40 +9759,28 @@ resources: } argumentDocs: abort_incomplete_multipart_upload_days: '- (Optional) Specifies the number of days after initiating a multipart upload when the multipart upload must be completed.' - access_key: |- - - (Optional) The access key to use when applying changes. If omitted, storage_access_key specified in - provider config (explicitly or within shared_credentials_file) is used. - acl: |- - - (Optional) The predefined ACL to apply. - Defaults to private. Conflicts with grant. + access_key: '- (Optional) The access key to use when applying changes. This value can also be provided as storage_access_key specified in provider config (explicitly or within shared_credentials_file) is used.' + acl: '- (Optional) The predefined ACL to apply. Defaults to private. Conflicts with grant.' allowed_headers: '- (Optional) Specifies which headers are allowed.' allowed_methods: '- (Required) Specifies which methods are allowed. Can be GET, PUT, POST, DELETE or HEAD.' allowed_origins: '- (Required) Specifies which origins are allowed.' - anonymous_access_flags: |- - - (Optional) Provides various access to objects. - See bucket availability - for more infomation. + anonymous_access_flags: '- (Optional) Provides various access to objects. See bucket availability for more infomation.' apply_server_side_encryption_by_default: '- (Required) A single object for setting server-side encryption by default. (documented below)' bucket: '- (Optional, Forces new resource) The name of the bucket. If omitted, Terraform will assign a random, unique name.' bucket_domain_name: '- The bucket domain name.' - bucket_prefix: |- - - (Optional, Forces new resource) Creates a unique bucket name beginning with the specified prefix. - Conflicts with bucket. + bucket_prefix: '- (Optional, Forces new resource) Creates a unique bucket name beginning with the specified prefix. Conflicts with bucket.' certificate_id: — Id of the certificate in Certificate Manager, that will be used for bucket. cors_rule: '- (Optional) A rule of Cross-Origin Resource Sharing (documented below).' date: '- (Optional) Specifies the date after which you want the corresponding action to take effect.' days: '- (Optional) Specifies a retention period in days after uploading an object version. It must be a positive integer. You can''t set it simultaneously with years.' - default_storage_class: |- - - (Optional) Storage class which is used for storing objects by default. - Available values are: "STANDARD", "COLD", "ICE". Default is "STANDARD". - See storage class for more inforamtion. + default_storage_class: '- (Optional) Storage class which is used for storing objects by default. Available values are: "STANDARD", "COLD", "ICE". Default is "STANDARD". See storage class for more inforamtion.' enabled: '- (Optional) Enable versioning. Once you version-enable a bucket, it can never return to an unversioned state. You can, however, suspend versioning on that bucket.' error_document: '- (Optional) An absolute path to the document to return in case of a 4XX error.' expiration: '- (Optional) Specifies a period in the object''s expire (documented below).' expired_object_delete_marker: '- (Optional) On a versioned bucket (versioning-enabled or versioning-suspended bucket), you can add this element in the lifecycle configuration to direct Object Storage to delete expired object delete markers.' expose_headers: '- (Optional) Specifies expose header in the response.' filter: '- (Optional) Filter block identifies one or more objects to which the rule applies. A Filter must have exactly one of Prefix, Tag, or And specified. The filter supports the following options:' - filter.and: 'operator applied to one or more filter parameters. It should be used when both prefix and tags are used. It supports the following parameters:' + filter.and: 'operator applied to one or more filter parameters. It should be used when two or more of the above parameters are used. It supports the following parameters:' folder_id: '- (Optional) Allow to create bucket in different folder.' force_destroy: '- (Optional, Default: false) A boolean that indicates all objects should be deleted from the bucket so that the bucket can be destroyed without error. These objects are not recoverable.' grant: '- (Optional) An ACL policy grant. Conflicts with acl.' @@ -10237,9 +9804,7 @@ resources: redirect_all_requests_to: '- (Optional) A hostname to redirect all website requests for this bucket to. Hostname can optionally be prefixed with a protocol (http:// or https://) to use when redirecting requests. The default is the protocol that is used in the original request.' routing_rules: '- (Optional) A json array containing routing rules describing redirect behavior and when redirects are applied.' rule: '- (Optional) Specifies a default locking configuration for added objects. Require object_lock_enabled to be enabled.' - secret_key: |- - - (Optional) The secret key to use when applying changes. If omitted, storage_secret_key specified in - provider config (explicitly or within shared_credentials_file) is used. + secret_key: '- (Optional) The secret key to use when applying changes. This value can also be provided as storage_secret_key specified in provider config (explicitly or within shared_credentials_file) is used.' server_side_encryption_configuration: '- (Optional) A configuration of server-side encryption for the bucket (documented below)' sse_algorithm: '- (Required) The server-side encryption algorithm to use. Single valid value is aws:kms' storage_class: '- (Required) Specifies the storage class to which you want the object to transition. Supported values: [STANDARD_IA, COLD, ICE].' @@ -10255,7 +9820,7 @@ resources: years: '- (Optional) Specifies a retention period in years after uploading an object version. It must be a positive integer. You can''t set it simultaneously with days.' importStatements: [] yandex_storage_object: - subCategory: "" + subCategory: Storage description: Allows management of a Yandex.Cloud Storage Object. name: yandex_storage_object title: yandex_storage_object @@ -10271,7 +9836,7 @@ resources: } } argumentDocs: - access_key: '- (Optional) The access key to use when applying changes. If omitted, storage_access_key specified in config is used.' + access_key: '- (Optional) The access key to use when applying changes. This value can also be provided as storage_access_key specified in provider config (explicitly or within shared_credentials_file) is used.' acl: '- (Optional) The predefined ACL to apply. Defaults to private.' bucket: '- (Required) The name of the containing bucket.' content: '- (Optional, conflicts with source and content_base64) Literal string value to use as the object content, which will be uploaded as UTF-8-encoded text.' @@ -10282,13 +9847,395 @@ resources: object_lock_legal_hold_status: '- (Optional) Specifies a legal hold status of an object. Requires object_lock_configuration to be enabled on a bucket.' object_lock_mode: '- (Optional) Specifies a type of object lock. One of ["GOVERNANCE", "COMPLIANCE"]. It must be set simultaneously with object_lock_retain_until_date. Requires object_lock_configuration to be enabled on a bucket.' object_lock_retain_until_date: '- (Optional) Specifies date and time in RTC3339 format until which an object is to be locked. It must be set simultaneously with object_lock_mode. Requires object_lock_configuration to be enabled on a bucket.' - secret_key: '- (Optional) The secret key to use when applying changes. If omitted, storage_secret_key specified in config is used.' + secret_key: '- (Optional) The secret key to use when applying changes. This value can also be provided as storage_secret_key specified in provider config (explicitly or within shared_credentials_file) is used.' source: '- (Optional, conflicts with content and content_base64) The path to a file that will be read and uploaded as raw bytes for the object content.' source_hash: '- (Optional) Used to trigger object update when the source content changes. So the only meaningful value is filemd5("path/to/source") (The value is only stored in state and not saved by Yandex Storage).' tags: '- (Optional) Specifies an object tags.' importStatements: [] + yandex_sws_advanced_rate_limiter_profile: + subCategory: SWS (Smart Web Security) + description: Advanced Rate Limiter. + name: yandex_sws_advanced_rate_limiter_profile + title: yandex_sws_advanced_rate_limiter_profile + examples: + - name: demo-profile + manifest: |- + { + "advanced_rate_limiter_rule": [ + { + "description": "First test rule", + "dry_run": true, + "name": "rule1", + "priority": 10, + "static_quota": [ + { + "action": "DENY", + "condition": [ + { + "request_uri": [ + { + "path": [ + { + "exact_match": "/api" + } + ] + } + ] + } + ], + "limit": 10000000, + "period": 1 + } + ] + } + ], + "name": "demo-profile" + } + argumentDocs: + advanced_rate_limiter_rule: '- (Required) List of rules. The structure is documented below.' + advanced_rate_limiter_rule.description: '- (Optional) Optional description of the rule. 0-512 characters long.' + advanced_rate_limiter_rule.dry_run: '- (Optional) This allows you to evaluate backend capabilities and find the optimum limit values. Requests will not be blocked in this mode.' + advanced_rate_limiter_rule.dynamic_quota: '- (Optional) Dynamic quota. Grouping requests by a certain attribute and limiting the number of groups. The structure is documented below.' + advanced_rate_limiter_rule.name: '- (Required) Name of the rule. The name is unique within the ARL profile. 1-50 characters long.' + advanced_rate_limiter_rule.priority: '- (Required) Determines the priority in case there are several matched rules. Enter an integer within the range of 1 and 999999. The rule priority must be unique within the entire ARL profile. A lower numeric value means a higher priority.' + advanced_rate_limiter_rule.static_quota: '- (Optional) Static quota. Counting each request individually. The structure is documented below.' + characteristics.case_insensitive: '- (Optional) Determines case-sensitive or case-insensitive keys matching.' + characteristics.key_characteristic: '- (Optional) Characteristic based on key match in the Query params, HTTP header, and HTTP cookie attributes. See Rules for more details. The structure is documented below.' + characteristics.simple_characteristic: '- (Optional) Characteristic automatically based on the Request path, HTTP method, IP address, Region, and Host attributes. See Rules for more details. The structure is documented below.' + created_at: '- The ARL Profile creation timestamp.' + description: '- (Optional) Optional description of the ARL profile.' + dynamic_quota.action: '- (Required) Action in case of exceeding this quota. Possible values: DENY.' + dynamic_quota.characteristics: '- (Required) List of characteristics. The structure is documented below.' + dynamic_quota.condition: '- (Optional) The condition for matching the rule. You can find all possibilities of condition in gRPC specs.' + dynamic_quota.limit: '- (Required) Desired maximum number of requests per period.' + dynamic_quota.period: '- (Required) Period of time in seconds.' + folder_id: '- (Optional) ID of the folder to create a profile in. If omitted, the provider folder is used.' + id: '- ID of the ARL profile.' + key_characteristic.type: '- (Required) Type of key characteristic. Possible values: COOKIE_KEY, HEADER_KEY, QUERY_KEY.' + key_characteristic.value: '- (Required) String value of the key.' + labels: '- (Optional) Labels as key:value pairs. Maximum of 64 per resource.' + name: '- (Required) Name of the ARL profile. The name is unique within the folder. 1-50 characters long.' + simple_characteristic.type: '- (Required) Type of simple characteristic. Possible values: REQUEST_PATH, HTTP_METHOD, IP, GEO, HOST.' + static_quota.action: '- (Required) Action in case of exceeding this quota. Possible values: DENY.' + static_quota.condition: '- (Optional) The condition for matching the rule. You can find all possibilities of condition in gRPC specs.' + static_quota.limit: '- (Required) Desired maximum number of requests per period.' + static_quota.period: '- (Required) Period of time in seconds.' + importStatements: [] + yandex_sws_security_profile: + subCategory: SWS (Smart Web Security) + description: With security profiles you can protect your infrastructure from DDoS attacks at the application level (L7). + name: yandex_sws_security_profile + title: yandex_sws_security_profile + examples: + - name: demo-profile-simple + manifest: |- + { + "default_action": "ALLOW", + "name": "demo-profile-simple", + "security_rule": [ + { + "name": "smart-protection", + "priority": 99999, + "smart_protection": [ + { + "mode": "API" + } + ] + } + ] + } + - name: demo-profile-advanced + manifest: |- + { + "advanced_rate_limiter_profile_id": "\u003carl_id\u003e", + "captcha_id": "\u003ccaptcha_id\u003e", + "default_action": "ALLOW", + "name": "demo-profile-advanced", + "security_rule": [ + { + "name": "smart-protection", + "priority": 99999, + "smart_protection": [ + { + "mode": "API" + } + ] + }, + { + "name": "waf", + "priority": 88888, + "waf": [ + { + "mode": "API", + "waf_profile_id": "\u003cwaf_id\u003e" + } + ] + }, + { + "name": "rule-condition-1", + "priority": 1, + "rule_condition": [ + { + "action": "ALLOW", + "condition": [ + { + "authority": [ + { + "authorities": [ + { + "exact_match": "example.com" + }, + { + "exact_match": "example.net" + } + ] + } + ] + } + ] + } + ] + }, + { + "name": "rule-condition-2", + "priority": 2, + "rule_condition": [ + { + "action": "DENY", + "condition": [ + { + "http_method": [ + { + "http_methods": [ + { + "exact_match": "DELETE" + }, + { + "exact_match": "PUT" + } + ] + } + ] + } + ] + } + ] + }, + { + "name": "rule-condition-3", + "priority": 3, + "rule_condition": [ + { + "action": "DENY", + "condition": [ + { + "headers": [ + { + "name": "User-Agent", + "value": [ + { + "pire_regex_match": ".*curl.*" + } + ] + }, + { + "name": "Referer", + "value": [ + { + "pire_regex_not_match": ".*bot.*" + } + ] + } + ], + "request_uri": [ + { + "path": [ + { + "prefix_match": "/form" + } + ], + "queries": [ + { + "key": "firstname", + "value": [ + { + "pire_regex_match": ".*ivan.*" + } + ] + }, + { + "key": "lastname", + "value": [ + { + "pire_regex_match": ".*petr.*" + } + ] + } + ] + } + ], + "source_ip": [ + { + "geo_ip_match": [ + { + "locations": [ + "ru", + "es" + ] + } + ], + "geo_ip_not_match": [ + { + "locations": [ + "us", + "fm", + "gb" + ] + } + ], + "ip_ranges_match": [ + { + "ip_ranges": [ + "1.2.33.44", + "2.3.4.56" + ] + } + ], + "ip_ranges_not_match": [ + { + "ip_ranges": [ + "8.8.0.0/16", + "10::1234:1abc:1/64" + ] + } + ] + } + ] + } + ] + } + ] + } + ] + } + argumentDocs: + advanced_rate_limiter_profile_id: '- (Optional) Advanced rate limiter profile ID to use with this security profile. Set empty to use default.' + captcha_id: '- (Optional) Captcha ID to use with this security profile. Set empty to use default.' + created_at: '- The Security Profile creation timestamp.' + default_action: '- (Required) Action to perform if none of rules matched. Possible values: ALLOW or DENY.' + description: '- (Optional) Optional description of the security profile.' + folder_id: '- (Optional) ID of the folder to create a profile in. If omitted, the provider folder is used.' + id: '- ID of the security profile.' + labels: '- (Optional) Labels as key:value pairs. Maximum of 64 per resource.' + name: '- (Required) Name of the security profile. The name is unique within the folder. 1-50 characters long.' + rule_condition.action: '- (Required) Action to perform if this rule matched. Possible values: ALLOW or DENY.' + rule_condition.condition: '- (Optional) The condition for matching the rule. You can find all possibilities of condition in gRPC specs.' + security_rule: '- (Optional) List of security rules. The structure is documented below.' + security_rule.description: '- (Optional) Optional description of the rule. 0-512 characters long.' + security_rule.dry_run: '- (Optional) This mode allows you to test your security profile or a single rule.' + security_rule.name: '- (Required) Name of the rule. The name is unique within the security profile. 1-50 characters long.' + security_rule.priority: '- (Required) Determines the priority for checking the incoming traffic.' + security_rule.rule_condition: '- (Optional) Rule actions, see Rule actions. The structure is documented below.' + security_rule.smart_protection: '- (Optional) Smart Protection rule, see Smart Protection rules. The structure is documented below.' + security_rule.waf: '- (Optional) Web Application Firewall (WAF) rule, see WAF rules. The structure is documented below.' + smart_protection.condition: '- (Optional) The condition for matching the rule. You can find all possibilities of condition in gRPC specs.' + smart_protection.mode: '- (Required) Mode of protection. Possible values: FULL (full protection means that the traffic will be checked based on ML models and behavioral analysis, with suspicious requests being sent to SmartCaptcha) or API (API protection means checking the traffic based on ML models and behavioral analysis without sending suspicious requests to SmartCaptcha. The suspicious requests will be blocked).' + waf.condition: '- (Optional) The condition for matching the rule. You can find all possibilities of condition in gRPC specs.' + waf.mode: '- (Required) Mode of protection. Possible values: FULL (full protection means that the traffic will be checked based on ML models and behavioral analysis, with suspicious requests being sent to SmartCaptcha) or API (API protection means checking the traffic based on ML models and behavioral analysis without sending suspicious requests to SmartCaptcha. The suspicious requests will be blocked).' + waf.waf_profile_id: '- (Required) ID of WAF profile to use in this rule.' + importStatements: [] + yandex_sws_waf_profile: + subCategory: SWS (Smart Web Security) + description: Web Application Firewall. + name: yandex_sws_waf_profile + title: yandex_sws_waf_profile + examples: + - name: empty + manifest: |- + { + "core_rule_set": [ + { + "inbound_anomaly_score": 2, + "paranoia_level": 1, + "rule_set": [ + { + "name": "OWASP Core Ruleset", + "version": "4.0.0" + } + ] + } + ], + "name": "waf-profile-dummy" + } + - name: default + manifest: |- + { + "analyze_request_body": [ + { + "is_enabled": true, + "size_limit": 8, + "size_limit_action": "IGNORE" + } + ], + "core_rule_set": [ + { + "inbound_anomaly_score": 2, + "paranoia_level": "${local.waf_paranoia_level}", + "rule_set": [ + { + "name": "OWASP Core Ruleset", + "version": "4.0.0" + } + ] + } + ], + "dynamic": { + "rule": [ + { + "content": [ + { + "is_blocking": false, + "is_enabled": true, + "rule_id": "${rule.value.id}" + } + ], + "for_each": "${[\n for rule in data.yandex_sws_waf_rule_set_descriptor.owasp4.rules : rule\n if rule.paranoia_level \u003e= local.waf_paranoia_level\n ]}" + } + ] + }, + "name": "waf-profile-default" + } + references: + core_rule_set.paranoia_level: local.waf_paranoia_level + dynamic.content.rule_id: rule.value.id + argumentDocs: + analyze_request_body: '- (Optional) Parameters for request body analyzer. The structure is documented below.' + analyze_request_body.is_enabled: '- (Optional) Possible to turn analyzer on and turn if off.' + analyze_request_body.size_limit: '- (Required) Maximum size of body to pass to analyzer. In kilobytes.' + analyze_request_body.size_limit_action: '- (Required) Action to perform if maximum size of body exceeded. Possible values: IGNORE and DENY.' + core_rule_set: '- (Required) Core rule set settings. See Basic rule set for details. The structure is documented below.' + core_rule_set.inbound_anomaly_score: '- (Required) Anomaly score. Enter an integer within the range of 2 and 10000. The higher this value, the more likely it is that the request that satisfies the rule is an attack. See Rules for more details.' + core_rule_set.paranoia_level: '- (Required) Paranoia level. Enter an integer within the range of 1 and 4. Paranoia level classifies rules according to their aggression. The higher the paranoia level, the better your protection, but also the higher the probability of WAF false positives. See Rules for more details. NOTE: this option has no effect on enabling or disabling rules, it is used only as recommendation for user to enable all rules with paranoia_level <= this value.' + created_at: '- The WAF Profile creation timestamp.' + description: '- (Optional) Optional description of the WAF profile.' + exclude_rules.exclude_all: '- (Optional) Set this option true to exclude all rules.' + exclude_rules.rule_ids: '- (Optional) List of rules to exclude.' + exclusion_rule: '- (Optional) List of exclusion rules. See Rules. The structure is documented below.' + exclusion_rule.description: '- (Optional) Optional description of the rule. 0-512 characters long.' + exclusion_rule.exclude_rules: '- (Optional) Exclude rules. The structure is documented below.' + exclusion_rule.log_excluded: '- (Optional) Records the fact that an exception rule is triggered.' + exclusion_rule.name: '- (Required) Name of exclusion rule.' + folder_id: '- (Optional) ID of the folder to create a profile in. If omitted, the provider folder is used.' + id: '- ID of the WAF profile.' + labels: '- (Optional) Labels as key:value pairs. Maximum of 64 per resource.' + name: '- (Required) Name of the WAF profile. The name is unique within the folder. 1-50 characters long.' + rule: '- (Optional) Settings for each rule in rule set. The structure is documented below.' + rule.is_blocking: '- (Optional) Determines is it rule blocking or not.' + rule.is_enabled: '- (Optional) Determines is it rule enabled or not.' + rule.rule_id: '- (Required) Rule ID.' + importStatements: [] yandex_vpc_address: - subCategory: "" + subCategory: VPC (Virtual Private Cloud) description: Manages a VPC address within Yandex.Cloud. name: yandex_vpc_address title: yandex_vpc_address @@ -10318,9 +10265,7 @@ resources: address: '- Allocated IP address.' created_at: '- Creation timestamp of the key.' deletion_protection: '- (Optional) Flag that protects the address from accidental deletion.' - description: |- - - (Optional) An optional description of this resource. Provide this property when - you create the resource. + description: '- (Optional) An optional description of this resource. Provide this property when you create the resource.' external_ipv4_address: '- (Optional) spec of IP v4 address' external_ipv4_address.ddos_protection_provider: '- (Optional) Enable DDOS protection. Possible values are: "qrator"' external_ipv4_address.dns_record: '- (Optional) DNS record specification of address' @@ -10330,16 +10275,14 @@ resources: external_ipv4_address.dns_record.ttl: '- (Optional) TTL of DNS record' external_ipv4_address.outgoing_smtp_capability: '- (Optional) Wanted outgoing smtp capability.' external_ipv4_address.zone_id: '- Zone for allocating address.' - folder_id: |- - - (Optional) ID of the folder that the resource belongs to. If it - is not provided, the default provider folder is used. + folder_id: '- (Optional) ID of the folder that the resource belongs to. If it is not provided, the default provider folder is used.' labels: '- (Optional) Labels to apply to this resource. A list of key/value pairs.' name: '- (Optional) Name of the address. Provided by the client when the address is created.' reserved: '- false means that address is ephemeral.' used: '- true if address is used.' importStatements: [] yandex_vpc_default_security_group: - subCategory: "" + subCategory: VPC (Virtual Private Cloud) description: Yandex VPC Default Security Group. name: yandex_vpc_default_security_group title: yandex_vpc_default_security_group @@ -10385,6 +10328,8 @@ resources: }, "network_id": "${yandex_vpc_network.lab-net.id}" } + references: + network_id: yandex_vpc_network.lab-net.id dependencies: yandex_vpc_network.lab-net: |- { @@ -10413,7 +10358,7 @@ resources: status: '- Status of this security group.' importStatements: [] yandex_vpc_gateway: - subCategory: "" + subCategory: VPC (Virtual Private Cloud) description: Manages a gateway within Yandex.Cloud. name: yandex_vpc_gateway title: yandex_vpc_gateway @@ -10428,18 +10373,14 @@ resources: } argumentDocs: created_at: '- Creation timestamp of the key.' - description: |- - - (Optional) An optional description of this resource. Provide this property when - you create the resource. - folder_id: |- - - (Optional) ID of the folder that the resource belongs to. If it - is not provided, the default provider folder is used. + description: '- (Optional) An optional description of this resource. Provide this property when you create the resource.' + folder_id: '- (Optional) ID of the folder that the resource belongs to. If it is not provided, the default provider folder is used.' labels: '- (Optional) Labels to apply to this VPC Gateway. A list of key/value pairs.' name: '- (Optional) Name of the VPC Gateway. Provided by the client when the VPC Gateway is created.' shared_egress_gateway: '- Shared egress gateway configuration. Currently empty.' importStatements: [] yandex_vpc_network: - subCategory: "" + subCategory: VPC (Virtual Private Cloud) description: Manages a network within Yandex.Cloud. name: yandex_vpc_network title: yandex_vpc_network @@ -10452,17 +10393,73 @@ resources: argumentDocs: created_at: '- Creation timestamp of the key.' default_security_group_id: '- ID of default Security Group of this network.' - description: |- - - (Optional) An optional description of this resource. Provide this property when - you create the resource. - folder_id: |- - - (Optional) ID of the folder that the resource belongs to. If it - is not provided, the default provider folder is used. + description: '- (Optional) An optional description of this resource. Provide this property when you create the resource.' + folder_id: '- (Optional) ID of the folder that the resource belongs to. If it is not provided, the default provider folder is used.' labels: '- (Optional) Labels to apply to this network. A list of key/value pairs.' name: '- (Optional) Name of the network. Provided by the client when the network is created.' importStatements: [] + yandex_vpc_private_endpoint: + subCategory: VPC (Virtual Private Cloud) + description: Manages a VPC Private Endpoint within Yandex.Cloud. + name: yandex_vpc_private_endpoint + title: yandex_vpc_private_endpoint + examples: + - name: default + manifest: |- + { + "description": "description for private endpoint", + "dns_options": [ + { + "private_dns_records_enabled": true + } + ], + "endpoint_address": [ + { + "subnet_id": "${yandex_vpc_subnet.lab-subnet-a.id}" + } + ], + "labels": { + "my-label": "my-label-value" + }, + "name": "object-storage-private-endpoint", + "network_id": "${yandex_vpc_network.lab-net.id}", + "object_storage": [ + {} + ] + } + references: + endpoint_address.subnet_id: yandex_vpc_subnet.lab-subnet-a.id + network_id: yandex_vpc_network.lab-net.id + dependencies: + yandex_vpc_network.lab-net: |- + { + "name": "lab-network" + } + yandex_vpc_subnet.lab-subnet-a: |- + { + "network_id": "${yandex_vpc_network.lab-net.id}", + "v4_cidr_blocks": [ + "10.2.0.0/16" + ], + "zone": "ru-central1-a" + } + argumentDocs: + created_at: '- Creation timestamp of the key.' + description: '- (Optional) An optional description of this resource. Provide this property when you create the resource.' + dns_options: '- (Optional) Private endpoint DNS options block.' + dns_options.private_dns_records_enabled: '- If enabled - additional service dns will be created.' + endpoint_address: '- (Optional) Private endpoint address specification block.' + endpoint_address.address: '- Specifies IP address within subnet_id.' + endpoint_address.address_id: '- ID of the address.' + endpoint_address.subnet_id: '- Subnet of the IP address.' + folder_id: '- (Optional) ID of the folder that the resource belongs to. If it is not provided, the default provider folder is used.' + labels: '- (Optional) Labels to apply to this resource. A list of key/value pairs.' + name: '- (Optional) Name of the private endpoint. Provided by the client when the private endpoint is created.' + network_id: '- (Required) ID of the network which private endpoint belongs to.' + status: '- Status of the private endpoint.' + importStatements: [] yandex_vpc_route_table: - subCategory: "" + subCategory: VPC (Virtual Private Cloud) description: A VPC route table is a virtual version of the traditional route table on router device. name: yandex_vpc_route_table title: yandex_vpc_route_table @@ -10482,6 +10479,9 @@ resources: } ] } + references: + network_id: yandex_vpc_network.lab-net.id + static_route.gateway_id: yandex_vpc_gateway.egress-gateway.id dependencies: yandex_vpc_gateway.egress-gateway: |- { @@ -10496,12 +10496,8 @@ resources: } argumentDocs: created_at: '- Creation timestamp of the route table.' - description: |- - - (Optional) An optional description of the route table. Provide this property when - you create the resource. - folder_id: |- - - (Optional) The ID of the folder to which the resource belongs. - If omitted, the provider folder is used. + description: '- (Optional) An optional description of the route table. Provide this property when you create the resource.' + folder_id: '- (Optional) The ID of the folder to which the resource belongs. If omitted, the provider folder is used.' labels: '- (Optional) Labels to assign to this route table. A list of key/value pairs.' name: '- (Optional) Name of the route table. Provided by the client when the route table is created.' network_id: '- (Required) ID of the network this route table belongs to.' @@ -10511,7 +10507,7 @@ resources: static_route.next_hop_address: '- Address of the next hop.' importStatements: [] yandex_vpc_security_group: - subCategory: "" + subCategory: VPC (Virtual Private Cloud) description: Yandex VPC Security Group. name: yandex_vpc_security_group title: yandex_vpc_security_group @@ -10558,6 +10554,8 @@ resources: "name": "My security group", "network_id": "${yandex_vpc_network.lab-net.id}" } + references: + network_id: yandex_vpc_network.lab-net.id dependencies: yandex_vpc_network.lab-net: |- { @@ -10586,7 +10584,7 @@ resources: status: '- Status of this security group.' importStatements: [] yandex_vpc_security_group_rule: - subCategory: "" + subCategory: VPC (Virtual Private Cloud) description: Yandex VPC Security Group Rule. name: yandex_vpc_security_group_rule title: yandex_vpc_security_group_rule @@ -10665,7 +10663,7 @@ resources: v6_cidr_blocks: (Optional) - The blocks of IPv6 addresses for this rule. v6_cidr_blocks argument is currently not supported. It will be available in the future. importStatements: [] yandex_vpc_subnet: - subCategory: "" + subCategory: VPC (Virtual Private Cloud) description: A VPC network is a virtual version of the traditional physical networks that exist within and between physical data centers. name: yandex_vpc_subnet title: yandex_vpc_subnet @@ -10679,6 +10677,8 @@ resources: ], "zone": "ru-central1-a" } + references: + network_id: yandex_vpc_network.lab-net.id dependencies: yandex_vpc_network.lab-net: |- { @@ -10687,35 +10687,23 @@ resources: argumentDocs: create: '- Default is 3 minute.' delete: '- Default is 3 minute.' - description: |- - - (Optional) An optional description of the subnet. Provide this property when - you create the resource. + description: '- (Optional) An optional description of the subnet. Provide this property when you create the resource.' dhcp_options: '- (Optional) Options for DHCP client. The structure is documented below.' dhcp_options.domain_name: '- (Optional) Domain name.' dhcp_options.domain_name_servers: '- (Optional) Domain name server IP addresses.' dhcp_options.ntp_servers: '- (Optional) NTP server IP addresses.' - folder_id: |- - - (Optional) The ID of the folder to which the resource belongs. - If omitted, the provider folder is used. + folder_id: '- (Optional) The ID of the folder to which the resource belongs. If omitted, the provider folder is used.' labels: '- (Optional) Labels to assign to this subnet. A list of key/value pairs.' name: '- (Optional) Name of the subnet. Provided by the client when the subnet is created.' - network_id: |- - - (Required) ID of the network this subnet belongs to. - Only networks that are in the distributed mode can have subnets. - route_table_id: |- - - (Optional) The ID of the route table to assign to this subnet. Assigned route table should - belong to the same network as this subnet. + network_id: '- (Required) ID of the network this subnet belongs to. Only networks that are in the distributed mode can have subnets.' + route_table_id: '- (Optional) The ID of the route table to assign to this subnet. Assigned route table should belong to the same network as this subnet.' update: '- Default is 3 minute.' - v4_cidr_blocks: |- - - (Required) A list of blocks of internal IPv4 addresses that are owned by this subnet. - Provide this property when you create the subnet. For example, 10.0.0.0/22 or 192.168.0.0/16. - Blocks of addresses must be unique and non-overlapping within a network. - Minimum subnet size is /28, and maximum subnet size is /16. Only IPv4 is supported. + v4_cidr_blocks: '- (Required) A list of blocks of internal IPv4 addresses that are owned by this subnet. Provide this property when you create the subnet. For example, 10.0.0.0/22 or 192.168.0.0/16. Blocks of addresses must be unique and non-overlapping within a network. Minimum subnet size is /28, and maximum subnet size is /16. Only IPv4 is supported.' v6_cidr_blocks: '- An optional list of blocks of IPv6 addresses that are owned by this subnet.' zone: '- (Required) Name of the Yandex.Cloud zone for this subnet.' importStatements: [] yandex_ydb_database_dedicated: - subCategory: "" + subCategory: Managed Service for YDB description: Manages Yandex Database dedicated cluster. name: yandex_ydb_database_dedicated title: yandex_ydb_database_dedicated @@ -10756,58 +10744,39 @@ resources: "${yandex_vpc_subnet.my-inst-group-subnet.id}" ] } + references: + folder_id: data.yandex_resourcemanager_folder.test_folder.id + network_id: yandex_vpc_network.my-inst-group-network.id argumentDocs: assign_public_ips: '- (Optional) Whether public IP addresses should be assigned to the Yandex Database cluster.' created_at: '- The Yandex Database cluster creation timestamp.' - database_path: |- - - Full database path of the Yandex Database cluster. - Useful for SDK configuration. + database_path: '- Full database path of the Yandex Database cluster. Useful for SDK configuration.' deletion_protection: '- (Optional) Inhibits deletion of the database. Can be either true or false' description: '- (Optional) A description for the Yandex Database cluster.' - folder_id: |- - - (Optional) ID of the folder that the Yandex Database cluster belongs to. - It will be deduced from provider configuration if not set explicitly. + folder_id: '- (Optional) ID of the folder that the Yandex Database cluster belongs to. It will be deduced from provider configuration if not set explicitly.' id: '- ID of the Yandex Database cluster.' labels: '- (Optional) A set of key/value label pairs to assign to the Yandex Database cluster.' - location: |- - - (Optional) Location for the Yandex Database cluster. - The structure is documented below. - location.region: |- - - (Optional) Region for the Yandex Database cluster. - The structure is documented below. + location: '- (Optional) Location for the Yandex Database cluster. The structure is documented below.' + location.region: '- (Optional) Region for the Yandex Database cluster. The structure is documented below.' location.region.id: '- (Required) Region ID for the Yandex Database cluster.' location_id: '- (Optional) Location ID for the Yandex Database cluster.' name: '- (Required) Name of the Yandex Database cluster.' network_id: '- (Required) ID of the network to attach the Yandex Database cluster to.' - resource_preset_id: |- - - (Required) The Yandex Database cluster preset. - Available presets can be obtained via yc ydb resource-preset list command. - scale_policy: |- - - (Required) Scaling policy for the Yandex Database cluster. - The structure is documented below. - scale_policy.fixed_scale: |- - - (Required) Fixed scaling policy for the Yandex Database cluster. - The structure is documented below. + resource_preset_id: '- (Required) The Yandex Database cluster preset. Available presets can be obtained via yc ydb resource-preset list command.' + scale_policy: '- (Required) Scaling policy for the Yandex Database cluster. The structure is documented below.' + scale_policy.fixed_scale: '- (Required) Fixed scaling policy for the Yandex Database cluster. The structure is documented below.' scale_policy.fixed_scale.size: '- (Required) Number of instances for the Yandex Database cluster.' status: '- Status of the Yandex Database cluster.' - storage_config: |- - - (Required) A list of storage configuration options for the Yandex Database cluster. - The structure is documented below. + storage_config: '- (Required) A list of storage configuration options for the Yandex Database cluster. The structure is documented below.' storage_config.group_count: '- (Required) Amount of storage groups of selected type for the Yandex Database cluster.' - storage_config.storage_type_id: |- - - (Required) Storage type ID for the Yandex Database cluster. - Available presets can be obtained via yc ydb storage-type list command. + storage_config.storage_type_id: '- (Required) Storage type ID for the Yandex Database cluster. Available presets can be obtained via yc ydb storage-type list command.' subnet_ids: '- (Required) List of subnet IDs to attach the Yandex Database cluster to.' - tls_enabled: |- - - Whether TLS is enabled for the Yandex Database cluster. - Useful for SDK configuration. - ydb_api_endpoint: |- - - API endpoint of the Yandex Database cluster. - Useful for SDK configuration. + tls_enabled: '- Whether TLS is enabled for the Yandex Database cluster. Useful for SDK configuration.' + ydb_api_endpoint: '- API endpoint of the Yandex Database cluster. Useful for SDK configuration.' ydb_full_endpoint: '- Full endpoint of the Yandex Database cluster.' importStatements: [] yandex_ydb_database_iam_binding: - subCategory: "" + subCategory: Managed Service for YDB description: Allows management of a single IAM binding for a name: yandex_ydb_database_iam_binding title: yandex_ydb_database_iam_binding @@ -10831,13 +10800,11 @@ resources: } argumentDocs: database_id: '- (Required) The Managed Service YDB instance Database ID to apply a binding to.' - members: |- - - (Required) Identities that will be granted the privilege in role. - Each entry can have one of the following values: + members: '- (Required) Identities that will be granted the privilege in role. Each entry can have one of the following values:' role: '- (Required) The role that should be applied. See roles.' importStatements: [] yandex_ydb_database_serverless: - subCategory: "" + subCategory: Managed Service for YDB description: Manages Yandex Database serverless cluster. name: yandex_ydb_database_serverless title: yandex_ydb_database_serverless @@ -10849,32 +10816,26 @@ resources: "folder_id": "${data.yandex_resourcemanager_folder.test_folder.id}", "name": "test-ydb-serverless" } + references: + folder_id: data.yandex_resourcemanager_folder.test_folder.id argumentDocs: created_at: '- The Yandex Database serverless cluster creation timestamp.' - database_path: |- - - Full database path of the Yandex Database serverless cluster. - Useful for SDK configuration. + database_path: '- Full database path of the Yandex Database serverless cluster. Useful for SDK configuration.' deletion_protection: '- (Optional) Inhibits deletion of the database. Can be either true or false' description: '- (Optional) A description for the Yandex Database serverless cluster.' document_api_endpoint: '- Document API endpoint of the Yandex Database serverless cluster.' - folder_id: |- - - (Optional) ID of the folder that the Yandex Database serverless cluster belongs to. - It will be deduced from provider configuration if not set explicitly. + folder_id: '- (Optional) ID of the folder that the Yandex Database serverless cluster belongs to. It will be deduced from provider configuration if not set explicitly.' id: '- ID of the Yandex Database serverless cluster.' labels: '- (Optional) A set of key/value label pairs to assign to the Yandex Database serverless cluster.' location_id: '- (Optional) Location ID for the Yandex Database serverless cluster.' name: '- (Required) Name for the Yandex Database serverless cluster.' status: '- Status of the Yandex Database serverless cluster.' - tls_enabled: |- - - Whether TLS is enabled for the Yandex Database serverless cluster. - Useful for SDK configuration. - ydb_api_endpoint: |- - - API endpoint of the Yandex Database serverless cluster. - Useful for SDK configuration. + tls_enabled: '- Whether TLS is enabled for the Yandex Database serverless cluster. Useful for SDK configuration.' + ydb_api_endpoint: '- API endpoint of the Yandex Database serverless cluster. Useful for SDK configuration.' ydb_full_endpoint: '- Full endpoint of the Yandex Database serverless cluster.' importStatements: [] yandex_ydb_table: - subCategory: "" + subCategory: Managed Service for YDB description: Manages Yandex Database dedicated cluster. name: yandex_ydb_table title: yandex_ydb_table @@ -10913,36 +10874,28 @@ resources: references: connection_string: yandex_ydb_database_serverless.database1.ydb_full_endpoint argumentDocs: - attributes: "- (Optional)\tA map of table attributes." - column: |- - - (Required) A list of column configuration options. - The structure is documented below. - column.family: "- (Optional)\tColumn group" + attributes: '- (Optional) A map of table attributes.' + column: '- (Required) A list of column configuration options. The structure is documented below.' + column.family: '- (Optional) Column group' column.name: '- (Required) Column name' - column.not_null: "- (Optional) A column cannot have the NULL data type. (\tDefault: false\t)" + column.not_null: '- (Optional) A column cannot have the NULL data type. ( Default: false )' column.type: '- (Required) Column data type. YQL data types are used.' connection_string: '- (Required) Connection string for database.' - family: |- - - (Optional) A list of column group configuration options. - The structure is documented below. + family: '- (Optional) A list of column group configuration options. The structure is documented below.' family.compression: '- (Optional) Data codec (acceptable values: off, lz4).' family.data: '- (Optional) Type of storage device for column data in this group (acceptable values: ssd, rot (from HDD spindle rotation)).' family.name: '- (Required) Column family name' key_bloom_filter: '- (Optional) Use the Bloom filter for the primary key' - partitioning_settings: |- - - (Optional) Table partiotioning settings - The structure is documented below. + partitioning_settings: '- (Optional) Table partiotioning settings The structure is documented below.' path: '- (Required) Table path.' primary_key: '- (Required) A list of table columns to be uased as primary key.' - read_replicas_settings: "- (Optional)\tRead replication settings" - ttl: |- - - (Optional) ttl TTL settings - The structure is documented below. + read_replicas_settings: '- (Optional) Read replication settings' + ttl: '- (Optional) ttl TTL settings The structure is documented below.' ttl.column_name: '- (Required) Column name for TTL' ttl.expire_interval: '- (Required) Interval in the ISO 8601 format' importStatements: [] yandex_ydb_table_changefeed: - subCategory: "" + subCategory: Managed Service for YDB description: Manages Yandex Database dedicated cluster. name: yandex_ydb_table_changefeed title: yandex_ydb_table_changefeed @@ -10960,8 +10913,28 @@ resources: table_path: '- (Required) Table path' virtual_timestamps: '- (Optional) Use virtual timestamps' importStatements: [] + yandex_ydb_table_index: + subCategory: Managed Service for YDB + name: yandex_ydb_table_index + title: yandex_ydb_table_index + argumentDocs: + columns: (List of String) + connection_string: (String) + cover: (List of String) + create: (String) A string that can be parsed as a duration consisting of numbers and unit suffixes, such as "30s" or "2h45m". Valid time units are "s" (seconds), "m" (minutes), "h" (hours). + default: (String) A string that can be parsed as a duration consisting of numbers and unit suffixes, such as "30s" or "2h45m". Valid time units are "s" (seconds), "m" (minutes), "h" (hours). + delete: (String) A string that can be parsed as a duration consisting of numbers and unit suffixes, such as "30s" or "2h45m". Valid time units are "s" (seconds), "m" (minutes), "h" (hours). Setting a timeout for a Delete operation is only applicable if changes are saved into state before the destroy operation occurs. + id: (String) The ID of this resource. + name: (String) + read: (String) A string that can be parsed as a duration consisting of numbers and unit suffixes, such as "30s" or "2h45m". Valid time units are "s" (seconds), "m" (minutes), "h" (hours). Read operations occur during any refresh or planning operation when refresh is enabled. + table_id: (String) + table_path: (String) + timeouts: (Block, Optional) (see below for nested schema) + type: (String) + update: (String) A string that can be parsed as a duration consisting of numbers and unit suffixes, such as "30s" or "2h45m". Valid time units are "s" (seconds), "m" (minutes), "h" (hours). + importStatements: [] yandex_ydb_topic: - subCategory: "" + subCategory: Managed Service for YDB description: Get information about a Yandex YDB Topics. name: yandex_ydb_topic title: yandex_ydb_topic @@ -10988,6 +10961,8 @@ resources: "gzip" ] } + references: + database_endpoint: yandex_ydb_database_serverless.database_name.ydb_full_endpoint dependencies: yandex_ydb_database_serverless.database_name: |- { @@ -10997,7 +10972,10 @@ resources: argumentDocs: consumer: '- Topic Readers. Types: array[consumer], optional. Default value: null.' database_endpoint: '- YDB database endpoint. Types: string, required. Default value: "".' + important: '- Defines an important consumer. No data will be deleted from the topic until all the important consumers read them. Value type: boolean, default value: false.' + metering_mode: '- Resource metering mode (reserved_capacity - based on the allocated resources or request_units - based on actual usage). This option applies to topics in serverless databases. Value type: String.' name: '- Topic name. Type: string, required. Default value: "".' + partition_write_speed_kbps: '- Maximum allowed write speed per partition. If a write speed for a given partition exceeds this value, the write speed will be capped. Value type: integer, default value: 1024 (1MB).' partitions_count: '- Number of partitions. Types: integer, optional. Default value: 2.' retention_period_ms: '- Data retention time. Types: integer, required. Default value: 86400000' starting_message_timestamp_ms: '- Timestamp in UNIX timestamp format from which the reader will start reading data. Type: integer, optional. Default value: 0.' diff --git a/config/schema.json b/config/schema.json index e0f7981..fc65d69 100644 --- a/config/schema.json +++ b/config/schema.json @@ -1 +1 @@ -{"format_version":"1.0","provider_schemas":{"registry.terraform.io/yandex-cloud/yandex":{"provider":{"version":0,"block":{"attributes":{"cloud_id":{"type":"string","description":"ID of Yandex.Cloud tenant.","description_kind":"plain","optional":true},"endpoint":{"type":"string","description":"The API endpoint for Yandex.Cloud SDK client.","description_kind":"plain","optional":true},"folder_id":{"type":"string","description":"The default folder ID where resources will be placed.","description_kind":"plain","optional":true},"insecure":{"type":"bool","description":"Explicitly allow the provider to perform \"insecure\" SSL requests. If omitted,default value is `false`.","description_kind":"plain","optional":true},"max_retries":{"type":"number","description":"The maximum number of times an API request is being executed. \nIf the API request still fails, an error is thrown.","description_kind":"plain","optional":true},"organization_id":{"type":"string","description_kind":"plain","optional":true},"plaintext":{"type":"bool","description":"Disable use of TLS. Default value is `false`.","description_kind":"plain","optional":true},"profile":{"type":"string","description":"Profile to use in the shared credentials file. Default value is `default`.","description_kind":"plain","optional":true},"region_id":{"type":"string","description":"The region where operations will take place. Examples\nare ru-central1","description_kind":"plain","optional":true},"service_account_key_file":{"type":"string","description":"Either the path to or the contents of a Service Account key file in JSON format.","description_kind":"plain","optional":true},"shared_credentials_file":{"type":"string","description":"Path to shared credentials file.","description_kind":"plain","optional":true},"storage_access_key":{"type":"string","description":"Yandex.Cloud storage service access key. \nUsed when a storage data/resource doesn't have an access key explicitly specified.","description_kind":"plain","optional":true},"storage_endpoint":{"type":"string","description":"Yandex.Cloud storage service endpoint. Default is \nstorage.yandexcloud.net","description_kind":"plain","optional":true},"storage_secret_key":{"type":"string","description":"Yandex.Cloud storage service secret key. \nUsed when a storage data/resource doesn't have a secret key explicitly specified.","description_kind":"plain","optional":true,"sensitive":true},"token":{"type":"string","description":"The access token for API operations.","description_kind":"plain","optional":true,"sensitive":true},"ymq_access_key":{"type":"string","description":"Yandex.Cloud Message Queue service access key. \nUsed when a message queue resource doesn't have an access key explicitly specified.","description_kind":"plain","optional":true},"ymq_endpoint":{"type":"string","description":"Yandex.Cloud Message Queue service endpoint. Default is \nmessage-queue.api.cloud.yandex.net","description_kind":"plain","optional":true},"ymq_secret_key":{"type":"string","description":"Yandex.Cloud Message Queue service secret key. \nUsed when a message queue resource doesn't have a secret key explicitly specified.","description_kind":"plain","optional":true,"sensitive":true},"zone":{"type":"string","description":"The zone where operations will take place. Examples\nare ru-central1-a, ru-central2-c, etc.","description_kind":"plain","optional":true}},"description_kind":"plain"}},"resource_schemas":{"yandex_alb_backend_group":{"version":0,"block":{"attributes":{"created_at":{"type":"string","description_kind":"plain","computed":true},"description":{"type":"string","description_kind":"plain","optional":true},"folder_id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"labels":{"type":["map","string"],"description_kind":"plain","optional":true},"name":{"type":"string","description_kind":"plain","optional":true}},"block_types":{"grpc_backend":{"nesting_mode":"list","block":{"attributes":{"name":{"type":"string","description_kind":"plain","required":true},"port":{"type":"number","description_kind":"plain","optional":true},"target_group_ids":{"type":["list","string"],"description_kind":"plain","required":true},"weight":{"type":"number","description_kind":"plain","optional":true}},"block_types":{"healthcheck":{"nesting_mode":"list","block":{"attributes":{"healthcheck_port":{"type":"number","description_kind":"plain","optional":true},"healthy_threshold":{"type":"number","description_kind":"plain","optional":true},"interval":{"type":"string","description_kind":"plain","required":true},"interval_jitter_percent":{"type":"number","description_kind":"plain","optional":true},"timeout":{"type":"string","description_kind":"plain","required":true},"unhealthy_threshold":{"type":"number","description_kind":"plain","optional":true}},"block_types":{"grpc_healthcheck":{"nesting_mode":"list","block":{"attributes":{"service_name":{"type":"string","description_kind":"plain","optional":true}},"description_kind":"plain"},"max_items":1},"http_healthcheck":{"nesting_mode":"list","block":{"attributes":{"host":{"type":"string","description_kind":"plain","optional":true},"http2":{"type":"bool","description_kind":"plain","optional":true},"path":{"type":"string","description_kind":"plain","required":true}},"description_kind":"plain"},"max_items":1},"stream_healthcheck":{"nesting_mode":"list","block":{"attributes":{"receive":{"type":"string","description_kind":"plain","optional":true},"send":{"type":"string","description_kind":"plain","optional":true}},"description_kind":"plain"},"max_items":1}},"description_kind":"plain"},"max_items":1},"load_balancing_config":{"nesting_mode":"list","block":{"attributes":{"locality_aware_routing_percent":{"type":"number","description_kind":"plain","optional":true},"mode":{"type":"string","description_kind":"plain","optional":true},"panic_threshold":{"type":"number","description_kind":"plain","optional":true},"strict_locality":{"type":"bool","description_kind":"plain","optional":true}},"description_kind":"plain"},"max_items":1},"tls":{"nesting_mode":"list","block":{"attributes":{"sni":{"type":"string","description_kind":"plain","optional":true}},"block_types":{"validation_context":{"nesting_mode":"list","block":{"attributes":{"trusted_ca_bytes":{"type":"string","description_kind":"plain","optional":true},"trusted_ca_id":{"type":"string","description_kind":"plain","optional":true}},"description_kind":"plain"},"max_items":1}},"description_kind":"plain"},"max_items":1}},"description_kind":"plain"}},"http_backend":{"nesting_mode":"list","block":{"attributes":{"http2":{"type":"bool","description_kind":"plain","optional":true},"name":{"type":"string","description_kind":"plain","required":true},"port":{"type":"number","description_kind":"plain","optional":true},"storage_bucket":{"type":"string","description_kind":"plain","optional":true},"target_group_ids":{"type":["list","string"],"description_kind":"plain","optional":true},"weight":{"type":"number","description_kind":"plain","optional":true}},"block_types":{"healthcheck":{"nesting_mode":"list","block":{"attributes":{"healthcheck_port":{"type":"number","description_kind":"plain","optional":true},"healthy_threshold":{"type":"number","description_kind":"plain","optional":true},"interval":{"type":"string","description_kind":"plain","required":true},"interval_jitter_percent":{"type":"number","description_kind":"plain","optional":true},"timeout":{"type":"string","description_kind":"plain","required":true},"unhealthy_threshold":{"type":"number","description_kind":"plain","optional":true}},"block_types":{"grpc_healthcheck":{"nesting_mode":"list","block":{"attributes":{"service_name":{"type":"string","description_kind":"plain","optional":true}},"description_kind":"plain"},"max_items":1},"http_healthcheck":{"nesting_mode":"list","block":{"attributes":{"host":{"type":"string","description_kind":"plain","optional":true},"http2":{"type":"bool","description_kind":"plain","optional":true},"path":{"type":"string","description_kind":"plain","required":true}},"description_kind":"plain"},"max_items":1},"stream_healthcheck":{"nesting_mode":"list","block":{"attributes":{"receive":{"type":"string","description_kind":"plain","optional":true},"send":{"type":"string","description_kind":"plain","optional":true}},"description_kind":"plain"},"max_items":1}},"description_kind":"plain"},"max_items":1},"load_balancing_config":{"nesting_mode":"list","block":{"attributes":{"locality_aware_routing_percent":{"type":"number","description_kind":"plain","optional":true},"mode":{"type":"string","description_kind":"plain","optional":true},"panic_threshold":{"type":"number","description_kind":"plain","optional":true},"strict_locality":{"type":"bool","description_kind":"plain","optional":true}},"description_kind":"plain"},"max_items":1},"tls":{"nesting_mode":"list","block":{"attributes":{"sni":{"type":"string","description_kind":"plain","optional":true}},"block_types":{"validation_context":{"nesting_mode":"list","block":{"attributes":{"trusted_ca_bytes":{"type":"string","description_kind":"plain","optional":true},"trusted_ca_id":{"type":"string","description_kind":"plain","optional":true}},"description_kind":"plain"},"max_items":1}},"description_kind":"plain"},"max_items":1}},"description_kind":"plain"}},"session_affinity":{"nesting_mode":"list","block":{"block_types":{"connection":{"nesting_mode":"list","block":{"attributes":{"source_ip":{"type":"bool","description":"Use source IP address","description_kind":"plain","optional":true}},"description":"IP address affinity","description_kind":"plain"},"max_items":1},"cookie":{"nesting_mode":"list","block":{"attributes":{"name":{"type":"string","description":"Name of the HTTP cookie","description_kind":"plain","required":true},"ttl":{"type":"string","description":"TTL for the cookie (if not set, session cookie will be used)","description_kind":"plain","optional":true}},"description":"Cookie affinity","description_kind":"plain"},"max_items":1},"header":{"nesting_mode":"list","block":{"attributes":{"header_name":{"type":"string","description":"The name of the request header that will be used","description_kind":"plain","required":true}},"description":"Request header affinity","description_kind":"plain"},"max_items":1}},"description_kind":"plain"},"max_items":1},"stream_backend":{"nesting_mode":"list","block":{"attributes":{"enable_proxy_protocol":{"type":"bool","description_kind":"plain","optional":true},"name":{"type":"string","description_kind":"plain","required":true},"port":{"type":"number","description_kind":"plain","optional":true},"target_group_ids":{"type":["list","string"],"description_kind":"plain","required":true},"weight":{"type":"number","description_kind":"plain","optional":true}},"block_types":{"healthcheck":{"nesting_mode":"list","block":{"attributes":{"healthcheck_port":{"type":"number","description_kind":"plain","optional":true},"healthy_threshold":{"type":"number","description_kind":"plain","optional":true},"interval":{"type":"string","description_kind":"plain","required":true},"interval_jitter_percent":{"type":"number","description_kind":"plain","optional":true},"timeout":{"type":"string","description_kind":"plain","required":true},"unhealthy_threshold":{"type":"number","description_kind":"plain","optional":true}},"block_types":{"grpc_healthcheck":{"nesting_mode":"list","block":{"attributes":{"service_name":{"type":"string","description_kind":"plain","optional":true}},"description_kind":"plain"},"max_items":1},"http_healthcheck":{"nesting_mode":"list","block":{"attributes":{"host":{"type":"string","description_kind":"plain","optional":true},"http2":{"type":"bool","description_kind":"plain","optional":true},"path":{"type":"string","description_kind":"plain","required":true}},"description_kind":"plain"},"max_items":1},"stream_healthcheck":{"nesting_mode":"list","block":{"attributes":{"receive":{"type":"string","description_kind":"plain","optional":true},"send":{"type":"string","description_kind":"plain","optional":true}},"description_kind":"plain"},"max_items":1}},"description_kind":"plain"},"max_items":1},"load_balancing_config":{"nesting_mode":"list","block":{"attributes":{"locality_aware_routing_percent":{"type":"number","description_kind":"plain","optional":true},"mode":{"type":"string","description_kind":"plain","optional":true},"panic_threshold":{"type":"number","description_kind":"plain","optional":true},"strict_locality":{"type":"bool","description_kind":"plain","optional":true}},"description_kind":"plain"},"max_items":1},"tls":{"nesting_mode":"list","block":{"attributes":{"sni":{"type":"string","description_kind":"plain","optional":true}},"block_types":{"validation_context":{"nesting_mode":"list","block":{"attributes":{"trusted_ca_bytes":{"type":"string","description_kind":"plain","optional":true},"trusted_ca_id":{"type":"string","description_kind":"plain","optional":true}},"description_kind":"plain"},"max_items":1}},"description_kind":"plain"},"max_items":1}},"description_kind":"plain"}},"timeouts":{"nesting_mode":"single","block":{"attributes":{"create":{"type":"string","description_kind":"plain","optional":true},"delete":{"type":"string","description_kind":"plain","optional":true},"update":{"type":"string","description_kind":"plain","optional":true}},"description_kind":"plain"}}},"description_kind":"plain"}},"yandex_alb_http_router":{"version":0,"block":{"attributes":{"created_at":{"type":"string","description_kind":"plain","computed":true},"description":{"type":"string","description_kind":"plain","optional":true},"folder_id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"labels":{"type":["map","string"],"description_kind":"plain","optional":true},"name":{"type":"string","description_kind":"plain","optional":true}},"block_types":{"route_options":{"nesting_mode":"list","block":{"attributes":{"security_profile_id":{"type":"string","description_kind":"plain","optional":true}},"block_types":{"rbac":{"nesting_mode":"list","block":{"attributes":{"action":{"type":"string","description_kind":"plain","optional":true}},"block_types":{"principals":{"nesting_mode":"list","block":{"block_types":{"and_principals":{"nesting_mode":"list","block":{"attributes":{"any":{"type":"bool","description_kind":"plain","optional":true},"remote_ip":{"type":"string","description_kind":"plain","optional":true}},"block_types":{"header":{"nesting_mode":"list","block":{"attributes":{"name":{"type":"string","description_kind":"plain","required":true}},"block_types":{"value":{"nesting_mode":"list","block":{"attributes":{"exact":{"type":"string","description_kind":"plain","optional":true},"prefix":{"type":"string","description_kind":"plain","optional":true},"regex":{"type":"string","description_kind":"plain","optional":true}},"description_kind":"plain"},"max_items":1}},"description_kind":"plain"},"max_items":1}},"description_kind":"plain"},"min_items":1}},"description_kind":"plain"},"min_items":1}},"description_kind":"plain"},"max_items":1}},"description_kind":"plain"},"max_items":1},"timeouts":{"nesting_mode":"single","block":{"attributes":{"create":{"type":"string","description_kind":"plain","optional":true},"delete":{"type":"string","description_kind":"plain","optional":true},"update":{"type":"string","description_kind":"plain","optional":true}},"description_kind":"plain"}}},"description_kind":"plain"}},"yandex_alb_load_balancer":{"version":0,"block":{"attributes":{"created_at":{"type":"string","description_kind":"plain","computed":true},"description":{"type":"string","description_kind":"plain","optional":true},"folder_id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"labels":{"type":["map","string"],"description_kind":"plain","optional":true},"log_group_id":{"type":"string","description_kind":"plain","computed":true},"name":{"type":"string","description_kind":"plain","optional":true},"network_id":{"type":"string","description_kind":"plain","required":true},"region_id":{"type":"string","description_kind":"plain","optional":true},"security_group_ids":{"type":["set","string"],"description_kind":"plain","optional":true},"status":{"type":"string","description_kind":"plain","computed":true}},"block_types":{"allocation_policy":{"nesting_mode":"list","block":{"block_types":{"location":{"nesting_mode":"set","block":{"attributes":{"disable_traffic":{"type":"bool","description_kind":"plain","optional":true},"subnet_id":{"type":"string","description_kind":"plain","required":true},"zone_id":{"type":"string","description_kind":"plain","required":true}},"description_kind":"plain"},"min_items":1}},"description_kind":"plain"},"min_items":1,"max_items":1},"listener":{"nesting_mode":"list","block":{"attributes":{"name":{"type":"string","description_kind":"plain","required":true}},"block_types":{"endpoint":{"nesting_mode":"list","block":{"attributes":{"ports":{"type":["list","number"],"description_kind":"plain","required":true}},"block_types":{"address":{"nesting_mode":"list","block":{"block_types":{"external_ipv4_address":{"nesting_mode":"list","block":{"attributes":{"address":{"type":"string","description_kind":"plain","optional":true,"computed":true}},"description_kind":"plain"},"max_items":1},"external_ipv6_address":{"nesting_mode":"list","block":{"attributes":{"address":{"type":"string","description_kind":"plain","optional":true,"computed":true}},"description_kind":"plain"},"max_items":1},"internal_ipv4_address":{"nesting_mode":"list","block":{"attributes":{"address":{"type":"string","description_kind":"plain","optional":true,"computed":true},"subnet_id":{"type":"string","description_kind":"plain","optional":true,"computed":true}},"description_kind":"plain"},"max_items":1}},"description_kind":"plain"},"min_items":1}},"description_kind":"plain"}},"http":{"nesting_mode":"list","block":{"block_types":{"handler":{"nesting_mode":"list","block":{"attributes":{"allow_http10":{"type":"bool","description_kind":"plain","optional":true},"http_router_id":{"type":"string","description_kind":"plain","optional":true},"rewrite_request_id":{"type":"bool","description_kind":"plain","optional":true}},"block_types":{"http2_options":{"nesting_mode":"list","block":{"attributes":{"max_concurrent_streams":{"type":"number","description_kind":"plain","optional":true}},"description_kind":"plain"},"max_items":1}},"description_kind":"plain"},"max_items":1},"redirects":{"nesting_mode":"list","block":{"attributes":{"http_to_https":{"type":"bool","description_kind":"plain","optional":true}},"description_kind":"plain"},"max_items":1}},"description_kind":"plain"},"max_items":1},"stream":{"nesting_mode":"list","block":{"block_types":{"handler":{"nesting_mode":"list","block":{"attributes":{"backend_group_id":{"type":"string","description_kind":"plain","optional":true}},"description_kind":"plain"},"max_items":1}},"description_kind":"plain"},"max_items":1},"tls":{"nesting_mode":"list","block":{"block_types":{"default_handler":{"nesting_mode":"list","block":{"attributes":{"certificate_ids":{"type":["set","string"],"description_kind":"plain","required":true}},"block_types":{"http_handler":{"nesting_mode":"list","block":{"attributes":{"allow_http10":{"type":"bool","description_kind":"plain","optional":true},"http_router_id":{"type":"string","description_kind":"plain","optional":true},"rewrite_request_id":{"type":"bool","description_kind":"plain","optional":true}},"block_types":{"http2_options":{"nesting_mode":"list","block":{"attributes":{"max_concurrent_streams":{"type":"number","description_kind":"plain","optional":true}},"description_kind":"plain"},"max_items":1}},"description_kind":"plain"},"max_items":1},"stream_handler":{"nesting_mode":"list","block":{"attributes":{"backend_group_id":{"type":"string","description_kind":"plain","optional":true}},"description_kind":"plain"},"max_items":1}},"description_kind":"plain"},"min_items":1,"max_items":1},"sni_handler":{"nesting_mode":"list","block":{"attributes":{"name":{"type":"string","description_kind":"plain","required":true},"server_names":{"type":["set","string"],"description_kind":"plain","required":true}},"block_types":{"handler":{"nesting_mode":"list","block":{"attributes":{"certificate_ids":{"type":["set","string"],"description_kind":"plain","required":true}},"block_types":{"http_handler":{"nesting_mode":"list","block":{"attributes":{"allow_http10":{"type":"bool","description_kind":"plain","optional":true},"http_router_id":{"type":"string","description_kind":"plain","optional":true},"rewrite_request_id":{"type":"bool","description_kind":"plain","optional":true}},"block_types":{"http2_options":{"nesting_mode":"list","block":{"attributes":{"max_concurrent_streams":{"type":"number","description_kind":"plain","optional":true}},"description_kind":"plain"},"max_items":1}},"description_kind":"plain"},"max_items":1},"stream_handler":{"nesting_mode":"list","block":{"attributes":{"backend_group_id":{"type":"string","description_kind":"plain","optional":true}},"description_kind":"plain"},"max_items":1}},"description_kind":"plain"},"min_items":1,"max_items":1}},"description_kind":"plain"}}},"description_kind":"plain"},"max_items":1}},"description_kind":"plain"}},"log_options":{"nesting_mode":"list","block":{"attributes":{"disable":{"type":"bool","description_kind":"plain","optional":true},"log_group_id":{"type":"string","description_kind":"plain","optional":true}},"block_types":{"discard_rule":{"nesting_mode":"list","block":{"attributes":{"discard_percent":{"type":"number","description_kind":"plain","optional":true},"grpc_codes":{"type":["list","string"],"description_kind":"plain","optional":true},"http_code_intervals":{"type":["list","string"],"description_kind":"plain","optional":true},"http_codes":{"type":["list","number"],"description_kind":"plain","optional":true}},"description_kind":"plain"}}},"description_kind":"plain"},"max_items":1},"timeouts":{"nesting_mode":"single","block":{"attributes":{"create":{"type":"string","description_kind":"plain","optional":true},"delete":{"type":"string","description_kind":"plain","optional":true},"update":{"type":"string","description_kind":"plain","optional":true}},"description_kind":"plain"}}},"description_kind":"plain"}},"yandex_alb_target_group":{"version":0,"block":{"attributes":{"created_at":{"type":"string","description_kind":"plain","computed":true},"description":{"type":"string","description_kind":"plain","optional":true},"folder_id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"labels":{"type":["map","string"],"description_kind":"plain","optional":true},"name":{"type":"string","description_kind":"plain","optional":true}},"block_types":{"target":{"nesting_mode":"list","block":{"attributes":{"ip_address":{"type":"string","description_kind":"plain","required":true},"private_ipv4_address":{"type":"bool","description_kind":"plain","optional":true},"subnet_id":{"type":"string","description_kind":"plain","optional":true}},"description_kind":"plain"}},"timeouts":{"nesting_mode":"single","block":{"attributes":{"create":{"type":"string","description_kind":"plain","optional":true},"delete":{"type":"string","description_kind":"plain","optional":true},"update":{"type":"string","description_kind":"plain","optional":true}},"description_kind":"plain"}}},"description_kind":"plain"}},"yandex_alb_virtual_host":{"version":0,"block":{"attributes":{"authority":{"type":["set","string"],"description_kind":"plain","optional":true},"http_router_id":{"type":"string","description_kind":"plain","required":true},"id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"name":{"type":"string","description_kind":"plain","required":true}},"block_types":{"modify_request_headers":{"nesting_mode":"list","block":{"attributes":{"append":{"type":"string","description_kind":"plain","optional":true},"name":{"type":"string","description_kind":"plain","required":true},"remove":{"type":"bool","description_kind":"plain","optional":true},"replace":{"type":"string","description_kind":"plain","optional":true}},"description_kind":"plain"}},"modify_response_headers":{"nesting_mode":"list","block":{"attributes":{"append":{"type":"string","description_kind":"plain","optional":true},"name":{"type":"string","description_kind":"plain","required":true},"remove":{"type":"bool","description_kind":"plain","optional":true},"replace":{"type":"string","description_kind":"plain","optional":true}},"description_kind":"plain"}},"route":{"nesting_mode":"list","block":{"attributes":{"name":{"type":"string","description_kind":"plain","optional":true}},"block_types":{"grpc_route":{"nesting_mode":"list","block":{"block_types":{"grpc_match":{"nesting_mode":"list","block":{"block_types":{"fqmn":{"nesting_mode":"list","block":{"attributes":{"exact":{"type":"string","description_kind":"plain","optional":true},"prefix":{"type":"string","description_kind":"plain","optional":true},"regex":{"type":"string","description_kind":"plain","optional":true}},"description_kind":"plain"},"max_items":1}},"description_kind":"plain"}},"grpc_route_action":{"nesting_mode":"list","block":{"attributes":{"auto_host_rewrite":{"type":"bool","description_kind":"plain","optional":true},"backend_group_id":{"type":"string","description_kind":"plain","required":true},"host_rewrite":{"type":"string","description_kind":"plain","optional":true},"idle_timeout":{"type":"string","description_kind":"plain","optional":true},"max_timeout":{"type":"string","description_kind":"plain","optional":true}},"description_kind":"plain"},"max_items":1},"grpc_status_response_action":{"nesting_mode":"list","block":{"attributes":{"status":{"type":"string","description_kind":"plain","optional":true}},"description_kind":"plain"},"max_items":1}},"description_kind":"plain"},"max_items":1},"http_route":{"nesting_mode":"list","block":{"block_types":{"direct_response_action":{"nesting_mode":"list","block":{"attributes":{"body":{"type":"string","description_kind":"plain","optional":true},"status":{"type":"number","description_kind":"plain","optional":true}},"description_kind":"plain"},"max_items":1},"http_match":{"nesting_mode":"list","block":{"attributes":{"http_method":{"type":["set","string"],"description_kind":"plain","optional":true}},"block_types":{"path":{"nesting_mode":"list","block":{"attributes":{"exact":{"type":"string","description_kind":"plain","optional":true},"prefix":{"type":"string","description_kind":"plain","optional":true},"regex":{"type":"string","description_kind":"plain","optional":true}},"description_kind":"plain"},"max_items":1}},"description_kind":"plain"}},"http_route_action":{"nesting_mode":"list","block":{"attributes":{"auto_host_rewrite":{"type":"bool","description_kind":"plain","optional":true},"backend_group_id":{"type":"string","description_kind":"plain","required":true},"host_rewrite":{"type":"string","description_kind":"plain","optional":true},"idle_timeout":{"type":"string","description_kind":"plain","optional":true},"prefix_rewrite":{"type":"string","description_kind":"plain","optional":true},"timeout":{"type":"string","description_kind":"plain","optional":true},"upgrade_types":{"type":["set","string"],"description_kind":"plain","optional":true}},"description_kind":"plain"},"max_items":1},"redirect_action":{"nesting_mode":"list","block":{"attributes":{"remove_query":{"type":"bool","description_kind":"plain","optional":true},"replace_host":{"type":"string","description_kind":"plain","optional":true},"replace_path":{"type":"string","description_kind":"plain","optional":true},"replace_port":{"type":"number","description_kind":"plain","optional":true},"replace_prefix":{"type":"string","description_kind":"plain","optional":true},"replace_scheme":{"type":"string","description_kind":"plain","optional":true},"response_code":{"type":"string","description_kind":"plain","optional":true}},"description_kind":"plain"},"max_items":1}},"description_kind":"plain"},"max_items":1},"route_options":{"nesting_mode":"list","block":{"attributes":{"security_profile_id":{"type":"string","description_kind":"plain","optional":true}},"block_types":{"rbac":{"nesting_mode":"list","block":{"attributes":{"action":{"type":"string","description_kind":"plain","optional":true}},"block_types":{"principals":{"nesting_mode":"list","block":{"block_types":{"and_principals":{"nesting_mode":"list","block":{"attributes":{"any":{"type":"bool","description_kind":"plain","optional":true},"remote_ip":{"type":"string","description_kind":"plain","optional":true}},"block_types":{"header":{"nesting_mode":"list","block":{"attributes":{"name":{"type":"string","description_kind":"plain","required":true}},"block_types":{"value":{"nesting_mode":"list","block":{"attributes":{"exact":{"type":"string","description_kind":"plain","optional":true},"prefix":{"type":"string","description_kind":"plain","optional":true},"regex":{"type":"string","description_kind":"plain","optional":true}},"description_kind":"plain"},"max_items":1}},"description_kind":"plain"},"max_items":1}},"description_kind":"plain"},"min_items":1}},"description_kind":"plain"},"min_items":1}},"description_kind":"plain"},"max_items":1}},"description_kind":"plain"},"max_items":1}},"description_kind":"plain"}},"route_options":{"nesting_mode":"list","block":{"attributes":{"security_profile_id":{"type":"string","description_kind":"plain","optional":true}},"block_types":{"rbac":{"nesting_mode":"list","block":{"attributes":{"action":{"type":"string","description_kind":"plain","optional":true}},"block_types":{"principals":{"nesting_mode":"list","block":{"block_types":{"and_principals":{"nesting_mode":"list","block":{"attributes":{"any":{"type":"bool","description_kind":"plain","optional":true},"remote_ip":{"type":"string","description_kind":"plain","optional":true}},"block_types":{"header":{"nesting_mode":"list","block":{"attributes":{"name":{"type":"string","description_kind":"plain","required":true}},"block_types":{"value":{"nesting_mode":"list","block":{"attributes":{"exact":{"type":"string","description_kind":"plain","optional":true},"prefix":{"type":"string","description_kind":"plain","optional":true},"regex":{"type":"string","description_kind":"plain","optional":true}},"description_kind":"plain"},"max_items":1}},"description_kind":"plain"},"max_items":1}},"description_kind":"plain"},"min_items":1}},"description_kind":"plain"},"min_items":1}},"description_kind":"plain"},"max_items":1}},"description_kind":"plain"},"max_items":1},"timeouts":{"nesting_mode":"single","block":{"attributes":{"create":{"type":"string","description_kind":"plain","optional":true},"delete":{"type":"string","description_kind":"plain","optional":true},"update":{"type":"string","description_kind":"plain","optional":true}},"description_kind":"plain"}}},"description_kind":"plain"}},"yandex_api_gateway":{"version":0,"block":{"attributes":{"created_at":{"type":"string","description_kind":"plain","computed":true},"description":{"type":"string","description_kind":"plain","optional":true},"domain":{"type":"string","description_kind":"plain","computed":true},"execution_timeout":{"type":"string","description_kind":"plain","optional":true,"computed":true},"folder_id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"labels":{"type":["map","string"],"description_kind":"plain","optional":true},"log_group_id":{"type":"string","description_kind":"plain","computed":true},"name":{"type":"string","description_kind":"plain","required":true},"spec":{"type":"string","description_kind":"plain","required":true},"status":{"type":"string","description_kind":"plain","computed":true},"user_domains":{"type":["set","string"],"description_kind":"plain","deprecated":true,"computed":true},"variables":{"type":["map","string"],"description_kind":"plain","optional":true}},"block_types":{"canary":{"nesting_mode":"list","block":{"attributes":{"variables":{"type":["map","string"],"description_kind":"plain","optional":true},"weight":{"type":"number","description_kind":"plain","optional":true}},"description_kind":"plain"},"max_items":1},"connectivity":{"nesting_mode":"list","block":{"attributes":{"network_id":{"type":"string","description_kind":"plain","required":true}},"description_kind":"plain"},"max_items":1},"custom_domains":{"nesting_mode":"set","block":{"attributes":{"certificate_id":{"type":"string","description_kind":"plain","required":true},"domain_id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"fqdn":{"type":"string","description_kind":"plain","required":true}},"description_kind":"plain"}},"log_options":{"nesting_mode":"list","block":{"attributes":{"disabled":{"type":"bool","description_kind":"plain","optional":true},"folder_id":{"type":"string","description_kind":"plain","optional":true},"log_group_id":{"type":"string","description_kind":"plain","optional":true},"min_level":{"type":"string","description_kind":"plain","optional":true}},"description_kind":"plain"},"max_items":1},"timeouts":{"nesting_mode":"single","block":{"attributes":{"create":{"type":"string","description_kind":"plain","optional":true},"delete":{"type":"string","description_kind":"plain","optional":true},"update":{"type":"string","description_kind":"plain","optional":true}},"description_kind":"plain"}}},"description_kind":"plain"}},"yandex_audit_trails_trail":{"version":0,"block":{"attributes":{"description":{"type":"string","description_kind":"plain","optional":true},"folder_id":{"type":"string","description_kind":"plain","required":true},"id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"labels":{"type":["map","string"],"description_kind":"plain","optional":true},"name":{"type":"string","description_kind":"plain","required":true},"service_account_id":{"type":"string","description_kind":"plain","required":true},"status":{"type":"string","description_kind":"plain","computed":true},"trail_id":{"type":"string","description_kind":"plain","computed":true}},"block_types":{"data_stream_destination":{"nesting_mode":"list","block":{"attributes":{"database_id":{"type":"string","description_kind":"plain","required":true},"stream_name":{"type":"string","description_kind":"plain","required":true}},"description_kind":"plain"},"max_items":1},"filter":{"nesting_mode":"list","block":{"block_types":{"event_filters":{"nesting_mode":"list","block":{"attributes":{"service":{"type":"string","description_kind":"plain","required":true}},"block_types":{"categories":{"nesting_mode":"list","block":{"attributes":{"plane":{"type":"string","description_kind":"plain","required":true},"type":{"type":"string","description_kind":"plain","required":true}},"description_kind":"plain"},"min_items":1},"path_filter":{"nesting_mode":"list","block":{"block_types":{"any_filter":{"nesting_mode":"list","block":{"attributes":{"resource_id":{"type":"string","description_kind":"plain","required":true},"resource_type":{"type":"string","description_kind":"plain","required":true}},"description_kind":"plain"},"max_items":1},"some_filter":{"nesting_mode":"list","block":{"attributes":{"resource_id":{"type":"string","description_kind":"plain","required":true},"resource_type":{"type":"string","description_kind":"plain","required":true}},"block_types":{"any_filters":{"nesting_mode":"list","block":{"attributes":{"resource_id":{"type":"string","description_kind":"plain","required":true},"resource_type":{"type":"string","description_kind":"plain","required":true}},"description_kind":"plain"},"min_items":1}},"description_kind":"plain"},"max_items":1}},"description_kind":"plain"},"min_items":1,"max_items":1}},"description_kind":"plain"}},"path_filter":{"nesting_mode":"list","block":{"block_types":{"any_filter":{"nesting_mode":"list","block":{"attributes":{"resource_id":{"type":"string","description_kind":"plain","required":true},"resource_type":{"type":"string","description_kind":"plain","required":true}},"description_kind":"plain"},"max_items":1},"some_filter":{"nesting_mode":"list","block":{"attributes":{"resource_id":{"type":"string","description_kind":"plain","required":true},"resource_type":{"type":"string","description_kind":"plain","required":true}},"block_types":{"any_filters":{"nesting_mode":"list","block":{"attributes":{"resource_id":{"type":"string","description_kind":"plain","required":true},"resource_type":{"type":"string","description_kind":"plain","required":true}},"description_kind":"plain"},"min_items":1}},"description_kind":"plain"},"max_items":1}},"description_kind":"plain"},"max_items":1}},"description_kind":"plain"},"min_items":1,"max_items":1},"logging_destination":{"nesting_mode":"list","block":{"attributes":{"log_group_id":{"type":"string","description_kind":"plain","required":true}},"description_kind":"plain"},"max_items":1},"storage_destination":{"nesting_mode":"list","block":{"attributes":{"bucket_name":{"type":"string","description_kind":"plain","required":true},"object_prefix":{"type":"string","description_kind":"plain","optional":true}},"description_kind":"plain"},"max_items":1},"timeouts":{"nesting_mode":"single","block":{"attributes":{"default":{"type":"string","description_kind":"plain","optional":true}},"description_kind":"plain"}}},"description_kind":"plain"}},"yandex_backup_policy":{"version":0,"block":{"attributes":{"archive_name":{"type":"string","description_kind":"plain","optional":true},"cbt":{"type":"string","description_kind":"plain","optional":true},"compression":{"type":"string","description_kind":"plain","optional":true},"created_at":{"type":"string","description_kind":"plain","computed":true},"enabled":{"type":"bool","description_kind":"plain","computed":true},"fast_backup_enabled":{"type":"bool","description_kind":"plain","optional":true},"folder_id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"format":{"type":"string","description_kind":"plain","optional":true},"id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"multi_volume_snapshotting_enabled":{"type":"bool","description_kind":"plain","optional":true},"name":{"type":"string","description_kind":"plain","required":true},"performance_window_enabled":{"type":"bool","description_kind":"plain","optional":true},"preserve_file_security_settings":{"type":"bool","description_kind":"plain","optional":true},"quiesce_snapshotting_enabled":{"type":"bool","description_kind":"plain","optional":true},"silent_mode_enabled":{"type":"bool","description_kind":"plain","optional":true},"splitting_bytes":{"type":"string","description_kind":"plain","optional":true},"updated_at":{"type":"string","description_kind":"plain","computed":true},"vss_provider":{"type":"string","description_kind":"plain","optional":true}},"block_types":{"reattempts":{"nesting_mode":"set","block":{"attributes":{"enabled":{"type":"bool","description_kind":"plain","optional":true},"interval":{"type":"string","description_kind":"plain","optional":true},"max_attempts":{"type":"number","description_kind":"plain","optional":true}},"description_kind":"plain"},"min_items":1,"max_items":1},"retention":{"nesting_mode":"set","block":{"attributes":{"after_backup":{"type":"bool","description_kind":"plain","optional":true}},"block_types":{"rules":{"nesting_mode":"set","block":{"attributes":{"max_age":{"type":"string","description_kind":"plain","optional":true},"max_count":{"type":"number","description_kind":"plain","optional":true},"repeat_period":{"type":["list","string"],"description_kind":"plain","optional":true}},"description_kind":"plain"}}},"description_kind":"plain"},"min_items":1,"max_items":1},"scheduling":{"nesting_mode":"set","block":{"attributes":{"enabled":{"type":"bool","description_kind":"plain","optional":true},"execute_by_interval":{"type":"number","description_kind":"plain","optional":true},"max_parallel_backups":{"type":"number","description_kind":"plain","optional":true},"random_max_delay":{"type":"string","description_kind":"plain","optional":true},"scheme":{"type":"string","description_kind":"plain","optional":true},"weekly_backup_day":{"type":"string","description_kind":"plain","optional":true}},"block_types":{"execute_by_time":{"nesting_mode":"set","block":{"attributes":{"include_last_day_of_month":{"type":"bool","description_kind":"plain","optional":true},"monthdays":{"type":["list","number"],"description_kind":"plain","optional":true},"months":{"type":["list","number"],"description_kind":"plain","optional":true},"repeat_at":{"type":["list","string"],"description_kind":"plain","optional":true},"repeat_every":{"type":"string","description_kind":"plain","optional":true},"type":{"type":"string","description_kind":"plain","required":true},"weekdays":{"type":["list","string"],"description_kind":"plain","optional":true}},"description_kind":"plain"}}},"description_kind":"plain"},"min_items":1,"max_items":1},"timeouts":{"nesting_mode":"single","block":{"attributes":{"create":{"type":"string","description_kind":"plain","optional":true},"delete":{"type":"string","description_kind":"plain","optional":true},"read":{"type":"string","description_kind":"plain","optional":true},"update":{"type":"string","description_kind":"plain","optional":true}},"description_kind":"plain"}},"vm_snapshot_reattempts":{"nesting_mode":"set","block":{"attributes":{"enabled":{"type":"bool","description_kind":"plain","optional":true},"interval":{"type":"string","description_kind":"plain","optional":true},"max_attempts":{"type":"number","description_kind":"plain","optional":true}},"description_kind":"plain"},"min_items":1,"max_items":1}},"description_kind":"plain"}},"yandex_billing_cloud_binding":{"version":0,"block":{"attributes":{"billing_account_id":{"type":"string","description_kind":"plain","required":true},"cloud_id":{"type":"string","description_kind":"plain","required":true},"id":{"type":"string","description":"Service generated identifier for the thing.","description_kind":"markdown","computed":true}},"description_kind":"plain"}},"yandex_cdn_origin_group":{"version":0,"block":{"attributes":{"folder_id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"name":{"type":"string","description_kind":"plain","required":true},"use_next":{"type":"bool","description_kind":"plain","optional":true}},"block_types":{"origin":{"nesting_mode":"set","block":{"attributes":{"backup":{"type":"bool","description_kind":"plain","optional":true},"enabled":{"type":"bool","description_kind":"plain","optional":true},"origin_group_id":{"type":"number","description_kind":"plain","computed":true},"source":{"type":"string","description_kind":"plain","required":true}},"description_kind":"plain"},"min_items":1},"timeouts":{"nesting_mode":"single","block":{"attributes":{"create":{"type":"string","description_kind":"plain","optional":true},"delete":{"type":"string","description_kind":"plain","optional":true},"update":{"type":"string","description_kind":"plain","optional":true}},"description_kind":"plain"}}},"description_kind":"plain"}},"yandex_cdn_resource":{"version":0,"block":{"attributes":{"active":{"type":"bool","description_kind":"plain","optional":true},"cname":{"type":"string","description_kind":"plain","optional":true,"computed":true},"created_at":{"type":"string","description_kind":"plain","computed":true},"folder_id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"origin_group_id":{"type":"number","description_kind":"plain","optional":true},"origin_group_name":{"type":"string","description_kind":"plain","optional":true},"origin_protocol":{"type":"string","description_kind":"plain","optional":true},"provider_cname":{"type":"string","description_kind":"plain","computed":true},"secondary_hostnames":{"type":["set","string"],"description_kind":"plain","optional":true},"updated_at":{"type":"string","description_kind":"plain","optional":true,"computed":true}},"block_types":{"options":{"nesting_mode":"list","block":{"attributes":{"allowed_http_methods":{"type":["list","string"],"description_kind":"plain","optional":true,"computed":true},"browser_cache_settings":{"type":"number","description_kind":"plain","optional":true,"computed":true},"cache_http_headers":{"type":["list","string"],"description_kind":"plain","optional":true,"computed":true},"cors":{"type":["list","string"],"description_kind":"plain","optional":true,"computed":true},"custom_host_header":{"type":"string","description_kind":"plain","optional":true,"computed":true},"custom_server_name":{"type":"string","description_kind":"plain","optional":true,"computed":true},"disable_cache":{"type":"bool","description_kind":"plain","optional":true,"computed":true},"disable_proxy_force_ranges":{"type":"bool","description_kind":"plain","optional":true,"computed":true},"edge_cache_settings":{"type":"number","description_kind":"plain","optional":true,"computed":true},"enable_ip_url_signing":{"type":"bool","description_kind":"plain","optional":true,"computed":true},"fetched_compressed":{"type":"bool","description_kind":"plain","optional":true,"computed":true},"forward_host_header":{"type":"bool","description_kind":"plain","optional":true,"computed":true},"gzip_on":{"type":"bool","description_kind":"plain","optional":true,"computed":true},"ignore_cookie":{"type":"bool","description_kind":"plain","optional":true,"computed":true},"ignore_query_params":{"type":"bool","description_kind":"plain","optional":true,"computed":true},"proxy_cache_methods_set":{"type":"bool","description_kind":"plain","optional":true,"computed":true},"query_params_blacklist":{"type":["list","string"],"description_kind":"plain","optional":true,"computed":true},"query_params_whitelist":{"type":["list","string"],"description_kind":"plain","optional":true,"computed":true},"redirect_http_to_https":{"type":"bool","description_kind":"plain","optional":true,"computed":true},"redirect_https_to_http":{"type":"bool","description_kind":"plain","optional":true,"computed":true},"secure_key":{"type":"string","description_kind":"plain","optional":true,"computed":true},"slice":{"type":"bool","description_kind":"plain","optional":true,"computed":true},"static_request_headers":{"type":["map","string"],"description_kind":"plain","optional":true,"computed":true},"static_response_headers":{"type":["map","string"],"description_kind":"plain","optional":true,"computed":true}},"block_types":{"ip_address_acl":{"nesting_mode":"list","block":{"attributes":{"excepted_values":{"type":["list","string"],"description_kind":"plain","optional":true,"computed":true},"policy_type":{"type":"string","description_kind":"plain","optional":true,"computed":true}},"description_kind":"plain"},"max_items":1}},"description_kind":"plain"},"max_items":1},"ssl_certificate":{"nesting_mode":"set","block":{"attributes":{"certificate_manager_id":{"type":"string","description_kind":"plain","optional":true},"status":{"type":"string","description_kind":"plain","computed":true},"type":{"type":"string","description_kind":"plain","required":true}},"description_kind":"plain"},"max_items":1},"timeouts":{"nesting_mode":"single","block":{"attributes":{"create":{"type":"string","description_kind":"plain","optional":true},"delete":{"type":"string","description_kind":"plain","optional":true},"update":{"type":"string","description_kind":"plain","optional":true}},"description_kind":"plain"}}},"description_kind":"plain"}},"yandex_cm_certificate":{"version":1,"block":{"attributes":{"challenges":{"type":["list",["object",{"created_at":"string","dns_name":"string","dns_type":"string","dns_value":"string","domain":"string","http_content":"string","http_url":"string","message":"string","type":"string","updated_at":"string"}]],"description_kind":"plain","computed":true},"created_at":{"type":"string","description_kind":"plain","computed":true},"deletion_protection":{"type":"bool","description_kind":"plain","optional":true},"description":{"type":"string","description_kind":"plain","optional":true},"domains":{"type":["list","string"],"description_kind":"plain","optional":true},"folder_id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"issued_at":{"type":"string","description_kind":"plain","computed":true},"issuer":{"type":"string","description_kind":"plain","computed":true},"labels":{"type":["map","string"],"description_kind":"plain","optional":true},"name":{"type":"string","description_kind":"plain","required":true},"not_after":{"type":"string","description_kind":"plain","computed":true},"not_before":{"type":"string","description_kind":"plain","computed":true},"serial":{"type":"string","description_kind":"plain","computed":true},"status":{"type":"string","description_kind":"plain","computed":true},"subject":{"type":"string","description_kind":"plain","computed":true},"type":{"type":"string","description_kind":"plain","computed":true},"updated_at":{"type":"string","description_kind":"plain","computed":true}},"block_types":{"managed":{"nesting_mode":"list","block":{"attributes":{"challenge_count":{"type":"number","description_kind":"plain","optional":true},"challenge_type":{"type":"string","description_kind":"plain","required":true}},"description_kind":"plain"},"max_items":1},"self_managed":{"nesting_mode":"list","block":{"attributes":{"certificate":{"type":"string","description_kind":"plain","required":true},"private_key":{"type":"string","description_kind":"plain","optional":true,"sensitive":true}},"block_types":{"private_key_lockbox_secret":{"nesting_mode":"list","block":{"attributes":{"id":{"type":"string","description_kind":"plain","required":true},"key":{"type":"string","description_kind":"plain","required":true}},"description_kind":"plain"},"max_items":1}},"description_kind":"plain"},"max_items":1},"timeouts":{"nesting_mode":"single","block":{"attributes":{"create":{"type":"string","description_kind":"plain","optional":true},"delete":{"type":"string","description_kind":"plain","optional":true},"read":{"type":"string","description_kind":"plain","optional":true},"update":{"type":"string","description_kind":"plain","optional":true}},"description_kind":"plain"}}},"description_kind":"plain"}},"yandex_compute_disk":{"version":0,"block":{"attributes":{"allow_recreate":{"type":"bool","description_kind":"plain","optional":true},"block_size":{"type":"number","description_kind":"plain","optional":true},"created_at":{"type":"string","description_kind":"plain","computed":true},"description":{"type":"string","description_kind":"plain","optional":true},"folder_id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"image_id":{"type":"string","description_kind":"plain","optional":true},"labels":{"type":["map","string"],"description_kind":"plain","optional":true},"name":{"type":"string","description_kind":"plain","optional":true},"product_ids":{"type":["list","string"],"description_kind":"plain","computed":true},"size":{"type":"number","description_kind":"plain","optional":true},"snapshot_id":{"type":"string","description_kind":"plain","optional":true},"status":{"type":"string","description_kind":"plain","computed":true},"type":{"type":"string","description_kind":"plain","optional":true},"zone":{"type":"string","description_kind":"plain","optional":true,"computed":true}},"block_types":{"disk_placement_policy":{"nesting_mode":"list","block":{"attributes":{"disk_placement_group_id":{"type":"string","description_kind":"plain","required":true}},"description_kind":"plain"},"max_items":1},"timeouts":{"nesting_mode":"single","block":{"attributes":{"create":{"type":"string","description_kind":"plain","optional":true},"delete":{"type":"string","description_kind":"plain","optional":true},"update":{"type":"string","description_kind":"plain","optional":true}},"description_kind":"plain"}}},"description_kind":"plain"}},"yandex_compute_disk_iam_binding":{"version":0,"block":{"attributes":{"disk_id":{"type":"string","description_kind":"plain","required":true},"members":{"type":["set","string"],"description_kind":"plain","required":true},"role":{"type":"string","description_kind":"plain","required":true}},"description_kind":"plain"}},"yandex_compute_disk_placement_group":{"version":0,"block":{"attributes":{"created_at":{"type":"string","description_kind":"plain","computed":true},"description":{"type":"string","description_kind":"plain","optional":true},"folder_id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"labels":{"type":["map","string"],"description_kind":"plain","optional":true},"name":{"type":"string","description_kind":"plain","optional":true},"status":{"type":"string","description_kind":"plain","computed":true},"zone":{"type":"string","description_kind":"plain","optional":true}},"block_types":{"timeouts":{"nesting_mode":"single","block":{"attributes":{"create":{"type":"string","description_kind":"plain","optional":true},"delete":{"type":"string","description_kind":"plain","optional":true},"update":{"type":"string","description_kind":"plain","optional":true}},"description_kind":"plain"}}},"description_kind":"plain"}},"yandex_compute_disk_placement_group_iam_binding":{"version":0,"block":{"attributes":{"disk_placement_group_id":{"type":"string","description_kind":"plain","required":true},"members":{"type":["set","string"],"description_kind":"plain","required":true},"role":{"type":"string","description_kind":"plain","required":true}},"description_kind":"plain"}},"yandex_compute_filesystem":{"version":0,"block":{"attributes":{"block_size":{"type":"number","description_kind":"plain","optional":true},"created_at":{"type":"string","description_kind":"plain","computed":true},"description":{"type":"string","description_kind":"plain","optional":true},"folder_id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"labels":{"type":["map","string"],"description_kind":"plain","optional":true},"name":{"type":"string","description_kind":"plain","optional":true},"size":{"type":"number","description_kind":"plain","optional":true},"status":{"type":"string","description_kind":"plain","computed":true},"type":{"type":"string","description_kind":"plain","optional":true},"zone":{"type":"string","description_kind":"plain","optional":true,"computed":true}},"block_types":{"timeouts":{"nesting_mode":"single","block":{"attributes":{"create":{"type":"string","description_kind":"plain","optional":true},"delete":{"type":"string","description_kind":"plain","optional":true},"update":{"type":"string","description_kind":"plain","optional":true}},"description_kind":"plain"}}},"description_kind":"plain"}},"yandex_compute_filesystem_iam_binding":{"version":0,"block":{"attributes":{"filesystem_id":{"type":"string","description_kind":"plain","required":true},"members":{"type":["set","string"],"description_kind":"plain","required":true},"role":{"type":"string","description_kind":"plain","required":true}},"description_kind":"plain"}},"yandex_compute_gpu_cluster":{"version":0,"block":{"attributes":{"created_at":{"type":"string","description_kind":"plain","computed":true},"description":{"type":"string","description_kind":"plain","optional":true},"folder_id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"interconnect_type":{"type":"string","description_kind":"plain","optional":true},"labels":{"type":["map","string"],"description_kind":"plain","optional":true},"name":{"type":"string","description_kind":"plain","optional":true},"status":{"type":"string","description_kind":"plain","computed":true},"zone":{"type":"string","description_kind":"plain","optional":true,"computed":true}},"block_types":{"timeouts":{"nesting_mode":"single","block":{"attributes":{"create":{"type":"string","description_kind":"plain","optional":true},"delete":{"type":"string","description_kind":"plain","optional":true},"update":{"type":"string","description_kind":"plain","optional":true}},"description_kind":"plain"}}},"description_kind":"plain"}},"yandex_compute_gpu_cluster_iam_binding":{"version":0,"block":{"attributes":{"gpu_cluster_id":{"type":"string","description_kind":"plain","required":true},"members":{"type":["set","string"],"description_kind":"plain","required":true},"role":{"type":"string","description_kind":"plain","required":true}},"description_kind":"plain"}},"yandex_compute_image":{"version":0,"block":{"attributes":{"created_at":{"type":"string","description_kind":"plain","computed":true},"description":{"type":"string","description_kind":"plain","optional":true},"family":{"type":"string","description_kind":"plain","optional":true},"folder_id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"labels":{"type":["map","string"],"description_kind":"plain","optional":true},"min_disk_size":{"type":"number","description_kind":"plain","optional":true,"computed":true},"name":{"type":"string","description_kind":"plain","optional":true},"os_type":{"type":"string","description_kind":"plain","optional":true,"computed":true},"pooled":{"type":"bool","description_kind":"plain","optional":true,"computed":true},"product_ids":{"type":["set","string"],"description_kind":"plain","optional":true,"computed":true},"size":{"type":"number","description_kind":"plain","computed":true},"source_disk":{"type":"string","description_kind":"plain","optional":true,"computed":true},"source_family":{"type":"string","description_kind":"plain","optional":true,"computed":true},"source_image":{"type":"string","description_kind":"plain","optional":true,"computed":true},"source_snapshot":{"type":"string","description_kind":"plain","optional":true,"computed":true},"source_url":{"type":"string","description_kind":"plain","optional":true,"computed":true},"status":{"type":"string","description_kind":"plain","computed":true}},"block_types":{"timeouts":{"nesting_mode":"single","block":{"attributes":{"create":{"type":"string","description_kind":"plain","optional":true},"delete":{"type":"string","description_kind":"plain","optional":true},"update":{"type":"string","description_kind":"plain","optional":true}},"description_kind":"plain"}}},"description_kind":"plain"}},"yandex_compute_image_iam_binding":{"version":0,"block":{"attributes":{"image_id":{"type":"string","description_kind":"plain","required":true},"members":{"type":["set","string"],"description_kind":"plain","required":true},"role":{"type":"string","description_kind":"plain","required":true}},"description_kind":"plain"}},"yandex_compute_instance":{"version":1,"block":{"attributes":{"allow_recreate":{"type":"bool","description_kind":"plain","optional":true},"allow_stopping_for_update":{"type":"bool","description_kind":"plain","optional":true},"created_at":{"type":"string","description_kind":"plain","computed":true},"description":{"type":"string","description_kind":"plain","optional":true},"folder_id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"fqdn":{"type":"string","description_kind":"plain","computed":true},"gpu_cluster_id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"hostname":{"type":"string","description_kind":"plain","optional":true,"computed":true},"id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"labels":{"type":["map","string"],"description_kind":"plain","optional":true},"maintenance_grace_period":{"type":"string","description_kind":"plain","optional":true,"computed":true},"maintenance_policy":{"type":"string","description_kind":"plain","optional":true,"computed":true},"metadata":{"type":["map","string"],"description_kind":"plain","optional":true},"name":{"type":"string","description_kind":"plain","optional":true},"network_acceleration_type":{"type":"string","description_kind":"plain","optional":true},"platform_id":{"type":"string","description_kind":"plain","optional":true},"service_account_id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"status":{"type":"string","description_kind":"plain","computed":true},"zone":{"type":"string","description_kind":"plain","optional":true,"computed":true}},"block_types":{"boot_disk":{"nesting_mode":"list","block":{"attributes":{"auto_delete":{"type":"bool","description_kind":"plain","optional":true},"device_name":{"type":"string","description_kind":"plain","optional":true,"computed":true},"disk_id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"mode":{"type":"string","description_kind":"plain","optional":true,"computed":true}},"block_types":{"initialize_params":{"nesting_mode":"list","block":{"attributes":{"block_size":{"type":"number","description_kind":"plain","optional":true,"computed":true},"description":{"type":"string","description_kind":"plain","optional":true,"computed":true},"image_id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"name":{"type":"string","description_kind":"plain","optional":true,"computed":true},"size":{"type":"number","description_kind":"plain","optional":true,"computed":true},"snapshot_id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"type":{"type":"string","description_kind":"plain","optional":true}},"description_kind":"plain"},"max_items":1}},"description_kind":"plain"},"min_items":1,"max_items":1},"filesystem":{"nesting_mode":"set","block":{"attributes":{"device_name":{"type":"string","description_kind":"plain","optional":true,"computed":true},"filesystem_id":{"type":"string","description_kind":"plain","required":true},"mode":{"type":"string","description_kind":"plain","optional":true}},"description_kind":"plain"}},"local_disk":{"nesting_mode":"list","block":{"attributes":{"device_name":{"type":"string","description_kind":"plain","computed":true},"size_bytes":{"type":"number","description_kind":"plain","required":true}},"description_kind":"plain"}},"metadata_options":{"nesting_mode":"list","block":{"attributes":{"aws_v1_http_endpoint":{"type":"number","description_kind":"plain","optional":true,"computed":true},"aws_v1_http_token":{"type":"number","description_kind":"plain","optional":true,"computed":true},"gce_http_endpoint":{"type":"number","description_kind":"plain","optional":true,"computed":true},"gce_http_token":{"type":"number","description_kind":"plain","optional":true,"computed":true}},"description_kind":"plain"},"max_items":1},"network_interface":{"nesting_mode":"list","block":{"attributes":{"index":{"type":"number","description_kind":"plain","optional":true,"computed":true},"ip_address":{"type":"string","description_kind":"plain","optional":true,"computed":true},"ipv4":{"type":"bool","description_kind":"plain","optional":true},"ipv6":{"type":"bool","description_kind":"plain","optional":true,"computed":true},"ipv6_address":{"type":"string","description_kind":"plain","optional":true,"computed":true},"mac_address":{"type":"string","description_kind":"plain","computed":true},"nat":{"type":"bool","description_kind":"plain","optional":true},"nat_ip_address":{"type":"string","description_kind":"plain","optional":true,"computed":true},"nat_ip_version":{"type":"string","description_kind":"plain","computed":true},"security_group_ids":{"type":["set","string"],"description_kind":"plain","optional":true,"computed":true},"subnet_id":{"type":"string","description_kind":"plain","required":true}},"block_types":{"dns_record":{"nesting_mode":"list","block":{"attributes":{"dns_zone_id":{"type":"string","description_kind":"plain","optional":true},"fqdn":{"type":"string","description_kind":"plain","required":true},"ptr":{"type":"bool","description_kind":"plain","optional":true},"ttl":{"type":"number","description_kind":"plain","optional":true}},"description_kind":"plain"}},"ipv6_dns_record":{"nesting_mode":"list","block":{"attributes":{"dns_zone_id":{"type":"string","description_kind":"plain","optional":true},"fqdn":{"type":"string","description_kind":"plain","required":true},"ptr":{"type":"bool","description_kind":"plain","optional":true},"ttl":{"type":"number","description_kind":"plain","optional":true}},"description_kind":"plain"}},"nat_dns_record":{"nesting_mode":"list","block":{"attributes":{"dns_zone_id":{"type":"string","description_kind":"plain","optional":true},"fqdn":{"type":"string","description_kind":"plain","required":true},"ptr":{"type":"bool","description_kind":"plain","optional":true},"ttl":{"type":"number","description_kind":"plain","optional":true}},"description_kind":"plain"}}},"description_kind":"plain"},"min_items":1},"placement_policy":{"nesting_mode":"list","block":{"attributes":{"host_affinity_rules":{"type":["list",["object",{"key":"string","op":"string","values":["list","string"]}]],"description_kind":"plain","optional":true,"computed":true},"placement_group_id":{"type":"string","description_kind":"plain","optional":true},"placement_group_partition":{"type":"number","description_kind":"plain","optional":true}},"description_kind":"plain"},"max_items":1},"resources":{"nesting_mode":"list","block":{"attributes":{"core_fraction":{"type":"number","description_kind":"plain","optional":true},"cores":{"type":"number","description_kind":"plain","required":true},"gpus":{"type":"number","description_kind":"plain","optional":true},"memory":{"type":"number","description_kind":"plain","required":true}},"description_kind":"plain"},"min_items":1,"max_items":1},"scheduling_policy":{"nesting_mode":"list","block":{"attributes":{"preemptible":{"type":"bool","description_kind":"plain","optional":true}},"description_kind":"plain"},"max_items":1},"secondary_disk":{"nesting_mode":"set","block":{"attributes":{"auto_delete":{"type":"bool","description_kind":"plain","optional":true},"device_name":{"type":"string","description_kind":"plain","optional":true,"computed":true},"disk_id":{"type":"string","description_kind":"plain","required":true},"mode":{"type":"string","description_kind":"plain","optional":true}},"description_kind":"plain"}},"timeouts":{"nesting_mode":"single","block":{"attributes":{"create":{"type":"string","description_kind":"plain","optional":true},"delete":{"type":"string","description_kind":"plain","optional":true},"update":{"type":"string","description_kind":"plain","optional":true}},"description_kind":"plain"}}},"description_kind":"plain"}},"yandex_compute_instance_group":{"version":0,"block":{"attributes":{"created_at":{"type":"string","description_kind":"plain","computed":true},"deletion_protection":{"type":"bool","description_kind":"plain","optional":true},"description":{"type":"string","description_kind":"plain","optional":true},"folder_id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"instances":{"type":["list",["object",{"fqdn":"string","instance_id":"string","instance_tag":"string","name":"string","network_interface":["list",["object",{"index":"number","ip_address":"string","ipv4":"bool","ipv6":"bool","ipv6_address":"string","mac_address":"string","nat":"bool","nat_ip_address":"string","nat_ip_version":"string","subnet_id":"string"}]],"status":"string","status_changed_at":"string","status_message":"string","zone_id":"string"}]],"description_kind":"plain","computed":true},"labels":{"type":["map","string"],"description_kind":"plain","optional":true},"max_checking_health_duration":{"type":"number","description_kind":"plain","optional":true},"name":{"type":"string","description_kind":"plain","optional":true},"service_account_id":{"type":"string","description_kind":"plain","required":true},"status":{"type":"string","description_kind":"plain","computed":true},"variables":{"type":["map","string"],"description_kind":"plain","optional":true}},"block_types":{"allocation_policy":{"nesting_mode":"list","block":{"attributes":{"zones":{"type":["set","string"],"description_kind":"plain","required":true}},"block_types":{"instance_tags_pool":{"nesting_mode":"list","block":{"attributes":{"tags":{"type":["list","string"],"description_kind":"plain","required":true},"zone":{"type":"string","description_kind":"plain","required":true}},"description_kind":"plain"}}},"description_kind":"plain"},"min_items":1,"max_items":1},"application_load_balancer":{"nesting_mode":"list","block":{"attributes":{"ignore_health_checks":{"type":"bool","description_kind":"plain","optional":true},"max_opening_traffic_duration":{"type":"number","description_kind":"plain","optional":true},"status_message":{"type":"string","description_kind":"plain","computed":true},"target_group_description":{"type":"string","description_kind":"plain","optional":true},"target_group_id":{"type":"string","description_kind":"plain","computed":true},"target_group_labels":{"type":["map","string"],"description_kind":"plain","optional":true},"target_group_name":{"type":"string","description_kind":"plain","optional":true}},"description_kind":"plain"},"max_items":1},"deploy_policy":{"nesting_mode":"list","block":{"attributes":{"max_creating":{"type":"number","description_kind":"plain","optional":true},"max_deleting":{"type":"number","description_kind":"plain","optional":true},"max_expansion":{"type":"number","description_kind":"plain","required":true},"max_unavailable":{"type":"number","description_kind":"plain","required":true},"startup_duration":{"type":"number","description_kind":"plain","optional":true},"strategy":{"type":"string","description_kind":"plain","optional":true,"computed":true}},"description_kind":"plain"},"min_items":1,"max_items":1},"health_check":{"nesting_mode":"list","block":{"attributes":{"healthy_threshold":{"type":"number","description_kind":"plain","optional":true},"interval":{"type":"number","description_kind":"plain","optional":true},"timeout":{"type":"number","description_kind":"plain","optional":true},"unhealthy_threshold":{"type":"number","description_kind":"plain","optional":true}},"block_types":{"http_options":{"nesting_mode":"list","block":{"attributes":{"path":{"type":"string","description_kind":"plain","required":true},"port":{"type":"number","description_kind":"plain","required":true}},"description_kind":"plain"},"max_items":1},"tcp_options":{"nesting_mode":"list","block":{"attributes":{"port":{"type":"number","description_kind":"plain","required":true}},"description_kind":"plain"},"max_items":1}},"description_kind":"plain"}},"instance_template":{"nesting_mode":"list","block":{"attributes":{"description":{"type":"string","description_kind":"plain","optional":true},"hostname":{"type":"string","description_kind":"plain","optional":true},"labels":{"type":["map","string"],"description_kind":"plain","optional":true,"computed":true},"metadata":{"type":["map","string"],"description_kind":"plain","optional":true,"computed":true},"name":{"type":"string","description_kind":"plain","optional":true},"platform_id":{"type":"string","description_kind":"plain","optional":true},"service_account_id":{"type":"string","description_kind":"plain","optional":true}},"block_types":{"boot_disk":{"nesting_mode":"list","block":{"attributes":{"device_name":{"type":"string","description_kind":"plain","optional":true,"computed":true},"disk_id":{"type":"string","description_kind":"plain","optional":true},"mode":{"type":"string","description_kind":"plain","optional":true},"name":{"type":"string","description_kind":"plain","optional":true}},"block_types":{"initialize_params":{"nesting_mode":"list","block":{"attributes":{"description":{"type":"string","description_kind":"plain","optional":true},"image_id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"size":{"type":"number","description_kind":"plain","optional":true,"computed":true},"snapshot_id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"type":{"type":"string","description_kind":"plain","optional":true}},"description_kind":"plain"},"max_items":1}},"description_kind":"plain"},"min_items":1,"max_items":1},"filesystem":{"nesting_mode":"set","block":{"attributes":{"device_name":{"type":"string","description_kind":"plain","optional":true},"filesystem_id":{"type":"string","description_kind":"plain","required":true},"mode":{"type":"string","description_kind":"plain","optional":true}},"description_kind":"plain"}},"metadata_options":{"nesting_mode":"list","block":{"attributes":{"aws_v1_http_endpoint":{"type":"number","description_kind":"plain","optional":true,"computed":true},"aws_v1_http_token":{"type":"number","description_kind":"plain","optional":true,"computed":true},"gce_http_endpoint":{"type":"number","description_kind":"plain","optional":true,"computed":true},"gce_http_token":{"type":"number","description_kind":"plain","optional":true,"computed":true}},"description_kind":"plain"},"max_items":1},"network_interface":{"nesting_mode":"list","block":{"attributes":{"ip_address":{"type":"string","description_kind":"plain","optional":true,"computed":true},"ipv4":{"type":"bool","description_kind":"plain","optional":true},"ipv6":{"type":"bool","description_kind":"plain","optional":true,"computed":true},"ipv6_address":{"type":"string","description_kind":"plain","optional":true,"computed":true},"nat":{"type":"bool","description_kind":"plain","optional":true,"computed":true},"nat_ip_address":{"type":"string","description_kind":"plain","optional":true},"network_id":{"type":"string","description_kind":"plain","optional":true},"security_group_ids":{"type":["set","string"],"description_kind":"plain","optional":true},"subnet_ids":{"type":["set","string"],"description_kind":"plain","optional":true}},"block_types":{"dns_record":{"nesting_mode":"list","block":{"attributes":{"dns_zone_id":{"type":"string","description_kind":"plain","optional":true},"fqdn":{"type":"string","description_kind":"plain","required":true},"ptr":{"type":"bool","description_kind":"plain","optional":true,"computed":true},"ttl":{"type":"number","description_kind":"plain","optional":true}},"description_kind":"plain"}},"ipv6_dns_record":{"nesting_mode":"list","block":{"attributes":{"dns_zone_id":{"type":"string","description_kind":"plain","optional":true},"fqdn":{"type":"string","description_kind":"plain","required":true},"ptr":{"type":"bool","description_kind":"plain","optional":true,"computed":true},"ttl":{"type":"number","description_kind":"plain","optional":true}},"description_kind":"plain"}},"nat_dns_record":{"nesting_mode":"list","block":{"attributes":{"dns_zone_id":{"type":"string","description_kind":"plain","optional":true},"fqdn":{"type":"string","description_kind":"plain","required":true},"ptr":{"type":"bool","description_kind":"plain","optional":true,"computed":true},"ttl":{"type":"number","description_kind":"plain","optional":true}},"description_kind":"plain"}}},"description_kind":"plain"},"min_items":1},"network_settings":{"nesting_mode":"list","block":{"attributes":{"type":{"type":"string","description_kind":"plain","optional":true}},"description_kind":"plain"}},"placement_policy":{"nesting_mode":"list","block":{"attributes":{"placement_group_id":{"type":"string","description_kind":"plain","required":true}},"description_kind":"plain"},"max_items":1},"resources":{"nesting_mode":"list","block":{"attributes":{"core_fraction":{"type":"number","description_kind":"plain","optional":true},"cores":{"type":"number","description_kind":"plain","required":true},"gpus":{"type":"number","description_kind":"plain","optional":true},"memory":{"type":"number","description_kind":"plain","required":true}},"description_kind":"plain"},"min_items":1,"max_items":1},"scheduling_policy":{"nesting_mode":"list","block":{"attributes":{"preemptible":{"type":"bool","description_kind":"plain","optional":true}},"description_kind":"plain"},"max_items":1},"secondary_disk":{"nesting_mode":"list","block":{"attributes":{"device_name":{"type":"string","description_kind":"plain","optional":true},"disk_id":{"type":"string","description_kind":"plain","optional":true},"mode":{"type":"string","description_kind":"plain","optional":true},"name":{"type":"string","description_kind":"plain","optional":true}},"block_types":{"initialize_params":{"nesting_mode":"list","block":{"attributes":{"description":{"type":"string","description_kind":"plain","optional":true},"image_id":{"type":"string","description_kind":"plain","optional":true},"size":{"type":"number","description_kind":"plain","optional":true},"snapshot_id":{"type":"string","description_kind":"plain","optional":true},"type":{"type":"string","description_kind":"plain","optional":true}},"description_kind":"plain"},"max_items":1}},"description_kind":"plain"}}},"description_kind":"plain"},"min_items":1,"max_items":1},"load_balancer":{"nesting_mode":"list","block":{"attributes":{"ignore_health_checks":{"type":"bool","description_kind":"plain","optional":true},"max_opening_traffic_duration":{"type":"number","description_kind":"plain","optional":true},"status_message":{"type":"string","description_kind":"plain","computed":true},"target_group_description":{"type":"string","description_kind":"plain","optional":true},"target_group_id":{"type":"string","description_kind":"plain","computed":true},"target_group_labels":{"type":["map","string"],"description_kind":"plain","optional":true},"target_group_name":{"type":"string","description_kind":"plain","optional":true}},"description_kind":"plain"},"max_items":1},"scale_policy":{"nesting_mode":"list","block":{"block_types":{"auto_scale":{"nesting_mode":"list","block":{"attributes":{"cpu_utilization_target":{"type":"number","description_kind":"plain","optional":true},"initial_size":{"type":"number","description_kind":"plain","required":true},"max_size":{"type":"number","description_kind":"plain","optional":true},"measurement_duration":{"type":"number","description_kind":"plain","required":true},"min_zone_size":{"type":"number","description_kind":"plain","optional":true},"stabilization_duration":{"type":"number","description_kind":"plain","optional":true,"computed":true},"warmup_duration":{"type":"number","description_kind":"plain","optional":true,"computed":true}},"block_types":{"custom_rule":{"nesting_mode":"list","block":{"attributes":{"folder_id":{"type":"string","description_kind":"plain","optional":true},"labels":{"type":["map","string"],"description_kind":"plain","optional":true},"metric_name":{"type":"string","description_kind":"plain","required":true},"metric_type":{"type":"string","description_kind":"plain","required":true},"rule_type":{"type":"string","description_kind":"plain","required":true},"service":{"type":"string","description_kind":"plain","optional":true},"target":{"type":"number","description_kind":"plain","required":true}},"description_kind":"plain"}}},"description_kind":"plain"},"max_items":1},"fixed_scale":{"nesting_mode":"list","block":{"attributes":{"size":{"type":"number","description_kind":"plain","required":true}},"description_kind":"plain"},"max_items":1},"test_auto_scale":{"nesting_mode":"list","block":{"attributes":{"cpu_utilization_target":{"type":"number","description_kind":"plain","optional":true},"initial_size":{"type":"number","description_kind":"plain","required":true},"max_size":{"type":"number","description_kind":"plain","optional":true},"measurement_duration":{"type":"number","description_kind":"plain","required":true},"min_zone_size":{"type":"number","description_kind":"plain","optional":true},"stabilization_duration":{"type":"number","description_kind":"plain","optional":true,"computed":true},"warmup_duration":{"type":"number","description_kind":"plain","optional":true,"computed":true}},"block_types":{"custom_rule":{"nesting_mode":"list","block":{"attributes":{"folder_id":{"type":"string","description_kind":"plain","optional":true},"labels":{"type":["map","string"],"description_kind":"plain","optional":true},"metric_name":{"type":"string","description_kind":"plain","required":true},"metric_type":{"type":"string","description_kind":"plain","required":true},"rule_type":{"type":"string","description_kind":"plain","required":true},"service":{"type":"string","description_kind":"plain","optional":true},"target":{"type":"number","description_kind":"plain","required":true}},"description_kind":"plain"}}},"description_kind":"plain"},"max_items":1}},"description_kind":"plain"},"min_items":1,"max_items":1},"timeouts":{"nesting_mode":"single","block":{"attributes":{"create":{"type":"string","description_kind":"plain","optional":true},"delete":{"type":"string","description_kind":"plain","optional":true},"update":{"type":"string","description_kind":"plain","optional":true}},"description_kind":"plain"}}},"description_kind":"plain"}},"yandex_compute_instance_iam_binding":{"version":0,"block":{"attributes":{"instance_id":{"type":"string","description_kind":"plain","required":true},"members":{"type":["set","string"],"description_kind":"plain","required":true},"role":{"type":"string","description_kind":"plain","required":true}},"description_kind":"plain"}},"yandex_compute_placement_group":{"version":1,"block":{"attributes":{"created_at":{"type":"string","description_kind":"plain","computed":true},"description":{"type":"string","description_kind":"plain","optional":true},"folder_id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"labels":{"type":["map","string"],"description_kind":"plain","optional":true},"name":{"type":"string","description_kind":"plain","optional":true},"placement_strategy_partitions":{"type":"number","description_kind":"plain","optional":true},"placement_strategy_spread":{"type":"bool","description_kind":"plain","optional":true}},"block_types":{"timeouts":{"nesting_mode":"single","block":{"attributes":{"create":{"type":"string","description_kind":"plain","optional":true},"delete":{"type":"string","description_kind":"plain","optional":true},"update":{"type":"string","description_kind":"plain","optional":true}},"description_kind":"plain"}}},"description_kind":"plain"}},"yandex_compute_placement_group_iam_binding":{"version":0,"block":{"attributes":{"members":{"type":["set","string"],"description_kind":"plain","required":true},"placement_group_id":{"type":"string","description_kind":"plain","required":true},"role":{"type":"string","description_kind":"plain","required":true}},"description_kind":"plain"}},"yandex_compute_snapshot":{"version":0,"block":{"attributes":{"created_at":{"type":"string","description_kind":"plain","computed":true},"description":{"type":"string","description_kind":"plain","optional":true},"disk_size":{"type":"number","description_kind":"plain","computed":true},"folder_id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"labels":{"type":["map","string"],"description_kind":"plain","optional":true},"name":{"type":"string","description_kind":"plain","optional":true},"source_disk_id":{"type":"string","description_kind":"plain","required":true},"storage_size":{"type":"number","description_kind":"plain","computed":true}},"block_types":{"timeouts":{"nesting_mode":"single","block":{"attributes":{"create":{"type":"string","description_kind":"plain","optional":true},"delete":{"type":"string","description_kind":"plain","optional":true},"update":{"type":"string","description_kind":"plain","optional":true}},"description_kind":"plain"}}},"description_kind":"plain"}},"yandex_compute_snapshot_iam_binding":{"version":0,"block":{"attributes":{"members":{"type":["set","string"],"description_kind":"plain","required":true},"role":{"type":"string","description_kind":"plain","required":true},"snapshot_id":{"type":"string","description_kind":"plain","required":true}},"description_kind":"plain"}},"yandex_compute_snapshot_schedule":{"version":0,"block":{"attributes":{"created_at":{"type":"string","description_kind":"plain","computed":true},"description":{"type":"string","description_kind":"plain","optional":true},"disk_ids":{"type":["set","string"],"description_kind":"plain","optional":true,"computed":true},"folder_id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"labels":{"type":["map","string"],"description_kind":"plain","optional":true},"name":{"type":"string","description_kind":"plain","optional":true},"retention_period":{"type":"string","description_kind":"plain","optional":true},"snapshot_count":{"type":"number","description_kind":"plain","optional":true},"status":{"type":"string","description_kind":"plain","computed":true}},"block_types":{"schedule_policy":{"nesting_mode":"list","block":{"attributes":{"expression":{"type":"string","description_kind":"plain","optional":true},"start_at":{"type":"string","description_kind":"plain","optional":true,"computed":true}},"description_kind":"plain"},"max_items":1},"snapshot_spec":{"nesting_mode":"list","block":{"attributes":{"description":{"type":"string","description_kind":"plain","optional":true},"labels":{"type":["map","string"],"description_kind":"plain","optional":true}},"description_kind":"plain"},"max_items":1},"timeouts":{"nesting_mode":"single","block":{"attributes":{"create":{"type":"string","description_kind":"plain","optional":true},"delete":{"type":"string","description_kind":"plain","optional":true},"update":{"type":"string","description_kind":"plain","optional":true}},"description_kind":"plain"}}},"description_kind":"plain"}},"yandex_compute_snapshot_schedule_iam_binding":{"version":0,"block":{"attributes":{"members":{"type":["set","string"],"description_kind":"plain","required":true},"role":{"type":"string","description_kind":"plain","required":true},"snapshot_schedule_id":{"type":"string","description_kind":"plain","required":true}},"description_kind":"plain"}},"yandex_container_registry":{"version":0,"block":{"attributes":{"created_at":{"type":"string","description_kind":"plain","computed":true},"folder_id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"labels":{"type":["map","string"],"description_kind":"plain","optional":true},"name":{"type":"string","description_kind":"plain","optional":true,"computed":true},"status":{"type":"string","description_kind":"plain","computed":true}},"block_types":{"timeouts":{"nesting_mode":"single","block":{"attributes":{"create":{"type":"string","description_kind":"plain","optional":true},"delete":{"type":"string","description_kind":"plain","optional":true},"update":{"type":"string","description_kind":"plain","optional":true}},"description_kind":"plain"}}},"description_kind":"plain"}},"yandex_container_registry_iam_binding":{"version":0,"block":{"attributes":{"id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"members":{"type":["set","string"],"description_kind":"plain","required":true},"registry_id":{"type":"string","description_kind":"plain","required":true},"role":{"type":"string","description_kind":"plain","required":true},"sleep_after":{"type":"number","description_kind":"plain","optional":true}},"block_types":{"timeouts":{"nesting_mode":"single","block":{"attributes":{"default":{"type":"string","description_kind":"plain","optional":true}},"description_kind":"plain"}}},"description_kind":"plain"}},"yandex_container_registry_ip_permission":{"version":0,"block":{"attributes":{"id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"pull":{"type":["set","string"],"description_kind":"plain","optional":true},"push":{"type":["set","string"],"description_kind":"plain","optional":true},"registry_id":{"type":"string","description_kind":"plain","required":true}},"block_types":{"timeouts":{"nesting_mode":"single","block":{"attributes":{"default":{"type":"string","description_kind":"plain","optional":true}},"description_kind":"plain"}}},"description_kind":"plain"}},"yandex_container_repository":{"version":0,"block":{"attributes":{"id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"name":{"type":"string","description_kind":"plain","required":true}},"block_types":{"timeouts":{"nesting_mode":"single","block":{"attributes":{"create":{"type":"string","description_kind":"plain","optional":true},"delete":{"type":"string","description_kind":"plain","optional":true}},"description_kind":"plain"}}},"description_kind":"plain"}},"yandex_container_repository_iam_binding":{"version":0,"block":{"attributes":{"id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"members":{"type":["set","string"],"description_kind":"plain","required":true},"repository_id":{"type":"string","description_kind":"plain","required":true},"role":{"type":"string","description_kind":"plain","required":true},"sleep_after":{"type":"number","description_kind":"plain","optional":true}},"block_types":{"timeouts":{"nesting_mode":"single","block":{"attributes":{"default":{"type":"string","description_kind":"plain","optional":true}},"description_kind":"plain"}}},"description_kind":"plain"}},"yandex_container_repository_lifecycle_policy":{"version":0,"block":{"attributes":{"created_at":{"type":"string","description_kind":"plain","computed":true},"description":{"type":"string","description_kind":"plain","optional":true,"computed":true},"id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"name":{"type":"string","description_kind":"plain","optional":true,"computed":true},"repository_id":{"type":"string","description_kind":"plain","required":true},"status":{"type":"string","description_kind":"plain","required":true}},"block_types":{"rule":{"nesting_mode":"list","block":{"attributes":{"description":{"type":"string","description_kind":"plain","optional":true,"computed":true},"expire_period":{"type":"string","description_kind":"plain","optional":true},"retained_top":{"type":"number","description_kind":"plain","optional":true,"computed":true},"tag_regexp":{"type":"string","description_kind":"plain","optional":true},"untagged":{"type":"bool","description_kind":"plain","optional":true,"computed":true}},"description_kind":"plain"}},"timeouts":{"nesting_mode":"single","block":{"attributes":{"default":{"type":"string","description_kind":"plain","optional":true}},"description_kind":"plain"}}},"description_kind":"plain"}},"yandex_dataproc_cluster":{"version":0,"block":{"attributes":{"bucket":{"type":"string","description_kind":"plain","optional":true},"created_at":{"type":"string","description_kind":"plain","computed":true},"deletion_protection":{"type":"bool","description_kind":"plain","optional":true,"computed":true},"description":{"type":"string","description_kind":"plain","optional":true},"folder_id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"host_group_ids":{"type":["set","string"],"description_kind":"plain","optional":true},"id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"labels":{"type":["map","string"],"description_kind":"plain","optional":true},"name":{"type":"string","description_kind":"plain","required":true},"security_group_ids":{"type":["set","string"],"description_kind":"plain","optional":true},"service_account_id":{"type":"string","description_kind":"plain","required":true},"ui_proxy":{"type":"bool","description_kind":"plain","optional":true},"zone_id":{"type":"string","description_kind":"plain","optional":true,"computed":true}},"block_types":{"cluster_config":{"nesting_mode":"list","block":{"attributes":{"version_id":{"type":"string","description_kind":"plain","optional":true,"computed":true}},"block_types":{"hadoop":{"nesting_mode":"list","block":{"attributes":{"properties":{"type":["map","string"],"description_kind":"plain","optional":true},"services":{"type":["set","string"],"description_kind":"plain","optional":true},"ssh_public_keys":{"type":["set","string"],"description_kind":"plain","optional":true}},"block_types":{"initialization_action":{"nesting_mode":"list","block":{"attributes":{"args":{"type":["list","string"],"description_kind":"plain","optional":true,"computed":true},"timeout":{"type":"string","description_kind":"plain","optional":true,"computed":true},"uri":{"type":"string","description_kind":"plain","required":true}},"description_kind":"plain"}}},"description_kind":"plain"},"max_items":1},"subcluster_spec":{"nesting_mode":"list","block":{"attributes":{"assign_public_ip":{"type":"bool","description_kind":"plain","optional":true},"hosts_count":{"type":"number","description_kind":"plain","required":true},"id":{"type":"string","description_kind":"plain","computed":true},"name":{"type":"string","description_kind":"plain","required":true},"role":{"type":"string","description_kind":"plain","required":true},"subnet_id":{"type":"string","description_kind":"plain","required":true}},"block_types":{"autoscaling_config":{"nesting_mode":"list","block":{"attributes":{"cpu_utilization_target":{"type":"string","description_kind":"plain","optional":true,"computed":true},"decommission_timeout":{"type":"string","description_kind":"plain","optional":true,"computed":true},"max_hosts_count":{"type":"number","description_kind":"plain","required":true},"measurement_duration":{"type":"string","description_kind":"plain","optional":true,"computed":true},"preemptible":{"type":"bool","description_kind":"plain","optional":true},"stabilization_duration":{"type":"string","description_kind":"plain","optional":true,"computed":true},"warmup_duration":{"type":"string","description_kind":"plain","optional":true,"computed":true}},"description_kind":"plain"},"max_items":1},"resources":{"nesting_mode":"list","block":{"attributes":{"disk_size":{"type":"number","description_kind":"plain","required":true},"disk_type_id":{"type":"string","description_kind":"plain","optional":true},"resource_preset_id":{"type":"string","description_kind":"plain","required":true}},"description_kind":"plain"},"min_items":1,"max_items":1}},"description_kind":"plain"},"min_items":1}},"description_kind":"plain"},"min_items":1,"max_items":1},"timeouts":{"nesting_mode":"single","block":{"attributes":{"create":{"type":"string","description_kind":"plain","optional":true},"delete":{"type":"string","description_kind":"plain","optional":true},"update":{"type":"string","description_kind":"plain","optional":true}},"description_kind":"plain"}}},"description_kind":"plain"}},"yandex_datasphere_community":{"version":0,"block":{"attributes":{"billing_account_id":{"type":"string","description_kind":"plain","optional":true},"created_at":{"type":"string","description_kind":"plain","computed":true},"created_by":{"type":"string","description_kind":"plain","computed":true},"description":{"type":"string","description_kind":"plain","optional":true,"computed":true},"id":{"type":"string","description_kind":"plain","computed":true},"labels":{"type":["map","string"],"description_kind":"plain","optional":true},"name":{"type":"string","description_kind":"plain","required":true},"organization_id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"timeouts":{"nested_type":{"attributes":{"create":{"type":"string","description":"A string that can be [parsed as a duration](https://pkg.go.dev/time#ParseDuration) consisting of numbers and unit suffixes, such as \"30s\" or \"2h45m\". Valid time units are \"s\" (seconds), \"m\" (minutes), \"h\" (hours).","description_kind":"plain","optional":true},"delete":{"type":"string","description":"A string that can be [parsed as a duration](https://pkg.go.dev/time#ParseDuration) consisting of numbers and unit suffixes, such as \"30s\" or \"2h45m\". Valid time units are \"s\" (seconds), \"m\" (minutes), \"h\" (hours). Setting a timeout for a Delete operation is only applicable if changes are saved into state before the destroy operation occurs.","description_kind":"plain","optional":true},"update":{"type":"string","description":"A string that can be [parsed as a duration](https://pkg.go.dev/time#ParseDuration) consisting of numbers and unit suffixes, such as \"30s\" or \"2h45m\". Valid time units are \"s\" (seconds), \"m\" (minutes), \"h\" (hours).","description_kind":"plain","optional":true}},"nesting_mode":"single"},"description_kind":"plain","optional":true}},"description_kind":"plain"}},"yandex_datasphere_community_iam_binding":{"version":0,"block":{"attributes":{"community_id":{"type":"string","description_kind":"plain","required":true},"members":{"type":["set","string"],"description_kind":"plain","required":true},"role":{"type":"string","description_kind":"plain","required":true}},"description_kind":"plain"}},"yandex_datasphere_project":{"version":0,"block":{"attributes":{"community_id":{"type":"string","description_kind":"plain","required":true},"created_at":{"type":"string","description_kind":"plain","computed":true},"created_by":{"type":"string","description_kind":"plain","computed":true},"description":{"type":"string","description_kind":"plain","optional":true,"computed":true},"id":{"type":"string","description_kind":"plain","computed":true},"labels":{"type":["map","string"],"description_kind":"plain","optional":true},"limits":{"nested_type":{"attributes":{"balance":{"type":"number","description_kind":"plain","optional":true,"computed":true},"max_units_per_execution":{"type":"number","description_kind":"plain","optional":true,"computed":true},"max_units_per_hour":{"type":"number","description_kind":"plain","optional":true,"computed":true}},"nesting_mode":"single"},"description_kind":"plain","optional":true,"computed":true},"name":{"type":"string","description_kind":"plain","required":true},"settings":{"nested_type":{"attributes":{"commit_mode":{"type":"string","description_kind":"plain","optional":true,"computed":true},"data_proc_cluster_id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"default_folder_id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"ide":{"type":"string","description_kind":"plain","optional":true,"computed":true},"security_group_ids":{"type":["set","string"],"description_kind":"plain","optional":true},"service_account_id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"stale_exec_timeout_mode":{"type":"string","description_kind":"plain","optional":true,"computed":true},"subnet_id":{"type":"string","description_kind":"plain","optional":true,"computed":true}},"nesting_mode":"single"},"description_kind":"plain","optional":true,"computed":true},"timeouts":{"nested_type":{"attributes":{"create":{"type":"string","description":"A string that can be [parsed as a duration](https://pkg.go.dev/time#ParseDuration) consisting of numbers and unit suffixes, such as \"30s\" or \"2h45m\". Valid time units are \"s\" (seconds), \"m\" (minutes), \"h\" (hours).","description_kind":"plain","optional":true},"delete":{"type":"string","description":"A string that can be [parsed as a duration](https://pkg.go.dev/time#ParseDuration) consisting of numbers and unit suffixes, such as \"30s\" or \"2h45m\". Valid time units are \"s\" (seconds), \"m\" (minutes), \"h\" (hours). Setting a timeout for a Delete operation is only applicable if changes are saved into state before the destroy operation occurs.","description_kind":"plain","optional":true},"update":{"type":"string","description":"A string that can be [parsed as a duration](https://pkg.go.dev/time#ParseDuration) consisting of numbers and unit suffixes, such as \"30s\" or \"2h45m\". Valid time units are \"s\" (seconds), \"m\" (minutes), \"h\" (hours).","description_kind":"plain","optional":true}},"nesting_mode":"single"},"description_kind":"plain","optional":true}},"description_kind":"plain"}},"yandex_datasphere_project_iam_binding":{"version":0,"block":{"attributes":{"members":{"type":["set","string"],"description_kind":"plain","required":true},"project_id":{"type":"string","description_kind":"plain","required":true},"role":{"type":"string","description_kind":"plain","required":true}},"description_kind":"plain"}},"yandex_datatransfer_endpoint":{"version":1,"block":{"attributes":{"description":{"type":"string","description_kind":"plain","optional":true,"computed":true},"folder_id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"labels":{"type":["map","string"],"description_kind":"plain","optional":true,"computed":true},"name":{"type":"string","description_kind":"plain","optional":true,"computed":true}},"block_types":{"settings":{"nesting_mode":"list","block":{"block_types":{"clickhouse_source":{"nesting_mode":"list","block":{"attributes":{"exclude_tables":{"type":["list","string"],"description_kind":"plain","optional":true,"computed":true},"include_tables":{"type":["list","string"],"description_kind":"plain","optional":true,"computed":true},"security_groups":{"type":["list","string"],"description_kind":"plain","optional":true,"computed":true},"subnet_id":{"type":"string","description_kind":"plain","optional":true,"computed":true}},"block_types":{"connection":{"nesting_mode":"list","block":{"block_types":{"connection_options":{"nesting_mode":"list","block":{"attributes":{"database":{"type":"string","description_kind":"plain","optional":true,"computed":true},"mdb_cluster_id":{"type":"string","description_kind":"plain","optional":true},"user":{"type":"string","description_kind":"plain","optional":true,"computed":true}},"block_types":{"on_premise":{"nesting_mode":"list","block":{"attributes":{"http_port":{"type":"number","description_kind":"plain","optional":true,"computed":true},"native_port":{"type":"number","description_kind":"plain","optional":true,"computed":true}},"block_types":{"shards":{"nesting_mode":"list","block":{"attributes":{"hosts":{"type":["list","string"],"description_kind":"plain","optional":true,"computed":true},"name":{"type":"string","description_kind":"plain","optional":true,"computed":true}},"description_kind":"plain"}},"tls_mode":{"nesting_mode":"list","block":{"block_types":{"disabled":{"nesting_mode":"list","block":{"description_kind":"plain"},"max_items":1},"enabled":{"nesting_mode":"list","block":{"attributes":{"ca_certificate":{"type":"string","description_kind":"plain","optional":true,"computed":true}},"description_kind":"plain"},"max_items":1}},"description_kind":"plain"},"max_items":1}},"description_kind":"plain"},"max_items":1},"password":{"nesting_mode":"list","block":{"attributes":{"raw":{"type":"string","description_kind":"plain","optional":true,"computed":true,"sensitive":true}},"description_kind":"plain"},"max_items":1}},"description_kind":"plain"},"max_items":1}},"description_kind":"plain"},"max_items":1}},"description_kind":"plain"},"max_items":1},"clickhouse_target":{"nesting_mode":"list","block":{"attributes":{"cleanup_policy":{"type":"string","description_kind":"plain","optional":true,"computed":true},"clickhouse_cluster_name":{"type":"string","description_kind":"plain","optional":true,"computed":true},"security_groups":{"type":["list","string"],"description_kind":"plain","optional":true,"computed":true},"subnet_id":{"type":"string","description_kind":"plain","optional":true,"computed":true}},"block_types":{"alt_names":{"nesting_mode":"list","block":{"attributes":{"from_name":{"type":"string","description_kind":"plain","optional":true,"computed":true},"to_name":{"type":"string","description_kind":"plain","optional":true,"computed":true}},"description_kind":"plain"}},"connection":{"nesting_mode":"list","block":{"block_types":{"connection_options":{"nesting_mode":"list","block":{"attributes":{"database":{"type":"string","description_kind":"plain","optional":true,"computed":true},"mdb_cluster_id":{"type":"string","description_kind":"plain","optional":true},"user":{"type":"string","description_kind":"plain","optional":true,"computed":true}},"block_types":{"on_premise":{"nesting_mode":"list","block":{"attributes":{"http_port":{"type":"number","description_kind":"plain","optional":true,"computed":true},"native_port":{"type":"number","description_kind":"plain","optional":true,"computed":true}},"block_types":{"shards":{"nesting_mode":"list","block":{"attributes":{"hosts":{"type":["list","string"],"description_kind":"plain","optional":true,"computed":true},"name":{"type":"string","description_kind":"plain","optional":true,"computed":true}},"description_kind":"plain"}},"tls_mode":{"nesting_mode":"list","block":{"block_types":{"disabled":{"nesting_mode":"list","block":{"description_kind":"plain"},"max_items":1},"enabled":{"nesting_mode":"list","block":{"attributes":{"ca_certificate":{"type":"string","description_kind":"plain","optional":true,"computed":true}},"description_kind":"plain"},"max_items":1}},"description_kind":"plain"},"max_items":1}},"description_kind":"plain"},"max_items":1},"password":{"nesting_mode":"list","block":{"attributes":{"raw":{"type":"string","description_kind":"plain","optional":true,"computed":true,"sensitive":true}},"description_kind":"plain"},"max_items":1}},"description_kind":"plain"},"max_items":1}},"description_kind":"plain"},"max_items":1},"sharding":{"nesting_mode":"list","block":{"block_types":{"column_value_hash":{"nesting_mode":"list","block":{"attributes":{"column_name":{"type":"string","description_kind":"plain","optional":true,"computed":true}},"description_kind":"plain"},"max_items":1},"custom_mapping":{"nesting_mode":"list","block":{"attributes":{"column_name":{"type":"string","description_kind":"plain","optional":true,"computed":true}},"block_types":{"mapping":{"nesting_mode":"list","block":{"attributes":{"shard_name":{"type":"string","description_kind":"plain","optional":true,"computed":true}},"block_types":{"column_value":{"nesting_mode":"list","block":{"attributes":{"string_value":{"type":"string","description_kind":"plain","optional":true,"computed":true}},"description_kind":"plain"},"max_items":1}},"description_kind":"plain"}}},"description_kind":"plain"},"max_items":1},"round_robin":{"nesting_mode":"list","block":{"description_kind":"plain"},"max_items":1},"transfer_id":{"nesting_mode":"list","block":{"description_kind":"plain"},"max_items":1}},"description_kind":"plain"},"max_items":1}},"description_kind":"plain"},"max_items":1},"kafka_source":{"nesting_mode":"list","block":{"attributes":{"security_groups":{"type":["list","string"],"description_kind":"plain","optional":true,"computed":true},"topic_name":{"type":"string","description_kind":"plain","optional":true,"computed":true},"topic_names":{"type":["list","string"],"description_kind":"plain","optional":true,"computed":true}},"block_types":{"auth":{"nesting_mode":"list","block":{"block_types":{"no_auth":{"nesting_mode":"list","block":{"description_kind":"plain"},"max_items":1},"sasl":{"nesting_mode":"list","block":{"attributes":{"mechanism":{"type":"string","description_kind":"plain","optional":true,"computed":true},"user":{"type":"string","description_kind":"plain","optional":true,"computed":true}},"block_types":{"password":{"nesting_mode":"list","block":{"attributes":{"raw":{"type":"string","description_kind":"plain","optional":true,"computed":true,"sensitive":true}},"description_kind":"plain"},"max_items":1}},"description_kind":"plain"},"max_items":1}},"description_kind":"plain"},"max_items":1},"connection":{"nesting_mode":"list","block":{"attributes":{"cluster_id":{"type":"string","description_kind":"plain","optional":true}},"block_types":{"on_premise":{"nesting_mode":"list","block":{"attributes":{"broker_urls":{"type":["list","string"],"description_kind":"plain","optional":true,"computed":true},"subnet_id":{"type":"string","description_kind":"plain","optional":true,"computed":true}},"block_types":{"tls_mode":{"nesting_mode":"list","block":{"block_types":{"disabled":{"nesting_mode":"list","block":{"description_kind":"plain"},"max_items":1},"enabled":{"nesting_mode":"list","block":{"attributes":{"ca_certificate":{"type":"string","description_kind":"plain","optional":true,"computed":true}},"description_kind":"plain"},"max_items":1}},"description_kind":"plain"},"max_items":1}},"description_kind":"plain"},"max_items":1}},"description_kind":"plain"},"max_items":1},"parser":{"nesting_mode":"list","block":{"block_types":{"audit_trails_v1_parser":{"nesting_mode":"list","block":{"description_kind":"plain"},"max_items":1},"cloud_logging_parser":{"nesting_mode":"list","block":{"description_kind":"plain"},"max_items":1},"json_parser":{"nesting_mode":"list","block":{"attributes":{"add_rest_column":{"type":"bool","description_kind":"plain","optional":true,"computed":true},"null_keys_allowed":{"type":"bool","description_kind":"plain","optional":true,"computed":true},"unescape_string_values":{"type":"bool","description_kind":"plain","optional":true,"computed":true}},"block_types":{"data_schema":{"nesting_mode":"list","block":{"attributes":{"json_fields":{"type":"string","description_kind":"plain","optional":true}},"block_types":{"fields":{"nesting_mode":"list","block":{"block_types":{"fields":{"nesting_mode":"list","block":{"attributes":{"key":{"type":"bool","description_kind":"plain","optional":true,"computed":true},"name":{"type":"string","description_kind":"plain","optional":true,"computed":true},"path":{"type":"string","description_kind":"plain","optional":true,"computed":true},"required":{"type":"bool","description_kind":"plain","optional":true,"computed":true},"type":{"type":"string","description_kind":"plain","optional":true,"computed":true}},"description_kind":"plain"}}},"description_kind":"plain"},"max_items":1}},"description_kind":"plain"},"max_items":1}},"description_kind":"plain"},"max_items":1},"tskv_parser":{"nesting_mode":"list","block":{"attributes":{"add_rest_column":{"type":"bool","description_kind":"plain","optional":true,"computed":true},"null_keys_allowed":{"type":"bool","description_kind":"plain","optional":true,"computed":true},"unescape_string_values":{"type":"bool","description_kind":"plain","optional":true,"computed":true}},"block_types":{"data_schema":{"nesting_mode":"list","block":{"attributes":{"json_fields":{"type":"string","description_kind":"plain","optional":true}},"block_types":{"fields":{"nesting_mode":"list","block":{"block_types":{"fields":{"nesting_mode":"list","block":{"attributes":{"key":{"type":"bool","description_kind":"plain","optional":true,"computed":true},"name":{"type":"string","description_kind":"plain","optional":true,"computed":true},"path":{"type":"string","description_kind":"plain","optional":true,"computed":true},"required":{"type":"bool","description_kind":"plain","optional":true,"computed":true},"type":{"type":"string","description_kind":"plain","optional":true,"computed":true}},"description_kind":"plain"}}},"description_kind":"plain"},"max_items":1}},"description_kind":"plain"},"max_items":1}},"description_kind":"plain"},"max_items":1}},"description_kind":"plain"},"max_items":1},"transformer":{"nesting_mode":"list","block":{"attributes":{"buffer_flush_interval":{"type":"string","description_kind":"plain","optional":true,"computed":true},"buffer_size":{"type":"string","description_kind":"plain","optional":true,"computed":true},"cloud_function":{"type":"string","description_kind":"plain","optional":true,"computed":true},"invocation_timeout":{"type":"string","description_kind":"plain","optional":true,"computed":true},"number_of_retries":{"type":"number","description_kind":"plain","optional":true,"computed":true},"service_account_id":{"type":"string","description_kind":"plain","optional":true,"computed":true}},"description_kind":"plain"},"max_items":1}},"description_kind":"plain"},"max_items":1},"kafka_target":{"nesting_mode":"list","block":{"attributes":{"security_groups":{"type":["list","string"],"description_kind":"plain","optional":true,"computed":true}},"block_types":{"auth":{"nesting_mode":"list","block":{"block_types":{"no_auth":{"nesting_mode":"list","block":{"description_kind":"plain"},"max_items":1},"sasl":{"nesting_mode":"list","block":{"attributes":{"mechanism":{"type":"string","description_kind":"plain","optional":true,"computed":true},"user":{"type":"string","description_kind":"plain","optional":true,"computed":true}},"block_types":{"password":{"nesting_mode":"list","block":{"attributes":{"raw":{"type":"string","description_kind":"plain","optional":true,"computed":true,"sensitive":true}},"description_kind":"plain"},"max_items":1}},"description_kind":"plain"},"max_items":1}},"description_kind":"plain"},"max_items":1},"connection":{"nesting_mode":"list","block":{"attributes":{"cluster_id":{"type":"string","description_kind":"plain","optional":true}},"block_types":{"on_premise":{"nesting_mode":"list","block":{"attributes":{"broker_urls":{"type":["list","string"],"description_kind":"plain","optional":true,"computed":true},"subnet_id":{"type":"string","description_kind":"plain","optional":true,"computed":true}},"block_types":{"tls_mode":{"nesting_mode":"list","block":{"block_types":{"disabled":{"nesting_mode":"list","block":{"description_kind":"plain"},"max_items":1},"enabled":{"nesting_mode":"list","block":{"attributes":{"ca_certificate":{"type":"string","description_kind":"plain","optional":true,"computed":true}},"description_kind":"plain"},"max_items":1}},"description_kind":"plain"},"max_items":1}},"description_kind":"plain"},"max_items":1}},"description_kind":"plain"},"max_items":1},"serializer":{"nesting_mode":"list","block":{"block_types":{"serializer_auto":{"nesting_mode":"list","block":{"description_kind":"plain"},"max_items":1},"serializer_debezium":{"nesting_mode":"list","block":{"block_types":{"serializer_parameters":{"nesting_mode":"list","block":{"attributes":{"key":{"type":"string","description_kind":"plain","optional":true,"computed":true},"value":{"type":"string","description_kind":"plain","optional":true,"computed":true}},"description_kind":"plain"}}},"description_kind":"plain"},"max_items":1},"serializer_json":{"nesting_mode":"list","block":{"description_kind":"plain"},"max_items":1}},"description_kind":"plain"},"max_items":1},"topic_settings":{"nesting_mode":"list","block":{"attributes":{"topic_prefix":{"type":"string","description_kind":"plain","optional":true}},"block_types":{"topic":{"nesting_mode":"list","block":{"attributes":{"save_tx_order":{"type":"bool","description_kind":"plain","optional":true,"computed":true},"topic_name":{"type":"string","description_kind":"plain","optional":true,"computed":true}},"description_kind":"plain"},"max_items":1}},"description_kind":"plain"},"max_items":1}},"description_kind":"plain"},"max_items":1},"metrika_source":{"nesting_mode":"list","block":{"attributes":{"counter_ids":{"type":["list","number"],"description_kind":"plain","optional":true,"computed":true}},"block_types":{"streams":{"nesting_mode":"list","block":{"attributes":{"columns":{"type":["list","string"],"description_kind":"plain","optional":true,"computed":true},"type":{"type":"string","description_kind":"plain","optional":true,"computed":true}},"description_kind":"plain"}},"token":{"nesting_mode":"list","block":{"attributes":{"raw":{"type":"string","description_kind":"plain","optional":true,"computed":true,"sensitive":true}},"description_kind":"plain"},"max_items":1}},"description_kind":"plain"},"max_items":1},"mongo_source":{"nesting_mode":"list","block":{"attributes":{"secondary_preferred_mode":{"type":"bool","description_kind":"plain","optional":true,"computed":true},"security_groups":{"type":["list","string"],"description_kind":"plain","optional":true,"computed":true},"subnet_id":{"type":"string","description_kind":"plain","optional":true,"computed":true}},"block_types":{"collections":{"nesting_mode":"list","block":{"attributes":{"collection_name":{"type":"string","description_kind":"plain","optional":true,"computed":true},"database_name":{"type":"string","description_kind":"plain","optional":true,"computed":true}},"description_kind":"plain"}},"connection":{"nesting_mode":"list","block":{"block_types":{"connection_options":{"nesting_mode":"list","block":{"attributes":{"auth_source":{"type":"string","description_kind":"plain","optional":true,"computed":true},"mdb_cluster_id":{"type":"string","description_kind":"plain","optional":true},"user":{"type":"string","description_kind":"plain","optional":true,"computed":true}},"block_types":{"on_premise":{"nesting_mode":"list","block":{"attributes":{"hosts":{"type":["list","string"],"description_kind":"plain","optional":true,"computed":true},"port":{"type":"number","description_kind":"plain","optional":true,"computed":true},"replica_set":{"type":"string","description_kind":"plain","optional":true,"computed":true}},"block_types":{"tls_mode":{"nesting_mode":"list","block":{"block_types":{"disabled":{"nesting_mode":"list","block":{"description_kind":"plain"},"max_items":1},"enabled":{"nesting_mode":"list","block":{"attributes":{"ca_certificate":{"type":"string","description_kind":"plain","optional":true,"computed":true}},"description_kind":"plain"},"max_items":1}},"description_kind":"plain"},"max_items":1}},"description_kind":"plain"},"max_items":1},"password":{"nesting_mode":"list","block":{"attributes":{"raw":{"type":"string","description_kind":"plain","optional":true,"computed":true,"sensitive":true}},"description_kind":"plain"},"max_items":1}},"description_kind":"plain"},"max_items":1}},"description_kind":"plain"},"max_items":1},"excluded_collections":{"nesting_mode":"list","block":{"attributes":{"collection_name":{"type":"string","description_kind":"plain","optional":true,"computed":true},"database_name":{"type":"string","description_kind":"plain","optional":true,"computed":true}},"description_kind":"plain"}}},"description_kind":"plain"},"max_items":1},"mongo_target":{"nesting_mode":"list","block":{"attributes":{"cleanup_policy":{"type":"string","description_kind":"plain","optional":true,"computed":true},"database":{"type":"string","description_kind":"plain","optional":true,"computed":true},"security_groups":{"type":["list","string"],"description_kind":"plain","optional":true,"computed":true},"subnet_id":{"type":"string","description_kind":"plain","optional":true,"computed":true}},"block_types":{"connection":{"nesting_mode":"list","block":{"block_types":{"connection_options":{"nesting_mode":"list","block":{"attributes":{"auth_source":{"type":"string","description_kind":"plain","optional":true,"computed":true},"mdb_cluster_id":{"type":"string","description_kind":"plain","optional":true},"user":{"type":"string","description_kind":"plain","optional":true,"computed":true}},"block_types":{"on_premise":{"nesting_mode":"list","block":{"attributes":{"hosts":{"type":["list","string"],"description_kind":"plain","optional":true,"computed":true},"port":{"type":"number","description_kind":"plain","optional":true,"computed":true},"replica_set":{"type":"string","description_kind":"plain","optional":true,"computed":true}},"block_types":{"tls_mode":{"nesting_mode":"list","block":{"block_types":{"disabled":{"nesting_mode":"list","block":{"description_kind":"plain"},"max_items":1},"enabled":{"nesting_mode":"list","block":{"attributes":{"ca_certificate":{"type":"string","description_kind":"plain","optional":true,"computed":true}},"description_kind":"plain"},"max_items":1}},"description_kind":"plain"},"max_items":1}},"description_kind":"plain"},"max_items":1},"password":{"nesting_mode":"list","block":{"attributes":{"raw":{"type":"string","description_kind":"plain","optional":true,"computed":true,"sensitive":true}},"description_kind":"plain"},"max_items":1}},"description_kind":"plain"},"max_items":1}},"description_kind":"plain"},"max_items":1}},"description_kind":"plain"},"max_items":1},"mysql_source":{"nesting_mode":"list","block":{"attributes":{"database":{"type":"string","description_kind":"plain","optional":true,"computed":true},"exclude_tables_regex":{"type":["list","string"],"description_kind":"plain","optional":true,"computed":true},"include_tables_regex":{"type":["list","string"],"description_kind":"plain","optional":true,"computed":true},"security_groups":{"type":["list","string"],"description_kind":"plain","optional":true,"computed":true},"service_database":{"type":"string","description_kind":"plain","optional":true,"computed":true},"timezone":{"type":"string","description_kind":"plain","optional":true,"computed":true},"user":{"type":"string","description_kind":"plain","optional":true,"computed":true}},"block_types":{"connection":{"nesting_mode":"list","block":{"attributes":{"mdb_cluster_id":{"type":"string","description_kind":"plain","optional":true}},"block_types":{"on_premise":{"nesting_mode":"list","block":{"attributes":{"hosts":{"type":["list","string"],"description_kind":"plain","optional":true,"computed":true},"port":{"type":"number","description_kind":"plain","optional":true,"computed":true},"subnet_id":{"type":"string","description_kind":"plain","optional":true,"computed":true}},"block_types":{"tls_mode":{"nesting_mode":"list","block":{"block_types":{"disabled":{"nesting_mode":"list","block":{"description_kind":"plain"},"max_items":1},"enabled":{"nesting_mode":"list","block":{"attributes":{"ca_certificate":{"type":"string","description_kind":"plain","optional":true,"computed":true}},"description_kind":"plain"},"max_items":1}},"description_kind":"plain"},"max_items":1}},"description_kind":"plain"},"max_items":1}},"description_kind":"plain"},"max_items":1},"object_transfer_settings":{"nesting_mode":"list","block":{"attributes":{"routine":{"type":"string","description_kind":"plain","optional":true,"computed":true},"tables":{"type":"string","description_kind":"plain","optional":true,"computed":true},"trigger":{"type":"string","description_kind":"plain","optional":true,"computed":true},"view":{"type":"string","description_kind":"plain","optional":true,"computed":true}},"description_kind":"plain"},"max_items":1},"password":{"nesting_mode":"list","block":{"attributes":{"raw":{"type":"string","description_kind":"plain","optional":true,"computed":true,"sensitive":true}},"description_kind":"plain"},"max_items":1}},"description_kind":"plain"},"max_items":1},"mysql_target":{"nesting_mode":"list","block":{"attributes":{"cleanup_policy":{"type":"string","description_kind":"plain","optional":true,"computed":true},"database":{"type":"string","description_kind":"plain","optional":true,"computed":true},"security_groups":{"type":["list","string"],"description_kind":"plain","optional":true,"computed":true},"service_database":{"type":"string","description_kind":"plain","optional":true,"computed":true},"skip_constraint_checks":{"type":"bool","description_kind":"plain","optional":true,"computed":true},"sql_mode":{"type":"string","description_kind":"plain","optional":true,"computed":true},"timezone":{"type":"string","description_kind":"plain","optional":true,"computed":true},"user":{"type":"string","description_kind":"plain","optional":true,"computed":true}},"block_types":{"connection":{"nesting_mode":"list","block":{"attributes":{"mdb_cluster_id":{"type":"string","description_kind":"plain","optional":true}},"block_types":{"on_premise":{"nesting_mode":"list","block":{"attributes":{"hosts":{"type":["list","string"],"description_kind":"plain","optional":true,"computed":true},"port":{"type":"number","description_kind":"plain","optional":true,"computed":true},"subnet_id":{"type":"string","description_kind":"plain","optional":true,"computed":true}},"block_types":{"tls_mode":{"nesting_mode":"list","block":{"block_types":{"disabled":{"nesting_mode":"list","block":{"description_kind":"plain"},"max_items":1},"enabled":{"nesting_mode":"list","block":{"attributes":{"ca_certificate":{"type":"string","description_kind":"plain","optional":true,"computed":true}},"description_kind":"plain"},"max_items":1}},"description_kind":"plain"},"max_items":1}},"description_kind":"plain"},"max_items":1}},"description_kind":"plain"},"max_items":1},"password":{"nesting_mode":"list","block":{"attributes":{"raw":{"type":"string","description_kind":"plain","optional":true,"computed":true,"sensitive":true}},"description_kind":"plain"},"max_items":1}},"description_kind":"plain"},"max_items":1},"postgres_source":{"nesting_mode":"list","block":{"attributes":{"database":{"type":"string","description_kind":"plain","optional":true,"computed":true},"exclude_tables":{"type":["list","string"],"description_kind":"plain","optional":true,"computed":true},"include_tables":{"type":["list","string"],"description_kind":"plain","optional":true,"computed":true},"security_groups":{"type":["list","string"],"description_kind":"plain","optional":true,"computed":true},"service_schema":{"type":"string","description_kind":"plain","optional":true,"computed":true},"slot_gigabyte_lag_limit":{"type":"number","description_kind":"plain","optional":true,"computed":true},"user":{"type":"string","description_kind":"plain","optional":true,"computed":true}},"block_types":{"connection":{"nesting_mode":"list","block":{"attributes":{"mdb_cluster_id":{"type":"string","description_kind":"plain","optional":true}},"block_types":{"on_premise":{"nesting_mode":"list","block":{"attributes":{"hosts":{"type":["list","string"],"description_kind":"plain","optional":true,"computed":true},"port":{"type":"number","description_kind":"plain","optional":true,"computed":true},"subnet_id":{"type":"string","description_kind":"plain","optional":true,"computed":true}},"block_types":{"tls_mode":{"nesting_mode":"list","block":{"block_types":{"disabled":{"nesting_mode":"list","block":{"description_kind":"plain"},"max_items":1},"enabled":{"nesting_mode":"list","block":{"attributes":{"ca_certificate":{"type":"string","description_kind":"plain","optional":true,"computed":true}},"description_kind":"plain"},"max_items":1}},"description_kind":"plain"},"max_items":1}},"description_kind":"plain"},"max_items":1}},"description_kind":"plain"},"max_items":1},"object_transfer_settings":{"nesting_mode":"list","block":{"attributes":{"cast":{"type":"string","description_kind":"plain","optional":true,"computed":true},"collation":{"type":"string","description_kind":"plain","optional":true,"computed":true},"constraint":{"type":"string","description_kind":"plain","optional":true,"computed":true},"default_values":{"type":"string","description_kind":"plain","optional":true,"computed":true},"fk_constraint":{"type":"string","description_kind":"plain","optional":true,"computed":true},"function":{"type":"string","description_kind":"plain","optional":true,"computed":true},"index":{"type":"string","description_kind":"plain","optional":true,"computed":true},"materialized_view":{"type":"string","description_kind":"plain","optional":true,"computed":true},"policy":{"type":"string","description_kind":"plain","optional":true,"computed":true},"primary_key":{"type":"string","description_kind":"plain","optional":true,"computed":true},"rule":{"type":"string","description_kind":"plain","optional":true,"computed":true},"sequence":{"type":"string","description_kind":"plain","optional":true,"computed":true},"sequence_owned_by":{"type":"string","description_kind":"plain","optional":true,"computed":true},"sequence_set":{"type":"string","description_kind":"plain","optional":true,"computed":true},"table":{"type":"string","description_kind":"plain","optional":true,"computed":true},"trigger":{"type":"string","description_kind":"plain","optional":true,"computed":true},"type":{"type":"string","description_kind":"plain","optional":true,"computed":true},"view":{"type":"string","description_kind":"plain","optional":true,"computed":true}},"description_kind":"plain"},"max_items":1},"password":{"nesting_mode":"list","block":{"attributes":{"raw":{"type":"string","description_kind":"plain","optional":true,"computed":true,"sensitive":true}},"description_kind":"plain"},"max_items":1}},"description_kind":"plain"},"max_items":1},"postgres_target":{"nesting_mode":"list","block":{"attributes":{"cleanup_policy":{"type":"string","description_kind":"plain","optional":true,"computed":true},"database":{"type":"string","description_kind":"plain","optional":true,"computed":true},"security_groups":{"type":["list","string"],"description_kind":"plain","optional":true,"computed":true},"user":{"type":"string","description_kind":"plain","optional":true,"computed":true}},"block_types":{"connection":{"nesting_mode":"list","block":{"attributes":{"mdb_cluster_id":{"type":"string","description_kind":"plain","optional":true}},"block_types":{"on_premise":{"nesting_mode":"list","block":{"attributes":{"hosts":{"type":["list","string"],"description_kind":"plain","optional":true,"computed":true},"port":{"type":"number","description_kind":"plain","optional":true,"computed":true},"subnet_id":{"type":"string","description_kind":"plain","optional":true,"computed":true}},"block_types":{"tls_mode":{"nesting_mode":"list","block":{"block_types":{"disabled":{"nesting_mode":"list","block":{"description_kind":"plain"},"max_items":1},"enabled":{"nesting_mode":"list","block":{"attributes":{"ca_certificate":{"type":"string","description_kind":"plain","optional":true,"computed":true}},"description_kind":"plain"},"max_items":1}},"description_kind":"plain"},"max_items":1}},"description_kind":"plain"},"max_items":1}},"description_kind":"plain"},"max_items":1},"password":{"nesting_mode":"list","block":{"attributes":{"raw":{"type":"string","description_kind":"plain","optional":true,"computed":true,"sensitive":true}},"description_kind":"plain"},"max_items":1}},"description_kind":"plain"},"max_items":1},"ydb_source":{"nesting_mode":"list","block":{"attributes":{"changefeed_custom_name":{"type":"string","description_kind":"plain","optional":true,"computed":true},"database":{"type":"string","description_kind":"plain","optional":true,"computed":true},"instance":{"type":"string","description_kind":"plain","optional":true,"computed":true},"paths":{"type":["list","string"],"description_kind":"plain","optional":true,"computed":true},"sa_key_content":{"type":"string","description_kind":"plain","optional":true,"computed":true,"sensitive":true},"security_groups":{"type":["list","string"],"description_kind":"plain","optional":true,"computed":true},"service_account_id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"subnet_id":{"type":"string","description_kind":"plain","optional":true,"computed":true}},"description_kind":"plain"},"max_items":1},"ydb_target":{"nesting_mode":"list","block":{"attributes":{"cleanup_policy":{"type":"string","description_kind":"plain","optional":true,"computed":true},"database":{"type":"string","description_kind":"plain","optional":true,"computed":true},"default_compression":{"type":"string","description_kind":"plain","optional":true,"computed":true},"instance":{"type":"string","description_kind":"plain","optional":true,"computed":true},"is_table_column_oriented":{"type":"bool","description_kind":"plain","optional":true,"computed":true},"path":{"type":"string","description_kind":"plain","optional":true,"computed":true},"sa_key_content":{"type":"string","description_kind":"plain","optional":true,"computed":true,"sensitive":true},"security_groups":{"type":["list","string"],"description_kind":"plain","optional":true,"computed":true},"service_account_id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"subnet_id":{"type":"string","description_kind":"plain","optional":true,"computed":true}},"description_kind":"plain"},"max_items":1},"yds_source":{"nesting_mode":"list","block":{"attributes":{"allow_ttl_rewind":{"type":"bool","description_kind":"plain","optional":true,"computed":true},"consumer":{"type":"string","description_kind":"plain","optional":true,"computed":true},"database":{"type":"string","description_kind":"plain","optional":true,"computed":true},"endpoint":{"type":"string","description_kind":"plain","optional":true,"computed":true},"security_groups":{"type":["list","string"],"description_kind":"plain","optional":true,"computed":true},"service_account_id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"stream":{"type":"string","description_kind":"plain","optional":true,"computed":true},"subnet_id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"supported_codecs":{"type":["list","string"],"description_kind":"plain","optional":true,"computed":true}},"block_types":{"parser":{"nesting_mode":"list","block":{"block_types":{"audit_trails_v1_parser":{"nesting_mode":"list","block":{"description_kind":"plain"},"max_items":1},"cloud_logging_parser":{"nesting_mode":"list","block":{"description_kind":"plain"},"max_items":1},"json_parser":{"nesting_mode":"list","block":{"attributes":{"add_rest_column":{"type":"bool","description_kind":"plain","optional":true,"computed":true},"null_keys_allowed":{"type":"bool","description_kind":"plain","optional":true,"computed":true},"unescape_string_values":{"type":"bool","description_kind":"plain","optional":true,"computed":true}},"block_types":{"data_schema":{"nesting_mode":"list","block":{"attributes":{"json_fields":{"type":"string","description_kind":"plain","optional":true}},"block_types":{"fields":{"nesting_mode":"list","block":{"block_types":{"fields":{"nesting_mode":"list","block":{"attributes":{"key":{"type":"bool","description_kind":"plain","optional":true,"computed":true},"name":{"type":"string","description_kind":"plain","optional":true,"computed":true},"path":{"type":"string","description_kind":"plain","optional":true,"computed":true},"required":{"type":"bool","description_kind":"plain","optional":true,"computed":true},"type":{"type":"string","description_kind":"plain","optional":true,"computed":true}},"description_kind":"plain"}}},"description_kind":"plain"},"max_items":1}},"description_kind":"plain"},"max_items":1}},"description_kind":"plain"},"max_items":1},"tskv_parser":{"nesting_mode":"list","block":{"attributes":{"add_rest_column":{"type":"bool","description_kind":"plain","optional":true,"computed":true},"null_keys_allowed":{"type":"bool","description_kind":"plain","optional":true,"computed":true},"unescape_string_values":{"type":"bool","description_kind":"plain","optional":true,"computed":true}},"block_types":{"data_schema":{"nesting_mode":"list","block":{"attributes":{"json_fields":{"type":"string","description_kind":"plain","optional":true}},"block_types":{"fields":{"nesting_mode":"list","block":{"block_types":{"fields":{"nesting_mode":"list","block":{"attributes":{"key":{"type":"bool","description_kind":"plain","optional":true,"computed":true},"name":{"type":"string","description_kind":"plain","optional":true,"computed":true},"path":{"type":"string","description_kind":"plain","optional":true,"computed":true},"required":{"type":"bool","description_kind":"plain","optional":true,"computed":true},"type":{"type":"string","description_kind":"plain","optional":true,"computed":true}},"description_kind":"plain"}}},"description_kind":"plain"},"max_items":1}},"description_kind":"plain"},"max_items":1}},"description_kind":"plain"},"max_items":1}},"description_kind":"plain"},"max_items":1}},"description_kind":"plain"},"max_items":1},"yds_target":{"nesting_mode":"list","block":{"attributes":{"database":{"type":"string","description_kind":"plain","optional":true,"computed":true},"endpoint":{"type":"string","description_kind":"plain","optional":true,"computed":true},"save_tx_order":{"type":"bool","description_kind":"plain","optional":true,"computed":true},"security_groups":{"type":["list","string"],"description_kind":"plain","optional":true,"computed":true},"service_account_id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"stream":{"type":"string","description_kind":"plain","optional":true,"computed":true},"subnet_id":{"type":"string","description_kind":"plain","optional":true,"computed":true}},"block_types":{"serializer":{"nesting_mode":"list","block":{"block_types":{"serializer_auto":{"nesting_mode":"list","block":{"description_kind":"plain"},"max_items":1},"serializer_debezium":{"nesting_mode":"list","block":{"block_types":{"serializer_parameters":{"nesting_mode":"list","block":{"attributes":{"key":{"type":"string","description_kind":"plain","optional":true,"computed":true},"value":{"type":"string","description_kind":"plain","optional":true,"computed":true}},"description_kind":"plain"}}},"description_kind":"plain"},"max_items":1},"serializer_json":{"nesting_mode":"list","block":{"description_kind":"plain"},"max_items":1}},"description_kind":"plain"},"max_items":1}},"description_kind":"plain"},"max_items":1}},"description_kind":"plain"},"max_items":1}},"description_kind":"plain"}},"yandex_datatransfer_transfer":{"version":1,"block":{"attributes":{"description":{"type":"string","description_kind":"plain","optional":true,"computed":true},"folder_id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"labels":{"type":["map","string"],"description_kind":"plain","optional":true,"computed":true},"name":{"type":"string","description_kind":"plain","optional":true,"computed":true},"on_create_activate_mode":{"type":"string","description_kind":"plain","optional":true},"source_id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"target_id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"type":{"type":"string","description_kind":"plain","optional":true,"computed":true},"warning":{"type":"string","description_kind":"plain","computed":true}},"block_types":{"runtime":{"nesting_mode":"list","block":{"block_types":{"yc_runtime":{"nesting_mode":"list","block":{"attributes":{"job_count":{"type":"number","description_kind":"plain","optional":true,"computed":true}},"block_types":{"upload_shard_params":{"nesting_mode":"list","block":{"attributes":{"job_count":{"type":"number","description_kind":"plain","optional":true,"computed":true},"process_count":{"type":"number","description_kind":"plain","optional":true,"computed":true}},"description_kind":"plain"},"max_items":1}},"description_kind":"plain"},"max_items":1}},"description_kind":"plain"},"max_items":1},"transformation":{"nesting_mode":"list","block":{"block_types":{"transformers":{"nesting_mode":"list","block":{"block_types":{"convert_to_string":{"nesting_mode":"list","block":{"block_types":{"columns":{"nesting_mode":"list","block":{"attributes":{"exclude_columns":{"type":["list","string"],"description_kind":"plain","optional":true},"include_columns":{"type":["list","string"],"description_kind":"plain","optional":true}},"description_kind":"plain"},"max_items":1},"tables":{"nesting_mode":"list","block":{"attributes":{"exclude_tables":{"type":["list","string"],"description_kind":"plain","optional":true},"include_tables":{"type":["list","string"],"description_kind":"plain","optional":true}},"description_kind":"plain"},"max_items":1}},"description_kind":"plain"},"max_items":1},"filter_columns":{"nesting_mode":"list","block":{"block_types":{"columns":{"nesting_mode":"list","block":{"attributes":{"exclude_columns":{"type":["list","string"],"description_kind":"plain","optional":true},"include_columns":{"type":["list","string"],"description_kind":"plain","optional":true}},"description_kind":"plain"},"max_items":1},"tables":{"nesting_mode":"list","block":{"attributes":{"exclude_tables":{"type":["list","string"],"description_kind":"plain","optional":true},"include_tables":{"type":["list","string"],"description_kind":"plain","optional":true}},"description_kind":"plain"},"max_items":1}},"description_kind":"plain"},"max_items":1},"filter_rows":{"nesting_mode":"list","block":{"attributes":{"filter":{"type":"string","description_kind":"plain","optional":true}},"block_types":{"tables":{"nesting_mode":"list","block":{"attributes":{"exclude_tables":{"type":["list","string"],"description_kind":"plain","optional":true},"include_tables":{"type":["list","string"],"description_kind":"plain","optional":true}},"description_kind":"plain"},"max_items":1}},"description_kind":"plain"},"max_items":1},"mask_field":{"nesting_mode":"list","block":{"attributes":{"columns":{"type":["list","string"],"description_kind":"plain","optional":true}},"block_types":{"function":{"nesting_mode":"list","block":{"block_types":{"mask_function_hash":{"nesting_mode":"list","block":{"attributes":{"user_defined_salt":{"type":"string","description_kind":"plain","optional":true}},"description_kind":"plain"},"max_items":1}},"description_kind":"plain"},"max_items":1},"tables":{"nesting_mode":"list","block":{"attributes":{"exclude_tables":{"type":["list","string"],"description_kind":"plain","optional":true},"include_tables":{"type":["list","string"],"description_kind":"plain","optional":true}},"description_kind":"plain"},"max_items":1}},"description_kind":"plain"},"max_items":1},"rename_tables":{"nesting_mode":"list","block":{"block_types":{"rename_tables":{"nesting_mode":"list","block":{"block_types":{"new_name":{"nesting_mode":"list","block":{"attributes":{"name":{"type":"string","description_kind":"plain","optional":true},"name_space":{"type":"string","description_kind":"plain","optional":true}},"description_kind":"plain"},"max_items":1},"original_name":{"nesting_mode":"list","block":{"attributes":{"name":{"type":"string","description_kind":"plain","optional":true},"name_space":{"type":"string","description_kind":"plain","optional":true}},"description_kind":"plain"},"max_items":1}},"description_kind":"plain"}}},"description_kind":"plain"},"max_items":1},"replace_primary_key":{"nesting_mode":"list","block":{"attributes":{"keys":{"type":["list","string"],"description_kind":"plain","optional":true}},"block_types":{"tables":{"nesting_mode":"list","block":{"attributes":{"exclude_tables":{"type":["list","string"],"description_kind":"plain","optional":true},"include_tables":{"type":["list","string"],"description_kind":"plain","optional":true}},"description_kind":"plain"},"max_items":1}},"description_kind":"plain"},"max_items":1},"sharder_transformer":{"nesting_mode":"list","block":{"attributes":{"shards_count":{"type":"number","description_kind":"plain","optional":true}},"block_types":{"columns":{"nesting_mode":"list","block":{"attributes":{"exclude_columns":{"type":["list","string"],"description_kind":"plain","optional":true},"include_columns":{"type":["list","string"],"description_kind":"plain","optional":true}},"description_kind":"plain"},"max_items":1},"tables":{"nesting_mode":"list","block":{"attributes":{"exclude_tables":{"type":["list","string"],"description_kind":"plain","optional":true},"include_tables":{"type":["list","string"],"description_kind":"plain","optional":true}},"description_kind":"plain"},"max_items":1}},"description_kind":"plain"},"max_items":1},"table_splitter_transformer":{"nesting_mode":"list","block":{"attributes":{"columns":{"type":["list","string"],"description_kind":"plain","optional":true},"splitter":{"type":"string","description_kind":"plain","optional":true}},"block_types":{"tables":{"nesting_mode":"list","block":{"attributes":{"exclude_tables":{"type":["list","string"],"description_kind":"plain","optional":true},"include_tables":{"type":["list","string"],"description_kind":"plain","optional":true}},"description_kind":"plain"},"max_items":1}},"description_kind":"plain"},"max_items":1}},"description_kind":"plain"}}},"description_kind":"plain"},"max_items":1}},"description_kind":"plain"}},"yandex_dns_recordset":{"version":0,"block":{"attributes":{"data":{"type":["set","string"],"description_kind":"plain","required":true},"id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"name":{"type":"string","description_kind":"plain","required":true},"ttl":{"type":"number","description_kind":"plain","required":true},"type":{"type":"string","description_kind":"plain","required":true},"zone_id":{"type":"string","description_kind":"plain","required":true}},"block_types":{"timeouts":{"nesting_mode":"single","block":{"attributes":{"create":{"type":"string","description_kind":"plain","optional":true},"delete":{"type":"string","description_kind":"plain","optional":true},"update":{"type":"string","description_kind":"plain","optional":true}},"description_kind":"plain"}}},"description_kind":"plain"}},"yandex_dns_zone":{"version":0,"block":{"attributes":{"created_at":{"type":"string","description_kind":"plain","computed":true},"deletion_protection":{"type":"bool","description_kind":"plain","optional":true},"description":{"type":"string","description_kind":"plain","optional":true},"folder_id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"labels":{"type":["map","string"],"description_kind":"plain","optional":true},"name":{"type":"string","description_kind":"plain","optional":true},"private_networks":{"type":["set","string"],"description_kind":"plain","optional":true,"computed":true},"public":{"type":"bool","description_kind":"plain","optional":true,"computed":true},"zone":{"type":"string","description_kind":"plain","required":true}},"block_types":{"timeouts":{"nesting_mode":"single","block":{"attributes":{"create":{"type":"string","description_kind":"plain","optional":true},"delete":{"type":"string","description_kind":"plain","optional":true},"update":{"type":"string","description_kind":"plain","optional":true}},"description_kind":"plain"}}},"description_kind":"plain"}},"yandex_dns_zone_iam_binding":{"version":0,"block":{"attributes":{"dns_zone_id":{"type":"string","description_kind":"plain","required":true},"id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"members":{"type":["set","string"],"description_kind":"plain","required":true},"role":{"type":"string","description_kind":"plain","required":true},"sleep_after":{"type":"number","description_kind":"plain","optional":true}},"block_types":{"timeouts":{"nesting_mode":"single","block":{"attributes":{"default":{"type":"string","description_kind":"plain","optional":true}},"description_kind":"plain"}}},"description_kind":"plain"}},"yandex_function":{"version":0,"block":{"attributes":{"concurrency":{"type":"number","description_kind":"plain","optional":true,"computed":true},"created_at":{"type":"string","description_kind":"plain","computed":true},"description":{"type":"string","description_kind":"plain","optional":true},"entrypoint":{"type":"string","description_kind":"plain","required":true},"environment":{"type":["map","string"],"description_kind":"plain","optional":true},"execution_timeout":{"type":"string","description_kind":"plain","optional":true},"folder_id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"image_size":{"type":"number","description_kind":"plain","computed":true},"labels":{"type":["map","string"],"description_kind":"plain","optional":true},"loggroup_id":{"type":"string","description_kind":"plain","computed":true},"memory":{"type":"number","description_kind":"plain","required":true},"name":{"type":"string","description_kind":"plain","required":true},"runtime":{"type":"string","description_kind":"plain","required":true},"service_account_id":{"type":"string","description_kind":"plain","optional":true},"tags":{"type":["set","string"],"description_kind":"plain","optional":true,"computed":true},"tmpfs_size":{"type":"number","description_kind":"plain","optional":true,"computed":true},"user_hash":{"type":"string","description_kind":"plain","required":true},"version":{"type":"string","description_kind":"plain","computed":true}},"block_types":{"async_invocation":{"nesting_mode":"list","block":{"attributes":{"retries_count":{"type":"number","description_kind":"plain","optional":true},"service_account_id":{"type":"string","description_kind":"plain","optional":true}},"block_types":{"ymq_failure_target":{"nesting_mode":"list","block":{"attributes":{"arn":{"type":"string","description_kind":"plain","required":true},"service_account_id":{"type":"string","description_kind":"plain","required":true}},"description_kind":"plain"},"max_items":1},"ymq_success_target":{"nesting_mode":"list","block":{"attributes":{"arn":{"type":"string","description_kind":"plain","required":true},"service_account_id":{"type":"string","description_kind":"plain","required":true}},"description_kind":"plain"},"max_items":1}},"description_kind":"plain"},"max_items":1},"connectivity":{"nesting_mode":"list","block":{"attributes":{"network_id":{"type":"string","description_kind":"plain","required":true}},"description_kind":"plain"},"max_items":1},"content":{"nesting_mode":"list","block":{"attributes":{"zip_filename":{"type":"string","description_kind":"plain","required":true}},"description_kind":"plain"},"max_items":1},"log_options":{"nesting_mode":"list","block":{"attributes":{"disabled":{"type":"bool","description_kind":"plain","optional":true},"folder_id":{"type":"string","description_kind":"plain","optional":true},"log_group_id":{"type":"string","description_kind":"plain","optional":true},"min_level":{"type":"string","description_kind":"plain","optional":true}},"description_kind":"plain"},"max_items":1},"package":{"nesting_mode":"list","block":{"attributes":{"bucket_name":{"type":"string","description_kind":"plain","required":true},"object_name":{"type":"string","description_kind":"plain","required":true},"sha_256":{"type":"string","description_kind":"plain","optional":true}},"description_kind":"plain"},"max_items":1},"secrets":{"nesting_mode":"list","block":{"attributes":{"environment_variable":{"type":"string","description_kind":"plain","required":true},"id":{"type":"string","description_kind":"plain","required":true},"key":{"type":"string","description_kind":"plain","required":true},"version_id":{"type":"string","description_kind":"plain","required":true}},"description_kind":"plain"}},"storage_mounts":{"nesting_mode":"list","block":{"attributes":{"bucket":{"type":"string","description_kind":"plain","required":true},"mount_point_name":{"type":"string","description_kind":"plain","required":true},"prefix":{"type":"string","description_kind":"plain","optional":true},"read_only":{"type":"bool","description_kind":"plain","optional":true}},"description_kind":"plain"}},"timeouts":{"nesting_mode":"single","block":{"attributes":{"create":{"type":"string","description_kind":"plain","optional":true},"delete":{"type":"string","description_kind":"plain","optional":true},"update":{"type":"string","description_kind":"plain","optional":true}},"description_kind":"plain"}}},"description_kind":"plain"}},"yandex_function_iam_binding":{"version":0,"block":{"attributes":{"function_id":{"type":"string","description_kind":"plain","required":true},"id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"members":{"type":["set","string"],"description_kind":"plain","required":true},"role":{"type":"string","description_kind":"plain","required":true},"sleep_after":{"type":"number","description_kind":"plain","optional":true}},"block_types":{"timeouts":{"nesting_mode":"single","block":{"attributes":{"default":{"type":"string","description_kind":"plain","optional":true}},"description_kind":"plain"}}},"description_kind":"plain"}},"yandex_function_scaling_policy":{"version":0,"block":{"attributes":{"function_id":{"type":"string","description_kind":"plain","required":true},"id":{"type":"string","description_kind":"plain","optional":true,"computed":true}},"block_types":{"policy":{"nesting_mode":"set","block":{"attributes":{"tag":{"type":"string","description_kind":"plain","required":true},"zone_instances_limit":{"type":"number","description_kind":"plain","optional":true},"zone_requests_limit":{"type":"number","description_kind":"plain","optional":true}},"description_kind":"plain"}}},"description_kind":"plain"}},"yandex_function_trigger":{"version":0,"block":{"attributes":{"created_at":{"type":"string","description_kind":"plain","computed":true},"description":{"type":"string","description_kind":"plain","optional":true},"folder_id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"labels":{"type":["map","string"],"description_kind":"plain","optional":true},"name":{"type":"string","description_kind":"plain","required":true}},"block_types":{"container":{"nesting_mode":"list","block":{"attributes":{"id":{"type":"string","description_kind":"plain","required":true},"path":{"type":"string","description_kind":"plain","optional":true},"retry_attempts":{"type":"string","description_kind":"plain","optional":true},"retry_interval":{"type":"string","description_kind":"plain","optional":true},"service_account_id":{"type":"string","description_kind":"plain","optional":true}},"description_kind":"plain"},"max_items":1},"container_registry":{"nesting_mode":"list","block":{"attributes":{"batch_cutoff":{"type":"string","description_kind":"plain","required":true},"batch_size":{"type":"string","description_kind":"plain","optional":true},"create_image":{"type":"bool","description_kind":"plain","optional":true},"create_image_tag":{"type":"bool","description_kind":"plain","optional":true},"delete_image":{"type":"bool","description_kind":"plain","optional":true},"delete_image_tag":{"type":"bool","description_kind":"plain","optional":true},"image_name":{"type":"string","description_kind":"plain","optional":true},"registry_id":{"type":"string","description_kind":"plain","required":true},"tag":{"type":"string","description_kind":"plain","optional":true}},"description_kind":"plain"},"max_items":1},"data_streams":{"nesting_mode":"list","block":{"attributes":{"batch_cutoff":{"type":"string","description_kind":"plain","required":true},"batch_size":{"type":"string","description_kind":"plain","optional":true},"database":{"type":"string","description_kind":"plain","required":true},"service_account_id":{"type":"string","description_kind":"plain","required":true},"stream_name":{"type":"string","description_kind":"plain","required":true}},"description_kind":"plain"},"max_items":1},"dlq":{"nesting_mode":"list","block":{"attributes":{"queue_id":{"type":"string","description_kind":"plain","required":true},"service_account_id":{"type":"string","description_kind":"plain","required":true}},"description_kind":"plain"},"max_items":1},"function":{"nesting_mode":"list","block":{"attributes":{"id":{"type":"string","description_kind":"plain","required":true},"retry_attempts":{"type":"string","description_kind":"plain","optional":true},"retry_interval":{"type":"string","description_kind":"plain","optional":true},"service_account_id":{"type":"string","description_kind":"plain","optional":true},"tag":{"type":"string","description_kind":"plain","optional":true}},"description_kind":"plain"},"max_items":1},"iot":{"nesting_mode":"list","block":{"attributes":{"batch_cutoff":{"type":"string","description_kind":"plain","required":true},"batch_size":{"type":"string","description_kind":"plain","optional":true},"device_id":{"type":"string","description_kind":"plain","optional":true},"registry_id":{"type":"string","description_kind":"plain","required":true},"topic":{"type":"string","description_kind":"plain","optional":true}},"description_kind":"plain"},"max_items":1},"log_group":{"nesting_mode":"list","block":{"attributes":{"batch_cutoff":{"type":"string","description_kind":"plain","required":true},"batch_size":{"type":"string","description_kind":"plain","optional":true},"log_group_ids":{"type":["set","string"],"description_kind":"plain","required":true}},"description_kind":"plain"},"max_items":1},"logging":{"nesting_mode":"list","block":{"attributes":{"batch_cutoff":{"type":"string","description_kind":"plain","required":true},"batch_size":{"type":"string","description_kind":"plain","optional":true},"group_id":{"type":"string","description_kind":"plain","required":true},"levels":{"type":["set","string"],"description_kind":"plain","optional":true},"resource_ids":{"type":["set","string"],"description_kind":"plain","optional":true},"resource_types":{"type":["set","string"],"description_kind":"plain","optional":true},"stream_names":{"type":["set","string"],"description_kind":"plain","optional":true}},"description_kind":"plain"},"max_items":1},"mail":{"nesting_mode":"list","block":{"attributes":{"attachments_bucket_id":{"type":"string","description_kind":"plain","optional":true},"batch_cutoff":{"type":"string","description_kind":"plain","required":true},"batch_size":{"type":"string","description_kind":"plain","optional":true},"service_account_id":{"type":"string","description_kind":"plain","optional":true}},"description_kind":"plain"},"max_items":1},"message_queue":{"nesting_mode":"list","block":{"attributes":{"batch_cutoff":{"type":"string","description_kind":"plain","required":true},"batch_size":{"type":"string","description_kind":"plain","optional":true},"queue_id":{"type":"string","description_kind":"plain","required":true},"service_account_id":{"type":"string","description_kind":"plain","required":true},"visibility_timeout":{"type":"string","description_kind":"plain","optional":true}},"description_kind":"plain"},"max_items":1},"object_storage":{"nesting_mode":"list","block":{"attributes":{"batch_cutoff":{"type":"string","description_kind":"plain","required":true},"batch_size":{"type":"string","description_kind":"plain","optional":true},"bucket_id":{"type":"string","description_kind":"plain","required":true},"create":{"type":"bool","description_kind":"plain","optional":true},"delete":{"type":"bool","description_kind":"plain","optional":true},"prefix":{"type":"string","description_kind":"plain","optional":true},"suffix":{"type":"string","description_kind":"plain","optional":true},"update":{"type":"bool","description_kind":"plain","optional":true}},"description_kind":"plain"},"max_items":1},"timeouts":{"nesting_mode":"single","block":{"attributes":{"create":{"type":"string","description_kind":"plain","optional":true},"delete":{"type":"string","description_kind":"plain","optional":true},"update":{"type":"string","description_kind":"plain","optional":true}},"description_kind":"plain"}},"timer":{"nesting_mode":"list","block":{"attributes":{"cron_expression":{"type":"string","description_kind":"plain","required":true},"payload":{"type":"string","description_kind":"plain","optional":true}},"description_kind":"plain"},"max_items":1}},"description_kind":"plain"}},"yandex_iam_service_account":{"version":0,"block":{"attributes":{"created_at":{"type":"string","description_kind":"plain","computed":true},"description":{"type":"string","description_kind":"plain","optional":true},"folder_id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"name":{"type":"string","description_kind":"plain","required":true}},"block_types":{"timeouts":{"nesting_mode":"single","block":{"attributes":{"create":{"type":"string","description_kind":"plain","optional":true},"delete":{"type":"string","description_kind":"plain","optional":true},"update":{"type":"string","description_kind":"plain","optional":true}},"description_kind":"plain"}}},"description_kind":"plain"}},"yandex_iam_service_account_api_key":{"version":0,"block":{"attributes":{"created_at":{"type":"string","description_kind":"plain","computed":true},"description":{"type":"string","description_kind":"plain","optional":true},"encrypted_secret_key":{"type":"string","description_kind":"plain","computed":true},"id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"key_fingerprint":{"type":"string","description_kind":"plain","computed":true},"pgp_key":{"type":"string","description_kind":"plain","optional":true},"secret_key":{"type":"string","description_kind":"plain","computed":true,"sensitive":true},"service_account_id":{"type":"string","description_kind":"plain","required":true}},"description_kind":"plain"}},"yandex_iam_service_account_iam_binding":{"version":0,"block":{"attributes":{"id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"members":{"type":["set","string"],"description_kind":"plain","required":true},"role":{"type":"string","description_kind":"plain","required":true},"service_account_id":{"type":"string","description_kind":"plain","required":true},"sleep_after":{"type":"number","description_kind":"plain","optional":true}},"block_types":{"timeouts":{"nesting_mode":"single","block":{"attributes":{"default":{"type":"string","description_kind":"plain","optional":true}},"description_kind":"plain"}}},"description_kind":"plain"}},"yandex_iam_service_account_iam_member":{"version":0,"block":{"attributes":{"id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"member":{"type":"string","description_kind":"plain","required":true},"role":{"type":"string","description_kind":"plain","required":true},"service_account_id":{"type":"string","description_kind":"plain","required":true},"sleep_after":{"type":"number","description_kind":"plain","optional":true}},"block_types":{"timeouts":{"nesting_mode":"single","block":{"attributes":{"default":{"type":"string","description_kind":"plain","optional":true}},"description_kind":"plain"}}},"description_kind":"plain"}},"yandex_iam_service_account_iam_policy":{"version":0,"block":{"attributes":{"id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"policy_data":{"type":"string","description_kind":"plain","required":true},"service_account_id":{"type":"string","description_kind":"plain","required":true}},"block_types":{"timeouts":{"nesting_mode":"single","block":{"attributes":{"default":{"type":"string","description_kind":"plain","optional":true}},"description_kind":"plain"}}},"description_kind":"plain"}},"yandex_iam_service_account_key":{"version":0,"block":{"attributes":{"created_at":{"type":"string","description_kind":"plain","computed":true},"description":{"type":"string","description_kind":"plain","optional":true},"encrypted_private_key":{"type":"string","description_kind":"plain","computed":true},"format":{"type":"string","description_kind":"plain","optional":true},"id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"key_algorithm":{"type":"string","description_kind":"plain","optional":true},"key_fingerprint":{"type":"string","description_kind":"plain","computed":true},"pgp_key":{"type":"string","description_kind":"plain","optional":true},"private_key":{"type":"string","description_kind":"plain","computed":true,"sensitive":true},"public_key":{"type":"string","description_kind":"plain","computed":true},"service_account_id":{"type":"string","description_kind":"plain","required":true}},"description_kind":"plain"}},"yandex_iam_service_account_static_access_key":{"version":0,"block":{"attributes":{"access_key":{"type":"string","description_kind":"plain","computed":true},"created_at":{"type":"string","description_kind":"plain","computed":true},"description":{"type":"string","description_kind":"plain","optional":true},"encrypted_secret_key":{"type":"string","description_kind":"plain","computed":true},"id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"key_fingerprint":{"type":"string","description_kind":"plain","computed":true},"pgp_key":{"type":"string","description_kind":"plain","optional":true},"secret_key":{"type":"string","description_kind":"plain","computed":true,"sensitive":true},"service_account_id":{"type":"string","description_kind":"plain","required":true}},"description_kind":"plain"}},"yandex_iot_core_broker":{"version":0,"block":{"attributes":{"certificates":{"type":["set","string"],"description_kind":"plain","optional":true},"created_at":{"type":"string","description_kind":"plain","computed":true},"description":{"type":"string","description_kind":"plain","optional":true},"folder_id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"labels":{"type":["map","string"],"description_kind":"plain","optional":true},"name":{"type":"string","description_kind":"plain","required":true}},"block_types":{"log_options":{"nesting_mode":"list","block":{"attributes":{"disabled":{"type":"bool","description_kind":"plain","optional":true},"folder_id":{"type":"string","description_kind":"plain","optional":true},"log_group_id":{"type":"string","description_kind":"plain","optional":true},"min_level":{"type":"string","description_kind":"plain","optional":true}},"description_kind":"plain"},"max_items":1},"timeouts":{"nesting_mode":"single","block":{"attributes":{"create":{"type":"string","description_kind":"plain","optional":true},"delete":{"type":"string","description_kind":"plain","optional":true},"update":{"type":"string","description_kind":"plain","optional":true}},"description_kind":"plain"}}},"description_kind":"plain"}},"yandex_iot_core_device":{"version":0,"block":{"attributes":{"aliases":{"type":["map","string"],"description_kind":"plain","optional":true},"certificates":{"type":["set","string"],"description_kind":"plain","optional":true},"created_at":{"type":"string","description_kind":"plain","computed":true},"description":{"type":"string","description_kind":"plain","optional":true},"id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"name":{"type":"string","description_kind":"plain","required":true},"passwords":{"type":["set","string"],"description_kind":"plain","optional":true,"sensitive":true},"registry_id":{"type":"string","description_kind":"plain","required":true}},"block_types":{"timeouts":{"nesting_mode":"single","block":{"attributes":{"create":{"type":"string","description_kind":"plain","optional":true},"delete":{"type":"string","description_kind":"plain","optional":true},"update":{"type":"string","description_kind":"plain","optional":true}},"description_kind":"plain"}}},"description_kind":"plain"}},"yandex_iot_core_registry":{"version":0,"block":{"attributes":{"certificates":{"type":["set","string"],"description_kind":"plain","optional":true},"created_at":{"type":"string","description_kind":"plain","computed":true},"description":{"type":"string","description_kind":"plain","optional":true},"folder_id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"labels":{"type":["map","string"],"description_kind":"plain","optional":true},"name":{"type":"string","description_kind":"plain","required":true},"passwords":{"type":["set","string"],"description_kind":"plain","optional":true,"sensitive":true}},"block_types":{"log_options":{"nesting_mode":"list","block":{"attributes":{"disabled":{"type":"bool","description_kind":"plain","optional":true},"folder_id":{"type":"string","description_kind":"plain","optional":true},"log_group_id":{"type":"string","description_kind":"plain","optional":true},"min_level":{"type":"string","description_kind":"plain","optional":true}},"description_kind":"plain"},"max_items":1},"timeouts":{"nesting_mode":"single","block":{"attributes":{"create":{"type":"string","description_kind":"plain","optional":true},"delete":{"type":"string","description_kind":"plain","optional":true},"update":{"type":"string","description_kind":"plain","optional":true}},"description_kind":"plain"}}},"description_kind":"plain"}},"yandex_kms_asymmetric_encryption_key":{"version":1,"block":{"attributes":{"created_at":{"type":"string","description_kind":"plain","computed":true},"deletion_protection":{"type":"bool","description_kind":"plain","optional":true},"description":{"type":"string","description_kind":"plain","optional":true},"encryption_algorithm":{"type":"string","description_kind":"plain","optional":true},"folder_id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"labels":{"type":["map","string"],"description_kind":"plain","optional":true},"name":{"type":"string","description_kind":"plain","optional":true},"status":{"type":"string","description_kind":"plain","computed":true}},"block_types":{"timeouts":{"nesting_mode":"single","block":{"attributes":{"create":{"type":"string","description_kind":"plain","optional":true},"delete":{"type":"string","description_kind":"plain","optional":true},"read":{"type":"string","description_kind":"plain","optional":true},"update":{"type":"string","description_kind":"plain","optional":true}},"description_kind":"plain"}}},"description_kind":"plain"}},"yandex_kms_asymmetric_encryption_key_iam_binding":{"version":0,"block":{"attributes":{"asymmetric_encryption_key_id":{"type":"string","description_kind":"plain","required":true},"id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"members":{"type":["set","string"],"description_kind":"plain","required":true},"role":{"type":"string","description_kind":"plain","required":true},"sleep_after":{"type":"number","description_kind":"plain","optional":true}},"block_types":{"timeouts":{"nesting_mode":"single","block":{"attributes":{"default":{"type":"string","description_kind":"plain","optional":true}},"description_kind":"plain"}}},"description_kind":"plain"}},"yandex_kms_asymmetric_signature_key":{"version":1,"block":{"attributes":{"created_at":{"type":"string","description_kind":"plain","computed":true},"deletion_protection":{"type":"bool","description_kind":"plain","optional":true},"description":{"type":"string","description_kind":"plain","optional":true},"folder_id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"labels":{"type":["map","string"],"description_kind":"plain","optional":true},"name":{"type":"string","description_kind":"plain","optional":true},"signature_algorithm":{"type":"string","description_kind":"plain","optional":true},"status":{"type":"string","description_kind":"plain","computed":true}},"block_types":{"timeouts":{"nesting_mode":"single","block":{"attributes":{"create":{"type":"string","description_kind":"plain","optional":true},"delete":{"type":"string","description_kind":"plain","optional":true},"read":{"type":"string","description_kind":"plain","optional":true},"update":{"type":"string","description_kind":"plain","optional":true}},"description_kind":"plain"}}},"description_kind":"plain"}},"yandex_kms_asymmetric_signature_key_iam_binding":{"version":0,"block":{"attributes":{"asymmetric_signature_key_id":{"type":"string","description_kind":"plain","required":true},"id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"members":{"type":["set","string"],"description_kind":"plain","required":true},"role":{"type":"string","description_kind":"plain","required":true},"sleep_after":{"type":"number","description_kind":"plain","optional":true}},"block_types":{"timeouts":{"nesting_mode":"single","block":{"attributes":{"default":{"type":"string","description_kind":"plain","optional":true}},"description_kind":"plain"}}},"description_kind":"plain"}},"yandex_kms_secret_ciphertext":{"version":0,"block":{"attributes":{"aad_context":{"type":"string","description_kind":"plain","optional":true},"ciphertext":{"type":"string","description_kind":"plain","computed":true},"id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"key_id":{"type":"string","description_kind":"plain","required":true},"plaintext":{"type":"string","description_kind":"plain","required":true,"sensitive":true}},"block_types":{"timeouts":{"nesting_mode":"single","block":{"attributes":{"create":{"type":"string","description_kind":"plain","optional":true},"delete":{"type":"string","description_kind":"plain","optional":true},"read":{"type":"string","description_kind":"plain","optional":true}},"description_kind":"plain"}}},"description_kind":"plain"}},"yandex_kms_symmetric_key":{"version":1,"block":{"attributes":{"created_at":{"type":"string","description_kind":"plain","computed":true},"default_algorithm":{"type":"string","description_kind":"plain","optional":true},"deletion_protection":{"type":"bool","description_kind":"plain","optional":true},"description":{"type":"string","description_kind":"plain","optional":true},"folder_id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"labels":{"type":["map","string"],"description_kind":"plain","optional":true},"name":{"type":"string","description_kind":"plain","optional":true},"rotated_at":{"type":"string","description_kind":"plain","computed":true},"rotation_period":{"type":"string","description_kind":"plain","optional":true},"status":{"type":"string","description_kind":"plain","computed":true}},"block_types":{"timeouts":{"nesting_mode":"single","block":{"attributes":{"create":{"type":"string","description_kind":"plain","optional":true},"delete":{"type":"string","description_kind":"plain","optional":true},"read":{"type":"string","description_kind":"plain","optional":true},"update":{"type":"string","description_kind":"plain","optional":true}},"description_kind":"plain"}}},"description_kind":"plain"}},"yandex_kms_symmetric_key_iam_binding":{"version":0,"block":{"attributes":{"id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"members":{"type":["set","string"],"description_kind":"plain","required":true},"role":{"type":"string","description_kind":"plain","required":true},"sleep_after":{"type":"number","description_kind":"plain","optional":true},"symmetric_key_id":{"type":"string","description_kind":"plain","required":true}},"block_types":{"timeouts":{"nesting_mode":"single","block":{"attributes":{"default":{"type":"string","description_kind":"plain","optional":true}},"description_kind":"plain"}}},"description_kind":"plain"}},"yandex_kubernetes_cluster":{"version":0,"block":{"attributes":{"cluster_ipv4_range":{"type":"string","description_kind":"plain","optional":true,"computed":true},"cluster_ipv6_range":{"type":"string","description_kind":"plain","optional":true,"computed":true},"created_at":{"type":"string","description_kind":"plain","computed":true},"description":{"type":"string","description_kind":"plain","optional":true,"computed":true},"folder_id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"health":{"type":"string","description_kind":"plain","computed":true},"id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"labels":{"type":["map","string"],"description_kind":"plain","optional":true,"computed":true},"log_group_id":{"type":"string","description_kind":"plain","computed":true},"name":{"type":"string","description_kind":"plain","optional":true,"computed":true},"network_id":{"type":"string","description_kind":"plain","required":true},"network_policy_provider":{"type":"string","description_kind":"plain","optional":true},"node_ipv4_cidr_mask_size":{"type":"number","description_kind":"plain","optional":true},"node_service_account_id":{"type":"string","description_kind":"plain","required":true},"release_channel":{"type":"string","description_kind":"plain","optional":true,"computed":true},"service_account_id":{"type":"string","description_kind":"plain","required":true},"service_ipv4_range":{"type":"string","description_kind":"plain","optional":true,"computed":true},"service_ipv6_range":{"type":"string","description_kind":"plain","optional":true,"computed":true},"status":{"type":"string","description_kind":"plain","computed":true}},"block_types":{"kms_provider":{"nesting_mode":"list","block":{"attributes":{"key_id":{"type":"string","description_kind":"plain","optional":true}},"description_kind":"plain"},"max_items":1},"master":{"nesting_mode":"list","block":{"attributes":{"cluster_ca_certificate":{"type":"string","description_kind":"plain","computed":true},"etcd_cluster_size":{"type":"number","description_kind":"plain","optional":true,"computed":true},"external_v4_address":{"type":"string","description_kind":"plain","computed":true},"external_v4_endpoint":{"type":"string","description_kind":"plain","computed":true},"external_v6_address":{"type":"string","description_kind":"plain","optional":true},"external_v6_endpoint":{"type":"string","description_kind":"plain","computed":true},"internal_v4_address":{"type":"string","description_kind":"plain","computed":true},"internal_v4_endpoint":{"type":"string","description_kind":"plain","computed":true},"public_ip":{"type":"bool","description_kind":"plain","optional":true,"computed":true},"security_group_ids":{"type":["set","string"],"description_kind":"plain","optional":true},"version":{"type":"string","description_kind":"plain","optional":true,"computed":true},"version_info":{"type":["list",["object",{"current_version":"string","new_revision_available":"bool","new_revision_summary":"string","version_deprecated":"bool"}]],"description_kind":"plain","computed":true}},"block_types":{"maintenance_policy":{"nesting_mode":"list","block":{"attributes":{"auto_upgrade":{"type":"bool","description_kind":"plain","required":true}},"block_types":{"maintenance_window":{"nesting_mode":"set","block":{"attributes":{"day":{"type":"string","description_kind":"plain","optional":true,"computed":true},"duration":{"type":"string","description_kind":"plain","required":true},"start_time":{"type":"string","description_kind":"plain","required":true}},"description_kind":"plain"}}},"description_kind":"plain"},"max_items":1},"master_location":{"nesting_mode":"list","block":{"attributes":{"subnet_id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"zone":{"type":"string","description_kind":"plain","optional":true,"computed":true}},"description_kind":"plain"}},"master_logging":{"nesting_mode":"list","block":{"attributes":{"audit_enabled":{"type":"bool","description_kind":"plain","optional":true},"cluster_autoscaler_enabled":{"type":"bool","description_kind":"plain","optional":true},"enabled":{"type":"bool","description_kind":"plain","optional":true},"events_enabled":{"type":"bool","description_kind":"plain","optional":true},"folder_id":{"type":"string","description_kind":"plain","optional":true},"kube_apiserver_enabled":{"type":"bool","description_kind":"plain","optional":true},"log_group_id":{"type":"string","description_kind":"plain","optional":true}},"description_kind":"plain"},"max_items":1},"regional":{"nesting_mode":"list","block":{"attributes":{"region":{"type":"string","description_kind":"plain","required":true}},"block_types":{"location":{"nesting_mode":"list","block":{"attributes":{"subnet_id":{"type":"string","description_kind":"plain","optional":true},"zone":{"type":"string","description_kind":"plain","optional":true}},"description_kind":"plain"}}},"description_kind":"plain"},"max_items":1},"zonal":{"nesting_mode":"list","block":{"attributes":{"subnet_id":{"type":"string","description_kind":"plain","optional":true},"zone":{"type":"string","description_kind":"plain","optional":true,"computed":true}},"description_kind":"plain"},"max_items":1}},"description_kind":"plain"},"min_items":1,"max_items":1},"network_implementation":{"nesting_mode":"list","block":{"block_types":{"cilium":{"nesting_mode":"list","block":{"description_kind":"plain"},"max_items":1}},"description_kind":"plain"},"max_items":1},"timeouts":{"nesting_mode":"single","block":{"attributes":{"create":{"type":"string","description_kind":"plain","optional":true},"delete":{"type":"string","description_kind":"plain","optional":true},"read":{"type":"string","description_kind":"plain","optional":true},"update":{"type":"string","description_kind":"plain","optional":true}},"description_kind":"plain"}}},"description_kind":"plain"}},"yandex_kubernetes_node_group":{"version":0,"block":{"attributes":{"allowed_unsafe_sysctls":{"type":["list","string"],"description_kind":"plain","optional":true},"cluster_id":{"type":"string","description_kind":"plain","required":true},"created_at":{"type":"string","description_kind":"plain","computed":true},"description":{"type":"string","description_kind":"plain","optional":true,"computed":true},"id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"instance_group_id":{"type":"string","description_kind":"plain","computed":true},"labels":{"type":["map","string"],"description_kind":"plain","optional":true,"computed":true},"name":{"type":"string","description_kind":"plain","optional":true,"computed":true},"node_labels":{"type":["map","string"],"description_kind":"plain","optional":true},"node_taints":{"type":["list","string"],"description_kind":"plain","optional":true},"status":{"type":"string","description_kind":"plain","computed":true},"version":{"type":"string","description_kind":"plain","optional":true,"computed":true},"version_info":{"type":["list",["object",{"current_version":"string","new_revision_available":"bool","new_revision_summary":"string","version_deprecated":"bool"}]],"description_kind":"plain","computed":true}},"block_types":{"allocation_policy":{"nesting_mode":"list","block":{"block_types":{"location":{"nesting_mode":"list","block":{"attributes":{"subnet_id":{"type":"string","description_kind":"plain","deprecated":true,"optional":true,"computed":true},"zone":{"type":"string","description_kind":"plain","optional":true,"computed":true}},"description_kind":"plain"}}},"description_kind":"plain"},"max_items":1},"deploy_policy":{"nesting_mode":"list","block":{"attributes":{"max_expansion":{"type":"number","description_kind":"plain","required":true},"max_unavailable":{"type":"number","description_kind":"plain","required":true}},"description_kind":"plain"},"max_items":1},"instance_template":{"nesting_mode":"list","block":{"attributes":{"labels":{"type":["map","string"],"description_kind":"plain","optional":true},"metadata":{"type":["map","string"],"description_kind":"plain","optional":true,"computed":true},"name":{"type":"string","description_kind":"plain","optional":true},"nat":{"type":"bool","description_kind":"plain","deprecated":true,"optional":true,"computed":true},"network_acceleration_type":{"type":"string","description_kind":"plain","optional":true,"computed":true},"platform_id":{"type":"string","description_kind":"plain","optional":true,"computed":true}},"block_types":{"boot_disk":{"nesting_mode":"list","block":{"attributes":{"size":{"type":"number","description_kind":"plain","optional":true,"computed":true},"type":{"type":"string","description_kind":"plain","optional":true,"computed":true}},"description_kind":"plain"},"max_items":1},"container_network":{"nesting_mode":"list","block":{"attributes":{"pod_mtu":{"type":"number","description_kind":"plain","optional":true,"computed":true}},"description_kind":"plain"},"max_items":1},"container_runtime":{"nesting_mode":"list","block":{"attributes":{"type":{"type":"string","description_kind":"plain","required":true}},"description_kind":"plain"},"max_items":1},"gpu_settings":{"nesting_mode":"list","block":{"attributes":{"gpu_cluster_id":{"type":"string","description_kind":"plain","optional":true},"gpu_environment":{"type":"string","description_kind":"plain","optional":true,"computed":true}},"description_kind":"plain"},"max_items":1},"network_interface":{"nesting_mode":"list","block":{"attributes":{"ipv4":{"type":"bool","description_kind":"plain","optional":true},"ipv6":{"type":"bool","description_kind":"plain","optional":true,"computed":true},"nat":{"type":"bool","description_kind":"plain","optional":true,"computed":true},"security_group_ids":{"type":["set","string"],"description_kind":"plain","optional":true},"subnet_ids":{"type":["set","string"],"description_kind":"plain","required":true}},"block_types":{"ipv4_dns_records":{"nesting_mode":"list","block":{"attributes":{"dns_zone_id":{"type":"string","description_kind":"plain","optional":true},"fqdn":{"type":"string","description_kind":"plain","required":true},"ptr":{"type":"bool","description_kind":"plain","optional":true},"ttl":{"type":"number","description_kind":"plain","optional":true}},"description_kind":"plain"}},"ipv6_dns_records":{"nesting_mode":"list","block":{"attributes":{"dns_zone_id":{"type":"string","description_kind":"plain","optional":true},"fqdn":{"type":"string","description_kind":"plain","required":true},"ptr":{"type":"bool","description_kind":"plain","optional":true},"ttl":{"type":"number","description_kind":"plain","optional":true}},"description_kind":"plain"}}},"description_kind":"plain"}},"placement_policy":{"nesting_mode":"list","block":{"attributes":{"placement_group_id":{"type":"string","description_kind":"plain","required":true}},"description_kind":"plain"},"max_items":1},"resources":{"nesting_mode":"list","block":{"attributes":{"core_fraction":{"type":"number","description_kind":"plain","optional":true,"computed":true},"cores":{"type":"number","description_kind":"plain","optional":true,"computed":true},"gpus":{"type":"number","description_kind":"plain","optional":true},"memory":{"type":"number","description_kind":"plain","optional":true,"computed":true}},"description_kind":"plain"},"max_items":1},"scheduling_policy":{"nesting_mode":"list","block":{"attributes":{"preemptible":{"type":"bool","description_kind":"plain","optional":true,"computed":true}},"description_kind":"plain"},"max_items":1}},"description_kind":"plain"},"min_items":1,"max_items":1},"maintenance_policy":{"nesting_mode":"list","block":{"attributes":{"auto_repair":{"type":"bool","description_kind":"plain","required":true},"auto_upgrade":{"type":"bool","description_kind":"plain","required":true}},"block_types":{"maintenance_window":{"nesting_mode":"set","block":{"attributes":{"day":{"type":"string","description_kind":"plain","optional":true,"computed":true},"duration":{"type":"string","description_kind":"plain","required":true},"start_time":{"type":"string","description_kind":"plain","required":true}},"description_kind":"plain"}}},"description_kind":"plain"},"max_items":1},"scale_policy":{"nesting_mode":"list","block":{"block_types":{"auto_scale":{"nesting_mode":"list","block":{"attributes":{"initial":{"type":"number","description_kind":"plain","required":true},"max":{"type":"number","description_kind":"plain","required":true},"min":{"type":"number","description_kind":"plain","required":true}},"description_kind":"plain"},"max_items":1},"fixed_scale":{"nesting_mode":"list","block":{"attributes":{"size":{"type":"number","description_kind":"plain","optional":true,"computed":true}},"description_kind":"plain"},"max_items":1}},"description_kind":"plain"},"min_items":1,"max_items":1},"timeouts":{"nesting_mode":"single","block":{"attributes":{"create":{"type":"string","description_kind":"plain","optional":true},"delete":{"type":"string","description_kind":"plain","optional":true},"read":{"type":"string","description_kind":"plain","optional":true},"update":{"type":"string","description_kind":"plain","optional":true}},"description_kind":"plain"}}},"description_kind":"plain"}},"yandex_lb_network_load_balancer":{"version":0,"block":{"attributes":{"created_at":{"type":"string","description_kind":"plain","computed":true},"deletion_protection":{"type":"bool","description_kind":"plain","optional":true,"computed":true},"description":{"type":"string","description_kind":"plain","optional":true},"folder_id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"labels":{"type":["map","string"],"description_kind":"plain","optional":true},"name":{"type":"string","description_kind":"plain","optional":true},"region_id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"type":{"type":"string","description_kind":"plain","optional":true}},"block_types":{"attached_target_group":{"nesting_mode":"set","block":{"attributes":{"target_group_id":{"type":"string","description_kind":"plain","required":true}},"block_types":{"healthcheck":{"nesting_mode":"list","block":{"attributes":{"healthy_threshold":{"type":"number","description_kind":"plain","optional":true},"interval":{"type":"number","description_kind":"plain","optional":true},"name":{"type":"string","description_kind":"plain","required":true},"timeout":{"type":"number","description_kind":"plain","optional":true},"unhealthy_threshold":{"type":"number","description_kind":"plain","optional":true}},"block_types":{"http_options":{"nesting_mode":"list","block":{"attributes":{"path":{"type":"string","description_kind":"plain","optional":true},"port":{"type":"number","description_kind":"plain","required":true}},"description_kind":"plain"},"max_items":1},"tcp_options":{"nesting_mode":"list","block":{"attributes":{"port":{"type":"number","description_kind":"plain","required":true}},"description_kind":"plain"},"max_items":1}},"description_kind":"plain"},"min_items":1}},"description_kind":"plain"}},"listener":{"nesting_mode":"set","block":{"attributes":{"name":{"type":"string","description_kind":"plain","required":true},"port":{"type":"number","description_kind":"plain","required":true},"protocol":{"type":"string","description_kind":"plain","optional":true,"computed":true},"target_port":{"type":"number","description_kind":"plain","optional":true,"computed":true}},"block_types":{"external_address_spec":{"nesting_mode":"set","block":{"attributes":{"address":{"type":"string","description_kind":"plain","optional":true,"computed":true},"ip_version":{"type":"string","description_kind":"plain","optional":true}},"description_kind":"plain"},"max_items":1},"internal_address_spec":{"nesting_mode":"set","block":{"attributes":{"address":{"type":"string","description_kind":"plain","optional":true,"computed":true},"ip_version":{"type":"string","description_kind":"plain","optional":true},"subnet_id":{"type":"string","description_kind":"plain","required":true}},"description_kind":"plain"},"max_items":1}},"description_kind":"plain"}},"timeouts":{"nesting_mode":"single","block":{"attributes":{"create":{"type":"string","description_kind":"plain","optional":true},"delete":{"type":"string","description_kind":"plain","optional":true},"update":{"type":"string","description_kind":"plain","optional":true}},"description_kind":"plain"}}},"description_kind":"plain"}},"yandex_lb_target_group":{"version":0,"block":{"attributes":{"created_at":{"type":"string","description_kind":"plain","computed":true},"description":{"type":"string","description_kind":"plain","optional":true},"folder_id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"labels":{"type":["map","string"],"description_kind":"plain","optional":true},"name":{"type":"string","description_kind":"plain","optional":true},"region_id":{"type":"string","description_kind":"plain","optional":true,"computed":true}},"block_types":{"target":{"nesting_mode":"set","block":{"attributes":{"address":{"type":"string","description_kind":"plain","required":true},"subnet_id":{"type":"string","description_kind":"plain","required":true}},"description_kind":"plain"}},"timeouts":{"nesting_mode":"single","block":{"attributes":{"create":{"type":"string","description_kind":"plain","optional":true},"delete":{"type":"string","description_kind":"plain","optional":true},"update":{"type":"string","description_kind":"plain","optional":true}},"description_kind":"plain"}}},"description_kind":"plain"}},"yandex_loadtesting_agent":{"version":0,"block":{"attributes":{"compute_instance_id":{"type":"string","description_kind":"plain","computed":true},"description":{"type":"string","description_kind":"plain","optional":true},"folder_id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"labels":{"type":["map","string"],"description_kind":"plain","optional":true},"name":{"type":"string","description_kind":"plain","required":true}},"block_types":{"compute_instance":{"nesting_mode":"list","block":{"attributes":{"computed_metadata":{"type":["map","string"],"description_kind":"plain","computed":true},"labels":{"type":["map","string"],"description_kind":"plain","optional":true},"metadata":{"type":["map","string"],"description_kind":"plain","optional":true},"platform_id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"service_account_id":{"type":"string","description_kind":"plain","required":true},"zone_id":{"type":"string","description_kind":"plain","optional":true,"computed":true}},"block_types":{"boot_disk":{"nesting_mode":"list","block":{"attributes":{"auto_delete":{"type":"bool","description_kind":"plain","optional":true},"device_name":{"type":"string","description_kind":"plain","optional":true,"computed":true},"disk_id":{"type":"string","description_kind":"plain","computed":true}},"block_types":{"initialize_params":{"nesting_mode":"list","block":{"attributes":{"block_size":{"type":"number","description_kind":"plain","optional":true,"computed":true},"description":{"type":"string","description_kind":"plain","optional":true,"computed":true},"name":{"type":"string","description_kind":"plain","optional":true,"computed":true},"size":{"type":"number","description_kind":"plain","optional":true},"type":{"type":"string","description_kind":"plain","optional":true}},"description_kind":"plain"},"min_items":1,"max_items":1}},"description_kind":"plain"},"min_items":1,"max_items":1},"network_interface":{"nesting_mode":"list","block":{"attributes":{"index":{"type":"number","description_kind":"plain","computed":true},"ip_address":{"type":"string","description_kind":"plain","optional":true,"computed":true},"ipv4":{"type":"bool","description_kind":"plain","optional":true},"ipv6":{"type":"bool","description_kind":"plain","optional":true,"computed":true},"ipv6_address":{"type":"string","description_kind":"plain","optional":true,"computed":true},"mac_address":{"type":"string","description_kind":"plain","computed":true},"nat":{"type":"bool","description_kind":"plain","optional":true},"nat_ip_address":{"type":"string","description_kind":"plain","optional":true,"computed":true},"nat_ip_version":{"type":"string","description_kind":"plain","computed":true},"security_group_ids":{"type":["set","string"],"description_kind":"plain","optional":true,"computed":true},"subnet_id":{"type":"string","description_kind":"plain","required":true}},"description_kind":"plain"},"min_items":1},"resources":{"nesting_mode":"list","block":{"attributes":{"core_fraction":{"type":"number","description_kind":"plain","optional":true},"cores":{"type":"number","description_kind":"plain","optional":true},"memory":{"type":"number","description_kind":"plain","optional":true}},"description_kind":"plain"},"min_items":1,"max_items":1}},"description_kind":"plain"},"min_items":1,"max_items":1},"timeouts":{"nesting_mode":"single","block":{"attributes":{"create":{"type":"string","description_kind":"plain","optional":true},"delete":{"type":"string","description_kind":"plain","optional":true},"update":{"type":"string","description_kind":"plain","optional":true}},"description_kind":"plain"}}},"description_kind":"plain"}},"yandex_lockbox_secret":{"version":1,"block":{"attributes":{"created_at":{"type":"string","description_kind":"plain","computed":true},"deletion_protection":{"type":"bool","description_kind":"plain","optional":true},"description":{"type":"string","description_kind":"plain","optional":true},"folder_id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"kms_key_id":{"type":"string","description_kind":"plain","optional":true},"labels":{"type":["map","string"],"description_kind":"plain","optional":true},"name":{"type":"string","description_kind":"plain","optional":true},"status":{"type":"string","description_kind":"plain","computed":true}},"block_types":{"timeouts":{"nesting_mode":"single","block":{"attributes":{"create":{"type":"string","description_kind":"plain","optional":true},"delete":{"type":"string","description_kind":"plain","optional":true},"read":{"type":"string","description_kind":"plain","optional":true},"update":{"type":"string","description_kind":"plain","optional":true}},"description_kind":"plain"}}},"description_kind":"plain"}},"yandex_lockbox_secret_iam_binding":{"version":0,"block":{"attributes":{"id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"members":{"type":["set","string"],"description_kind":"plain","required":true},"role":{"type":"string","description_kind":"plain","required":true},"secret_id":{"type":"string","description_kind":"plain","required":true},"sleep_after":{"type":"number","description_kind":"plain","optional":true}},"block_types":{"timeouts":{"nesting_mode":"single","block":{"attributes":{"default":{"type":"string","description_kind":"plain","optional":true}},"description_kind":"plain"}}},"description_kind":"plain"}},"yandex_lockbox_secret_version":{"version":1,"block":{"attributes":{"description":{"type":"string","description_kind":"plain","optional":true},"id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"secret_id":{"type":"string","description_kind":"plain","required":true}},"block_types":{"entries":{"nesting_mode":"list","block":{"attributes":{"key":{"type":"string","description_kind":"plain","required":true},"text_value":{"type":"string","description_kind":"plain","optional":true,"sensitive":true}},"block_types":{"command":{"nesting_mode":"list","block":{"attributes":{"args":{"type":["list","string"],"description_kind":"plain","optional":true},"env":{"type":["map","string"],"description_kind":"plain","optional":true},"path":{"type":"string","description_kind":"plain","required":true}},"description_kind":"plain"},"max_items":1}},"description_kind":"plain"},"min_items":1},"timeouts":{"nesting_mode":"single","block":{"attributes":{"create":{"type":"string","description_kind":"plain","optional":true},"delete":{"type":"string","description_kind":"plain","optional":true},"read":{"type":"string","description_kind":"plain","optional":true}},"description_kind":"plain"}}},"description_kind":"plain"}},"yandex_lockbox_secret_version_hashed":{"version":1,"block":{"attributes":{"description":{"type":"string","description_kind":"plain","optional":true},"id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"key_1":{"type":"string","description_kind":"plain","optional":true},"key_10":{"type":"string","description_kind":"plain","optional":true},"key_2":{"type":"string","description_kind":"plain","optional":true},"key_3":{"type":"string","description_kind":"plain","optional":true},"key_4":{"type":"string","description_kind":"plain","optional":true},"key_5":{"type":"string","description_kind":"plain","optional":true},"key_6":{"type":"string","description_kind":"plain","optional":true},"key_7":{"type":"string","description_kind":"plain","optional":true},"key_8":{"type":"string","description_kind":"plain","optional":true},"key_9":{"type":"string","description_kind":"plain","optional":true},"secret_id":{"type":"string","description_kind":"plain","required":true},"text_value_1":{"type":"string","description_kind":"plain","optional":true,"sensitive":true},"text_value_10":{"type":"string","description_kind":"plain","optional":true,"sensitive":true},"text_value_2":{"type":"string","description_kind":"plain","optional":true,"sensitive":true},"text_value_3":{"type":"string","description_kind":"plain","optional":true,"sensitive":true},"text_value_4":{"type":"string","description_kind":"plain","optional":true,"sensitive":true},"text_value_5":{"type":"string","description_kind":"plain","optional":true,"sensitive":true},"text_value_6":{"type":"string","description_kind":"plain","optional":true,"sensitive":true},"text_value_7":{"type":"string","description_kind":"plain","optional":true,"sensitive":true},"text_value_8":{"type":"string","description_kind":"plain","optional":true,"sensitive":true},"text_value_9":{"type":"string","description_kind":"plain","optional":true,"sensitive":true}},"block_types":{"timeouts":{"nesting_mode":"single","block":{"attributes":{"create":{"type":"string","description_kind":"plain","optional":true},"delete":{"type":"string","description_kind":"plain","optional":true},"read":{"type":"string","description_kind":"plain","optional":true}},"description_kind":"plain"}}},"description_kind":"plain"}},"yandex_logging_group":{"version":0,"block":{"attributes":{"cloud_id":{"type":"string","description_kind":"plain","computed":true},"created_at":{"type":"string","description_kind":"plain","computed":true},"data_stream":{"type":"string","description_kind":"plain","optional":true},"description":{"type":"string","description_kind":"plain","optional":true},"folder_id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"labels":{"type":["map","string"],"description_kind":"plain","optional":true},"name":{"type":"string","description_kind":"plain","optional":true,"computed":true},"retention_period":{"type":"string","description_kind":"plain","optional":true,"computed":true},"status":{"type":"string","description_kind":"plain","computed":true}},"block_types":{"timeouts":{"nesting_mode":"single","block":{"attributes":{"default":{"type":"string","description_kind":"plain","optional":true}},"description_kind":"plain"}}},"description_kind":"plain"}},"yandex_mdb_clickhouse_cluster":{"version":0,"block":{"attributes":{"admin_password":{"type":"string","description_kind":"plain","optional":true,"sensitive":true},"cluster_id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"copy_schema_on_new_hosts":{"type":"bool","description_kind":"plain","optional":true},"created_at":{"type":"string","description_kind":"plain","computed":true},"deletion_protection":{"type":"bool","description_kind":"plain","optional":true,"computed":true},"description":{"type":"string","description_kind":"plain","optional":true},"embedded_keeper":{"type":"bool","description_kind":"plain","optional":true,"computed":true},"environment":{"type":"string","description_kind":"plain","required":true},"folder_id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"health":{"type":"string","description_kind":"plain","computed":true},"id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"labels":{"type":["map","string"],"description_kind":"plain","optional":true,"computed":true},"name":{"type":"string","description_kind":"plain","required":true},"network_id":{"type":"string","description_kind":"plain","required":true},"security_group_ids":{"type":["set","string"],"description_kind":"plain","optional":true,"computed":true},"service_account_id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"sql_database_management":{"type":"bool","description_kind":"plain","optional":true,"computed":true},"sql_user_management":{"type":"bool","description_kind":"plain","optional":true,"computed":true},"status":{"type":"string","description_kind":"plain","computed":true},"version":{"type":"string","description_kind":"plain","optional":true,"computed":true}},"block_types":{"access":{"nesting_mode":"list","block":{"attributes":{"data_lens":{"type":"bool","description_kind":"plain","optional":true},"data_transfer":{"type":"bool","description_kind":"plain","optional":true},"metrika":{"type":"bool","description_kind":"plain","optional":true},"serverless":{"type":"bool","description_kind":"plain","optional":true},"web_sql":{"type":"bool","description_kind":"plain","optional":true},"yandex_query":{"type":"bool","description_kind":"plain","optional":true}},"description_kind":"plain"},"max_items":1},"backup_window_start":{"nesting_mode":"list","block":{"attributes":{"hours":{"type":"number","description_kind":"plain","optional":true},"minutes":{"type":"number","description_kind":"plain","optional":true}},"description_kind":"plain"},"max_items":1},"clickhouse":{"nesting_mode":"list","block":{"block_types":{"config":{"nesting_mode":"list","block":{"attributes":{"background_fetches_pool_size":{"type":"number","description_kind":"plain","optional":true,"computed":true},"background_merges_mutations_concurrency_ratio":{"type":"number","description_kind":"plain","optional":true,"computed":true},"background_message_broker_schedule_pool_size":{"type":"number","description_kind":"plain","optional":true,"computed":true},"background_pool_size":{"type":"number","description_kind":"plain","optional":true,"computed":true},"background_schedule_pool_size":{"type":"number","description_kind":"plain","optional":true,"computed":true},"default_database":{"type":"string","description_kind":"plain","optional":true,"computed":true},"geobase_enabled":{"type":"bool","description_kind":"plain","optional":true,"computed":true},"geobase_uri":{"type":"string","description_kind":"plain","optional":true,"computed":true},"keep_alive_timeout":{"type":"number","description_kind":"plain","optional":true,"computed":true},"log_level":{"type":"string","description_kind":"plain","optional":true,"computed":true},"mark_cache_size":{"type":"number","description_kind":"plain","optional":true,"computed":true},"max_concurrent_queries":{"type":"number","description_kind":"plain","optional":true,"computed":true},"max_connections":{"type":"number","description_kind":"plain","optional":true,"computed":true},"max_partition_size_to_drop":{"type":"number","description_kind":"plain","optional":true,"computed":true},"max_table_size_to_drop":{"type":"number","description_kind":"plain","optional":true,"computed":true},"metric_log_enabled":{"type":"bool","description_kind":"plain","optional":true,"computed":true},"metric_log_retention_size":{"type":"number","description_kind":"plain","optional":true,"computed":true},"metric_log_retention_time":{"type":"number","description_kind":"plain","optional":true,"computed":true},"part_log_retention_size":{"type":"number","description_kind":"plain","optional":true,"computed":true},"part_log_retention_time":{"type":"number","description_kind":"plain","optional":true,"computed":true},"query_log_retention_size":{"type":"number","description_kind":"plain","optional":true,"computed":true},"query_log_retention_time":{"type":"number","description_kind":"plain","optional":true,"computed":true},"query_thread_log_enabled":{"type":"bool","description_kind":"plain","optional":true,"computed":true},"query_thread_log_retention_size":{"type":"number","description_kind":"plain","optional":true,"computed":true},"query_thread_log_retention_time":{"type":"number","description_kind":"plain","optional":true,"computed":true},"text_log_enabled":{"type":"bool","description_kind":"plain","optional":true,"computed":true},"text_log_level":{"type":"string","description_kind":"plain","optional":true,"computed":true},"text_log_retention_size":{"type":"number","description_kind":"plain","optional":true,"computed":true},"text_log_retention_time":{"type":"number","description_kind":"plain","optional":true,"computed":true},"timezone":{"type":"string","description_kind":"plain","optional":true,"computed":true},"total_memory_profiler_step":{"type":"number","description_kind":"plain","optional":true,"computed":true},"trace_log_enabled":{"type":"bool","description_kind":"plain","optional":true,"computed":true},"trace_log_retention_size":{"type":"number","description_kind":"plain","optional":true,"computed":true},"trace_log_retention_time":{"type":"number","description_kind":"plain","optional":true,"computed":true},"uncompressed_cache_size":{"type":"number","description_kind":"plain","optional":true,"computed":true}},"block_types":{"compression":{"nesting_mode":"list","block":{"attributes":{"level":{"type":"number","description_kind":"plain","optional":true},"method":{"type":"string","description_kind":"plain","required":true},"min_part_size":{"type":"number","description_kind":"plain","required":true},"min_part_size_ratio":{"type":"number","description_kind":"plain","required":true}},"description_kind":"plain"}},"graphite_rollup":{"nesting_mode":"list","block":{"attributes":{"name":{"type":"string","description_kind":"plain","required":true}},"block_types":{"pattern":{"nesting_mode":"list","block":{"attributes":{"function":{"type":"string","description_kind":"plain","required":true},"regexp":{"type":"string","description_kind":"plain","optional":true,"computed":true}},"block_types":{"retention":{"nesting_mode":"list","block":{"attributes":{"age":{"type":"number","description_kind":"plain","required":true},"precision":{"type":"number","description_kind":"plain","required":true}},"description_kind":"plain"}}},"description_kind":"plain"}}},"description_kind":"plain"}},"kafka":{"nesting_mode":"list","block":{"attributes":{"enable_ssl_certificate_verification":{"type":"bool","description_kind":"plain","optional":true,"computed":true},"max_poll_interval_ms":{"type":"number","description_kind":"plain","optional":true,"computed":true},"sasl_mechanism":{"type":"string","description_kind":"plain","optional":true,"computed":true},"sasl_password":{"type":"string","description_kind":"plain","optional":true,"computed":true,"sensitive":true},"sasl_username":{"type":"string","description_kind":"plain","optional":true,"computed":true},"security_protocol":{"type":"string","description_kind":"plain","optional":true,"computed":true},"session_timeout_ms":{"type":"number","description_kind":"plain","optional":true,"computed":true}},"description_kind":"plain"},"max_items":1},"kafka_topic":{"nesting_mode":"list","block":{"attributes":{"name":{"type":"string","description_kind":"plain","required":true}},"block_types":{"settings":{"nesting_mode":"list","block":{"attributes":{"enable_ssl_certificate_verification":{"type":"bool","description_kind":"plain","optional":true,"computed":true},"max_poll_interval_ms":{"type":"number","description_kind":"plain","optional":true,"computed":true},"sasl_mechanism":{"type":"string","description_kind":"plain","optional":true},"sasl_password":{"type":"string","description_kind":"plain","optional":true,"sensitive":true},"sasl_username":{"type":"string","description_kind":"plain","optional":true},"security_protocol":{"type":"string","description_kind":"plain","optional":true},"session_timeout_ms":{"type":"number","description_kind":"plain","optional":true,"computed":true}},"description_kind":"plain"},"max_items":1}},"description_kind":"plain"}},"merge_tree":{"nesting_mode":"list","block":{"attributes":{"cleanup_delay_period":{"type":"number","description_kind":"plain","optional":true,"computed":true},"max_avg_part_size_for_too_many_parts":{"type":"number","description_kind":"plain","optional":true,"computed":true},"max_bytes_to_merge_at_min_space_in_pool":{"type":"number","description_kind":"plain","optional":true,"computed":true},"max_number_of_merges_with_ttl_in_pool":{"type":"number","description_kind":"plain","optional":true,"computed":true},"max_parts_in_total":{"type":"number","description_kind":"plain","optional":true,"computed":true},"max_replicated_merges_in_queue":{"type":"number","description_kind":"plain","optional":true,"computed":true},"merge_selecting_sleep_ms":{"type":"number","description_kind":"plain","optional":true,"computed":true},"merge_with_recompression_ttl_timeout":{"type":"number","description_kind":"plain","optional":true,"computed":true},"merge_with_ttl_timeout":{"type":"number","description_kind":"plain","optional":true,"computed":true},"min_age_to_force_merge_on_partition_only":{"type":"bool","description_kind":"plain","optional":true,"computed":true},"min_age_to_force_merge_seconds":{"type":"number","description_kind":"plain","optional":true,"computed":true},"min_bytes_for_wide_part":{"type":"number","description_kind":"plain","optional":true,"computed":true},"min_rows_for_wide_part":{"type":"number","description_kind":"plain","optional":true,"computed":true},"number_of_free_entries_in_pool_to_lower_max_size_of_merge":{"type":"number","description_kind":"plain","optional":true,"computed":true},"parts_to_delay_insert":{"type":"number","description_kind":"plain","optional":true,"computed":true},"parts_to_throw_insert":{"type":"number","description_kind":"plain","optional":true,"computed":true},"replicated_deduplication_window":{"type":"number","description_kind":"plain","optional":true,"computed":true},"replicated_deduplication_window_seconds":{"type":"number","description_kind":"plain","optional":true,"computed":true},"ttl_only_drop_parts":{"type":"bool","description_kind":"plain","optional":true,"computed":true}},"description_kind":"plain"},"max_items":1},"rabbitmq":{"nesting_mode":"list","block":{"attributes":{"password":{"type":"string","description_kind":"plain","optional":true,"computed":true,"sensitive":true},"username":{"type":"string","description_kind":"plain","optional":true,"computed":true},"vhost":{"type":"string","description_kind":"plain","optional":true,"computed":true}},"description_kind":"plain"},"max_items":1}},"description_kind":"plain"},"max_items":1},"resources":{"nesting_mode":"list","block":{"attributes":{"disk_size":{"type":"number","description_kind":"plain","optional":true,"computed":true},"disk_type_id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"resource_preset_id":{"type":"string","description_kind":"plain","optional":true,"computed":true}},"description_kind":"plain"},"max_items":1}},"description_kind":"plain"},"max_items":1},"cloud_storage":{"nesting_mode":"list","block":{"attributes":{"data_cache_enabled":{"type":"bool","description_kind":"plain","optional":true,"computed":true},"data_cache_max_size":{"type":"number","description_kind":"plain","optional":true,"computed":true},"enabled":{"type":"bool","description_kind":"plain","required":true},"move_factor":{"type":"number","description_kind":"plain","optional":true,"computed":true},"prefer_not_to_merge":{"type":"bool","description_kind":"plain","optional":true,"computed":true}},"description_kind":"plain"},"max_items":1},"database":{"nesting_mode":"set","block":{"attributes":{"name":{"type":"string","description_kind":"plain","required":true}},"description_kind":"plain"}},"format_schema":{"nesting_mode":"set","block":{"attributes":{"name":{"type":"string","description_kind":"plain","required":true},"type":{"type":"string","description_kind":"plain","required":true},"uri":{"type":"string","description_kind":"plain","required":true}},"description_kind":"plain"}},"host":{"nesting_mode":"list","block":{"attributes":{"assign_public_ip":{"type":"bool","description_kind":"plain","optional":true},"fqdn":{"type":"string","description_kind":"plain","computed":true},"shard_name":{"type":"string","description_kind":"plain","optional":true,"computed":true},"subnet_id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"type":{"type":"string","description_kind":"plain","required":true},"zone":{"type":"string","description_kind":"plain","required":true}},"description_kind":"plain"},"min_items":1},"maintenance_window":{"nesting_mode":"list","block":{"attributes":{"day":{"type":"string","description_kind":"plain","optional":true},"hour":{"type":"number","description_kind":"plain","optional":true},"type":{"type":"string","description_kind":"plain","required":true}},"description_kind":"plain"},"max_items":1},"ml_model":{"nesting_mode":"set","block":{"attributes":{"name":{"type":"string","description_kind":"plain","required":true},"type":{"type":"string","description_kind":"plain","required":true},"uri":{"type":"string","description_kind":"plain","required":true}},"description_kind":"plain"}},"shard":{"nesting_mode":"set","block":{"attributes":{"name":{"type":"string","description_kind":"plain","required":true},"weight":{"type":"number","description_kind":"plain","optional":true,"computed":true}},"block_types":{"resources":{"nesting_mode":"list","block":{"attributes":{"disk_size":{"type":"number","description_kind":"plain","optional":true,"computed":true},"disk_type_id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"resource_preset_id":{"type":"string","description_kind":"plain","optional":true,"computed":true}},"description_kind":"plain"},"max_items":1}},"description_kind":"plain"}},"shard_group":{"nesting_mode":"list","block":{"attributes":{"description":{"type":"string","description_kind":"plain","optional":true},"name":{"type":"string","description_kind":"plain","required":true},"shard_names":{"type":["list","string"],"description_kind":"plain","required":true}},"description_kind":"plain"}},"timeouts":{"nesting_mode":"single","block":{"attributes":{"create":{"type":"string","description_kind":"plain","optional":true},"delete":{"type":"string","description_kind":"plain","optional":true},"update":{"type":"string","description_kind":"plain","optional":true}},"description_kind":"plain"}},"user":{"nesting_mode":"set","block":{"attributes":{"name":{"type":"string","description_kind":"plain","required":true},"password":{"type":"string","description_kind":"plain","required":true,"sensitive":true}},"block_types":{"permission":{"nesting_mode":"set","block":{"attributes":{"database_name":{"type":"string","description_kind":"plain","required":true}},"description_kind":"plain"}},"quota":{"nesting_mode":"set","block":{"attributes":{"errors":{"type":"number","description_kind":"plain","optional":true,"computed":true},"execution_time":{"type":"number","description_kind":"plain","optional":true,"computed":true},"interval_duration":{"type":"number","description_kind":"plain","required":true},"queries":{"type":"number","description_kind":"plain","optional":true,"computed":true},"read_rows":{"type":"number","description_kind":"plain","optional":true,"computed":true},"result_rows":{"type":"number","description_kind":"plain","optional":true,"computed":true}},"description_kind":"plain"}},"settings":{"nesting_mode":"list","block":{"attributes":{"add_http_cors_header":{"type":"bool","description_kind":"plain","optional":true,"computed":true},"allow_ddl":{"type":"bool","description_kind":"plain","optional":true,"computed":true},"allow_introspection_functions":{"type":"bool","description_kind":"plain","optional":true,"computed":true},"allow_suspicious_low_cardinality_types":{"type":"bool","description_kind":"plain","optional":true,"computed":true},"async_insert":{"type":"bool","description_kind":"plain","optional":true,"computed":true},"async_insert_busy_timeout":{"type":"number","description_kind":"plain","optional":true,"computed":true},"async_insert_max_data_size":{"type":"number","description_kind":"plain","optional":true,"computed":true},"async_insert_stale_timeout":{"type":"number","description_kind":"plain","optional":true,"computed":true},"async_insert_threads":{"type":"number","description_kind":"plain","optional":true,"computed":true},"cancel_http_readonly_queries_on_client_close":{"type":"bool","description_kind":"plain","optional":true,"computed":true},"compile":{"type":"bool","description_kind":"plain","optional":true,"computed":true},"compile_expressions":{"type":"bool","description_kind":"plain","optional":true,"computed":true},"connect_timeout":{"type":"number","description_kind":"plain","optional":true,"computed":true},"connect_timeout_with_failover":{"type":"number","description_kind":"plain","optional":true,"computed":true},"count_distinct_implementation":{"type":"string","description_kind":"plain","optional":true,"computed":true},"distinct_overflow_mode":{"type":"string","description_kind":"plain","optional":true,"computed":true},"distributed_aggregation_memory_efficient":{"type":"bool","description_kind":"plain","optional":true,"computed":true},"distributed_ddl_task_timeout":{"type":"number","description_kind":"plain","optional":true,"computed":true},"distributed_product_mode":{"type":"string","description_kind":"plain","optional":true,"computed":true},"empty_result_for_aggregation_by_empty_set":{"type":"bool","description_kind":"plain","optional":true,"computed":true},"enable_http_compression":{"type":"bool","description_kind":"plain","optional":true,"computed":true},"fallback_to_stale_replicas_for_distributed_queries":{"type":"bool","description_kind":"plain","optional":true,"computed":true},"flatten_nested":{"type":"bool","description_kind":"plain","optional":true,"computed":true},"force_index_by_date":{"type":"bool","description_kind":"plain","optional":true,"computed":true},"force_primary_key":{"type":"bool","description_kind":"plain","optional":true,"computed":true},"group_by_overflow_mode":{"type":"string","description_kind":"plain","optional":true,"computed":true},"group_by_two_level_threshold":{"type":"number","description_kind":"plain","optional":true,"computed":true},"group_by_two_level_threshold_bytes":{"type":"number","description_kind":"plain","optional":true,"computed":true},"http_connection_timeout":{"type":"number","description_kind":"plain","optional":true,"computed":true},"http_headers_progress_interval":{"type":"number","description_kind":"plain","optional":true,"computed":true},"http_receive_timeout":{"type":"number","description_kind":"plain","optional":true,"computed":true},"http_send_timeout":{"type":"number","description_kind":"plain","optional":true,"computed":true},"input_format_defaults_for_omitted_fields":{"type":"bool","description_kind":"plain","optional":true,"computed":true},"input_format_import_nested_json":{"type":"bool","description_kind":"plain","optional":true,"computed":true},"input_format_parallel_parsing":{"type":"bool","description_kind":"plain","optional":true,"computed":true},"input_format_values_interpret_expressions":{"type":"bool","description_kind":"plain","optional":true,"computed":true},"insert_keeper_max_retries":{"type":"number","description_kind":"plain","optional":true,"computed":true},"insert_null_as_default":{"type":"bool","description_kind":"plain","optional":true,"computed":true},"insert_quorum":{"type":"number","description_kind":"plain","optional":true,"computed":true},"insert_quorum_timeout":{"type":"number","description_kind":"plain","optional":true,"computed":true},"join_overflow_mode":{"type":"string","description_kind":"plain","optional":true,"computed":true},"join_use_nulls":{"type":"bool","description_kind":"plain","optional":true,"computed":true},"joined_subquery_requires_alias":{"type":"bool","description_kind":"plain","optional":true,"computed":true},"local_filesystem_read_method":{"type":"string","description_kind":"plain","optional":true,"computed":true},"low_cardinality_allow_in_native_format":{"type":"bool","description_kind":"plain","optional":true,"computed":true},"max_ast_depth":{"type":"number","description_kind":"plain","optional":true,"computed":true},"max_ast_elements":{"type":"number","description_kind":"plain","optional":true,"computed":true},"max_block_size":{"type":"number","description_kind":"plain","optional":true,"computed":true},"max_bytes_before_external_group_by":{"type":"number","description_kind":"plain","optional":true,"computed":true},"max_bytes_before_external_sort":{"type":"number","description_kind":"plain","optional":true,"computed":true},"max_bytes_in_distinct":{"type":"number","description_kind":"plain","optional":true,"computed":true},"max_bytes_in_join":{"type":"number","description_kind":"plain","optional":true,"computed":true},"max_bytes_in_set":{"type":"number","description_kind":"plain","optional":true,"computed":true},"max_bytes_to_read":{"type":"number","description_kind":"plain","optional":true,"computed":true},"max_bytes_to_sort":{"type":"number","description_kind":"plain","optional":true,"computed":true},"max_bytes_to_transfer":{"type":"number","description_kind":"plain","optional":true,"computed":true},"max_columns_to_read":{"type":"number","description_kind":"plain","optional":true,"computed":true},"max_concurrent_queries_for_user":{"type":"number","description_kind":"plain","optional":true,"computed":true},"max_execution_time":{"type":"number","description_kind":"plain","optional":true,"computed":true},"max_expanded_ast_elements":{"type":"number","description_kind":"plain","optional":true,"computed":true},"max_final_threads":{"type":"number","description_kind":"plain","optional":true,"computed":true},"max_http_get_redirects":{"type":"number","description_kind":"plain","optional":true,"computed":true},"max_insert_block_size":{"type":"number","description_kind":"plain","optional":true,"computed":true},"max_memory_usage":{"type":"number","description_kind":"plain","optional":true,"computed":true},"max_memory_usage_for_user":{"type":"number","description_kind":"plain","optional":true,"computed":true},"max_network_bandwidth":{"type":"number","description_kind":"plain","optional":true,"computed":true},"max_network_bandwidth_for_user":{"type":"number","description_kind":"plain","optional":true,"computed":true},"max_parser_depth":{"type":"number","description_kind":"plain","optional":true,"computed":true},"max_query_size":{"type":"number","description_kind":"plain","optional":true,"computed":true},"max_read_buffer_size":{"type":"number","description_kind":"plain","optional":true,"computed":true},"max_replica_delay_for_distributed_queries":{"type":"number","description_kind":"plain","optional":true,"computed":true},"max_result_bytes":{"type":"number","description_kind":"plain","optional":true,"computed":true},"max_result_rows":{"type":"number","description_kind":"plain","optional":true,"computed":true},"max_rows_in_distinct":{"type":"number","description_kind":"plain","optional":true,"computed":true},"max_rows_in_join":{"type":"number","description_kind":"plain","optional":true,"computed":true},"max_rows_in_set":{"type":"number","description_kind":"plain","optional":true,"computed":true},"max_rows_to_group_by":{"type":"number","description_kind":"plain","optional":true,"computed":true},"max_rows_to_read":{"type":"number","description_kind":"plain","optional":true,"computed":true},"max_rows_to_sort":{"type":"number","description_kind":"plain","optional":true,"computed":true},"max_rows_to_transfer":{"type":"number","description_kind":"plain","optional":true,"computed":true},"max_temporary_columns":{"type":"number","description_kind":"plain","optional":true,"computed":true},"max_temporary_data_on_disk_size_for_query":{"type":"number","description_kind":"plain","optional":true,"computed":true},"max_temporary_data_on_disk_size_for_user":{"type":"number","description_kind":"plain","optional":true,"computed":true},"max_temporary_non_const_columns":{"type":"number","description_kind":"plain","optional":true,"computed":true},"max_threads":{"type":"number","description_kind":"plain","optional":true,"computed":true},"memory_overcommit_ratio_denominator":{"type":"number","description_kind":"plain","optional":true,"computed":true},"memory_overcommit_ratio_denominator_for_user":{"type":"number","description_kind":"plain","optional":true,"computed":true},"memory_profiler_sample_probability":{"type":"number","description_kind":"plain","optional":true,"computed":true},"memory_profiler_step":{"type":"number","description_kind":"plain","optional":true,"computed":true},"memory_usage_overcommit_max_wait_microseconds":{"type":"number","description_kind":"plain","optional":true,"computed":true},"merge_tree_max_bytes_to_use_cache":{"type":"number","description_kind":"plain","optional":true,"computed":true},"merge_tree_max_rows_to_use_cache":{"type":"number","description_kind":"plain","optional":true,"computed":true},"merge_tree_min_bytes_for_concurrent_read":{"type":"number","description_kind":"plain","optional":true,"computed":true},"merge_tree_min_rows_for_concurrent_read":{"type":"number","description_kind":"plain","optional":true,"computed":true},"min_bytes_to_use_direct_io":{"type":"number","description_kind":"plain","optional":true,"computed":true},"min_count_to_compile":{"type":"number","description_kind":"plain","optional":true,"computed":true},"min_count_to_compile_expression":{"type":"number","description_kind":"plain","optional":true,"computed":true},"min_execution_speed":{"type":"number","description_kind":"plain","optional":true,"computed":true},"min_execution_speed_bytes":{"type":"number","description_kind":"plain","optional":true,"computed":true},"min_insert_block_size_bytes":{"type":"number","description_kind":"plain","optional":true,"computed":true},"min_insert_block_size_rows":{"type":"number","description_kind":"plain","optional":true,"computed":true},"output_format_json_quote_64bit_integers":{"type":"bool","description_kind":"plain","optional":true,"computed":true},"output_format_json_quote_denormals":{"type":"bool","description_kind":"plain","optional":true,"computed":true},"priority":{"type":"number","description_kind":"plain","optional":true,"computed":true},"quota_mode":{"type":"string","description_kind":"plain","optional":true,"computed":true},"read_overflow_mode":{"type":"string","description_kind":"plain","optional":true,"computed":true},"readonly":{"type":"number","description_kind":"plain","optional":true,"computed":true},"receive_timeout":{"type":"number","description_kind":"plain","optional":true,"computed":true},"remote_filesystem_read_method":{"type":"string","description_kind":"plain","optional":true,"computed":true},"replication_alter_partitions_sync":{"type":"number","description_kind":"plain","optional":true,"computed":true},"result_overflow_mode":{"type":"string","description_kind":"plain","optional":true,"computed":true},"select_sequential_consistency":{"type":"bool","description_kind":"plain","optional":true,"computed":true},"send_progress_in_http_headers":{"type":"bool","description_kind":"plain","optional":true,"computed":true},"send_timeout":{"type":"number","description_kind":"plain","optional":true,"computed":true},"set_overflow_mode":{"type":"string","description_kind":"plain","optional":true,"computed":true},"skip_unavailable_shards":{"type":"bool","description_kind":"plain","optional":true,"computed":true},"sort_overflow_mode":{"type":"string","description_kind":"plain","optional":true,"computed":true},"timeout_before_checking_execution_speed":{"type":"number","description_kind":"plain","optional":true,"computed":true},"timeout_overflow_mode":{"type":"string","description_kind":"plain","optional":true,"computed":true},"transfer_overflow_mode":{"type":"string","description_kind":"plain","optional":true,"computed":true},"transform_null_in":{"type":"bool","description_kind":"plain","optional":true,"computed":true},"use_uncompressed_cache":{"type":"bool","description_kind":"plain","optional":true,"computed":true},"wait_for_async_insert":{"type":"bool","description_kind":"plain","optional":true,"computed":true},"wait_for_async_insert_timeout":{"type":"number","description_kind":"plain","optional":true,"computed":true}},"description_kind":"plain"},"max_items":1}},"description_kind":"plain"}},"zookeeper":{"nesting_mode":"list","block":{"block_types":{"resources":{"nesting_mode":"list","block":{"attributes":{"disk_size":{"type":"number","description_kind":"plain","optional":true,"computed":true},"disk_type_id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"resource_preset_id":{"type":"string","description_kind":"plain","optional":true,"computed":true}},"description_kind":"plain"},"max_items":1}},"description_kind":"plain"},"max_items":1}},"description_kind":"plain"}},"yandex_mdb_elasticsearch_cluster":{"version":0,"block":{"attributes":{"created_at":{"type":"string","description_kind":"plain","computed":true},"deletion_protection":{"type":"bool","description_kind":"plain","optional":true,"computed":true},"description":{"type":"string","description_kind":"plain","optional":true},"environment":{"type":"string","description_kind":"plain","required":true},"folder_id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"health":{"type":"string","description_kind":"plain","computed":true},"id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"labels":{"type":["map","string"],"description_kind":"plain","optional":true},"name":{"type":"string","description_kind":"plain","required":true},"network_id":{"type":"string","description_kind":"plain","required":true},"security_group_ids":{"type":["set","string"],"description_kind":"plain","optional":true},"service_account_id":{"type":"string","description_kind":"plain","optional":true},"status":{"type":"string","description_kind":"plain","computed":true}},"block_types":{"config":{"nesting_mode":"list","block":{"attributes":{"admin_password":{"type":"string","description_kind":"plain","required":true,"sensitive":true},"edition":{"type":"string","description_kind":"plain","optional":true,"computed":true},"plugins":{"type":["set","string"],"description_kind":"plain","optional":true},"version":{"type":"string","description_kind":"plain","optional":true,"computed":true}},"block_types":{"data_node":{"nesting_mode":"list","block":{"block_types":{"resources":{"nesting_mode":"list","block":{"attributes":{"disk_size":{"type":"number","description_kind":"plain","required":true},"disk_type_id":{"type":"string","description_kind":"plain","required":true},"resource_preset_id":{"type":"string","description_kind":"plain","required":true}},"description_kind":"plain"},"min_items":1,"max_items":1}},"description_kind":"plain"},"min_items":1,"max_items":1},"master_node":{"nesting_mode":"list","block":{"block_types":{"resources":{"nesting_mode":"list","block":{"attributes":{"disk_size":{"type":"number","description_kind":"plain","required":true},"disk_type_id":{"type":"string","description_kind":"plain","required":true},"resource_preset_id":{"type":"string","description_kind":"plain","required":true}},"description_kind":"plain"},"min_items":1,"max_items":1}},"description_kind":"plain"},"max_items":1}},"description_kind":"plain"},"min_items":1,"max_items":1},"host":{"nesting_mode":"set","block":{"attributes":{"assign_public_ip":{"type":"bool","description_kind":"plain","optional":true},"fqdn":{"type":"string","description_kind":"plain","computed":true},"name":{"type":"string","description_kind":"plain","required":true},"subnet_id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"type":{"type":"string","description_kind":"plain","required":true},"zone":{"type":"string","description_kind":"plain","required":true}},"description_kind":"plain"}},"maintenance_window":{"nesting_mode":"list","block":{"attributes":{"day":{"type":"string","description_kind":"plain","optional":true},"hour":{"type":"number","description_kind":"plain","optional":true},"type":{"type":"string","description_kind":"plain","required":true}},"description_kind":"plain"},"max_items":1},"timeouts":{"nesting_mode":"single","block":{"attributes":{"create":{"type":"string","description_kind":"plain","optional":true},"delete":{"type":"string","description_kind":"plain","optional":true},"update":{"type":"string","description_kind":"plain","optional":true}},"description_kind":"plain"}}},"description_kind":"plain"}},"yandex_mdb_greenplum_cluster":{"version":0,"block":{"attributes":{"assign_public_ip":{"type":"bool","description_kind":"plain","required":true},"created_at":{"type":"string","description_kind":"plain","computed":true},"deletion_protection":{"type":"bool","description_kind":"plain","optional":true,"computed":true},"description":{"type":"string","description_kind":"plain","optional":true},"environment":{"type":"string","description_kind":"plain","required":true},"folder_id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"greenplum_config":{"type":["map","string"],"description_kind":"plain","optional":true,"computed":true},"health":{"type":"string","description_kind":"plain","computed":true},"id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"labels":{"type":["map","string"],"description_kind":"plain","optional":true},"master_host_count":{"type":"number","description_kind":"plain","required":true},"master_hosts":{"type":["list",["object",{"assign_public_ip":"bool","fqdn":"string"}]],"description_kind":"plain","computed":true},"name":{"type":"string","description_kind":"plain","required":true},"network_id":{"type":"string","description_kind":"plain","required":true},"security_group_ids":{"type":["set","string"],"description_kind":"plain","optional":true},"segment_host_count":{"type":"number","description_kind":"plain","required":true},"segment_hosts":{"type":["list",["object",{"fqdn":"string"}]],"description_kind":"plain","computed":true},"segment_in_host":{"type":"number","description_kind":"plain","required":true},"status":{"type":"string","description_kind":"plain","computed":true},"subnet_id":{"type":"string","description_kind":"plain","required":true},"user_name":{"type":"string","description_kind":"plain","required":true},"user_password":{"type":"string","description_kind":"plain","required":true,"sensitive":true},"version":{"type":"string","description_kind":"plain","required":true},"zone":{"type":"string","description_kind":"plain","required":true}},"block_types":{"access":{"nesting_mode":"list","block":{"attributes":{"data_lens":{"type":"bool","description_kind":"plain","optional":true},"data_transfer":{"type":"bool","description_kind":"plain","optional":true},"web_sql":{"type":"bool","description_kind":"plain","optional":true}},"description_kind":"plain"},"max_items":1},"backup_window_start":{"nesting_mode":"list","block":{"attributes":{"hours":{"type":"number","description_kind":"plain","optional":true},"minutes":{"type":"number","description_kind":"plain","optional":true}},"description_kind":"plain"},"max_items":1},"cloud_storage":{"nesting_mode":"list","block":{"attributes":{"enable":{"type":"bool","description_kind":"plain","optional":true}},"description_kind":"plain"},"max_items":1},"maintenance_window":{"nesting_mode":"list","block":{"attributes":{"day":{"type":"string","description_kind":"plain","optional":true},"hour":{"type":"number","description_kind":"plain","optional":true},"type":{"type":"string","description_kind":"plain","required":true}},"description_kind":"plain"},"max_items":1},"master_subcluster":{"nesting_mode":"list","block":{"block_types":{"resources":{"nesting_mode":"list","block":{"attributes":{"disk_size":{"type":"number","description_kind":"plain","required":true},"disk_type_id":{"type":"string","description_kind":"plain","required":true},"resource_preset_id":{"type":"string","description_kind":"plain","required":true}},"description_kind":"plain"},"min_items":1,"max_items":1}},"description_kind":"plain"},"min_items":1,"max_items":1},"pooler_config":{"nesting_mode":"list","block":{"attributes":{"pool_client_idle_timeout":{"type":"number","description_kind":"plain","optional":true},"pool_size":{"type":"number","description_kind":"plain","optional":true},"pooling_mode":{"type":"string","description_kind":"plain","optional":true}},"description_kind":"plain"},"max_items":1},"pxf_config":{"nesting_mode":"list","block":{"attributes":{"connection_timeout":{"type":"number","description_kind":"plain","optional":true},"max_threads":{"type":"number","description_kind":"plain","optional":true},"pool_allow_core_thread_timeout":{"type":"bool","description_kind":"plain","optional":true},"pool_core_size":{"type":"number","description_kind":"plain","optional":true},"pool_max_size":{"type":"number","description_kind":"plain","optional":true},"pool_queue_capacity":{"type":"number","description_kind":"plain","optional":true},"upload_timeout":{"type":"number","description_kind":"plain","optional":true},"xms":{"type":"number","description_kind":"plain","optional":true},"xmx":{"type":"number","description_kind":"plain","optional":true}},"description_kind":"plain"},"max_items":1},"segment_subcluster":{"nesting_mode":"list","block":{"block_types":{"resources":{"nesting_mode":"list","block":{"attributes":{"disk_size":{"type":"number","description_kind":"plain","required":true},"disk_type_id":{"type":"string","description_kind":"plain","required":true},"resource_preset_id":{"type":"string","description_kind":"plain","required":true}},"description_kind":"plain"},"min_items":1,"max_items":1}},"description_kind":"plain"},"min_items":1,"max_items":1},"timeouts":{"nesting_mode":"single","block":{"attributes":{"create":{"type":"string","description_kind":"plain","optional":true},"delete":{"type":"string","description_kind":"plain","optional":true},"update":{"type":"string","description_kind":"plain","optional":true}},"description_kind":"plain"}}},"description_kind":"plain"}},"yandex_mdb_kafka_cluster":{"version":0,"block":{"attributes":{"created_at":{"type":"string","description_kind":"plain","computed":true},"deletion_protection":{"type":"bool","description_kind":"plain","optional":true,"computed":true},"description":{"type":"string","description_kind":"plain","optional":true},"environment":{"type":"string","description_kind":"plain","optional":true},"folder_id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"health":{"type":"string","description_kind":"plain","computed":true},"host":{"type":["set",["object",{"assign_public_ip":"bool","health":"string","name":"string","role":"string","subnet_id":"string","zone_id":"string"}]],"description_kind":"plain","computed":true},"host_group_ids":{"type":["set","string"],"description_kind":"plain","optional":true,"computed":true},"id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"labels":{"type":["map","string"],"description_kind":"plain","optional":true,"computed":true},"name":{"type":"string","description_kind":"plain","required":true},"network_id":{"type":"string","description_kind":"plain","required":true},"security_group_ids":{"type":["set","string"],"description_kind":"plain","optional":true,"computed":true},"status":{"type":"string","description_kind":"plain","computed":true},"subnet_ids":{"type":["list","string"],"description_kind":"plain","optional":true}},"block_types":{"config":{"nesting_mode":"list","block":{"attributes":{"assign_public_ip":{"type":"bool","description_kind":"plain","optional":true},"brokers_count":{"type":"number","description_kind":"plain","optional":true},"schema_registry":{"type":"bool","description_kind":"plain","optional":true},"unmanaged_topics":{"type":"bool","description_kind":"plain","deprecated":true,"optional":true},"version":{"type":"string","description_kind":"plain","required":true},"zones":{"type":["list","string"],"description_kind":"plain","required":true}},"block_types":{"access":{"nesting_mode":"list","block":{"attributes":{"data_transfer":{"type":"bool","description_kind":"plain","optional":true}},"description_kind":"plain"},"max_items":1},"kafka":{"nesting_mode":"list","block":{"block_types":{"kafka_config":{"nesting_mode":"list","block":{"attributes":{"auto_create_topics_enable":{"type":"bool","description_kind":"plain","optional":true},"compression_type":{"type":"string","description_kind":"plain","optional":true},"default_replication_factor":{"type":"string","description_kind":"plain","optional":true},"log_flush_interval_messages":{"type":"string","description_kind":"plain","optional":true},"log_flush_interval_ms":{"type":"string","description_kind":"plain","optional":true},"log_flush_scheduler_interval_ms":{"type":"string","description_kind":"plain","optional":true},"log_preallocate":{"type":"bool","description_kind":"plain","optional":true},"log_retention_bytes":{"type":"string","description_kind":"plain","optional":true},"log_retention_hours":{"type":"string","description_kind":"plain","optional":true},"log_retention_minutes":{"type":"string","description_kind":"plain","optional":true},"log_retention_ms":{"type":"string","description_kind":"plain","optional":true},"log_segment_bytes":{"type":"string","description_kind":"plain","optional":true},"message_max_bytes":{"type":"string","description_kind":"plain","optional":true},"num_partitions":{"type":"string","description_kind":"plain","optional":true},"offsets_retention_minutes":{"type":"string","description_kind":"plain","optional":true},"replica_fetch_max_bytes":{"type":"string","description_kind":"plain","optional":true},"sasl_enabled_mechanisms":{"type":["set","string"],"description_kind":"plain","optional":true},"socket_receive_buffer_bytes":{"type":"string","description_kind":"plain","optional":true},"socket_send_buffer_bytes":{"type":"string","description_kind":"plain","optional":true},"ssl_cipher_suites":{"type":["set","string"],"description_kind":"plain","optional":true}},"description_kind":"plain"},"max_items":1},"resources":{"nesting_mode":"list","block":{"attributes":{"disk_size":{"type":"number","description_kind":"plain","required":true},"disk_type_id":{"type":"string","description_kind":"plain","required":true},"resource_preset_id":{"type":"string","description_kind":"plain","required":true}},"description_kind":"plain"},"min_items":1,"max_items":1}},"description_kind":"plain"},"min_items":1,"max_items":1},"zookeeper":{"nesting_mode":"list","block":{"block_types":{"resources":{"nesting_mode":"list","block":{"attributes":{"disk_size":{"type":"number","description_kind":"plain","optional":true,"computed":true},"disk_type_id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"resource_preset_id":{"type":"string","description_kind":"plain","optional":true,"computed":true}},"description_kind":"plain"},"max_items":1}},"description_kind":"plain"},"max_items":1}},"description_kind":"plain"},"min_items":1,"max_items":1},"maintenance_window":{"nesting_mode":"list","block":{"attributes":{"day":{"type":"string","description_kind":"plain","optional":true},"hour":{"type":"number","description_kind":"plain","optional":true},"type":{"type":"string","description_kind":"plain","required":true}},"description_kind":"plain"},"max_items":1},"timeouts":{"nesting_mode":"single","block":{"attributes":{"create":{"type":"string","description_kind":"plain","optional":true},"delete":{"type":"string","description_kind":"plain","optional":true},"read":{"type":"string","description_kind":"plain","optional":true},"update":{"type":"string","description_kind":"plain","optional":true}},"description_kind":"plain"}},"topic":{"nesting_mode":"list","block":{"attributes":{"name":{"type":"string","description_kind":"plain","required":true},"partitions":{"type":"number","description_kind":"plain","required":true},"replication_factor":{"type":"number","description_kind":"plain","required":true}},"block_types":{"topic_config":{"nesting_mode":"list","block":{"attributes":{"cleanup_policy":{"type":"string","description_kind":"plain","optional":true},"compression_type":{"type":"string","description_kind":"plain","optional":true},"delete_retention_ms":{"type":"string","description_kind":"plain","optional":true},"file_delete_delay_ms":{"type":"string","description_kind":"plain","optional":true},"flush_messages":{"type":"string","description_kind":"plain","optional":true},"flush_ms":{"type":"string","description_kind":"plain","optional":true},"max_message_bytes":{"type":"string","description_kind":"plain","optional":true},"min_compaction_lag_ms":{"type":"string","description_kind":"plain","optional":true},"min_insync_replicas":{"type":"string","description_kind":"plain","optional":true},"preallocate":{"type":"bool","description_kind":"plain","optional":true},"retention_bytes":{"type":"string","description_kind":"plain","optional":true},"retention_ms":{"type":"string","description_kind":"plain","optional":true},"segment_bytes":{"type":"string","description_kind":"plain","optional":true}},"description_kind":"plain"},"max_items":1}},"description_kind":"plain","deprecated":true}},"user":{"nesting_mode":"set","block":{"attributes":{"name":{"type":"string","description_kind":"plain","required":true},"password":{"type":"string","description_kind":"plain","required":true,"sensitive":true}},"block_types":{"permission":{"nesting_mode":"set","block":{"attributes":{"allow_hosts":{"type":["set","string"],"description_kind":"plain","optional":true},"role":{"type":"string","description_kind":"plain","required":true},"topic_name":{"type":"string","description_kind":"plain","required":true}},"description_kind":"plain"}}},"description_kind":"plain","deprecated":true}}},"description_kind":"plain"}},"yandex_mdb_kafka_connector":{"version":0,"block":{"attributes":{"cluster_id":{"type":"string","description_kind":"plain","required":true},"id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"name":{"type":"string","description_kind":"plain","required":true},"properties":{"type":["map","string"],"description_kind":"plain","optional":true,"computed":true},"tasks_max":{"type":"number","description_kind":"plain","optional":true}},"block_types":{"connector_config_mirrormaker":{"nesting_mode":"list","block":{"attributes":{"replication_factor":{"type":"number","description_kind":"plain","required":true},"topics":{"type":"string","description_kind":"plain","required":true}},"block_types":{"source_cluster":{"nesting_mode":"list","block":{"attributes":{"alias":{"type":"string","description_kind":"plain","optional":true}},"block_types":{"external_cluster":{"nesting_mode":"list","block":{"attributes":{"bootstrap_servers":{"type":"string","description_kind":"plain","required":true},"sasl_mechanism":{"type":"string","description_kind":"plain","optional":true},"sasl_password":{"type":"string","description_kind":"plain","optional":true,"sensitive":true},"sasl_username":{"type":"string","description_kind":"plain","optional":true},"security_protocol":{"type":"string","description_kind":"plain","optional":true}},"description_kind":"plain"}},"this_cluster":{"nesting_mode":"list","block":{"description_kind":"plain"}}},"description_kind":"plain"},"min_items":1,"max_items":1},"target_cluster":{"nesting_mode":"list","block":{"attributes":{"alias":{"type":"string","description_kind":"plain","optional":true}},"block_types":{"external_cluster":{"nesting_mode":"list","block":{"attributes":{"bootstrap_servers":{"type":"string","description_kind":"plain","required":true},"sasl_mechanism":{"type":"string","description_kind":"plain","optional":true},"sasl_password":{"type":"string","description_kind":"plain","optional":true,"sensitive":true},"sasl_username":{"type":"string","description_kind":"plain","optional":true},"security_protocol":{"type":"string","description_kind":"plain","optional":true}},"description_kind":"plain"}},"this_cluster":{"nesting_mode":"list","block":{"description_kind":"plain"}}},"description_kind":"plain"},"min_items":1,"max_items":1}},"description_kind":"plain"}},"connector_config_s3_sink":{"nesting_mode":"list","block":{"attributes":{"file_compression_type":{"type":"string","description_kind":"plain","required":true},"file_max_records":{"type":"number","description_kind":"plain","optional":true},"topics":{"type":"string","description_kind":"plain","required":true}},"block_types":{"s3_connection":{"nesting_mode":"list","block":{"attributes":{"bucket_name":{"type":"string","description_kind":"plain","required":true}},"block_types":{"external_s3":{"nesting_mode":"list","block":{"attributes":{"access_key_id":{"type":"string","description_kind":"plain","optional":true},"endpoint":{"type":"string","description_kind":"plain","required":true},"region":{"type":"string","description_kind":"plain","optional":true},"secret_access_key":{"type":"string","description_kind":"plain","optional":true,"sensitive":true}},"description_kind":"plain"},"min_items":1}},"description_kind":"plain"},"min_items":1,"max_items":1}},"description_kind":"plain"}}},"description_kind":"plain"}},"yandex_mdb_kafka_topic":{"version":0,"block":{"attributes":{"cluster_id":{"type":"string","description_kind":"plain","required":true},"id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"name":{"type":"string","description_kind":"plain","required":true},"partitions":{"type":"number","description_kind":"plain","required":true},"replication_factor":{"type":"number","description_kind":"plain","required":true}},"block_types":{"timeouts":{"nesting_mode":"single","block":{"attributes":{"create":{"type":"string","description_kind":"plain","optional":true},"delete":{"type":"string","description_kind":"plain","optional":true},"read":{"type":"string","description_kind":"plain","optional":true},"update":{"type":"string","description_kind":"plain","optional":true}},"description_kind":"plain"}},"topic_config":{"nesting_mode":"list","block":{"attributes":{"cleanup_policy":{"type":"string","description_kind":"plain","optional":true},"compression_type":{"type":"string","description_kind":"plain","optional":true},"delete_retention_ms":{"type":"string","description_kind":"plain","optional":true},"file_delete_delay_ms":{"type":"string","description_kind":"plain","optional":true},"flush_messages":{"type":"string","description_kind":"plain","optional":true},"flush_ms":{"type":"string","description_kind":"plain","optional":true},"max_message_bytes":{"type":"string","description_kind":"plain","optional":true},"min_compaction_lag_ms":{"type":"string","description_kind":"plain","optional":true},"min_insync_replicas":{"type":"string","description_kind":"plain","optional":true},"preallocate":{"type":"bool","description_kind":"plain","optional":true},"retention_bytes":{"type":"string","description_kind":"plain","optional":true},"retention_ms":{"type":"string","description_kind":"plain","optional":true},"segment_bytes":{"type":"string","description_kind":"plain","optional":true}},"description_kind":"plain"},"max_items":1}},"description_kind":"plain"}},"yandex_mdb_kafka_user":{"version":0,"block":{"attributes":{"cluster_id":{"type":"string","description_kind":"plain","required":true},"id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"name":{"type":"string","description_kind":"plain","required":true},"password":{"type":"string","description_kind":"plain","required":true,"sensitive":true}},"block_types":{"permission":{"nesting_mode":"set","block":{"attributes":{"allow_hosts":{"type":["set","string"],"description_kind":"plain","optional":true},"role":{"type":"string","description_kind":"plain","required":true},"topic_name":{"type":"string","description_kind":"plain","required":true}},"description_kind":"plain"}},"timeouts":{"nesting_mode":"single","block":{"attributes":{"create":{"type":"string","description_kind":"plain","optional":true},"delete":{"type":"string","description_kind":"plain","optional":true},"read":{"type":"string","description_kind":"plain","optional":true},"update":{"type":"string","description_kind":"plain","optional":true}},"description_kind":"plain"}}},"description_kind":"plain"}},"yandex_mdb_mongodb_cluster":{"version":0,"block":{"attributes":{"cluster_id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"created_at":{"type":"string","description_kind":"plain","computed":true},"deletion_protection":{"type":"bool","description_kind":"plain","optional":true,"computed":true},"description":{"type":"string","description_kind":"plain","optional":true},"environment":{"type":"string","description_kind":"plain","required":true},"folder_id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"health":{"type":"string","description_kind":"plain","computed":true},"id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"labels":{"type":["map","string"],"description_kind":"plain","optional":true,"computed":true},"name":{"type":"string","description_kind":"plain","required":true},"network_id":{"type":"string","description_kind":"plain","required":true},"security_group_ids":{"type":["set","string"],"description_kind":"plain","optional":true},"sharded":{"type":"bool","description_kind":"plain","computed":true},"status":{"type":"string","description_kind":"plain","computed":true}},"block_types":{"cluster_config":{"nesting_mode":"list","block":{"attributes":{"backup_retain_period_days":{"type":"number","description_kind":"plain","optional":true,"computed":true},"feature_compatibility_version":{"type":"string","description_kind":"plain","optional":true,"computed":true},"version":{"type":"string","description_kind":"plain","required":true}},"block_types":{"access":{"nesting_mode":"list","block":{"attributes":{"data_lens":{"type":"bool","description_kind":"plain","optional":true},"data_transfer":{"type":"bool","description_kind":"plain","optional":true}},"description_kind":"plain"},"max_items":1},"backup_window_start":{"nesting_mode":"list","block":{"attributes":{"hours":{"type":"number","description_kind":"plain","optional":true},"minutes":{"type":"number","description_kind":"plain","optional":true}},"description_kind":"plain"},"max_items":1},"mongocfg":{"nesting_mode":"list","block":{"block_types":{"net":{"nesting_mode":"list","block":{"attributes":{"max_incoming_connections":{"type":"number","description_kind":"plain","optional":true}},"description_kind":"plain"},"max_items":1},"operation_profiling":{"nesting_mode":"list","block":{"attributes":{"mode":{"type":"string","description_kind":"plain","optional":true},"slow_op_threshold":{"type":"number","description_kind":"plain","optional":true}},"description_kind":"plain"},"max_items":1},"storage":{"nesting_mode":"list","block":{"block_types":{"wired_tiger":{"nesting_mode":"list","block":{"attributes":{"cache_size_gb":{"type":"number","description_kind":"plain","optional":true}},"description_kind":"plain"},"max_items":1}},"description_kind":"plain"},"max_items":1}},"description_kind":"plain"},"max_items":1},"mongod":{"nesting_mode":"list","block":{"block_types":{"audit_log":{"nesting_mode":"list","block":{"attributes":{"filter":{"type":"string","description_kind":"plain","optional":true},"runtime_configuration":{"type":"bool","description_kind":"plain","optional":true}},"description_kind":"plain"},"max_items":1},"net":{"nesting_mode":"list","block":{"attributes":{"compressors":{"type":["list","string"],"description_kind":"plain","optional":true},"max_incoming_connections":{"type":"number","description_kind":"plain","optional":true}},"description_kind":"plain"},"max_items":1},"operation_profiling":{"nesting_mode":"list","block":{"attributes":{"mode":{"type":"string","description_kind":"plain","optional":true},"slow_op_sample_rate":{"type":"number","description_kind":"plain","optional":true},"slow_op_threshold":{"type":"number","description_kind":"plain","optional":true}},"description_kind":"plain"},"max_items":1},"security":{"nesting_mode":"list","block":{"attributes":{"enable_encryption":{"type":"bool","description_kind":"plain","optional":true}},"block_types":{"kmip":{"nesting_mode":"list","block":{"attributes":{"client_certificate":{"type":"string","description_kind":"plain","optional":true},"key_identifier":{"type":"string","description_kind":"plain","optional":true},"port":{"type":"number","description_kind":"plain","optional":true},"server_ca":{"type":"string","description_kind":"plain","optional":true},"server_name":{"type":"string","description_kind":"plain","optional":true}},"description_kind":"plain"},"max_items":1}},"description_kind":"plain"},"max_items":1},"set_parameter":{"nesting_mode":"list","block":{"attributes":{"audit_authorization_success":{"type":"bool","description_kind":"plain","optional":true},"enable_flow_control":{"type":"bool","description_kind":"plain","optional":true},"min_snapshot_history_window_in_seconds":{"type":"number","description_kind":"plain","optional":true}},"description_kind":"plain"},"max_items":1},"storage":{"nesting_mode":"list","block":{"block_types":{"journal":{"nesting_mode":"list","block":{"attributes":{"commit_interval":{"type":"number","description_kind":"plain","optional":true}},"description_kind":"plain"},"max_items":1},"wired_tiger":{"nesting_mode":"list","block":{"attributes":{"block_compressor":{"type":"string","description_kind":"plain","optional":true},"cache_size_gb":{"type":"number","description_kind":"plain","optional":true},"prefix_compression":{"type":"bool","description_kind":"plain","optional":true}},"description_kind":"plain"},"max_items":1}},"description_kind":"plain"},"max_items":1}},"description_kind":"plain"},"max_items":1},"mongos":{"nesting_mode":"list","block":{"block_types":{"net":{"nesting_mode":"list","block":{"attributes":{"compressors":{"type":["list","string"],"description_kind":"plain","optional":true},"max_incoming_connections":{"type":"number","description_kind":"plain","optional":true}},"description_kind":"plain"},"max_items":1}},"description_kind":"plain"},"max_items":1},"performance_diagnostics":{"nesting_mode":"list","block":{"attributes":{"enabled":{"type":"bool","description_kind":"plain","optional":true}},"description_kind":"plain"},"max_items":1}},"description_kind":"plain"},"min_items":1,"max_items":1},"database":{"nesting_mode":"set","block":{"attributes":{"name":{"type":"string","description_kind":"plain","required":true}},"description_kind":"plain","deprecated":true}},"host":{"nesting_mode":"list","block":{"attributes":{"assign_public_ip":{"type":"bool","description_kind":"plain","optional":true},"health":{"type":"string","description_kind":"plain","computed":true},"name":{"type":"string","description_kind":"plain","computed":true},"role":{"type":"string","description_kind":"plain","optional":true,"computed":true},"shard_name":{"type":"string","description_kind":"plain","optional":true,"computed":true},"subnet_id":{"type":"string","description_kind":"plain","required":true},"type":{"type":"string","description_kind":"plain","optional":true},"zone_id":{"type":"string","description_kind":"plain","required":true}},"block_types":{"host_parameters":{"nesting_mode":"list","block":{"attributes":{"hidden":{"type":"bool","description_kind":"plain","optional":true},"priority":{"type":"number","description_kind":"plain","optional":true},"secondary_delay_secs":{"type":"number","description_kind":"plain","optional":true},"tags":{"type":["map","string"],"description_kind":"plain","optional":true}},"description_kind":"plain"},"max_items":1}},"description_kind":"plain"},"min_items":1},"maintenance_window":{"nesting_mode":"list","block":{"attributes":{"day":{"type":"string","description_kind":"plain","optional":true},"hour":{"type":"number","description_kind":"plain","optional":true},"type":{"type":"string","description_kind":"plain","required":true}},"description_kind":"plain"},"max_items":1},"resources":{"nesting_mode":"list","block":{"attributes":{"disk_size":{"type":"number","description_kind":"plain","required":true},"disk_type_id":{"type":"string","description_kind":"plain","required":true},"resource_preset_id":{"type":"string","description_kind":"plain","required":true}},"description_kind":"plain","deprecated":true},"max_items":1},"resources_mongocfg":{"nesting_mode":"list","block":{"attributes":{"disk_size":{"type":"number","description_kind":"plain","required":true},"disk_type_id":{"type":"string","description_kind":"plain","required":true},"resource_preset_id":{"type":"string","description_kind":"plain","required":true}},"description_kind":"plain"},"max_items":1},"resources_mongod":{"nesting_mode":"list","block":{"attributes":{"disk_size":{"type":"number","description_kind":"plain","required":true},"disk_type_id":{"type":"string","description_kind":"plain","required":true},"resource_preset_id":{"type":"string","description_kind":"plain","required":true}},"description_kind":"plain"},"max_items":1},"resources_mongoinfra":{"nesting_mode":"list","block":{"attributes":{"disk_size":{"type":"number","description_kind":"plain","required":true},"disk_type_id":{"type":"string","description_kind":"plain","required":true},"resource_preset_id":{"type":"string","description_kind":"plain","required":true}},"description_kind":"plain"},"max_items":1},"resources_mongos":{"nesting_mode":"list","block":{"attributes":{"disk_size":{"type":"number","description_kind":"plain","required":true},"disk_type_id":{"type":"string","description_kind":"plain","required":true},"resource_preset_id":{"type":"string","description_kind":"plain","required":true}},"description_kind":"plain"},"max_items":1},"restore":{"nesting_mode":"list","block":{"attributes":{"backup_id":{"type":"string","description_kind":"plain","required":true},"time":{"type":"string","description_kind":"plain","optional":true}},"description_kind":"plain"},"max_items":1},"timeouts":{"nesting_mode":"single","block":{"attributes":{"create":{"type":"string","description_kind":"plain","optional":true},"delete":{"type":"string","description_kind":"plain","optional":true},"update":{"type":"string","description_kind":"plain","optional":true}},"description_kind":"plain"}},"user":{"nesting_mode":"set","block":{"attributes":{"name":{"type":"string","description_kind":"plain","required":true},"password":{"type":"string","description_kind":"plain","required":true,"sensitive":true}},"block_types":{"permission":{"nesting_mode":"set","block":{"attributes":{"database_name":{"type":"string","description_kind":"plain","required":true},"roles":{"type":["list","string"],"description_kind":"plain","optional":true}},"description_kind":"plain"}}},"description_kind":"plain","deprecated":true}}},"description_kind":"plain"}},"yandex_mdb_mongodb_database":{"version":0,"block":{"attributes":{"cluster_id":{"type":"string","description_kind":"plain","required":true},"id":{"type":"string","description_kind":"plain","computed":true},"name":{"type":"string","description_kind":"plain","required":true}},"description_kind":"plain"}},"yandex_mdb_mongodb_user":{"version":0,"block":{"attributes":{"cluster_id":{"type":"string","description_kind":"plain","required":true},"id":{"type":"string","description_kind":"plain","computed":true},"name":{"type":"string","description_kind":"plain","required":true},"password":{"type":"string","description_kind":"plain","required":true,"sensitive":true}},"block_types":{"permission":{"nesting_mode":"set","block":{"attributes":{"database_name":{"type":"string","description_kind":"plain","required":true},"roles":{"type":["set","string"],"description_kind":"plain","optional":true}},"description_kind":"plain"}}},"description_kind":"plain"}},"yandex_mdb_mysql_cluster":{"version":0,"block":{"attributes":{"allow_regeneration_host":{"type":"bool","description_kind":"plain","deprecated":true,"optional":true},"backup_retain_period_days":{"type":"number","description_kind":"plain","optional":true,"computed":true},"created_at":{"type":"string","description_kind":"plain","computed":true},"deletion_protection":{"type":"bool","description_kind":"plain","optional":true,"computed":true},"description":{"type":"string","description_kind":"plain","optional":true},"environment":{"type":"string","description_kind":"plain","required":true},"folder_id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"health":{"type":"string","description_kind":"plain","computed":true},"host_group_ids":{"type":["set","string"],"description_kind":"plain","optional":true,"computed":true},"id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"labels":{"type":["map","string"],"description_kind":"plain","optional":true},"mysql_config":{"type":["map","string"],"description_kind":"plain","optional":true,"computed":true},"name":{"type":"string","description_kind":"plain","required":true},"network_id":{"type":"string","description_kind":"plain","required":true},"security_group_ids":{"type":["set","string"],"description_kind":"plain","optional":true},"status":{"type":"string","description_kind":"plain","computed":true},"version":{"type":"string","description_kind":"plain","required":true}},"block_types":{"access":{"nesting_mode":"list","block":{"attributes":{"data_lens":{"type":"bool","description_kind":"plain","optional":true},"data_transfer":{"type":"bool","description_kind":"plain","optional":true},"web_sql":{"type":"bool","description_kind":"plain","optional":true}},"description_kind":"plain"},"max_items":1},"backup_window_start":{"nesting_mode":"list","block":{"attributes":{"hours":{"type":"number","description_kind":"plain","optional":true},"minutes":{"type":"number","description_kind":"plain","optional":true}},"description_kind":"plain"},"max_items":1},"database":{"nesting_mode":"set","block":{"attributes":{"name":{"type":"string","description_kind":"plain","required":true}},"description_kind":"plain","deprecated":true}},"host":{"nesting_mode":"list","block":{"attributes":{"assign_public_ip":{"type":"bool","description_kind":"plain","optional":true},"backup_priority":{"type":"number","description_kind":"plain","optional":true},"fqdn":{"type":"string","description_kind":"plain","computed":true},"name":{"type":"string","description_kind":"plain","optional":true},"priority":{"type":"number","description_kind":"plain","optional":true},"replication_source":{"type":"string","description_kind":"plain","computed":true},"replication_source_name":{"type":"string","description_kind":"plain","optional":true},"subnet_id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"zone":{"type":"string","description_kind":"plain","required":true}},"description_kind":"plain"},"min_items":1},"maintenance_window":{"nesting_mode":"list","block":{"attributes":{"day":{"type":"string","description_kind":"plain","optional":true},"hour":{"type":"number","description_kind":"plain","optional":true},"type":{"type":"string","description_kind":"plain","required":true}},"description_kind":"plain"},"max_items":1},"performance_diagnostics":{"nesting_mode":"list","block":{"attributes":{"enabled":{"type":"bool","description_kind":"plain","optional":true,"computed":true},"sessions_sampling_interval":{"type":"number","description_kind":"plain","required":true},"statements_sampling_interval":{"type":"number","description_kind":"plain","required":true}},"description_kind":"plain"},"max_items":1},"resources":{"nesting_mode":"list","block":{"attributes":{"disk_size":{"type":"number","description_kind":"plain","required":true},"disk_type_id":{"type":"string","description_kind":"plain","required":true},"resource_preset_id":{"type":"string","description_kind":"plain","required":true}},"description_kind":"plain"},"min_items":1,"max_items":1},"restore":{"nesting_mode":"list","block":{"attributes":{"backup_id":{"type":"string","description_kind":"plain","required":true},"time":{"type":"string","description_kind":"plain","optional":true}},"description_kind":"plain"},"max_items":1},"timeouts":{"nesting_mode":"single","block":{"attributes":{"create":{"type":"string","description_kind":"plain","optional":true},"delete":{"type":"string","description_kind":"plain","optional":true},"update":{"type":"string","description_kind":"plain","optional":true}},"description_kind":"plain"}},"user":{"nesting_mode":"list","block":{"attributes":{"authentication_plugin":{"type":"string","description_kind":"plain","optional":true,"computed":true},"global_permissions":{"type":["set","string"],"description_kind":"plain","optional":true,"computed":true},"name":{"type":"string","description_kind":"plain","required":true},"password":{"type":"string","description_kind":"plain","required":true,"sensitive":true}},"block_types":{"connection_limits":{"nesting_mode":"list","block":{"attributes":{"max_connections_per_hour":{"type":"number","description_kind":"plain","optional":true},"max_questions_per_hour":{"type":"number","description_kind":"plain","optional":true},"max_updates_per_hour":{"type":"number","description_kind":"plain","optional":true},"max_user_connections":{"type":"number","description_kind":"plain","optional":true}},"description_kind":"plain"},"max_items":1},"permission":{"nesting_mode":"set","block":{"attributes":{"database_name":{"type":"string","description_kind":"plain","required":true},"roles":{"type":["list","string"],"description_kind":"plain","optional":true}},"description_kind":"plain"}}},"description_kind":"plain","deprecated":true}}},"description_kind":"plain"}},"yandex_mdb_mysql_database":{"version":0,"block":{"attributes":{"cluster_id":{"type":"string","description_kind":"plain","required":true},"id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"name":{"type":"string","description_kind":"plain","required":true}},"block_types":{"timeouts":{"nesting_mode":"single","block":{"attributes":{"create":{"type":"string","description_kind":"plain","optional":true},"delete":{"type":"string","description_kind":"plain","optional":true},"read":{"type":"string","description_kind":"plain","optional":true},"update":{"type":"string","description_kind":"plain","optional":true}},"description_kind":"plain"}}},"description_kind":"plain"}},"yandex_mdb_mysql_user":{"version":0,"block":{"attributes":{"authentication_plugin":{"type":"string","description_kind":"plain","optional":true,"computed":true},"cluster_id":{"type":"string","description_kind":"plain","required":true},"global_permissions":{"type":["set","string"],"description_kind":"plain","optional":true,"computed":true},"id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"name":{"type":"string","description_kind":"plain","required":true},"password":{"type":"string","description_kind":"plain","required":true,"sensitive":true}},"block_types":{"connection_limits":{"nesting_mode":"list","block":{"attributes":{"max_connections_per_hour":{"type":"number","description_kind":"plain","optional":true},"max_questions_per_hour":{"type":"number","description_kind":"plain","optional":true},"max_updates_per_hour":{"type":"number","description_kind":"plain","optional":true},"max_user_connections":{"type":"number","description_kind":"plain","optional":true}},"description_kind":"plain"},"max_items":1},"permission":{"nesting_mode":"set","block":{"attributes":{"database_name":{"type":"string","description_kind":"plain","required":true},"roles":{"type":["list","string"],"description_kind":"plain","optional":true}},"description_kind":"plain"}},"timeouts":{"nesting_mode":"single","block":{"attributes":{"create":{"type":"string","description_kind":"plain","optional":true},"delete":{"type":"string","description_kind":"plain","optional":true},"read":{"type":"string","description_kind":"plain","optional":true},"update":{"type":"string","description_kind":"plain","optional":true}},"description_kind":"plain"}}},"description_kind":"plain"}},"yandex_mdb_opensearch_cluster":{"version":0,"block":{"attributes":{"created_at":{"type":"string","description_kind":"plain","computed":true},"deletion_protection":{"type":"bool","description_kind":"plain","optional":true,"computed":true},"description":{"type":"string","description_kind":"plain","optional":true},"environment":{"type":"string","description_kind":"plain","optional":true,"computed":true},"folder_id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"health":{"type":"string","description_kind":"plain","computed":true},"hosts":{"type":["set",["object",{"assign_public_ip":"bool","fqdn":"string","roles":["set","string"],"subnet_id":"string","type":"string","zone":"string"}]],"description_kind":"plain","computed":true},"id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"labels":{"type":["map","string"],"description_kind":"plain","optional":true},"name":{"type":"string","description_kind":"plain","required":true},"network_id":{"type":"string","description_kind":"plain","required":true},"security_group_ids":{"type":["set","string"],"description_kind":"plain","optional":true},"service_account_id":{"type":"string","description_kind":"plain","optional":true},"status":{"type":"string","description_kind":"plain","computed":true}},"block_types":{"config":{"nesting_mode":"list","block":{"attributes":{"admin_password":{"type":"string","description_kind":"plain","required":true,"sensitive":true},"version":{"type":"string","description_kind":"plain","optional":true,"computed":true}},"block_types":{"dashboards":{"nesting_mode":"list","block":{"block_types":{"node_groups":{"nesting_mode":"set","block":{"attributes":{"assign_public_ip":{"type":"bool","description_kind":"plain","optional":true,"computed":true},"hosts_count":{"type":"number","description_kind":"plain","required":true},"name":{"type":"string","description_kind":"plain","required":true},"subnet_ids":{"type":["set","string"],"description_kind":"plain","optional":true,"computed":true},"zone_ids":{"type":["set","string"],"description_kind":"plain","required":true}},"block_types":{"resources":{"nesting_mode":"set","block":{"attributes":{"disk_size":{"type":"number","description_kind":"plain","required":true},"disk_type_id":{"type":"string","description_kind":"plain","required":true},"resource_preset_id":{"type":"string","description_kind":"plain","required":true}},"description_kind":"plain"},"min_items":1,"max_items":1}},"description_kind":"plain"},"min_items":1}},"description_kind":"plain"},"max_items":1},"opensearch":{"nesting_mode":"list","block":{"attributes":{"plugins":{"type":["set","string"],"description_kind":"plain","optional":true,"computed":true}},"block_types":{"node_groups":{"nesting_mode":"set","block":{"attributes":{"assign_public_ip":{"type":"bool","description_kind":"plain","optional":true,"computed":true},"hosts_count":{"type":"number","description_kind":"plain","required":true},"name":{"type":"string","description_kind":"plain","required":true},"roles":{"type":["set","string"],"description_kind":"plain","optional":true,"computed":true},"subnet_ids":{"type":["set","string"],"description_kind":"plain","optional":true,"computed":true},"zone_ids":{"type":["set","string"],"description_kind":"plain","required":true}},"block_types":{"resources":{"nesting_mode":"set","block":{"attributes":{"disk_size":{"type":"number","description_kind":"plain","required":true},"disk_type_id":{"type":"string","description_kind":"plain","required":true},"resource_preset_id":{"type":"string","description_kind":"plain","required":true}},"description_kind":"plain"},"min_items":1,"max_items":1}},"description_kind":"plain"},"min_items":1}},"description_kind":"plain"},"min_items":1,"max_items":1}},"description_kind":"plain"}},"maintenance_window":{"nesting_mode":"list","block":{"attributes":{"day":{"type":"string","description_kind":"plain","optional":true},"hour":{"type":"number","description_kind":"plain","optional":true},"type":{"type":"string","description_kind":"plain","required":true}},"description_kind":"plain"},"max_items":1},"timeouts":{"nesting_mode":"single","block":{"attributes":{"create":{"type":"string","description_kind":"plain","optional":true},"delete":{"type":"string","description_kind":"plain","optional":true},"update":{"type":"string","description_kind":"plain","optional":true}},"description_kind":"plain"}}},"description_kind":"plain"}},"yandex_mdb_postgresql_cluster":{"version":0,"block":{"attributes":{"created_at":{"type":"string","description_kind":"plain","computed":true},"deletion_protection":{"type":"bool","description_kind":"plain","optional":true,"computed":true},"description":{"type":"string","description_kind":"plain","optional":true},"environment":{"type":"string","description_kind":"plain","required":true},"folder_id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"health":{"type":"string","description_kind":"plain","computed":true},"host_group_ids":{"type":["set","string"],"description_kind":"plain","optional":true,"computed":true},"host_master_name":{"type":"string","description_kind":"plain","optional":true,"computed":true},"id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"labels":{"type":["map","string"],"description_kind":"plain","optional":true,"computed":true},"name":{"type":"string","description_kind":"plain","required":true},"network_id":{"type":"string","description_kind":"plain","required":true},"security_group_ids":{"type":["set","string"],"description_kind":"plain","optional":true,"computed":true},"status":{"type":"string","description_kind":"plain","computed":true}},"block_types":{"config":{"nesting_mode":"list","block":{"attributes":{"autofailover":{"type":"bool","description_kind":"plain","optional":true,"computed":true},"backup_retain_period_days":{"type":"number","description_kind":"plain","optional":true,"computed":true},"postgresql_config":{"type":["map","string"],"description_kind":"plain","optional":true,"computed":true},"version":{"type":"string","description_kind":"plain","required":true}},"block_types":{"access":{"nesting_mode":"list","block":{"attributes":{"data_lens":{"type":"bool","description_kind":"plain","optional":true},"data_transfer":{"type":"bool","description_kind":"plain","optional":true},"serverless":{"type":"bool","description_kind":"plain","optional":true},"web_sql":{"type":"bool","description_kind":"plain","optional":true,"computed":true}},"description_kind":"plain"},"max_items":1},"backup_window_start":{"nesting_mode":"list","block":{"attributes":{"hours":{"type":"number","description_kind":"plain","optional":true},"minutes":{"type":"number","description_kind":"plain","optional":true}},"description_kind":"plain"},"max_items":1},"disk_size_autoscaling":{"nesting_mode":"list","block":{"attributes":{"disk_size_limit":{"type":"number","description_kind":"plain","required":true},"emergency_usage_threshold":{"type":"number","description_kind":"plain","optional":true},"planned_usage_threshold":{"type":"number","description_kind":"plain","optional":true}},"description_kind":"plain"},"max_items":1},"performance_diagnostics":{"nesting_mode":"list","block":{"attributes":{"enabled":{"type":"bool","description_kind":"plain","optional":true,"computed":true},"sessions_sampling_interval":{"type":"number","description_kind":"plain","required":true},"statements_sampling_interval":{"type":"number","description_kind":"plain","required":true}},"description_kind":"plain"},"max_items":1},"pooler_config":{"nesting_mode":"list","block":{"attributes":{"pool_discard":{"type":"bool","description_kind":"plain","optional":true},"pooling_mode":{"type":"string","description_kind":"plain","optional":true}},"description_kind":"plain"},"max_items":1},"resources":{"nesting_mode":"list","block":{"attributes":{"disk_size":{"type":"number","description_kind":"plain","required":true},"disk_type_id":{"type":"string","description_kind":"plain","optional":true},"resource_preset_id":{"type":"string","description_kind":"plain","required":true}},"description_kind":"plain"},"min_items":1,"max_items":1}},"description_kind":"plain"},"min_items":1,"max_items":1},"database":{"nesting_mode":"list","block":{"attributes":{"lc_collate":{"type":"string","description_kind":"plain","optional":true},"lc_type":{"type":"string","description_kind":"plain","optional":true},"name":{"type":"string","description_kind":"plain","required":true},"owner":{"type":"string","description_kind":"plain","required":true},"template_db":{"type":"string","description_kind":"plain","optional":true}},"block_types":{"extension":{"nesting_mode":"set","block":{"attributes":{"name":{"type":"string","description_kind":"plain","required":true},"version":{"type":"string","description_kind":"plain","optional":true}},"description_kind":"plain"}}},"description_kind":"plain","deprecated":true}},"host":{"nesting_mode":"list","block":{"attributes":{"assign_public_ip":{"type":"bool","description_kind":"plain","optional":true},"fqdn":{"type":"string","description_kind":"plain","computed":true},"name":{"type":"string","description_kind":"plain","optional":true},"priority":{"type":"number","description_kind":"plain","optional":true},"replication_source":{"type":"string","description_kind":"plain","computed":true},"replication_source_name":{"type":"string","description_kind":"plain","optional":true},"role":{"type":"string","description_kind":"plain","computed":true},"subnet_id":{"type":"string","description_kind":"plain","optional":true},"zone":{"type":"string","description_kind":"plain","required":true}},"description_kind":"plain"},"min_items":1},"maintenance_window":{"nesting_mode":"list","block":{"attributes":{"day":{"type":"string","description_kind":"plain","optional":true},"hour":{"type":"number","description_kind":"plain","optional":true},"type":{"type":"string","description_kind":"plain","required":true}},"description_kind":"plain"},"max_items":1},"restore":{"nesting_mode":"list","block":{"attributes":{"backup_id":{"type":"string","description_kind":"plain","required":true},"time":{"type":"string","description_kind":"plain","optional":true},"time_inclusive":{"type":"bool","description_kind":"plain","optional":true}},"description_kind":"plain"},"max_items":1},"timeouts":{"nesting_mode":"single","block":{"attributes":{"create":{"type":"string","description_kind":"plain","optional":true},"delete":{"type":"string","description_kind":"plain","optional":true},"update":{"type":"string","description_kind":"plain","optional":true}},"description_kind":"plain"}},"user":{"nesting_mode":"list","block":{"attributes":{"conn_limit":{"type":"number","description_kind":"plain","optional":true,"computed":true},"grants":{"type":["list","string"],"description_kind":"plain","optional":true,"computed":true},"login":{"type":"bool","description_kind":"plain","optional":true},"name":{"type":"string","description_kind":"plain","required":true},"password":{"type":"string","description_kind":"plain","required":true,"sensitive":true},"settings":{"type":["map","string"],"description_kind":"plain","optional":true,"computed":true}},"block_types":{"permission":{"nesting_mode":"set","block":{"attributes":{"database_name":{"type":"string","description_kind":"plain","required":true}},"description_kind":"plain"}}},"description_kind":"plain","deprecated":true}}},"description_kind":"plain"}},"yandex_mdb_postgresql_database":{"version":0,"block":{"attributes":{"cluster_id":{"type":"string","description_kind":"plain","required":true},"deletion_protection":{"type":"string","description_kind":"plain","optional":true},"id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"lc_collate":{"type":"string","description_kind":"plain","optional":true},"lc_type":{"type":"string","description_kind":"plain","optional":true},"name":{"type":"string","description_kind":"plain","required":true},"owner":{"type":"string","description_kind":"plain","required":true},"template_db":{"type":"string","description_kind":"plain","optional":true}},"block_types":{"extension":{"nesting_mode":"set","block":{"attributes":{"name":{"type":"string","description_kind":"plain","required":true},"version":{"type":"string","description_kind":"plain","optional":true}},"description_kind":"plain"}},"timeouts":{"nesting_mode":"single","block":{"attributes":{"create":{"type":"string","description_kind":"plain","optional":true},"delete":{"type":"string","description_kind":"plain","optional":true},"read":{"type":"string","description_kind":"plain","optional":true},"update":{"type":"string","description_kind":"plain","optional":true}},"description_kind":"plain"}}},"description_kind":"plain"}},"yandex_mdb_postgresql_user":{"version":0,"block":{"attributes":{"cluster_id":{"type":"string","description_kind":"plain","required":true},"conn_limit":{"type":"number","description_kind":"plain","optional":true,"computed":true},"deletion_protection":{"type":"string","description_kind":"plain","optional":true},"grants":{"type":["list","string"],"description_kind":"plain","optional":true,"computed":true},"id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"login":{"type":"bool","description_kind":"plain","optional":true},"name":{"type":"string","description_kind":"plain","required":true},"password":{"type":"string","description_kind":"plain","required":true,"sensitive":true},"settings":{"type":["map","string"],"description_kind":"plain","optional":true,"computed":true}},"block_types":{"permission":{"nesting_mode":"set","block":{"attributes":{"database_name":{"type":"string","description_kind":"plain","required":true}},"description_kind":"plain"}},"timeouts":{"nesting_mode":"single","block":{"attributes":{"create":{"type":"string","description_kind":"plain","optional":true},"delete":{"type":"string","description_kind":"plain","optional":true},"read":{"type":"string","description_kind":"plain","optional":true},"update":{"type":"string","description_kind":"plain","optional":true}},"description_kind":"plain"}}},"description_kind":"plain"}},"yandex_mdb_redis_cluster":{"version":0,"block":{"attributes":{"announce_hostnames":{"type":"bool","description_kind":"plain","optional":true},"created_at":{"type":"string","description_kind":"plain","computed":true},"deletion_protection":{"type":"bool","description_kind":"plain","optional":true,"computed":true},"description":{"type":"string","description_kind":"plain","optional":true},"environment":{"type":"string","description_kind":"plain","required":true},"folder_id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"health":{"type":"string","description_kind":"plain","computed":true},"id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"labels":{"type":["map","string"],"description_kind":"plain","optional":true},"name":{"type":"string","description_kind":"plain","required":true},"network_id":{"type":"string","description_kind":"plain","required":true},"persistence_mode":{"type":"string","description_kind":"plain","optional":true,"computed":true},"security_group_ids":{"type":["set","string"],"description_kind":"plain","optional":true},"sharded":{"type":"bool","description_kind":"plain","optional":true},"status":{"type":"string","description_kind":"plain","computed":true},"tls_enabled":{"type":"bool","description_kind":"plain","optional":true,"computed":true}},"block_types":{"config":{"nesting_mode":"list","block":{"attributes":{"client_output_buffer_limit_normal":{"type":"string","description_kind":"plain","optional":true,"computed":true},"client_output_buffer_limit_pubsub":{"type":"string","description_kind":"plain","optional":true,"computed":true},"databases":{"type":"number","description_kind":"plain","optional":true,"computed":true},"maxmemory_percent":{"type":"number","description_kind":"plain","optional":true},"maxmemory_policy":{"type":"string","description_kind":"plain","optional":true,"computed":true},"notify_keyspace_events":{"type":"string","description_kind":"plain","optional":true,"computed":true},"password":{"type":"string","description_kind":"plain","required":true,"sensitive":true},"slowlog_log_slower_than":{"type":"number","description_kind":"plain","optional":true,"computed":true},"slowlog_max_len":{"type":"number","description_kind":"plain","optional":true,"computed":true},"timeout":{"type":"number","description_kind":"plain","optional":true,"computed":true},"version":{"type":"string","description_kind":"plain","required":true}},"description_kind":"plain"},"min_items":1,"max_items":1},"host":{"nesting_mode":"list","block":{"attributes":{"assign_public_ip":{"type":"bool","description_kind":"plain","optional":true},"fqdn":{"type":"string","description_kind":"plain","computed":true},"replica_priority":{"type":"number","description_kind":"plain","optional":true},"shard_name":{"type":"string","description_kind":"plain","optional":true,"computed":true},"subnet_id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"zone":{"type":"string","description_kind":"plain","required":true}},"description_kind":"plain"},"min_items":1},"maintenance_window":{"nesting_mode":"list","block":{"attributes":{"day":{"type":"string","description_kind":"plain","optional":true},"hour":{"type":"number","description_kind":"plain","optional":true},"type":{"type":"string","description_kind":"plain","required":true}},"description_kind":"plain"},"max_items":1},"resources":{"nesting_mode":"list","block":{"attributes":{"disk_size":{"type":"number","description_kind":"plain","required":true},"disk_type_id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"resource_preset_id":{"type":"string","description_kind":"plain","required":true}},"description_kind":"plain"},"min_items":1,"max_items":1},"timeouts":{"nesting_mode":"single","block":{"attributes":{"create":{"type":"string","description_kind":"plain","optional":true},"delete":{"type":"string","description_kind":"plain","optional":true},"update":{"type":"string","description_kind":"plain","optional":true}},"description_kind":"plain"}}},"description_kind":"plain"}},"yandex_mdb_sqlserver_cluster":{"version":0,"block":{"attributes":{"created_at":{"type":"string","description_kind":"plain","computed":true},"deletion_protection":{"type":"bool","description_kind":"plain","optional":true,"computed":true},"description":{"type":"string","description_kind":"plain","optional":true},"environment":{"type":"string","description_kind":"plain","required":true},"folder_id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"health":{"type":"string","description_kind":"plain","computed":true},"host_group_ids":{"type":["set","string"],"description_kind":"plain","optional":true,"computed":true},"id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"labels":{"type":["map","string"],"description_kind":"plain","optional":true},"name":{"type":"string","description_kind":"plain","required":true},"network_id":{"type":"string","description_kind":"plain","required":true},"security_group_ids":{"type":["set","string"],"description_kind":"plain","optional":true},"sqlcollation":{"type":"string","description_kind":"plain","optional":true,"computed":true},"sqlserver_config":{"type":["map","string"],"description_kind":"plain","optional":true,"computed":true},"status":{"type":"string","description_kind":"plain","computed":true},"version":{"type":"string","description_kind":"plain","required":true}},"block_types":{"backup_window_start":{"nesting_mode":"list","block":{"attributes":{"hours":{"type":"number","description_kind":"plain","optional":true},"minutes":{"type":"number","description_kind":"plain","optional":true}},"description_kind":"plain"},"max_items":1},"database":{"nesting_mode":"list","block":{"attributes":{"name":{"type":"string","description_kind":"plain","required":true}},"description_kind":"plain"},"min_items":1},"host":{"nesting_mode":"list","block":{"attributes":{"assign_public_ip":{"type":"bool","description_kind":"plain","optional":true},"fqdn":{"type":"string","description_kind":"plain","computed":true},"subnet_id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"zone":{"type":"string","description_kind":"plain","required":true}},"description_kind":"plain"},"min_items":1},"resources":{"nesting_mode":"list","block":{"attributes":{"disk_size":{"type":"number","description_kind":"plain","required":true},"disk_type_id":{"type":"string","description_kind":"plain","required":true},"resource_preset_id":{"type":"string","description_kind":"plain","required":true}},"description_kind":"plain"},"min_items":1,"max_items":1},"timeouts":{"nesting_mode":"single","block":{"attributes":{"create":{"type":"string","description_kind":"plain","optional":true},"delete":{"type":"string","description_kind":"plain","optional":true},"update":{"type":"string","description_kind":"plain","optional":true}},"description_kind":"plain"}},"user":{"nesting_mode":"list","block":{"attributes":{"name":{"type":"string","description_kind":"plain","required":true},"password":{"type":"string","description_kind":"plain","required":true,"sensitive":true}},"block_types":{"permission":{"nesting_mode":"set","block":{"attributes":{"database_name":{"type":"string","description_kind":"plain","required":true},"roles":{"type":["set","string"],"description_kind":"plain","optional":true}},"description_kind":"plain"}}},"description_kind":"plain"},"min_items":1}},"description_kind":"plain"}},"yandex_message_queue":{"version":0,"block":{"attributes":{"access_key":{"type":"string","description_kind":"plain","optional":true},"arn":{"type":"string","description_kind":"plain","computed":true},"content_based_deduplication":{"type":"bool","description_kind":"plain","optional":true},"delay_seconds":{"type":"number","description_kind":"plain","optional":true},"fifo_queue":{"type":"bool","description_kind":"plain","optional":true},"id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"max_message_size":{"type":"number","description_kind":"plain","optional":true},"message_retention_seconds":{"type":"number","description_kind":"plain","optional":true},"name":{"type":"string","description_kind":"plain","optional":true,"computed":true},"name_prefix":{"type":"string","description_kind":"plain","optional":true},"receive_wait_time_seconds":{"type":"number","description_kind":"plain","optional":true},"redrive_policy":{"type":"string","description_kind":"plain","optional":true},"region_id":{"type":"string","description_kind":"plain","optional":true},"secret_key":{"type":"string","description_kind":"plain","optional":true,"sensitive":true},"visibility_timeout_seconds":{"type":"number","description_kind":"plain","optional":true}},"description_kind":"plain"}},"yandex_monitoring_dashboard":{"version":1,"block":{"attributes":{"dashboard_id":{"type":"string","description":"Dashboard ID","description_kind":"plain","computed":true},"description":{"type":"string","description":"Dashboard description","description_kind":"plain","optional":true},"folder_id":{"type":"string","description":"Folder ID","description_kind":"plain","optional":true,"computed":true},"id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"labels":{"type":["map","string"],"description":"Dashboard labels","description_kind":"plain","optional":true,"computed":true},"name":{"type":"string","description":"Dashboard name, used as local identifier in folder_id","description_kind":"plain","required":true},"title":{"type":"string","description":"Dashboard title","description_kind":"plain","optional":true}},"block_types":{"parametrization":{"nesting_mode":"list","block":{"attributes":{"selectors":{"type":"string","description":"Predefined selectors","description_kind":"plain","optional":true}},"block_types":{"parameters":{"nesting_mode":"list","block":{"attributes":{"description":{"type":"string","description":"Parameter description","description_kind":"plain","optional":true},"hidden":{"type":"bool","description":"UI-visibility","description_kind":"plain","optional":true},"id":{"type":"string","description":"Parameter identifier","description_kind":"plain","required":true},"title":{"type":"string","description":"UI-visible title of the parameter","description_kind":"plain","optional":true}},"block_types":{"custom":{"nesting_mode":"list","block":{"attributes":{"default_values":{"type":["list","string"],"description":"Default value","description_kind":"plain","optional":true},"multiselectable":{"type":"bool","description":"Specifies the multiselectable values of parameter","description_kind":"plain","optional":true},"values":{"type":["list","string"],"description":"Parameter values","description_kind":"plain","optional":true}},"description":"Custom parameter","description_kind":"plain"}},"label_values":{"nesting_mode":"list","block":{"attributes":{"default_values":{"type":["list","string"],"description":"Default value","description_kind":"plain","optional":true},"folder_id":{"type":"string","description":"Folder ID","description_kind":"plain","optional":true},"label_key":{"type":"string","description":"Required. Label key to list label values","description_kind":"plain","required":true},"multiselectable":{"type":"bool","description":"Specifies the multiselectable values of parameter","description_kind":"plain","optional":true},"selectors":{"type":"string","description":"Required. Selectors to select metric label values","description_kind":"plain","optional":true}},"description":"Label values parameter","description_kind":"plain"}},"text":{"nesting_mode":"list","block":{"attributes":{"default_value":{"type":"string","description":"Default value","description_kind":"plain","optional":true}},"description":"Text parameter","description_kind":"plain"}}},"description":"Dashboard parameter","description_kind":"plain"}}},"description":"Dashboard parametrization","description_kind":"plain"}},"timeouts":{"nesting_mode":"single","block":{"attributes":{"create":{"type":"string","description_kind":"plain","optional":true},"delete":{"type":"string","description_kind":"plain","optional":true},"read":{"type":"string","description_kind":"plain","optional":true},"update":{"type":"string","description_kind":"plain","optional":true}},"description_kind":"plain"}},"widgets":{"nesting_mode":"list","block":{"block_types":{"chart":{"nesting_mode":"list","block":{"attributes":{"chart_id":{"type":"string","description":"Chart ID","description_kind":"plain","optional":true},"description":{"type":"string","description":"Chart description in dashboard (not enabled in UI)","description_kind":"plain","optional":true},"display_legend":{"type":"bool","description":"Enable legend under chart","description_kind":"plain","optional":true},"freeze":{"type":"string","description":"Fixed time interval for chart","description_kind":"plain","optional":true,"computed":true},"title":{"type":"string","description":"Chart widget title","description_kind":"plain","optional":true}},"block_types":{"name_hiding_settings":{"nesting_mode":"list","block":{"attributes":{"names":{"type":["list","string"],"description_kind":"plain","optional":true},"positive":{"type":"bool","description":"True if we want to show concrete series names only, false if we want to hide concrete series names","description_kind":"plain","optional":true}},"description":"Name hiding settings","description_kind":"plain"}},"queries":{"nesting_mode":"list","block":{"block_types":{"downsampling":{"nesting_mode":"list","block":{"attributes":{"disabled":{"type":"bool","description":"Disable downsampling","description_kind":"plain","optional":true},"gap_filling":{"type":"string","description":"Parameters for filling gaps in data","description_kind":"plain","optional":true},"grid_aggregation":{"type":"string","description":"Function that is used for downsampling","description_kind":"plain","optional":true},"grid_interval":{"type":"number","description":"Time interval (grid) for downsampling in milliseconds. Points in the specified range are aggregated into one time point","description_kind":"plain","optional":true},"max_points":{"type":"number","description":"Maximum number of points to be returned","description_kind":"plain","optional":true}},"description":"Downsampling settings","description_kind":"plain"}},"target":{"nesting_mode":"list","block":{"attributes":{"hidden":{"type":"bool","description":"Checks that target is visible or invisible","description_kind":"plain","optional":true},"query":{"type":"string","description":"Required. Query","description_kind":"plain","optional":true},"text_mode":{"type":"bool","description":"Text mode","description_kind":"plain","optional":true}},"description":"Downsampling settings","description_kind":"plain"}}},"description":"Queries","description_kind":"plain"}},"series_overrides":{"nesting_mode":"list","block":{"attributes":{"name":{"type":"string","description":"Series name","description_kind":"plain","optional":true},"target_index":{"type":"string","description":"Target index","description_kind":"plain","optional":true}},"block_types":{"settings":{"nesting_mode":"list","block":{"attributes":{"color":{"type":"string","description":"Series color or empty","description_kind":"plain","optional":true},"grow_down":{"type":"bool","description":"Stack grow down","description_kind":"plain","optional":true},"name":{"type":"string","description":"Series name or empty","description_kind":"plain","optional":true},"stack_name":{"type":"string","description":"Stack name or empty","description_kind":"plain","optional":true},"type":{"type":"string","description":"Type","description_kind":"plain","optional":true,"computed":true},"yaxis_position":{"type":"string","description":"Yaxis position","description_kind":"plain","optional":true,"computed":true}},"description":"Override settings","description_kind":"plain"}}},"description_kind":"plain"}},"visualization_settings":{"nesting_mode":"list","block":{"attributes":{"aggregation":{"type":"string","description":"Aggregation","description_kind":"plain","optional":true,"computed":true},"interpolate":{"type":"string","description":"Interpolate","description_kind":"plain","optional":true,"computed":true},"normalize":{"type":"bool","description":"Normalize","description_kind":"plain","optional":true},"show_labels":{"type":"bool","description":"Show chart labels","description_kind":"plain","optional":true},"title":{"type":"string","description":"Inside chart title","description_kind":"plain","optional":true},"type":{"type":"string","description":"Visualization type","description_kind":"plain","optional":true,"computed":true}},"block_types":{"color_scheme_settings":{"nesting_mode":"list","block":{"block_types":{"automatic":{"nesting_mode":"list","block":{"description":"Automatic color scheme","description_kind":"plain"}},"gradient":{"nesting_mode":"list","block":{"attributes":{"green_value":{"type":"string","description":"Gradient green value","description_kind":"plain","optional":true},"red_value":{"type":"string","description":"Gradient red value","description_kind":"plain","optional":true},"violet_value":{"type":"string","description":"Gradient violet_value","description_kind":"plain","optional":true},"yellow_value":{"type":"string","description":"Gradient yellow value","description_kind":"plain","optional":true}},"description":"Gradient color scheme","description_kind":"plain"}},"standard":{"nesting_mode":"list","block":{"description":"Standard color scheme","description_kind":"plain"}}},"description":"Color scheme settings","description_kind":"plain"}},"heatmap_settings":{"nesting_mode":"list","block":{"attributes":{"green_value":{"type":"string","description":"Heatmap green value","description_kind":"plain","optional":true},"red_value":{"type":"string","description":"Heatmap red value","description_kind":"plain","optional":true},"violet_value":{"type":"string","description":"Heatmap violet_value","description_kind":"plain","optional":true},"yellow_value":{"type":"string","description":"Heatmap yellow value","description_kind":"plain","optional":true}},"description":"Heatmap settings","description_kind":"plain"}},"yaxis_settings":{"nesting_mode":"list","block":{"block_types":{"left":{"nesting_mode":"list","block":{"attributes":{"max":{"type":"string","description":"Max value in extended number format or empty","description_kind":"plain","optional":true},"min":{"type":"string","description":"Min value in extended number format or empty","description_kind":"plain","optional":true},"precision":{"type":"number","description":"Tick value precision (null as default, 0-7 in other cases)","description_kind":"plain","optional":true},"title":{"type":"string","description":"Title or empty","description_kind":"plain","optional":true},"type":{"type":"string","description":"Type","description_kind":"plain","optional":true,"computed":true},"unit_format":{"type":"string","description":"Unit format","description_kind":"plain","optional":true,"computed":true}},"description":"Left Y axis settings","description_kind":"plain"}},"right":{"nesting_mode":"list","block":{"attributes":{"max":{"type":"string","description":"Max value in extended number format or empty","description_kind":"plain","optional":true},"min":{"type":"string","description":"Min value in extended number format or empty","description_kind":"plain","optional":true},"precision":{"type":"number","description":"Tick value precision (null as default, 0-7 in other cases)","description_kind":"plain","optional":true},"title":{"type":"string","description":"Title or empty","description_kind":"plain","optional":true},"type":{"type":"string","description":"Type","description_kind":"plain","optional":true},"unit_format":{"type":"string","description":"Unit format","description_kind":"plain","optional":true}},"description":"Right Y axis settings","description_kind":"plain"}}},"description":"Y axis settings","description_kind":"plain"}}},"description":"Visualization settings","description_kind":"plain"}}},"description":"Chart widget","description_kind":"plain"}},"position":{"nesting_mode":"list","block":{"attributes":{"h":{"type":"number","description":"Required. Height","description_kind":"plain","optional":true},"w":{"type":"number","description":"Required. Weight","description_kind":"plain","optional":true},"x":{"type":"number","description":"Required. X-axis top-left corner coordinate","description_kind":"plain","optional":true},"y":{"type":"number","description":"Required. Y-axis top-left corner coordinate","description_kind":"plain","optional":true}},"description":"Required. Widget layout position","description_kind":"plain"}},"text":{"nesting_mode":"list","block":{"attributes":{"text":{"type":"string","description":"Text","description_kind":"plain","optional":true}},"description":"Text widget","description_kind":"plain"}},"title":{"nesting_mode":"list","block":{"attributes":{"size":{"type":"string","description":"Title size","description_kind":"plain","optional":true,"computed":true},"text":{"type":"string","description":"Title text","description_kind":"plain","required":true}},"description":"Title widget","description_kind":"plain"}}},"description":"Widgets","description_kind":"plain"}}},"description":"Monitoring dashboard","description_kind":"plain"}},"yandex_organizationmanager_group":{"version":0,"block":{"attributes":{"created_at":{"type":"string","description_kind":"plain","computed":true},"description":{"type":"string","description_kind":"plain","optional":true},"id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"name":{"type":"string","description_kind":"plain","required":true},"organization_id":{"type":"string","description_kind":"plain","required":true}},"block_types":{"timeouts":{"nesting_mode":"single","block":{"attributes":{"create":{"type":"string","description_kind":"plain","optional":true},"delete":{"type":"string","description_kind":"plain","optional":true},"read":{"type":"string","description_kind":"plain","optional":true},"update":{"type":"string","description_kind":"plain","optional":true}},"description_kind":"plain"}}},"description_kind":"plain"}},"yandex_organizationmanager_group_iam_member":{"version":0,"block":{"attributes":{"group_id":{"type":"string","description_kind":"plain","required":true},"id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"member":{"type":"string","description_kind":"plain","required":true},"role":{"type":"string","description_kind":"plain","required":true},"sleep_after":{"type":"number","description_kind":"plain","optional":true}},"block_types":{"timeouts":{"nesting_mode":"single","block":{"attributes":{"default":{"type":"string","description_kind":"plain","optional":true}},"description_kind":"plain"}}},"description_kind":"plain"}},"yandex_organizationmanager_group_membership":{"version":0,"block":{"attributes":{"group_id":{"type":"string","description_kind":"plain","required":true},"id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"members":{"type":["set","string"],"description_kind":"plain","required":true}},"block_types":{"timeouts":{"nesting_mode":"single","block":{"attributes":{"create":{"type":"string","description_kind":"plain","optional":true},"delete":{"type":"string","description_kind":"plain","optional":true},"read":{"type":"string","description_kind":"plain","optional":true},"update":{"type":"string","description_kind":"plain","optional":true}},"description_kind":"plain"}}},"description_kind":"plain"}},"yandex_organizationmanager_organization_iam_binding":{"version":0,"block":{"attributes":{"id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"members":{"type":["set","string"],"description_kind":"plain","required":true},"organization_id":{"type":"string","description_kind":"plain","required":true},"role":{"type":"string","description_kind":"plain","required":true},"sleep_after":{"type":"number","description_kind":"plain","optional":true}},"block_types":{"timeouts":{"nesting_mode":"single","block":{"attributes":{"default":{"type":"string","description_kind":"plain","optional":true}},"description_kind":"plain"}}},"description_kind":"plain"}},"yandex_organizationmanager_organization_iam_member":{"version":0,"block":{"attributes":{"id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"member":{"type":"string","description_kind":"plain","required":true},"organization_id":{"type":"string","description_kind":"plain","required":true},"role":{"type":"string","description_kind":"plain","required":true},"sleep_after":{"type":"number","description_kind":"plain","optional":true}},"block_types":{"timeouts":{"nesting_mode":"single","block":{"attributes":{"default":{"type":"string","description_kind":"plain","optional":true}},"description_kind":"plain"}}},"description_kind":"plain"}},"yandex_organizationmanager_os_login_settings":{"version":0,"block":{"attributes":{"id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"organization_id":{"type":"string","description_kind":"plain","required":true}},"block_types":{"ssh_certificate_settings":{"nesting_mode":"list","block":{"attributes":{"enabled":{"type":"bool","description_kind":"plain","optional":true}},"description_kind":"plain"},"max_items":1},"timeouts":{"nesting_mode":"single","block":{"attributes":{"create":{"type":"string","description_kind":"plain","optional":true},"delete":{"type":"string","description_kind":"plain","optional":true},"read":{"type":"string","description_kind":"plain","optional":true},"update":{"type":"string","description_kind":"plain","optional":true}},"description_kind":"plain"}},"user_ssh_key_settings":{"nesting_mode":"list","block":{"attributes":{"allow_manage_own_keys":{"type":"bool","description_kind":"plain","optional":true},"enabled":{"type":"bool","description_kind":"plain","optional":true}},"description_kind":"plain"},"max_items":1}},"description_kind":"plain"}},"yandex_organizationmanager_saml_federation":{"version":0,"block":{"attributes":{"auto_create_account_on_login":{"type":"bool","description_kind":"plain","optional":true,"computed":true},"case_insensitive_name_ids":{"type":"bool","description_kind":"plain","optional":true,"computed":true},"cookie_max_age":{"type":"string","description_kind":"plain","optional":true,"computed":true},"created_at":{"type":"string","description_kind":"plain","computed":true},"description":{"type":"string","description_kind":"plain","optional":true},"id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"issuer":{"type":"string","description_kind":"plain","required":true},"labels":{"type":["map","string"],"description_kind":"plain","optional":true},"name":{"type":"string","description_kind":"plain","required":true},"organization_id":{"type":"string","description_kind":"plain","required":true},"sso_binding":{"type":"string","description_kind":"plain","required":true},"sso_url":{"type":"string","description_kind":"plain","required":true}},"block_types":{"security_settings":{"nesting_mode":"list","block":{"attributes":{"encrypted_assertions":{"type":"bool","description_kind":"plain","required":true}},"description_kind":"plain"},"max_items":1},"timeouts":{"nesting_mode":"single","block":{"attributes":{"create":{"type":"string","description_kind":"plain","optional":true},"delete":{"type":"string","description_kind":"plain","optional":true},"read":{"type":"string","description_kind":"plain","optional":true},"update":{"type":"string","description_kind":"plain","optional":true}},"description_kind":"plain"}}},"description_kind":"plain"}},"yandex_organizationmanager_saml_federation_user_account":{"version":0,"block":{"attributes":{"federation_id":{"type":"string","description_kind":"plain","required":true},"id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"name_id":{"type":"string","description_kind":"plain","required":true}},"block_types":{"timeouts":{"nesting_mode":"single","block":{"attributes":{"create":{"type":"string","description_kind":"plain","optional":true},"delete":{"type":"string","description_kind":"plain","optional":true},"read":{"type":"string","description_kind":"plain","optional":true},"update":{"type":"string","description_kind":"plain","optional":true}},"description_kind":"plain"}}},"description_kind":"plain"}},"yandex_organizationmanager_user_ssh_key":{"version":0,"block":{"attributes":{"created_at":{"type":"string","description_kind":"plain","computed":true},"data":{"type":"string","description_kind":"plain","required":true},"expires_at":{"type":"string","description_kind":"plain","optional":true},"fingerprint":{"type":"string","description_kind":"plain","computed":true},"id":{"type":"string","description_kind":"plain","computed":true},"name":{"type":"string","description_kind":"plain","optional":true},"organization_id":{"type":"string","description_kind":"plain","required":true},"subject_id":{"type":"string","description_kind":"plain","required":true}},"block_types":{"timeouts":{"nesting_mode":"single","block":{"attributes":{"create":{"type":"string","description_kind":"plain","optional":true},"delete":{"type":"string","description_kind":"plain","optional":true},"read":{"type":"string","description_kind":"plain","optional":true},"update":{"type":"string","description_kind":"plain","optional":true}},"description_kind":"plain"}}},"description_kind":"plain"}},"yandex_resourcemanager_cloud":{"version":0,"block":{"attributes":{"created_at":{"type":"string","description_kind":"plain","computed":true},"description":{"type":"string","description_kind":"plain","optional":true},"id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"labels":{"type":["map","string"],"description_kind":"plain","optional":true},"name":{"type":"string","description_kind":"plain","optional":true},"organization_id":{"type":"string","description_kind":"plain","optional":true,"computed":true}},"block_types":{"timeouts":{"nesting_mode":"single","block":{"attributes":{"create":{"type":"string","description_kind":"plain","optional":true},"delete":{"type":"string","description_kind":"plain","optional":true},"read":{"type":"string","description_kind":"plain","optional":true},"update":{"type":"string","description_kind":"plain","optional":true}},"description_kind":"plain"}}},"description_kind":"plain"}},"yandex_resourcemanager_cloud_iam_binding":{"version":0,"block":{"attributes":{"cloud_id":{"type":"string","description_kind":"plain","required":true},"id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"members":{"type":["set","string"],"description_kind":"plain","required":true},"role":{"type":"string","description_kind":"plain","required":true},"sleep_after":{"type":"number","description_kind":"plain","optional":true}},"block_types":{"timeouts":{"nesting_mode":"single","block":{"attributes":{"default":{"type":"string","description_kind":"plain","optional":true}},"description_kind":"plain"}}},"description_kind":"plain"}},"yandex_resourcemanager_cloud_iam_member":{"version":0,"block":{"attributes":{"cloud_id":{"type":"string","description_kind":"plain","required":true},"id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"member":{"type":"string","description_kind":"plain","required":true},"role":{"type":"string","description_kind":"plain","required":true},"sleep_after":{"type":"number","description_kind":"plain","optional":true}},"block_types":{"timeouts":{"nesting_mode":"single","block":{"attributes":{"default":{"type":"string","description_kind":"plain","optional":true}},"description_kind":"plain"}}},"description_kind":"plain"}},"yandex_resourcemanager_folder":{"version":0,"block":{"attributes":{"cloud_id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"created_at":{"type":"string","description_kind":"plain","computed":true},"description":{"type":"string","description_kind":"plain","optional":true},"id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"labels":{"type":["map","string"],"description_kind":"plain","optional":true},"name":{"type":"string","description_kind":"plain","optional":true}},"block_types":{"timeouts":{"nesting_mode":"single","block":{"attributes":{"create":{"type":"string","description_kind":"plain","optional":true},"delete":{"type":"string","description_kind":"plain","optional":true},"read":{"type":"string","description_kind":"plain","optional":true},"update":{"type":"string","description_kind":"plain","optional":true}},"description_kind":"plain"}}},"description_kind":"plain"}},"yandex_resourcemanager_folder_iam_binding":{"version":0,"block":{"attributes":{"folder_id":{"type":"string","description_kind":"plain","required":true},"id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"members":{"type":["set","string"],"description_kind":"plain","required":true},"role":{"type":"string","description_kind":"plain","required":true},"sleep_after":{"type":"number","description_kind":"plain","optional":true}},"block_types":{"timeouts":{"nesting_mode":"single","block":{"attributes":{"default":{"type":"string","description_kind":"plain","optional":true}},"description_kind":"plain"}}},"description_kind":"plain"}},"yandex_resourcemanager_folder_iam_member":{"version":0,"block":{"attributes":{"folder_id":{"type":"string","description_kind":"plain","required":true},"id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"member":{"type":"string","description_kind":"plain","required":true},"role":{"type":"string","description_kind":"plain","required":true},"sleep_after":{"type":"number","description_kind":"plain","optional":true}},"block_types":{"timeouts":{"nesting_mode":"single","block":{"attributes":{"default":{"type":"string","description_kind":"plain","optional":true}},"description_kind":"plain"}}},"description_kind":"plain"}},"yandex_resourcemanager_folder_iam_policy":{"version":0,"block":{"attributes":{"folder_id":{"type":"string","description_kind":"plain","required":true},"id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"policy_data":{"type":"string","description_kind":"plain","required":true}},"block_types":{"timeouts":{"nesting_mode":"single","block":{"attributes":{"default":{"type":"string","description_kind":"plain","optional":true}},"description_kind":"plain"}}},"description_kind":"plain"}},"yandex_serverless_container":{"version":0,"block":{"attributes":{"concurrency":{"type":"number","description_kind":"plain","optional":true},"core_fraction":{"type":"number","description_kind":"plain","optional":true,"computed":true},"cores":{"type":"number","description_kind":"plain","optional":true},"created_at":{"type":"string","description_kind":"plain","computed":true},"description":{"type":"string","description_kind":"plain","optional":true},"execution_timeout":{"type":"string","description_kind":"plain","optional":true,"computed":true},"folder_id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"labels":{"type":["map","string"],"description_kind":"plain","optional":true},"memory":{"type":"number","description":"Container memory in megabytes, should be aligned to 128","description_kind":"plain","required":true},"name":{"type":"string","description_kind":"plain","required":true},"revision_id":{"type":"string","description_kind":"plain","computed":true},"service_account_id":{"type":"string","description_kind":"plain","optional":true},"url":{"type":"string","description_kind":"plain","computed":true}},"block_types":{"connectivity":{"nesting_mode":"list","block":{"attributes":{"network_id":{"type":"string","description_kind":"plain","required":true}},"description_kind":"plain"},"max_items":1},"image":{"nesting_mode":"list","block":{"attributes":{"args":{"type":["list","string"],"description_kind":"plain","optional":true},"command":{"type":["list","string"],"description_kind":"plain","optional":true},"digest":{"type":"string","description_kind":"plain","optional":true,"computed":true},"environment":{"type":["map","string"],"description_kind":"plain","optional":true},"url":{"type":"string","description_kind":"plain","required":true},"work_dir":{"type":"string","description_kind":"plain","optional":true}},"description_kind":"plain"},"min_items":1,"max_items":1},"log_options":{"nesting_mode":"list","block":{"attributes":{"disabled":{"type":"bool","description_kind":"plain","optional":true},"folder_id":{"type":"string","description_kind":"plain","optional":true},"log_group_id":{"type":"string","description_kind":"plain","optional":true},"min_level":{"type":"string","description_kind":"plain","optional":true}},"description_kind":"plain"},"max_items":1},"secrets":{"nesting_mode":"list","block":{"attributes":{"environment_variable":{"type":"string","description_kind":"plain","required":true},"id":{"type":"string","description_kind":"plain","required":true},"key":{"type":"string","description_kind":"plain","required":true},"version_id":{"type":"string","description_kind":"plain","required":true}},"description_kind":"plain"}},"storage_mounts":{"nesting_mode":"list","block":{"attributes":{"bucket":{"type":"string","description_kind":"plain","required":true},"mount_point_path":{"type":"string","description_kind":"plain","required":true},"prefix":{"type":"string","description_kind":"plain","optional":true},"read_only":{"type":"bool","description_kind":"plain","optional":true}},"description_kind":"plain"}},"timeouts":{"nesting_mode":"single","block":{"attributes":{"create":{"type":"string","description_kind":"plain","optional":true},"delete":{"type":"string","description_kind":"plain","optional":true},"update":{"type":"string","description_kind":"plain","optional":true}},"description_kind":"plain"}}},"description_kind":"plain"}},"yandex_serverless_container_iam_binding":{"version":0,"block":{"attributes":{"container_id":{"type":"string","description_kind":"plain","required":true},"id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"members":{"type":["set","string"],"description_kind":"plain","required":true},"role":{"type":"string","description_kind":"plain","required":true},"sleep_after":{"type":"number","description_kind":"plain","optional":true}},"block_types":{"timeouts":{"nesting_mode":"single","block":{"attributes":{"default":{"type":"string","description_kind":"plain","optional":true}},"description_kind":"plain"}}},"description_kind":"plain"}},"yandex_smartcaptcha_captcha":{"version":1,"block":{"attributes":{"allowed_sites":{"type":["list","string"],"description_kind":"plain","optional":true},"challenge_type":{"type":"string","description_kind":"plain","optional":true},"client_key":{"type":"string","description_kind":"plain","computed":true},"cloud_id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"complexity":{"type":"string","description_kind":"plain","optional":true},"created_at":{"type":"string","description_kind":"plain","computed":true},"deletion_protection":{"type":"bool","description_kind":"plain","optional":true},"folder_id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"name":{"type":"string","description_kind":"plain","optional":true},"pre_check_type":{"type":"string","description_kind":"plain","optional":true},"style_json":{"type":"string","description_kind":"plain","optional":true},"suspend":{"type":"bool","description_kind":"plain","computed":true},"turn_off_hostname_check":{"type":"bool","description_kind":"plain","optional":true}},"block_types":{"override_variant":{"nesting_mode":"list","block":{"attributes":{"challenge_type":{"type":"string","description_kind":"plain","optional":true},"complexity":{"type":"string","description_kind":"plain","optional":true},"description":{"type":"string","description_kind":"plain","optional":true},"pre_check_type":{"type":"string","description_kind":"plain","optional":true},"uuid":{"type":"string","description_kind":"plain","optional":true}},"description_kind":"plain"}},"security_rule":{"nesting_mode":"list","block":{"attributes":{"description":{"type":"string","description_kind":"plain","optional":true},"name":{"type":"string","description_kind":"plain","optional":true},"override_variant_uuid":{"type":"string","description_kind":"plain","optional":true},"priority":{"type":"number","description_kind":"plain","optional":true}},"block_types":{"condition":{"nesting_mode":"list","block":{"block_types":{"headers":{"nesting_mode":"list","block":{"attributes":{"name":{"type":"string","description_kind":"plain","optional":true}},"block_types":{"value":{"nesting_mode":"list","block":{"attributes":{"exact_match":{"type":"string","description_kind":"plain","optional":true},"exact_not_match":{"type":"string","description_kind":"plain","optional":true},"pire_regex_match":{"type":"string","description_kind":"plain","optional":true},"pire_regex_not_match":{"type":"string","description_kind":"plain","optional":true},"prefix_match":{"type":"string","description_kind":"plain","optional":true},"prefix_not_match":{"type":"string","description_kind":"plain","optional":true}},"description_kind":"plain"},"min_items":1,"max_items":1}},"description_kind":"plain"}},"host":{"nesting_mode":"list","block":{"block_types":{"hosts":{"nesting_mode":"list","block":{"attributes":{"exact_match":{"type":"string","description_kind":"plain","optional":true},"exact_not_match":{"type":"string","description_kind":"plain","optional":true},"pire_regex_match":{"type":"string","description_kind":"plain","optional":true},"pire_regex_not_match":{"type":"string","description_kind":"plain","optional":true},"prefix_match":{"type":"string","description_kind":"plain","optional":true},"prefix_not_match":{"type":"string","description_kind":"plain","optional":true}},"description_kind":"plain"}}},"description_kind":"plain"},"max_items":1},"source_ip":{"nesting_mode":"list","block":{"block_types":{"geo_ip_match":{"nesting_mode":"list","block":{"attributes":{"locations":{"type":["list","string"],"description_kind":"plain","optional":true}},"description_kind":"plain"},"max_items":1},"geo_ip_not_match":{"nesting_mode":"list","block":{"attributes":{"locations":{"type":["list","string"],"description_kind":"plain","optional":true}},"description_kind":"plain"},"max_items":1},"ip_ranges_match":{"nesting_mode":"list","block":{"attributes":{"ip_ranges":{"type":["list","string"],"description_kind":"plain","optional":true}},"description_kind":"plain"},"max_items":1},"ip_ranges_not_match":{"nesting_mode":"list","block":{"attributes":{"ip_ranges":{"type":["list","string"],"description_kind":"plain","optional":true}},"description_kind":"plain"},"max_items":1}},"description_kind":"plain"},"max_items":1},"uri":{"nesting_mode":"list","block":{"block_types":{"path":{"nesting_mode":"list","block":{"attributes":{"exact_match":{"type":"string","description_kind":"plain","optional":true},"exact_not_match":{"type":"string","description_kind":"plain","optional":true},"pire_regex_match":{"type":"string","description_kind":"plain","optional":true},"pire_regex_not_match":{"type":"string","description_kind":"plain","optional":true},"prefix_match":{"type":"string","description_kind":"plain","optional":true},"prefix_not_match":{"type":"string","description_kind":"plain","optional":true}},"description_kind":"plain"},"max_items":1},"queries":{"nesting_mode":"list","block":{"attributes":{"key":{"type":"string","description_kind":"plain","required":true}},"block_types":{"value":{"nesting_mode":"list","block":{"attributes":{"exact_match":{"type":"string","description_kind":"plain","optional":true},"exact_not_match":{"type":"string","description_kind":"plain","optional":true},"pire_regex_match":{"type":"string","description_kind":"plain","optional":true},"pire_regex_not_match":{"type":"string","description_kind":"plain","optional":true},"prefix_match":{"type":"string","description_kind":"plain","optional":true},"prefix_not_match":{"type":"string","description_kind":"plain","optional":true}},"description_kind":"plain"},"min_items":1,"max_items":1}},"description_kind":"plain"}}},"description_kind":"plain"},"max_items":1}},"description_kind":"plain"},"max_items":1}},"description_kind":"plain"}},"timeouts":{"nesting_mode":"single","block":{"attributes":{"create":{"type":"string","description_kind":"plain","optional":true},"delete":{"type":"string","description_kind":"plain","optional":true},"read":{"type":"string","description_kind":"plain","optional":true},"update":{"type":"string","description_kind":"plain","optional":true}},"description_kind":"plain"}}},"description_kind":"plain"}},"yandex_storage_bucket":{"version":1,"block":{"attributes":{"access_key":{"type":"string","description_kind":"plain","optional":true},"acl":{"type":"string","description_kind":"plain","optional":true},"bucket":{"type":"string","description_kind":"plain","optional":true,"computed":true},"bucket_domain_name":{"type":"string","description_kind":"plain","computed":true},"bucket_prefix":{"type":"string","description_kind":"plain","optional":true},"default_storage_class":{"type":"string","description_kind":"plain","optional":true,"computed":true},"folder_id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"force_destroy":{"type":"bool","description_kind":"plain","optional":true},"id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"max_size":{"type":"number","description_kind":"plain","optional":true},"policy":{"type":"string","description_kind":"plain","optional":true},"secret_key":{"type":"string","description_kind":"plain","optional":true,"sensitive":true},"tags":{"type":["map","string"],"description_kind":"plain","optional":true},"website_domain":{"type":"string","description_kind":"plain","optional":true,"computed":true},"website_endpoint":{"type":"string","description_kind":"plain","optional":true,"computed":true}},"block_types":{"anonymous_access_flags":{"nesting_mode":"set","block":{"attributes":{"config_read":{"type":"bool","description_kind":"plain","optional":true},"list":{"type":"bool","description_kind":"plain","optional":true},"read":{"type":"bool","description_kind":"plain","optional":true}},"description_kind":"plain"},"max_items":1},"cors_rule":{"nesting_mode":"list","block":{"attributes":{"allowed_headers":{"type":["list","string"],"description_kind":"plain","optional":true},"allowed_methods":{"type":["list","string"],"description_kind":"plain","required":true},"allowed_origins":{"type":["list","string"],"description_kind":"plain","required":true},"expose_headers":{"type":["list","string"],"description_kind":"plain","optional":true},"max_age_seconds":{"type":"number","description_kind":"plain","optional":true}},"description_kind":"plain"}},"grant":{"nesting_mode":"set","block":{"attributes":{"id":{"type":"string","description_kind":"plain","optional":true},"permissions":{"type":["set","string"],"description_kind":"plain","required":true},"type":{"type":"string","description_kind":"plain","required":true},"uri":{"type":"string","description_kind":"plain","optional":true}},"description_kind":"plain"}},"https":{"nesting_mode":"set","block":{"attributes":{"certificate_id":{"type":"string","description_kind":"plain","required":true}},"description_kind":"plain"},"max_items":1},"lifecycle_rule":{"nesting_mode":"list","block":{"attributes":{"abort_incomplete_multipart_upload_days":{"type":"number","description_kind":"plain","optional":true},"enabled":{"type":"bool","description_kind":"plain","required":true},"id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"prefix":{"type":"string","description_kind":"plain","deprecated":true,"optional":true}},"block_types":{"expiration":{"nesting_mode":"list","block":{"attributes":{"date":{"type":"string","description_kind":"plain","optional":true},"days":{"type":"number","description_kind":"plain","optional":true},"expired_object_delete_marker":{"type":"bool","description_kind":"plain","optional":true}},"description_kind":"plain"},"max_items":1},"filter":{"nesting_mode":"list","block":{"attributes":{"object_size_greater_than":{"type":"number","description_kind":"plain","optional":true},"object_size_less_than":{"type":"number","description_kind":"plain","optional":true},"prefix":{"type":"string","description_kind":"plain","optional":true}},"block_types":{"and":{"nesting_mode":"list","block":{"attributes":{"object_size_greater_than":{"type":"number","description_kind":"plain","optional":true},"object_size_less_than":{"type":"number","description_kind":"plain","optional":true},"prefix":{"type":"string","description_kind":"plain","optional":true},"tags":{"type":["map","string"],"description_kind":"plain","optional":true}},"description_kind":"plain"},"max_items":1},"tag":{"nesting_mode":"list","block":{"attributes":{"key":{"type":"string","description_kind":"plain","required":true},"value":{"type":"string","description_kind":"plain","required":true}},"description_kind":"plain"},"max_items":1}},"description_kind":"plain"},"max_items":1},"noncurrent_version_expiration":{"nesting_mode":"list","block":{"attributes":{"days":{"type":"number","description_kind":"plain","optional":true}},"description_kind":"plain"},"max_items":1},"noncurrent_version_transition":{"nesting_mode":"set","block":{"attributes":{"days":{"type":"number","description_kind":"plain","optional":true},"storage_class":{"type":"string","description_kind":"plain","required":true}},"description_kind":"plain"}},"transition":{"nesting_mode":"set","block":{"attributes":{"date":{"type":"string","description_kind":"plain","optional":true},"days":{"type":"number","description_kind":"plain","optional":true},"storage_class":{"type":"string","description_kind":"plain","required":true}},"description_kind":"plain"}}},"description_kind":"plain"}},"logging":{"nesting_mode":"set","block":{"attributes":{"target_bucket":{"type":"string","description_kind":"plain","required":true},"target_prefix":{"type":"string","description_kind":"plain","optional":true}},"description_kind":"plain"}},"object_lock_configuration":{"nesting_mode":"list","block":{"attributes":{"object_lock_enabled":{"type":"string","description_kind":"plain","optional":true}},"block_types":{"rule":{"nesting_mode":"list","block":{"block_types":{"default_retention":{"nesting_mode":"list","block":{"attributes":{"days":{"type":"number","description_kind":"plain","optional":true},"mode":{"type":"string","description_kind":"plain","required":true},"years":{"type":"number","description_kind":"plain","optional":true}},"description_kind":"plain"},"min_items":1,"max_items":1}},"description_kind":"plain"},"max_items":1}},"description_kind":"plain"},"max_items":1},"server_side_encryption_configuration":{"nesting_mode":"list","block":{"block_types":{"rule":{"nesting_mode":"list","block":{"block_types":{"apply_server_side_encryption_by_default":{"nesting_mode":"list","block":{"attributes":{"kms_master_key_id":{"type":"string","description_kind":"plain","required":true},"sse_algorithm":{"type":"string","description_kind":"plain","required":true}},"description_kind":"plain"},"min_items":1,"max_items":1}},"description_kind":"plain"},"min_items":1,"max_items":1}},"description_kind":"plain"},"max_items":1},"versioning":{"nesting_mode":"list","block":{"attributes":{"enabled":{"type":"bool","description_kind":"plain","optional":true}},"description_kind":"plain"},"max_items":1},"website":{"nesting_mode":"list","block":{"attributes":{"error_document":{"type":"string","description_kind":"plain","optional":true},"index_document":{"type":"string","description_kind":"plain","optional":true},"redirect_all_requests_to":{"type":"string","description_kind":"plain","optional":true},"routing_rules":{"type":"string","description_kind":"plain","optional":true}},"description_kind":"plain"},"max_items":1}},"description_kind":"plain"}},"yandex_storage_object":{"version":0,"block":{"attributes":{"access_key":{"type":"string","description_kind":"plain","optional":true},"acl":{"type":"string","description_kind":"plain","optional":true},"bucket":{"type":"string","description_kind":"plain","required":true},"content":{"type":"string","description_kind":"plain","optional":true},"content_base64":{"type":"string","description_kind":"plain","optional":true},"content_type":{"type":"string","description_kind":"plain","optional":true,"computed":true},"id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"key":{"type":"string","description_kind":"plain","required":true},"object_lock_legal_hold_status":{"type":"string","description_kind":"plain","optional":true},"object_lock_mode":{"type":"string","description_kind":"plain","optional":true},"object_lock_retain_until_date":{"type":"string","description_kind":"plain","optional":true},"secret_key":{"type":"string","description_kind":"plain","optional":true,"sensitive":true},"source":{"type":"string","description_kind":"plain","optional":true},"source_hash":{"type":"string","description_kind":"plain","optional":true},"tags":{"type":["map","string"],"description_kind":"plain","optional":true}},"description_kind":"plain"}},"yandex_sws_security_profile":{"version":1,"block":{"attributes":{"captcha_id":{"type":"string","description_kind":"plain","optional":true},"cloud_id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"created_at":{"type":"string","description_kind":"plain","computed":true},"default_action":{"type":"string","description_kind":"plain","optional":true},"description":{"type":"string","description_kind":"plain","optional":true},"folder_id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"labels":{"type":["map","string"],"description_kind":"plain","optional":true},"name":{"type":"string","description_kind":"plain","optional":true}},"block_types":{"security_rule":{"nesting_mode":"list","block":{"attributes":{"description":{"type":"string","description_kind":"plain","optional":true},"dry_run":{"type":"bool","description_kind":"plain","optional":true},"name":{"type":"string","description_kind":"plain","optional":true},"priority":{"type":"number","description_kind":"plain","optional":true}},"block_types":{"rule_condition":{"nesting_mode":"list","block":{"attributes":{"action":{"type":"string","description_kind":"plain","optional":true}},"block_types":{"condition":{"nesting_mode":"list","block":{"block_types":{"authority":{"nesting_mode":"list","block":{"block_types":{"authorities":{"nesting_mode":"list","block":{"attributes":{"exact_match":{"type":"string","description_kind":"plain","optional":true},"exact_not_match":{"type":"string","description_kind":"plain","optional":true},"pire_regex_match":{"type":"string","description_kind":"plain","optional":true},"pire_regex_not_match":{"type":"string","description_kind":"plain","optional":true},"prefix_match":{"type":"string","description_kind":"plain","optional":true},"prefix_not_match":{"type":"string","description_kind":"plain","optional":true}},"description_kind":"plain"}}},"description_kind":"plain"},"max_items":1},"headers":{"nesting_mode":"list","block":{"attributes":{"name":{"type":"string","description_kind":"plain","optional":true}},"block_types":{"value":{"nesting_mode":"list","block":{"attributes":{"exact_match":{"type":"string","description_kind":"plain","optional":true},"exact_not_match":{"type":"string","description_kind":"plain","optional":true},"pire_regex_match":{"type":"string","description_kind":"plain","optional":true},"pire_regex_not_match":{"type":"string","description_kind":"plain","optional":true},"prefix_match":{"type":"string","description_kind":"plain","optional":true},"prefix_not_match":{"type":"string","description_kind":"plain","optional":true}},"description_kind":"plain"},"min_items":1,"max_items":1}},"description_kind":"plain"}},"http_method":{"nesting_mode":"list","block":{"block_types":{"http_methods":{"nesting_mode":"list","block":{"attributes":{"exact_match":{"type":"string","description_kind":"plain","optional":true},"exact_not_match":{"type":"string","description_kind":"plain","optional":true},"pire_regex_match":{"type":"string","description_kind":"plain","optional":true},"pire_regex_not_match":{"type":"string","description_kind":"plain","optional":true},"prefix_match":{"type":"string","description_kind":"plain","optional":true},"prefix_not_match":{"type":"string","description_kind":"plain","optional":true}},"description_kind":"plain"}}},"description_kind":"plain"},"max_items":1},"request_uri":{"nesting_mode":"list","block":{"block_types":{"path":{"nesting_mode":"list","block":{"attributes":{"exact_match":{"type":"string","description_kind":"plain","optional":true},"exact_not_match":{"type":"string","description_kind":"plain","optional":true},"pire_regex_match":{"type":"string","description_kind":"plain","optional":true},"pire_regex_not_match":{"type":"string","description_kind":"plain","optional":true},"prefix_match":{"type":"string","description_kind":"plain","optional":true},"prefix_not_match":{"type":"string","description_kind":"plain","optional":true}},"description_kind":"plain"},"max_items":1},"queries":{"nesting_mode":"list","block":{"attributes":{"key":{"type":"string","description_kind":"plain","required":true}},"block_types":{"value":{"nesting_mode":"list","block":{"attributes":{"exact_match":{"type":"string","description_kind":"plain","optional":true},"exact_not_match":{"type":"string","description_kind":"plain","optional":true},"pire_regex_match":{"type":"string","description_kind":"plain","optional":true},"pire_regex_not_match":{"type":"string","description_kind":"plain","optional":true},"prefix_match":{"type":"string","description_kind":"plain","optional":true},"prefix_not_match":{"type":"string","description_kind":"plain","optional":true}},"description_kind":"plain"},"min_items":1,"max_items":1}},"description_kind":"plain"}}},"description_kind":"plain"},"max_items":1},"source_ip":{"nesting_mode":"list","block":{"block_types":{"geo_ip_match":{"nesting_mode":"list","block":{"attributes":{"locations":{"type":["list","string"],"description_kind":"plain","optional":true}},"description_kind":"plain"},"max_items":1},"geo_ip_not_match":{"nesting_mode":"list","block":{"attributes":{"locations":{"type":["list","string"],"description_kind":"plain","optional":true}},"description_kind":"plain"},"max_items":1},"ip_ranges_match":{"nesting_mode":"list","block":{"attributes":{"ip_ranges":{"type":["list","string"],"description_kind":"plain","optional":true}},"description_kind":"plain"},"max_items":1},"ip_ranges_not_match":{"nesting_mode":"list","block":{"attributes":{"ip_ranges":{"type":["list","string"],"description_kind":"plain","optional":true}},"description_kind":"plain"},"max_items":1}},"description_kind":"plain"},"max_items":1}},"description_kind":"plain"},"max_items":1}},"description_kind":"plain"},"max_items":1},"smart_protection":{"nesting_mode":"list","block":{"attributes":{"mode":{"type":"string","description_kind":"plain","optional":true}},"block_types":{"condition":{"nesting_mode":"list","block":{"block_types":{"authority":{"nesting_mode":"list","block":{"block_types":{"authorities":{"nesting_mode":"list","block":{"attributes":{"exact_match":{"type":"string","description_kind":"plain","optional":true},"exact_not_match":{"type":"string","description_kind":"plain","optional":true},"pire_regex_match":{"type":"string","description_kind":"plain","optional":true},"pire_regex_not_match":{"type":"string","description_kind":"plain","optional":true},"prefix_match":{"type":"string","description_kind":"plain","optional":true},"prefix_not_match":{"type":"string","description_kind":"plain","optional":true}},"description_kind":"plain"}}},"description_kind":"plain"},"max_items":1},"headers":{"nesting_mode":"list","block":{"attributes":{"name":{"type":"string","description_kind":"plain","optional":true}},"block_types":{"value":{"nesting_mode":"list","block":{"attributes":{"exact_match":{"type":"string","description_kind":"plain","optional":true},"exact_not_match":{"type":"string","description_kind":"plain","optional":true},"pire_regex_match":{"type":"string","description_kind":"plain","optional":true},"pire_regex_not_match":{"type":"string","description_kind":"plain","optional":true},"prefix_match":{"type":"string","description_kind":"plain","optional":true},"prefix_not_match":{"type":"string","description_kind":"plain","optional":true}},"description_kind":"plain"},"min_items":1,"max_items":1}},"description_kind":"plain"}},"http_method":{"nesting_mode":"list","block":{"block_types":{"http_methods":{"nesting_mode":"list","block":{"attributes":{"exact_match":{"type":"string","description_kind":"plain","optional":true},"exact_not_match":{"type":"string","description_kind":"plain","optional":true},"pire_regex_match":{"type":"string","description_kind":"plain","optional":true},"pire_regex_not_match":{"type":"string","description_kind":"plain","optional":true},"prefix_match":{"type":"string","description_kind":"plain","optional":true},"prefix_not_match":{"type":"string","description_kind":"plain","optional":true}},"description_kind":"plain"}}},"description_kind":"plain"},"max_items":1},"request_uri":{"nesting_mode":"list","block":{"block_types":{"path":{"nesting_mode":"list","block":{"attributes":{"exact_match":{"type":"string","description_kind":"plain","optional":true},"exact_not_match":{"type":"string","description_kind":"plain","optional":true},"pire_regex_match":{"type":"string","description_kind":"plain","optional":true},"pire_regex_not_match":{"type":"string","description_kind":"plain","optional":true},"prefix_match":{"type":"string","description_kind":"plain","optional":true},"prefix_not_match":{"type":"string","description_kind":"plain","optional":true}},"description_kind":"plain"},"max_items":1},"queries":{"nesting_mode":"list","block":{"attributes":{"key":{"type":"string","description_kind":"plain","required":true}},"block_types":{"value":{"nesting_mode":"list","block":{"attributes":{"exact_match":{"type":"string","description_kind":"plain","optional":true},"exact_not_match":{"type":"string","description_kind":"plain","optional":true},"pire_regex_match":{"type":"string","description_kind":"plain","optional":true},"pire_regex_not_match":{"type":"string","description_kind":"plain","optional":true},"prefix_match":{"type":"string","description_kind":"plain","optional":true},"prefix_not_match":{"type":"string","description_kind":"plain","optional":true}},"description_kind":"plain"},"min_items":1,"max_items":1}},"description_kind":"plain"}}},"description_kind":"plain"},"max_items":1},"source_ip":{"nesting_mode":"list","block":{"block_types":{"geo_ip_match":{"nesting_mode":"list","block":{"attributes":{"locations":{"type":["list","string"],"description_kind":"plain","optional":true}},"description_kind":"plain"},"max_items":1},"geo_ip_not_match":{"nesting_mode":"list","block":{"attributes":{"locations":{"type":["list","string"],"description_kind":"plain","optional":true}},"description_kind":"plain"},"max_items":1},"ip_ranges_match":{"nesting_mode":"list","block":{"attributes":{"ip_ranges":{"type":["list","string"],"description_kind":"plain","optional":true}},"description_kind":"plain"},"max_items":1},"ip_ranges_not_match":{"nesting_mode":"list","block":{"attributes":{"ip_ranges":{"type":["list","string"],"description_kind":"plain","optional":true}},"description_kind":"plain"},"max_items":1}},"description_kind":"plain"},"max_items":1}},"description_kind":"plain"},"max_items":1}},"description_kind":"plain"},"max_items":1}},"description_kind":"plain"}},"timeouts":{"nesting_mode":"single","block":{"attributes":{"create":{"type":"string","description_kind":"plain","optional":true},"delete":{"type":"string","description_kind":"plain","optional":true},"read":{"type":"string","description_kind":"plain","optional":true},"update":{"type":"string","description_kind":"plain","optional":true}},"description_kind":"plain"}}},"description_kind":"plain"}},"yandex_vpc_address":{"version":0,"block":{"attributes":{"created_at":{"type":"string","description_kind":"plain","computed":true},"deletion_protection":{"type":"bool","description_kind":"plain","optional":true,"computed":true},"description":{"type":"string","description_kind":"plain","optional":true},"folder_id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"labels":{"type":["map","string"],"description_kind":"plain","optional":true,"computed":true},"name":{"type":"string","description_kind":"plain","optional":true,"computed":true},"reserved":{"type":"bool","description_kind":"plain","computed":true},"used":{"type":"bool","description_kind":"plain","computed":true}},"block_types":{"dns_record":{"nesting_mode":"list","block":{"attributes":{"dns_zone_id":{"type":"string","description_kind":"plain","required":true},"fqdn":{"type":"string","description_kind":"plain","required":true},"ptr":{"type":"bool","description_kind":"plain","optional":true},"ttl":{"type":"number","description_kind":"plain","optional":true}},"description_kind":"plain"}},"external_ipv4_address":{"nesting_mode":"list","block":{"attributes":{"address":{"type":"string","description_kind":"plain","computed":true},"ddos_protection_provider":{"type":"string","description_kind":"plain","optional":true,"computed":true},"outgoing_smtp_capability":{"type":"string","description_kind":"plain","optional":true,"computed":true},"zone_id":{"type":"string","description_kind":"plain","optional":true,"computed":true}},"description_kind":"plain"},"max_items":1},"timeouts":{"nesting_mode":"single","block":{"attributes":{"create":{"type":"string","description_kind":"plain","optional":true},"delete":{"type":"string","description_kind":"plain","optional":true},"update":{"type":"string","description_kind":"plain","optional":true}},"description_kind":"plain"}}},"description_kind":"plain"}},"yandex_vpc_default_security_group":{"version":0,"block":{"attributes":{"created_at":{"type":"string","description_kind":"plain","computed":true},"description":{"type":"string","description_kind":"plain","optional":true},"folder_id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"labels":{"type":["map","string"],"description_kind":"plain","optional":true,"computed":true},"name":{"type":"string","description_kind":"plain","computed":true},"network_id":{"type":"string","description_kind":"plain","required":true},"status":{"type":"string","description_kind":"plain","computed":true}},"block_types":{"egress":{"nesting_mode":"set","block":{"attributes":{"description":{"type":"string","description_kind":"plain","optional":true},"from_port":{"type":"number","description_kind":"plain","optional":true},"id":{"type":"string","description_kind":"plain","computed":true},"labels":{"type":["map","string"],"description_kind":"plain","optional":true,"computed":true},"port":{"type":"number","description_kind":"plain","optional":true},"predefined_target":{"type":"string","description_kind":"plain","optional":true},"protocol":{"type":"string","description_kind":"plain","required":true},"security_group_id":{"type":"string","description_kind":"plain","optional":true},"to_port":{"type":"number","description_kind":"plain","optional":true},"v4_cidr_blocks":{"type":["list","string"],"description_kind":"plain","optional":true},"v6_cidr_blocks":{"type":["list","string"],"description_kind":"plain","optional":true}},"description_kind":"plain"}},"ingress":{"nesting_mode":"set","block":{"attributes":{"description":{"type":"string","description_kind":"plain","optional":true},"from_port":{"type":"number","description_kind":"plain","optional":true},"id":{"type":"string","description_kind":"plain","computed":true},"labels":{"type":["map","string"],"description_kind":"plain","optional":true,"computed":true},"port":{"type":"number","description_kind":"plain","optional":true},"predefined_target":{"type":"string","description_kind":"plain","optional":true},"protocol":{"type":"string","description_kind":"plain","required":true},"security_group_id":{"type":"string","description_kind":"plain","optional":true},"to_port":{"type":"number","description_kind":"plain","optional":true},"v4_cidr_blocks":{"type":["list","string"],"description_kind":"plain","optional":true},"v6_cidr_blocks":{"type":["list","string"],"description_kind":"plain","optional":true}},"description_kind":"plain"}},"timeouts":{"nesting_mode":"single","block":{"attributes":{"create":{"type":"string","description_kind":"plain","optional":true},"delete":{"type":"string","description_kind":"plain","optional":true},"read":{"type":"string","description_kind":"plain","optional":true},"update":{"type":"string","description_kind":"plain","optional":true}},"description_kind":"plain"}}},"description_kind":"plain"}},"yandex_vpc_gateway":{"version":0,"block":{"attributes":{"created_at":{"type":"string","description_kind":"plain","computed":true},"description":{"type":"string","description_kind":"plain","optional":true},"folder_id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"labels":{"type":["map","string"],"description_kind":"plain","optional":true,"computed":true},"name":{"type":"string","description_kind":"plain","optional":true,"computed":true}},"block_types":{"shared_egress_gateway":{"nesting_mode":"list","block":{"description_kind":"plain"},"max_items":1},"timeouts":{"nesting_mode":"single","block":{"attributes":{"create":{"type":"string","description_kind":"plain","optional":true},"delete":{"type":"string","description_kind":"plain","optional":true},"update":{"type":"string","description_kind":"plain","optional":true}},"description_kind":"plain"}}},"description_kind":"plain"}},"yandex_vpc_network":{"version":0,"block":{"attributes":{"created_at":{"type":"string","description_kind":"plain","computed":true},"default_security_group_id":{"type":"string","description_kind":"plain","computed":true},"description":{"type":"string","description_kind":"plain","optional":true},"folder_id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"labels":{"type":["map","string"],"description_kind":"plain","optional":true,"computed":true},"name":{"type":"string","description_kind":"plain","optional":true,"computed":true},"subnet_ids":{"type":["list","string"],"description_kind":"plain","computed":true}},"block_types":{"timeouts":{"nesting_mode":"single","block":{"attributes":{"create":{"type":"string","description_kind":"plain","optional":true},"delete":{"type":"string","description_kind":"plain","optional":true},"update":{"type":"string","description_kind":"plain","optional":true}},"description_kind":"plain"}}},"description_kind":"plain"}},"yandex_vpc_route_table":{"version":0,"block":{"attributes":{"created_at":{"type":"string","description_kind":"plain","computed":true},"description":{"type":"string","description_kind":"plain","optional":true},"folder_id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"labels":{"type":["map","string"],"description_kind":"plain","optional":true,"computed":true},"name":{"type":"string","description_kind":"plain","optional":true},"network_id":{"type":"string","description_kind":"plain","required":true}},"block_types":{"static_route":{"nesting_mode":"set","block":{"attributes":{"destination_prefix":{"type":"string","description_kind":"plain","optional":true},"gateway_id":{"type":"string","description_kind":"plain","optional":true},"next_hop_address":{"type":"string","description_kind":"plain","optional":true}},"description_kind":"plain"}},"timeouts":{"nesting_mode":"single","block":{"attributes":{"create":{"type":"string","description_kind":"plain","optional":true},"delete":{"type":"string","description_kind":"plain","optional":true},"update":{"type":"string","description_kind":"plain","optional":true}},"description_kind":"plain"}}},"description_kind":"plain"}},"yandex_vpc_security_group":{"version":0,"block":{"attributes":{"created_at":{"type":"string","description_kind":"plain","computed":true},"description":{"type":"string","description_kind":"plain","optional":true},"folder_id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"labels":{"type":["map","string"],"description_kind":"plain","optional":true,"computed":true},"name":{"type":"string","description_kind":"plain","optional":true},"network_id":{"type":"string","description_kind":"plain","required":true},"status":{"type":"string","description_kind":"plain","computed":true}},"block_types":{"egress":{"nesting_mode":"set","block":{"attributes":{"description":{"type":"string","description_kind":"plain","optional":true},"from_port":{"type":"number","description_kind":"plain","optional":true},"id":{"type":"string","description_kind":"plain","computed":true},"labels":{"type":["map","string"],"description_kind":"plain","optional":true,"computed":true},"port":{"type":"number","description_kind":"plain","optional":true},"predefined_target":{"type":"string","description_kind":"plain","optional":true},"protocol":{"type":"string","description_kind":"plain","required":true},"security_group_id":{"type":"string","description_kind":"plain","optional":true},"to_port":{"type":"number","description_kind":"plain","optional":true},"v4_cidr_blocks":{"type":["list","string"],"description_kind":"plain","optional":true},"v6_cidr_blocks":{"type":["list","string"],"description_kind":"plain","optional":true}},"description_kind":"plain"}},"ingress":{"nesting_mode":"set","block":{"attributes":{"description":{"type":"string","description_kind":"plain","optional":true},"from_port":{"type":"number","description_kind":"plain","optional":true},"id":{"type":"string","description_kind":"plain","computed":true},"labels":{"type":["map","string"],"description_kind":"plain","optional":true,"computed":true},"port":{"type":"number","description_kind":"plain","optional":true},"predefined_target":{"type":"string","description_kind":"plain","optional":true},"protocol":{"type":"string","description_kind":"plain","required":true},"security_group_id":{"type":"string","description_kind":"plain","optional":true},"to_port":{"type":"number","description_kind":"plain","optional":true},"v4_cidr_blocks":{"type":["list","string"],"description_kind":"plain","optional":true},"v6_cidr_blocks":{"type":["list","string"],"description_kind":"plain","optional":true}},"description_kind":"plain"}},"timeouts":{"nesting_mode":"single","block":{"attributes":{"create":{"type":"string","description_kind":"plain","optional":true},"delete":{"type":"string","description_kind":"plain","optional":true},"update":{"type":"string","description_kind":"plain","optional":true}},"description_kind":"plain"}}},"description_kind":"plain"}},"yandex_vpc_security_group_rule":{"version":0,"block":{"attributes":{"description":{"type":"string","description_kind":"plain","optional":true},"direction":{"type":"string","description_kind":"plain","required":true},"from_port":{"type":"number","description_kind":"plain","optional":true},"id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"labels":{"type":["map","string"],"description_kind":"plain","optional":true,"computed":true},"port":{"type":"number","description_kind":"plain","optional":true},"predefined_target":{"type":"string","description_kind":"plain","optional":true},"protocol":{"type":"string","description_kind":"plain","optional":true},"security_group_binding":{"type":"string","description_kind":"plain","required":true},"security_group_id":{"type":"string","description_kind":"plain","optional":true},"to_port":{"type":"number","description_kind":"plain","optional":true},"v4_cidr_blocks":{"type":["list","string"],"description_kind":"plain","optional":true},"v6_cidr_blocks":{"type":["list","string"],"description_kind":"plain","optional":true}},"block_types":{"timeouts":{"nesting_mode":"single","block":{"attributes":{"create":{"type":"string","description_kind":"plain","optional":true},"delete":{"type":"string","description_kind":"plain","optional":true},"read":{"type":"string","description_kind":"plain","optional":true},"update":{"type":"string","description_kind":"plain","optional":true}},"description_kind":"plain"}}},"description_kind":"plain"}},"yandex_vpc_subnet":{"version":0,"block":{"attributes":{"created_at":{"type":"string","description_kind":"plain","computed":true},"description":{"type":"string","description_kind":"plain","optional":true},"folder_id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"labels":{"type":["map","string"],"description_kind":"plain","optional":true,"computed":true},"name":{"type":"string","description_kind":"plain","optional":true,"computed":true},"network_id":{"type":"string","description_kind":"plain","required":true},"route_table_id":{"type":"string","description_kind":"plain","optional":true},"v4_cidr_blocks":{"type":["list","string"],"description_kind":"plain","required":true},"v6_cidr_blocks":{"type":["list","string"],"description_kind":"plain","computed":true},"zone":{"type":"string","description_kind":"plain","optional":true,"computed":true}},"block_types":{"dhcp_options":{"nesting_mode":"list","block":{"attributes":{"domain_name":{"type":"string","description_kind":"plain","optional":true},"domain_name_servers":{"type":["list","string"],"description_kind":"plain","optional":true},"ntp_servers":{"type":["list","string"],"description_kind":"plain","optional":true}},"description_kind":"plain"},"max_items":1},"timeouts":{"nesting_mode":"single","block":{"attributes":{"create":{"type":"string","description_kind":"plain","optional":true},"delete":{"type":"string","description_kind":"plain","optional":true},"update":{"type":"string","description_kind":"plain","optional":true}},"description_kind":"plain"}}},"description_kind":"plain"}},"yandex_ydb_database_dedicated":{"version":0,"block":{"attributes":{"assign_public_ips":{"type":"bool","description_kind":"plain","optional":true},"created_at":{"type":"string","description_kind":"plain","computed":true},"database_path":{"type":"string","description_kind":"plain","computed":true},"deletion_protection":{"type":"bool","description_kind":"plain","optional":true},"description":{"type":"string","description_kind":"plain","optional":true},"folder_id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"labels":{"type":["map","string"],"description_kind":"plain","optional":true},"location_id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"name":{"type":"string","description_kind":"plain","required":true},"network_id":{"type":"string","description_kind":"plain","required":true},"resource_preset_id":{"type":"string","description_kind":"plain","required":true},"sleep_after":{"type":"number","description_kind":"plain","optional":true},"status":{"type":"string","description_kind":"plain","computed":true},"subnet_ids":{"type":["set","string"],"description_kind":"plain","required":true},"tls_enabled":{"type":"bool","description_kind":"plain","computed":true},"ydb_api_endpoint":{"type":"string","description_kind":"plain","computed":true},"ydb_full_endpoint":{"type":"string","description_kind":"plain","computed":true}},"block_types":{"location":{"nesting_mode":"list","block":{"block_types":{"region":{"nesting_mode":"list","block":{"attributes":{"id":{"type":"string","description_kind":"plain","required":true}},"description_kind":"plain"},"max_items":1}},"description_kind":"plain"},"max_items":1},"scale_policy":{"nesting_mode":"list","block":{"block_types":{"fixed_scale":{"nesting_mode":"list","block":{"attributes":{"size":{"type":"number","description_kind":"plain","required":true}},"description_kind":"plain"},"min_items":1,"max_items":1}},"description_kind":"plain"},"min_items":1,"max_items":1},"storage_config":{"nesting_mode":"list","block":{"attributes":{"group_count":{"type":"number","description_kind":"plain","required":true},"storage_type_id":{"type":"string","description_kind":"plain","required":true}},"description_kind":"plain"},"min_items":1,"max_items":1},"timeouts":{"nesting_mode":"single","block":{"attributes":{"default":{"type":"string","description_kind":"plain","optional":true}},"description_kind":"plain"}}},"description_kind":"plain"}},"yandex_ydb_database_iam_binding":{"version":0,"block":{"attributes":{"database_id":{"type":"string","description_kind":"plain","required":true},"id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"members":{"type":["set","string"],"description_kind":"plain","required":true},"role":{"type":"string","description_kind":"plain","required":true},"sleep_after":{"type":"number","description_kind":"plain","optional":true}},"block_types":{"timeouts":{"nesting_mode":"single","block":{"attributes":{"default":{"type":"string","description_kind":"plain","optional":true}},"description_kind":"plain"}}},"description_kind":"plain"}},"yandex_ydb_database_serverless":{"version":0,"block":{"attributes":{"created_at":{"type":"string","description_kind":"plain","computed":true},"database_path":{"type":"string","description_kind":"plain","computed":true},"deletion_protection":{"type":"bool","description_kind":"plain","optional":true},"description":{"type":"string","description_kind":"plain","optional":true},"document_api_endpoint":{"type":"string","description_kind":"plain","computed":true},"folder_id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"labels":{"type":["map","string"],"description_kind":"plain","optional":true},"location_id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"name":{"type":"string","description_kind":"plain","required":true},"sleep_after":{"type":"number","description_kind":"plain","optional":true},"status":{"type":"string","description_kind":"plain","computed":true},"tls_enabled":{"type":"bool","description_kind":"plain","computed":true},"ydb_api_endpoint":{"type":"string","description_kind":"plain","computed":true},"ydb_full_endpoint":{"type":"string","description_kind":"plain","computed":true}},"block_types":{"serverless_database":{"nesting_mode":"set","block":{"attributes":{"enable_throttling_rcu_limit":{"type":"bool","description_kind":"plain","optional":true,"computed":true},"provisioned_rcu_limit":{"type":"number","description_kind":"plain","optional":true,"computed":true},"storage_size_limit":{"type":"number","description_kind":"plain","optional":true,"computed":true},"throttling_rcu_limit":{"type":"number","description_kind":"plain","optional":true,"computed":true}},"description_kind":"plain"}},"timeouts":{"nesting_mode":"single","block":{"attributes":{"default":{"type":"string","description_kind":"plain","optional":true}},"description_kind":"plain"}}},"description_kind":"plain"}},"yandex_ydb_table":{"version":0,"block":{"attributes":{"attributes":{"type":["map","string"],"description_kind":"plain","optional":true,"computed":true},"connection_string":{"type":"string","description_kind":"plain","required":true},"id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"key_bloom_filter":{"type":"bool","description_kind":"plain","optional":true,"computed":true},"path":{"type":"string","description_kind":"plain","required":true},"primary_key":{"type":["list","string"],"description_kind":"plain","required":true},"read_replicas_settings":{"type":"string","description_kind":"plain","optional":true,"computed":true}},"block_types":{"column":{"nesting_mode":"set","block":{"attributes":{"family":{"type":"string","description_kind":"plain","optional":true,"computed":true},"name":{"type":"string","description_kind":"plain","required":true},"not_null":{"type":"bool","description_kind":"plain","optional":true,"computed":true},"type":{"type":"string","description_kind":"plain","required":true}},"description_kind":"plain"},"min_items":1},"family":{"nesting_mode":"list","block":{"attributes":{"compression":{"type":"string","description_kind":"plain","required":true},"data":{"type":"string","description_kind":"plain","required":true},"name":{"type":"string","description_kind":"plain","required":true}},"description_kind":"plain"}},"partitioning_settings":{"nesting_mode":"list","block":{"attributes":{"auto_partitioning_by_load":{"type":"bool","description_kind":"plain","optional":true},"auto_partitioning_by_size_enabled":{"type":"bool","description_kind":"plain","optional":true},"auto_partitioning_max_partitions_count":{"type":"number","description_kind":"plain","optional":true,"computed":true},"auto_partitioning_min_partitions_count":{"type":"number","description_kind":"plain","optional":true,"computed":true},"auto_partitioning_partition_size_mb":{"type":"number","description_kind":"plain","optional":true,"computed":true},"uniform_partitions":{"type":"number","description_kind":"plain","optional":true,"computed":true}},"block_types":{"partition_at_keys":{"nesting_mode":"list","block":{"attributes":{"keys":{"type":["list","string"],"description_kind":"plain","required":true}},"description_kind":"plain"}}},"description_kind":"plain"},"max_items":1},"timeouts":{"nesting_mode":"single","block":{"attributes":{"create":{"type":"string","description_kind":"plain","optional":true},"default":{"type":"string","description_kind":"plain","optional":true},"delete":{"type":"string","description_kind":"plain","optional":true},"read":{"type":"string","description_kind":"plain","optional":true},"update":{"type":"string","description_kind":"plain","optional":true}},"description_kind":"plain"}},"ttl":{"nesting_mode":"set","block":{"attributes":{"column_name":{"type":"string","description_kind":"plain","required":true},"expire_interval":{"type":"string","description_kind":"plain","required":true},"unit":{"type":"string","description_kind":"plain","optional":true,"computed":true}},"description_kind":"plain"}}},"description_kind":"plain"}},"yandex_ydb_table_changefeed":{"version":0,"block":{"attributes":{"connection_string":{"type":"string","description_kind":"plain","optional":true,"computed":true},"format":{"type":"string","description_kind":"plain","required":true},"id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"mode":{"type":"string","description_kind":"plain","required":true},"name":{"type":"string","description_kind":"plain","required":true},"retention_period":{"type":"string","description_kind":"plain","optional":true},"table_id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"table_path":{"type":"string","description_kind":"plain","optional":true,"computed":true},"virtual_timestamps":{"type":"bool","description_kind":"plain","optional":true}},"block_types":{"consumer":{"nesting_mode":"set","block":{"attributes":{"name":{"type":"string","description_kind":"plain","required":true},"starting_message_timestamp_ms":{"type":"number","description_kind":"plain","optional":true,"computed":true},"supported_codecs":{"type":["set","string"],"description_kind":"plain","optional":true,"computed":true}},"description_kind":"plain"}},"timeouts":{"nesting_mode":"single","block":{"attributes":{"create":{"type":"string","description_kind":"plain","optional":true},"default":{"type":"string","description_kind":"plain","optional":true},"delete":{"type":"string","description_kind":"plain","optional":true},"read":{"type":"string","description_kind":"plain","optional":true},"update":{"type":"string","description_kind":"plain","optional":true}},"description_kind":"plain"}}},"description_kind":"plain"}},"yandex_ydb_table_index":{"version":0,"block":{"attributes":{"columns":{"type":["list","string"],"description_kind":"plain","required":true},"connection_string":{"type":"string","description_kind":"plain","optional":true,"computed":true},"cover":{"type":["list","string"],"description_kind":"plain","optional":true},"id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"name":{"type":"string","description_kind":"plain","required":true},"table_id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"table_path":{"type":"string","description_kind":"plain","optional":true,"computed":true},"type":{"type":"string","description_kind":"plain","required":true}},"block_types":{"timeouts":{"nesting_mode":"single","block":{"attributes":{"create":{"type":"string","description_kind":"plain","optional":true},"default":{"type":"string","description_kind":"plain","optional":true},"delete":{"type":"string","description_kind":"plain","optional":true},"read":{"type":"string","description_kind":"plain","optional":true},"update":{"type":"string","description_kind":"plain","optional":true}},"description_kind":"plain"}}},"description_kind":"plain"}},"yandex_ydb_topic":{"version":0,"block":{"attributes":{"database_endpoint":{"type":"string","description_kind":"plain","required":true},"description":{"type":"string","description_kind":"plain","optional":true},"id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"metering_mode":{"type":"string","description_kind":"plain","optional":true,"computed":true},"name":{"type":"string","description_kind":"plain","required":true},"partition_write_speed_kbps":{"type":"number","description_kind":"plain","optional":true,"computed":true},"partitions_count":{"type":"number","description_kind":"plain","optional":true,"computed":true},"retention_period_hours":{"type":"number","description_kind":"plain","optional":true,"computed":true},"retention_storage_mb":{"type":"number","description_kind":"plain","optional":true,"computed":true},"supported_codecs":{"type":["set","string"],"description_kind":"plain","optional":true,"computed":true}},"block_types":{"consumer":{"nesting_mode":"set","block":{"attributes":{"important":{"type":"bool","description_kind":"plain","optional":true,"computed":true},"name":{"type":"string","description_kind":"plain","required":true},"starting_message_timestamp_ms":{"type":"number","description_kind":"plain","optional":true,"computed":true},"supported_codecs":{"type":["set","string"],"description_kind":"plain","optional":true,"computed":true}},"description_kind":"plain"}},"timeouts":{"nesting_mode":"single","block":{"attributes":{"create":{"type":"string","description_kind":"plain","optional":true},"default":{"type":"string","description_kind":"plain","optional":true},"delete":{"type":"string","description_kind":"plain","optional":true},"read":{"type":"string","description_kind":"plain","optional":true},"update":{"type":"string","description_kind":"plain","optional":true}},"description_kind":"plain"}}},"description_kind":"plain"}}},"data_source_schemas":{"yandex_alb_backend_group":{"version":0,"block":{"attributes":{"backend_group_id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"created_at":{"type":"string","description_kind":"plain","computed":true},"description":{"type":"string","description_kind":"plain","optional":true,"computed":true},"folder_id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"labels":{"type":["map","string"],"description_kind":"plain","optional":true,"computed":true},"name":{"type":"string","description_kind":"plain","optional":true,"computed":true}},"block_types":{"grpc_backend":{"nesting_mode":"list","block":{"attributes":{"name":{"type":"string","description_kind":"plain","computed":true},"port":{"type":"number","description_kind":"plain","optional":true,"computed":true},"target_group_ids":{"type":["list","string"],"description_kind":"plain","computed":true},"weight":{"type":"number","description_kind":"plain","optional":true,"computed":true}},"block_types":{"healthcheck":{"nesting_mode":"list","block":{"attributes":{"healthcheck_port":{"type":"number","description_kind":"plain","optional":true,"computed":true},"healthy_threshold":{"type":"number","description_kind":"plain","optional":true,"computed":true},"interval":{"type":"string","description_kind":"plain","computed":true},"interval_jitter_percent":{"type":"number","description_kind":"plain","optional":true,"computed":true},"timeout":{"type":"string","description_kind":"plain","computed":true},"unhealthy_threshold":{"type":"number","description_kind":"plain","optional":true,"computed":true}},"block_types":{"grpc_healthcheck":{"nesting_mode":"list","block":{"attributes":{"service_name":{"type":"string","description_kind":"plain","optional":true,"computed":true}},"description_kind":"plain"},"max_items":1},"http_healthcheck":{"nesting_mode":"list","block":{"attributes":{"host":{"type":"string","description_kind":"plain","optional":true,"computed":true},"http2":{"type":"bool","description_kind":"plain","optional":true,"computed":true},"path":{"type":"string","description_kind":"plain","computed":true}},"description_kind":"plain"},"max_items":1},"stream_healthcheck":{"nesting_mode":"list","block":{"attributes":{"receive":{"type":"string","description_kind":"plain","optional":true,"computed":true},"send":{"type":"string","description_kind":"plain","optional":true,"computed":true}},"description_kind":"plain"},"max_items":1}},"description_kind":"plain"},"max_items":1},"load_balancing_config":{"nesting_mode":"list","block":{"attributes":{"locality_aware_routing_percent":{"type":"number","description_kind":"plain","optional":true,"computed":true},"mode":{"type":"string","description_kind":"plain","optional":true,"computed":true},"panic_threshold":{"type":"number","description_kind":"plain","optional":true,"computed":true},"strict_locality":{"type":"bool","description_kind":"plain","optional":true,"computed":true}},"description_kind":"plain"},"max_items":1},"tls":{"nesting_mode":"list","block":{"attributes":{"sni":{"type":"string","description_kind":"plain","optional":true,"computed":true}},"block_types":{"validation_context":{"nesting_mode":"list","block":{"attributes":{"trusted_ca_bytes":{"type":"string","description_kind":"plain","optional":true,"computed":true},"trusted_ca_id":{"type":"string","description_kind":"plain","optional":true,"computed":true}},"description_kind":"plain"},"max_items":1}},"description_kind":"plain"},"max_items":1}},"description_kind":"plain"}},"http_backend":{"nesting_mode":"list","block":{"attributes":{"http2":{"type":"bool","description_kind":"plain","optional":true,"computed":true},"name":{"type":"string","description_kind":"plain","computed":true},"port":{"type":"number","description_kind":"plain","optional":true,"computed":true},"storage_bucket":{"type":"string","description_kind":"plain","optional":true,"computed":true},"target_group_ids":{"type":["list","string"],"description_kind":"plain","optional":true,"computed":true},"weight":{"type":"number","description_kind":"plain","optional":true,"computed":true}},"block_types":{"healthcheck":{"nesting_mode":"list","block":{"attributes":{"healthcheck_port":{"type":"number","description_kind":"plain","optional":true,"computed":true},"healthy_threshold":{"type":"number","description_kind":"plain","optional":true,"computed":true},"interval":{"type":"string","description_kind":"plain","computed":true},"interval_jitter_percent":{"type":"number","description_kind":"plain","optional":true,"computed":true},"timeout":{"type":"string","description_kind":"plain","computed":true},"unhealthy_threshold":{"type":"number","description_kind":"plain","optional":true,"computed":true}},"block_types":{"grpc_healthcheck":{"nesting_mode":"list","block":{"attributes":{"service_name":{"type":"string","description_kind":"plain","optional":true,"computed":true}},"description_kind":"plain"},"max_items":1},"http_healthcheck":{"nesting_mode":"list","block":{"attributes":{"host":{"type":"string","description_kind":"plain","optional":true,"computed":true},"http2":{"type":"bool","description_kind":"plain","optional":true,"computed":true},"path":{"type":"string","description_kind":"plain","computed":true}},"description_kind":"plain"},"max_items":1},"stream_healthcheck":{"nesting_mode":"list","block":{"attributes":{"receive":{"type":"string","description_kind":"plain","optional":true,"computed":true},"send":{"type":"string","description_kind":"plain","optional":true,"computed":true}},"description_kind":"plain"},"max_items":1}},"description_kind":"plain"},"max_items":1},"load_balancing_config":{"nesting_mode":"list","block":{"attributes":{"locality_aware_routing_percent":{"type":"number","description_kind":"plain","optional":true,"computed":true},"mode":{"type":"string","description_kind":"plain","optional":true,"computed":true},"panic_threshold":{"type":"number","description_kind":"plain","optional":true,"computed":true},"strict_locality":{"type":"bool","description_kind":"plain","optional":true,"computed":true}},"description_kind":"plain"},"max_items":1},"tls":{"nesting_mode":"list","block":{"attributes":{"sni":{"type":"string","description_kind":"plain","optional":true,"computed":true}},"block_types":{"validation_context":{"nesting_mode":"list","block":{"attributes":{"trusted_ca_bytes":{"type":"string","description_kind":"plain","optional":true,"computed":true},"trusted_ca_id":{"type":"string","description_kind":"plain","optional":true,"computed":true}},"description_kind":"plain"},"max_items":1}},"description_kind":"plain"},"max_items":1}},"description_kind":"plain"}},"session_affinity":{"nesting_mode":"list","block":{"block_types":{"connection":{"nesting_mode":"list","block":{"attributes":{"source_ip":{"type":"bool","description":"Use source IP address","description_kind":"plain","optional":true,"computed":true}},"description":"IP address affinity","description_kind":"plain"},"max_items":1},"cookie":{"nesting_mode":"list","block":{"attributes":{"name":{"type":"string","description":"Name of the HTTP cookie","description_kind":"plain","computed":true},"ttl":{"type":"string","description":"TTL for the cookie (if not set, session cookie will be used)","description_kind":"plain","optional":true,"computed":true}},"description":"Cookie affinity","description_kind":"plain"},"max_items":1},"header":{"nesting_mode":"list","block":{"attributes":{"header_name":{"type":"string","description":"The name of the request header that will be used","description_kind":"plain","computed":true}},"description":"Request header affinity","description_kind":"plain"},"max_items":1}},"description_kind":"plain"},"max_items":1},"stream_backend":{"nesting_mode":"list","block":{"attributes":{"enable_proxy_protocol":{"type":"bool","description_kind":"plain","optional":true,"computed":true},"name":{"type":"string","description_kind":"plain","computed":true},"port":{"type":"number","description_kind":"plain","optional":true,"computed":true},"target_group_ids":{"type":["list","string"],"description_kind":"plain","computed":true},"weight":{"type":"number","description_kind":"plain","optional":true,"computed":true}},"block_types":{"healthcheck":{"nesting_mode":"list","block":{"attributes":{"healthcheck_port":{"type":"number","description_kind":"plain","optional":true,"computed":true},"healthy_threshold":{"type":"number","description_kind":"plain","optional":true,"computed":true},"interval":{"type":"string","description_kind":"plain","computed":true},"interval_jitter_percent":{"type":"number","description_kind":"plain","optional":true,"computed":true},"timeout":{"type":"string","description_kind":"plain","computed":true},"unhealthy_threshold":{"type":"number","description_kind":"plain","optional":true,"computed":true}},"block_types":{"grpc_healthcheck":{"nesting_mode":"list","block":{"attributes":{"service_name":{"type":"string","description_kind":"plain","optional":true,"computed":true}},"description_kind":"plain"},"max_items":1},"http_healthcheck":{"nesting_mode":"list","block":{"attributes":{"host":{"type":"string","description_kind":"plain","optional":true,"computed":true},"http2":{"type":"bool","description_kind":"plain","optional":true,"computed":true},"path":{"type":"string","description_kind":"plain","computed":true}},"description_kind":"plain"},"max_items":1},"stream_healthcheck":{"nesting_mode":"list","block":{"attributes":{"receive":{"type":"string","description_kind":"plain","optional":true,"computed":true},"send":{"type":"string","description_kind":"plain","optional":true,"computed":true}},"description_kind":"plain"},"max_items":1}},"description_kind":"plain"},"max_items":1},"load_balancing_config":{"nesting_mode":"list","block":{"attributes":{"locality_aware_routing_percent":{"type":"number","description_kind":"plain","optional":true,"computed":true},"mode":{"type":"string","description_kind":"plain","optional":true,"computed":true},"panic_threshold":{"type":"number","description_kind":"plain","optional":true,"computed":true},"strict_locality":{"type":"bool","description_kind":"plain","optional":true,"computed":true}},"description_kind":"plain"},"max_items":1},"tls":{"nesting_mode":"list","block":{"attributes":{"sni":{"type":"string","description_kind":"plain","optional":true,"computed":true}},"block_types":{"validation_context":{"nesting_mode":"list","block":{"attributes":{"trusted_ca_bytes":{"type":"string","description_kind":"plain","optional":true,"computed":true},"trusted_ca_id":{"type":"string","description_kind":"plain","optional":true,"computed":true}},"description_kind":"plain"},"max_items":1}},"description_kind":"plain"},"max_items":1}},"description_kind":"plain"}}},"description_kind":"plain"}},"yandex_alb_http_router":{"version":0,"block":{"attributes":{"created_at":{"type":"string","description_kind":"plain","computed":true},"description":{"type":"string","description_kind":"plain","optional":true,"computed":true},"folder_id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"http_router_id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"labels":{"type":["map","string"],"description_kind":"plain","computed":true},"name":{"type":"string","description_kind":"plain","optional":true,"computed":true},"route_options":{"type":["list",["object",{"rbac":["list",["object",{"action":"string","principals":["list",["object",{"and_principals":["list",["object",{"any":"bool","headers":["list",["object",{"name":"string","value":["list",["object",{"exact":"string","prefix":"string","regex":"string"}]]}]],"remote_ip":"string"}]]}]]}]],"security_profile_id":"string"}]],"description_kind":"plain","computed":true}},"description_kind":"plain"}},"yandex_alb_load_balancer":{"version":0,"block":{"attributes":{"allocation_policy":{"type":["list",["object",{"location":["set",["object",{"disable_traffic":"bool","subnet_id":"string","zone_id":"string"}]]}]],"description_kind":"plain","computed":true},"created_at":{"type":"string","description_kind":"plain","computed":true},"description":{"type":"string","description_kind":"plain","computed":true},"folder_id":{"type":"string","description_kind":"plain","computed":true},"id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"labels":{"type":["map","string"],"description_kind":"plain","computed":true},"listener":{"type":["list",["object",{"endpoint":["list",["object",{"address":["list",["object",{"external_ipv4_address":["list",["object",{"address":"string"}]],"external_ipv6_address":["list",["object",{"address":"string"}]],"internal_ipv4_address":["list",["object",{"address":"string","subnet_id":"string"}]]}]],"ports":["list","number"]}]],"http":["list",["object",{"handler":["list",["object",{"allow_http10":"bool","http2_options":["list",["object",{"max_concurrent_streams":"number"}]],"http_router_id":"string","rewrite_request_id":"bool"}]],"redirects":["list",["object",{"http_to_https":"bool"}]]}]],"name":"string","stream":["list",["object",{"handler":["list",["object",{"backend_group_id":"string"}]]}]],"tls":["list",["object",{"default_handler":["list",["object",{"certificate_ids":["set","string"],"http_handler":["list",["object",{"allow_http10":"bool","http2_options":["list",["object",{"max_concurrent_streams":"number"}]],"http_router_id":"string","rewrite_request_id":"bool"}]],"stream_handler":["list",["object",{"backend_group_id":"string"}]]}]],"sni_handler":["list",["object",{"handler":["list",["object",{"certificate_ids":["set","string"],"http_handler":["list",["object",{"allow_http10":"bool","http2_options":["list",["object",{"max_concurrent_streams":"number"}]],"http_router_id":"string","rewrite_request_id":"bool"}]],"stream_handler":["list",["object",{"backend_group_id":"string"}]]}]],"name":"string","server_names":["set","string"]}]]}]]}]],"description_kind":"plain","computed":true},"load_balancer_id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"log_group_id":{"type":"string","description_kind":"plain","computed":true},"log_options":{"type":["list",["object",{"disable":"bool","discard_rule":["list",["object",{"discard_percent":"number","grpc_codes":["list","string"],"http_code_intervals":["list","string"],"http_codes":["list","number"]}]],"log_group_id":"string"}]],"description_kind":"plain","computed":true},"name":{"type":"string","description_kind":"plain","optional":true,"computed":true},"network_id":{"type":"string","description_kind":"plain","computed":true},"region_id":{"type":"string","description_kind":"plain","computed":true},"security_group_ids":{"type":["set","string"],"description_kind":"plain","computed":true},"status":{"type":"string","description_kind":"plain","computed":true}},"block_types":{"timeouts":{"nesting_mode":"single","block":{"attributes":{"create":{"type":"string","description_kind":"plain","optional":true},"delete":{"type":"string","description_kind":"plain","optional":true},"update":{"type":"string","description_kind":"plain","optional":true}},"description_kind":"plain"}}},"description_kind":"plain"}},"yandex_alb_target_group":{"version":0,"block":{"attributes":{"created_at":{"type":"string","description_kind":"plain","computed":true},"description":{"type":"string","description_kind":"plain","optional":true,"computed":true},"folder_id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"labels":{"type":["map","string"],"description_kind":"plain","computed":true},"name":{"type":"string","description_kind":"plain","optional":true,"computed":true},"target":{"type":["list",["object",{"ip_address":"string","private_ipv4_address":"bool","subnet_id":"string"}]],"description_kind":"plain","computed":true},"target_group_id":{"type":"string","description_kind":"plain","optional":true,"computed":true}},"description_kind":"plain"}},"yandex_alb_virtual_host":{"version":0,"block":{"attributes":{"authority":{"type":["set","string"],"description_kind":"plain","computed":true},"http_router_id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"modify_request_headers":{"type":["list",["object",{"append":"string","name":"string","remove":"bool","replace":"string"}]],"description_kind":"plain","computed":true},"modify_response_headers":{"type":["list",["object",{"append":"string","name":"string","remove":"bool","replace":"string"}]],"description_kind":"plain","computed":true},"name":{"type":"string","description_kind":"plain","optional":true,"computed":true},"route":{"type":["list",["object",{"grpc_route":["list",["object",{"grpc_match":["list",["object",{"fqmn":["list",["object",{"exact":"string","prefix":"string","regex":"string"}]]}]],"grpc_route_action":["list",["object",{"auto_host_rewrite":"bool","backend_group_id":"string","host_rewrite":"string","idle_timeout":"string","max_timeout":"string"}]],"grpc_status_response_action":["list",["object",{"status":"string"}]]}]],"http_route":["list",["object",{"direct_response_action":["list",["object",{"body":"string","status":"number"}]],"http_match":["list",["object",{"http_method":["set","string"],"path":["list",["object",{"exact":"string","prefix":"string","regex":"string"}]]}]],"http_route_action":["list",["object",{"auto_host_rewrite":"bool","backend_group_id":"string","host_rewrite":"string","idle_timeout":"string","prefix_rewrite":"string","timeout":"string","upgrade_types":["set","string"]}]],"redirect_action":["list",["object",{"remove_query":"bool","replace_host":"string","replace_path":"string","replace_port":"number","replace_prefix":"string","replace_scheme":"string","response_code":"string"}]]}]],"name":"string","route_options":["list",["object",{"rbac":["list",["object",{"action":"string","principals":["list",["object",{"and_principals":["list",["object",{"any":"bool","headers":["list",["object",{"name":"string","value":["list",["object",{"exact":"string","prefix":"string","regex":"string"}]]}]],"remote_ip":"string"}]]}]]}]],"security_profile_id":"string"}]]}]],"description_kind":"plain","computed":true},"route_options":{"type":["list",["object",{"rbac":["list",["object",{"action":"string","principals":["list",["object",{"and_principals":["list",["object",{"any":"bool","headers":["list",["object",{"name":"string","value":["list",["object",{"exact":"string","prefix":"string","regex":"string"}]]}]],"remote_ip":"string"}]]}]]}]],"security_profile_id":"string"}]],"description_kind":"plain","computed":true},"virtual_host_id":{"type":"string","description_kind":"plain","optional":true,"computed":true}},"description_kind":"plain"}},"yandex_api_gateway":{"version":0,"block":{"attributes":{"api_gateway_id":{"type":"string","description_kind":"plain","optional":true},"created_at":{"type":"string","description_kind":"plain","computed":true},"description":{"type":"string","description_kind":"plain","computed":true},"domain":{"type":"string","description_kind":"plain","computed":true},"execution_timeout":{"type":"string","description_kind":"plain","optional":true,"computed":true},"folder_id":{"type":"string","description_kind":"plain","optional":true},"id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"labels":{"type":["map","string"],"description_kind":"plain","computed":true},"log_group_id":{"type":"string","description_kind":"plain","computed":true},"log_options":{"type":["list",["object",{"disabled":"bool","folder_id":"string","log_group_id":"string","min_level":"string"}]],"description_kind":"plain","computed":true},"name":{"type":"string","description_kind":"plain","optional":true},"status":{"type":"string","description_kind":"plain","computed":true},"user_domains":{"type":["set","string"],"description_kind":"plain","deprecated":true,"computed":true},"variables":{"type":["map","string"],"description_kind":"plain","optional":true}},"block_types":{"canary":{"nesting_mode":"list","block":{"attributes":{"variables":{"type":["map","string"],"description_kind":"plain","optional":true},"weight":{"type":"number","description_kind":"plain","optional":true}},"description_kind":"plain"},"max_items":1},"connectivity":{"nesting_mode":"list","block":{"attributes":{"network_id":{"type":"string","description_kind":"plain","required":true}},"description_kind":"plain"},"max_items":1},"custom_domains":{"nesting_mode":"set","block":{"attributes":{"certificate_id":{"type":"string","description_kind":"plain","required":true},"domain_id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"fqdn":{"type":"string","description_kind":"plain","required":true}},"description_kind":"plain"}}},"description_kind":"plain"}},"yandex_audit_trails_trail":{"version":0,"block":{"attributes":{"data_stream_destination":{"type":["list",["object",{"database_id":"string","stream_name":"string"}]],"description_kind":"plain","computed":true},"description":{"type":"string","description_kind":"plain","computed":true},"filter":{"type":["set",["object",{"event_filters":["list",["object",{"categories":["list",["object",{"plane":"string","type":"string"}]],"path_filter":["list",["object",{"any_filter":["list",["object",{"resource_id":"string","resource_type":"string"}]],"some_filter":["list",["object",{"any_filters":["list",["object",{"resource_id":"string","resource_type":"string"}]],"resource_id":"string","resource_type":"string"}]]}]],"service":"string"}]],"path_filter":["list",["object",{"any_filter":["list",["object",{"resource_id":"string","resource_type":"string"}]],"some_filter":["list",["object",{"any_filters":["list",["object",{"resource_id":"string","resource_type":"string"}]],"resource_id":"string","resource_type":"string"}]]}]]}]],"description_kind":"plain","computed":true},"folder_id":{"type":"string","description_kind":"plain","computed":true},"id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"labels":{"type":["map","string"],"description_kind":"plain","computed":true},"logging_destination":{"type":["list",["object",{"log_group_id":"string"}]],"description_kind":"plain","computed":true},"name":{"type":"string","description_kind":"plain","computed":true},"service_account_id":{"type":"string","description_kind":"plain","computed":true},"status":{"type":"string","description_kind":"plain","computed":true},"storage_destination":{"type":["list",["object",{"bucket_name":"string","object_prefix":"string"}]],"description_kind":"plain","computed":true},"trail_id":{"type":"string","description_kind":"plain","required":true}},"description_kind":"plain"}},"yandex_billing_cloud_binding":{"version":0,"block":{"attributes":{"billing_account_id":{"type":"string","description_kind":"plain","required":true},"cloud_id":{"type":"string","description_kind":"plain","required":true},"id":{"type":"string","description":"Service generated identifier for the thing.","description_kind":"markdown","computed":true}},"description_kind":"plain"}},"yandex_cdn_origin_group":{"version":0,"block":{"attributes":{"folder_id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"name":{"type":"string","description_kind":"plain","optional":true,"computed":true},"origin":{"type":["set",["object",{"backup":"bool","enabled":"bool","origin_group_id":"number","source":"string"}]],"description_kind":"plain","computed":true},"origin_group_id":{"type":"number","description_kind":"plain","optional":true,"computed":true},"use_next":{"type":"bool","description_kind":"plain","computed":true}},"description_kind":"plain"}},"yandex_cdn_resource":{"version":0,"block":{"attributes":{"active":{"type":"bool","description_kind":"plain","optional":true},"cname":{"type":"string","description_kind":"plain","optional":true,"computed":true},"created_at":{"type":"string","description_kind":"plain","computed":true},"folder_id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"origin_group_id":{"type":"number","description_kind":"plain","optional":true},"origin_group_name":{"type":"string","description_kind":"plain","optional":true},"origin_protocol":{"type":"string","description_kind":"plain","optional":true},"provider_cname":{"type":"string","description_kind":"plain","computed":true},"resource_id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"secondary_hostnames":{"type":["set","string"],"description_kind":"plain","optional":true},"updated_at":{"type":"string","description_kind":"plain","optional":true,"computed":true}},"block_types":{"options":{"nesting_mode":"list","block":{"attributes":{"allowed_http_methods":{"type":["list","string"],"description_kind":"plain","optional":true,"computed":true},"browser_cache_settings":{"type":"number","description_kind":"plain","optional":true,"computed":true},"cache_http_headers":{"type":["list","string"],"description_kind":"plain","optional":true,"computed":true},"cors":{"type":["list","string"],"description_kind":"plain","optional":true,"computed":true},"custom_host_header":{"type":"string","description_kind":"plain","optional":true,"computed":true},"custom_server_name":{"type":"string","description_kind":"plain","optional":true,"computed":true},"disable_cache":{"type":"bool","description_kind":"plain","optional":true,"computed":true},"disable_proxy_force_ranges":{"type":"bool","description_kind":"plain","optional":true,"computed":true},"edge_cache_settings":{"type":"number","description_kind":"plain","optional":true,"computed":true},"enable_ip_url_signing":{"type":"bool","description_kind":"plain","optional":true,"computed":true},"fetched_compressed":{"type":"bool","description_kind":"plain","optional":true,"computed":true},"forward_host_header":{"type":"bool","description_kind":"plain","optional":true,"computed":true},"gzip_on":{"type":"bool","description_kind":"plain","optional":true,"computed":true},"ignore_cookie":{"type":"bool","description_kind":"plain","optional":true,"computed":true},"ignore_query_params":{"type":"bool","description_kind":"plain","optional":true,"computed":true},"proxy_cache_methods_set":{"type":"bool","description_kind":"plain","optional":true,"computed":true},"query_params_blacklist":{"type":["list","string"],"description_kind":"plain","optional":true,"computed":true},"query_params_whitelist":{"type":["list","string"],"description_kind":"plain","optional":true,"computed":true},"redirect_http_to_https":{"type":"bool","description_kind":"plain","optional":true,"computed":true},"redirect_https_to_http":{"type":"bool","description_kind":"plain","optional":true,"computed":true},"secure_key":{"type":"string","description_kind":"plain","optional":true,"computed":true},"slice":{"type":"bool","description_kind":"plain","optional":true,"computed":true},"static_request_headers":{"type":["map","string"],"description_kind":"plain","optional":true,"computed":true},"static_response_headers":{"type":["map","string"],"description_kind":"plain","optional":true,"computed":true}},"block_types":{"ip_address_acl":{"nesting_mode":"list","block":{"attributes":{"excepted_values":{"type":["list","string"],"description_kind":"plain","optional":true,"computed":true},"policy_type":{"type":"string","description_kind":"plain","optional":true,"computed":true}},"description_kind":"plain"},"max_items":1}},"description_kind":"plain"},"max_items":1},"ssl_certificate":{"nesting_mode":"set","block":{"attributes":{"certificate_manager_id":{"type":"string","description_kind":"plain","optional":true},"status":{"type":"string","description_kind":"plain","computed":true},"type":{"type":"string","description_kind":"plain","required":true}},"description_kind":"plain"},"max_items":1}},"description_kind":"plain"}},"yandex_client_config":{"version":0,"block":{"attributes":{"cloud_id":{"type":"string","description_kind":"plain","computed":true},"folder_id":{"type":"string","description_kind":"plain","computed":true},"iam_token":{"type":"string","description_kind":"plain","computed":true,"sensitive":true},"id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"zone":{"type":"string","description_kind":"plain","computed":true}},"description_kind":"plain"}},"yandex_cm_certificate":{"version":1,"block":{"attributes":{"certificate_id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"challenges":{"type":["list",["object",{"created_at":"string","dns_name":"string","dns_type":"string","dns_value":"string","domain":"string","http_content":"string","http_url":"string","message":"string","type":"string","updated_at":"string"}]],"description_kind":"plain","computed":true},"created_at":{"type":"string","description_kind":"plain","computed":true},"deletion_protection":{"type":"bool","description_kind":"plain","computed":true},"description":{"type":"string","description_kind":"plain","optional":true,"computed":true},"domains":{"type":["list","string"],"description_kind":"plain","computed":true},"folder_id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"issued_at":{"type":"string","description_kind":"plain","computed":true},"issuer":{"type":"string","description_kind":"plain","computed":true},"labels":{"type":["map","string"],"description_kind":"plain","optional":true,"computed":true},"name":{"type":"string","description_kind":"plain","optional":true,"computed":true},"not_after":{"type":"string","description_kind":"plain","computed":true},"not_before":{"type":"string","description_kind":"plain","computed":true},"serial":{"type":"string","description_kind":"plain","computed":true},"status":{"type":"string","description_kind":"plain","computed":true},"subject":{"type":"string","description_kind":"plain","computed":true},"type":{"type":"string","description_kind":"plain","computed":true},"updated_at":{"type":"string","description_kind":"plain","computed":true},"wait_validation":{"type":"bool","description_kind":"plain","optional":true}},"description_kind":"plain"}},"yandex_cm_certificate_content":{"version":1,"block":{"attributes":{"certificate_id":{"type":"string","description_kind":"plain","optional":true},"certificates":{"type":["list","string"],"description_kind":"plain","computed":true},"folder_id":{"type":"string","description_kind":"plain","optional":true},"id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"name":{"type":"string","description_kind":"plain","optional":true},"private_key":{"type":"string","description_kind":"plain","computed":true,"sensitive":true},"private_key_format":{"type":"string","description_kind":"plain","optional":true},"wait_validation":{"type":"bool","description_kind":"plain","optional":true}},"description_kind":"plain"}},"yandex_compute_disk":{"version":0,"block":{"attributes":{"block_size":{"type":"number","description_kind":"plain","computed":true},"created_at":{"type":"string","description_kind":"plain","computed":true},"description":{"type":"string","description_kind":"plain","computed":true},"disk_id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"folder_id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"image_id":{"type":"string","description_kind":"plain","computed":true},"instance_ids":{"type":["list","string"],"description_kind":"plain","computed":true},"labels":{"type":["map","string"],"description_kind":"plain","computed":true},"name":{"type":"string","description_kind":"plain","optional":true,"computed":true},"product_ids":{"type":["list","string"],"description_kind":"plain","computed":true},"size":{"type":"number","description_kind":"plain","computed":true},"snapshot_id":{"type":"string","description_kind":"plain","computed":true},"status":{"type":"string","description_kind":"plain","computed":true},"type":{"type":"string","description_kind":"plain","computed":true},"zone":{"type":"string","description_kind":"plain","computed":true}},"block_types":{"disk_placement_policy":{"nesting_mode":"list","block":{"attributes":{"disk_placement_group_id":{"type":"string","description_kind":"plain","required":true}},"description_kind":"plain"},"max_items":1}},"description_kind":"plain"}},"yandex_compute_disk_placement_group":{"version":0,"block":{"attributes":{"created_at":{"type":"string","description_kind":"plain","computed":true},"description":{"type":"string","description_kind":"plain","optional":true},"folder_id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"group_id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"labels":{"type":["map","string"],"description_kind":"plain","optional":true},"name":{"type":"string","description_kind":"plain","optional":true},"status":{"type":"string","description_kind":"plain","computed":true},"zone":{"type":"string","description_kind":"plain","optional":true}},"description_kind":"plain"}},"yandex_compute_filesystem":{"version":0,"block":{"attributes":{"block_size":{"type":"number","description_kind":"plain","computed":true},"created_at":{"type":"string","description_kind":"plain","computed":true},"description":{"type":"string","description_kind":"plain","computed":true},"filesystem_id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"folder_id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"labels":{"type":["map","string"],"description_kind":"plain","computed":true},"name":{"type":"string","description_kind":"plain","optional":true,"computed":true},"size":{"type":"number","description_kind":"plain","computed":true},"status":{"type":"string","description_kind":"plain","computed":true},"type":{"type":"string","description_kind":"plain","computed":true},"zone":{"type":"string","description_kind":"plain","computed":true}},"description_kind":"plain"}},"yandex_compute_gpu_cluster":{"version":0,"block":{"attributes":{"created_at":{"type":"string","description_kind":"plain","computed":true},"description":{"type":"string","description_kind":"plain","computed":true},"folder_id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"gpu_cluster_id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"interconnect_type":{"type":"string","description_kind":"plain","computed":true},"labels":{"type":["map","string"],"description_kind":"plain","computed":true},"name":{"type":"string","description_kind":"plain","optional":true,"computed":true},"status":{"type":"string","description_kind":"plain","computed":true},"zone":{"type":"string","description_kind":"plain","computed":true}},"description_kind":"plain"}},"yandex_compute_image":{"version":0,"block":{"attributes":{"created_at":{"type":"string","description_kind":"plain","computed":true},"description":{"type":"string","description_kind":"plain","computed":true},"family":{"type":"string","description_kind":"plain","optional":true,"computed":true},"folder_id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"image_id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"labels":{"type":["map","string"],"description_kind":"plain","computed":true},"min_disk_size":{"type":"number","description_kind":"plain","computed":true},"name":{"type":"string","description_kind":"plain","optional":true,"computed":true},"os_type":{"type":"string","description_kind":"plain","computed":true},"pooled":{"type":"bool","description_kind":"plain","computed":true},"product_ids":{"type":["set","string"],"description_kind":"plain","computed":true},"size":{"type":"number","description_kind":"plain","computed":true},"status":{"type":"string","description_kind":"plain","computed":true}},"description_kind":"plain"}},"yandex_compute_instance":{"version":0,"block":{"attributes":{"boot_disk":{"type":["list",["object",{"auto_delete":"bool","device_name":"string","disk_id":"string","initialize_params":["list",["object",{"block_size":"number","description":"string","image_id":"string","name":"string","size":"number","snapshot_id":"string","type":"string"}]],"mode":"string"}]],"description_kind":"plain","computed":true},"created_at":{"type":"string","description_kind":"plain","computed":true},"description":{"type":"string","description_kind":"plain","computed":true},"folder_id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"fqdn":{"type":"string","description_kind":"plain","computed":true},"gpu_cluster_id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"instance_id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"labels":{"type":["map","string"],"description_kind":"plain","computed":true},"maintenance_grace_period":{"type":"string","description_kind":"plain","optional":true,"computed":true},"maintenance_policy":{"type":"string","description_kind":"plain","optional":true,"computed":true},"metadata":{"type":["map","string"],"description_kind":"plain","computed":true},"name":{"type":"string","description_kind":"plain","optional":true,"computed":true},"network_acceleration_type":{"type":"string","description_kind":"plain","computed":true},"network_interface":{"type":["list",["object",{"dns_record":["list",["object",{"dns_zone_id":"string","fqdn":"string","ptr":"bool","ttl":"number"}]],"index":"number","ip_address":"string","ipv4":"bool","ipv6":"bool","ipv6_address":"string","ipv6_dns_record":["list",["object",{"dns_zone_id":"string","fqdn":"string","ptr":"bool","ttl":"number"}]],"mac_address":"string","nat":"bool","nat_dns_record":["list",["object",{"dns_zone_id":"string","fqdn":"string","ptr":"bool","ttl":"number"}]],"nat_ip_address":"string","nat_ip_version":"string","security_group_ids":["set","string"],"subnet_id":"string"}]],"description_kind":"plain","computed":true},"platform_id":{"type":"string","description_kind":"plain","computed":true},"resources":{"type":["list",["object",{"core_fraction":"number","cores":"number","gpus":"number","memory":"number"}]],"description_kind":"plain","computed":true},"scheduling_policy":{"type":["list",["object",{"preemptible":"bool"}]],"description_kind":"plain","computed":true},"secondary_disk":{"type":["set",["object",{"auto_delete":"bool","device_name":"string","disk_id":"string","mode":"string"}]],"description_kind":"plain","computed":true},"service_account_id":{"type":"string","description_kind":"plain","computed":true},"status":{"type":"string","description_kind":"plain","computed":true},"zone":{"type":"string","description_kind":"plain","computed":true}},"block_types":{"filesystem":{"nesting_mode":"set","block":{"attributes":{"device_name":{"type":"string","description_kind":"plain","computed":true},"filesystem_id":{"type":"string","description_kind":"plain","computed":true},"mode":{"type":"string","description_kind":"plain","optional":true,"computed":true}},"description_kind":"plain"}},"local_disk":{"nesting_mode":"list","block":{"attributes":{"device_name":{"type":"string","description_kind":"plain","computed":true},"size_bytes":{"type":"number","description_kind":"plain","required":true}},"description_kind":"plain"}},"metadata_options":{"nesting_mode":"list","block":{"attributes":{"aws_v1_http_endpoint":{"type":"number","description_kind":"plain","optional":true,"computed":true},"aws_v1_http_token":{"type":"number","description_kind":"plain","optional":true,"computed":true},"gce_http_endpoint":{"type":"number","description_kind":"plain","optional":true,"computed":true},"gce_http_token":{"type":"number","description_kind":"plain","optional":true,"computed":true}},"description_kind":"plain"},"max_items":1},"placement_policy":{"nesting_mode":"list","block":{"attributes":{"host_affinity_rules":{"type":["list",["object",{"key":"string","op":"string","values":["list","string"]}]],"description_kind":"plain","optional":true,"computed":true},"placement_group_id":{"type":"string","description_kind":"plain","optional":true},"placement_group_partition":{"type":"number","description_kind":"plain","optional":true}},"description_kind":"plain"},"max_items":1}},"description_kind":"plain"}},"yandex_compute_instance_group":{"version":0,"block":{"attributes":{"allocation_policy":{"type":["list",["object",{"instance_tags_pool":["list",["object",{"tags":["list","string"],"zone":"string"}]],"zones":["set","string"]}]],"description_kind":"plain","computed":true},"application_balancer_state":{"type":["list",["object",{"status_message":"string","target_group_id":"string"}]],"description_kind":"plain","computed":true},"application_load_balancer":{"type":["list",["object",{"ignore_health_checks":"bool","max_opening_traffic_duration":"number","status_message":"string","target_group_description":"string","target_group_id":"string","target_group_labels":["map","string"],"target_group_name":"string"}]],"description_kind":"plain","computed":true},"created_at":{"type":"string","description_kind":"plain","computed":true},"deletion_protection":{"type":"bool","description_kind":"plain","computed":true},"deploy_policy":{"type":["list",["object",{"max_creating":"number","max_deleting":"number","max_expansion":"number","max_unavailable":"number","startup_duration":"number","strategy":"string"}]],"description_kind":"plain","computed":true},"description":{"type":"string","description_kind":"plain","computed":true},"folder_id":{"type":"string","description_kind":"plain","computed":true},"health_check":{"type":["list",["object",{"healthy_threshold":"number","http_options":["list",["object",{"path":"string","port":"number"}]],"interval":"number","tcp_options":["list",["object",{"port":"number"}]],"timeout":"number","unhealthy_threshold":"number"}]],"description_kind":"plain","computed":true},"id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"instance_group_id":{"type":"string","description_kind":"plain","required":true},"instance_template":{"type":["list",["object",{"boot_disk":["list",["object",{"device_name":"string","disk_id":"string","initialize_params":["list",["object",{"description":"string","image_id":"string","size":"number","snapshot_id":"string","type":"string"}]],"mode":"string","name":"string"}]],"description":"string","filesystem":["set",["object",{"device_name":"string","filesystem_id":"string","mode":"string"}]],"hostname":"string","labels":["map","string"],"metadata":["map","string"],"metadata_options":["list",["object",{"aws_v1_http_endpoint":"number","aws_v1_http_token":"number","gce_http_endpoint":"number","gce_http_token":"number"}]],"name":"string","network_interface":["list",["object",{"dns_record":["list",["object",{"dns_zone_id":"string","fqdn":"string","ptr":"bool","ttl":"number"}]],"ip_address":"string","ipv4":"bool","ipv6":"bool","ipv6_address":"string","ipv6_dns_record":["list",["object",{"dns_zone_id":"string","fqdn":"string","ptr":"bool","ttl":"number"}]],"nat":"bool","nat_dns_record":["list",["object",{"dns_zone_id":"string","fqdn":"string","ptr":"bool","ttl":"number"}]],"nat_ip_address":"string","network_id":"string","security_group_ids":["set","string"],"subnet_ids":["set","string"]}]],"network_settings":["list",["object",{"type":"string"}]],"placement_policy":["list",["object",{"placement_group_id":"string"}]],"platform_id":"string","resources":["list",["object",{"core_fraction":"number","cores":"number","gpus":"number","memory":"number"}]],"scheduling_policy":["list",["object",{"preemptible":"bool"}]],"secondary_disk":["list",["object",{"device_name":"string","disk_id":"string","initialize_params":["list",["object",{"description":"string","image_id":"string","size":"number","snapshot_id":"string","type":"string"}]],"mode":"string","name":"string"}]],"service_account_id":"string"}]],"description_kind":"plain","computed":true},"instances":{"type":["list",["object",{"fqdn":"string","instance_id":"string","instance_tag":"string","name":"string","network_interface":["list",["object",{"index":"number","ip_address":"string","ipv4":"bool","ipv6":"bool","ipv6_address":"string","mac_address":"string","nat":"bool","nat_ip_address":"string","nat_ip_version":"string","subnet_id":"string"}]],"status":"string","status_changed_at":"string","status_message":"string","zone_id":"string"}]],"description_kind":"plain","computed":true},"labels":{"type":["map","string"],"description_kind":"plain","computed":true},"load_balancer":{"type":["list",["object",{"ignore_health_checks":"bool","max_opening_traffic_duration":"number","status_message":"string","target_group_description":"string","target_group_id":"string","target_group_labels":["map","string"],"target_group_name":"string"}]],"description_kind":"plain","computed":true},"load_balancer_state":{"type":["list",["object",{"status_message":"string","target_group_id":"string"}]],"description_kind":"plain","computed":true},"max_checking_health_duration":{"type":"number","description_kind":"plain","computed":true},"name":{"type":"string","description_kind":"plain","computed":true},"scale_policy":{"type":["list",["object",{"auto_scale":["list",["object",{"cpu_utilization_target":"number","custom_rule":["list",["object",{"folder_id":"string","labels":["map","string"],"metric_name":"string","metric_type":"string","rule_type":"string","service":"string","target":"number"}]],"initial_size":"number","max_size":"number","measurement_duration":"number","min_zone_size":"number","stabilization_duration":"number","warmup_duration":"number"}]],"fixed_scale":["list",["object",{"size":"number"}]],"test_auto_scale":["list",["object",{"cpu_utilization_target":"number","custom_rule":["list",["object",{"folder_id":"string","labels":["map","string"],"metric_name":"string","metric_type":"string","rule_type":"string","service":"string","target":"number"}]],"initial_size":"number","max_size":"number","measurement_duration":"number","min_zone_size":"number","stabilization_duration":"number","warmup_duration":"number"}]]}]],"description_kind":"plain","computed":true},"service_account_id":{"type":"string","description_kind":"plain","computed":true},"status":{"type":"string","description_kind":"plain","computed":true},"variables":{"type":["map","string"],"description_kind":"plain","computed":true}},"description_kind":"plain"}},"yandex_compute_placement_group":{"version":0,"block":{"attributes":{"created_at":{"type":"string","description_kind":"plain","computed":true},"description":{"type":"string","description_kind":"plain","optional":true},"folder_id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"group_id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"labels":{"type":["map","string"],"description_kind":"plain","optional":true},"name":{"type":"string","description_kind":"plain","optional":true},"placement_strategy":{"type":["map","string"],"description_kind":"plain","optional":true}},"description_kind":"plain"}},"yandex_compute_snapshot":{"version":0,"block":{"attributes":{"created_at":{"type":"string","description_kind":"plain","computed":true},"description":{"type":"string","description_kind":"plain","computed":true},"disk_size":{"type":"number","description_kind":"plain","computed":true},"folder_id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"labels":{"type":["map","string"],"description_kind":"plain","computed":true},"name":{"type":"string","description_kind":"plain","optional":true,"computed":true},"product_ids":{"type":["list","string"],"description_kind":"plain","computed":true},"snapshot_id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"source_disk_id":{"type":"string","description_kind":"plain","computed":true},"status":{"type":"string","description_kind":"plain","computed":true},"storage_size":{"type":"number","description_kind":"plain","computed":true}},"description_kind":"plain"}},"yandex_compute_snapshot_schedule":{"version":0,"block":{"attributes":{"created_at":{"type":"string","description_kind":"plain","computed":true},"description":{"type":"string","description_kind":"plain","optional":true,"computed":true},"disk_ids":{"type":["set","string"],"description_kind":"plain","optional":true,"computed":true},"folder_id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"labels":{"type":["map","string"],"description_kind":"plain","optional":true,"computed":true},"name":{"type":"string","description_kind":"plain","optional":true,"computed":true},"retention_period":{"type":"string","description_kind":"plain","optional":true,"computed":true},"snapshot_count":{"type":"number","description_kind":"plain","optional":true,"computed":true},"snapshot_schedule_id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"status":{"type":"string","description_kind":"plain","computed":true}},"block_types":{"schedule_policy":{"nesting_mode":"list","block":{"attributes":{"expression":{"type":"string","description_kind":"plain","optional":true,"computed":true},"start_at":{"type":"string","description_kind":"plain","optional":true,"computed":true}},"description_kind":"plain"}},"snapshot_spec":{"nesting_mode":"list","block":{"attributes":{"description":{"type":"string","description_kind":"plain","optional":true,"computed":true},"labels":{"type":["map","string"],"description_kind":"plain","optional":true,"computed":true}},"description_kind":"plain"}}},"description_kind":"plain"}},"yandex_container_registry":{"version":0,"block":{"attributes":{"created_at":{"type":"string","description_kind":"plain","computed":true},"folder_id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"labels":{"type":["map","string"],"description_kind":"plain","optional":true},"name":{"type":"string","description_kind":"plain","optional":true,"computed":true},"registry_id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"status":{"type":"string","description_kind":"plain","computed":true}},"description_kind":"plain"}},"yandex_container_registry_ip_permission":{"version":0,"block":{"attributes":{"id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"pull":{"type":["set","string"],"description_kind":"plain","computed":true},"push":{"type":["set","string"],"description_kind":"plain","computed":true},"registry_id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"registry_name":{"type":"string","description_kind":"plain","optional":true,"computed":true}},"block_types":{"timeouts":{"nesting_mode":"single","block":{"attributes":{"default":{"type":"string","description_kind":"plain","optional":true}},"description_kind":"plain"}}},"description_kind":"plain"}},"yandex_container_repository":{"version":0,"block":{"attributes":{"id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"name":{"type":"string","description_kind":"plain","optional":true,"computed":true},"repository_id":{"type":"string","description_kind":"plain","optional":true,"computed":true}},"description_kind":"plain"}},"yandex_container_repository_lifecycle_policy":{"version":0,"block":{"attributes":{"created_at":{"type":"string","description_kind":"plain","computed":true},"description":{"type":"string","description_kind":"plain","computed":true},"id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"lifecycle_policy_id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"name":{"type":"string","description_kind":"plain","optional":true,"computed":true},"repository_id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"rule":{"type":["list",["object",{"description":"string","expire_period":"string","retained_top":"number","tag_regexp":"string","untagged":"bool"}]],"description_kind":"plain","computed":true},"status":{"type":"string","description_kind":"plain","computed":true}},"block_types":{"timeouts":{"nesting_mode":"single","block":{"attributes":{"default":{"type":"string","description_kind":"plain","optional":true}},"description_kind":"plain"}}},"description_kind":"plain"}},"yandex_dataproc_cluster":{"version":0,"block":{"attributes":{"bucket":{"type":"string","description_kind":"plain","computed":true},"cluster_config":{"type":["list",["object",{"hadoop":["list",["object",{"initialization_action":["list",["object",{"args":["list","string"],"timeout":"string","uri":"string"}]],"properties":["map","string"],"services":["set","string"],"ssh_public_keys":["set","string"]}]],"subcluster_spec":["list",["object",{"assign_public_ip":"bool","autoscaling_config":["list",["object",{"cpu_utilization_target":"string","decommission_timeout":"string","max_hosts_count":"number","measurement_duration":"string","preemptible":"bool","stabilization_duration":"string","warmup_duration":"string"}]],"hosts_count":"number","id":"string","name":"string","resources":["list",["object",{"disk_size":"number","disk_type_id":"string","resource_preset_id":"string"}]],"role":"string","subnet_id":"string"}]],"version_id":"string"}]],"description_kind":"plain","computed":true},"cluster_id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"created_at":{"type":"string","description_kind":"plain","computed":true},"deletion_protection":{"type":"bool","description_kind":"plain","computed":true},"description":{"type":"string","description_kind":"plain","computed":true},"folder_id":{"type":"string","description_kind":"plain","computed":true},"host_group_ids":{"type":["set","string"],"description_kind":"plain","computed":true},"id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"labels":{"type":["map","string"],"description_kind":"plain","computed":true},"name":{"type":"string","description_kind":"plain","optional":true,"computed":true},"security_group_ids":{"type":["set","string"],"description_kind":"plain","computed":true},"service_account_id":{"type":"string","description_kind":"plain","computed":true},"ui_proxy":{"type":"bool","description_kind":"plain","computed":true},"zone_id":{"type":"string","description_kind":"plain","computed":true}},"description_kind":"plain"}},"yandex_datasphere_community":{"version":0,"block":{"attributes":{"billing_account_id":{"type":"string","description_kind":"plain","optional":true},"created_at":{"type":"string","description_kind":"plain","computed":true},"created_by":{"type":"string","description_kind":"plain","computed":true},"description":{"type":"string","description_kind":"plain","computed":true},"id":{"type":"string","description_kind":"plain","required":true},"labels":{"type":["map","string"],"description_kind":"plain","computed":true},"name":{"type":"string","description_kind":"plain","computed":true},"organization_id":{"type":"string","description_kind":"plain","computed":true},"timeouts":{"nested_type":{"attributes":{"create":{"type":"string","description":"A string that can be [parsed as a duration](https://pkg.go.dev/time#ParseDuration) consisting of numbers and unit suffixes, such as \"30s\" or \"2h45m\". Valid time units are \"s\" (seconds), \"m\" (minutes), \"h\" (hours).","description_kind":"plain","optional":true},"delete":{"type":"string","description":"A string that can be [parsed as a duration](https://pkg.go.dev/time#ParseDuration) consisting of numbers and unit suffixes, such as \"30s\" or \"2h45m\". Valid time units are \"s\" (seconds), \"m\" (minutes), \"h\" (hours). Setting a timeout for a Delete operation is only applicable if changes are saved into state before the destroy operation occurs.","description_kind":"plain","optional":true},"update":{"type":"string","description":"A string that can be [parsed as a duration](https://pkg.go.dev/time#ParseDuration) consisting of numbers and unit suffixes, such as \"30s\" or \"2h45m\". Valid time units are \"s\" (seconds), \"m\" (minutes), \"h\" (hours).","description_kind":"plain","optional":true}},"nesting_mode":"single"},"description_kind":"plain","optional":true}},"description_kind":"plain"}},"yandex_datasphere_project":{"version":0,"block":{"attributes":{"community_id":{"type":"string","description_kind":"plain","computed":true},"created_at":{"type":"string","description_kind":"plain","computed":true},"created_by":{"type":"string","description_kind":"plain","computed":true},"description":{"type":"string","description_kind":"plain","computed":true},"id":{"type":"string","description_kind":"plain","required":true},"labels":{"type":["map","string"],"description_kind":"plain","computed":true},"limits":{"nested_type":{"attributes":{"balance":{"type":"number","description_kind":"plain","computed":true},"max_units_per_execution":{"type":"number","description_kind":"plain","computed":true},"max_units_per_hour":{"type":"number","description_kind":"plain","computed":true}},"nesting_mode":"single"},"description_kind":"plain","computed":true},"name":{"type":"string","description_kind":"plain","computed":true},"settings":{"nested_type":{"attributes":{"commit_mode":{"type":"string","description_kind":"plain","computed":true},"data_proc_cluster_id":{"type":"string","description_kind":"plain","computed":true},"default_folder_id":{"type":"string","description_kind":"plain","computed":true},"ide":{"type":"string","description_kind":"plain","computed":true},"security_group_ids":{"type":["set","string"],"description_kind":"plain","computed":true},"service_account_id":{"type":"string","description_kind":"plain","computed":true},"stale_exec_timeout_mode":{"type":"string","description_kind":"plain","computed":true},"subnet_id":{"type":"string","description_kind":"plain","computed":true}},"nesting_mode":"single"},"description_kind":"plain","computed":true},"timeouts":{"nested_type":{"attributes":{"create":{"type":"string","description":"A string that can be [parsed as a duration](https://pkg.go.dev/time#ParseDuration) consisting of numbers and unit suffixes, such as \"30s\" or \"2h45m\". Valid time units are \"s\" (seconds), \"m\" (minutes), \"h\" (hours).","description_kind":"plain","optional":true},"delete":{"type":"string","description":"A string that can be [parsed as a duration](https://pkg.go.dev/time#ParseDuration) consisting of numbers and unit suffixes, such as \"30s\" or \"2h45m\". Valid time units are \"s\" (seconds), \"m\" (minutes), \"h\" (hours). Setting a timeout for a Delete operation is only applicable if changes are saved into state before the destroy operation occurs.","description_kind":"plain","optional":true},"update":{"type":"string","description":"A string that can be [parsed as a duration](https://pkg.go.dev/time#ParseDuration) consisting of numbers and unit suffixes, such as \"30s\" or \"2h45m\". Valid time units are \"s\" (seconds), \"m\" (minutes), \"h\" (hours).","description_kind":"plain","optional":true}},"nesting_mode":"single"},"description_kind":"plain","optional":true}},"description_kind":"plain"}},"yandex_dns_zone":{"version":0,"block":{"attributes":{"created_at":{"type":"string","description_kind":"plain","computed":true},"deletion_protection":{"type":"bool","description_kind":"plain","computed":true},"description":{"type":"string","description_kind":"plain","computed":true},"dns_zone_id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"folder_id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"labels":{"type":["map","string"],"description_kind":"plain","computed":true},"name":{"type":"string","description_kind":"plain","optional":true,"computed":true},"private_networks":{"type":["set","string"],"description_kind":"plain","computed":true},"public":{"type":"bool","description_kind":"plain","computed":true},"zone":{"type":"string","description_kind":"plain","computed":true}},"block_types":{"timeouts":{"nesting_mode":"single","block":{"attributes":{"create":{"type":"string","description_kind":"plain","optional":true},"delete":{"type":"string","description_kind":"plain","optional":true},"update":{"type":"string","description_kind":"plain","optional":true}},"description_kind":"plain"}}},"description_kind":"plain"}},"yandex_function":{"version":0,"block":{"attributes":{"async_invocation":{"type":["list",["object",{"retries_count":"number","service_account_id":"string","ymq_failure_target":["list",["object",{"arn":"string","service_account_id":"string"}]],"ymq_success_target":["list",["object",{"arn":"string","service_account_id":"string"}]]}]],"description_kind":"plain","computed":true},"concurrency":{"type":"number","description_kind":"plain","optional":true,"computed":true},"created_at":{"type":"string","description_kind":"plain","computed":true},"description":{"type":"string","description_kind":"plain","computed":true},"entrypoint":{"type":"string","description_kind":"plain","computed":true},"environment":{"type":["map","string"],"description_kind":"plain","computed":true},"execution_timeout":{"type":"string","description_kind":"plain","computed":true},"folder_id":{"type":"string","description_kind":"plain","optional":true},"function_id":{"type":"string","description_kind":"plain","optional":true},"id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"image_size":{"type":"number","description_kind":"plain","computed":true},"labels":{"type":["map","string"],"description_kind":"plain","computed":true},"log_options":{"type":["list",["object",{"disabled":"bool","folder_id":"string","log_group_id":"string","min_level":"string"}]],"description_kind":"plain","computed":true},"loggroup_id":{"type":"string","description_kind":"plain","computed":true},"memory":{"type":"number","description_kind":"plain","computed":true},"name":{"type":"string","description_kind":"plain","optional":true},"runtime":{"type":"string","description_kind":"plain","computed":true},"service_account_id":{"type":"string","description_kind":"plain","computed":true},"tags":{"type":["set","string"],"description_kind":"plain","computed":true},"tmpfs_size":{"type":"number","description_kind":"plain","computed":true},"version":{"type":"string","description_kind":"plain","computed":true}},"block_types":{"connectivity":{"nesting_mode":"list","block":{"attributes":{"network_id":{"type":"string","description_kind":"plain","required":true}},"description_kind":"plain"},"max_items":1},"secrets":{"nesting_mode":"list","block":{"attributes":{"environment_variable":{"type":"string","description_kind":"plain","required":true},"id":{"type":"string","description_kind":"plain","required":true},"key":{"type":"string","description_kind":"plain","required":true},"version_id":{"type":"string","description_kind":"plain","required":true}},"description_kind":"plain"}},"storage_mounts":{"nesting_mode":"list","block":{"attributes":{"bucket":{"type":"string","description_kind":"plain","required":true},"mount_point_name":{"type":"string","description_kind":"plain","required":true},"prefix":{"type":"string","description_kind":"plain","optional":true},"read_only":{"type":"bool","description_kind":"plain","optional":true}},"description_kind":"plain"}}},"description_kind":"plain"}},"yandex_function_scaling_policy":{"version":0,"block":{"attributes":{"function_id":{"type":"string","description_kind":"plain","required":true},"id":{"type":"string","description_kind":"plain","optional":true,"computed":true}},"block_types":{"policy":{"nesting_mode":"list","block":{"attributes":{"tag":{"type":"string","description_kind":"plain","computed":true},"zone_instances_limit":{"type":"number","description_kind":"plain","optional":true},"zone_requests_limit":{"type":"number","description_kind":"plain","optional":true}},"description_kind":"plain"}}},"description_kind":"plain"}},"yandex_function_trigger":{"version":0,"block":{"attributes":{"container":{"type":["list",["object",{"id":"string","path":"string","retry_attempts":"string","retry_interval":"string","service_account_id":"string"}]],"description_kind":"plain","computed":true},"container_registry":{"type":["list",["object",{"batch_cutoff":"string","batch_size":"string","create_image":"bool","create_image_tag":"bool","delete_image":"bool","delete_image_tag":"bool","image_name":"string","registry_id":"string","tag":"string"}]],"description_kind":"plain","computed":true},"created_at":{"type":"string","description_kind":"plain","computed":true},"data_streams":{"type":["list",["object",{"batch_cutoff":"string","batch_size":"string","database":"string","service_account_id":"bool","stream_name":"string","suffix":"string"}]],"description_kind":"plain","computed":true},"description":{"type":"string","description_kind":"plain","computed":true},"dlq":{"type":["list",["object",{"queue_id":"string","service_account_id":"string"}]],"description_kind":"plain","computed":true},"folder_id":{"type":"string","description_kind":"plain","optional":true},"function":{"type":["list",["object",{"id":"string","retry_attempts":"string","retry_interval":"string","service_account_id":"string","tag":"string"}]],"description_kind":"plain","computed":true},"id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"iot":{"type":["list",["object",{"batch_cutoff":"string","batch_size":"string","device_id":"string","registry_id":"string","topic":"string"}]],"description_kind":"plain","computed":true},"labels":{"type":["map","string"],"description_kind":"plain","computed":true},"log_group":{"type":["list",["object",{"batch_cutoff":"string","batch_size":"string","log_group_ids":["set","string"]}]],"description_kind":"plain","computed":true},"logging":{"type":["list",["object",{"batch_cutoff":"string","batch_size":"string","group_id":"string","levels":["set","string"],"resource_ids":["set","string"],"resource_types":["set","string"],"stream_names":["set","string"]}]],"description_kind":"plain","computed":true},"mail":{"type":["list",["object",{"attachments_bucket_id":"string","batch_cutoff":"string","batch_size":"string","service_account_id":"string"}]],"description_kind":"plain","computed":true},"message_queue":{"type":["list",["object",{"batch_cutoff":"string","batch_size":"string","queue_id":"string","service_account_id":"string","visibility_timeout":"string"}]],"description_kind":"plain","computed":true},"name":{"type":"string","description_kind":"plain","optional":true},"object_storage":{"type":["list",["object",{"batch_cutoff":"string","batch_size":"string","bucket_id":"string","create":"bool","delete":"bool","prefix":"string","suffix":"string","update":"bool"}]],"description_kind":"plain","computed":true},"timer":{"type":["list",["object",{"cron_expression":"string","payload":"string"}]],"description_kind":"plain","computed":true},"trigger_id":{"type":"string","description_kind":"plain","optional":true}},"description_kind":"plain"}},"yandex_iam_policy":{"version":0,"block":{"attributes":{"id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"policy_data":{"type":"string","description_kind":"plain","computed":true}},"block_types":{"binding":{"nesting_mode":"set","block":{"attributes":{"members":{"type":["set","string"],"description_kind":"plain","required":true},"role":{"type":"string","description_kind":"plain","required":true}},"description_kind":"plain"},"min_items":1}},"description_kind":"plain"}},"yandex_iam_role":{"version":0,"block":{"attributes":{"description":{"type":"string","description_kind":"plain","optional":true},"id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"role_id":{"type":"string","description_kind":"plain","optional":true,"computed":true}},"description_kind":"plain"}},"yandex_iam_service_account":{"version":0,"block":{"attributes":{"created_at":{"type":"string","description_kind":"plain","computed":true},"description":{"type":"string","description_kind":"plain","computed":true},"folder_id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"name":{"type":"string","description_kind":"plain","optional":true,"computed":true},"service_account_id":{"type":"string","description_kind":"plain","optional":true,"computed":true}},"description_kind":"plain"}},"yandex_iam_user":{"version":0,"block":{"attributes":{"default_email":{"type":"string","description_kind":"plain","computed":true},"id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"login":{"type":"string","description_kind":"plain","optional":true,"computed":true},"user_id":{"type":"string","description_kind":"plain","optional":true,"computed":true}},"description_kind":"plain"}},"yandex_iot_core_broker":{"version":0,"block":{"attributes":{"broker_id":{"type":"string","description_kind":"plain","optional":true},"certificates":{"type":["set","string"],"description_kind":"plain","computed":true},"created_at":{"type":"string","description_kind":"plain","computed":true},"description":{"type":"string","description_kind":"plain","computed":true},"folder_id":{"type":"string","description_kind":"plain","optional":true},"id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"labels":{"type":["map","string"],"description_kind":"plain","computed":true},"log_options":{"type":["list",["object",{"disabled":"bool","folder_id":"string","log_group_id":"string","min_level":"string"}]],"description_kind":"plain","computed":true},"name":{"type":"string","description_kind":"plain","optional":true}},"description_kind":"plain"}},"yandex_iot_core_device":{"version":0,"block":{"attributes":{"aliases":{"type":["map","string"],"description_kind":"plain","computed":true},"certificates":{"type":["set","string"],"description_kind":"plain","computed":true},"created_at":{"type":"string","description_kind":"plain","computed":true},"description":{"type":"string","description_kind":"plain","computed":true},"device_id":{"type":"string","description_kind":"plain","optional":true},"id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"name":{"type":"string","description_kind":"plain","optional":true},"passwords":{"type":["set","string"],"description_kind":"plain","computed":true},"registry_id":{"type":"string","description_kind":"plain","computed":true}},"description_kind":"plain"}},"yandex_iot_core_registry":{"version":0,"block":{"attributes":{"certificates":{"type":["set","string"],"description_kind":"plain","computed":true},"created_at":{"type":"string","description_kind":"plain","computed":true},"description":{"type":"string","description_kind":"plain","computed":true},"folder_id":{"type":"string","description_kind":"plain","optional":true},"id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"labels":{"type":["map","string"],"description_kind":"plain","computed":true},"log_options":{"type":["list",["object",{"disabled":"bool","folder_id":"string","log_group_id":"string","min_level":"string"}]],"description_kind":"plain","computed":true},"name":{"type":"string","description_kind":"plain","optional":true},"passwords":{"type":["set","string"],"description_kind":"plain","computed":true},"registry_id":{"type":"string","description_kind":"plain","optional":true}},"description_kind":"plain"}},"yandex_kms_asymmetric_encryption_key":{"version":1,"block":{"attributes":{"asymmetric_encryption_key_id":{"type":"string","description_kind":"plain","required":true},"created_at":{"type":"string","description_kind":"plain","computed":true},"deletion_protection":{"type":"bool","description_kind":"plain","optional":true},"description":{"type":"string","description_kind":"plain","optional":true},"encryption_algorithm":{"type":"string","description_kind":"plain","optional":true},"folder_id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"labels":{"type":["map","string"],"description_kind":"plain","optional":true},"name":{"type":"string","description_kind":"plain","optional":true},"status":{"type":"string","description_kind":"plain","computed":true}},"description_kind":"plain"}},"yandex_kms_asymmetric_signature_key":{"version":1,"block":{"attributes":{"asymmetric_signature_key_id":{"type":"string","description_kind":"plain","required":true},"created_at":{"type":"string","description_kind":"plain","computed":true},"deletion_protection":{"type":"bool","description_kind":"plain","optional":true},"description":{"type":"string","description_kind":"plain","optional":true},"folder_id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"labels":{"type":["map","string"],"description_kind":"plain","optional":true},"name":{"type":"string","description_kind":"plain","optional":true},"signature_algorithm":{"type":"string","description_kind":"plain","optional":true},"status":{"type":"string","description_kind":"plain","computed":true}},"description_kind":"plain"}},"yandex_kms_symmetric_key":{"version":1,"block":{"attributes":{"created_at":{"type":"string","description_kind":"plain","computed":true},"default_algorithm":{"type":"string","description_kind":"plain","optional":true},"deletion_protection":{"type":"bool","description_kind":"plain","optional":true},"description":{"type":"string","description_kind":"plain","optional":true},"folder_id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"labels":{"type":["map","string"],"description_kind":"plain","optional":true},"name":{"type":"string","description_kind":"plain","optional":true},"rotated_at":{"type":"string","description_kind":"plain","computed":true},"rotation_period":{"type":"string","description_kind":"plain","optional":true},"status":{"type":"string","description_kind":"plain","computed":true},"symmetric_key_id":{"type":"string","description_kind":"plain","optional":true}},"description_kind":"plain"}},"yandex_kubernetes_cluster":{"version":0,"block":{"attributes":{"cluster_id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"cluster_ipv4_range":{"type":"string","description_kind":"plain","computed":true},"cluster_ipv6_range":{"type":"string","description_kind":"plain","computed":true},"created_at":{"type":"string","description_kind":"plain","computed":true},"description":{"type":"string","description_kind":"plain","computed":true},"folder_id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"health":{"type":"string","description_kind":"plain","computed":true},"id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"kms_provider":{"type":["list",["object",{"key_id":"string"}]],"description_kind":"plain","computed":true},"labels":{"type":["map","string"],"description_kind":"plain","computed":true},"log_group_id":{"type":"string","description_kind":"plain","computed":true},"master":{"type":["list",["object",{"cluster_ca_certificate":"string","etcd_cluster_size":"number","external_v4_address":"string","external_v4_endpoint":"string","external_v6_address":"string","external_v6_endpoint":"string","internal_v4_address":"string","internal_v4_endpoint":"string","maintenance_policy":["list",["object",{"auto_upgrade":"bool","maintenance_window":["set",["object",{"day":"string","duration":"string","start_time":"string"}]]}]],"master_location":["list",["object",{"subnet_id":"string","zone":"string"}]],"master_logging":["list",["object",{"audit_enabled":"bool","cluster_autoscaler_enabled":"bool","enabled":"bool","events_enabled":"bool","folder_id":"string","kube_apiserver_enabled":"bool","log_group_id":"string"}]],"public_ip":"bool","regional":["list",["object",{"region":"string"}]],"security_group_ids":["set","string"],"version":"string","version_info":["list",["object",{"current_version":"string","new_revision_available":"bool","new_revision_summary":"string","version_deprecated":"bool"}]],"zonal":["list",["object",{"zone":"string"}]]}]],"description_kind":"plain","computed":true},"name":{"type":"string","description_kind":"plain","optional":true,"computed":true},"network_id":{"type":"string","description_kind":"plain","computed":true},"network_implementation":{"type":["list",["object",{"cilium":["list",["object",{"routing_mode":"string"}]]}]],"description_kind":"plain","computed":true},"network_policy_provider":{"type":"string","description_kind":"plain","computed":true},"node_ipv4_cidr_mask_size":{"type":"number","description_kind":"plain","computed":true},"node_service_account_id":{"type":"string","description_kind":"plain","computed":true},"release_channel":{"type":"string","description_kind":"plain","computed":true},"service_account_id":{"type":"string","description_kind":"plain","computed":true},"service_ipv4_range":{"type":"string","description_kind":"plain","computed":true},"service_ipv6_range":{"type":"string","description_kind":"plain","computed":true},"status":{"type":"string","description_kind":"plain","computed":true}},"description_kind":"plain"}},"yandex_kubernetes_node_group":{"version":0,"block":{"attributes":{"allocation_policy":{"type":["list",["object",{"location":["list",["object",{"subnet_id":"string","zone":"string"}]]}]],"description_kind":"plain","computed":true},"allowed_unsafe_sysctls":{"type":["list","string"],"description_kind":"plain","computed":true},"cluster_id":{"type":"string","description_kind":"plain","computed":true},"created_at":{"type":"string","description_kind":"plain","computed":true},"deploy_policy":{"type":["list",["object",{"max_expansion":"number","max_unavailable":"number"}]],"description_kind":"plain","computed":true},"description":{"type":"string","description_kind":"plain","computed":true},"folder_id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"instance_group_id":{"type":"string","description_kind":"plain","computed":true},"instance_template":{"type":["list",["object",{"boot_disk":["list",["object",{"size":"number","type":"string"}]],"container_network":["list",["object",{"pod_mtu":"number"}]],"container_runtime":["list",["object",{"type":"string"}]],"gpu_settings":["list",["object",{"gpu_cluster_id":"string","gpu_environment":"string"}]],"labels":["map","string"],"metadata":["map","string"],"name":"string","nat":"bool","network_acceleration_type":"string","network_interface":["list",["object",{"ipv4":"bool","ipv4_dns_records":["list",["object",{"dns_zone_id":"string","fqdn":"string","ptr":"bool","ttl":"number"}]],"ipv6":"bool","ipv6_dns_records":["list",["object",{"dns_zone_id":"string","fqdn":"string","ptr":"bool","ttl":"number"}]],"nat":"bool","security_group_ids":["set","string"],"subnet_ids":["set","string"]}]],"placement_policy":["list",["object",{"placement_group_id":"string"}]],"platform_id":"string","resources":["list",["object",{"core_fraction":"number","cores":"number","gpus":"number","memory":"number"}]],"scheduling_policy":["list",["object",{"preemptible":"bool"}]]}]],"description_kind":"plain","computed":true},"labels":{"type":["map","string"],"description_kind":"plain","computed":true},"maintenance_policy":{"type":["list",["object",{"auto_repair":"bool","auto_upgrade":"bool","maintenance_window":["set",["object",{"day":"string","duration":"string","start_time":"string"}]]}]],"description_kind":"plain","computed":true},"name":{"type":"string","description_kind":"plain","optional":true,"computed":true},"node_group_id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"node_labels":{"type":["map","string"],"description_kind":"plain","computed":true},"node_taints":{"type":["list","string"],"description_kind":"plain","computed":true},"scale_policy":{"type":["list",["object",{"auto_scale":["list",["object",{"initial":"number","max":"number","min":"number"}]],"fixed_scale":["list",["object",{"size":"number"}]]}]],"description_kind":"plain","computed":true},"status":{"type":"string","description_kind":"plain","computed":true},"version_info":{"type":["list",["object",{"current_version":"string","new_revision_available":"bool","new_revision_summary":"string","version_deprecated":"bool"}]],"description_kind":"plain","computed":true}},"description_kind":"plain"}},"yandex_lb_network_load_balancer":{"version":0,"block":{"attributes":{"attached_target_group":{"type":["set",["object",{"healthcheck":["list",["object",{"healthy_threshold":"number","http_options":["list",["object",{"path":"string","port":"number"}]],"interval":"number","name":"string","tcp_options":["list",["object",{"port":"number"}]],"timeout":"number","unhealthy_threshold":"number"}]],"target_group_id":"string"}]],"description_kind":"plain","computed":true},"created_at":{"type":"string","description_kind":"plain","computed":true},"deletion_protection":{"type":"bool","description_kind":"plain","computed":true},"description":{"type":"string","description_kind":"plain","computed":true},"folder_id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"labels":{"type":["map","string"],"description_kind":"plain","computed":true},"listener":{"type":["set",["object",{"external_address_spec":["set",["object",{"address":"string","ip_version":"string"}]],"internal_address_spec":["set",["object",{"address":"string","ip_version":"string","subnet_id":"string"}]],"name":"string","port":"number","protocol":"string","target_port":"number"}]],"description_kind":"plain","computed":true},"name":{"type":"string","description_kind":"plain","optional":true,"computed":true},"network_load_balancer_id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"region_id":{"type":"string","description_kind":"plain","computed":true},"type":{"type":"string","description_kind":"plain","computed":true}},"description_kind":"plain"}},"yandex_lb_target_group":{"version":0,"block":{"attributes":{"created_at":{"type":"string","description_kind":"plain","computed":true},"description":{"type":"string","description_kind":"plain","computed":true},"folder_id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"labels":{"type":["map","string"],"description_kind":"plain","computed":true},"name":{"type":"string","description_kind":"plain","optional":true,"computed":true},"target":{"type":["set",["object",{"address":"string","subnet_id":"string"}]],"description_kind":"plain","computed":true},"target_group_id":{"type":"string","description_kind":"plain","optional":true,"computed":true}},"description_kind":"plain"}},"yandex_loadtesting_agent":{"version":0,"block":{"attributes":{"agent_id":{"type":"string","description_kind":"plain","required":true},"compute_instance":{"type":["list",["object",{"boot_disk":["list",["object",{"auto_delete":"bool","device_name":"string","disk_id":"string","initialize_params":["list",["object",{"block_size":"number","description":"string","name":"string","size":"number","type":"string"}]]}]],"computed_metadata":["map","string"],"labels":["map","string"],"metadata":["map","string"],"network_interface":["list",["object",{"index":"number","ip_address":"string","ipv4":"bool","ipv6":"bool","ipv6_address":"string","mac_address":"string","nat":"bool","nat_ip_address":"string","nat_ip_version":"string","security_group_ids":["set","string"],"subnet_id":"string"}]],"platform_id":"string","resources":["list",["object",{"core_fraction":"number","cores":"number","memory":"number"}]],"service_account_id":"string","zone_id":"string"}]],"description_kind":"plain","computed":true},"compute_instance_id":{"type":"string","description_kind":"plain","computed":true},"description":{"type":"string","description_kind":"plain","computed":true},"folder_id":{"type":"string","description_kind":"plain","computed":true},"id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"labels":{"type":["map","string"],"description_kind":"plain","computed":true},"name":{"type":"string","description_kind":"plain","computed":true}},"description_kind":"plain"}},"yandex_lockbox_secret":{"version":1,"block":{"attributes":{"created_at":{"type":"string","description_kind":"plain","computed":true},"current_version":{"type":["list",["object",{"created_at":"string","description":"string","destroy_at":"string","id":"string","payload_entry_keys":["list","string"],"secret_id":"string","status":"string"}]],"description_kind":"plain","computed":true},"deletion_protection":{"type":"bool","description_kind":"plain","computed":true},"description":{"type":"string","description_kind":"plain","computed":true},"folder_id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"kms_key_id":{"type":"string","description_kind":"plain","computed":true},"labels":{"type":["map","string"],"description_kind":"plain","computed":true},"name":{"type":"string","description_kind":"plain","optional":true,"computed":true},"secret_id":{"type":"string","description_kind":"plain","optional":true},"status":{"type":"string","description_kind":"plain","computed":true}},"description_kind":"plain"}},"yandex_lockbox_secret_version":{"version":1,"block":{"attributes":{"entries":{"type":["list",["object",{"key":"string","text_value":"string"}]],"description_kind":"plain","computed":true},"id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"secret_id":{"type":"string","description_kind":"plain","required":true},"version_id":{"type":"string","description_kind":"plain","optional":true,"computed":true}},"description_kind":"plain"}},"yandex_logging_group":{"version":0,"block":{"attributes":{"cloud_id":{"type":"string","description_kind":"plain","computed":true},"created_at":{"type":"string","description_kind":"plain","computed":true},"data_stream":{"type":"string","description_kind":"plain","computed":true},"description":{"type":"string","description_kind":"plain","computed":true},"folder_id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"group_id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"labels":{"type":["map","string"],"description_kind":"plain","computed":true},"name":{"type":"string","description_kind":"plain","optional":true,"computed":true},"retention_period":{"type":"string","description_kind":"plain","computed":true},"status":{"type":"string","description_kind":"plain","computed":true}},"description_kind":"plain"}},"yandex_mdb_clickhouse_cluster":{"version":0,"block":{"attributes":{"admin_password":{"type":"string","description_kind":"plain","optional":true,"sensitive":true},"cluster_id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"copy_schema_on_new_hosts":{"type":"bool","description_kind":"plain","optional":true},"created_at":{"type":"string","description_kind":"plain","optional":true,"computed":true},"deletion_protection":{"type":"bool","description_kind":"plain","optional":true,"computed":true},"description":{"type":"string","description_kind":"plain","optional":true},"embedded_keeper":{"type":"bool","description_kind":"plain","optional":true,"computed":true},"environment":{"type":"string","description_kind":"plain","optional":true},"folder_id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"health":{"type":"string","description_kind":"plain","optional":true,"computed":true},"id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"labels":{"type":["map","string"],"description_kind":"plain","optional":true,"computed":true},"name":{"type":"string","description_kind":"plain","optional":true},"network_id":{"type":"string","description_kind":"plain","optional":true},"security_group_ids":{"type":["set","string"],"description_kind":"plain","optional":true,"computed":true},"service_account_id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"sql_database_management":{"type":"bool","description_kind":"plain","optional":true,"computed":true},"sql_user_management":{"type":"bool","description_kind":"plain","optional":true,"computed":true},"status":{"type":"string","description_kind":"plain","optional":true,"computed":true},"version":{"type":"string","description_kind":"plain","optional":true,"computed":true}},"block_types":{"access":{"nesting_mode":"list","block":{"attributes":{"data_lens":{"type":"bool","description_kind":"plain","optional":true},"data_transfer":{"type":"bool","description_kind":"plain","optional":true},"metrika":{"type":"bool","description_kind":"plain","optional":true},"serverless":{"type":"bool","description_kind":"plain","optional":true},"web_sql":{"type":"bool","description_kind":"plain","optional":true},"yandex_query":{"type":"bool","description_kind":"plain","optional":true}},"description_kind":"plain"},"max_items":1},"backup_window_start":{"nesting_mode":"list","block":{"attributes":{"hours":{"type":"number","description_kind":"plain","optional":true},"minutes":{"type":"number","description_kind":"plain","optional":true}},"description_kind":"plain"},"max_items":1},"clickhouse":{"nesting_mode":"list","block":{"block_types":{"config":{"nesting_mode":"list","block":{"attributes":{"background_fetches_pool_size":{"type":"number","description_kind":"plain","optional":true,"computed":true},"background_merges_mutations_concurrency_ratio":{"type":"number","description_kind":"plain","optional":true,"computed":true},"background_message_broker_schedule_pool_size":{"type":"number","description_kind":"plain","optional":true,"computed":true},"background_pool_size":{"type":"number","description_kind":"plain","optional":true,"computed":true},"background_schedule_pool_size":{"type":"number","description_kind":"plain","optional":true,"computed":true},"default_database":{"type":"string","description_kind":"plain","optional":true,"computed":true},"geobase_enabled":{"type":"bool","description_kind":"plain","optional":true,"computed":true},"geobase_uri":{"type":"string","description_kind":"plain","optional":true,"computed":true},"keep_alive_timeout":{"type":"number","description_kind":"plain","optional":true,"computed":true},"log_level":{"type":"string","description_kind":"plain","optional":true,"computed":true},"mark_cache_size":{"type":"number","description_kind":"plain","optional":true,"computed":true},"max_concurrent_queries":{"type":"number","description_kind":"plain","optional":true,"computed":true},"max_connections":{"type":"number","description_kind":"plain","optional":true,"computed":true},"max_partition_size_to_drop":{"type":"number","description_kind":"plain","optional":true,"computed":true},"max_table_size_to_drop":{"type":"number","description_kind":"plain","optional":true,"computed":true},"metric_log_enabled":{"type":"bool","description_kind":"plain","optional":true,"computed":true},"metric_log_retention_size":{"type":"number","description_kind":"plain","optional":true,"computed":true},"metric_log_retention_time":{"type":"number","description_kind":"plain","optional":true,"computed":true},"part_log_retention_size":{"type":"number","description_kind":"plain","optional":true,"computed":true},"part_log_retention_time":{"type":"number","description_kind":"plain","optional":true,"computed":true},"query_log_retention_size":{"type":"number","description_kind":"plain","optional":true,"computed":true},"query_log_retention_time":{"type":"number","description_kind":"plain","optional":true,"computed":true},"query_thread_log_enabled":{"type":"bool","description_kind":"plain","optional":true,"computed":true},"query_thread_log_retention_size":{"type":"number","description_kind":"plain","optional":true,"computed":true},"query_thread_log_retention_time":{"type":"number","description_kind":"plain","optional":true,"computed":true},"text_log_enabled":{"type":"bool","description_kind":"plain","optional":true,"computed":true},"text_log_level":{"type":"string","description_kind":"plain","optional":true,"computed":true},"text_log_retention_size":{"type":"number","description_kind":"plain","optional":true,"computed":true},"text_log_retention_time":{"type":"number","description_kind":"plain","optional":true,"computed":true},"timezone":{"type":"string","description_kind":"plain","optional":true,"computed":true},"total_memory_profiler_step":{"type":"number","description_kind":"plain","optional":true,"computed":true},"trace_log_enabled":{"type":"bool","description_kind":"plain","optional":true,"computed":true},"trace_log_retention_size":{"type":"number","description_kind":"plain","optional":true,"computed":true},"trace_log_retention_time":{"type":"number","description_kind":"plain","optional":true,"computed":true},"uncompressed_cache_size":{"type":"number","description_kind":"plain","optional":true,"computed":true}},"block_types":{"compression":{"nesting_mode":"list","block":{"attributes":{"level":{"type":"number","description_kind":"plain","optional":true},"method":{"type":"string","description_kind":"plain","optional":true},"min_part_size":{"type":"number","description_kind":"plain","optional":true},"min_part_size_ratio":{"type":"number","description_kind":"plain","optional":true}},"description_kind":"plain"}},"graphite_rollup":{"nesting_mode":"list","block":{"attributes":{"name":{"type":"string","description_kind":"plain","optional":true}},"block_types":{"pattern":{"nesting_mode":"list","block":{"attributes":{"function":{"type":"string","description_kind":"plain","optional":true},"regexp":{"type":"string","description_kind":"plain","optional":true,"computed":true}},"block_types":{"retention":{"nesting_mode":"list","block":{"attributes":{"age":{"type":"number","description_kind":"plain","optional":true},"precision":{"type":"number","description_kind":"plain","optional":true}},"description_kind":"plain"}}},"description_kind":"plain"}}},"description_kind":"plain"}},"kafka":{"nesting_mode":"list","block":{"attributes":{"enable_ssl_certificate_verification":{"type":"bool","description_kind":"plain","optional":true,"computed":true},"max_poll_interval_ms":{"type":"number","description_kind":"plain","optional":true,"computed":true},"sasl_mechanism":{"type":"string","description_kind":"plain","optional":true,"computed":true},"sasl_password":{"type":"string","description_kind":"plain","optional":true,"computed":true,"sensitive":true},"sasl_username":{"type":"string","description_kind":"plain","optional":true,"computed":true},"security_protocol":{"type":"string","description_kind":"plain","optional":true,"computed":true},"session_timeout_ms":{"type":"number","description_kind":"plain","optional":true,"computed":true}},"description_kind":"plain"},"max_items":1},"kafka_topic":{"nesting_mode":"list","block":{"attributes":{"name":{"type":"string","description_kind":"plain","optional":true}},"block_types":{"settings":{"nesting_mode":"list","block":{"attributes":{"enable_ssl_certificate_verification":{"type":"bool","description_kind":"plain","optional":true,"computed":true},"max_poll_interval_ms":{"type":"number","description_kind":"plain","optional":true,"computed":true},"sasl_mechanism":{"type":"string","description_kind":"plain","optional":true},"sasl_password":{"type":"string","description_kind":"plain","optional":true,"sensitive":true},"sasl_username":{"type":"string","description_kind":"plain","optional":true},"security_protocol":{"type":"string","description_kind":"plain","optional":true},"session_timeout_ms":{"type":"number","description_kind":"plain","optional":true,"computed":true}},"description_kind":"plain"},"max_items":1}},"description_kind":"plain"}},"merge_tree":{"nesting_mode":"list","block":{"attributes":{"cleanup_delay_period":{"type":"number","description_kind":"plain","optional":true,"computed":true},"max_avg_part_size_for_too_many_parts":{"type":"number","description_kind":"plain","optional":true,"computed":true},"max_bytes_to_merge_at_min_space_in_pool":{"type":"number","description_kind":"plain","optional":true,"computed":true},"max_number_of_merges_with_ttl_in_pool":{"type":"number","description_kind":"plain","optional":true,"computed":true},"max_parts_in_total":{"type":"number","description_kind":"plain","optional":true,"computed":true},"max_replicated_merges_in_queue":{"type":"number","description_kind":"plain","optional":true,"computed":true},"merge_selecting_sleep_ms":{"type":"number","description_kind":"plain","optional":true,"computed":true},"merge_with_recompression_ttl_timeout":{"type":"number","description_kind":"plain","optional":true,"computed":true},"merge_with_ttl_timeout":{"type":"number","description_kind":"plain","optional":true,"computed":true},"min_age_to_force_merge_on_partition_only":{"type":"bool","description_kind":"plain","optional":true,"computed":true},"min_age_to_force_merge_seconds":{"type":"number","description_kind":"plain","optional":true,"computed":true},"min_bytes_for_wide_part":{"type":"number","description_kind":"plain","optional":true,"computed":true},"min_rows_for_wide_part":{"type":"number","description_kind":"plain","optional":true,"computed":true},"number_of_free_entries_in_pool_to_lower_max_size_of_merge":{"type":"number","description_kind":"plain","optional":true,"computed":true},"parts_to_delay_insert":{"type":"number","description_kind":"plain","optional":true,"computed":true},"parts_to_throw_insert":{"type":"number","description_kind":"plain","optional":true,"computed":true},"replicated_deduplication_window":{"type":"number","description_kind":"plain","optional":true,"computed":true},"replicated_deduplication_window_seconds":{"type":"number","description_kind":"plain","optional":true,"computed":true},"ttl_only_drop_parts":{"type":"bool","description_kind":"plain","optional":true,"computed":true}},"description_kind":"plain"},"max_items":1},"rabbitmq":{"nesting_mode":"list","block":{"attributes":{"password":{"type":"string","description_kind":"plain","optional":true,"computed":true,"sensitive":true},"username":{"type":"string","description_kind":"plain","optional":true,"computed":true},"vhost":{"type":"string","description_kind":"plain","optional":true,"computed":true}},"description_kind":"plain"},"max_items":1}},"description_kind":"plain"},"max_items":1},"resources":{"nesting_mode":"list","block":{"attributes":{"disk_size":{"type":"number","description_kind":"plain","optional":true,"computed":true},"disk_type_id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"resource_preset_id":{"type":"string","description_kind":"plain","optional":true,"computed":true}},"description_kind":"plain"},"max_items":1}},"description_kind":"plain"},"max_items":1},"cloud_storage":{"nesting_mode":"list","block":{"attributes":{"data_cache_enabled":{"type":"bool","description_kind":"plain","optional":true,"computed":true},"data_cache_max_size":{"type":"number","description_kind":"plain","optional":true,"computed":true},"enabled":{"type":"bool","description_kind":"plain","optional":true},"move_factor":{"type":"number","description_kind":"plain","optional":true,"computed":true},"prefer_not_to_merge":{"type":"bool","description_kind":"plain","optional":true,"computed":true}},"description_kind":"plain"},"max_items":1},"database":{"nesting_mode":"set","block":{"attributes":{"name":{"type":"string","description_kind":"plain","optional":true}},"description_kind":"plain"}},"format_schema":{"nesting_mode":"set","block":{"attributes":{"name":{"type":"string","description_kind":"plain","optional":true},"type":{"type":"string","description_kind":"plain","optional":true},"uri":{"type":"string","description_kind":"plain","optional":true}},"description_kind":"plain"}},"host":{"nesting_mode":"list","block":{"attributes":{"assign_public_ip":{"type":"bool","description_kind":"plain","optional":true},"fqdn":{"type":"string","description_kind":"plain","optional":true,"computed":true},"shard_name":{"type":"string","description_kind":"plain","optional":true,"computed":true},"subnet_id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"type":{"type":"string","description_kind":"plain","optional":true},"zone":{"type":"string","description_kind":"plain","optional":true}},"description_kind":"plain"}},"maintenance_window":{"nesting_mode":"list","block":{"attributes":{"day":{"type":"string","description_kind":"plain","optional":true},"hour":{"type":"number","description_kind":"plain","optional":true},"type":{"type":"string","description_kind":"plain","optional":true}},"description_kind":"plain"},"max_items":1},"ml_model":{"nesting_mode":"set","block":{"attributes":{"name":{"type":"string","description_kind":"plain","optional":true},"type":{"type":"string","description_kind":"plain","optional":true},"uri":{"type":"string","description_kind":"plain","optional":true}},"description_kind":"plain"}},"shard":{"nesting_mode":"set","block":{"attributes":{"name":{"type":"string","description_kind":"plain","optional":true},"weight":{"type":"number","description_kind":"plain","optional":true,"computed":true}},"block_types":{"resources":{"nesting_mode":"list","block":{"attributes":{"disk_size":{"type":"number","description_kind":"plain","optional":true,"computed":true},"disk_type_id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"resource_preset_id":{"type":"string","description_kind":"plain","optional":true,"computed":true}},"description_kind":"plain"},"max_items":1}},"description_kind":"plain"}},"shard_group":{"nesting_mode":"list","block":{"attributes":{"description":{"type":"string","description_kind":"plain","optional":true},"name":{"type":"string","description_kind":"plain","optional":true},"shard_names":{"type":["list","string"],"description_kind":"plain","optional":true}},"description_kind":"plain"}},"user":{"nesting_mode":"set","block":{"attributes":{"name":{"type":"string","description_kind":"plain","optional":true},"password":{"type":"string","description_kind":"plain","optional":true,"sensitive":true}},"block_types":{"permission":{"nesting_mode":"set","block":{"attributes":{"database_name":{"type":"string","description_kind":"plain","optional":true}},"description_kind":"plain"}},"quota":{"nesting_mode":"set","block":{"attributes":{"errors":{"type":"number","description_kind":"plain","optional":true,"computed":true},"execution_time":{"type":"number","description_kind":"plain","optional":true,"computed":true},"interval_duration":{"type":"number","description_kind":"plain","optional":true},"queries":{"type":"number","description_kind":"plain","optional":true,"computed":true},"read_rows":{"type":"number","description_kind":"plain","optional":true,"computed":true},"result_rows":{"type":"number","description_kind":"plain","optional":true,"computed":true}},"description_kind":"plain"}},"settings":{"nesting_mode":"list","block":{"attributes":{"add_http_cors_header":{"type":"bool","description_kind":"plain","optional":true,"computed":true},"allow_ddl":{"type":"bool","description_kind":"plain","optional":true,"computed":true},"allow_introspection_functions":{"type":"bool","description_kind":"plain","optional":true,"computed":true},"allow_suspicious_low_cardinality_types":{"type":"bool","description_kind":"plain","optional":true,"computed":true},"async_insert":{"type":"bool","description_kind":"plain","optional":true,"computed":true},"async_insert_busy_timeout":{"type":"number","description_kind":"plain","optional":true,"computed":true},"async_insert_max_data_size":{"type":"number","description_kind":"plain","optional":true,"computed":true},"async_insert_stale_timeout":{"type":"number","description_kind":"plain","optional":true,"computed":true},"async_insert_threads":{"type":"number","description_kind":"plain","optional":true,"computed":true},"cancel_http_readonly_queries_on_client_close":{"type":"bool","description_kind":"plain","optional":true,"computed":true},"compile":{"type":"bool","description_kind":"plain","optional":true,"computed":true},"compile_expressions":{"type":"bool","description_kind":"plain","optional":true,"computed":true},"connect_timeout":{"type":"number","description_kind":"plain","optional":true,"computed":true},"connect_timeout_with_failover":{"type":"number","description_kind":"plain","optional":true,"computed":true},"count_distinct_implementation":{"type":"string","description_kind":"plain","optional":true,"computed":true},"distinct_overflow_mode":{"type":"string","description_kind":"plain","optional":true,"computed":true},"distributed_aggregation_memory_efficient":{"type":"bool","description_kind":"plain","optional":true,"computed":true},"distributed_ddl_task_timeout":{"type":"number","description_kind":"plain","optional":true,"computed":true},"distributed_product_mode":{"type":"string","description_kind":"plain","optional":true,"computed":true},"empty_result_for_aggregation_by_empty_set":{"type":"bool","description_kind":"plain","optional":true,"computed":true},"enable_http_compression":{"type":"bool","description_kind":"plain","optional":true,"computed":true},"fallback_to_stale_replicas_for_distributed_queries":{"type":"bool","description_kind":"plain","optional":true,"computed":true},"flatten_nested":{"type":"bool","description_kind":"plain","optional":true,"computed":true},"force_index_by_date":{"type":"bool","description_kind":"plain","optional":true,"computed":true},"force_primary_key":{"type":"bool","description_kind":"plain","optional":true,"computed":true},"group_by_overflow_mode":{"type":"string","description_kind":"plain","optional":true,"computed":true},"group_by_two_level_threshold":{"type":"number","description_kind":"plain","optional":true,"computed":true},"group_by_two_level_threshold_bytes":{"type":"number","description_kind":"plain","optional":true,"computed":true},"http_connection_timeout":{"type":"number","description_kind":"plain","optional":true,"computed":true},"http_headers_progress_interval":{"type":"number","description_kind":"plain","optional":true,"computed":true},"http_receive_timeout":{"type":"number","description_kind":"plain","optional":true,"computed":true},"http_send_timeout":{"type":"number","description_kind":"plain","optional":true,"computed":true},"input_format_defaults_for_omitted_fields":{"type":"bool","description_kind":"plain","optional":true,"computed":true},"input_format_import_nested_json":{"type":"bool","description_kind":"plain","optional":true,"computed":true},"input_format_parallel_parsing":{"type":"bool","description_kind":"plain","optional":true,"computed":true},"input_format_values_interpret_expressions":{"type":"bool","description_kind":"plain","optional":true,"computed":true},"insert_keeper_max_retries":{"type":"number","description_kind":"plain","optional":true,"computed":true},"insert_null_as_default":{"type":"bool","description_kind":"plain","optional":true,"computed":true},"insert_quorum":{"type":"number","description_kind":"plain","optional":true,"computed":true},"insert_quorum_timeout":{"type":"number","description_kind":"plain","optional":true,"computed":true},"join_overflow_mode":{"type":"string","description_kind":"plain","optional":true,"computed":true},"join_use_nulls":{"type":"bool","description_kind":"plain","optional":true,"computed":true},"joined_subquery_requires_alias":{"type":"bool","description_kind":"plain","optional":true,"computed":true},"local_filesystem_read_method":{"type":"string","description_kind":"plain","optional":true,"computed":true},"low_cardinality_allow_in_native_format":{"type":"bool","description_kind":"plain","optional":true,"computed":true},"max_ast_depth":{"type":"number","description_kind":"plain","optional":true,"computed":true},"max_ast_elements":{"type":"number","description_kind":"plain","optional":true,"computed":true},"max_block_size":{"type":"number","description_kind":"plain","optional":true,"computed":true},"max_bytes_before_external_group_by":{"type":"number","description_kind":"plain","optional":true,"computed":true},"max_bytes_before_external_sort":{"type":"number","description_kind":"plain","optional":true,"computed":true},"max_bytes_in_distinct":{"type":"number","description_kind":"plain","optional":true,"computed":true},"max_bytes_in_join":{"type":"number","description_kind":"plain","optional":true,"computed":true},"max_bytes_in_set":{"type":"number","description_kind":"plain","optional":true,"computed":true},"max_bytes_to_read":{"type":"number","description_kind":"plain","optional":true,"computed":true},"max_bytes_to_sort":{"type":"number","description_kind":"plain","optional":true,"computed":true},"max_bytes_to_transfer":{"type":"number","description_kind":"plain","optional":true,"computed":true},"max_columns_to_read":{"type":"number","description_kind":"plain","optional":true,"computed":true},"max_concurrent_queries_for_user":{"type":"number","description_kind":"plain","optional":true,"computed":true},"max_execution_time":{"type":"number","description_kind":"plain","optional":true,"computed":true},"max_expanded_ast_elements":{"type":"number","description_kind":"plain","optional":true,"computed":true},"max_final_threads":{"type":"number","description_kind":"plain","optional":true,"computed":true},"max_http_get_redirects":{"type":"number","description_kind":"plain","optional":true,"computed":true},"max_insert_block_size":{"type":"number","description_kind":"plain","optional":true,"computed":true},"max_memory_usage":{"type":"number","description_kind":"plain","optional":true,"computed":true},"max_memory_usage_for_user":{"type":"number","description_kind":"plain","optional":true,"computed":true},"max_network_bandwidth":{"type":"number","description_kind":"plain","optional":true,"computed":true},"max_network_bandwidth_for_user":{"type":"number","description_kind":"plain","optional":true,"computed":true},"max_parser_depth":{"type":"number","description_kind":"plain","optional":true,"computed":true},"max_query_size":{"type":"number","description_kind":"plain","optional":true,"computed":true},"max_read_buffer_size":{"type":"number","description_kind":"plain","optional":true,"computed":true},"max_replica_delay_for_distributed_queries":{"type":"number","description_kind":"plain","optional":true,"computed":true},"max_result_bytes":{"type":"number","description_kind":"plain","optional":true,"computed":true},"max_result_rows":{"type":"number","description_kind":"plain","optional":true,"computed":true},"max_rows_in_distinct":{"type":"number","description_kind":"plain","optional":true,"computed":true},"max_rows_in_join":{"type":"number","description_kind":"plain","optional":true,"computed":true},"max_rows_in_set":{"type":"number","description_kind":"plain","optional":true,"computed":true},"max_rows_to_group_by":{"type":"number","description_kind":"plain","optional":true,"computed":true},"max_rows_to_read":{"type":"number","description_kind":"plain","optional":true,"computed":true},"max_rows_to_sort":{"type":"number","description_kind":"plain","optional":true,"computed":true},"max_rows_to_transfer":{"type":"number","description_kind":"plain","optional":true,"computed":true},"max_temporary_columns":{"type":"number","description_kind":"plain","optional":true,"computed":true},"max_temporary_data_on_disk_size_for_query":{"type":"number","description_kind":"plain","optional":true,"computed":true},"max_temporary_data_on_disk_size_for_user":{"type":"number","description_kind":"plain","optional":true,"computed":true},"max_temporary_non_const_columns":{"type":"number","description_kind":"plain","optional":true,"computed":true},"max_threads":{"type":"number","description_kind":"plain","optional":true,"computed":true},"memory_overcommit_ratio_denominator":{"type":"number","description_kind":"plain","optional":true,"computed":true},"memory_overcommit_ratio_denominator_for_user":{"type":"number","description_kind":"plain","optional":true,"computed":true},"memory_profiler_sample_probability":{"type":"number","description_kind":"plain","optional":true,"computed":true},"memory_profiler_step":{"type":"number","description_kind":"plain","optional":true,"computed":true},"memory_usage_overcommit_max_wait_microseconds":{"type":"number","description_kind":"plain","optional":true,"computed":true},"merge_tree_max_bytes_to_use_cache":{"type":"number","description_kind":"plain","optional":true,"computed":true},"merge_tree_max_rows_to_use_cache":{"type":"number","description_kind":"plain","optional":true,"computed":true},"merge_tree_min_bytes_for_concurrent_read":{"type":"number","description_kind":"plain","optional":true,"computed":true},"merge_tree_min_rows_for_concurrent_read":{"type":"number","description_kind":"plain","optional":true,"computed":true},"min_bytes_to_use_direct_io":{"type":"number","description_kind":"plain","optional":true,"computed":true},"min_count_to_compile":{"type":"number","description_kind":"plain","optional":true,"computed":true},"min_count_to_compile_expression":{"type":"number","description_kind":"plain","optional":true,"computed":true},"min_execution_speed":{"type":"number","description_kind":"plain","optional":true,"computed":true},"min_execution_speed_bytes":{"type":"number","description_kind":"plain","optional":true,"computed":true},"min_insert_block_size_bytes":{"type":"number","description_kind":"plain","optional":true,"computed":true},"min_insert_block_size_rows":{"type":"number","description_kind":"plain","optional":true,"computed":true},"output_format_json_quote_64bit_integers":{"type":"bool","description_kind":"plain","optional":true,"computed":true},"output_format_json_quote_denormals":{"type":"bool","description_kind":"plain","optional":true,"computed":true},"priority":{"type":"number","description_kind":"plain","optional":true,"computed":true},"quota_mode":{"type":"string","description_kind":"plain","optional":true,"computed":true},"read_overflow_mode":{"type":"string","description_kind":"plain","optional":true,"computed":true},"readonly":{"type":"number","description_kind":"plain","optional":true,"computed":true},"receive_timeout":{"type":"number","description_kind":"plain","optional":true,"computed":true},"remote_filesystem_read_method":{"type":"string","description_kind":"plain","optional":true,"computed":true},"replication_alter_partitions_sync":{"type":"number","description_kind":"plain","optional":true,"computed":true},"result_overflow_mode":{"type":"string","description_kind":"plain","optional":true,"computed":true},"select_sequential_consistency":{"type":"bool","description_kind":"plain","optional":true,"computed":true},"send_progress_in_http_headers":{"type":"bool","description_kind":"plain","optional":true,"computed":true},"send_timeout":{"type":"number","description_kind":"plain","optional":true,"computed":true},"set_overflow_mode":{"type":"string","description_kind":"plain","optional":true,"computed":true},"skip_unavailable_shards":{"type":"bool","description_kind":"plain","optional":true,"computed":true},"sort_overflow_mode":{"type":"string","description_kind":"plain","optional":true,"computed":true},"timeout_before_checking_execution_speed":{"type":"number","description_kind":"plain","optional":true,"computed":true},"timeout_overflow_mode":{"type":"string","description_kind":"plain","optional":true,"computed":true},"transfer_overflow_mode":{"type":"string","description_kind":"plain","optional":true,"computed":true},"transform_null_in":{"type":"bool","description_kind":"plain","optional":true,"computed":true},"use_uncompressed_cache":{"type":"bool","description_kind":"plain","optional":true,"computed":true},"wait_for_async_insert":{"type":"bool","description_kind":"plain","optional":true,"computed":true},"wait_for_async_insert_timeout":{"type":"number","description_kind":"plain","optional":true,"computed":true}},"description_kind":"plain"},"max_items":1}},"description_kind":"plain"}},"zookeeper":{"nesting_mode":"list","block":{"block_types":{"resources":{"nesting_mode":"list","block":{"attributes":{"disk_size":{"type":"number","description_kind":"plain","optional":true,"computed":true},"disk_type_id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"resource_preset_id":{"type":"string","description_kind":"plain","optional":true,"computed":true}},"description_kind":"plain"},"max_items":1}},"description_kind":"plain"},"max_items":1}},"description_kind":"plain"}},"yandex_mdb_elasticsearch_cluster":{"version":0,"block":{"attributes":{"cluster_id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"config":{"type":["list",["object",{"admin_password":"string","data_node":["list",["object",{"resources":["list",["object",{"disk_size":"number","disk_type_id":"string","resource_preset_id":"string"}]]}]],"edition":"string","master_node":["list",["object",{"resources":["list",["object",{"disk_size":"number","disk_type_id":"string","resource_preset_id":"string"}]]}]],"plugins":["set","string"],"version":"string"}]],"description_kind":"plain","computed":true},"created_at":{"type":"string","description_kind":"plain","computed":true},"deletion_protection":{"type":"bool","description_kind":"plain","optional":true,"computed":true},"description":{"type":"string","description_kind":"plain","optional":true,"computed":true},"environment":{"type":"string","description_kind":"plain","computed":true},"folder_id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"health":{"type":"string","description_kind":"plain","computed":true},"host":{"type":["set",["object",{"assign_public_ip":"bool","fqdn":"string","name":"string","subnet_id":"string","type":"string","zone":"string"}]],"description_kind":"plain","computed":true},"id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"labels":{"type":["map","string"],"description_kind":"plain","optional":true,"computed":true},"maintenance_window":{"type":["list",["object",{"day":"string","hour":"number","type":"string"}]],"description_kind":"plain","computed":true},"name":{"type":"string","description_kind":"plain","optional":true,"computed":true},"network_id":{"type":"string","description_kind":"plain","computed":true},"security_group_ids":{"type":["set","string"],"description_kind":"plain","optional":true,"computed":true},"service_account_id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"status":{"type":"string","description_kind":"plain","computed":true}},"description_kind":"plain"}},"yandex_mdb_greenplum_cluster":{"version":0,"block":{"attributes":{"access":{"type":["list",["object",{"data_lens":"bool","data_transfer":"bool","web_sql":"bool"}]],"description_kind":"plain","computed":true},"assign_public_ip":{"type":"bool","description_kind":"plain","computed":true},"backup_window_start":{"type":["list",["object",{"hours":"number","minutes":"number"}]],"description_kind":"plain","computed":true},"cloud_storage":{"type":["list",["object",{"enable":"bool"}]],"description_kind":"plain","computed":true},"cluster_id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"created_at":{"type":"string","description_kind":"plain","computed":true},"deletion_protection":{"type":"bool","description_kind":"plain","computed":true},"description":{"type":"string","description_kind":"plain","computed":true},"environment":{"type":"string","description_kind":"plain","computed":true},"folder_id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"greenplum_config":{"type":["map","string"],"description_kind":"plain","optional":true,"computed":true},"health":{"type":"string","description_kind":"plain","computed":true},"id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"labels":{"type":["map","string"],"description_kind":"plain","computed":true},"maintenance_window":{"type":["list",["object",{"day":"string","hour":"number","type":"string"}]],"description_kind":"plain","computed":true},"master_host_count":{"type":"number","description_kind":"plain","computed":true},"master_hosts":{"type":["list",["object",{"assign_public_ip":"bool","fqdn":"string"}]],"description_kind":"plain","computed":true},"master_subcluster":{"type":["list",["object",{"resources":["list",["object",{"disk_size":"number","disk_type_id":"string","resource_preset_id":"string"}]]}]],"description_kind":"plain","computed":true},"name":{"type":"string","description_kind":"plain","optional":true,"computed":true},"network_id":{"type":"string","description_kind":"plain","computed":true},"security_group_ids":{"type":["set","string"],"description_kind":"plain","computed":true},"segment_host_count":{"type":"number","description_kind":"plain","computed":true},"segment_hosts":{"type":["list",["object",{"fqdn":"string"}]],"description_kind":"plain","computed":true},"segment_in_host":{"type":"number","description_kind":"plain","computed":true},"segment_subcluster":{"type":["list",["object",{"resources":["list",["object",{"disk_size":"number","disk_type_id":"string","resource_preset_id":"string"}]]}]],"description_kind":"plain","computed":true},"status":{"type":"string","description_kind":"plain","computed":true},"subnet_id":{"type":"string","description_kind":"plain","computed":true},"user_name":{"type":"string","description_kind":"plain","computed":true},"version":{"type":"string","description_kind":"plain","computed":true},"zone":{"type":"string","description_kind":"plain","computed":true}},"block_types":{"pooler_config":{"nesting_mode":"list","block":{"attributes":{"pool_client_idle_timeout":{"type":"number","description_kind":"plain","optional":true},"pool_size":{"type":"number","description_kind":"plain","optional":true},"pooling_mode":{"type":"string","description_kind":"plain","optional":true}},"description_kind":"plain"},"max_items":1},"pxf_config":{"nesting_mode":"list","block":{"attributes":{"connection_timeout":{"type":"number","description_kind":"plain","optional":true},"max_threads":{"type":"number","description_kind":"plain","optional":true},"pool_allow_core_thread_timeout":{"type":"bool","description_kind":"plain","optional":true},"pool_core_size":{"type":"number","description_kind":"plain","optional":true},"pool_max_size":{"type":"number","description_kind":"plain","optional":true},"pool_queue_capacity":{"type":"number","description_kind":"plain","optional":true},"upload_timeout":{"type":"number","description_kind":"plain","optional":true},"xms":{"type":"number","description_kind":"plain","optional":true},"xmx":{"type":"number","description_kind":"plain","optional":true}},"description_kind":"plain"}}},"description_kind":"plain"}},"yandex_mdb_kafka_cluster":{"version":0,"block":{"attributes":{"access":{"type":["list",["object",{"data_transfer":"bool"}]],"description_kind":"plain","computed":true},"cluster_id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"created_at":{"type":"string","description_kind":"plain","computed":true},"deletion_protection":{"type":"bool","description_kind":"plain","optional":true,"computed":true},"description":{"type":"string","description_kind":"plain","computed":true},"environment":{"type":"string","description_kind":"plain","computed":true},"folder_id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"health":{"type":"string","description_kind":"plain","computed":true},"host":{"type":["set",["object",{"assign_public_ip":"bool","health":"string","name":"string","role":"string","subnet_id":"string","zone_id":"string"}]],"description_kind":"plain","computed":true},"host_group_ids":{"type":["set","string"],"description_kind":"plain","computed":true},"id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"labels":{"type":["map","string"],"description_kind":"plain","computed":true},"maintenance_window":{"type":["list",["object",{"day":"string","hour":"number","type":"string"}]],"description_kind":"plain","computed":true},"name":{"type":"string","description_kind":"plain","optional":true,"computed":true},"network_id":{"type":"string","description_kind":"plain","computed":true},"security_group_ids":{"type":["set","string"],"description_kind":"plain","computed":true},"status":{"type":"string","description_kind":"plain","computed":true},"subnet_ids":{"type":["list","string"],"description_kind":"plain","optional":true}},"block_types":{"config":{"nesting_mode":"list","block":{"attributes":{"assign_public_ip":{"type":"bool","description_kind":"plain","optional":true},"brokers_count":{"type":"number","description_kind":"plain","optional":true},"schema_registry":{"type":"bool","description_kind":"plain","optional":true},"unmanaged_topics":{"type":"bool","description_kind":"plain","deprecated":true,"optional":true},"version":{"type":"string","description_kind":"plain","required":true},"zones":{"type":["list","string"],"description_kind":"plain","required":true}},"block_types":{"access":{"nesting_mode":"list","block":{"attributes":{"data_transfer":{"type":"bool","description_kind":"plain","optional":true}},"description_kind":"plain"},"max_items":1},"kafka":{"nesting_mode":"list","block":{"block_types":{"kafka_config":{"nesting_mode":"list","block":{"attributes":{"auto_create_topics_enable":{"type":"bool","description_kind":"plain","optional":true},"compression_type":{"type":"string","description_kind":"plain","optional":true},"default_replication_factor":{"type":"string","description_kind":"plain","optional":true},"log_flush_interval_messages":{"type":"string","description_kind":"plain","optional":true},"log_flush_interval_ms":{"type":"string","description_kind":"plain","optional":true},"log_flush_scheduler_interval_ms":{"type":"string","description_kind":"plain","optional":true},"log_preallocate":{"type":"bool","description_kind":"plain","optional":true},"log_retention_bytes":{"type":"string","description_kind":"plain","optional":true},"log_retention_hours":{"type":"string","description_kind":"plain","optional":true},"log_retention_minutes":{"type":"string","description_kind":"plain","optional":true},"log_retention_ms":{"type":"string","description_kind":"plain","optional":true},"log_segment_bytes":{"type":"string","description_kind":"plain","optional":true},"message_max_bytes":{"type":"string","description_kind":"plain","optional":true},"num_partitions":{"type":"string","description_kind":"plain","optional":true},"offsets_retention_minutes":{"type":"string","description_kind":"plain","optional":true},"replica_fetch_max_bytes":{"type":"string","description_kind":"plain","optional":true},"sasl_enabled_mechanisms":{"type":["set","string"],"description_kind":"plain","optional":true},"socket_receive_buffer_bytes":{"type":"string","description_kind":"plain","optional":true},"socket_send_buffer_bytes":{"type":"string","description_kind":"plain","optional":true},"ssl_cipher_suites":{"type":["set","string"],"description_kind":"plain","optional":true}},"description_kind":"plain"},"max_items":1},"resources":{"nesting_mode":"list","block":{"attributes":{"disk_size":{"type":"number","description_kind":"plain","required":true},"disk_type_id":{"type":"string","description_kind":"plain","required":true},"resource_preset_id":{"type":"string","description_kind":"plain","required":true}},"description_kind":"plain"},"min_items":1,"max_items":1}},"description_kind":"plain"},"min_items":1,"max_items":1},"zookeeper":{"nesting_mode":"list","block":{"block_types":{"resources":{"nesting_mode":"list","block":{"attributes":{"disk_size":{"type":"number","description_kind":"plain","optional":true,"computed":true},"disk_type_id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"resource_preset_id":{"type":"string","description_kind":"plain","optional":true,"computed":true}},"description_kind":"plain"},"max_items":1}},"description_kind":"plain"},"max_items":1}},"description_kind":"plain"},"max_items":1},"topic":{"nesting_mode":"list","block":{"attributes":{"name":{"type":"string","description_kind":"plain","required":true},"partitions":{"type":"number","description_kind":"plain","required":true},"replication_factor":{"type":"number","description_kind":"plain","required":true}},"block_types":{"topic_config":{"nesting_mode":"list","block":{"attributes":{"cleanup_policy":{"type":"string","description_kind":"plain","optional":true},"compression_type":{"type":"string","description_kind":"plain","optional":true},"delete_retention_ms":{"type":"string","description_kind":"plain","optional":true},"file_delete_delay_ms":{"type":"string","description_kind":"plain","optional":true},"flush_messages":{"type":"string","description_kind":"plain","optional":true},"flush_ms":{"type":"string","description_kind":"plain","optional":true},"max_message_bytes":{"type":"string","description_kind":"plain","optional":true},"min_compaction_lag_ms":{"type":"string","description_kind":"plain","optional":true},"min_insync_replicas":{"type":"string","description_kind":"plain","optional":true},"preallocate":{"type":"bool","description_kind":"plain","optional":true},"retention_bytes":{"type":"string","description_kind":"plain","optional":true},"retention_ms":{"type":"string","description_kind":"plain","optional":true},"segment_bytes":{"type":"string","description_kind":"plain","optional":true}},"description_kind":"plain"},"max_items":1}},"description_kind":"plain"}},"user":{"nesting_mode":"set","block":{"attributes":{"name":{"type":"string","description_kind":"plain","required":true},"password":{"type":"string","description_kind":"plain","required":true,"sensitive":true}},"block_types":{"permission":{"nesting_mode":"set","block":{"attributes":{"allow_hosts":{"type":["set","string"],"description_kind":"plain","optional":true},"role":{"type":"string","description_kind":"plain","required":true},"topic_name":{"type":"string","description_kind":"plain","required":true}},"description_kind":"plain"}}},"description_kind":"plain"}}},"description_kind":"plain"}},"yandex_mdb_kafka_connector":{"version":0,"block":{"attributes":{"cluster_id":{"type":"string","description_kind":"plain","required":true},"connector_config_mirrormaker":{"type":["list",["object",{"replication_factor":"number","source_cluster":["list",["object",{"alias":"string","external_cluster":["list",["object",{"bootstrap_servers":"string","sasl_mechanism":"string","sasl_password":"string","sasl_username":"string","security_protocol":"string"}]],"this_cluster":["list",["object",{}]]}]],"target_cluster":["list",["object",{"alias":"string","external_cluster":["list",["object",{"bootstrap_servers":"string","sasl_mechanism":"string","sasl_password":"string","sasl_username":"string","security_protocol":"string"}]],"this_cluster":["list",["object",{}]]}]],"topics":"string"}]],"description_kind":"plain","computed":true},"connector_config_s3_sink":{"type":["list",["object",{"file_compression_type":"string","file_max_records":"number","s3_connection":["list",["object",{"bucket_name":"string","external_s3":["list",["object",{"access_key_id":"string","endpoint":"string","region":"string","secret_access_key":"string"}]]}]],"topics":"string"}]],"description_kind":"plain","computed":true},"id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"name":{"type":"string","description_kind":"plain","required":true},"properties":{"type":["map","string"],"description_kind":"plain","computed":true},"tasks_max":{"type":"number","description_kind":"plain","computed":true}},"description_kind":"plain"}},"yandex_mdb_kafka_topic":{"version":0,"block":{"attributes":{"cluster_id":{"type":"string","description_kind":"plain","required":true},"id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"name":{"type":"string","description_kind":"plain","required":true},"partitions":{"type":"number","description_kind":"plain","computed":true},"replication_factor":{"type":"number","description_kind":"plain","computed":true},"topic_config":{"type":["list",["object",{"cleanup_policy":"string","compression_type":"string","delete_retention_ms":"string","file_delete_delay_ms":"string","flush_messages":"string","flush_ms":"string","max_message_bytes":"string","min_compaction_lag_ms":"string","min_insync_replicas":"string","preallocate":"bool","retention_bytes":"string","retention_ms":"string","segment_bytes":"string"}]],"description_kind":"plain","computed":true}},"description_kind":"plain"}},"yandex_mdb_kafka_user":{"version":0,"block":{"attributes":{"cluster_id":{"type":"string","description_kind":"plain","required":true},"id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"name":{"type":"string","description_kind":"plain","required":true},"password":{"type":"string","description_kind":"plain","computed":true,"sensitive":true},"permission":{"type":["set",["object",{"allow_hosts":["set","string"],"role":"string","topic_name":"string"}]],"description_kind":"plain","computed":true}},"description_kind":"plain"}},"yandex_mdb_mongodb_cluster":{"version":0,"block":{"attributes":{"cluster_id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"created_at":{"type":"string","description_kind":"plain","optional":true,"computed":true},"deletion_protection":{"type":"bool","description_kind":"plain","optional":true,"computed":true},"description":{"type":"string","description_kind":"plain","optional":true},"environment":{"type":"string","description_kind":"plain","optional":true},"folder_id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"health":{"type":"string","description_kind":"plain","optional":true,"computed":true},"id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"labels":{"type":["map","string"],"description_kind":"plain","optional":true,"computed":true},"name":{"type":"string","description_kind":"plain","optional":true},"network_id":{"type":"string","description_kind":"plain","optional":true},"security_group_ids":{"type":["set","string"],"description_kind":"plain","optional":true},"sharded":{"type":"bool","description_kind":"plain","optional":true,"computed":true},"status":{"type":"string","description_kind":"plain","optional":true,"computed":true}},"block_types":{"cluster_config":{"nesting_mode":"list","block":{"attributes":{"backup_retain_period_days":{"type":"number","description_kind":"plain","optional":true,"computed":true},"feature_compatibility_version":{"type":"string","description_kind":"plain","optional":true,"computed":true},"version":{"type":"string","description_kind":"plain","optional":true}},"block_types":{"access":{"nesting_mode":"list","block":{"attributes":{"data_lens":{"type":"bool","description_kind":"plain","optional":true},"data_transfer":{"type":"bool","description_kind":"plain","optional":true}},"description_kind":"plain"},"max_items":1},"backup_window_start":{"nesting_mode":"list","block":{"attributes":{"hours":{"type":"number","description_kind":"plain","optional":true},"minutes":{"type":"number","description_kind":"plain","optional":true}},"description_kind":"plain"},"max_items":1},"mongocfg":{"nesting_mode":"list","block":{"block_types":{"net":{"nesting_mode":"list","block":{"attributes":{"max_incoming_connections":{"type":"number","description_kind":"plain","optional":true}},"description_kind":"plain"},"max_items":1},"operation_profiling":{"nesting_mode":"list","block":{"attributes":{"mode":{"type":"string","description_kind":"plain","optional":true},"slow_op_threshold":{"type":"number","description_kind":"plain","optional":true}},"description_kind":"plain"},"max_items":1},"storage":{"nesting_mode":"list","block":{"block_types":{"wired_tiger":{"nesting_mode":"list","block":{"attributes":{"cache_size_gb":{"type":"number","description_kind":"plain","optional":true}},"description_kind":"plain"},"max_items":1}},"description_kind":"plain"},"max_items":1}},"description_kind":"plain"},"max_items":1},"mongod":{"nesting_mode":"list","block":{"block_types":{"audit_log":{"nesting_mode":"list","block":{"attributes":{"filter":{"type":"string","description_kind":"plain","optional":true},"runtime_configuration":{"type":"bool","description_kind":"plain","optional":true}},"description_kind":"plain"},"max_items":1},"net":{"nesting_mode":"list","block":{"attributes":{"compressors":{"type":["list","string"],"description_kind":"plain","optional":true},"max_incoming_connections":{"type":"number","description_kind":"plain","optional":true}},"description_kind":"plain"},"max_items":1},"operation_profiling":{"nesting_mode":"list","block":{"attributes":{"mode":{"type":"string","description_kind":"plain","optional":true},"slow_op_sample_rate":{"type":"number","description_kind":"plain","optional":true},"slow_op_threshold":{"type":"number","description_kind":"plain","optional":true}},"description_kind":"plain"},"max_items":1},"security":{"nesting_mode":"list","block":{"attributes":{"enable_encryption":{"type":"bool","description_kind":"plain","optional":true}},"block_types":{"kmip":{"nesting_mode":"list","block":{"attributes":{"client_certificate":{"type":"string","description_kind":"plain","optional":true},"key_identifier":{"type":"string","description_kind":"plain","optional":true},"port":{"type":"number","description_kind":"plain","optional":true},"server_ca":{"type":"string","description_kind":"plain","optional":true},"server_name":{"type":"string","description_kind":"plain","optional":true}},"description_kind":"plain"},"max_items":1}},"description_kind":"plain"},"max_items":1},"set_parameter":{"nesting_mode":"list","block":{"attributes":{"audit_authorization_success":{"type":"bool","description_kind":"plain","optional":true},"enable_flow_control":{"type":"bool","description_kind":"plain","optional":true},"min_snapshot_history_window_in_seconds":{"type":"number","description_kind":"plain","optional":true}},"description_kind":"plain"},"max_items":1},"storage":{"nesting_mode":"list","block":{"block_types":{"journal":{"nesting_mode":"list","block":{"attributes":{"commit_interval":{"type":"number","description_kind":"plain","optional":true}},"description_kind":"plain"},"max_items":1},"wired_tiger":{"nesting_mode":"list","block":{"attributes":{"block_compressor":{"type":"string","description_kind":"plain","optional":true},"cache_size_gb":{"type":"number","description_kind":"plain","optional":true},"prefix_compression":{"type":"bool","description_kind":"plain","optional":true}},"description_kind":"plain"},"max_items":1}},"description_kind":"plain"},"max_items":1}},"description_kind":"plain"},"max_items":1},"mongos":{"nesting_mode":"list","block":{"block_types":{"net":{"nesting_mode":"list","block":{"attributes":{"compressors":{"type":["list","string"],"description_kind":"plain","optional":true},"max_incoming_connections":{"type":"number","description_kind":"plain","optional":true}},"description_kind":"plain"},"max_items":1}},"description_kind":"plain"},"max_items":1},"performance_diagnostics":{"nesting_mode":"list","block":{"attributes":{"enabled":{"type":"bool","description_kind":"plain","optional":true}},"description_kind":"plain"},"max_items":1}},"description_kind":"plain"},"max_items":1},"database":{"nesting_mode":"set","block":{"attributes":{"name":{"type":"string","description_kind":"plain","optional":true}},"description_kind":"plain","deprecated":true}},"host":{"nesting_mode":"list","block":{"attributes":{"assign_public_ip":{"type":"bool","description_kind":"plain","optional":true},"health":{"type":"string","description_kind":"plain","optional":true,"computed":true},"name":{"type":"string","description_kind":"plain","optional":true,"computed":true},"role":{"type":"string","description_kind":"plain","optional":true,"computed":true},"shard_name":{"type":"string","description_kind":"plain","optional":true,"computed":true},"subnet_id":{"type":"string","description_kind":"plain","optional":true},"type":{"type":"string","description_kind":"plain","optional":true},"zone_id":{"type":"string","description_kind":"plain","optional":true}},"block_types":{"host_parameters":{"nesting_mode":"list","block":{"attributes":{"hidden":{"type":"bool","description_kind":"plain","optional":true},"priority":{"type":"number","description_kind":"plain","optional":true},"secondary_delay_secs":{"type":"number","description_kind":"plain","optional":true},"tags":{"type":["map","string"],"description_kind":"plain","optional":true}},"description_kind":"plain"},"max_items":1}},"description_kind":"plain"}},"maintenance_window":{"nesting_mode":"list","block":{"attributes":{"day":{"type":"string","description_kind":"plain","optional":true},"hour":{"type":"number","description_kind":"plain","optional":true},"type":{"type":"string","description_kind":"plain","optional":true}},"description_kind":"plain"},"max_items":1},"resources":{"nesting_mode":"list","block":{"attributes":{"disk_size":{"type":"number","description_kind":"plain","optional":true},"disk_type_id":{"type":"string","description_kind":"plain","optional":true},"resource_preset_id":{"type":"string","description_kind":"plain","optional":true}},"description_kind":"plain","deprecated":true},"max_items":1},"resources_mongocfg":{"nesting_mode":"list","block":{"attributes":{"disk_size":{"type":"number","description_kind":"plain","optional":true},"disk_type_id":{"type":"string","description_kind":"plain","optional":true},"resource_preset_id":{"type":"string","description_kind":"plain","optional":true}},"description_kind":"plain"},"max_items":1},"resources_mongod":{"nesting_mode":"list","block":{"attributes":{"disk_size":{"type":"number","description_kind":"plain","optional":true},"disk_type_id":{"type":"string","description_kind":"plain","optional":true},"resource_preset_id":{"type":"string","description_kind":"plain","optional":true}},"description_kind":"plain"},"max_items":1},"resources_mongoinfra":{"nesting_mode":"list","block":{"attributes":{"disk_size":{"type":"number","description_kind":"plain","optional":true},"disk_type_id":{"type":"string","description_kind":"plain","optional":true},"resource_preset_id":{"type":"string","description_kind":"plain","optional":true}},"description_kind":"plain"},"max_items":1},"resources_mongos":{"nesting_mode":"list","block":{"attributes":{"disk_size":{"type":"number","description_kind":"plain","optional":true},"disk_type_id":{"type":"string","description_kind":"plain","optional":true},"resource_preset_id":{"type":"string","description_kind":"plain","optional":true}},"description_kind":"plain"},"max_items":1},"restore":{"nesting_mode":"list","block":{"attributes":{"backup_id":{"type":"string","description_kind":"plain","optional":true},"time":{"type":"string","description_kind":"plain","optional":true}},"description_kind":"plain"},"max_items":1},"user":{"nesting_mode":"set","block":{"attributes":{"name":{"type":"string","description_kind":"plain","optional":true},"password":{"type":"string","description_kind":"plain","optional":true,"sensitive":true}},"block_types":{"permission":{"nesting_mode":"set","block":{"attributes":{"database_name":{"type":"string","description_kind":"plain","optional":true},"roles":{"type":["list","string"],"description_kind":"plain","optional":true}},"description_kind":"plain"}}},"description_kind":"plain","deprecated":true}}},"description_kind":"plain"}},"yandex_mdb_mongodb_database":{"version":0,"block":{"attributes":{"cluster_id":{"type":"string","description_kind":"plain","required":true},"id":{"type":"string","description_kind":"plain","computed":true},"name":{"type":"string","description_kind":"plain","required":true}},"description_kind":"plain"}},"yandex_mdb_mongodb_user":{"version":0,"block":{"attributes":{"cluster_id":{"type":"string","description_kind":"plain","required":true},"id":{"type":"string","description_kind":"plain","computed":true},"name":{"type":"string","description_kind":"plain","required":true},"password":{"type":"string","description_kind":"plain","computed":true,"sensitive":true}},"block_types":{"permission":{"nesting_mode":"set","block":{"attributes":{"database_name":{"type":"string","description_kind":"plain","required":true},"roles":{"type":["set","string"],"description_kind":"plain","optional":true}},"description_kind":"plain"}}},"description_kind":"plain"}},"yandex_mdb_mysql_cluster":{"version":0,"block":{"attributes":{"backup_retain_period_days":{"type":"number","description_kind":"plain","computed":true},"backup_window_start":{"type":["list",["object",{"hours":"number","minutes":"number"}]],"description_kind":"plain","computed":true},"cluster_id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"created_at":{"type":"string","description_kind":"plain","computed":true},"database":{"type":["set",["object",{"name":"string"}]],"description_kind":"plain","computed":true},"deletion_protection":{"type":"bool","description_kind":"plain","optional":true,"computed":true},"description":{"type":"string","description_kind":"plain","optional":true},"environment":{"type":"string","description_kind":"plain","computed":true},"folder_id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"health":{"type":"string","description_kind":"plain","computed":true},"host":{"type":["list",["object",{"assign_public_ip":"bool","backup_priority":"number","fqdn":"string","priority":"number","replication_source":"string","subnet_id":"string","zone":"string"}]],"description_kind":"plain","computed":true},"host_group_ids":{"type":["set","string"],"description_kind":"plain","computed":true},"id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"labels":{"type":["map","string"],"description_kind":"plain","optional":true},"maintenance_window":{"type":["list",["object",{"day":"string","hour":"number","type":"string"}]],"description_kind":"plain","computed":true},"mysql_config":{"type":["map","string"],"description_kind":"plain","optional":true,"computed":true},"name":{"type":"string","description_kind":"plain","optional":true,"computed":true},"network_id":{"type":"string","description_kind":"plain","computed":true},"performance_diagnostics":{"type":["list",["object",{"enabled":"bool","sessions_sampling_interval":"number","statements_sampling_interval":"number"}]],"description_kind":"plain","computed":true},"resources":{"type":["list",["object",{"disk_size":"number","disk_type_id":"string","resource_preset_id":"string"}]],"description_kind":"plain","computed":true},"security_group_ids":{"type":["set","string"],"description_kind":"plain","computed":true},"status":{"type":"string","description_kind":"plain","computed":true},"user":{"type":["list",["object",{"authentication_plugin":"string","connection_limits":["list",["object",{"max_connections_per_hour":"number","max_questions_per_hour":"number","max_updates_per_hour":"number","max_user_connections":"number"}]],"global_permissions":["set","string"],"name":"string","password":"string","permission":["set",["object",{"database_name":"string","roles":["list","string"]}]]}]],"description_kind":"plain","computed":true},"version":{"type":"string","description_kind":"plain","computed":true}},"block_types":{"access":{"nesting_mode":"list","block":{"attributes":{"data_lens":{"type":"bool","description_kind":"plain","computed":true},"data_transfer":{"type":"bool","description_kind":"plain","computed":true},"web_sql":{"type":"bool","description_kind":"plain","computed":true}},"description_kind":"plain"},"max_items":1}},"description_kind":"plain"}},"yandex_mdb_mysql_database":{"version":0,"block":{"attributes":{"cluster_id":{"type":"string","description_kind":"plain","required":true},"id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"name":{"type":"string","description_kind":"plain","required":true}},"description_kind":"plain"}},"yandex_mdb_mysql_user":{"version":0,"block":{"attributes":{"authentication_plugin":{"type":"string","description_kind":"plain","computed":true},"cluster_id":{"type":"string","description_kind":"plain","required":true},"connection_limits":{"type":["list",["object",{"max_connections_per_hour":"number","max_questions_per_hour":"number","max_updates_per_hour":"number","max_user_connections":"number"}]],"description_kind":"plain","computed":true},"global_permissions":{"type":["set","string"],"description_kind":"plain","computed":true},"id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"name":{"type":"string","description_kind":"plain","required":true}},"block_types":{"permission":{"nesting_mode":"set","block":{"attributes":{"database_name":{"type":"string","description_kind":"plain","computed":true},"roles":{"type":["list","string"],"description_kind":"plain","optional":true}},"description_kind":"plain"}}},"description_kind":"plain"}},"yandex_mdb_opensearch_cluster":{"version":0,"block":{"attributes":{"cluster_id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"created_at":{"type":"string","description_kind":"plain","computed":true},"deletion_protection":{"type":"bool","description_kind":"plain","optional":true,"computed":true},"description":{"type":"string","description_kind":"plain","optional":true,"computed":true},"environment":{"type":"string","description_kind":"plain","computed":true},"folder_id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"health":{"type":"string","description_kind":"plain","computed":true},"hosts":{"type":["set",["object",{"assign_public_ip":"bool","fqdn":"string","roles":["set","string"],"subnet_id":"string","type":"string","zone":"string"}]],"description_kind":"plain","computed":true},"id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"labels":{"type":["map","string"],"description_kind":"plain","optional":true,"computed":true},"maintenance_window":{"type":["list",["object",{"day":"string","hour":"number","type":"string"}]],"description_kind":"plain","computed":true},"name":{"type":"string","description_kind":"plain","optional":true,"computed":true},"network_id":{"type":"string","description_kind":"plain","computed":true},"security_group_ids":{"type":["set","string"],"description_kind":"plain","optional":true,"computed":true},"service_account_id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"status":{"type":"string","description_kind":"plain","computed":true}},"block_types":{"config":{"nesting_mode":"list","block":{"attributes":{"admin_password":{"type":"string","description_kind":"plain","optional":true,"computed":true,"sensitive":true},"version":{"type":"string","description_kind":"plain","optional":true,"computed":true}},"block_types":{"dashboards":{"nesting_mode":"list","block":{"block_types":{"node_groups":{"nesting_mode":"set","block":{"attributes":{"assign_public_ip":{"type":"bool","description_kind":"plain","optional":true,"computed":true},"hosts_count":{"type":"number","description_kind":"plain","required":true},"name":{"type":"string","description_kind":"plain","required":true},"subnet_ids":{"type":["set","string"],"description_kind":"plain","optional":true,"computed":true},"zone_ids":{"type":["set","string"],"description_kind":"plain","optional":true,"computed":true}},"block_types":{"resources":{"nesting_mode":"set","block":{"attributes":{"disk_size":{"type":"number","description_kind":"plain","required":true},"disk_type_id":{"type":"string","description_kind":"plain","required":true},"resource_preset_id":{"type":"string","description_kind":"plain","required":true}},"description_kind":"plain"},"min_items":1,"max_items":1}},"description_kind":"plain"},"min_items":1}},"description_kind":"plain"}},"opensearch":{"nesting_mode":"list","block":{"attributes":{"plugins":{"type":["set","string"],"description_kind":"plain","optional":true,"computed":true}},"block_types":{"node_groups":{"nesting_mode":"set","block":{"attributes":{"assign_public_ip":{"type":"bool","description_kind":"plain","optional":true,"computed":true},"hosts_count":{"type":"number","description_kind":"plain","computed":true},"name":{"type":"string","description_kind":"plain","computed":true},"roles":{"type":["set","string"],"description_kind":"plain","optional":true,"computed":true},"subnet_ids":{"type":["set","string"],"description_kind":"plain","optional":true,"computed":true},"zone_ids":{"type":["set","string"],"description_kind":"plain","optional":true,"computed":true}},"block_types":{"resources":{"nesting_mode":"set","block":{"attributes":{"disk_size":{"type":"number","description_kind":"plain","required":true},"disk_type_id":{"type":"string","description_kind":"plain","required":true},"resource_preset_id":{"type":"string","description_kind":"plain","required":true}},"description_kind":"plain"},"min_items":1,"max_items":1}},"description_kind":"plain"},"min_items":1}},"description_kind":"plain"},"min_items":1}},"description_kind":"plain"}},"timeouts":{"nesting_mode":"single","block":{"attributes":{"create":{"type":"string","description_kind":"plain","optional":true}},"description_kind":"plain"}}},"description_kind":"plain"}},"yandex_mdb_postgresql_cluster":{"version":0,"block":{"attributes":{"cluster_id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"config":{"type":["list",["object",{"access":["list",["object",{"data_lens":"bool","data_transfer":"bool","serverless":"bool","web_sql":"bool"}]],"autofailover":"bool","backup_retain_period_days":"number","backup_window_start":["list",["object",{"hours":"number","minutes":"number"}]],"disk_size_autoscaling":["list",["object",{"disk_size_limit":"number","emergency_usage_threshold":"number","planned_usage_threshold":"number"}]],"performance_diagnostics":["list",["object",{"enabled":"bool","sessions_sampling_interval":"number","statements_sampling_interval":"number"}]],"pooler_config":["list",["object",{"pool_discard":"bool","pooling_mode":"string"}]],"postgresql_config":["map","string"],"resources":["list",["object",{"disk_size":"number","disk_type_id":"string","resource_preset_id":"string"}]],"version":"string"}]],"description_kind":"plain","computed":true},"created_at":{"type":"string","description_kind":"plain","computed":true},"database":{"type":["set",["object",{"extension":["set",["object",{"name":"string","version":"string"}]],"lc_collate":"string","lc_type":"string","name":"string","owner":"string","template_db":"string"}]],"description_kind":"plain","computed":true},"deletion_protection":{"type":"bool","description_kind":"plain","optional":true,"computed":true},"description":{"type":"string","description_kind":"plain","optional":true},"environment":{"type":"string","description_kind":"plain","computed":true},"folder_id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"health":{"type":"string","description_kind":"plain","computed":true},"host":{"type":["list",["object",{"assign_public_ip":"bool","fqdn":"string","priority":"number","replication_source":"string","role":"string","subnet_id":"string","zone":"string"}]],"description_kind":"plain","computed":true},"host_group_ids":{"type":["set","string"],"description_kind":"plain","computed":true},"id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"labels":{"type":["map","string"],"description_kind":"plain","computed":true},"maintenance_window":{"type":["list",["object",{"day":"string","hour":"number","type":"string"}]],"description_kind":"plain","computed":true},"name":{"type":"string","description_kind":"plain","optional":true,"computed":true},"network_id":{"type":"string","description_kind":"plain","computed":true},"security_group_ids":{"type":["set","string"],"description_kind":"plain","computed":true},"status":{"type":"string","description_kind":"plain","computed":true},"user":{"type":["list",["object",{"conn_limit":"number","grants":["list","string"],"login":"bool","name":"string","permission":["set",["object",{"database_name":"string"}]],"settings":["map","string"]}]],"description_kind":"plain","computed":true}},"description_kind":"plain"}},"yandex_mdb_postgresql_database":{"version":0,"block":{"attributes":{"cluster_id":{"type":"string","description_kind":"plain","required":true},"deletion_protection":{"type":"string","description_kind":"plain","optional":true},"id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"lc_collate":{"type":"string","description_kind":"plain","optional":true,"computed":true},"lc_type":{"type":"string","description_kind":"plain","optional":true,"computed":true},"name":{"type":"string","description_kind":"plain","required":true},"owner":{"type":"string","description_kind":"plain","optional":true,"computed":true},"template_db":{"type":"string","description_kind":"plain","optional":true,"computed":true}},"block_types":{"extension":{"nesting_mode":"set","block":{"attributes":{"name":{"type":"string","description_kind":"plain","required":true},"version":{"type":"string","description_kind":"plain","optional":true}},"description_kind":"plain"}}},"description_kind":"plain"}},"yandex_mdb_postgresql_user":{"version":0,"block":{"attributes":{"cluster_id":{"type":"string","description_kind":"plain","required":true},"conn_limit":{"type":"number","description_kind":"plain","optional":true},"deletion_protection":{"type":"string","description_kind":"plain","optional":true},"grants":{"type":["list","string"],"description_kind":"plain","computed":true},"id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"login":{"type":"bool","description_kind":"plain","optional":true},"name":{"type":"string","description_kind":"plain","required":true},"password":{"type":"string","description_kind":"plain","computed":true,"sensitive":true},"permission":{"type":["set",["object",{"database_name":"string"}]],"description_kind":"plain","computed":true},"settings":{"type":["map","string"],"description_kind":"plain","optional":true,"computed":true}},"description_kind":"plain"}},"yandex_mdb_redis_cluster":{"version":0,"block":{"attributes":{"announce_hostnames":{"type":"bool","description_kind":"plain","computed":true},"cluster_id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"config":{"type":["list",["object",{"client_output_buffer_limit_normal":"string","client_output_buffer_limit_pubsub":"string","databases":"number","maxmemory_percent":"number","maxmemory_policy":"string","notify_keyspace_events":"string","slowlog_log_slower_than":"number","slowlog_max_len":"number","timeout":"number","version":"string"}]],"description_kind":"plain","computed":true},"created_at":{"type":"string","description_kind":"plain","computed":true},"deletion_protection":{"type":"bool","description_kind":"plain","optional":true,"computed":true},"description":{"type":"string","description_kind":"plain","computed":true},"environment":{"type":"string","description_kind":"plain","computed":true},"folder_id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"health":{"type":"string","description_kind":"plain","computed":true},"host":{"type":["list",["object",{"assign_public_ip":"bool","fqdn":"string","replica_priority":"number","shard_name":"string","subnet_id":"string","zone":"string"}]],"description_kind":"plain","computed":true},"id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"labels":{"type":["map","string"],"description_kind":"plain","computed":true},"maintenance_window":{"type":["list",["object",{"day":"string","hour":"number","type":"string"}]],"description_kind":"plain","computed":true},"name":{"type":"string","description_kind":"plain","optional":true,"computed":true},"network_id":{"type":"string","description_kind":"plain","computed":true},"persistence_mode":{"type":"string","description_kind":"plain","computed":true},"resources":{"type":["list",["object",{"disk_size":"number","disk_type_id":"string","resource_preset_id":"string"}]],"description_kind":"plain","computed":true},"security_group_ids":{"type":["set","string"],"description_kind":"plain","computed":true},"sharded":{"type":"bool","description_kind":"plain","computed":true},"status":{"type":"string","description_kind":"plain","computed":true},"tls_enabled":{"type":"bool","description_kind":"plain","computed":true}},"description_kind":"plain"}},"yandex_mdb_sqlserver_cluster":{"version":0,"block":{"attributes":{"backup_window_start":{"type":["list",["object",{"hours":"number","minutes":"number"}]],"description_kind":"plain","computed":true},"cluster_id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"created_at":{"type":"string","description_kind":"plain","computed":true},"database":{"type":["list",["object",{"name":"string"}]],"description_kind":"plain","computed":true},"deletion_protection":{"type":"bool","description_kind":"plain","optional":true,"computed":true},"description":{"type":"string","description_kind":"plain","computed":true},"environment":{"type":"string","description_kind":"plain","computed":true},"folder_id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"health":{"type":"string","description_kind":"plain","computed":true},"host":{"type":["list",["object",{"assign_public_ip":"bool","fqdn":"string","subnet_id":"string","zone":"string"}]],"description_kind":"plain","computed":true},"host_group_ids":{"type":["set","string"],"description_kind":"plain","computed":true},"id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"labels":{"type":["map","string"],"description_kind":"plain","computed":true},"name":{"type":"string","description_kind":"plain","optional":true,"computed":true},"network_id":{"type":"string","description_kind":"plain","computed":true},"resources":{"type":["list",["object",{"disk_size":"number","disk_type_id":"string","resource_preset_id":"string"}]],"description_kind":"plain","computed":true},"security_group_ids":{"type":["set","string"],"description_kind":"plain","computed":true},"sqlcollation":{"type":"string","description_kind":"plain","optional":true,"computed":true},"sqlserver_config":{"type":["map","string"],"description_kind":"plain","optional":true,"computed":true},"status":{"type":"string","description_kind":"plain","computed":true},"user":{"type":["list",["object",{"name":"string","password":"string","permission":["set",["object",{"database_name":"string","roles":["set","string"]}]]}]],"description_kind":"plain","computed":true},"version":{"type":"string","description_kind":"plain","computed":true}},"description_kind":"plain"}},"yandex_message_queue":{"version":0,"block":{"attributes":{"access_key":{"type":"string","description_kind":"plain","optional":true},"arn":{"type":"string","description_kind":"plain","computed":true},"id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"name":{"type":"string","description_kind":"plain","required":true},"region_id":{"type":"string","description_kind":"plain","optional":true},"secret_key":{"type":"string","description_kind":"plain","optional":true,"sensitive":true},"url":{"type":"string","description_kind":"plain","computed":true}},"description_kind":"plain"}},"yandex_monitoring_dashboard":{"version":0,"block":{"attributes":{"dashboard_id":{"type":"string","description":"Dashboard ID","description_kind":"plain","optional":true},"description":{"type":"string","description":"Dashboard description","description_kind":"plain","optional":true},"folder_id":{"type":"string","description":"Folder ID","description_kind":"plain","optional":true,"computed":true},"id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"labels":{"type":["map","string"],"description":"Dashboard labels","description_kind":"plain","computed":true},"name":{"type":"string","description":"Dashboard name, used as local identifier in folder_id","description_kind":"plain","optional":true},"parametrization":{"type":["list",["object",{"parameters":["list",["object",{"custom":["list",["object",{"default_values":["list","string"],"multiselectable":"bool","values":["list","string"]}]],"description":"string","hidden":"bool","id":"string","label_values":["list",["object",{"default_values":["list","string"],"folder_id":"string","label_key":"string","multiselectable":"bool","selectors":"string"}]],"text":["list",["object",{"default_value":"string"}]],"title":"string"}]],"selectors":"string"}]],"description":"Dashboard parametrization","description_kind":"plain","computed":true},"title":{"type":"string","description":"Dashboard title","description_kind":"plain","computed":true},"widgets":{"type":["list",["object",{"chart":["list",["object",{"chart_id":"string","description":"string","display_legend":"bool","freeze":"string","name_hiding_settings":["list",["object",{"names":["list","string"],"positive":"bool"}]],"queries":["list",["object",{"downsampling":["list",["object",{"disabled":"bool","gap_filling":"string","grid_aggregation":"string","grid_interval":"number","max_points":"number"}]],"target":["list",["object",{"hidden":"bool","query":"string","text_mode":"bool"}]]}]],"series_overrides":["list",["object",{"name":"string","settings":["list",["object",{"color":"string","grow_down":"bool","name":"string","stack_name":"string","type":"string","yaxis_position":"string"}]],"target_index":"string"}]],"title":"string","visualization_settings":["list",["object",{"aggregation":"string","color_scheme_settings":["list",["object",{"automatic":["list",["object",{}]],"gradient":["list",["object",{"green_value":"string","red_value":"string","violet_value":"string","yellow_value":"string"}]],"standard":["list",["object",{}]]}]],"heatmap_settings":["list",["object",{"green_value":"string","red_value":"string","violet_value":"string","yellow_value":"string"}]],"interpolate":"string","normalize":"bool","show_labels":"bool","title":"string","type":"string","yaxis_settings":["list",["object",{"left":["list",["object",{"max":"string","min":"string","precision":"number","title":"string","type":"string","unit_format":"string"}]],"right":["list",["object",{"max":"string","min":"string","precision":"number","title":"string","type":"string","unit_format":"string"}]]}]]}]]}]],"position":["list",["object",{"h":"number","w":"number","x":"number","y":"number"}]],"text":["list",["object",{"text":"string"}]],"title":["list",["object",{"size":"string","text":"string"}]]}]],"description":"Widgets","description_kind":"plain","computed":true}},"description_kind":"plain"}},"yandex_organizationmanager_group":{"version":0,"block":{"attributes":{"created_at":{"type":"string","description_kind":"plain","computed":true},"description":{"type":"string","description_kind":"plain","computed":true},"group_id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"members":{"type":["list",["object",{"id":"string","type":"string"}]],"description_kind":"plain","computed":true},"name":{"type":"string","description_kind":"plain","optional":true,"computed":true},"organization_id":{"type":"string","description_kind":"plain","optional":true}},"description_kind":"plain"}},"yandex_organizationmanager_os_login_settings":{"version":0,"block":{"attributes":{"id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"organization_id":{"type":"string","description_kind":"plain","optional":true,"computed":true}},"block_types":{"ssh_certificate_settings":{"nesting_mode":"list","block":{"attributes":{"enabled":{"type":"bool","description_kind":"plain","optional":true}},"description_kind":"plain"},"max_items":1},"user_ssh_key_settings":{"nesting_mode":"list","block":{"attributes":{"allow_manage_own_keys":{"type":"bool","description_kind":"plain","optional":true},"enabled":{"type":"bool","description_kind":"plain","optional":true}},"description_kind":"plain"},"max_items":1}},"description_kind":"plain"}},"yandex_organizationmanager_saml_federation":{"version":0,"block":{"attributes":{"auto_create_account_on_login":{"type":"bool","description_kind":"plain","computed":true},"case_insensitive_name_ids":{"type":"bool","description_kind":"plain","computed":true},"cookie_max_age":{"type":"string","description_kind":"plain","computed":true},"created_at":{"type":"string","description_kind":"plain","computed":true},"description":{"type":"string","description_kind":"plain","computed":true},"federation_id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"issuer":{"type":"string","description_kind":"plain","computed":true},"labels":{"type":["map","string"],"description_kind":"plain","optional":true},"name":{"type":"string","description_kind":"plain","optional":true,"computed":true},"organization_id":{"type":"string","description_kind":"plain","optional":true},"security_settings":{"type":["list",["object",{"encrypted_assertions":"bool"}]],"description_kind":"plain","computed":true},"sso_binding":{"type":"string","description_kind":"plain","computed":true},"sso_url":{"type":"string","description_kind":"plain","computed":true}},"description_kind":"plain"}},"yandex_organizationmanager_saml_federation_user_account":{"version":0,"block":{"attributes":{"federation_id":{"type":"string","description_kind":"plain","required":true},"id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"name_id":{"type":"string","description_kind":"plain","required":true}},"description_kind":"plain"}},"yandex_organizationmanager_user_ssh_key":{"version":0,"block":{"attributes":{"created_at":{"type":"string","description_kind":"plain","computed":true},"data":{"type":"string","description_kind":"plain","optional":true},"expires_at":{"type":"string","description_kind":"plain","optional":true},"fingerprint":{"type":"string","description_kind":"plain","computed":true},"id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"name":{"type":"string","description_kind":"plain","optional":true},"organization_id":{"type":"string","description_kind":"plain","optional":true},"subject_id":{"type":"string","description_kind":"plain","optional":true},"user_ssh_key_id":{"type":"string","description_kind":"plain","required":true}},"description_kind":"plain"}},"yandex_resourcemanager_cloud":{"version":0,"block":{"attributes":{"cloud_id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"created_at":{"type":"string","description_kind":"plain","computed":true},"description":{"type":"string","description_kind":"plain","optional":true},"id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"name":{"type":"string","description_kind":"plain","optional":true,"computed":true}},"description_kind":"plain"}},"yandex_resourcemanager_folder":{"version":0,"block":{"attributes":{"cloud_id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"created_at":{"type":"string","description_kind":"plain","computed":true},"description":{"type":"string","description_kind":"plain","computed":true},"folder_id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"labels":{"type":["map","string"],"description_kind":"plain","optional":true},"name":{"type":"string","description_kind":"plain","optional":true,"computed":true},"status":{"type":"string","description_kind":"plain","computed":true}},"description_kind":"plain"}},"yandex_serverless_container":{"version":0,"block":{"attributes":{"concurrency":{"type":"number","description_kind":"plain","computed":true},"container_id":{"type":"string","description_kind":"plain","optional":true},"core_fraction":{"type":"number","description_kind":"plain","computed":true},"cores":{"type":"number","description_kind":"plain","computed":true},"created_at":{"type":"string","description_kind":"plain","computed":true},"description":{"type":"string","description_kind":"plain","computed":true},"execution_timeout":{"type":"string","description_kind":"plain","computed":true},"folder_id":{"type":"string","description_kind":"plain","optional":true},"id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"image":{"type":["list",["object",{"args":["list","string"],"command":["list","string"],"digest":"string","environment":["map","string"],"url":"string","work_dir":"string"}]],"description_kind":"plain","computed":true},"labels":{"type":["map","string"],"description_kind":"plain","computed":true},"log_options":{"type":["list",["object",{"disabled":"bool","folder_id":"string","log_group_id":"string","min_level":"string"}]],"description_kind":"plain","computed":true},"memory":{"type":"number","description":"Container memory in megabytes, should be aligned to 128","description_kind":"plain","computed":true},"name":{"type":"string","description_kind":"plain","optional":true},"revision_id":{"type":"string","description_kind":"plain","computed":true},"service_account_id":{"type":"string","description_kind":"plain","computed":true},"url":{"type":"string","description_kind":"plain","computed":true}},"block_types":{"connectivity":{"nesting_mode":"list","block":{"attributes":{"network_id":{"type":"string","description_kind":"plain","required":true}},"description_kind":"plain"},"max_items":1},"secrets":{"nesting_mode":"list","block":{"attributes":{"environment_variable":{"type":"string","description_kind":"plain","required":true},"id":{"type":"string","description_kind":"plain","required":true},"key":{"type":"string","description_kind":"plain","required":true},"version_id":{"type":"string","description_kind":"plain","required":true}},"description_kind":"plain"}},"storage_mounts":{"nesting_mode":"list","block":{"attributes":{"bucket":{"type":"string","description_kind":"plain","required":true},"mount_point_path":{"type":"string","description_kind":"plain","required":true},"prefix":{"type":"string","description_kind":"plain","optional":true},"read_only":{"type":"bool","description_kind":"plain","optional":true}},"description_kind":"plain"}}},"description_kind":"plain"}},"yandex_smartcaptcha_captcha":{"version":1,"block":{"attributes":{"allowed_sites":{"type":["list","string"],"description_kind":"plain","computed":true},"captcha_id":{"type":"string","description_kind":"plain","optional":true},"challenge_type":{"type":"string","description_kind":"plain","computed":true},"client_key":{"type":"string","description_kind":"plain","computed":true},"cloud_id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"complexity":{"type":"string","description_kind":"plain","computed":true},"created_at":{"type":"string","description_kind":"plain","computed":true},"deletion_protection":{"type":"bool","description_kind":"plain","computed":true},"folder_id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"name":{"type":"string","description_kind":"plain","optional":true,"computed":true},"override_variant":{"type":["list",["object",{"challenge_type":"string","complexity":"string","description":"string","pre_check_type":"string","uuid":"string"}]],"description_kind":"plain","computed":true},"pre_check_type":{"type":"string","description_kind":"plain","computed":true},"security_rule":{"type":["list",["object",{"condition":["list",["object",{"headers":["list",["object",{"name":"string","value":["list",["object",{"exact_match":"string","exact_not_match":"string","pire_regex_match":"string","pire_regex_not_match":"string","prefix_match":"string","prefix_not_match":"string"}]]}]],"host":["list",["object",{"hosts":["list",["object",{"exact_match":"string","exact_not_match":"string","pire_regex_match":"string","pire_regex_not_match":"string","prefix_match":"string","prefix_not_match":"string"}]]}]],"source_ip":["list",["object",{"geo_ip_match":["list",["object",{"locations":["list","string"]}]],"geo_ip_not_match":["list",["object",{"locations":["list","string"]}]],"ip_ranges_match":["list",["object",{"ip_ranges":["list","string"]}]],"ip_ranges_not_match":["list",["object",{"ip_ranges":["list","string"]}]]}]],"uri":["list",["object",{"path":["list",["object",{"exact_match":"string","exact_not_match":"string","pire_regex_match":"string","pire_regex_not_match":"string","prefix_match":"string","prefix_not_match":"string"}]],"queries":["list",["object",{"key":"string","value":["list",["object",{"exact_match":"string","exact_not_match":"string","pire_regex_match":"string","pire_regex_not_match":"string","prefix_match":"string","prefix_not_match":"string"}]]}]]}]]}]],"description":"string","name":"string","override_variant_uuid":"string","priority":"number"}]],"description_kind":"plain","computed":true},"style_json":{"type":"string","description_kind":"plain","computed":true},"suspend":{"type":"bool","description_kind":"plain","computed":true},"turn_off_hostname_check":{"type":"bool","description_kind":"plain","computed":true}},"description_kind":"plain"}},"yandex_sws_security_profile":{"version":1,"block":{"attributes":{"captcha_id":{"type":"string","description_kind":"plain","computed":true},"cloud_id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"created_at":{"type":"string","description_kind":"plain","computed":true},"default_action":{"type":"string","description_kind":"plain","computed":true},"description":{"type":"string","description_kind":"plain","computed":true},"folder_id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"labels":{"type":["map","string"],"description_kind":"plain","computed":true},"name":{"type":"string","description_kind":"plain","optional":true,"computed":true},"security_profile_id":{"type":"string","description_kind":"plain","optional":true},"security_rule":{"type":["list",["object",{"description":"string","dry_run":"bool","name":"string","priority":"number","rule_condition":["list",["object",{"action":"string","condition":["list",["object",{"authority":["list",["object",{"authorities":["list",["object",{"exact_match":"string","exact_not_match":"string","pire_regex_match":"string","pire_regex_not_match":"string","prefix_match":"string","prefix_not_match":"string"}]]}]],"headers":["list",["object",{"name":"string","value":["list",["object",{"exact_match":"string","exact_not_match":"string","pire_regex_match":"string","pire_regex_not_match":"string","prefix_match":"string","prefix_not_match":"string"}]]}]],"http_method":["list",["object",{"http_methods":["list",["object",{"exact_match":"string","exact_not_match":"string","pire_regex_match":"string","pire_regex_not_match":"string","prefix_match":"string","prefix_not_match":"string"}]]}]],"request_uri":["list",["object",{"path":["list",["object",{"exact_match":"string","exact_not_match":"string","pire_regex_match":"string","pire_regex_not_match":"string","prefix_match":"string","prefix_not_match":"string"}]],"queries":["list",["object",{"key":"string","value":["list",["object",{"exact_match":"string","exact_not_match":"string","pire_regex_match":"string","pire_regex_not_match":"string","prefix_match":"string","prefix_not_match":"string"}]]}]]}]],"source_ip":["list",["object",{"geo_ip_match":["list",["object",{"locations":["list","string"]}]],"geo_ip_not_match":["list",["object",{"locations":["list","string"]}]],"ip_ranges_match":["list",["object",{"ip_ranges":["list","string"]}]],"ip_ranges_not_match":["list",["object",{"ip_ranges":["list","string"]}]]}]]}]]}]],"smart_protection":["list",["object",{"condition":["list",["object",{"authority":["list",["object",{"authorities":["list",["object",{"exact_match":"string","exact_not_match":"string","pire_regex_match":"string","pire_regex_not_match":"string","prefix_match":"string","prefix_not_match":"string"}]]}]],"headers":["list",["object",{"name":"string","value":["list",["object",{"exact_match":"string","exact_not_match":"string","pire_regex_match":"string","pire_regex_not_match":"string","prefix_match":"string","prefix_not_match":"string"}]]}]],"http_method":["list",["object",{"http_methods":["list",["object",{"exact_match":"string","exact_not_match":"string","pire_regex_match":"string","pire_regex_not_match":"string","prefix_match":"string","prefix_not_match":"string"}]]}]],"request_uri":["list",["object",{"path":["list",["object",{"exact_match":"string","exact_not_match":"string","pire_regex_match":"string","pire_regex_not_match":"string","prefix_match":"string","prefix_not_match":"string"}]],"queries":["list",["object",{"key":"string","value":["list",["object",{"exact_match":"string","exact_not_match":"string","pire_regex_match":"string","pire_regex_not_match":"string","prefix_match":"string","prefix_not_match":"string"}]]}]]}]],"source_ip":["list",["object",{"geo_ip_match":["list",["object",{"locations":["list","string"]}]],"geo_ip_not_match":["list",["object",{"locations":["list","string"]}]],"ip_ranges_match":["list",["object",{"ip_ranges":["list","string"]}]],"ip_ranges_not_match":["list",["object",{"ip_ranges":["list","string"]}]]}]]}]],"mode":"string"}]]}]],"description_kind":"plain","computed":true}},"description_kind":"plain"}},"yandex_vpc_address":{"version":0,"block":{"attributes":{"address_id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"created_at":{"type":"string","description_kind":"plain","computed":true},"deletion_protection":{"type":"bool","description_kind":"plain","computed":true},"description":{"type":"string","description_kind":"plain","computed":true},"dns_record":{"type":["list",["object",{"dns_zone_id":"string","fqdn":"string","ptr":"bool","ttl":"number"}]],"description_kind":"plain","computed":true},"external_ipv4_address":{"type":["list",["object",{"address":"string","ddos_protection_provider":"string","outgoing_smtp_capability":"string","zone_id":"string"}]],"description_kind":"plain","computed":true},"folder_id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"labels":{"type":["map","string"],"description_kind":"plain","computed":true},"name":{"type":"string","description_kind":"plain","optional":true,"computed":true},"reserved":{"type":"bool","description_kind":"plain","computed":true},"used":{"type":"bool","description_kind":"plain","computed":true}},"description_kind":"plain"}},"yandex_vpc_gateway":{"version":0,"block":{"attributes":{"created_at":{"type":"string","description_kind":"plain","computed":true},"description":{"type":"string","description_kind":"plain","computed":true},"folder_id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"gateway_id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"labels":{"type":["map","string"],"description_kind":"plain","computed":true},"name":{"type":"string","description_kind":"plain","optional":true,"computed":true}},"block_types":{"shared_egress_gateway":{"nesting_mode":"list","block":{"description_kind":"plain"},"max_items":1}},"description_kind":"plain"}},"yandex_vpc_network":{"version":0,"block":{"attributes":{"created_at":{"type":"string","description_kind":"plain","computed":true},"default_security_group_id":{"type":"string","description_kind":"plain","computed":true},"description":{"type":"string","description_kind":"plain","computed":true},"folder_id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"labels":{"type":["map","string"],"description_kind":"plain","computed":true},"name":{"type":"string","description_kind":"plain","optional":true,"computed":true},"network_id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"subnet_ids":{"type":["list","string"],"description_kind":"plain","computed":true}},"description_kind":"plain"}},"yandex_vpc_route_table":{"version":0,"block":{"attributes":{"created_at":{"type":"string","description_kind":"plain","computed":true},"description":{"type":"string","description_kind":"plain","computed":true},"folder_id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"labels":{"type":["map","string"],"description_kind":"plain","computed":true},"name":{"type":"string","description_kind":"plain","optional":true,"computed":true},"network_id":{"type":"string","description_kind":"plain","computed":true},"route_table_id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"static_route":{"type":["set",["object",{"destination_prefix":"string","gateway_id":"string","next_hop_address":"string"}]],"description_kind":"plain","computed":true}},"description_kind":"plain"}},"yandex_vpc_security_group":{"version":0,"block":{"attributes":{"created_at":{"type":"string","description_kind":"plain","computed":true},"description":{"type":"string","description_kind":"plain","computed":true},"egress":{"type":["set",["object",{"description":"string","from_port":"number","id":"string","labels":["map","string"],"port":"number","predefined_target":"string","protocol":"string","security_group_id":"string","to_port":"number","v4_cidr_blocks":["list","string"],"v6_cidr_blocks":["list","string"]}]],"description_kind":"plain","computed":true},"folder_id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"ingress":{"type":["set",["object",{"description":"string","from_port":"number","id":"string","labels":["map","string"],"port":"number","predefined_target":"string","protocol":"string","security_group_id":"string","to_port":"number","v4_cidr_blocks":["list","string"],"v6_cidr_blocks":["list","string"]}]],"description_kind":"plain","computed":true},"labels":{"type":["map","string"],"description_kind":"plain","computed":true},"name":{"type":"string","description_kind":"plain","optional":true,"computed":true},"network_id":{"type":"string","description_kind":"plain","computed":true},"security_group_id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"status":{"type":"string","description_kind":"plain","computed":true}},"description_kind":"plain"}},"yandex_vpc_security_group_rule":{"version":0,"block":{"attributes":{"description":{"type":"string","description_kind":"plain","computed":true},"direction":{"type":"string","description_kind":"plain","computed":true},"from_port":{"type":"number","description_kind":"plain","computed":true},"id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"labels":{"type":["map","string"],"description_kind":"plain","computed":true},"port":{"type":"number","description_kind":"plain","computed":true},"predefined_target":{"type":"string","description_kind":"plain","computed":true},"protocol":{"type":"string","description_kind":"plain","computed":true},"rule_id":{"type":"string","description_kind":"plain","required":true},"security_group_binding":{"type":"string","description_kind":"plain","required":true},"security_group_id":{"type":"string","description_kind":"plain","computed":true},"to_port":{"type":"number","description_kind":"plain","computed":true},"v4_cidr_blocks":{"type":["list","string"],"description_kind":"plain","computed":true},"v6_cidr_blocks":{"type":["list","string"],"description_kind":"plain","computed":true}},"description_kind":"plain"}},"yandex_vpc_subnet":{"version":0,"block":{"attributes":{"created_at":{"type":"string","description_kind":"plain","computed":true},"description":{"type":"string","description_kind":"plain","computed":true},"dhcp_options":{"type":["list",["object",{"domain_name":"string","domain_name_servers":["list","string"],"ntp_servers":["list","string"]}]],"description_kind":"plain","computed":true},"folder_id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"labels":{"type":["map","string"],"description_kind":"plain","computed":true},"name":{"type":"string","description_kind":"plain","optional":true,"computed":true},"network_id":{"type":"string","description_kind":"plain","computed":true},"route_table_id":{"type":"string","description_kind":"plain","computed":true},"subnet_id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"v4_cidr_blocks":{"type":["list","string"],"description_kind":"plain","computed":true},"v6_cidr_blocks":{"type":["list","string"],"description_kind":"plain","computed":true},"zone":{"type":"string","description_kind":"plain","computed":true}},"description_kind":"plain"}},"yandex_ydb_database_dedicated":{"version":0,"block":{"attributes":{"assign_public_ips":{"type":"bool","description_kind":"plain","computed":true},"created_at":{"type":"string","description_kind":"plain","computed":true},"database_id":{"type":"string","description_kind":"plain","optional":true},"database_path":{"type":"string","description_kind":"plain","computed":true},"deletion_protection":{"type":"bool","description_kind":"plain","optional":true,"computed":true},"description":{"type":"string","description_kind":"plain","computed":true},"folder_id":{"type":"string","description_kind":"plain","optional":true},"id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"labels":{"type":["map","string"],"description_kind":"plain","computed":true},"location":{"type":["list",["object",{"region":["list",["object",{"id":"string"}]],"zone":["list",["object",{"id":"string"}]]}]],"description_kind":"plain","computed":true},"location_id":{"type":"string","description_kind":"plain","computed":true},"name":{"type":"string","description_kind":"plain","optional":true},"network_id":{"type":"string","description_kind":"plain","computed":true},"resource_preset_id":{"type":"string","description_kind":"plain","computed":true},"scale_policy":{"type":["list",["object",{"fixed_scale":["list",["object",{"size":"number"}]]}]],"description_kind":"plain","computed":true},"status":{"type":"string","description_kind":"plain","computed":true},"storage_config":{"type":["list",["object",{"group_count":"number","storage_type_id":"string"}]],"description_kind":"plain","computed":true},"subnet_ids":{"type":["set","string"],"description_kind":"plain","computed":true},"tls_enabled":{"type":"bool","description_kind":"plain","computed":true},"ydb_api_endpoint":{"type":"string","description_kind":"plain","computed":true},"ydb_full_endpoint":{"type":"string","description_kind":"plain","computed":true}},"description_kind":"plain"}},"yandex_ydb_database_serverless":{"version":0,"block":{"attributes":{"created_at":{"type":"string","description_kind":"plain","computed":true},"database_id":{"type":"string","description_kind":"plain","optional":true},"database_path":{"type":"string","description_kind":"plain","computed":true},"deletion_protection":{"type":"bool","description_kind":"plain","optional":true,"computed":true},"description":{"type":"string","description_kind":"plain","computed":true},"document_api_endpoint":{"type":"string","description_kind":"plain","computed":true},"folder_id":{"type":"string","description_kind":"plain","optional":true},"id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"labels":{"type":["map","string"],"description_kind":"plain","computed":true},"location_id":{"type":"string","description_kind":"plain","computed":true},"name":{"type":"string","description_kind":"plain","optional":true},"status":{"type":"string","description_kind":"plain","computed":true},"tls_enabled":{"type":"bool","description_kind":"plain","computed":true},"ydb_api_endpoint":{"type":"string","description_kind":"plain","computed":true},"ydb_full_endpoint":{"type":"string","description_kind":"plain","computed":true}},"block_types":{"serverless_database":{"nesting_mode":"set","block":{"attributes":{"enable_throttling_rcu_limit":{"type":"bool","description_kind":"plain","optional":true,"computed":true},"provisioned_rcu_limit":{"type":"number","description_kind":"plain","optional":true,"computed":true},"storage_size_limit":{"type":"number","description_kind":"plain","optional":true,"computed":true},"throttling_rcu_limit":{"type":"number","description_kind":"plain","optional":true,"computed":true}},"description_kind":"plain"}}},"description_kind":"plain"}}}}}} +{"format_version":"1.0","provider_schemas":{"registry.terraform.io/yandex-cloud/yandex":{"provider":{"version":0,"block":{"attributes":{"cloud_id":{"type":"string","description":"The ID of the [cloud](https://cloud.yandex.com/docs/resource-manager/concepts/resources-hierarchy#cloud) to apply any resources to.\nThis can also be specified using environment variable `YC_CLOUD_ID`","description_kind":"plain","optional":true},"endpoint":{"type":"string","description":"The endpoint for API calls, default value is api.cloud.yandex.net:443.\nThis can also be defined by environment variable `YC_ENDPOINT`","description_kind":"plain","optional":true},"folder_id":{"type":"string","description":"The ID of the [folder](https://cloud.yandex.com/docs/resource-manager/concepts/resources-hierarchy#folder) to operate under, if not specified by a given resource.\nThis can also be specified using environment variable `YC_FOLDER_ID`","description_kind":"plain","optional":true},"insecure":{"type":"bool","description":"Explicitly allow the provider to perform \"insecure\" SSL requests. If omitted,default value is `false`.","description_kind":"plain","optional":true},"max_retries":{"type":"number","description":"This is the maximum number of times an API call is retried, in the case where requests are being throttled or experiencing transient failures. The delay between the subsequent API calls increases exponentially.","description_kind":"plain","optional":true},"organization_id":{"type":"string","description_kind":"plain","optional":true},"plaintext":{"type":"bool","description":"Disable use of TLS. Default value is `false`.","description_kind":"plain","optional":true},"profile":{"type":"string","description":"Profile to use in the shared credentials file. Default value is `default`.","description_kind":"plain","optional":true},"region_id":{"type":"string","description":"The region where operations will take place. Examples\nare ru-central1","description_kind":"plain","optional":true},"service_account_key_file":{"type":"string","description":"Contains either a path to or the contents of the Service Account file in JSON format.\nThis can also be specified using environment variable `YC_SERVICE_ACCOUNT_KEY_FILE`. You can read how to create service account key file [here](https://cloud.yandex.com/docs/iam/operations/iam-token/create-for-sa#keys-create).\n~\u003e **NOTE:** Only one of `token` or `service_account_key_file` must be specified.\n~\u003e **NOTE:** One can authenticate via instance service account from inside a compute instance. In order to use this method, omit both `token`/`service_account_key_file` and attach service account to the instance. [Working with Yandex.Cloud from inside an instance](https://cloud.yandex.com/docs/compute/operations/vm-connect/auth-inside-vm)\n","description_kind":"plain","optional":true},"shared_credentials_file":{"type":"string","description":"Shared credentials file path. Supported keys: [`storage_access_key`, `storage_secret_key`].\n~\u003e **NOTE** `storage_access_key`/`storage_secret_key` from the shared credentials file are used only when the provider and a storage data/resource do not have an access/secret keys explicitly specified.\n","description_kind":"plain","optional":true},"storage_access_key":{"type":"string","description":"Yandex.Cloud storage service access key, which is used when a storage data/resource doesn't have an access key explicitly specified. \nThis can also be specified using environment variable `YC_STORAGE_ACCESS_KEY`.","description_kind":"plain","optional":true},"storage_endpoint":{"type":"string","description":"Yandex.Cloud object storage [endpoint](https://cloud.yandex.com/en-ru/docs/storage/s3/#request-url), which is used to connect to `S3 API`. Default value is `storage.yandexcloud.net`","description_kind":"plain","optional":true},"storage_secret_key":{"type":"string","description":"Yandex.Cloud storage service secret key, which is used when a storage data/resource doesn't have a secret key explicitly specified.\nThis can also be specified using environment variable `YC_STORAGE_SECRET_KEY`.","description_kind":"plain","optional":true,"sensitive":true},"token":{"type":"string","description":"Security token or IAM token used for authentication in Yandex.Cloud.\nCheck [documentation](https://cloud.yandex.com/docs/iam/operations/iam-token/create) about how to create IAM token. This can also be specified using environment variable `YC_TOKEN`.","description_kind":"plain","optional":true,"sensitive":true},"ymq_access_key":{"type":"string","description":"Yandex.Cloud Message Queue service access key, which is used when a YMQ queue resource doesn't have an access key explicitly specified.\n This can also be specified using environment variable `YC_MESSAGE_QUEUE_ACCESS_KEY`.","description_kind":"plain","optional":true},"ymq_endpoint":{"type":"string","description":"Yandex.Cloud Message Queue service endpoint. Default is \nmessage-queue.api.cloud.yandex.net","description_kind":"plain","optional":true},"ymq_secret_key":{"type":"string","description":"Yandex.Cloud Message Queue service secret key, which is used when a YMQ queue resource doesn't have a secret key explicitly specified.\nThis can also be specified using environment variable `YC_MESSAGE_QUEUE_SECRET_KEY`.","description_kind":"plain","optional":true,"sensitive":true},"zone":{"type":"string","description":"The default [availability zone](https://cloud.yandex.com/docs/overview/concepts/geo-scope) to operate under, if not specified by a given resource.\nThis can also be specified using environment variable `YC_ZONE`","description_kind":"plain","optional":true}},"description_kind":"plain"}},"resource_schemas":{"yandex_airflow_cluster":{"version":0,"block":{"attributes":{"admin_password":{"type":"string","description_kind":"plain","optional":true,"computed":true,"sensitive":true},"airflow_config":{"type":["map",["map","string"]],"description_kind":"plain","optional":true},"code_sync":{"nested_type":{"attributes":{"s3":{"nested_type":{"attributes":{"bucket":{"type":"string","description_kind":"plain","required":true}},"nesting_mode":"single"},"description_kind":"plain","required":true}},"nesting_mode":"single"},"description_kind":"plain","required":true},"created_at":{"type":"string","description_kind":"plain","computed":true},"deb_packages":{"type":["set","string"],"description_kind":"plain","optional":true},"deletion_protection":{"type":"bool","description_kind":"plain","optional":true,"computed":true},"description":{"type":"string","description_kind":"plain","optional":true},"folder_id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"health":{"type":"string","description_kind":"plain","computed":true},"id":{"type":"string","description_kind":"plain","computed":true},"labels":{"type":["map","string"],"description_kind":"plain","optional":true},"lockbox_secrets_backend":{"nested_type":{"attributes":{"enabled":{"type":"bool","description_kind":"plain","required":true}},"nesting_mode":"single"},"description_kind":"plain","optional":true},"logging":{"nested_type":{"attributes":{"enabled":{"type":"bool","description_kind":"plain","required":true},"folder_id":{"type":"string","description_kind":"plain","optional":true},"log_group_id":{"type":"string","description_kind":"plain","optional":true},"min_level":{"type":"string","description_kind":"plain","optional":true}},"nesting_mode":"single"},"description_kind":"plain","optional":true},"name":{"type":"string","description_kind":"plain","required":true},"pip_packages":{"type":["set","string"],"description_kind":"plain","optional":true},"scheduler":{"nested_type":{"attributes":{"count":{"type":"number","description_kind":"plain","required":true},"resource_preset_id":{"type":"string","description_kind":"plain","required":true}},"nesting_mode":"single"},"description_kind":"plain","required":true},"security_group_ids":{"type":["set","string"],"description_kind":"plain","optional":true},"service_account_id":{"type":"string","description_kind":"plain","required":true},"status":{"type":"string","description_kind":"plain","computed":true},"subnet_ids":{"type":["set","string"],"description_kind":"plain","required":true},"triggerer":{"nested_type":{"attributes":{"count":{"type":"number","description_kind":"plain","required":true},"resource_preset_id":{"type":"string","description_kind":"plain","required":true}},"nesting_mode":"single"},"description_kind":"plain","optional":true},"webserver":{"nested_type":{"attributes":{"count":{"type":"number","description_kind":"plain","required":true},"resource_preset_id":{"type":"string","description_kind":"plain","required":true}},"nesting_mode":"single"},"description_kind":"plain","required":true},"worker":{"nested_type":{"attributes":{"max_count":{"type":"number","description_kind":"plain","required":true},"min_count":{"type":"number","description_kind":"plain","required":true},"resource_preset_id":{"type":"string","description_kind":"plain","required":true}},"nesting_mode":"single"},"description_kind":"plain","required":true}},"block_types":{"timeouts":{"nesting_mode":"single","block":{"attributes":{"create":{"type":"string","description":"A string that can be [parsed as a duration](https://pkg.go.dev/time#ParseDuration) consisting of numbers and unit suffixes, such as \"30s\" or \"2h45m\". Valid time units are \"s\" (seconds), \"m\" (minutes), \"h\" (hours).","description_kind":"plain","optional":true},"delete":{"type":"string","description":"A string that can be [parsed as a duration](https://pkg.go.dev/time#ParseDuration) consisting of numbers and unit suffixes, such as \"30s\" or \"2h45m\". Valid time units are \"s\" (seconds), \"m\" (minutes), \"h\" (hours). Setting a timeout for a Delete operation is only applicable if changes are saved into state before the destroy operation occurs.","description_kind":"plain","optional":true},"update":{"type":"string","description":"A string that can be [parsed as a duration](https://pkg.go.dev/time#ParseDuration) consisting of numbers and unit suffixes, such as \"30s\" or \"2h45m\". Valid time units are \"s\" (seconds), \"m\" (minutes), \"h\" (hours).","description_kind":"plain","optional":true}},"description_kind":"plain"}}},"description_kind":"plain"}},"yandex_alb_backend_group":{"version":0,"block":{"attributes":{"created_at":{"type":"string","description_kind":"plain","computed":true},"description":{"type":"string","description_kind":"plain","optional":true},"folder_id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"labels":{"type":["map","string"],"description_kind":"plain","optional":true},"name":{"type":"string","description_kind":"plain","optional":true}},"block_types":{"grpc_backend":{"nesting_mode":"list","block":{"attributes":{"name":{"type":"string","description_kind":"plain","required":true},"port":{"type":"number","description_kind":"plain","optional":true},"target_group_ids":{"type":["list","string"],"description_kind":"plain","required":true},"weight":{"type":"number","description_kind":"plain","optional":true}},"block_types":{"healthcheck":{"nesting_mode":"list","block":{"attributes":{"healthcheck_port":{"type":"number","description_kind":"plain","optional":true},"healthy_threshold":{"type":"number","description_kind":"plain","optional":true},"interval":{"type":"string","description_kind":"plain","required":true},"interval_jitter_percent":{"type":"number","description_kind":"plain","optional":true},"timeout":{"type":"string","description_kind":"plain","required":true},"unhealthy_threshold":{"type":"number","description_kind":"plain","optional":true}},"block_types":{"grpc_healthcheck":{"nesting_mode":"list","block":{"attributes":{"service_name":{"type":"string","description_kind":"plain","optional":true}},"description_kind":"plain"},"max_items":1},"http_healthcheck":{"nesting_mode":"list","block":{"attributes":{"host":{"type":"string","description_kind":"plain","optional":true},"http2":{"type":"bool","description_kind":"plain","optional":true},"path":{"type":"string","description_kind":"plain","required":true}},"description_kind":"plain"},"max_items":1},"stream_healthcheck":{"nesting_mode":"list","block":{"attributes":{"receive":{"type":"string","description_kind":"plain","optional":true},"send":{"type":"string","description_kind":"plain","optional":true}},"description_kind":"plain"},"max_items":1}},"description_kind":"plain"},"max_items":1},"load_balancing_config":{"nesting_mode":"list","block":{"attributes":{"locality_aware_routing_percent":{"type":"number","description_kind":"plain","optional":true},"mode":{"type":"string","description_kind":"plain","optional":true},"panic_threshold":{"type":"number","description_kind":"plain","optional":true},"strict_locality":{"type":"bool","description_kind":"plain","optional":true}},"description_kind":"plain"},"max_items":1},"tls":{"nesting_mode":"list","block":{"attributes":{"sni":{"type":"string","description_kind":"plain","optional":true}},"block_types":{"validation_context":{"nesting_mode":"list","block":{"attributes":{"trusted_ca_bytes":{"type":"string","description_kind":"plain","optional":true},"trusted_ca_id":{"type":"string","description_kind":"plain","optional":true}},"description_kind":"plain"},"max_items":1}},"description_kind":"plain"},"max_items":1}},"description_kind":"plain"}},"http_backend":{"nesting_mode":"list","block":{"attributes":{"http2":{"type":"bool","description_kind":"plain","optional":true},"name":{"type":"string","description_kind":"plain","required":true},"port":{"type":"number","description_kind":"plain","optional":true},"storage_bucket":{"type":"string","description_kind":"plain","optional":true},"target_group_ids":{"type":["list","string"],"description_kind":"plain","optional":true},"weight":{"type":"number","description_kind":"plain","optional":true}},"block_types":{"healthcheck":{"nesting_mode":"list","block":{"attributes":{"healthcheck_port":{"type":"number","description_kind":"plain","optional":true},"healthy_threshold":{"type":"number","description_kind":"plain","optional":true},"interval":{"type":"string","description_kind":"plain","required":true},"interval_jitter_percent":{"type":"number","description_kind":"plain","optional":true},"timeout":{"type":"string","description_kind":"plain","required":true},"unhealthy_threshold":{"type":"number","description_kind":"plain","optional":true}},"block_types":{"grpc_healthcheck":{"nesting_mode":"list","block":{"attributes":{"service_name":{"type":"string","description_kind":"plain","optional":true}},"description_kind":"plain"},"max_items":1},"http_healthcheck":{"nesting_mode":"list","block":{"attributes":{"host":{"type":"string","description_kind":"plain","optional":true},"http2":{"type":"bool","description_kind":"plain","optional":true},"path":{"type":"string","description_kind":"plain","required":true}},"description_kind":"plain"},"max_items":1},"stream_healthcheck":{"nesting_mode":"list","block":{"attributes":{"receive":{"type":"string","description_kind":"plain","optional":true},"send":{"type":"string","description_kind":"plain","optional":true}},"description_kind":"plain"},"max_items":1}},"description_kind":"plain"},"max_items":1},"load_balancing_config":{"nesting_mode":"list","block":{"attributes":{"locality_aware_routing_percent":{"type":"number","description_kind":"plain","optional":true},"mode":{"type":"string","description_kind":"plain","optional":true},"panic_threshold":{"type":"number","description_kind":"plain","optional":true},"strict_locality":{"type":"bool","description_kind":"plain","optional":true}},"description_kind":"plain"},"max_items":1},"tls":{"nesting_mode":"list","block":{"attributes":{"sni":{"type":"string","description_kind":"plain","optional":true}},"block_types":{"validation_context":{"nesting_mode":"list","block":{"attributes":{"trusted_ca_bytes":{"type":"string","description_kind":"plain","optional":true},"trusted_ca_id":{"type":"string","description_kind":"plain","optional":true}},"description_kind":"plain"},"max_items":1}},"description_kind":"plain"},"max_items":1}},"description_kind":"plain"}},"session_affinity":{"nesting_mode":"list","block":{"block_types":{"connection":{"nesting_mode":"list","block":{"attributes":{"source_ip":{"type":"bool","description":"Use source IP address","description_kind":"plain","optional":true}},"description":"IP address affinity","description_kind":"plain"},"max_items":1},"cookie":{"nesting_mode":"list","block":{"attributes":{"name":{"type":"string","description":"Name of the HTTP cookie","description_kind":"plain","required":true},"ttl":{"type":"string","description":"TTL for the cookie (if not set, session cookie will be used)","description_kind":"plain","optional":true}},"description":"Cookie affinity","description_kind":"plain"},"max_items":1},"header":{"nesting_mode":"list","block":{"attributes":{"header_name":{"type":"string","description":"The name of the request header that will be used","description_kind":"plain","required":true}},"description":"Request header affinity","description_kind":"plain"},"max_items":1}},"description_kind":"plain"},"max_items":1},"stream_backend":{"nesting_mode":"list","block":{"attributes":{"enable_proxy_protocol":{"type":"bool","description_kind":"plain","optional":true},"name":{"type":"string","description_kind":"plain","required":true},"port":{"type":"number","description_kind":"plain","optional":true},"target_group_ids":{"type":["list","string"],"description_kind":"plain","required":true},"weight":{"type":"number","description_kind":"plain","optional":true}},"block_types":{"healthcheck":{"nesting_mode":"list","block":{"attributes":{"healthcheck_port":{"type":"number","description_kind":"plain","optional":true},"healthy_threshold":{"type":"number","description_kind":"plain","optional":true},"interval":{"type":"string","description_kind":"plain","required":true},"interval_jitter_percent":{"type":"number","description_kind":"plain","optional":true},"timeout":{"type":"string","description_kind":"plain","required":true},"unhealthy_threshold":{"type":"number","description_kind":"plain","optional":true}},"block_types":{"grpc_healthcheck":{"nesting_mode":"list","block":{"attributes":{"service_name":{"type":"string","description_kind":"plain","optional":true}},"description_kind":"plain"},"max_items":1},"http_healthcheck":{"nesting_mode":"list","block":{"attributes":{"host":{"type":"string","description_kind":"plain","optional":true},"http2":{"type":"bool","description_kind":"plain","optional":true},"path":{"type":"string","description_kind":"plain","required":true}},"description_kind":"plain"},"max_items":1},"stream_healthcheck":{"nesting_mode":"list","block":{"attributes":{"receive":{"type":"string","description_kind":"plain","optional":true},"send":{"type":"string","description_kind":"plain","optional":true}},"description_kind":"plain"},"max_items":1}},"description_kind":"plain"},"max_items":1},"load_balancing_config":{"nesting_mode":"list","block":{"attributes":{"locality_aware_routing_percent":{"type":"number","description_kind":"plain","optional":true},"mode":{"type":"string","description_kind":"plain","optional":true},"panic_threshold":{"type":"number","description_kind":"plain","optional":true},"strict_locality":{"type":"bool","description_kind":"plain","optional":true}},"description_kind":"plain"},"max_items":1},"tls":{"nesting_mode":"list","block":{"attributes":{"sni":{"type":"string","description_kind":"plain","optional":true}},"block_types":{"validation_context":{"nesting_mode":"list","block":{"attributes":{"trusted_ca_bytes":{"type":"string","description_kind":"plain","optional":true},"trusted_ca_id":{"type":"string","description_kind":"plain","optional":true}},"description_kind":"plain"},"max_items":1}},"description_kind":"plain"},"max_items":1}},"description_kind":"plain"}},"timeouts":{"nesting_mode":"single","block":{"attributes":{"create":{"type":"string","description_kind":"plain","optional":true},"delete":{"type":"string","description_kind":"plain","optional":true},"update":{"type":"string","description_kind":"plain","optional":true}},"description_kind":"plain"}}},"description_kind":"plain"}},"yandex_alb_http_router":{"version":0,"block":{"attributes":{"created_at":{"type":"string","description_kind":"plain","computed":true},"description":{"type":"string","description_kind":"plain","optional":true},"folder_id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"labels":{"type":["map","string"],"description_kind":"plain","optional":true},"name":{"type":"string","description_kind":"plain","optional":true}},"block_types":{"route_options":{"nesting_mode":"list","block":{"attributes":{"security_profile_id":{"type":"string","description_kind":"plain","optional":true}},"block_types":{"rbac":{"nesting_mode":"list","block":{"attributes":{"action":{"type":"string","description_kind":"plain","optional":true}},"block_types":{"principals":{"nesting_mode":"list","block":{"block_types":{"and_principals":{"nesting_mode":"list","block":{"attributes":{"any":{"type":"bool","description_kind":"plain","optional":true},"remote_ip":{"type":"string","description_kind":"plain","optional":true}},"block_types":{"header":{"nesting_mode":"list","block":{"attributes":{"name":{"type":"string","description_kind":"plain","required":true}},"block_types":{"value":{"nesting_mode":"list","block":{"attributes":{"exact":{"type":"string","description_kind":"plain","optional":true},"prefix":{"type":"string","description_kind":"plain","optional":true},"regex":{"type":"string","description_kind":"plain","optional":true}},"description_kind":"plain"},"max_items":1}},"description_kind":"plain"},"max_items":1}},"description_kind":"plain"},"min_items":1}},"description_kind":"plain"},"min_items":1}},"description_kind":"plain"},"max_items":1}},"description_kind":"plain"},"max_items":1},"timeouts":{"nesting_mode":"single","block":{"attributes":{"create":{"type":"string","description_kind":"plain","optional":true},"delete":{"type":"string","description_kind":"plain","optional":true},"update":{"type":"string","description_kind":"plain","optional":true}},"description_kind":"plain"}}},"description_kind":"plain"}},"yandex_alb_load_balancer":{"version":0,"block":{"attributes":{"created_at":{"type":"string","description_kind":"plain","computed":true},"description":{"type":"string","description_kind":"plain","optional":true},"folder_id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"labels":{"type":["map","string"],"description_kind":"plain","optional":true},"log_group_id":{"type":"string","description_kind":"plain","computed":true},"name":{"type":"string","description_kind":"plain","optional":true},"network_id":{"type":"string","description_kind":"plain","required":true},"region_id":{"type":"string","description_kind":"plain","optional":true},"security_group_ids":{"type":["set","string"],"description_kind":"plain","optional":true},"status":{"type":"string","description_kind":"plain","computed":true}},"block_types":{"allocation_policy":{"nesting_mode":"list","block":{"block_types":{"location":{"nesting_mode":"set","block":{"attributes":{"disable_traffic":{"type":"bool","description_kind":"plain","optional":true},"subnet_id":{"type":"string","description_kind":"plain","required":true},"zone_id":{"type":"string","description_kind":"plain","required":true}},"description_kind":"plain"},"min_items":1}},"description_kind":"plain"},"min_items":1,"max_items":1},"listener":{"nesting_mode":"list","block":{"attributes":{"name":{"type":"string","description_kind":"plain","required":true}},"block_types":{"endpoint":{"nesting_mode":"list","block":{"attributes":{"ports":{"type":["list","number"],"description_kind":"plain","required":true}},"block_types":{"address":{"nesting_mode":"list","block":{"block_types":{"external_ipv4_address":{"nesting_mode":"list","block":{"attributes":{"address":{"type":"string","description_kind":"plain","optional":true,"computed":true}},"description_kind":"plain"},"max_items":1},"external_ipv6_address":{"nesting_mode":"list","block":{"attributes":{"address":{"type":"string","description_kind":"plain","optional":true,"computed":true}},"description_kind":"plain"},"max_items":1},"internal_ipv4_address":{"nesting_mode":"list","block":{"attributes":{"address":{"type":"string","description_kind":"plain","optional":true,"computed":true},"subnet_id":{"type":"string","description_kind":"plain","optional":true,"computed":true}},"description_kind":"plain"},"max_items":1}},"description_kind":"plain"},"min_items":1}},"description_kind":"plain"}},"http":{"nesting_mode":"list","block":{"block_types":{"handler":{"nesting_mode":"list","block":{"attributes":{"allow_http10":{"type":"bool","description_kind":"plain","optional":true},"http_router_id":{"type":"string","description_kind":"plain","optional":true},"rewrite_request_id":{"type":"bool","description_kind":"plain","optional":true}},"block_types":{"http2_options":{"nesting_mode":"list","block":{"attributes":{"max_concurrent_streams":{"type":"number","description_kind":"plain","optional":true}},"description_kind":"plain"},"max_items":1}},"description_kind":"plain"},"max_items":1},"redirects":{"nesting_mode":"list","block":{"attributes":{"http_to_https":{"type":"bool","description_kind":"plain","optional":true}},"description_kind":"plain"},"max_items":1}},"description_kind":"plain"},"max_items":1},"stream":{"nesting_mode":"list","block":{"block_types":{"handler":{"nesting_mode":"list","block":{"attributes":{"backend_group_id":{"type":"string","description_kind":"plain","optional":true}},"description_kind":"plain"},"max_items":1}},"description_kind":"plain"},"max_items":1},"tls":{"nesting_mode":"list","block":{"block_types":{"default_handler":{"nesting_mode":"list","block":{"attributes":{"certificate_ids":{"type":["set","string"],"description_kind":"plain","required":true}},"block_types":{"http_handler":{"nesting_mode":"list","block":{"attributes":{"allow_http10":{"type":"bool","description_kind":"plain","optional":true},"http_router_id":{"type":"string","description_kind":"plain","optional":true},"rewrite_request_id":{"type":"bool","description_kind":"plain","optional":true}},"block_types":{"http2_options":{"nesting_mode":"list","block":{"attributes":{"max_concurrent_streams":{"type":"number","description_kind":"plain","optional":true}},"description_kind":"plain"},"max_items":1}},"description_kind":"plain"},"max_items":1},"stream_handler":{"nesting_mode":"list","block":{"attributes":{"backend_group_id":{"type":"string","description_kind":"plain","optional":true}},"description_kind":"plain"},"max_items":1}},"description_kind":"plain"},"min_items":1,"max_items":1},"sni_handler":{"nesting_mode":"list","block":{"attributes":{"name":{"type":"string","description_kind":"plain","required":true},"server_names":{"type":["set","string"],"description_kind":"plain","required":true}},"block_types":{"handler":{"nesting_mode":"list","block":{"attributes":{"certificate_ids":{"type":["set","string"],"description_kind":"plain","required":true}},"block_types":{"http_handler":{"nesting_mode":"list","block":{"attributes":{"allow_http10":{"type":"bool","description_kind":"plain","optional":true},"http_router_id":{"type":"string","description_kind":"plain","optional":true},"rewrite_request_id":{"type":"bool","description_kind":"plain","optional":true}},"block_types":{"http2_options":{"nesting_mode":"list","block":{"attributes":{"max_concurrent_streams":{"type":"number","description_kind":"plain","optional":true}},"description_kind":"plain"},"max_items":1}},"description_kind":"plain"},"max_items":1},"stream_handler":{"nesting_mode":"list","block":{"attributes":{"backend_group_id":{"type":"string","description_kind":"plain","optional":true}},"description_kind":"plain"},"max_items":1}},"description_kind":"plain"},"min_items":1,"max_items":1}},"description_kind":"plain"}}},"description_kind":"plain"},"max_items":1}},"description_kind":"plain"}},"log_options":{"nesting_mode":"list","block":{"attributes":{"disable":{"type":"bool","description_kind":"plain","optional":true},"log_group_id":{"type":"string","description_kind":"plain","optional":true}},"block_types":{"discard_rule":{"nesting_mode":"list","block":{"attributes":{"discard_percent":{"type":"number","description_kind":"plain","optional":true},"grpc_codes":{"type":["list","string"],"description_kind":"plain","optional":true},"http_code_intervals":{"type":["list","string"],"description_kind":"plain","optional":true},"http_codes":{"type":["list","number"],"description_kind":"plain","optional":true}},"description_kind":"plain"}}},"description_kind":"plain"},"max_items":1},"timeouts":{"nesting_mode":"single","block":{"attributes":{"create":{"type":"string","description_kind":"plain","optional":true},"delete":{"type":"string","description_kind":"plain","optional":true},"update":{"type":"string","description_kind":"plain","optional":true}},"description_kind":"plain"}}},"description_kind":"plain"}},"yandex_alb_target_group":{"version":0,"block":{"attributes":{"created_at":{"type":"string","description_kind":"plain","computed":true},"description":{"type":"string","description_kind":"plain","optional":true},"folder_id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"labels":{"type":["map","string"],"description_kind":"plain","optional":true},"name":{"type":"string","description_kind":"plain","optional":true}},"block_types":{"target":{"nesting_mode":"list","block":{"attributes":{"ip_address":{"type":"string","description_kind":"plain","required":true},"private_ipv4_address":{"type":"bool","description_kind":"plain","optional":true},"subnet_id":{"type":"string","description_kind":"plain","optional":true}},"description_kind":"plain"}},"timeouts":{"nesting_mode":"single","block":{"attributes":{"create":{"type":"string","description_kind":"plain","optional":true},"delete":{"type":"string","description_kind":"plain","optional":true},"update":{"type":"string","description_kind":"plain","optional":true}},"description_kind":"plain"}}},"description_kind":"plain"}},"yandex_alb_virtual_host":{"version":0,"block":{"attributes":{"authority":{"type":["set","string"],"description_kind":"plain","optional":true},"http_router_id":{"type":"string","description_kind":"plain","required":true},"id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"name":{"type":"string","description_kind":"plain","required":true}},"block_types":{"modify_request_headers":{"nesting_mode":"list","block":{"attributes":{"append":{"type":"string","description_kind":"plain","optional":true},"name":{"type":"string","description_kind":"plain","required":true},"remove":{"type":"bool","description_kind":"plain","optional":true},"replace":{"type":"string","description_kind":"plain","optional":true}},"description_kind":"plain"}},"modify_response_headers":{"nesting_mode":"list","block":{"attributes":{"append":{"type":"string","description_kind":"plain","optional":true},"name":{"type":"string","description_kind":"plain","required":true},"remove":{"type":"bool","description_kind":"plain","optional":true},"replace":{"type":"string","description_kind":"plain","optional":true}},"description_kind":"plain"}},"route":{"nesting_mode":"list","block":{"attributes":{"name":{"type":"string","description_kind":"plain","optional":true}},"block_types":{"grpc_route":{"nesting_mode":"list","block":{"block_types":{"grpc_match":{"nesting_mode":"list","block":{"block_types":{"fqmn":{"nesting_mode":"list","block":{"attributes":{"exact":{"type":"string","description_kind":"plain","optional":true},"prefix":{"type":"string","description_kind":"plain","optional":true},"regex":{"type":"string","description_kind":"plain","optional":true}},"description_kind":"plain"},"max_items":1}},"description_kind":"plain"}},"grpc_route_action":{"nesting_mode":"list","block":{"attributes":{"auto_host_rewrite":{"type":"bool","description_kind":"plain","optional":true},"backend_group_id":{"type":"string","description_kind":"plain","required":true},"host_rewrite":{"type":"string","description_kind":"plain","optional":true},"idle_timeout":{"type":"string","description_kind":"plain","optional":true},"max_timeout":{"type":"string","description_kind":"plain","optional":true}},"description_kind":"plain"},"max_items":1},"grpc_status_response_action":{"nesting_mode":"list","block":{"attributes":{"status":{"type":"string","description_kind":"plain","optional":true}},"description_kind":"plain"},"max_items":1}},"description_kind":"plain"},"max_items":1},"http_route":{"nesting_mode":"list","block":{"block_types":{"direct_response_action":{"nesting_mode":"list","block":{"attributes":{"body":{"type":"string","description_kind":"plain","optional":true},"status":{"type":"number","description_kind":"plain","optional":true}},"description_kind":"plain"},"max_items":1},"http_match":{"nesting_mode":"list","block":{"attributes":{"http_method":{"type":["set","string"],"description_kind":"plain","optional":true}},"block_types":{"path":{"nesting_mode":"list","block":{"attributes":{"exact":{"type":"string","description_kind":"plain","optional":true},"prefix":{"type":"string","description_kind":"plain","optional":true},"regex":{"type":"string","description_kind":"plain","optional":true}},"description_kind":"plain"},"max_items":1}},"description_kind":"plain"}},"http_route_action":{"nesting_mode":"list","block":{"attributes":{"auto_host_rewrite":{"type":"bool","description_kind":"plain","optional":true},"backend_group_id":{"type":"string","description_kind":"plain","required":true},"host_rewrite":{"type":"string","description_kind":"plain","optional":true},"idle_timeout":{"type":"string","description_kind":"plain","optional":true},"prefix_rewrite":{"type":"string","description_kind":"plain","optional":true},"timeout":{"type":"string","description_kind":"plain","optional":true},"upgrade_types":{"type":["set","string"],"description_kind":"plain","optional":true}},"description_kind":"plain"},"max_items":1},"redirect_action":{"nesting_mode":"list","block":{"attributes":{"remove_query":{"type":"bool","description_kind":"plain","optional":true},"replace_host":{"type":"string","description_kind":"plain","optional":true},"replace_path":{"type":"string","description_kind":"plain","optional":true},"replace_port":{"type":"number","description_kind":"plain","optional":true},"replace_prefix":{"type":"string","description_kind":"plain","optional":true},"replace_scheme":{"type":"string","description_kind":"plain","optional":true},"response_code":{"type":"string","description_kind":"plain","optional":true}},"description_kind":"plain"},"max_items":1}},"description_kind":"plain"},"max_items":1},"route_options":{"nesting_mode":"list","block":{"attributes":{"security_profile_id":{"type":"string","description_kind":"plain","optional":true}},"block_types":{"rbac":{"nesting_mode":"list","block":{"attributes":{"action":{"type":"string","description_kind":"plain","optional":true}},"block_types":{"principals":{"nesting_mode":"list","block":{"block_types":{"and_principals":{"nesting_mode":"list","block":{"attributes":{"any":{"type":"bool","description_kind":"plain","optional":true},"remote_ip":{"type":"string","description_kind":"plain","optional":true}},"block_types":{"header":{"nesting_mode":"list","block":{"attributes":{"name":{"type":"string","description_kind":"plain","required":true}},"block_types":{"value":{"nesting_mode":"list","block":{"attributes":{"exact":{"type":"string","description_kind":"plain","optional":true},"prefix":{"type":"string","description_kind":"plain","optional":true},"regex":{"type":"string","description_kind":"plain","optional":true}},"description_kind":"plain"},"max_items":1}},"description_kind":"plain"},"max_items":1}},"description_kind":"plain"},"min_items":1}},"description_kind":"plain"},"min_items":1}},"description_kind":"plain"},"max_items":1}},"description_kind":"plain"},"max_items":1}},"description_kind":"plain"}},"route_options":{"nesting_mode":"list","block":{"attributes":{"security_profile_id":{"type":"string","description_kind":"plain","optional":true}},"block_types":{"rbac":{"nesting_mode":"list","block":{"attributes":{"action":{"type":"string","description_kind":"plain","optional":true}},"block_types":{"principals":{"nesting_mode":"list","block":{"block_types":{"and_principals":{"nesting_mode":"list","block":{"attributes":{"any":{"type":"bool","description_kind":"plain","optional":true},"remote_ip":{"type":"string","description_kind":"plain","optional":true}},"block_types":{"header":{"nesting_mode":"list","block":{"attributes":{"name":{"type":"string","description_kind":"plain","required":true}},"block_types":{"value":{"nesting_mode":"list","block":{"attributes":{"exact":{"type":"string","description_kind":"plain","optional":true},"prefix":{"type":"string","description_kind":"plain","optional":true},"regex":{"type":"string","description_kind":"plain","optional":true}},"description_kind":"plain"},"max_items":1}},"description_kind":"plain"},"max_items":1}},"description_kind":"plain"},"min_items":1}},"description_kind":"plain"},"min_items":1}},"description_kind":"plain"},"max_items":1}},"description_kind":"plain"},"max_items":1},"timeouts":{"nesting_mode":"single","block":{"attributes":{"create":{"type":"string","description_kind":"plain","optional":true},"delete":{"type":"string","description_kind":"plain","optional":true},"update":{"type":"string","description_kind":"plain","optional":true}},"description_kind":"plain"}}},"description_kind":"plain"}},"yandex_api_gateway":{"version":0,"block":{"attributes":{"created_at":{"type":"string","description_kind":"plain","computed":true},"description":{"type":"string","description_kind":"plain","optional":true},"domain":{"type":"string","description_kind":"plain","computed":true},"execution_timeout":{"type":"string","description_kind":"plain","optional":true,"computed":true},"folder_id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"labels":{"type":["map","string"],"description_kind":"plain","optional":true},"log_group_id":{"type":"string","description_kind":"plain","computed":true},"name":{"type":"string","description_kind":"plain","required":true},"spec":{"type":"string","description_kind":"plain","required":true},"status":{"type":"string","description_kind":"plain","computed":true},"user_domains":{"type":["set","string"],"description_kind":"plain","deprecated":true,"computed":true},"variables":{"type":["map","string"],"description_kind":"plain","optional":true}},"block_types":{"canary":{"nesting_mode":"list","block":{"attributes":{"variables":{"type":["map","string"],"description_kind":"plain","optional":true},"weight":{"type":"number","description_kind":"plain","optional":true}},"description_kind":"plain"},"max_items":1},"connectivity":{"nesting_mode":"list","block":{"attributes":{"network_id":{"type":"string","description_kind":"plain","required":true}},"description_kind":"plain"},"max_items":1},"custom_domains":{"nesting_mode":"set","block":{"attributes":{"certificate_id":{"type":"string","description_kind":"plain","required":true},"domain_id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"fqdn":{"type":"string","description_kind":"plain","required":true}},"description_kind":"plain"}},"log_options":{"nesting_mode":"list","block":{"attributes":{"disabled":{"type":"bool","description_kind":"plain","optional":true},"folder_id":{"type":"string","description_kind":"plain","optional":true},"log_group_id":{"type":"string","description_kind":"plain","optional":true},"min_level":{"type":"string","description_kind":"plain","optional":true}},"description_kind":"plain"},"max_items":1},"timeouts":{"nesting_mode":"single","block":{"attributes":{"create":{"type":"string","description_kind":"plain","optional":true},"delete":{"type":"string","description_kind":"plain","optional":true},"update":{"type":"string","description_kind":"plain","optional":true}},"description_kind":"plain"}}},"description_kind":"plain"}},"yandex_audit_trails_trail":{"version":1,"block":{"attributes":{"description":{"type":"string","description_kind":"plain","optional":true},"folder_id":{"type":"string","description_kind":"plain","required":true},"id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"labels":{"type":["map","string"],"description_kind":"plain","optional":true},"name":{"type":"string","description_kind":"plain","required":true},"service_account_id":{"type":"string","description_kind":"plain","required":true},"status":{"type":"string","description_kind":"plain","computed":true},"trail_id":{"type":"string","description_kind":"plain","computed":true}},"block_types":{"data_stream_destination":{"nesting_mode":"list","block":{"attributes":{"database_id":{"type":"string","description_kind":"plain","required":true},"stream_name":{"type":"string","description_kind":"plain","required":true}},"description_kind":"plain"},"max_items":1},"filter":{"nesting_mode":"list","block":{"block_types":{"event_filters":{"nesting_mode":"list","block":{"attributes":{"service":{"type":"string","description_kind":"plain","required":true}},"block_types":{"categories":{"nesting_mode":"list","block":{"attributes":{"plane":{"type":"string","description_kind":"plain","required":true},"type":{"type":"string","description_kind":"plain","required":true}},"description_kind":"plain"},"min_items":1},"path_filter":{"nesting_mode":"list","block":{"block_types":{"any_filter":{"nesting_mode":"list","block":{"attributes":{"resource_id":{"type":"string","description_kind":"plain","required":true},"resource_type":{"type":"string","description_kind":"plain","required":true}},"description_kind":"plain"},"max_items":1},"some_filter":{"nesting_mode":"list","block":{"attributes":{"resource_id":{"type":"string","description_kind":"plain","required":true},"resource_type":{"type":"string","description_kind":"plain","required":true}},"block_types":{"any_filters":{"nesting_mode":"list","block":{"attributes":{"resource_id":{"type":"string","description_kind":"plain","required":true},"resource_type":{"type":"string","description_kind":"plain","required":true}},"description_kind":"plain"},"min_items":1}},"description_kind":"plain"},"max_items":1}},"description_kind":"plain"},"min_items":1,"max_items":1}},"description_kind":"plain"}},"path_filter":{"nesting_mode":"list","block":{"block_types":{"any_filter":{"nesting_mode":"list","block":{"attributes":{"resource_id":{"type":"string","description_kind":"plain","required":true},"resource_type":{"type":"string","description_kind":"plain","required":true}},"description_kind":"plain"},"max_items":1},"some_filter":{"nesting_mode":"list","block":{"attributes":{"resource_id":{"type":"string","description_kind":"plain","required":true},"resource_type":{"type":"string","description_kind":"plain","required":true}},"block_types":{"any_filters":{"nesting_mode":"list","block":{"attributes":{"resource_id":{"type":"string","description_kind":"plain","required":true},"resource_type":{"type":"string","description_kind":"plain","required":true}},"description_kind":"plain"},"min_items":1}},"description_kind":"plain"},"max_items":1}},"description_kind":"plain"},"max_items":1}},"description_kind":"plain","deprecated":true},"max_items":1},"filtering_policy":{"nesting_mode":"list","block":{"block_types":{"data_events_filter":{"nesting_mode":"list","block":{"attributes":{"excluded_events":{"type":["list","string"],"description_kind":"plain","optional":true},"included_events":{"type":["list","string"],"description_kind":"plain","optional":true},"service":{"type":"string","description_kind":"plain","required":true}},"block_types":{"resource_scope":{"nesting_mode":"list","block":{"attributes":{"resource_id":{"type":"string","description_kind":"plain","required":true},"resource_type":{"type":"string","description_kind":"plain","required":true}},"description_kind":"plain"},"min_items":1}},"description_kind":"plain"}},"management_events_filter":{"nesting_mode":"list","block":{"block_types":{"resource_scope":{"nesting_mode":"list","block":{"attributes":{"resource_id":{"type":"string","description_kind":"plain","required":true},"resource_type":{"type":"string","description_kind":"plain","required":true}},"description_kind":"plain"},"min_items":1}},"description_kind":"plain"},"max_items":1}},"description_kind":"plain"},"max_items":1},"logging_destination":{"nesting_mode":"list","block":{"attributes":{"log_group_id":{"type":"string","description_kind":"plain","required":true}},"description_kind":"plain"},"max_items":1},"storage_destination":{"nesting_mode":"list","block":{"attributes":{"bucket_name":{"type":"string","description_kind":"plain","required":true},"object_prefix":{"type":"string","description_kind":"plain","optional":true}},"description_kind":"plain"},"max_items":1},"timeouts":{"nesting_mode":"single","block":{"attributes":{"default":{"type":"string","description_kind":"plain","optional":true}},"description_kind":"plain"}}},"description_kind":"plain"}},"yandex_backup_policy":{"version":0,"block":{"attributes":{"archive_name":{"type":"string","description_kind":"plain","optional":true},"cbt":{"type":"string","description_kind":"plain","optional":true},"compression":{"type":"string","description_kind":"plain","optional":true},"created_at":{"type":"string","description_kind":"plain","computed":true},"enabled":{"type":"bool","description_kind":"plain","computed":true},"fast_backup_enabled":{"type":"bool","description_kind":"plain","optional":true},"folder_id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"format":{"type":"string","description_kind":"plain","optional":true},"id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"multi_volume_snapshotting_enabled":{"type":"bool","description_kind":"plain","optional":true},"name":{"type":"string","description_kind":"plain","required":true},"performance_window_enabled":{"type":"bool","description_kind":"plain","optional":true},"preserve_file_security_settings":{"type":"bool","description_kind":"plain","optional":true},"quiesce_snapshotting_enabled":{"type":"bool","description_kind":"plain","optional":true},"silent_mode_enabled":{"type":"bool","description_kind":"plain","optional":true},"splitting_bytes":{"type":"string","description_kind":"plain","optional":true},"updated_at":{"type":"string","description_kind":"plain","computed":true},"vss_provider":{"type":"string","description_kind":"plain","optional":true}},"block_types":{"reattempts":{"nesting_mode":"set","block":{"attributes":{"enabled":{"type":"bool","description_kind":"plain","optional":true},"interval":{"type":"string","description_kind":"plain","optional":true},"max_attempts":{"type":"number","description_kind":"plain","optional":true}},"description_kind":"plain"},"min_items":1,"max_items":1},"retention":{"nesting_mode":"set","block":{"attributes":{"after_backup":{"type":"bool","description_kind":"plain","optional":true}},"block_types":{"rules":{"nesting_mode":"set","block":{"attributes":{"max_age":{"type":"string","description_kind":"plain","optional":true},"max_count":{"type":"number","description_kind":"plain","optional":true},"repeat_period":{"type":["list","string"],"description_kind":"plain","optional":true}},"description_kind":"plain"}}},"description_kind":"plain"},"min_items":1,"max_items":1},"scheduling":{"nesting_mode":"set","block":{"attributes":{"enabled":{"type":"bool","description_kind":"plain","optional":true},"execute_by_interval":{"type":"number","description_kind":"plain","deprecated":true,"optional":true},"max_parallel_backups":{"type":"number","description_kind":"plain","optional":true},"random_max_delay":{"type":"string","description_kind":"plain","optional":true},"scheme":{"type":"string","description_kind":"plain","optional":true},"weekly_backup_day":{"type":"string","description_kind":"plain","optional":true}},"block_types":{"backup_sets":{"nesting_mode":"set","block":{"attributes":{"execute_by_interval":{"type":"number","description_kind":"plain","optional":true},"type":{"type":"string","description_kind":"plain","optional":true}},"block_types":{"execute_by_time":{"nesting_mode":"set","block":{"attributes":{"include_last_day_of_month":{"type":"bool","description_kind":"plain","optional":true},"monthdays":{"type":["list","number"],"description_kind":"plain","optional":true},"months":{"type":["list","number"],"description_kind":"plain","optional":true},"repeat_at":{"type":["list","string"],"description_kind":"plain","optional":true},"repeat_every":{"type":"string","description_kind":"plain","optional":true},"type":{"type":"string","description_kind":"plain","required":true},"weekdays":{"type":["list","string"],"description_kind":"plain","optional":true}},"description_kind":"plain"}}},"description_kind":"plain"}},"execute_by_time":{"nesting_mode":"set","block":{"attributes":{"include_last_day_of_month":{"type":"bool","description_kind":"plain","optional":true},"monthdays":{"type":["list","number"],"description_kind":"plain","optional":true},"months":{"type":["list","number"],"description_kind":"plain","optional":true},"repeat_at":{"type":["list","string"],"description_kind":"plain","optional":true},"repeat_every":{"type":"string","description_kind":"plain","optional":true},"type":{"type":"string","description_kind":"plain","required":true},"weekdays":{"type":["list","string"],"description_kind":"plain","optional":true}},"description_kind":"plain","deprecated":true}}},"description_kind":"plain"},"min_items":1,"max_items":1},"timeouts":{"nesting_mode":"single","block":{"attributes":{"create":{"type":"string","description_kind":"plain","optional":true},"delete":{"type":"string","description_kind":"plain","optional":true},"read":{"type":"string","description_kind":"plain","optional":true},"update":{"type":"string","description_kind":"plain","optional":true}},"description_kind":"plain"}},"vm_snapshot_reattempts":{"nesting_mode":"set","block":{"attributes":{"enabled":{"type":"bool","description_kind":"plain","optional":true},"interval":{"type":"string","description_kind":"plain","optional":true},"max_attempts":{"type":"number","description_kind":"plain","optional":true}},"description_kind":"plain"},"min_items":1,"max_items":1}},"description_kind":"plain"}},"yandex_backup_policy_bindings":{"version":0,"block":{"attributes":{"created_at":{"type":"string","description_kind":"plain","computed":true},"enabled":{"type":"bool","description_kind":"plain","computed":true},"id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"instance_id":{"type":"string","description_kind":"plain","required":true},"policy_id":{"type":"string","description_kind":"plain","required":true},"processing":{"type":"bool","description_kind":"plain","computed":true}},"block_types":{"timeouts":{"nesting_mode":"single","block":{"attributes":{"create":{"type":"string","description_kind":"plain","optional":true},"delete":{"type":"string","description_kind":"plain","optional":true},"read":{"type":"string","description_kind":"plain","optional":true},"update":{"type":"string","description_kind":"plain","optional":true}},"description_kind":"plain"}}},"description_kind":"plain"}},"yandex_billing_cloud_binding":{"version":0,"block":{"attributes":{"billing_account_id":{"type":"string","description_kind":"plain","required":true},"cloud_id":{"type":"string","description_kind":"plain","required":true},"id":{"type":"string","description":"Service generated identifier for the thing.","description_kind":"markdown","computed":true}},"description_kind":"plain"}},"yandex_cdn_origin_group":{"version":0,"block":{"attributes":{"folder_id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"name":{"type":"string","description_kind":"plain","required":true},"use_next":{"type":"bool","description_kind":"plain","optional":true}},"block_types":{"origin":{"nesting_mode":"set","block":{"attributes":{"backup":{"type":"bool","description_kind":"plain","optional":true},"enabled":{"type":"bool","description_kind":"plain","optional":true},"origin_group_id":{"type":"number","description_kind":"plain","computed":true},"source":{"type":"string","description_kind":"plain","required":true}},"description_kind":"plain"},"min_items":1},"timeouts":{"nesting_mode":"single","block":{"attributes":{"create":{"type":"string","description_kind":"plain","optional":true},"delete":{"type":"string","description_kind":"plain","optional":true},"update":{"type":"string","description_kind":"plain","optional":true}},"description_kind":"plain"}}},"description_kind":"plain"}},"yandex_cdn_resource":{"version":0,"block":{"attributes":{"active":{"type":"bool","description_kind":"plain","optional":true},"cname":{"type":"string","description_kind":"plain","optional":true,"computed":true},"created_at":{"type":"string","description_kind":"plain","computed":true},"folder_id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"origin_group_id":{"type":"number","description_kind":"plain","optional":true},"origin_group_name":{"type":"string","description_kind":"plain","optional":true},"origin_protocol":{"type":"string","description_kind":"plain","optional":true},"provider_cname":{"type":"string","description_kind":"plain","computed":true},"secondary_hostnames":{"type":["set","string"],"description_kind":"plain","optional":true},"updated_at":{"type":"string","description_kind":"plain","optional":true,"computed":true}},"block_types":{"options":{"nesting_mode":"list","block":{"attributes":{"allowed_http_methods":{"type":["list","string"],"description_kind":"plain","optional":true,"computed":true},"browser_cache_settings":{"type":"number","description_kind":"plain","optional":true,"computed":true},"cache_http_headers":{"type":["list","string"],"description_kind":"plain","optional":true,"computed":true},"cors":{"type":["list","string"],"description_kind":"plain","optional":true,"computed":true},"custom_host_header":{"type":"string","description_kind":"plain","optional":true,"computed":true},"custom_server_name":{"type":"string","description_kind":"plain","optional":true,"computed":true},"disable_cache":{"type":"bool","description_kind":"plain","optional":true,"computed":true},"disable_proxy_force_ranges":{"type":"bool","description_kind":"plain","optional":true,"computed":true},"edge_cache_settings":{"type":"number","description_kind":"plain","optional":true,"computed":true},"enable_ip_url_signing":{"type":"bool","description_kind":"plain","optional":true,"computed":true},"fetched_compressed":{"type":"bool","description_kind":"plain","optional":true,"computed":true},"forward_host_header":{"type":"bool","description_kind":"plain","optional":true,"computed":true},"gzip_on":{"type":"bool","description_kind":"plain","optional":true,"computed":true},"ignore_cookie":{"type":"bool","description_kind":"plain","optional":true,"computed":true},"ignore_query_params":{"type":"bool","description_kind":"plain","optional":true,"computed":true},"proxy_cache_methods_set":{"type":"bool","description_kind":"plain","optional":true,"computed":true},"query_params_blacklist":{"type":["list","string"],"description_kind":"plain","optional":true,"computed":true},"query_params_whitelist":{"type":["list","string"],"description_kind":"plain","optional":true,"computed":true},"redirect_http_to_https":{"type":"bool","description_kind":"plain","optional":true,"computed":true},"redirect_https_to_http":{"type":"bool","description_kind":"plain","optional":true,"computed":true},"secure_key":{"type":"string","description_kind":"plain","optional":true,"computed":true},"slice":{"type":"bool","description_kind":"plain","optional":true,"computed":true},"static_request_headers":{"type":["map","string"],"description_kind":"plain","optional":true,"computed":true},"static_response_headers":{"type":["map","string"],"description_kind":"plain","optional":true,"computed":true}},"block_types":{"ip_address_acl":{"nesting_mode":"list","block":{"attributes":{"excepted_values":{"type":["list","string"],"description_kind":"plain","optional":true,"computed":true},"policy_type":{"type":"string","description_kind":"plain","optional":true,"computed":true}},"description_kind":"plain"},"max_items":1}},"description_kind":"plain"},"max_items":1},"ssl_certificate":{"nesting_mode":"set","block":{"attributes":{"certificate_manager_id":{"type":"string","description_kind":"plain","optional":true},"status":{"type":"string","description_kind":"plain","computed":true},"type":{"type":"string","description_kind":"plain","required":true}},"description_kind":"plain"},"max_items":1},"timeouts":{"nesting_mode":"single","block":{"attributes":{"create":{"type":"string","description_kind":"plain","optional":true},"delete":{"type":"string","description_kind":"plain","optional":true},"update":{"type":"string","description_kind":"plain","optional":true}},"description_kind":"plain"}}},"description_kind":"plain"}},"yandex_cm_certificate":{"version":1,"block":{"attributes":{"challenges":{"type":["list",["object",{"created_at":"string","dns_name":"string","dns_type":"string","dns_value":"string","domain":"string","http_content":"string","http_url":"string","message":"string","type":"string","updated_at":"string"}]],"description_kind":"plain","computed":true},"created_at":{"type":"string","description_kind":"plain","computed":true},"deletion_protection":{"type":"bool","description_kind":"plain","optional":true},"description":{"type":"string","description_kind":"plain","optional":true},"domains":{"type":["list","string"],"description_kind":"plain","optional":true},"folder_id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"issued_at":{"type":"string","description_kind":"plain","computed":true},"issuer":{"type":"string","description_kind":"plain","computed":true},"labels":{"type":["map","string"],"description_kind":"plain","optional":true},"name":{"type":"string","description_kind":"plain","required":true},"not_after":{"type":"string","description_kind":"plain","computed":true},"not_before":{"type":"string","description_kind":"plain","computed":true},"serial":{"type":"string","description_kind":"plain","computed":true},"status":{"type":"string","description_kind":"plain","computed":true},"subject":{"type":"string","description_kind":"plain","computed":true},"type":{"type":"string","description_kind":"plain","computed":true},"updated_at":{"type":"string","description_kind":"plain","computed":true}},"block_types":{"managed":{"nesting_mode":"list","block":{"attributes":{"challenge_count":{"type":"number","description_kind":"plain","optional":true},"challenge_type":{"type":"string","description_kind":"plain","required":true}},"description_kind":"plain"},"max_items":1},"self_managed":{"nesting_mode":"list","block":{"attributes":{"certificate":{"type":"string","description_kind":"plain","required":true},"private_key":{"type":"string","description_kind":"plain","optional":true,"sensitive":true}},"block_types":{"private_key_lockbox_secret":{"nesting_mode":"list","block":{"attributes":{"id":{"type":"string","description_kind":"plain","required":true},"key":{"type":"string","description_kind":"plain","required":true}},"description_kind":"plain"},"max_items":1}},"description_kind":"plain"},"max_items":1},"timeouts":{"nesting_mode":"single","block":{"attributes":{"create":{"type":"string","description_kind":"plain","optional":true},"delete":{"type":"string","description_kind":"plain","optional":true},"read":{"type":"string","description_kind":"plain","optional":true},"update":{"type":"string","description_kind":"plain","optional":true}},"description_kind":"plain"}}},"description_kind":"plain"}},"yandex_compute_disk":{"version":0,"block":{"attributes":{"allow_recreate":{"type":"bool","description_kind":"plain","optional":true},"block_size":{"type":"number","description_kind":"plain","optional":true},"created_at":{"type":"string","description_kind":"plain","computed":true},"description":{"type":"string","description_kind":"plain","optional":true},"folder_id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"image_id":{"type":"string","description_kind":"plain","optional":true},"labels":{"type":["map","string"],"description_kind":"plain","optional":true},"name":{"type":"string","description_kind":"plain","optional":true},"product_ids":{"type":["list","string"],"description_kind":"plain","computed":true},"size":{"type":"number","description_kind":"plain","optional":true},"snapshot_id":{"type":"string","description_kind":"plain","optional":true},"status":{"type":"string","description_kind":"plain","computed":true},"type":{"type":"string","description_kind":"plain","optional":true},"zone":{"type":"string","description_kind":"plain","optional":true,"computed":true}},"block_types":{"disk_placement_policy":{"nesting_mode":"list","block":{"attributes":{"disk_placement_group_id":{"type":"string","description_kind":"plain","required":true}},"description_kind":"plain"},"max_items":1},"hardware_generation":{"nesting_mode":"list","block":{"block_types":{"generation2_features":{"nesting_mode":"list","block":{"description_kind":"plain"},"max_items":1},"legacy_features":{"nesting_mode":"list","block":{"attributes":{"pci_topology":{"type":"string","description_kind":"plain","optional":true,"computed":true}},"description_kind":"plain"},"max_items":1}},"description_kind":"plain"},"max_items":1},"timeouts":{"nesting_mode":"single","block":{"attributes":{"create":{"type":"string","description_kind":"plain","optional":true},"delete":{"type":"string","description_kind":"plain","optional":true},"update":{"type":"string","description_kind":"plain","optional":true}},"description_kind":"plain"}}},"description_kind":"plain"}},"yandex_compute_disk_iam_binding":{"version":0,"block":{"attributes":{"disk_id":{"type":"string","description_kind":"plain","required":true},"members":{"type":["set","string"],"description_kind":"plain","required":true},"role":{"type":"string","description_kind":"plain","required":true}},"description_kind":"plain"}},"yandex_compute_disk_placement_group":{"version":0,"block":{"attributes":{"created_at":{"type":"string","description_kind":"plain","computed":true},"description":{"type":"string","description_kind":"plain","optional":true},"folder_id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"labels":{"type":["map","string"],"description_kind":"plain","optional":true},"name":{"type":"string","description_kind":"plain","optional":true},"status":{"type":"string","description_kind":"plain","computed":true},"zone":{"type":"string","description_kind":"plain","optional":true}},"block_types":{"timeouts":{"nesting_mode":"single","block":{"attributes":{"create":{"type":"string","description_kind":"plain","optional":true},"delete":{"type":"string","description_kind":"plain","optional":true},"update":{"type":"string","description_kind":"plain","optional":true}},"description_kind":"plain"}}},"description_kind":"plain"}},"yandex_compute_disk_placement_group_iam_binding":{"version":0,"block":{"attributes":{"disk_placement_group_id":{"type":"string","description_kind":"plain","required":true},"members":{"type":["set","string"],"description_kind":"plain","required":true},"role":{"type":"string","description_kind":"plain","required":true}},"description_kind":"plain"}},"yandex_compute_filesystem":{"version":0,"block":{"attributes":{"block_size":{"type":"number","description_kind":"plain","optional":true},"created_at":{"type":"string","description_kind":"plain","computed":true},"description":{"type":"string","description_kind":"plain","optional":true},"folder_id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"labels":{"type":["map","string"],"description_kind":"plain","optional":true},"name":{"type":"string","description_kind":"plain","optional":true},"size":{"type":"number","description_kind":"plain","optional":true},"status":{"type":"string","description_kind":"plain","computed":true},"type":{"type":"string","description_kind":"plain","optional":true},"zone":{"type":"string","description_kind":"plain","optional":true,"computed":true}},"block_types":{"timeouts":{"nesting_mode":"single","block":{"attributes":{"create":{"type":"string","description_kind":"plain","optional":true},"delete":{"type":"string","description_kind":"plain","optional":true},"update":{"type":"string","description_kind":"plain","optional":true}},"description_kind":"plain"}}},"description_kind":"plain"}},"yandex_compute_filesystem_iam_binding":{"version":0,"block":{"attributes":{"filesystem_id":{"type":"string","description_kind":"plain","required":true},"members":{"type":["set","string"],"description_kind":"plain","required":true},"role":{"type":"string","description_kind":"plain","required":true}},"description_kind":"plain"}},"yandex_compute_gpu_cluster":{"version":0,"block":{"attributes":{"created_at":{"type":"string","description_kind":"plain","computed":true},"description":{"type":"string","description_kind":"plain","optional":true},"folder_id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"interconnect_type":{"type":"string","description_kind":"plain","optional":true},"labels":{"type":["map","string"],"description_kind":"plain","optional":true},"name":{"type":"string","description_kind":"plain","optional":true},"status":{"type":"string","description_kind":"plain","computed":true},"zone":{"type":"string","description_kind":"plain","optional":true,"computed":true}},"block_types":{"timeouts":{"nesting_mode":"single","block":{"attributes":{"create":{"type":"string","description_kind":"plain","optional":true},"delete":{"type":"string","description_kind":"plain","optional":true},"update":{"type":"string","description_kind":"plain","optional":true}},"description_kind":"plain"}}},"description_kind":"plain"}},"yandex_compute_gpu_cluster_iam_binding":{"version":0,"block":{"attributes":{"gpu_cluster_id":{"type":"string","description_kind":"plain","required":true},"members":{"type":["set","string"],"description_kind":"plain","required":true},"role":{"type":"string","description_kind":"plain","required":true}},"description_kind":"plain"}},"yandex_compute_image":{"version":0,"block":{"attributes":{"created_at":{"type":"string","description_kind":"plain","computed":true},"description":{"type":"string","description_kind":"plain","optional":true},"family":{"type":"string","description_kind":"plain","optional":true},"folder_id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"labels":{"type":["map","string"],"description_kind":"plain","optional":true},"min_disk_size":{"type":"number","description_kind":"plain","optional":true,"computed":true},"name":{"type":"string","description_kind":"plain","optional":true},"os_type":{"type":"string","description_kind":"plain","optional":true,"computed":true},"pooled":{"type":"bool","description_kind":"plain","optional":true,"computed":true},"product_ids":{"type":["set","string"],"description_kind":"plain","optional":true,"computed":true},"size":{"type":"number","description_kind":"plain","computed":true},"source_disk":{"type":"string","description_kind":"plain","optional":true,"computed":true},"source_family":{"type":"string","description_kind":"plain","optional":true,"computed":true},"source_image":{"type":"string","description_kind":"plain","optional":true,"computed":true},"source_snapshot":{"type":"string","description_kind":"plain","optional":true,"computed":true},"source_url":{"type":"string","description_kind":"plain","optional":true,"computed":true},"status":{"type":"string","description_kind":"plain","computed":true}},"block_types":{"hardware_generation":{"nesting_mode":"list","block":{"block_types":{"generation2_features":{"nesting_mode":"list","block":{"description_kind":"plain"},"max_items":1},"legacy_features":{"nesting_mode":"list","block":{"attributes":{"pci_topology":{"type":"string","description_kind":"plain","optional":true,"computed":true}},"description_kind":"plain"},"max_items":1}},"description_kind":"plain"},"max_items":1},"timeouts":{"nesting_mode":"single","block":{"attributes":{"create":{"type":"string","description_kind":"plain","optional":true},"delete":{"type":"string","description_kind":"plain","optional":true},"update":{"type":"string","description_kind":"plain","optional":true}},"description_kind":"plain"}}},"description_kind":"plain"}},"yandex_compute_image_iam_binding":{"version":0,"block":{"attributes":{"image_id":{"type":"string","description_kind":"plain","required":true},"members":{"type":["set","string"],"description_kind":"plain","required":true},"role":{"type":"string","description_kind":"plain","required":true}},"description_kind":"plain"}},"yandex_compute_instance":{"version":1,"block":{"attributes":{"allow_recreate":{"type":"bool","description_kind":"plain","optional":true},"allow_stopping_for_update":{"type":"bool","description_kind":"plain","optional":true},"created_at":{"type":"string","description_kind":"plain","computed":true},"description":{"type":"string","description_kind":"plain","optional":true},"folder_id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"fqdn":{"type":"string","description_kind":"plain","computed":true},"gpu_cluster_id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"hardware_generation":{"type":["list",["object",{"generation2_features":["list",["object",{}]],"legacy_features":["list",["object",{"pci_topology":"string"}]]}]],"description_kind":"plain","computed":true},"hostname":{"type":"string","description_kind":"plain","optional":true,"computed":true},"id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"labels":{"type":["map","string"],"description_kind":"plain","optional":true},"maintenance_grace_period":{"type":"string","description_kind":"plain","optional":true,"computed":true},"maintenance_policy":{"type":"string","description_kind":"plain","optional":true,"computed":true},"metadata":{"type":["map","string"],"description_kind":"plain","optional":true},"name":{"type":"string","description_kind":"plain","optional":true},"network_acceleration_type":{"type":"string","description_kind":"plain","optional":true},"platform_id":{"type":"string","description_kind":"plain","optional":true},"service_account_id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"status":{"type":"string","description_kind":"plain","computed":true},"zone":{"type":"string","description_kind":"plain","optional":true,"computed":true}},"block_types":{"boot_disk":{"nesting_mode":"list","block":{"attributes":{"auto_delete":{"type":"bool","description_kind":"plain","optional":true},"device_name":{"type":"string","description_kind":"plain","optional":true,"computed":true},"disk_id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"mode":{"type":"string","description_kind":"plain","optional":true,"computed":true}},"block_types":{"initialize_params":{"nesting_mode":"list","block":{"attributes":{"block_size":{"type":"number","description_kind":"plain","optional":true,"computed":true},"description":{"type":"string","description_kind":"plain","optional":true,"computed":true},"image_id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"name":{"type":"string","description_kind":"plain","optional":true,"computed":true},"size":{"type":"number","description_kind":"plain","optional":true,"computed":true},"snapshot_id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"type":{"type":"string","description_kind":"plain","optional":true}},"description_kind":"plain"},"max_items":1}},"description_kind":"plain"},"min_items":1,"max_items":1},"filesystem":{"nesting_mode":"set","block":{"attributes":{"device_name":{"type":"string","description_kind":"plain","optional":true,"computed":true},"filesystem_id":{"type":"string","description_kind":"plain","required":true},"mode":{"type":"string","description_kind":"plain","optional":true}},"description_kind":"plain"}},"local_disk":{"nesting_mode":"list","block":{"attributes":{"device_name":{"type":"string","description_kind":"plain","computed":true},"size_bytes":{"type":"number","description_kind":"plain","required":true}},"description_kind":"plain"}},"metadata_options":{"nesting_mode":"list","block":{"attributes":{"aws_v1_http_endpoint":{"type":"number","description_kind":"plain","optional":true,"computed":true},"aws_v1_http_token":{"type":"number","description_kind":"plain","optional":true,"computed":true},"gce_http_endpoint":{"type":"number","description_kind":"plain","optional":true,"computed":true},"gce_http_token":{"type":"number","description_kind":"plain","optional":true,"computed":true}},"description_kind":"plain"},"max_items":1},"network_interface":{"nesting_mode":"list","block":{"attributes":{"index":{"type":"number","description_kind":"plain","optional":true,"computed":true},"ip_address":{"type":"string","description_kind":"plain","optional":true,"computed":true},"ipv4":{"type":"bool","description_kind":"plain","optional":true},"ipv6":{"type":"bool","description_kind":"plain","optional":true,"computed":true},"ipv6_address":{"type":"string","description_kind":"plain","optional":true,"computed":true},"mac_address":{"type":"string","description_kind":"plain","computed":true},"nat":{"type":"bool","description_kind":"plain","optional":true},"nat_ip_address":{"type":"string","description_kind":"plain","optional":true,"computed":true},"nat_ip_version":{"type":"string","description_kind":"plain","computed":true},"security_group_ids":{"type":["set","string"],"description_kind":"plain","optional":true,"computed":true},"subnet_id":{"type":"string","description_kind":"plain","required":true}},"block_types":{"dns_record":{"nesting_mode":"list","block":{"attributes":{"dns_zone_id":{"type":"string","description_kind":"plain","optional":true},"fqdn":{"type":"string","description_kind":"plain","required":true},"ptr":{"type":"bool","description_kind":"plain","optional":true},"ttl":{"type":"number","description_kind":"plain","optional":true}},"description_kind":"plain"}},"ipv6_dns_record":{"nesting_mode":"list","block":{"attributes":{"dns_zone_id":{"type":"string","description_kind":"plain","optional":true},"fqdn":{"type":"string","description_kind":"plain","required":true},"ptr":{"type":"bool","description_kind":"plain","optional":true},"ttl":{"type":"number","description_kind":"plain","optional":true}},"description_kind":"plain"}},"nat_dns_record":{"nesting_mode":"list","block":{"attributes":{"dns_zone_id":{"type":"string","description_kind":"plain","optional":true},"fqdn":{"type":"string","description_kind":"plain","required":true},"ptr":{"type":"bool","description_kind":"plain","optional":true},"ttl":{"type":"number","description_kind":"plain","optional":true}},"description_kind":"plain"}}},"description_kind":"plain"},"min_items":1},"placement_policy":{"nesting_mode":"list","block":{"attributes":{"host_affinity_rules":{"type":["list",["object",{"key":"string","op":"string","values":["list","string"]}]],"description_kind":"plain","optional":true,"computed":true},"placement_group_id":{"type":"string","description_kind":"plain","optional":true},"placement_group_partition":{"type":"number","description_kind":"plain","optional":true}},"description_kind":"plain"},"max_items":1},"resources":{"nesting_mode":"list","block":{"attributes":{"core_fraction":{"type":"number","description_kind":"plain","optional":true},"cores":{"type":"number","description_kind":"plain","required":true},"gpus":{"type":"number","description_kind":"plain","optional":true},"memory":{"type":"number","description_kind":"plain","required":true}},"description_kind":"plain"},"min_items":1,"max_items":1},"scheduling_policy":{"nesting_mode":"list","block":{"attributes":{"preemptible":{"type":"bool","description_kind":"plain","optional":true}},"description_kind":"plain"},"max_items":1},"secondary_disk":{"nesting_mode":"set","block":{"attributes":{"auto_delete":{"type":"bool","description_kind":"plain","optional":true},"device_name":{"type":"string","description_kind":"plain","optional":true,"computed":true},"disk_id":{"type":"string","description_kind":"plain","required":true},"mode":{"type":"string","description_kind":"plain","optional":true}},"description_kind":"plain"}},"timeouts":{"nesting_mode":"single","block":{"attributes":{"create":{"type":"string","description_kind":"plain","optional":true},"delete":{"type":"string","description_kind":"plain","optional":true},"update":{"type":"string","description_kind":"plain","optional":true}},"description_kind":"plain"}}},"description_kind":"plain"}},"yandex_compute_instance_group":{"version":0,"block":{"attributes":{"created_at":{"type":"string","description_kind":"plain","computed":true},"deletion_protection":{"type":"bool","description_kind":"plain","optional":true},"description":{"type":"string","description_kind":"plain","optional":true},"folder_id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"instances":{"type":["list",["object",{"fqdn":"string","instance_id":"string","instance_tag":"string","name":"string","network_interface":["list",["object",{"index":"number","ip_address":"string","ipv4":"bool","ipv6":"bool","ipv6_address":"string","mac_address":"string","nat":"bool","nat_ip_address":"string","nat_ip_version":"string","subnet_id":"string"}]],"status":"string","status_changed_at":"string","status_message":"string","zone_id":"string"}]],"description_kind":"plain","computed":true},"labels":{"type":["map","string"],"description_kind":"plain","optional":true},"max_checking_health_duration":{"type":"number","description_kind":"plain","optional":true},"name":{"type":"string","description_kind":"plain","optional":true},"service_account_id":{"type":"string","description_kind":"plain","required":true},"status":{"type":"string","description_kind":"plain","computed":true},"variables":{"type":["map","string"],"description_kind":"plain","optional":true}},"block_types":{"allocation_policy":{"nesting_mode":"list","block":{"attributes":{"zones":{"type":["set","string"],"description_kind":"plain","required":true}},"block_types":{"instance_tags_pool":{"nesting_mode":"list","block":{"attributes":{"tags":{"type":["list","string"],"description_kind":"plain","required":true},"zone":{"type":"string","description_kind":"plain","required":true}},"description_kind":"plain"}}},"description_kind":"plain"},"min_items":1,"max_items":1},"application_load_balancer":{"nesting_mode":"list","block":{"attributes":{"ignore_health_checks":{"type":"bool","description_kind":"plain","optional":true},"max_opening_traffic_duration":{"type":"number","description_kind":"plain","optional":true},"status_message":{"type":"string","description_kind":"plain","computed":true},"target_group_description":{"type":"string","description_kind":"plain","optional":true},"target_group_id":{"type":"string","description_kind":"plain","computed":true},"target_group_labels":{"type":["map","string"],"description_kind":"plain","optional":true},"target_group_name":{"type":"string","description_kind":"plain","optional":true}},"description_kind":"plain"},"max_items":1},"deploy_policy":{"nesting_mode":"list","block":{"attributes":{"max_creating":{"type":"number","description_kind":"plain","optional":true},"max_deleting":{"type":"number","description_kind":"plain","optional":true},"max_expansion":{"type":"number","description_kind":"plain","required":true},"max_unavailable":{"type":"number","description_kind":"plain","required":true},"startup_duration":{"type":"number","description_kind":"plain","optional":true},"strategy":{"type":"string","description_kind":"plain","optional":true,"computed":true}},"description_kind":"plain"},"min_items":1,"max_items":1},"health_check":{"nesting_mode":"list","block":{"attributes":{"healthy_threshold":{"type":"number","description_kind":"plain","optional":true},"interval":{"type":"number","description_kind":"plain","optional":true},"timeout":{"type":"number","description_kind":"plain","optional":true},"unhealthy_threshold":{"type":"number","description_kind":"plain","optional":true}},"block_types":{"http_options":{"nesting_mode":"list","block":{"attributes":{"path":{"type":"string","description_kind":"plain","required":true},"port":{"type":"number","description_kind":"plain","required":true}},"description_kind":"plain"},"max_items":1},"tcp_options":{"nesting_mode":"list","block":{"attributes":{"port":{"type":"number","description_kind":"plain","required":true}},"description_kind":"plain"},"max_items":1}},"description_kind":"plain"}},"instance_template":{"nesting_mode":"list","block":{"attributes":{"description":{"type":"string","description_kind":"plain","optional":true},"hostname":{"type":"string","description_kind":"plain","optional":true},"labels":{"type":["map","string"],"description_kind":"plain","optional":true,"computed":true},"metadata":{"type":["map","string"],"description_kind":"plain","optional":true,"computed":true},"name":{"type":"string","description_kind":"plain","optional":true},"platform_id":{"type":"string","description_kind":"plain","optional":true},"service_account_id":{"type":"string","description_kind":"plain","optional":true}},"block_types":{"boot_disk":{"nesting_mode":"list","block":{"attributes":{"device_name":{"type":"string","description_kind":"plain","optional":true,"computed":true},"disk_id":{"type":"string","description_kind":"plain","optional":true},"mode":{"type":"string","description_kind":"plain","optional":true},"name":{"type":"string","description_kind":"plain","optional":true}},"block_types":{"initialize_params":{"nesting_mode":"list","block":{"attributes":{"description":{"type":"string","description_kind":"plain","optional":true},"image_id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"size":{"type":"number","description_kind":"plain","optional":true,"computed":true},"snapshot_id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"type":{"type":"string","description_kind":"plain","optional":true}},"description_kind":"plain"},"max_items":1}},"description_kind":"plain"},"min_items":1,"max_items":1},"filesystem":{"nesting_mode":"set","block":{"attributes":{"device_name":{"type":"string","description_kind":"plain","optional":true},"filesystem_id":{"type":"string","description_kind":"plain","required":true},"mode":{"type":"string","description_kind":"plain","optional":true}},"description_kind":"plain"}},"metadata_options":{"nesting_mode":"list","block":{"attributes":{"aws_v1_http_endpoint":{"type":"number","description_kind":"plain","optional":true,"computed":true},"aws_v1_http_token":{"type":"number","description_kind":"plain","optional":true,"computed":true},"gce_http_endpoint":{"type":"number","description_kind":"plain","optional":true,"computed":true},"gce_http_token":{"type":"number","description_kind":"plain","optional":true,"computed":true}},"description_kind":"plain"},"max_items":1},"network_interface":{"nesting_mode":"list","block":{"attributes":{"ip_address":{"type":"string","description_kind":"plain","optional":true,"computed":true},"ipv4":{"type":"bool","description_kind":"plain","optional":true},"ipv6":{"type":"bool","description_kind":"plain","optional":true,"computed":true},"ipv6_address":{"type":"string","description_kind":"plain","optional":true,"computed":true},"nat":{"type":"bool","description_kind":"plain","optional":true,"computed":true},"nat_ip_address":{"type":"string","description_kind":"plain","optional":true},"network_id":{"type":"string","description_kind":"plain","optional":true},"security_group_ids":{"type":["set","string"],"description_kind":"plain","optional":true},"subnet_ids":{"type":["set","string"],"description_kind":"plain","optional":true}},"block_types":{"dns_record":{"nesting_mode":"list","block":{"attributes":{"dns_zone_id":{"type":"string","description_kind":"plain","optional":true},"fqdn":{"type":"string","description_kind":"plain","required":true},"ptr":{"type":"bool","description_kind":"plain","optional":true,"computed":true},"ttl":{"type":"number","description_kind":"plain","optional":true}},"description_kind":"plain"}},"ipv6_dns_record":{"nesting_mode":"list","block":{"attributes":{"dns_zone_id":{"type":"string","description_kind":"plain","optional":true},"fqdn":{"type":"string","description_kind":"plain","required":true},"ptr":{"type":"bool","description_kind":"plain","optional":true,"computed":true},"ttl":{"type":"number","description_kind":"plain","optional":true}},"description_kind":"plain"}},"nat_dns_record":{"nesting_mode":"list","block":{"attributes":{"dns_zone_id":{"type":"string","description_kind":"plain","optional":true},"fqdn":{"type":"string","description_kind":"plain","required":true},"ptr":{"type":"bool","description_kind":"plain","optional":true,"computed":true},"ttl":{"type":"number","description_kind":"plain","optional":true}},"description_kind":"plain"}}},"description_kind":"plain"},"min_items":1},"network_settings":{"nesting_mode":"list","block":{"attributes":{"type":{"type":"string","description_kind":"plain","optional":true}},"description_kind":"plain"}},"placement_policy":{"nesting_mode":"list","block":{"attributes":{"placement_group_id":{"type":"string","description_kind":"plain","required":true}},"description_kind":"plain"},"max_items":1},"resources":{"nesting_mode":"list","block":{"attributes":{"core_fraction":{"type":"number","description_kind":"plain","optional":true},"cores":{"type":"number","description_kind":"plain","required":true},"gpus":{"type":"number","description_kind":"plain","optional":true},"memory":{"type":"number","description_kind":"plain","required":true}},"description_kind":"plain"},"min_items":1,"max_items":1},"scheduling_policy":{"nesting_mode":"list","block":{"attributes":{"preemptible":{"type":"bool","description_kind":"plain","optional":true}},"description_kind":"plain"},"max_items":1},"secondary_disk":{"nesting_mode":"list","block":{"attributes":{"device_name":{"type":"string","description_kind":"plain","optional":true},"disk_id":{"type":"string","description_kind":"plain","optional":true},"mode":{"type":"string","description_kind":"plain","optional":true},"name":{"type":"string","description_kind":"plain","optional":true}},"block_types":{"initialize_params":{"nesting_mode":"list","block":{"attributes":{"description":{"type":"string","description_kind":"plain","optional":true},"image_id":{"type":"string","description_kind":"plain","optional":true},"size":{"type":"number","description_kind":"plain","optional":true},"snapshot_id":{"type":"string","description_kind":"plain","optional":true},"type":{"type":"string","description_kind":"plain","optional":true}},"description_kind":"plain"},"max_items":1}},"description_kind":"plain"}}},"description_kind":"plain"},"min_items":1,"max_items":1},"load_balancer":{"nesting_mode":"list","block":{"attributes":{"ignore_health_checks":{"type":"bool","description_kind":"plain","optional":true},"max_opening_traffic_duration":{"type":"number","description_kind":"plain","optional":true},"status_message":{"type":"string","description_kind":"plain","computed":true},"target_group_description":{"type":"string","description_kind":"plain","optional":true},"target_group_id":{"type":"string","description_kind":"plain","computed":true},"target_group_labels":{"type":["map","string"],"description_kind":"plain","optional":true},"target_group_name":{"type":"string","description_kind":"plain","optional":true}},"description_kind":"plain"},"max_items":1},"scale_policy":{"nesting_mode":"list","block":{"block_types":{"auto_scale":{"nesting_mode":"list","block":{"attributes":{"auto_scale_type":{"type":"string","description_kind":"plain","optional":true},"cpu_utilization_target":{"type":"number","description_kind":"plain","optional":true},"initial_size":{"type":"number","description_kind":"plain","required":true},"max_size":{"type":"number","description_kind":"plain","optional":true},"measurement_duration":{"type":"number","description_kind":"plain","required":true},"min_zone_size":{"type":"number","description_kind":"plain","optional":true},"stabilization_duration":{"type":"number","description_kind":"plain","optional":true,"computed":true},"warmup_duration":{"type":"number","description_kind":"plain","optional":true,"computed":true}},"block_types":{"custom_rule":{"nesting_mode":"list","block":{"attributes":{"folder_id":{"type":"string","description_kind":"plain","optional":true},"labels":{"type":["map","string"],"description_kind":"plain","optional":true},"metric_name":{"type":"string","description_kind":"plain","required":true},"metric_type":{"type":"string","description_kind":"plain","required":true},"rule_type":{"type":"string","description_kind":"plain","required":true},"service":{"type":"string","description_kind":"plain","optional":true},"target":{"type":"number","description_kind":"plain","required":true}},"description_kind":"plain"}}},"description_kind":"plain"},"max_items":1},"fixed_scale":{"nesting_mode":"list","block":{"attributes":{"size":{"type":"number","description_kind":"plain","required":true}},"description_kind":"plain"},"max_items":1},"test_auto_scale":{"nesting_mode":"list","block":{"attributes":{"auto_scale_type":{"type":"string","description_kind":"plain","optional":true},"cpu_utilization_target":{"type":"number","description_kind":"plain","optional":true},"initial_size":{"type":"number","description_kind":"plain","required":true},"max_size":{"type":"number","description_kind":"plain","optional":true},"measurement_duration":{"type":"number","description_kind":"plain","required":true},"min_zone_size":{"type":"number","description_kind":"plain","optional":true},"stabilization_duration":{"type":"number","description_kind":"plain","optional":true,"computed":true},"warmup_duration":{"type":"number","description_kind":"plain","optional":true,"computed":true}},"block_types":{"custom_rule":{"nesting_mode":"list","block":{"attributes":{"folder_id":{"type":"string","description_kind":"plain","optional":true},"labels":{"type":["map","string"],"description_kind":"plain","optional":true},"metric_name":{"type":"string","description_kind":"plain","required":true},"metric_type":{"type":"string","description_kind":"plain","required":true},"rule_type":{"type":"string","description_kind":"plain","required":true},"service":{"type":"string","description_kind":"plain","optional":true},"target":{"type":"number","description_kind":"plain","required":true}},"description_kind":"plain"}}},"description_kind":"plain"},"max_items":1}},"description_kind":"plain"},"min_items":1,"max_items":1},"timeouts":{"nesting_mode":"single","block":{"attributes":{"create":{"type":"string","description_kind":"plain","optional":true},"delete":{"type":"string","description_kind":"plain","optional":true},"update":{"type":"string","description_kind":"plain","optional":true}},"description_kind":"plain"}}},"description_kind":"plain"}},"yandex_compute_instance_iam_binding":{"version":0,"block":{"attributes":{"instance_id":{"type":"string","description_kind":"plain","required":true},"members":{"type":["set","string"],"description_kind":"plain","required":true},"role":{"type":"string","description_kind":"plain","required":true}},"description_kind":"plain"}},"yandex_compute_placement_group":{"version":1,"block":{"attributes":{"created_at":{"type":"string","description_kind":"plain","computed":true},"description":{"type":"string","description_kind":"plain","optional":true},"folder_id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"labels":{"type":["map","string"],"description_kind":"plain","optional":true},"name":{"type":"string","description_kind":"plain","optional":true},"placement_strategy_partitions":{"type":"number","description_kind":"plain","optional":true},"placement_strategy_spread":{"type":"bool","description_kind":"plain","optional":true}},"block_types":{"timeouts":{"nesting_mode":"single","block":{"attributes":{"create":{"type":"string","description_kind":"plain","optional":true},"delete":{"type":"string","description_kind":"plain","optional":true},"update":{"type":"string","description_kind":"plain","optional":true}},"description_kind":"plain"}}},"description_kind":"plain"}},"yandex_compute_placement_group_iam_binding":{"version":0,"block":{"attributes":{"members":{"type":["set","string"],"description_kind":"plain","required":true},"placement_group_id":{"type":"string","description_kind":"plain","required":true},"role":{"type":"string","description_kind":"plain","required":true}},"description_kind":"plain"}},"yandex_compute_snapshot":{"version":0,"block":{"attributes":{"created_at":{"type":"string","description_kind":"plain","computed":true},"description":{"type":"string","description_kind":"plain","optional":true},"disk_size":{"type":"number","description_kind":"plain","computed":true},"folder_id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"labels":{"type":["map","string"],"description_kind":"plain","optional":true},"name":{"type":"string","description_kind":"plain","optional":true},"source_disk_id":{"type":"string","description_kind":"plain","required":true},"storage_size":{"type":"number","description_kind":"plain","computed":true}},"block_types":{"hardware_generation":{"nesting_mode":"list","block":{"block_types":{"generation2_features":{"nesting_mode":"list","block":{"description_kind":"plain"},"max_items":1},"legacy_features":{"nesting_mode":"list","block":{"attributes":{"pci_topology":{"type":"string","description_kind":"plain","optional":true,"computed":true}},"description_kind":"plain"},"max_items":1}},"description_kind":"plain"},"max_items":1},"timeouts":{"nesting_mode":"single","block":{"attributes":{"create":{"type":"string","description_kind":"plain","optional":true},"delete":{"type":"string","description_kind":"plain","optional":true},"update":{"type":"string","description_kind":"plain","optional":true}},"description_kind":"plain"}}},"description_kind":"plain"}},"yandex_compute_snapshot_iam_binding":{"version":0,"block":{"attributes":{"members":{"type":["set","string"],"description_kind":"plain","required":true},"role":{"type":"string","description_kind":"plain","required":true},"snapshot_id":{"type":"string","description_kind":"plain","required":true}},"description_kind":"plain"}},"yandex_compute_snapshot_schedule":{"version":0,"block":{"attributes":{"created_at":{"type":"string","description_kind":"plain","computed":true},"description":{"type":"string","description_kind":"plain","optional":true},"disk_ids":{"type":["set","string"],"description_kind":"plain","optional":true,"computed":true},"folder_id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"labels":{"type":["map","string"],"description_kind":"plain","optional":true},"name":{"type":"string","description_kind":"plain","optional":true},"retention_period":{"type":"string","description_kind":"plain","optional":true},"snapshot_count":{"type":"number","description_kind":"plain","optional":true},"status":{"type":"string","description_kind":"plain","computed":true}},"block_types":{"schedule_policy":{"nesting_mode":"list","block":{"attributes":{"expression":{"type":"string","description_kind":"plain","optional":true},"start_at":{"type":"string","description_kind":"plain","optional":true,"computed":true}},"description_kind":"plain"},"max_items":1},"snapshot_spec":{"nesting_mode":"list","block":{"attributes":{"description":{"type":"string","description_kind":"plain","optional":true},"labels":{"type":["map","string"],"description_kind":"plain","optional":true}},"description_kind":"plain"},"max_items":1},"timeouts":{"nesting_mode":"single","block":{"attributes":{"create":{"type":"string","description_kind":"plain","optional":true},"delete":{"type":"string","description_kind":"plain","optional":true},"update":{"type":"string","description_kind":"plain","optional":true}},"description_kind":"plain"}}},"description_kind":"plain"}},"yandex_compute_snapshot_schedule_iam_binding":{"version":0,"block":{"attributes":{"members":{"type":["set","string"],"description_kind":"plain","required":true},"role":{"type":"string","description_kind":"plain","required":true},"snapshot_schedule_id":{"type":"string","description_kind":"plain","required":true}},"description_kind":"plain"}},"yandex_container_registry":{"version":0,"block":{"attributes":{"created_at":{"type":"string","description_kind":"plain","computed":true},"folder_id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"labels":{"type":["map","string"],"description_kind":"plain","optional":true},"name":{"type":"string","description_kind":"plain","optional":true,"computed":true},"status":{"type":"string","description_kind":"plain","computed":true}},"block_types":{"timeouts":{"nesting_mode":"single","block":{"attributes":{"create":{"type":"string","description_kind":"plain","optional":true},"delete":{"type":"string","description_kind":"plain","optional":true},"update":{"type":"string","description_kind":"plain","optional":true}},"description_kind":"plain"}}},"description_kind":"plain"}},"yandex_container_registry_iam_binding":{"version":0,"block":{"attributes":{"id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"members":{"type":["set","string"],"description_kind":"plain","required":true},"registry_id":{"type":"string","description_kind":"plain","required":true},"role":{"type":"string","description_kind":"plain","required":true},"sleep_after":{"type":"number","description_kind":"plain","optional":true}},"block_types":{"timeouts":{"nesting_mode":"single","block":{"attributes":{"default":{"type":"string","description_kind":"plain","optional":true}},"description_kind":"plain"}}},"description_kind":"plain"}},"yandex_container_registry_ip_permission":{"version":0,"block":{"attributes":{"id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"pull":{"type":["set","string"],"description_kind":"plain","optional":true},"push":{"type":["set","string"],"description_kind":"plain","optional":true},"registry_id":{"type":"string","description_kind":"plain","required":true}},"block_types":{"timeouts":{"nesting_mode":"single","block":{"attributes":{"default":{"type":"string","description_kind":"plain","optional":true}},"description_kind":"plain"}}},"description_kind":"plain"}},"yandex_container_repository":{"version":0,"block":{"attributes":{"id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"name":{"type":"string","description_kind":"plain","required":true}},"block_types":{"timeouts":{"nesting_mode":"single","block":{"attributes":{"create":{"type":"string","description_kind":"plain","optional":true},"delete":{"type":"string","description_kind":"plain","optional":true}},"description_kind":"plain"}}},"description_kind":"plain"}},"yandex_container_repository_iam_binding":{"version":0,"block":{"attributes":{"id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"members":{"type":["set","string"],"description_kind":"plain","required":true},"repository_id":{"type":"string","description_kind":"plain","required":true},"role":{"type":"string","description_kind":"plain","required":true},"sleep_after":{"type":"number","description_kind":"plain","optional":true}},"block_types":{"timeouts":{"nesting_mode":"single","block":{"attributes":{"default":{"type":"string","description_kind":"plain","optional":true}},"description_kind":"plain"}}},"description_kind":"plain"}},"yandex_container_repository_lifecycle_policy":{"version":0,"block":{"attributes":{"created_at":{"type":"string","description_kind":"plain","computed":true},"description":{"type":"string","description_kind":"plain","optional":true,"computed":true},"id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"name":{"type":"string","description_kind":"plain","optional":true,"computed":true},"repository_id":{"type":"string","description_kind":"plain","required":true},"status":{"type":"string","description_kind":"plain","required":true}},"block_types":{"rule":{"nesting_mode":"list","block":{"attributes":{"description":{"type":"string","description_kind":"plain","optional":true,"computed":true},"expire_period":{"type":"string","description_kind":"plain","optional":true},"retained_top":{"type":"number","description_kind":"plain","optional":true,"computed":true},"tag_regexp":{"type":"string","description_kind":"plain","optional":true},"untagged":{"type":"bool","description_kind":"plain","optional":true,"computed":true}},"description_kind":"plain"}},"timeouts":{"nesting_mode":"single","block":{"attributes":{"default":{"type":"string","description_kind":"plain","optional":true}},"description_kind":"plain"}}},"description_kind":"plain"}},"yandex_dataproc_cluster":{"version":0,"block":{"attributes":{"bucket":{"type":"string","description_kind":"plain","optional":true},"created_at":{"type":"string","description_kind":"plain","computed":true},"deletion_protection":{"type":"bool","description_kind":"plain","optional":true,"computed":true},"description":{"type":"string","description_kind":"plain","optional":true},"folder_id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"host_group_ids":{"type":["set","string"],"description_kind":"plain","optional":true},"id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"labels":{"type":["map","string"],"description_kind":"plain","optional":true},"name":{"type":"string","description_kind":"plain","required":true},"security_group_ids":{"type":["set","string"],"description_kind":"plain","optional":true},"service_account_id":{"type":"string","description_kind":"plain","required":true},"ui_proxy":{"type":"bool","description_kind":"plain","optional":true},"zone_id":{"type":"string","description_kind":"plain","optional":true,"computed":true}},"block_types":{"cluster_config":{"nesting_mode":"list","block":{"attributes":{"version_id":{"type":"string","description_kind":"plain","optional":true,"computed":true}},"block_types":{"hadoop":{"nesting_mode":"list","block":{"attributes":{"properties":{"type":["map","string"],"description_kind":"plain","optional":true},"services":{"type":["set","string"],"description_kind":"plain","optional":true},"ssh_public_keys":{"type":["set","string"],"description_kind":"plain","optional":true}},"block_types":{"initialization_action":{"nesting_mode":"list","block":{"attributes":{"args":{"type":["list","string"],"description_kind":"plain","optional":true,"computed":true},"timeout":{"type":"string","description_kind":"plain","optional":true,"computed":true},"uri":{"type":"string","description_kind":"plain","required":true}},"description_kind":"plain"}}},"description_kind":"plain"},"max_items":1},"subcluster_spec":{"nesting_mode":"list","block":{"attributes":{"assign_public_ip":{"type":"bool","description_kind":"plain","optional":true},"hosts_count":{"type":"number","description_kind":"plain","required":true},"id":{"type":"string","description_kind":"plain","computed":true},"name":{"type":"string","description_kind":"plain","required":true},"role":{"type":"string","description_kind":"plain","required":true},"subnet_id":{"type":"string","description_kind":"plain","required":true}},"block_types":{"autoscaling_config":{"nesting_mode":"list","block":{"attributes":{"cpu_utilization_target":{"type":"string","description_kind":"plain","optional":true,"computed":true},"decommission_timeout":{"type":"string","description_kind":"plain","optional":true,"computed":true},"max_hosts_count":{"type":"number","description_kind":"plain","required":true},"measurement_duration":{"type":"string","description_kind":"plain","optional":true,"computed":true},"preemptible":{"type":"bool","description_kind":"plain","optional":true},"stabilization_duration":{"type":"string","description_kind":"plain","optional":true,"computed":true},"warmup_duration":{"type":"string","description_kind":"plain","optional":true,"computed":true}},"description_kind":"plain"},"max_items":1},"resources":{"nesting_mode":"list","block":{"attributes":{"disk_size":{"type":"number","description_kind":"plain","required":true},"disk_type_id":{"type":"string","description_kind":"plain","optional":true},"resource_preset_id":{"type":"string","description_kind":"plain","required":true}},"description_kind":"plain"},"min_items":1,"max_items":1}},"description_kind":"plain"},"min_items":1}},"description_kind":"plain"},"min_items":1,"max_items":1},"timeouts":{"nesting_mode":"single","block":{"attributes":{"create":{"type":"string","description_kind":"plain","optional":true},"delete":{"type":"string","description_kind":"plain","optional":true},"update":{"type":"string","description_kind":"plain","optional":true}},"description_kind":"plain"}}},"description_kind":"plain"}},"yandex_datasphere_community":{"version":0,"block":{"attributes":{"billing_account_id":{"type":"string","description_kind":"plain","optional":true},"created_at":{"type":"string","description_kind":"plain","computed":true},"created_by":{"type":"string","description_kind":"plain","computed":true},"description":{"type":"string","description_kind":"plain","optional":true,"computed":true},"id":{"type":"string","description_kind":"plain","computed":true},"labels":{"type":["map","string"],"description_kind":"plain","optional":true},"name":{"type":"string","description_kind":"plain","required":true},"organization_id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"timeouts":{"nested_type":{"attributes":{"create":{"type":"string","description":"A string that can be [parsed as a duration](https://pkg.go.dev/time#ParseDuration) consisting of numbers and unit suffixes, such as \"30s\" or \"2h45m\". Valid time units are \"s\" (seconds), \"m\" (minutes), \"h\" (hours).","description_kind":"plain","optional":true},"delete":{"type":"string","description":"A string that can be [parsed as a duration](https://pkg.go.dev/time#ParseDuration) consisting of numbers and unit suffixes, such as \"30s\" or \"2h45m\". Valid time units are \"s\" (seconds), \"m\" (minutes), \"h\" (hours). Setting a timeout for a Delete operation is only applicable if changes are saved into state before the destroy operation occurs.","description_kind":"plain","optional":true},"update":{"type":"string","description":"A string that can be [parsed as a duration](https://pkg.go.dev/time#ParseDuration) consisting of numbers and unit suffixes, such as \"30s\" or \"2h45m\". Valid time units are \"s\" (seconds), \"m\" (minutes), \"h\" (hours).","description_kind":"plain","optional":true}},"nesting_mode":"single"},"description_kind":"plain","optional":true}},"description_kind":"plain"}},"yandex_datasphere_community_iam_binding":{"version":0,"block":{"attributes":{"community_id":{"type":"string","description_kind":"plain","required":true},"members":{"type":["set","string"],"description_kind":"plain","required":true},"role":{"type":"string","description_kind":"plain","required":true}},"description_kind":"plain"}},"yandex_datasphere_project":{"version":0,"block":{"attributes":{"community_id":{"type":"string","description_kind":"plain","required":true},"created_at":{"type":"string","description_kind":"plain","computed":true},"created_by":{"type":"string","description_kind":"plain","computed":true},"description":{"type":"string","description_kind":"plain","optional":true,"computed":true},"id":{"type":"string","description_kind":"plain","computed":true},"labels":{"type":["map","string"],"description_kind":"plain","optional":true},"limits":{"nested_type":{"attributes":{"balance":{"type":"number","description_kind":"plain","optional":true,"computed":true},"max_units_per_execution":{"type":"number","description_kind":"plain","optional":true,"computed":true},"max_units_per_hour":{"type":"number","description_kind":"plain","optional":true,"computed":true}},"nesting_mode":"single"},"description_kind":"plain","optional":true,"computed":true},"name":{"type":"string","description_kind":"plain","required":true},"settings":{"nested_type":{"attributes":{"commit_mode":{"type":"string","description_kind":"plain","optional":true,"computed":true},"data_proc_cluster_id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"default_folder_id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"ide":{"type":"string","description_kind":"plain","optional":true,"computed":true},"security_group_ids":{"type":["set","string"],"description_kind":"plain","optional":true},"service_account_id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"stale_exec_timeout_mode":{"type":"string","description_kind":"plain","optional":true,"computed":true},"subnet_id":{"type":"string","description_kind":"plain","optional":true,"computed":true}},"nesting_mode":"single"},"description_kind":"plain","optional":true,"computed":true},"timeouts":{"nested_type":{"attributes":{"create":{"type":"string","description":"A string that can be [parsed as a duration](https://pkg.go.dev/time#ParseDuration) consisting of numbers and unit suffixes, such as \"30s\" or \"2h45m\". Valid time units are \"s\" (seconds), \"m\" (minutes), \"h\" (hours).","description_kind":"plain","optional":true},"delete":{"type":"string","description":"A string that can be [parsed as a duration](https://pkg.go.dev/time#ParseDuration) consisting of numbers and unit suffixes, such as \"30s\" or \"2h45m\". Valid time units are \"s\" (seconds), \"m\" (minutes), \"h\" (hours). Setting a timeout for a Delete operation is only applicable if changes are saved into state before the destroy operation occurs.","description_kind":"plain","optional":true},"update":{"type":"string","description":"A string that can be [parsed as a duration](https://pkg.go.dev/time#ParseDuration) consisting of numbers and unit suffixes, such as \"30s\" or \"2h45m\". Valid time units are \"s\" (seconds), \"m\" (minutes), \"h\" (hours).","description_kind":"plain","optional":true}},"nesting_mode":"single"},"description_kind":"plain","optional":true}},"description_kind":"plain"}},"yandex_datasphere_project_iam_binding":{"version":0,"block":{"attributes":{"members":{"type":["set","string"],"description_kind":"plain","required":true},"project_id":{"type":"string","description_kind":"plain","required":true},"role":{"type":"string","description_kind":"plain","required":true}},"description_kind":"plain"}},"yandex_datatransfer_endpoint":{"version":1,"block":{"attributes":{"description":{"type":"string","description_kind":"plain","optional":true,"computed":true},"folder_id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"labels":{"type":["map","string"],"description_kind":"plain","optional":true,"computed":true},"name":{"type":"string","description_kind":"plain","optional":true,"computed":true}},"block_types":{"settings":{"nesting_mode":"list","block":{"block_types":{"clickhouse_source":{"nesting_mode":"list","block":{"attributes":{"clickhouse_cluster_name":{"type":"string","description_kind":"plain","optional":true,"computed":true},"exclude_tables":{"type":["list","string"],"description_kind":"plain","optional":true,"computed":true},"include_tables":{"type":["list","string"],"description_kind":"plain","optional":true,"computed":true},"security_groups":{"type":["list","string"],"description_kind":"plain","optional":true,"computed":true},"subnet_id":{"type":"string","description_kind":"plain","optional":true,"computed":true}},"block_types":{"connection":{"nesting_mode":"list","block":{"block_types":{"connection_options":{"nesting_mode":"list","block":{"attributes":{"database":{"type":"string","description_kind":"plain","optional":true,"computed":true},"mdb_cluster_id":{"type":"string","description_kind":"plain","optional":true},"user":{"type":"string","description_kind":"plain","optional":true,"computed":true}},"block_types":{"on_premise":{"nesting_mode":"list","block":{"attributes":{"http_port":{"type":"number","description_kind":"plain","optional":true,"computed":true},"native_port":{"type":"number","description_kind":"plain","optional":true,"computed":true}},"block_types":{"shards":{"nesting_mode":"list","block":{"attributes":{"hosts":{"type":["list","string"],"description_kind":"plain","optional":true,"computed":true},"name":{"type":"string","description_kind":"plain","optional":true,"computed":true}},"description_kind":"plain"}},"tls_mode":{"nesting_mode":"list","block":{"block_types":{"disabled":{"nesting_mode":"list","block":{"description_kind":"plain"},"max_items":1},"enabled":{"nesting_mode":"list","block":{"attributes":{"ca_certificate":{"type":"string","description_kind":"plain","optional":true,"computed":true}},"description_kind":"plain"},"max_items":1}},"description_kind":"plain"},"max_items":1}},"description_kind":"plain"},"max_items":1},"password":{"nesting_mode":"list","block":{"attributes":{"raw":{"type":"string","description_kind":"plain","optional":true,"computed":true,"sensitive":true}},"description_kind":"plain"},"max_items":1}},"description_kind":"plain"},"max_items":1}},"description_kind":"plain"},"max_items":1}},"description_kind":"plain"},"max_items":1},"clickhouse_target":{"nesting_mode":"list","block":{"attributes":{"cleanup_policy":{"type":"string","description_kind":"plain","optional":true,"computed":true},"clickhouse_cluster_name":{"type":"string","description_kind":"plain","optional":true,"computed":true},"security_groups":{"type":["list","string"],"description_kind":"plain","optional":true,"computed":true},"subnet_id":{"type":"string","description_kind":"plain","optional":true,"computed":true}},"block_types":{"alt_names":{"nesting_mode":"list","block":{"attributes":{"from_name":{"type":"string","description_kind":"plain","optional":true,"computed":true},"to_name":{"type":"string","description_kind":"plain","optional":true,"computed":true}},"description_kind":"plain"}},"connection":{"nesting_mode":"list","block":{"block_types":{"connection_options":{"nesting_mode":"list","block":{"attributes":{"database":{"type":"string","description_kind":"plain","optional":true,"computed":true},"mdb_cluster_id":{"type":"string","description_kind":"plain","optional":true},"user":{"type":"string","description_kind":"plain","optional":true,"computed":true}},"block_types":{"on_premise":{"nesting_mode":"list","block":{"attributes":{"http_port":{"type":"number","description_kind":"plain","optional":true,"computed":true},"native_port":{"type":"number","description_kind":"plain","optional":true,"computed":true}},"block_types":{"shards":{"nesting_mode":"list","block":{"attributes":{"hosts":{"type":["list","string"],"description_kind":"plain","optional":true,"computed":true},"name":{"type":"string","description_kind":"plain","optional":true,"computed":true}},"description_kind":"plain"}},"tls_mode":{"nesting_mode":"list","block":{"block_types":{"disabled":{"nesting_mode":"list","block":{"description_kind":"plain"},"max_items":1},"enabled":{"nesting_mode":"list","block":{"attributes":{"ca_certificate":{"type":"string","description_kind":"plain","optional":true,"computed":true}},"description_kind":"plain"},"max_items":1}},"description_kind":"plain"},"max_items":1}},"description_kind":"plain"},"max_items":1},"password":{"nesting_mode":"list","block":{"attributes":{"raw":{"type":"string","description_kind":"plain","optional":true,"computed":true,"sensitive":true}},"description_kind":"plain"},"max_items":1}},"description_kind":"plain"},"max_items":1}},"description_kind":"plain"},"max_items":1},"sharding":{"nesting_mode":"list","block":{"block_types":{"column_value_hash":{"nesting_mode":"list","block":{"attributes":{"column_name":{"type":"string","description_kind":"plain","optional":true,"computed":true}},"description_kind":"plain"},"max_items":1},"custom_mapping":{"nesting_mode":"list","block":{"attributes":{"column_name":{"type":"string","description_kind":"plain","optional":true,"computed":true}},"block_types":{"mapping":{"nesting_mode":"list","block":{"attributes":{"shard_name":{"type":"string","description_kind":"plain","optional":true,"computed":true}},"block_types":{"column_value":{"nesting_mode":"list","block":{"attributes":{"string_value":{"type":"string","description_kind":"plain","optional":true,"computed":true}},"description_kind":"plain"},"max_items":1}},"description_kind":"plain"}}},"description_kind":"plain"},"max_items":1},"round_robin":{"nesting_mode":"list","block":{"description_kind":"plain"},"max_items":1},"transfer_id":{"nesting_mode":"list","block":{"description_kind":"plain"},"max_items":1}},"description_kind":"plain"},"max_items":1}},"description_kind":"plain"},"max_items":1},"kafka_source":{"nesting_mode":"list","block":{"attributes":{"security_groups":{"type":["list","string"],"description_kind":"plain","optional":true,"computed":true},"topic_name":{"type":"string","description_kind":"plain","optional":true,"computed":true},"topic_names":{"type":["list","string"],"description_kind":"plain","optional":true,"computed":true}},"block_types":{"auth":{"nesting_mode":"list","block":{"block_types":{"no_auth":{"nesting_mode":"list","block":{"description_kind":"plain"},"max_items":1},"sasl":{"nesting_mode":"list","block":{"attributes":{"mechanism":{"type":"string","description_kind":"plain","optional":true,"computed":true},"user":{"type":"string","description_kind":"plain","optional":true,"computed":true}},"block_types":{"password":{"nesting_mode":"list","block":{"attributes":{"raw":{"type":"string","description_kind":"plain","optional":true,"computed":true,"sensitive":true}},"description_kind":"plain"},"max_items":1}},"description_kind":"plain"},"max_items":1}},"description_kind":"plain"},"max_items":1},"connection":{"nesting_mode":"list","block":{"attributes":{"cluster_id":{"type":"string","description_kind":"plain","optional":true}},"block_types":{"on_premise":{"nesting_mode":"list","block":{"attributes":{"broker_urls":{"type":["list","string"],"description_kind":"plain","optional":true,"computed":true},"subnet_id":{"type":"string","description_kind":"plain","optional":true,"computed":true}},"block_types":{"tls_mode":{"nesting_mode":"list","block":{"block_types":{"disabled":{"nesting_mode":"list","block":{"description_kind":"plain"},"max_items":1},"enabled":{"nesting_mode":"list","block":{"attributes":{"ca_certificate":{"type":"string","description_kind":"plain","optional":true,"computed":true}},"description_kind":"plain"},"max_items":1}},"description_kind":"plain"},"max_items":1}},"description_kind":"plain"},"max_items":1}},"description_kind":"plain"},"max_items":1},"parser":{"nesting_mode":"list","block":{"block_types":{"audit_trails_v1_parser":{"nesting_mode":"list","block":{"description_kind":"plain"},"max_items":1},"cloud_logging_parser":{"nesting_mode":"list","block":{"description_kind":"plain"},"max_items":1},"json_parser":{"nesting_mode":"list","block":{"attributes":{"add_rest_column":{"type":"bool","description_kind":"plain","optional":true,"computed":true},"null_keys_allowed":{"type":"bool","description_kind":"plain","optional":true,"computed":true},"unescape_string_values":{"type":"bool","description_kind":"plain","optional":true,"computed":true}},"block_types":{"data_schema":{"nesting_mode":"list","block":{"attributes":{"json_fields":{"type":"string","description_kind":"plain","optional":true}},"block_types":{"fields":{"nesting_mode":"list","block":{"block_types":{"fields":{"nesting_mode":"list","block":{"attributes":{"key":{"type":"bool","description_kind":"plain","optional":true,"computed":true},"name":{"type":"string","description_kind":"plain","optional":true,"computed":true},"path":{"type":"string","description_kind":"plain","optional":true,"computed":true},"required":{"type":"bool","description_kind":"plain","optional":true,"computed":true},"type":{"type":"string","description_kind":"plain","optional":true,"computed":true}},"description_kind":"plain"}}},"description_kind":"plain"},"max_items":1}},"description_kind":"plain"},"max_items":1}},"description_kind":"plain"},"max_items":1},"tskv_parser":{"nesting_mode":"list","block":{"attributes":{"add_rest_column":{"type":"bool","description_kind":"plain","optional":true,"computed":true},"null_keys_allowed":{"type":"bool","description_kind":"plain","optional":true,"computed":true},"unescape_string_values":{"type":"bool","description_kind":"plain","optional":true,"computed":true}},"block_types":{"data_schema":{"nesting_mode":"list","block":{"attributes":{"json_fields":{"type":"string","description_kind":"plain","optional":true}},"block_types":{"fields":{"nesting_mode":"list","block":{"block_types":{"fields":{"nesting_mode":"list","block":{"attributes":{"key":{"type":"bool","description_kind":"plain","optional":true,"computed":true},"name":{"type":"string","description_kind":"plain","optional":true,"computed":true},"path":{"type":"string","description_kind":"plain","optional":true,"computed":true},"required":{"type":"bool","description_kind":"plain","optional":true,"computed":true},"type":{"type":"string","description_kind":"plain","optional":true,"computed":true}},"description_kind":"plain"}}},"description_kind":"plain"},"max_items":1}},"description_kind":"plain"},"max_items":1}},"description_kind":"plain"},"max_items":1}},"description_kind":"plain"},"max_items":1},"transformer":{"nesting_mode":"list","block":{"attributes":{"buffer_flush_interval":{"type":"string","description_kind":"plain","optional":true,"computed":true},"buffer_size":{"type":"string","description_kind":"plain","optional":true,"computed":true},"cloud_function":{"type":"string","description_kind":"plain","optional":true,"computed":true},"invocation_timeout":{"type":"string","description_kind":"plain","optional":true,"computed":true},"number_of_retries":{"type":"number","description_kind":"plain","optional":true,"computed":true},"service_account_id":{"type":"string","description_kind":"plain","optional":true,"computed":true}},"description_kind":"plain"},"max_items":1}},"description_kind":"plain"},"max_items":1},"kafka_target":{"nesting_mode":"list","block":{"attributes":{"security_groups":{"type":["list","string"],"description_kind":"plain","optional":true,"computed":true}},"block_types":{"auth":{"nesting_mode":"list","block":{"block_types":{"no_auth":{"nesting_mode":"list","block":{"description_kind":"plain"},"max_items":1},"sasl":{"nesting_mode":"list","block":{"attributes":{"mechanism":{"type":"string","description_kind":"plain","optional":true,"computed":true},"user":{"type":"string","description_kind":"plain","optional":true,"computed":true}},"block_types":{"password":{"nesting_mode":"list","block":{"attributes":{"raw":{"type":"string","description_kind":"plain","optional":true,"computed":true,"sensitive":true}},"description_kind":"plain"},"max_items":1}},"description_kind":"plain"},"max_items":1}},"description_kind":"plain"},"max_items":1},"connection":{"nesting_mode":"list","block":{"attributes":{"cluster_id":{"type":"string","description_kind":"plain","optional":true}},"block_types":{"on_premise":{"nesting_mode":"list","block":{"attributes":{"broker_urls":{"type":["list","string"],"description_kind":"plain","optional":true,"computed":true},"subnet_id":{"type":"string","description_kind":"plain","optional":true,"computed":true}},"block_types":{"tls_mode":{"nesting_mode":"list","block":{"block_types":{"disabled":{"nesting_mode":"list","block":{"description_kind":"plain"},"max_items":1},"enabled":{"nesting_mode":"list","block":{"attributes":{"ca_certificate":{"type":"string","description_kind":"plain","optional":true,"computed":true}},"description_kind":"plain"},"max_items":1}},"description_kind":"plain"},"max_items":1}},"description_kind":"plain"},"max_items":1}},"description_kind":"plain"},"max_items":1},"serializer":{"nesting_mode":"list","block":{"block_types":{"serializer_auto":{"nesting_mode":"list","block":{"description_kind":"plain"},"max_items":1},"serializer_debezium":{"nesting_mode":"list","block":{"block_types":{"serializer_parameters":{"nesting_mode":"list","block":{"attributes":{"key":{"type":"string","description_kind":"plain","optional":true,"computed":true},"value":{"type":"string","description_kind":"plain","optional":true,"computed":true}},"description_kind":"plain"}}},"description_kind":"plain"},"max_items":1},"serializer_json":{"nesting_mode":"list","block":{"description_kind":"plain"},"max_items":1}},"description_kind":"plain"},"max_items":1},"topic_settings":{"nesting_mode":"list","block":{"attributes":{"topic_prefix":{"type":"string","description_kind":"plain","optional":true}},"block_types":{"topic":{"nesting_mode":"list","block":{"attributes":{"save_tx_order":{"type":"bool","description_kind":"plain","optional":true,"computed":true},"topic_name":{"type":"string","description_kind":"plain","optional":true,"computed":true}},"description_kind":"plain"},"max_items":1}},"description_kind":"plain"},"max_items":1}},"description_kind":"plain"},"max_items":1},"metrika_source":{"nesting_mode":"list","block":{"attributes":{"counter_ids":{"type":["list","number"],"description_kind":"plain","optional":true,"computed":true}},"block_types":{"streams":{"nesting_mode":"list","block":{"attributes":{"columns":{"type":["list","string"],"description_kind":"plain","optional":true,"computed":true},"type":{"type":"string","description_kind":"plain","optional":true,"computed":true}},"description_kind":"plain"}},"token":{"nesting_mode":"list","block":{"attributes":{"raw":{"type":"string","description_kind":"plain","optional":true,"computed":true,"sensitive":true}},"description_kind":"plain"},"max_items":1}},"description_kind":"plain"},"max_items":1},"mongo_source":{"nesting_mode":"list","block":{"attributes":{"secondary_preferred_mode":{"type":"bool","description_kind":"plain","optional":true,"computed":true},"security_groups":{"type":["list","string"],"description_kind":"plain","optional":true,"computed":true},"subnet_id":{"type":"string","description_kind":"plain","optional":true,"computed":true}},"block_types":{"collections":{"nesting_mode":"list","block":{"attributes":{"collection_name":{"type":"string","description_kind":"plain","optional":true,"computed":true},"database_name":{"type":"string","description_kind":"plain","optional":true,"computed":true}},"description_kind":"plain"}},"connection":{"nesting_mode":"list","block":{"block_types":{"connection_options":{"nesting_mode":"list","block":{"attributes":{"auth_source":{"type":"string","description_kind":"plain","optional":true,"computed":true},"mdb_cluster_id":{"type":"string","description_kind":"plain","optional":true},"user":{"type":"string","description_kind":"plain","optional":true,"computed":true}},"block_types":{"on_premise":{"nesting_mode":"list","block":{"attributes":{"hosts":{"type":["list","string"],"description_kind":"plain","optional":true,"computed":true},"port":{"type":"number","description_kind":"plain","optional":true,"computed":true},"replica_set":{"type":"string","description_kind":"plain","optional":true,"computed":true}},"block_types":{"tls_mode":{"nesting_mode":"list","block":{"block_types":{"disabled":{"nesting_mode":"list","block":{"description_kind":"plain"},"max_items":1},"enabled":{"nesting_mode":"list","block":{"attributes":{"ca_certificate":{"type":"string","description_kind":"plain","optional":true,"computed":true}},"description_kind":"plain"},"max_items":1}},"description_kind":"plain"},"max_items":1}},"description_kind":"plain"},"max_items":1},"password":{"nesting_mode":"list","block":{"attributes":{"raw":{"type":"string","description_kind":"plain","optional":true,"computed":true,"sensitive":true}},"description_kind":"plain"},"max_items":1}},"description_kind":"plain"},"max_items":1}},"description_kind":"plain"},"max_items":1},"excluded_collections":{"nesting_mode":"list","block":{"attributes":{"collection_name":{"type":"string","description_kind":"plain","optional":true,"computed":true},"database_name":{"type":"string","description_kind":"plain","optional":true,"computed":true}},"description_kind":"plain"}}},"description_kind":"plain"},"max_items":1},"mongo_target":{"nesting_mode":"list","block":{"attributes":{"cleanup_policy":{"type":"string","description_kind":"plain","optional":true,"computed":true},"database":{"type":"string","description_kind":"plain","optional":true,"computed":true},"security_groups":{"type":["list","string"],"description_kind":"plain","optional":true,"computed":true},"subnet_id":{"type":"string","description_kind":"plain","optional":true,"computed":true}},"block_types":{"connection":{"nesting_mode":"list","block":{"block_types":{"connection_options":{"nesting_mode":"list","block":{"attributes":{"auth_source":{"type":"string","description_kind":"plain","optional":true,"computed":true},"mdb_cluster_id":{"type":"string","description_kind":"plain","optional":true},"user":{"type":"string","description_kind":"plain","optional":true,"computed":true}},"block_types":{"on_premise":{"nesting_mode":"list","block":{"attributes":{"hosts":{"type":["list","string"],"description_kind":"plain","optional":true,"computed":true},"port":{"type":"number","description_kind":"plain","optional":true,"computed":true},"replica_set":{"type":"string","description_kind":"plain","optional":true,"computed":true}},"block_types":{"tls_mode":{"nesting_mode":"list","block":{"block_types":{"disabled":{"nesting_mode":"list","block":{"description_kind":"plain"},"max_items":1},"enabled":{"nesting_mode":"list","block":{"attributes":{"ca_certificate":{"type":"string","description_kind":"plain","optional":true,"computed":true}},"description_kind":"plain"},"max_items":1}},"description_kind":"plain"},"max_items":1}},"description_kind":"plain"},"max_items":1},"password":{"nesting_mode":"list","block":{"attributes":{"raw":{"type":"string","description_kind":"plain","optional":true,"computed":true,"sensitive":true}},"description_kind":"plain"},"max_items":1}},"description_kind":"plain"},"max_items":1}},"description_kind":"plain"},"max_items":1}},"description_kind":"plain"},"max_items":1},"mysql_source":{"nesting_mode":"list","block":{"attributes":{"database":{"type":"string","description_kind":"plain","optional":true,"computed":true},"exclude_tables_regex":{"type":["list","string"],"description_kind":"plain","optional":true,"computed":true},"include_tables_regex":{"type":["list","string"],"description_kind":"plain","optional":true,"computed":true},"security_groups":{"type":["list","string"],"description_kind":"plain","optional":true,"computed":true},"service_database":{"type":"string","description_kind":"plain","optional":true,"computed":true},"timezone":{"type":"string","description_kind":"plain","optional":true,"computed":true},"user":{"type":"string","description_kind":"plain","optional":true,"computed":true}},"block_types":{"connection":{"nesting_mode":"list","block":{"attributes":{"mdb_cluster_id":{"type":"string","description_kind":"plain","optional":true}},"block_types":{"on_premise":{"nesting_mode":"list","block":{"attributes":{"hosts":{"type":["list","string"],"description_kind":"plain","optional":true,"computed":true},"port":{"type":"number","description_kind":"plain","optional":true,"computed":true},"subnet_id":{"type":"string","description_kind":"plain","optional":true,"computed":true}},"block_types":{"tls_mode":{"nesting_mode":"list","block":{"block_types":{"disabled":{"nesting_mode":"list","block":{"description_kind":"plain"},"max_items":1},"enabled":{"nesting_mode":"list","block":{"attributes":{"ca_certificate":{"type":"string","description_kind":"plain","optional":true,"computed":true}},"description_kind":"plain"},"max_items":1}},"description_kind":"plain"},"max_items":1}},"description_kind":"plain"},"max_items":1}},"description_kind":"plain"},"max_items":1},"object_transfer_settings":{"nesting_mode":"list","block":{"attributes":{"routine":{"type":"string","description_kind":"plain","optional":true,"computed":true},"tables":{"type":"string","description_kind":"plain","optional":true,"computed":true},"trigger":{"type":"string","description_kind":"plain","optional":true,"computed":true},"view":{"type":"string","description_kind":"plain","optional":true,"computed":true}},"description_kind":"plain"},"max_items":1},"password":{"nesting_mode":"list","block":{"attributes":{"raw":{"type":"string","description_kind":"plain","optional":true,"computed":true,"sensitive":true}},"description_kind":"plain"},"max_items":1}},"description_kind":"plain"},"max_items":1},"mysql_target":{"nesting_mode":"list","block":{"attributes":{"cleanup_policy":{"type":"string","description_kind":"plain","optional":true,"computed":true},"database":{"type":"string","description_kind":"plain","optional":true,"computed":true},"security_groups":{"type":["list","string"],"description_kind":"plain","optional":true,"computed":true},"service_database":{"type":"string","description_kind":"plain","optional":true,"computed":true},"skip_constraint_checks":{"type":"bool","description_kind":"plain","optional":true,"computed":true},"sql_mode":{"type":"string","description_kind":"plain","optional":true,"computed":true},"timezone":{"type":"string","description_kind":"plain","optional":true,"computed":true},"user":{"type":"string","description_kind":"plain","optional":true,"computed":true}},"block_types":{"connection":{"nesting_mode":"list","block":{"attributes":{"mdb_cluster_id":{"type":"string","description_kind":"plain","optional":true}},"block_types":{"on_premise":{"nesting_mode":"list","block":{"attributes":{"hosts":{"type":["list","string"],"description_kind":"plain","optional":true,"computed":true},"port":{"type":"number","description_kind":"plain","optional":true,"computed":true},"subnet_id":{"type":"string","description_kind":"plain","optional":true,"computed":true}},"block_types":{"tls_mode":{"nesting_mode":"list","block":{"block_types":{"disabled":{"nesting_mode":"list","block":{"description_kind":"plain"},"max_items":1},"enabled":{"nesting_mode":"list","block":{"attributes":{"ca_certificate":{"type":"string","description_kind":"plain","optional":true,"computed":true}},"description_kind":"plain"},"max_items":1}},"description_kind":"plain"},"max_items":1}},"description_kind":"plain"},"max_items":1}},"description_kind":"plain"},"max_items":1},"password":{"nesting_mode":"list","block":{"attributes":{"raw":{"type":"string","description_kind":"plain","optional":true,"computed":true,"sensitive":true}},"description_kind":"plain"},"max_items":1}},"description_kind":"plain"},"max_items":1},"postgres_source":{"nesting_mode":"list","block":{"attributes":{"database":{"type":"string","description_kind":"plain","optional":true,"computed":true},"exclude_tables":{"type":["list","string"],"description_kind":"plain","optional":true,"computed":true},"include_tables":{"type":["list","string"],"description_kind":"plain","optional":true,"computed":true},"security_groups":{"type":["list","string"],"description_kind":"plain","optional":true,"computed":true},"service_schema":{"type":"string","description_kind":"plain","optional":true,"computed":true},"slot_gigabyte_lag_limit":{"type":"number","description_kind":"plain","optional":true,"computed":true},"user":{"type":"string","description_kind":"plain","optional":true,"computed":true}},"block_types":{"connection":{"nesting_mode":"list","block":{"attributes":{"mdb_cluster_id":{"type":"string","description_kind":"plain","optional":true}},"block_types":{"on_premise":{"nesting_mode":"list","block":{"attributes":{"hosts":{"type":["list","string"],"description_kind":"plain","optional":true,"computed":true},"port":{"type":"number","description_kind":"plain","optional":true,"computed":true},"subnet_id":{"type":"string","description_kind":"plain","optional":true,"computed":true}},"block_types":{"tls_mode":{"nesting_mode":"list","block":{"block_types":{"disabled":{"nesting_mode":"list","block":{"description_kind":"plain"},"max_items":1},"enabled":{"nesting_mode":"list","block":{"attributes":{"ca_certificate":{"type":"string","description_kind":"plain","optional":true,"computed":true}},"description_kind":"plain"},"max_items":1}},"description_kind":"plain"},"max_items":1}},"description_kind":"plain"},"max_items":1}},"description_kind":"plain"},"max_items":1},"object_transfer_settings":{"nesting_mode":"list","block":{"attributes":{"cast":{"type":"string","description_kind":"plain","optional":true,"computed":true},"collation":{"type":"string","description_kind":"plain","optional":true,"computed":true},"constraint":{"type":"string","description_kind":"plain","optional":true,"computed":true},"default_values":{"type":"string","description_kind":"plain","optional":true,"computed":true},"fk_constraint":{"type":"string","description_kind":"plain","optional":true,"computed":true},"function":{"type":"string","description_kind":"plain","optional":true,"computed":true},"index":{"type":"string","description_kind":"plain","optional":true,"computed":true},"materialized_view":{"type":"string","description_kind":"plain","optional":true,"computed":true},"policy":{"type":"string","description_kind":"plain","optional":true,"computed":true},"primary_key":{"type":"string","description_kind":"plain","optional":true,"computed":true},"rule":{"type":"string","description_kind":"plain","optional":true,"computed":true},"sequence":{"type":"string","description_kind":"plain","optional":true,"computed":true},"sequence_owned_by":{"type":"string","description_kind":"plain","optional":true,"computed":true},"sequence_set":{"type":"string","description_kind":"plain","optional":true,"computed":true},"table":{"type":"string","description_kind":"plain","optional":true,"computed":true},"trigger":{"type":"string","description_kind":"plain","optional":true,"computed":true},"type":{"type":"string","description_kind":"plain","optional":true,"computed":true},"view":{"type":"string","description_kind":"plain","optional":true,"computed":true}},"description_kind":"plain"},"max_items":1},"password":{"nesting_mode":"list","block":{"attributes":{"raw":{"type":"string","description_kind":"plain","optional":true,"computed":true,"sensitive":true}},"description_kind":"plain"},"max_items":1}},"description_kind":"plain"},"max_items":1},"postgres_target":{"nesting_mode":"list","block":{"attributes":{"cleanup_policy":{"type":"string","description_kind":"plain","optional":true,"computed":true},"database":{"type":"string","description_kind":"plain","optional":true,"computed":true},"security_groups":{"type":["list","string"],"description_kind":"plain","optional":true,"computed":true},"user":{"type":"string","description_kind":"plain","optional":true,"computed":true}},"block_types":{"connection":{"nesting_mode":"list","block":{"attributes":{"mdb_cluster_id":{"type":"string","description_kind":"plain","optional":true}},"block_types":{"on_premise":{"nesting_mode":"list","block":{"attributes":{"hosts":{"type":["list","string"],"description_kind":"plain","optional":true,"computed":true},"port":{"type":"number","description_kind":"plain","optional":true,"computed":true},"subnet_id":{"type":"string","description_kind":"plain","optional":true,"computed":true}},"block_types":{"tls_mode":{"nesting_mode":"list","block":{"block_types":{"disabled":{"nesting_mode":"list","block":{"description_kind":"plain"},"max_items":1},"enabled":{"nesting_mode":"list","block":{"attributes":{"ca_certificate":{"type":"string","description_kind":"plain","optional":true,"computed":true}},"description_kind":"plain"},"max_items":1}},"description_kind":"plain"},"max_items":1}},"description_kind":"plain"},"max_items":1}},"description_kind":"plain"},"max_items":1},"password":{"nesting_mode":"list","block":{"attributes":{"raw":{"type":"string","description_kind":"plain","optional":true,"computed":true,"sensitive":true}},"description_kind":"plain"},"max_items":1}},"description_kind":"plain"},"max_items":1},"ydb_source":{"nesting_mode":"list","block":{"attributes":{"changefeed_custom_name":{"type":"string","description_kind":"plain","optional":true,"computed":true},"database":{"type":"string","description_kind":"plain","optional":true,"computed":true},"instance":{"type":"string","description_kind":"plain","optional":true,"computed":true},"paths":{"type":["list","string"],"description_kind":"plain","optional":true,"computed":true},"sa_key_content":{"type":"string","description_kind":"plain","optional":true,"computed":true,"sensitive":true},"security_groups":{"type":["list","string"],"description_kind":"plain","optional":true,"computed":true},"service_account_id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"subnet_id":{"type":"string","description_kind":"plain","optional":true,"computed":true}},"description_kind":"plain"},"max_items":1},"ydb_target":{"nesting_mode":"list","block":{"attributes":{"cleanup_policy":{"type":"string","description_kind":"plain","optional":true,"computed":true},"database":{"type":"string","description_kind":"plain","optional":true,"computed":true},"default_compression":{"type":"string","description_kind":"plain","optional":true,"computed":true},"instance":{"type":"string","description_kind":"plain","optional":true,"computed":true},"is_table_column_oriented":{"type":"bool","description_kind":"plain","optional":true,"computed":true},"path":{"type":"string","description_kind":"plain","optional":true,"computed":true},"sa_key_content":{"type":"string","description_kind":"plain","optional":true,"computed":true,"sensitive":true},"security_groups":{"type":["list","string"],"description_kind":"plain","optional":true,"computed":true},"service_account_id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"subnet_id":{"type":"string","description_kind":"plain","optional":true,"computed":true}},"description_kind":"plain"},"max_items":1},"yds_source":{"nesting_mode":"list","block":{"attributes":{"allow_ttl_rewind":{"type":"bool","description_kind":"plain","optional":true,"computed":true},"consumer":{"type":"string","description_kind":"plain","optional":true,"computed":true},"database":{"type":"string","description_kind":"plain","optional":true,"computed":true},"endpoint":{"type":"string","description_kind":"plain","optional":true,"computed":true},"security_groups":{"type":["list","string"],"description_kind":"plain","optional":true,"computed":true},"service_account_id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"stream":{"type":"string","description_kind":"plain","optional":true,"computed":true},"subnet_id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"supported_codecs":{"type":["list","string"],"description_kind":"plain","optional":true,"computed":true}},"block_types":{"parser":{"nesting_mode":"list","block":{"block_types":{"audit_trails_v1_parser":{"nesting_mode":"list","block":{"description_kind":"plain"},"max_items":1},"cloud_logging_parser":{"nesting_mode":"list","block":{"description_kind":"plain"},"max_items":1},"json_parser":{"nesting_mode":"list","block":{"attributes":{"add_rest_column":{"type":"bool","description_kind":"plain","optional":true,"computed":true},"null_keys_allowed":{"type":"bool","description_kind":"plain","optional":true,"computed":true},"unescape_string_values":{"type":"bool","description_kind":"plain","optional":true,"computed":true}},"block_types":{"data_schema":{"nesting_mode":"list","block":{"attributes":{"json_fields":{"type":"string","description_kind":"plain","optional":true}},"block_types":{"fields":{"nesting_mode":"list","block":{"block_types":{"fields":{"nesting_mode":"list","block":{"attributes":{"key":{"type":"bool","description_kind":"plain","optional":true,"computed":true},"name":{"type":"string","description_kind":"plain","optional":true,"computed":true},"path":{"type":"string","description_kind":"plain","optional":true,"computed":true},"required":{"type":"bool","description_kind":"plain","optional":true,"computed":true},"type":{"type":"string","description_kind":"plain","optional":true,"computed":true}},"description_kind":"plain"}}},"description_kind":"plain"},"max_items":1}},"description_kind":"plain"},"max_items":1}},"description_kind":"plain"},"max_items":1},"tskv_parser":{"nesting_mode":"list","block":{"attributes":{"add_rest_column":{"type":"bool","description_kind":"plain","optional":true,"computed":true},"null_keys_allowed":{"type":"bool","description_kind":"plain","optional":true,"computed":true},"unescape_string_values":{"type":"bool","description_kind":"plain","optional":true,"computed":true}},"block_types":{"data_schema":{"nesting_mode":"list","block":{"attributes":{"json_fields":{"type":"string","description_kind":"plain","optional":true}},"block_types":{"fields":{"nesting_mode":"list","block":{"block_types":{"fields":{"nesting_mode":"list","block":{"attributes":{"key":{"type":"bool","description_kind":"plain","optional":true,"computed":true},"name":{"type":"string","description_kind":"plain","optional":true,"computed":true},"path":{"type":"string","description_kind":"plain","optional":true,"computed":true},"required":{"type":"bool","description_kind":"plain","optional":true,"computed":true},"type":{"type":"string","description_kind":"plain","optional":true,"computed":true}},"description_kind":"plain"}}},"description_kind":"plain"},"max_items":1}},"description_kind":"plain"},"max_items":1}},"description_kind":"plain"},"max_items":1}},"description_kind":"plain"},"max_items":1}},"description_kind":"plain"},"max_items":1},"yds_target":{"nesting_mode":"list","block":{"attributes":{"database":{"type":"string","description_kind":"plain","optional":true,"computed":true},"endpoint":{"type":"string","description_kind":"plain","optional":true,"computed":true},"save_tx_order":{"type":"bool","description_kind":"plain","optional":true,"computed":true},"security_groups":{"type":["list","string"],"description_kind":"plain","optional":true,"computed":true},"service_account_id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"stream":{"type":"string","description_kind":"plain","optional":true,"computed":true},"subnet_id":{"type":"string","description_kind":"plain","optional":true,"computed":true}},"block_types":{"serializer":{"nesting_mode":"list","block":{"block_types":{"serializer_auto":{"nesting_mode":"list","block":{"description_kind":"plain"},"max_items":1},"serializer_debezium":{"nesting_mode":"list","block":{"block_types":{"serializer_parameters":{"nesting_mode":"list","block":{"attributes":{"key":{"type":"string","description_kind":"plain","optional":true,"computed":true},"value":{"type":"string","description_kind":"plain","optional":true,"computed":true}},"description_kind":"plain"}}},"description_kind":"plain"},"max_items":1},"serializer_json":{"nesting_mode":"list","block":{"description_kind":"plain"},"max_items":1}},"description_kind":"plain"},"max_items":1}},"description_kind":"plain"},"max_items":1}},"description_kind":"plain"},"max_items":1}},"description_kind":"plain"}},"yandex_datatransfer_transfer":{"version":1,"block":{"attributes":{"description":{"type":"string","description_kind":"plain","optional":true,"computed":true},"folder_id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"labels":{"type":["map","string"],"description_kind":"plain","optional":true,"computed":true},"name":{"type":"string","description_kind":"plain","optional":true,"computed":true},"on_create_activate_mode":{"type":"string","description_kind":"plain","optional":true},"source_id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"target_id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"type":{"type":"string","description_kind":"plain","optional":true,"computed":true},"warning":{"type":"string","description_kind":"plain","computed":true}},"block_types":{"runtime":{"nesting_mode":"list","block":{"block_types":{"yc_runtime":{"nesting_mode":"list","block":{"attributes":{"job_count":{"type":"number","description_kind":"plain","optional":true,"computed":true}},"block_types":{"upload_shard_params":{"nesting_mode":"list","block":{"attributes":{"job_count":{"type":"number","description_kind":"plain","optional":true,"computed":true},"process_count":{"type":"number","description_kind":"plain","optional":true,"computed":true}},"description_kind":"plain"},"max_items":1}},"description_kind":"plain"},"max_items":1}},"description_kind":"plain"},"max_items":1},"transformation":{"nesting_mode":"list","block":{"block_types":{"transformers":{"nesting_mode":"list","block":{"block_types":{"convert_to_string":{"nesting_mode":"list","block":{"block_types":{"columns":{"nesting_mode":"list","block":{"attributes":{"exclude_columns":{"type":["list","string"],"description_kind":"plain","optional":true},"include_columns":{"type":["list","string"],"description_kind":"plain","optional":true}},"description_kind":"plain"},"max_items":1},"tables":{"nesting_mode":"list","block":{"attributes":{"exclude_tables":{"type":["list","string"],"description_kind":"plain","optional":true},"include_tables":{"type":["list","string"],"description_kind":"plain","optional":true}},"description_kind":"plain"},"max_items":1}},"description_kind":"plain"},"max_items":1},"filter_columns":{"nesting_mode":"list","block":{"block_types":{"columns":{"nesting_mode":"list","block":{"attributes":{"exclude_columns":{"type":["list","string"],"description_kind":"plain","optional":true},"include_columns":{"type":["list","string"],"description_kind":"plain","optional":true}},"description_kind":"plain"},"max_items":1},"tables":{"nesting_mode":"list","block":{"attributes":{"exclude_tables":{"type":["list","string"],"description_kind":"plain","optional":true},"include_tables":{"type":["list","string"],"description_kind":"plain","optional":true}},"description_kind":"plain"},"max_items":1}},"description_kind":"plain"},"max_items":1},"filter_rows":{"nesting_mode":"list","block":{"attributes":{"filter":{"type":"string","description_kind":"plain","optional":true}},"block_types":{"tables":{"nesting_mode":"list","block":{"attributes":{"exclude_tables":{"type":["list","string"],"description_kind":"plain","optional":true},"include_tables":{"type":["list","string"],"description_kind":"plain","optional":true}},"description_kind":"plain"},"max_items":1}},"description_kind":"plain"},"max_items":1},"mask_field":{"nesting_mode":"list","block":{"attributes":{"columns":{"type":["list","string"],"description_kind":"plain","optional":true}},"block_types":{"function":{"nesting_mode":"list","block":{"block_types":{"mask_function_hash":{"nesting_mode":"list","block":{"attributes":{"user_defined_salt":{"type":"string","description_kind":"plain","optional":true}},"description_kind":"plain"},"max_items":1}},"description_kind":"plain"},"max_items":1},"tables":{"nesting_mode":"list","block":{"attributes":{"exclude_tables":{"type":["list","string"],"description_kind":"plain","optional":true},"include_tables":{"type":["list","string"],"description_kind":"plain","optional":true}},"description_kind":"plain"},"max_items":1}},"description_kind":"plain"},"max_items":1},"rename_tables":{"nesting_mode":"list","block":{"block_types":{"rename_tables":{"nesting_mode":"list","block":{"block_types":{"new_name":{"nesting_mode":"list","block":{"attributes":{"name":{"type":"string","description_kind":"plain","optional":true},"name_space":{"type":"string","description_kind":"plain","optional":true}},"description_kind":"plain"},"max_items":1},"original_name":{"nesting_mode":"list","block":{"attributes":{"name":{"type":"string","description_kind":"plain","optional":true},"name_space":{"type":"string","description_kind":"plain","optional":true}},"description_kind":"plain"},"max_items":1}},"description_kind":"plain"}}},"description_kind":"plain"},"max_items":1},"replace_primary_key":{"nesting_mode":"list","block":{"attributes":{"keys":{"type":["list","string"],"description_kind":"plain","optional":true}},"block_types":{"tables":{"nesting_mode":"list","block":{"attributes":{"exclude_tables":{"type":["list","string"],"description_kind":"plain","optional":true},"include_tables":{"type":["list","string"],"description_kind":"plain","optional":true}},"description_kind":"plain"},"max_items":1}},"description_kind":"plain"},"max_items":1},"sharder_transformer":{"nesting_mode":"list","block":{"attributes":{"shards_count":{"type":"number","description_kind":"plain","optional":true}},"block_types":{"columns":{"nesting_mode":"list","block":{"attributes":{"exclude_columns":{"type":["list","string"],"description_kind":"plain","optional":true},"include_columns":{"type":["list","string"],"description_kind":"plain","optional":true}},"description_kind":"plain"},"max_items":1},"tables":{"nesting_mode":"list","block":{"attributes":{"exclude_tables":{"type":["list","string"],"description_kind":"plain","optional":true},"include_tables":{"type":["list","string"],"description_kind":"plain","optional":true}},"description_kind":"plain"},"max_items":1}},"description_kind":"plain"},"max_items":1},"table_splitter_transformer":{"nesting_mode":"list","block":{"attributes":{"columns":{"type":["list","string"],"description_kind":"plain","optional":true},"splitter":{"type":"string","description_kind":"plain","optional":true}},"block_types":{"tables":{"nesting_mode":"list","block":{"attributes":{"exclude_tables":{"type":["list","string"],"description_kind":"plain","optional":true},"include_tables":{"type":["list","string"],"description_kind":"plain","optional":true}},"description_kind":"plain"},"max_items":1}},"description_kind":"plain"},"max_items":1}},"description_kind":"plain"}}},"description_kind":"plain"},"max_items":1}},"description_kind":"plain"}},"yandex_dns_recordset":{"version":0,"block":{"attributes":{"data":{"type":["set","string"],"description_kind":"plain","required":true},"id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"name":{"type":"string","description_kind":"plain","required":true},"ttl":{"type":"number","description_kind":"plain","required":true},"type":{"type":"string","description_kind":"plain","required":true},"zone_id":{"type":"string","description_kind":"plain","required":true}},"block_types":{"timeouts":{"nesting_mode":"single","block":{"attributes":{"create":{"type":"string","description_kind":"plain","optional":true},"delete":{"type":"string","description_kind":"plain","optional":true},"update":{"type":"string","description_kind":"plain","optional":true}},"description_kind":"plain"}}},"description_kind":"plain"}},"yandex_dns_zone":{"version":0,"block":{"attributes":{"created_at":{"type":"string","description":"The DNS zone creation timestamp.","description_kind":"plain","computed":true},"deletion_protection":{"type":"bool","description":"Flag that protects the dns zone from accidental deletion.","description_kind":"plain","optional":true},"description":{"type":"string","description":"Description of the DNS zone.","description_kind":"plain","optional":true},"folder_id":{"type":"string","description":"ID of the folder to create a zone in. If it is not provided, the default provider folder is used.","description_kind":"plain","optional":true,"computed":true},"id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"labels":{"type":["map","string"],"description":"A set of key/value label pairs to assign to the DNS zone.","description_kind":"plain","optional":true},"name":{"type":"string","description":"User assigned name of a specific resource. Must be unique within the folder.","description_kind":"plain","optional":true},"private_networks":{"type":["set","string"],"description":"For privately visible zones, the set of Virtual Private Cloud resources that the zone is visible from.","description_kind":"plain","optional":true,"computed":true},"public":{"type":"bool","description":"The zone's visibility: public zones are exposed to the Internet, while private zones are visible only to Virtual Private Cloud resources.","description_kind":"plain","optional":true,"computed":true},"zone":{"type":"string","description":"The DNS name of this zone, e.g. \"example.com.\". Must ends with dot.","description_kind":"plain","required":true}},"block_types":{"timeouts":{"nesting_mode":"single","block":{"attributes":{"create":{"type":"string","description_kind":"plain","optional":true},"delete":{"type":"string","description_kind":"plain","optional":true},"update":{"type":"string","description_kind":"plain","optional":true}},"description_kind":"plain"}}},"description":"Manages a DNS Zone.","description_kind":"plain"}},"yandex_dns_zone_iam_binding":{"version":0,"block":{"attributes":{"dns_zone_id":{"type":"string","description_kind":"plain","required":true},"id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"members":{"type":["set","string"],"description_kind":"plain","required":true},"role":{"type":"string","description_kind":"plain","required":true},"sleep_after":{"type":"number","description_kind":"plain","optional":true}},"block_types":{"timeouts":{"nesting_mode":"single","block":{"attributes":{"default":{"type":"string","description_kind":"plain","optional":true}},"description_kind":"plain"}}},"description_kind":"plain"}},"yandex_function":{"version":1,"block":{"attributes":{"concurrency":{"type":"number","description_kind":"plain","optional":true,"computed":true},"created_at":{"type":"string","description_kind":"plain","computed":true},"description":{"type":"string","description_kind":"plain","optional":true},"entrypoint":{"type":"string","description_kind":"plain","required":true},"environment":{"type":["map","string"],"description_kind":"plain","optional":true},"execution_timeout":{"type":"string","description_kind":"plain","optional":true},"folder_id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"image_size":{"type":"number","description_kind":"plain","computed":true},"labels":{"type":["map","string"],"description_kind":"plain","optional":true},"memory":{"type":"number","description_kind":"plain","required":true},"name":{"type":"string","description_kind":"plain","required":true},"runtime":{"type":"string","description_kind":"plain","required":true},"service_account_id":{"type":"string","description_kind":"plain","optional":true},"tags":{"type":["set","string"],"description_kind":"plain","optional":true,"computed":true},"tmpfs_size":{"type":"number","description_kind":"plain","optional":true,"computed":true},"user_hash":{"type":"string","description_kind":"plain","required":true},"version":{"type":"string","description_kind":"plain","computed":true}},"block_types":{"async_invocation":{"nesting_mode":"list","block":{"attributes":{"retries_count":{"type":"number","description_kind":"plain","optional":true},"service_account_id":{"type":"string","description_kind":"plain","optional":true}},"block_types":{"ymq_failure_target":{"nesting_mode":"list","block":{"attributes":{"arn":{"type":"string","description_kind":"plain","required":true},"service_account_id":{"type":"string","description_kind":"plain","required":true}},"description_kind":"plain"},"max_items":1},"ymq_success_target":{"nesting_mode":"list","block":{"attributes":{"arn":{"type":"string","description_kind":"plain","required":true},"service_account_id":{"type":"string","description_kind":"plain","required":true}},"description_kind":"plain"},"max_items":1}},"description_kind":"plain"},"max_items":1},"connectivity":{"nesting_mode":"list","block":{"attributes":{"network_id":{"type":"string","description_kind":"plain","required":true}},"description_kind":"plain"},"max_items":1},"content":{"nesting_mode":"list","block":{"attributes":{"zip_filename":{"type":"string","description_kind":"plain","required":true}},"description_kind":"plain"},"max_items":1},"log_options":{"nesting_mode":"list","block":{"attributes":{"disabled":{"type":"bool","description_kind":"plain","optional":true},"folder_id":{"type":"string","description_kind":"plain","optional":true},"log_group_id":{"type":"string","description_kind":"plain","optional":true},"min_level":{"type":"string","description_kind":"plain","optional":true}},"description_kind":"plain"},"max_items":1},"mounts":{"nesting_mode":"list","block":{"attributes":{"mode":{"type":"string","description_kind":"plain","optional":true,"computed":true},"name":{"type":"string","description_kind":"plain","required":true}},"block_types":{"ephemeral_disk":{"nesting_mode":"list","block":{"attributes":{"block_size_kb":{"type":"number","description_kind":"plain","optional":true,"computed":true},"size_gb":{"type":"number","description_kind":"plain","required":true}},"description_kind":"plain"},"max_items":1},"object_storage":{"nesting_mode":"list","block":{"attributes":{"bucket":{"type":"string","description_kind":"plain","required":true},"prefix":{"type":"string","description_kind":"plain","optional":true}},"description_kind":"plain"},"max_items":1}},"description_kind":"plain"}},"package":{"nesting_mode":"list","block":{"attributes":{"bucket_name":{"type":"string","description_kind":"plain","required":true},"object_name":{"type":"string","description_kind":"plain","required":true},"sha_256":{"type":"string","description_kind":"plain","optional":true}},"description_kind":"plain"},"max_items":1},"secrets":{"nesting_mode":"list","block":{"attributes":{"environment_variable":{"type":"string","description_kind":"plain","required":true},"id":{"type":"string","description_kind":"plain","required":true},"key":{"type":"string","description_kind":"plain","required":true},"version_id":{"type":"string","description_kind":"plain","required":true}},"description_kind":"plain"}},"storage_mounts":{"nesting_mode":"list","block":{"attributes":{"bucket":{"type":"string","description_kind":"plain","required":true},"mount_point_name":{"type":"string","description_kind":"plain","required":true},"prefix":{"type":"string","description_kind":"plain","optional":true},"read_only":{"type":"bool","description_kind":"plain","optional":true}},"description_kind":"plain","deprecated":true}},"timeouts":{"nesting_mode":"single","block":{"attributes":{"create":{"type":"string","description_kind":"plain","optional":true},"delete":{"type":"string","description_kind":"plain","optional":true},"update":{"type":"string","description_kind":"plain","optional":true}},"description_kind":"plain"}}},"description_kind":"plain"}},"yandex_function_iam_binding":{"version":0,"block":{"attributes":{"function_id":{"type":"string","description_kind":"plain","required":true},"id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"members":{"type":["set","string"],"description_kind":"plain","required":true},"role":{"type":"string","description_kind":"plain","required":true},"sleep_after":{"type":"number","description_kind":"plain","optional":true}},"block_types":{"timeouts":{"nesting_mode":"single","block":{"attributes":{"default":{"type":"string","description_kind":"plain","optional":true}},"description_kind":"plain"}}},"description_kind":"plain"}},"yandex_function_scaling_policy":{"version":0,"block":{"attributes":{"function_id":{"type":"string","description_kind":"plain","required":true},"id":{"type":"string","description_kind":"plain","optional":true,"computed":true}},"block_types":{"policy":{"nesting_mode":"set","block":{"attributes":{"tag":{"type":"string","description_kind":"plain","required":true},"zone_instances_limit":{"type":"number","description_kind":"plain","optional":true},"zone_requests_limit":{"type":"number","description_kind":"plain","optional":true}},"description_kind":"plain"}}},"description_kind":"plain"}},"yandex_function_trigger":{"version":0,"block":{"attributes":{"created_at":{"type":"string","description_kind":"plain","computed":true},"description":{"type":"string","description_kind":"plain","optional":true},"folder_id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"labels":{"type":["map","string"],"description_kind":"plain","optional":true},"name":{"type":"string","description_kind":"plain","required":true}},"block_types":{"container":{"nesting_mode":"list","block":{"attributes":{"id":{"type":"string","description_kind":"plain","required":true},"path":{"type":"string","description_kind":"plain","optional":true},"retry_attempts":{"type":"string","description_kind":"plain","optional":true},"retry_interval":{"type":"string","description_kind":"plain","optional":true},"service_account_id":{"type":"string","description_kind":"plain","optional":true}},"description_kind":"plain"},"max_items":1},"container_registry":{"nesting_mode":"list","block":{"attributes":{"batch_cutoff":{"type":"string","description_kind":"plain","required":true},"batch_size":{"type":"string","description_kind":"plain","optional":true},"create_image":{"type":"bool","description_kind":"plain","optional":true},"create_image_tag":{"type":"bool","description_kind":"plain","optional":true},"delete_image":{"type":"bool","description_kind":"plain","optional":true},"delete_image_tag":{"type":"bool","description_kind":"plain","optional":true},"image_name":{"type":"string","description_kind":"plain","optional":true},"registry_id":{"type":"string","description_kind":"plain","required":true},"tag":{"type":"string","description_kind":"plain","optional":true}},"description_kind":"plain"},"max_items":1},"data_streams":{"nesting_mode":"list","block":{"attributes":{"batch_cutoff":{"type":"string","description_kind":"plain","required":true},"batch_size":{"type":"string","description_kind":"plain","optional":true},"database":{"type":"string","description_kind":"plain","required":true},"service_account_id":{"type":"string","description_kind":"plain","required":true},"stream_name":{"type":"string","description_kind":"plain","required":true}},"description_kind":"plain"},"max_items":1},"dlq":{"nesting_mode":"list","block":{"attributes":{"queue_id":{"type":"string","description_kind":"plain","required":true},"service_account_id":{"type":"string","description_kind":"plain","required":true}},"description_kind":"plain"},"max_items":1},"function":{"nesting_mode":"list","block":{"attributes":{"id":{"type":"string","description_kind":"plain","required":true},"retry_attempts":{"type":"string","description_kind":"plain","optional":true},"retry_interval":{"type":"string","description_kind":"plain","optional":true},"service_account_id":{"type":"string","description_kind":"plain","optional":true},"tag":{"type":"string","description_kind":"plain","optional":true}},"description_kind":"plain"},"max_items":1},"iot":{"nesting_mode":"list","block":{"attributes":{"batch_cutoff":{"type":"string","description_kind":"plain","required":true},"batch_size":{"type":"string","description_kind":"plain","optional":true},"device_id":{"type":"string","description_kind":"plain","optional":true},"registry_id":{"type":"string","description_kind":"plain","required":true},"topic":{"type":"string","description_kind":"plain","optional":true}},"description_kind":"plain"},"max_items":1},"log_group":{"nesting_mode":"list","block":{"attributes":{"batch_cutoff":{"type":"string","description_kind":"plain","required":true},"batch_size":{"type":"string","description_kind":"plain","optional":true},"log_group_ids":{"type":["set","string"],"description_kind":"plain","required":true}},"description_kind":"plain"},"max_items":1},"logging":{"nesting_mode":"list","block":{"attributes":{"batch_cutoff":{"type":"string","description_kind":"plain","required":true},"batch_size":{"type":"string","description_kind":"plain","optional":true},"group_id":{"type":"string","description_kind":"plain","required":true},"levels":{"type":["set","string"],"description_kind":"plain","optional":true},"resource_ids":{"type":["set","string"],"description_kind":"plain","optional":true},"resource_types":{"type":["set","string"],"description_kind":"plain","optional":true},"stream_names":{"type":["set","string"],"description_kind":"plain","optional":true}},"description_kind":"plain"},"max_items":1},"mail":{"nesting_mode":"list","block":{"attributes":{"attachments_bucket_id":{"type":"string","description_kind":"plain","optional":true},"batch_cutoff":{"type":"string","description_kind":"plain","required":true},"batch_size":{"type":"string","description_kind":"plain","optional":true},"service_account_id":{"type":"string","description_kind":"plain","optional":true}},"description_kind":"plain"},"max_items":1},"message_queue":{"nesting_mode":"list","block":{"attributes":{"batch_cutoff":{"type":"string","description_kind":"plain","required":true},"batch_size":{"type":"string","description_kind":"plain","optional":true},"queue_id":{"type":"string","description_kind":"plain","required":true},"service_account_id":{"type":"string","description_kind":"plain","required":true},"visibility_timeout":{"type":"string","description_kind":"plain","optional":true}},"description_kind":"plain"},"max_items":1},"object_storage":{"nesting_mode":"list","block":{"attributes":{"batch_cutoff":{"type":"string","description_kind":"plain","required":true},"batch_size":{"type":"string","description_kind":"plain","optional":true},"bucket_id":{"type":"string","description_kind":"plain","required":true},"create":{"type":"bool","description_kind":"plain","optional":true},"delete":{"type":"bool","description_kind":"plain","optional":true},"prefix":{"type":"string","description_kind":"plain","optional":true},"suffix":{"type":"string","description_kind":"plain","optional":true},"update":{"type":"bool","description_kind":"plain","optional":true}},"description_kind":"plain"},"max_items":1},"timeouts":{"nesting_mode":"single","block":{"attributes":{"create":{"type":"string","description_kind":"plain","optional":true},"delete":{"type":"string","description_kind":"plain","optional":true},"update":{"type":"string","description_kind":"plain","optional":true}},"description_kind":"plain"}},"timer":{"nesting_mode":"list","block":{"attributes":{"cron_expression":{"type":"string","description_kind":"plain","required":true},"payload":{"type":"string","description_kind":"plain","optional":true}},"description_kind":"plain"},"max_items":1}},"description_kind":"plain"}},"yandex_iam_service_account":{"version":0,"block":{"attributes":{"created_at":{"type":"string","description_kind":"plain","computed":true},"description":{"type":"string","description_kind":"plain","optional":true},"folder_id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"name":{"type":"string","description_kind":"plain","required":true}},"block_types":{"timeouts":{"nesting_mode":"single","block":{"attributes":{"create":{"type":"string","description_kind":"plain","optional":true},"delete":{"type":"string","description_kind":"plain","optional":true},"update":{"type":"string","description_kind":"plain","optional":true}},"description_kind":"plain"}}},"description_kind":"plain"}},"yandex_iam_service_account_api_key":{"version":0,"block":{"attributes":{"created_at":{"type":"string","description_kind":"plain","computed":true},"description":{"type":"string","description_kind":"plain","optional":true},"encrypted_secret_key":{"type":"string","description_kind":"plain","computed":true},"expires_at":{"type":"string","description_kind":"plain","optional":true},"id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"key_fingerprint":{"type":"string","description_kind":"plain","computed":true},"output_to_lockbox_version_id":{"type":"string","description":"version generated, that will contain the sensitive outputs","description_kind":"plain","computed":true},"pgp_key":{"type":"string","description_kind":"plain","optional":true},"scope":{"type":"string","description_kind":"plain","optional":true},"secret_key":{"type":"string","description_kind":"plain","computed":true,"sensitive":true},"service_account_id":{"type":"string","description_kind":"plain","required":true}},"block_types":{"output_to_lockbox":{"nesting_mode":"list","block":{"attributes":{"entry_for_secret_key":{"type":"string","description":"entry that will store the value of secret_key","description_kind":"plain","required":true},"secret_id":{"type":"string","description":"secret where to add the version with the sensitive values","description_kind":"plain","required":true}},"description":"option to create a Lockbox secret version from sensitive outputs","description_kind":"plain"},"max_items":1}},"description_kind":"plain"}},"yandex_iam_service_account_iam_binding":{"version":0,"block":{"attributes":{"id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"members":{"type":["set","string"],"description_kind":"plain","required":true},"role":{"type":"string","description_kind":"plain","required":true},"service_account_id":{"type":"string","description_kind":"plain","required":true},"sleep_after":{"type":"number","description_kind":"plain","optional":true}},"block_types":{"timeouts":{"nesting_mode":"single","block":{"attributes":{"default":{"type":"string","description_kind":"plain","optional":true}},"description_kind":"plain"}}},"description_kind":"plain"}},"yandex_iam_service_account_iam_member":{"version":0,"block":{"attributes":{"id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"member":{"type":"string","description_kind":"plain","required":true},"role":{"type":"string","description_kind":"plain","required":true},"service_account_id":{"type":"string","description_kind":"plain","required":true},"sleep_after":{"type":"number","description_kind":"plain","optional":true}},"block_types":{"timeouts":{"nesting_mode":"single","block":{"attributes":{"default":{"type":"string","description_kind":"plain","optional":true}},"description_kind":"plain"}}},"description_kind":"plain"}},"yandex_iam_service_account_iam_policy":{"version":0,"block":{"attributes":{"id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"policy_data":{"type":"string","description_kind":"plain","required":true},"service_account_id":{"type":"string","description_kind":"plain","required":true}},"block_types":{"timeouts":{"nesting_mode":"single","block":{"attributes":{"default":{"type":"string","description_kind":"plain","optional":true}},"description_kind":"plain"}}},"description_kind":"plain"}},"yandex_iam_service_account_key":{"version":0,"block":{"attributes":{"created_at":{"type":"string","description_kind":"plain","computed":true},"description":{"type":"string","description_kind":"plain","optional":true},"encrypted_private_key":{"type":"string","description_kind":"plain","computed":true},"format":{"type":"string","description_kind":"plain","optional":true},"id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"key_algorithm":{"type":"string","description_kind":"plain","optional":true},"key_fingerprint":{"type":"string","description_kind":"plain","computed":true},"output_to_lockbox_version_id":{"type":"string","description":"version generated, that will contain the sensitive outputs","description_kind":"plain","computed":true},"pgp_key":{"type":"string","description_kind":"plain","optional":true},"private_key":{"type":"string","description_kind":"plain","computed":true,"sensitive":true},"public_key":{"type":"string","description_kind":"plain","computed":true},"service_account_id":{"type":"string","description_kind":"plain","required":true}},"block_types":{"output_to_lockbox":{"nesting_mode":"list","block":{"attributes":{"entry_for_private_key":{"type":"string","description":"entry that will store the value of private_key","description_kind":"plain","required":true},"secret_id":{"type":"string","description":"secret where to add the version with the sensitive values","description_kind":"plain","required":true}},"description":"option to create a Lockbox secret version from sensitive outputs","description_kind":"plain"},"max_items":1}},"description_kind":"plain"}},"yandex_iam_service_account_static_access_key":{"version":0,"block":{"attributes":{"access_key":{"type":"string","description_kind":"plain","computed":true},"created_at":{"type":"string","description_kind":"plain","computed":true},"description":{"type":"string","description_kind":"plain","optional":true},"encrypted_secret_key":{"type":"string","description_kind":"plain","computed":true},"id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"key_fingerprint":{"type":"string","description_kind":"plain","computed":true},"output_to_lockbox_version_id":{"type":"string","description":"version generated, that will contain the sensitive outputs","description_kind":"plain","computed":true},"pgp_key":{"type":"string","description_kind":"plain","optional":true},"secret_key":{"type":"string","description_kind":"plain","computed":true,"sensitive":true},"service_account_id":{"type":"string","description_kind":"plain","required":true}},"block_types":{"output_to_lockbox":{"nesting_mode":"list","block":{"attributes":{"entry_for_access_key":{"type":"string","description":"entry that will store the value of access_key","description_kind":"plain","required":true},"entry_for_secret_key":{"type":"string","description":"entry that will store the value of secret_key","description_kind":"plain","required":true},"secret_id":{"type":"string","description":"secret where to add the version with the sensitive values","description_kind":"plain","required":true}},"description":"option to create a Lockbox secret version from sensitive outputs","description_kind":"plain"},"max_items":1}},"description_kind":"plain"}},"yandex_iam_workload_identity_federated_credential":{"version":1,"block":{"attributes":{"created_at":{"type":"string","description_kind":"plain","computed":true},"external_subject_id":{"type":"string","description_kind":"plain","required":true},"federation_id":{"type":"string","description_kind":"plain","required":true},"id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"service_account_id":{"type":"string","description_kind":"plain","optional":true,"computed":true}},"block_types":{"timeouts":{"nesting_mode":"single","block":{"attributes":{"create":{"type":"string","description_kind":"plain","optional":true},"delete":{"type":"string","description_kind":"plain","optional":true},"read":{"type":"string","description_kind":"plain","optional":true},"update":{"type":"string","description_kind":"plain","optional":true}},"description_kind":"plain"}}},"description_kind":"plain"}},"yandex_iam_workload_identity_oidc_federation":{"version":1,"block":{"attributes":{"audiences":{"type":["list","string"],"description_kind":"plain","optional":true},"created_at":{"type":"string","description_kind":"plain","computed":true},"description":{"type":"string","description_kind":"plain","optional":true},"disabled":{"type":"bool","description_kind":"plain","optional":true},"enabled":{"type":"bool","description_kind":"plain","computed":true},"federation_id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"folder_id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"issuer":{"type":"string","description_kind":"plain","required":true},"jwks_url":{"type":"string","description_kind":"plain","required":true},"labels":{"type":["map","string"],"description_kind":"plain","optional":true},"name":{"type":"string","description_kind":"plain","optional":true}},"block_types":{"timeouts":{"nesting_mode":"single","block":{"attributes":{"create":{"type":"string","description_kind":"plain","optional":true},"delete":{"type":"string","description_kind":"plain","optional":true},"read":{"type":"string","description_kind":"plain","optional":true},"update":{"type":"string","description_kind":"plain","optional":true}},"description_kind":"plain"}}},"description_kind":"plain"}},"yandex_iot_core_broker":{"version":0,"block":{"attributes":{"certificates":{"type":["set","string"],"description_kind":"plain","optional":true},"created_at":{"type":"string","description_kind":"plain","computed":true},"description":{"type":"string","description_kind":"plain","optional":true},"folder_id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"labels":{"type":["map","string"],"description_kind":"plain","optional":true},"name":{"type":"string","description_kind":"plain","required":true}},"block_types":{"log_options":{"nesting_mode":"list","block":{"attributes":{"disabled":{"type":"bool","description_kind":"plain","optional":true},"folder_id":{"type":"string","description_kind":"plain","optional":true},"log_group_id":{"type":"string","description_kind":"plain","optional":true},"min_level":{"type":"string","description_kind":"plain","optional":true}},"description_kind":"plain"},"max_items":1},"timeouts":{"nesting_mode":"single","block":{"attributes":{"create":{"type":"string","description_kind":"plain","optional":true},"delete":{"type":"string","description_kind":"plain","optional":true},"update":{"type":"string","description_kind":"plain","optional":true}},"description_kind":"plain"}}},"description_kind":"plain"}},"yandex_iot_core_device":{"version":0,"block":{"attributes":{"aliases":{"type":["map","string"],"description_kind":"plain","optional":true},"certificates":{"type":["set","string"],"description_kind":"plain","optional":true},"created_at":{"type":"string","description_kind":"plain","computed":true},"description":{"type":"string","description_kind":"plain","optional":true},"id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"name":{"type":"string","description_kind":"plain","required":true},"passwords":{"type":["set","string"],"description_kind":"plain","optional":true,"sensitive":true},"registry_id":{"type":"string","description_kind":"plain","required":true}},"block_types":{"timeouts":{"nesting_mode":"single","block":{"attributes":{"create":{"type":"string","description_kind":"plain","optional":true},"delete":{"type":"string","description_kind":"plain","optional":true},"update":{"type":"string","description_kind":"plain","optional":true}},"description_kind":"plain"}}},"description_kind":"plain"}},"yandex_iot_core_registry":{"version":0,"block":{"attributes":{"certificates":{"type":["set","string"],"description_kind":"plain","optional":true},"created_at":{"type":"string","description_kind":"plain","computed":true},"description":{"type":"string","description_kind":"plain","optional":true},"folder_id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"labels":{"type":["map","string"],"description_kind":"plain","optional":true},"name":{"type":"string","description_kind":"plain","required":true},"passwords":{"type":["set","string"],"description_kind":"plain","optional":true,"sensitive":true}},"block_types":{"log_options":{"nesting_mode":"list","block":{"attributes":{"disabled":{"type":"bool","description_kind":"plain","optional":true},"folder_id":{"type":"string","description_kind":"plain","optional":true},"log_group_id":{"type":"string","description_kind":"plain","optional":true},"min_level":{"type":"string","description_kind":"plain","optional":true}},"description_kind":"plain"},"max_items":1},"timeouts":{"nesting_mode":"single","block":{"attributes":{"create":{"type":"string","description_kind":"plain","optional":true},"delete":{"type":"string","description_kind":"plain","optional":true},"update":{"type":"string","description_kind":"plain","optional":true}},"description_kind":"plain"}}},"description_kind":"plain"}},"yandex_kms_asymmetric_encryption_key":{"version":1,"block":{"attributes":{"created_at":{"type":"string","description_kind":"plain","computed":true},"deletion_protection":{"type":"bool","description_kind":"plain","optional":true},"description":{"type":"string","description_kind":"plain","optional":true},"encryption_algorithm":{"type":"string","description_kind":"plain","optional":true},"folder_id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"labels":{"type":["map","string"],"description_kind":"plain","optional":true},"name":{"type":"string","description_kind":"plain","optional":true},"status":{"type":"string","description_kind":"plain","computed":true}},"block_types":{"timeouts":{"nesting_mode":"single","block":{"attributes":{"create":{"type":"string","description_kind":"plain","optional":true},"delete":{"type":"string","description_kind":"plain","optional":true},"read":{"type":"string","description_kind":"plain","optional":true},"update":{"type":"string","description_kind":"plain","optional":true}},"description_kind":"plain"}}},"description_kind":"plain"}},"yandex_kms_asymmetric_encryption_key_iam_binding":{"version":0,"block":{"attributes":{"asymmetric_encryption_key_id":{"type":"string","description_kind":"plain","required":true},"id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"members":{"type":["set","string"],"description_kind":"plain","required":true},"role":{"type":"string","description_kind":"plain","required":true},"sleep_after":{"type":"number","description_kind":"plain","optional":true}},"block_types":{"timeouts":{"nesting_mode":"single","block":{"attributes":{"default":{"type":"string","description_kind":"plain","optional":true}},"description_kind":"plain"}}},"description_kind":"plain"}},"yandex_kms_asymmetric_signature_key":{"version":1,"block":{"attributes":{"created_at":{"type":"string","description_kind":"plain","computed":true},"deletion_protection":{"type":"bool","description_kind":"plain","optional":true},"description":{"type":"string","description_kind":"plain","optional":true},"folder_id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"labels":{"type":["map","string"],"description_kind":"plain","optional":true},"name":{"type":"string","description_kind":"plain","optional":true},"signature_algorithm":{"type":"string","description_kind":"plain","optional":true},"status":{"type":"string","description_kind":"plain","computed":true}},"block_types":{"timeouts":{"nesting_mode":"single","block":{"attributes":{"create":{"type":"string","description_kind":"plain","optional":true},"delete":{"type":"string","description_kind":"plain","optional":true},"read":{"type":"string","description_kind":"plain","optional":true},"update":{"type":"string","description_kind":"plain","optional":true}},"description_kind":"plain"}}},"description_kind":"plain"}},"yandex_kms_asymmetric_signature_key_iam_binding":{"version":0,"block":{"attributes":{"asymmetric_signature_key_id":{"type":"string","description_kind":"plain","required":true},"id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"members":{"type":["set","string"],"description_kind":"plain","required":true},"role":{"type":"string","description_kind":"plain","required":true},"sleep_after":{"type":"number","description_kind":"plain","optional":true}},"block_types":{"timeouts":{"nesting_mode":"single","block":{"attributes":{"default":{"type":"string","description_kind":"plain","optional":true}},"description_kind":"plain"}}},"description_kind":"plain"}},"yandex_kms_secret_ciphertext":{"version":0,"block":{"attributes":{"aad_context":{"type":"string","description_kind":"plain","optional":true},"ciphertext":{"type":"string","description_kind":"plain","computed":true},"id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"key_id":{"type":"string","description_kind":"plain","required":true},"plaintext":{"type":"string","description_kind":"plain","required":true,"sensitive":true}},"block_types":{"timeouts":{"nesting_mode":"single","block":{"attributes":{"create":{"type":"string","description_kind":"plain","optional":true},"delete":{"type":"string","description_kind":"plain","optional":true},"read":{"type":"string","description_kind":"plain","optional":true}},"description_kind":"plain"}}},"description_kind":"plain"}},"yandex_kms_symmetric_key":{"version":1,"block":{"attributes":{"created_at":{"type":"string","description_kind":"plain","computed":true},"default_algorithm":{"type":"string","description_kind":"plain","optional":true},"deletion_protection":{"type":"bool","description_kind":"plain","optional":true},"description":{"type":"string","description_kind":"plain","optional":true},"folder_id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"labels":{"type":["map","string"],"description_kind":"plain","optional":true},"name":{"type":"string","description_kind":"plain","optional":true},"rotated_at":{"type":"string","description_kind":"plain","computed":true},"rotation_period":{"type":"string","description_kind":"plain","optional":true},"status":{"type":"string","description_kind":"plain","computed":true}},"block_types":{"timeouts":{"nesting_mode":"single","block":{"attributes":{"create":{"type":"string","description_kind":"plain","optional":true},"delete":{"type":"string","description_kind":"plain","optional":true},"read":{"type":"string","description_kind":"plain","optional":true},"update":{"type":"string","description_kind":"plain","optional":true}},"description_kind":"plain"}}},"description_kind":"plain"}},"yandex_kms_symmetric_key_iam_binding":{"version":0,"block":{"attributes":{"id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"members":{"type":["set","string"],"description_kind":"plain","required":true},"role":{"type":"string","description_kind":"plain","required":true},"sleep_after":{"type":"number","description_kind":"plain","optional":true},"symmetric_key_id":{"type":"string","description_kind":"plain","required":true}},"block_types":{"timeouts":{"nesting_mode":"single","block":{"attributes":{"default":{"type":"string","description_kind":"plain","optional":true}},"description_kind":"plain"}}},"description_kind":"plain"}},"yandex_kubernetes_cluster":{"version":0,"block":{"attributes":{"cluster_ipv4_range":{"type":"string","description_kind":"plain","optional":true,"computed":true},"cluster_ipv6_range":{"type":"string","description_kind":"plain","optional":true,"computed":true},"created_at":{"type":"string","description_kind":"plain","computed":true},"description":{"type":"string","description_kind":"plain","optional":true,"computed":true},"folder_id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"health":{"type":"string","description_kind":"plain","computed":true},"id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"labels":{"type":["map","string"],"description_kind":"plain","optional":true,"computed":true},"log_group_id":{"type":"string","description_kind":"plain","computed":true},"name":{"type":"string","description_kind":"plain","optional":true,"computed":true},"network_id":{"type":"string","description_kind":"plain","required":true},"network_policy_provider":{"type":"string","description_kind":"plain","optional":true},"node_ipv4_cidr_mask_size":{"type":"number","description_kind":"plain","optional":true},"node_service_account_id":{"type":"string","description_kind":"plain","required":true},"release_channel":{"type":"string","description_kind":"plain","optional":true,"computed":true},"service_account_id":{"type":"string","description_kind":"plain","required":true},"service_ipv4_range":{"type":"string","description_kind":"plain","optional":true,"computed":true},"service_ipv6_range":{"type":"string","description_kind":"plain","optional":true,"computed":true},"status":{"type":"string","description_kind":"plain","computed":true}},"block_types":{"kms_provider":{"nesting_mode":"list","block":{"attributes":{"key_id":{"type":"string","description_kind":"plain","optional":true}},"description_kind":"plain"},"max_items":1},"master":{"nesting_mode":"list","block":{"attributes":{"cluster_ca_certificate":{"type":"string","description_kind":"plain","computed":true},"etcd_cluster_size":{"type":"number","description_kind":"plain","optional":true,"computed":true},"external_v4_address":{"type":"string","description_kind":"plain","computed":true},"external_v4_endpoint":{"type":"string","description_kind":"plain","computed":true},"external_v6_address":{"type":"string","description_kind":"plain","optional":true},"external_v6_endpoint":{"type":"string","description_kind":"plain","computed":true},"internal_v4_address":{"type":"string","description_kind":"plain","computed":true},"internal_v4_endpoint":{"type":"string","description_kind":"plain","computed":true},"public_ip":{"type":"bool","description_kind":"plain","optional":true,"computed":true},"security_group_ids":{"type":["set","string"],"description_kind":"plain","optional":true},"version":{"type":"string","description_kind":"plain","optional":true,"computed":true},"version_info":{"type":["list",["object",{"current_version":"string","new_revision_available":"bool","new_revision_summary":"string","version_deprecated":"bool"}]],"description_kind":"plain","computed":true}},"block_types":{"maintenance_policy":{"nesting_mode":"list","block":{"attributes":{"auto_upgrade":{"type":"bool","description_kind":"plain","required":true}},"block_types":{"maintenance_window":{"nesting_mode":"set","block":{"attributes":{"day":{"type":"string","description_kind":"plain","optional":true,"computed":true},"duration":{"type":"string","description_kind":"plain","required":true},"start_time":{"type":"string","description_kind":"plain","required":true}},"description_kind":"plain"}}},"description_kind":"plain"},"max_items":1},"master_location":{"nesting_mode":"list","block":{"attributes":{"subnet_id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"zone":{"type":"string","description_kind":"plain","optional":true,"computed":true}},"description_kind":"plain"}},"master_logging":{"nesting_mode":"list","block":{"attributes":{"audit_enabled":{"type":"bool","description_kind":"plain","optional":true},"cluster_autoscaler_enabled":{"type":"bool","description_kind":"plain","optional":true},"enabled":{"type":"bool","description_kind":"plain","optional":true},"events_enabled":{"type":"bool","description_kind":"plain","optional":true},"folder_id":{"type":"string","description_kind":"plain","optional":true},"kube_apiserver_enabled":{"type":"bool","description_kind":"plain","optional":true},"log_group_id":{"type":"string","description_kind":"plain","optional":true}},"description_kind":"plain"},"max_items":1},"regional":{"nesting_mode":"list","block":{"attributes":{"region":{"type":"string","description_kind":"plain","required":true}},"block_types":{"location":{"nesting_mode":"list","block":{"attributes":{"subnet_id":{"type":"string","description_kind":"plain","optional":true},"zone":{"type":"string","description_kind":"plain","optional":true}},"description_kind":"plain"}}},"description_kind":"plain"},"max_items":1},"zonal":{"nesting_mode":"list","block":{"attributes":{"subnet_id":{"type":"string","description_kind":"plain","optional":true},"zone":{"type":"string","description_kind":"plain","optional":true,"computed":true}},"description_kind":"plain"},"max_items":1}},"description_kind":"plain"},"min_items":1,"max_items":1},"network_implementation":{"nesting_mode":"list","block":{"block_types":{"cilium":{"nesting_mode":"list","block":{"description_kind":"plain"},"max_items":1}},"description_kind":"plain"},"max_items":1},"timeouts":{"nesting_mode":"single","block":{"attributes":{"create":{"type":"string","description_kind":"plain","optional":true},"delete":{"type":"string","description_kind":"plain","optional":true},"read":{"type":"string","description_kind":"plain","optional":true},"update":{"type":"string","description_kind":"plain","optional":true}},"description_kind":"plain"}}},"description_kind":"plain"}},"yandex_kubernetes_node_group":{"version":0,"block":{"attributes":{"allowed_unsafe_sysctls":{"type":["list","string"],"description_kind":"plain","optional":true},"cluster_id":{"type":"string","description_kind":"plain","required":true},"created_at":{"type":"string","description_kind":"plain","computed":true},"description":{"type":"string","description_kind":"plain","optional":true,"computed":true},"id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"instance_group_id":{"type":"string","description_kind":"plain","computed":true},"labels":{"type":["map","string"],"description_kind":"plain","optional":true,"computed":true},"name":{"type":"string","description_kind":"plain","optional":true,"computed":true},"node_labels":{"type":["map","string"],"description_kind":"plain","optional":true},"node_taints":{"type":["list","string"],"description_kind":"plain","optional":true},"status":{"type":"string","description_kind":"plain","computed":true},"version":{"type":"string","description_kind":"plain","optional":true,"computed":true},"version_info":{"type":["list",["object",{"current_version":"string","new_revision_available":"bool","new_revision_summary":"string","version_deprecated":"bool"}]],"description_kind":"plain","computed":true}},"block_types":{"allocation_policy":{"nesting_mode":"list","block":{"block_types":{"location":{"nesting_mode":"list","block":{"attributes":{"subnet_id":{"type":"string","description_kind":"plain","deprecated":true,"optional":true,"computed":true},"zone":{"type":"string","description_kind":"plain","optional":true,"computed":true}},"description_kind":"plain"}}},"description_kind":"plain"},"max_items":1},"deploy_policy":{"nesting_mode":"list","block":{"attributes":{"max_expansion":{"type":"number","description_kind":"plain","required":true},"max_unavailable":{"type":"number","description_kind":"plain","required":true}},"description_kind":"plain"},"max_items":1},"instance_template":{"nesting_mode":"list","block":{"attributes":{"labels":{"type":["map","string"],"description_kind":"plain","optional":true},"metadata":{"type":["map","string"],"description_kind":"plain","optional":true,"computed":true},"name":{"type":"string","description_kind":"plain","optional":true},"nat":{"type":"bool","description_kind":"plain","deprecated":true,"optional":true,"computed":true},"network_acceleration_type":{"type":"string","description_kind":"plain","optional":true,"computed":true},"platform_id":{"type":"string","description_kind":"plain","optional":true,"computed":true}},"block_types":{"boot_disk":{"nesting_mode":"list","block":{"attributes":{"size":{"type":"number","description_kind":"plain","optional":true,"computed":true},"type":{"type":"string","description_kind":"plain","optional":true,"computed":true}},"description_kind":"plain"},"max_items":1},"container_network":{"nesting_mode":"list","block":{"attributes":{"pod_mtu":{"type":"number","description_kind":"plain","optional":true,"computed":true}},"description_kind":"plain"},"max_items":1},"container_runtime":{"nesting_mode":"list","block":{"attributes":{"type":{"type":"string","description_kind":"plain","required":true}},"description_kind":"plain"},"max_items":1},"gpu_settings":{"nesting_mode":"list","block":{"attributes":{"gpu_cluster_id":{"type":"string","description_kind":"plain","optional":true},"gpu_environment":{"type":"string","description_kind":"plain","optional":true,"computed":true}},"description_kind":"plain"},"max_items":1},"network_interface":{"nesting_mode":"list","block":{"attributes":{"ipv4":{"type":"bool","description_kind":"plain","optional":true},"ipv6":{"type":"bool","description_kind":"plain","optional":true,"computed":true},"nat":{"type":"bool","description_kind":"plain","optional":true,"computed":true},"security_group_ids":{"type":["set","string"],"description_kind":"plain","optional":true},"subnet_ids":{"type":["set","string"],"description_kind":"plain","required":true}},"block_types":{"ipv4_dns_records":{"nesting_mode":"list","block":{"attributes":{"dns_zone_id":{"type":"string","description_kind":"plain","optional":true},"fqdn":{"type":"string","description_kind":"plain","required":true},"ptr":{"type":"bool","description_kind":"plain","optional":true},"ttl":{"type":"number","description_kind":"plain","optional":true}},"description_kind":"plain"}},"ipv6_dns_records":{"nesting_mode":"list","block":{"attributes":{"dns_zone_id":{"type":"string","description_kind":"plain","optional":true},"fqdn":{"type":"string","description_kind":"plain","required":true},"ptr":{"type":"bool","description_kind":"plain","optional":true},"ttl":{"type":"number","description_kind":"plain","optional":true}},"description_kind":"plain"}}},"description_kind":"plain"}},"placement_policy":{"nesting_mode":"list","block":{"attributes":{"placement_group_id":{"type":"string","description_kind":"plain","required":true}},"description_kind":"plain"},"max_items":1},"resources":{"nesting_mode":"list","block":{"attributes":{"core_fraction":{"type":"number","description_kind":"plain","optional":true,"computed":true},"cores":{"type":"number","description_kind":"plain","optional":true,"computed":true},"gpus":{"type":"number","description_kind":"plain","optional":true},"memory":{"type":"number","description_kind":"plain","optional":true,"computed":true}},"description_kind":"plain"},"max_items":1},"scheduling_policy":{"nesting_mode":"list","block":{"attributes":{"preemptible":{"type":"bool","description_kind":"plain","optional":true,"computed":true}},"description_kind":"plain"},"max_items":1}},"description_kind":"plain"},"min_items":1,"max_items":1},"maintenance_policy":{"nesting_mode":"list","block":{"attributes":{"auto_repair":{"type":"bool","description_kind":"plain","required":true},"auto_upgrade":{"type":"bool","description_kind":"plain","required":true}},"block_types":{"maintenance_window":{"nesting_mode":"set","block":{"attributes":{"day":{"type":"string","description_kind":"plain","optional":true,"computed":true},"duration":{"type":"string","description_kind":"plain","required":true},"start_time":{"type":"string","description_kind":"plain","required":true}},"description_kind":"plain"}}},"description_kind":"plain"},"max_items":1},"scale_policy":{"nesting_mode":"list","block":{"block_types":{"auto_scale":{"nesting_mode":"list","block":{"attributes":{"initial":{"type":"number","description_kind":"plain","required":true},"max":{"type":"number","description_kind":"plain","required":true},"min":{"type":"number","description_kind":"plain","required":true}},"description_kind":"plain"},"max_items":1},"fixed_scale":{"nesting_mode":"list","block":{"attributes":{"size":{"type":"number","description_kind":"plain","optional":true,"computed":true}},"description_kind":"plain"},"max_items":1}},"description_kind":"plain"},"min_items":1,"max_items":1},"timeouts":{"nesting_mode":"single","block":{"attributes":{"create":{"type":"string","description_kind":"plain","optional":true},"delete":{"type":"string","description_kind":"plain","optional":true},"read":{"type":"string","description_kind":"plain","optional":true},"update":{"type":"string","description_kind":"plain","optional":true}},"description_kind":"plain"}}},"description_kind":"plain"}},"yandex_lb_network_load_balancer":{"version":0,"block":{"attributes":{"created_at":{"type":"string","description_kind":"plain","computed":true},"deletion_protection":{"type":"bool","description_kind":"plain","optional":true,"computed":true},"description":{"type":"string","description_kind":"plain","optional":true},"folder_id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"labels":{"type":["map","string"],"description_kind":"plain","optional":true},"name":{"type":"string","description_kind":"plain","optional":true},"region_id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"type":{"type":"string","description_kind":"plain","optional":true}},"block_types":{"attached_target_group":{"nesting_mode":"set","block":{"attributes":{"target_group_id":{"type":"string","description_kind":"plain","required":true}},"block_types":{"healthcheck":{"nesting_mode":"list","block":{"attributes":{"healthy_threshold":{"type":"number","description_kind":"plain","optional":true},"interval":{"type":"number","description_kind":"plain","optional":true},"name":{"type":"string","description_kind":"plain","required":true},"timeout":{"type":"number","description_kind":"plain","optional":true},"unhealthy_threshold":{"type":"number","description_kind":"plain","optional":true}},"block_types":{"http_options":{"nesting_mode":"list","block":{"attributes":{"path":{"type":"string","description_kind":"plain","optional":true},"port":{"type":"number","description_kind":"plain","required":true}},"description_kind":"plain"},"max_items":1},"tcp_options":{"nesting_mode":"list","block":{"attributes":{"port":{"type":"number","description_kind":"plain","required":true}},"description_kind":"plain"},"max_items":1}},"description_kind":"plain"},"min_items":1}},"description_kind":"plain"}},"listener":{"nesting_mode":"set","block":{"attributes":{"name":{"type":"string","description_kind":"plain","required":true},"port":{"type":"number","description_kind":"plain","required":true},"protocol":{"type":"string","description_kind":"plain","optional":true,"computed":true},"target_port":{"type":"number","description_kind":"plain","optional":true,"computed":true}},"block_types":{"external_address_spec":{"nesting_mode":"set","block":{"attributes":{"address":{"type":"string","description_kind":"plain","optional":true,"computed":true},"ip_version":{"type":"string","description_kind":"plain","optional":true}},"description_kind":"plain"},"max_items":1},"internal_address_spec":{"nesting_mode":"set","block":{"attributes":{"address":{"type":"string","description_kind":"plain","optional":true,"computed":true},"ip_version":{"type":"string","description_kind":"plain","optional":true},"subnet_id":{"type":"string","description_kind":"plain","required":true}},"description_kind":"plain"},"max_items":1}},"description_kind":"plain"}},"timeouts":{"nesting_mode":"single","block":{"attributes":{"create":{"type":"string","description_kind":"plain","optional":true},"delete":{"type":"string","description_kind":"plain","optional":true},"update":{"type":"string","description_kind":"plain","optional":true}},"description_kind":"plain"}}},"description_kind":"plain"}},"yandex_lb_target_group":{"version":0,"block":{"attributes":{"created_at":{"type":"string","description_kind":"plain","computed":true},"description":{"type":"string","description_kind":"plain","optional":true},"folder_id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"labels":{"type":["map","string"],"description_kind":"plain","optional":true},"name":{"type":"string","description_kind":"plain","optional":true},"region_id":{"type":"string","description_kind":"plain","optional":true,"computed":true}},"block_types":{"target":{"nesting_mode":"set","block":{"attributes":{"address":{"type":"string","description_kind":"plain","required":true},"subnet_id":{"type":"string","description_kind":"plain","required":true}},"description_kind":"plain"}},"timeouts":{"nesting_mode":"single","block":{"attributes":{"create":{"type":"string","description_kind":"plain","optional":true},"delete":{"type":"string","description_kind":"plain","optional":true},"update":{"type":"string","description_kind":"plain","optional":true}},"description_kind":"plain"}}},"description_kind":"plain"}},"yandex_loadtesting_agent":{"version":0,"block":{"attributes":{"compute_instance_id":{"type":"string","description_kind":"plain","computed":true},"description":{"type":"string","description_kind":"plain","optional":true},"folder_id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"labels":{"type":["map","string"],"description_kind":"plain","optional":true},"name":{"type":"string","description_kind":"plain","required":true}},"block_types":{"compute_instance":{"nesting_mode":"list","block":{"attributes":{"computed_labels":{"type":["map","string"],"description_kind":"plain","computed":true},"computed_metadata":{"type":["map","string"],"description_kind":"plain","computed":true},"labels":{"type":["map","string"],"description_kind":"plain","optional":true},"metadata":{"type":["map","string"],"description_kind":"plain","optional":true},"platform_id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"service_account_id":{"type":"string","description_kind":"plain","required":true},"zone_id":{"type":"string","description_kind":"plain","optional":true,"computed":true}},"block_types":{"boot_disk":{"nesting_mode":"list","block":{"attributes":{"auto_delete":{"type":"bool","description_kind":"plain","optional":true},"device_name":{"type":"string","description_kind":"plain","optional":true,"computed":true},"disk_id":{"type":"string","description_kind":"plain","computed":true}},"block_types":{"initialize_params":{"nesting_mode":"list","block":{"attributes":{"block_size":{"type":"number","description_kind":"plain","optional":true,"computed":true},"description":{"type":"string","description_kind":"plain","optional":true,"computed":true},"name":{"type":"string","description_kind":"plain","optional":true,"computed":true},"size":{"type":"number","description_kind":"plain","optional":true},"type":{"type":"string","description_kind":"plain","optional":true}},"description_kind":"plain"},"min_items":1,"max_items":1}},"description_kind":"plain"},"min_items":1,"max_items":1},"network_interface":{"nesting_mode":"list","block":{"attributes":{"index":{"type":"number","description_kind":"plain","computed":true},"ip_address":{"type":"string","description_kind":"plain","optional":true,"computed":true},"ipv4":{"type":"bool","description_kind":"plain","optional":true},"ipv6":{"type":"bool","description_kind":"plain","optional":true,"computed":true},"ipv6_address":{"type":"string","description_kind":"plain","optional":true,"computed":true},"mac_address":{"type":"string","description_kind":"plain","computed":true},"nat":{"type":"bool","description_kind":"plain","optional":true},"nat_ip_address":{"type":"string","description_kind":"plain","optional":true,"computed":true},"nat_ip_version":{"type":"string","description_kind":"plain","computed":true},"security_group_ids":{"type":["set","string"],"description_kind":"plain","optional":true,"computed":true},"subnet_id":{"type":"string","description_kind":"plain","required":true}},"description_kind":"plain"},"min_items":1},"resources":{"nesting_mode":"list","block":{"attributes":{"core_fraction":{"type":"number","description_kind":"plain","optional":true},"cores":{"type":"number","description_kind":"plain","optional":true},"memory":{"type":"number","description_kind":"plain","optional":true}},"description_kind":"plain"},"min_items":1,"max_items":1}},"description_kind":"plain"},"min_items":1,"max_items":1},"timeouts":{"nesting_mode":"single","block":{"attributes":{"create":{"type":"string","description_kind":"plain","optional":true},"delete":{"type":"string","description_kind":"plain","optional":true},"update":{"type":"string","description_kind":"plain","optional":true}},"description_kind":"plain"}}},"description_kind":"plain"}},"yandex_lockbox_secret":{"version":1,"block":{"attributes":{"created_at":{"type":"string","description_kind":"plain","computed":true},"deletion_protection":{"type":"bool","description_kind":"plain","optional":true},"description":{"type":"string","description_kind":"plain","optional":true},"folder_id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"kms_key_id":{"type":"string","description_kind":"plain","optional":true},"labels":{"type":["map","string"],"description_kind":"plain","optional":true},"name":{"type":"string","description_kind":"plain","optional":true},"status":{"type":"string","description_kind":"plain","computed":true}},"block_types":{"password_payload_specification":{"nesting_mode":"list","block":{"attributes":{"excluded_punctuation":{"type":"string","description_kind":"plain","optional":true},"include_digits":{"type":"bool","description_kind":"plain","optional":true},"include_lowercase":{"type":"bool","description_kind":"plain","optional":true},"include_punctuation":{"type":"bool","description_kind":"plain","optional":true},"include_uppercase":{"type":"bool","description_kind":"plain","optional":true},"included_punctuation":{"type":"string","description_kind":"plain","optional":true},"length":{"type":"number","description_kind":"plain","optional":true},"password_key":{"type":"string","description_kind":"plain","required":true}},"description_kind":"plain"},"max_items":1},"timeouts":{"nesting_mode":"single","block":{"attributes":{"create":{"type":"string","description_kind":"plain","optional":true},"delete":{"type":"string","description_kind":"plain","optional":true},"read":{"type":"string","description_kind":"plain","optional":true},"update":{"type":"string","description_kind":"plain","optional":true}},"description_kind":"plain"}}},"description_kind":"plain"}},"yandex_lockbox_secret_iam_binding":{"version":0,"block":{"attributes":{"id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"members":{"type":["set","string"],"description_kind":"plain","required":true},"role":{"type":"string","description_kind":"plain","required":true},"secret_id":{"type":"string","description_kind":"plain","required":true},"sleep_after":{"type":"number","description_kind":"plain","optional":true}},"block_types":{"timeouts":{"nesting_mode":"single","block":{"attributes":{"default":{"type":"string","description_kind":"plain","optional":true}},"description_kind":"plain"}}},"description_kind":"plain"}},"yandex_lockbox_secret_version":{"version":1,"block":{"attributes":{"description":{"type":"string","description_kind":"plain","optional":true},"id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"secret_id":{"type":"string","description_kind":"plain","required":true}},"block_types":{"entries":{"nesting_mode":"list","block":{"attributes":{"key":{"type":"string","description_kind":"plain","required":true},"text_value":{"type":"string","description_kind":"plain","optional":true,"sensitive":true}},"block_types":{"command":{"nesting_mode":"list","block":{"attributes":{"args":{"type":["list","string"],"description_kind":"plain","optional":true},"env":{"type":["map","string"],"description_kind":"plain","optional":true},"path":{"type":"string","description_kind":"plain","required":true}},"description_kind":"plain"},"max_items":1}},"description_kind":"plain"}},"timeouts":{"nesting_mode":"single","block":{"attributes":{"create":{"type":"string","description_kind":"plain","optional":true},"delete":{"type":"string","description_kind":"plain","optional":true},"read":{"type":"string","description_kind":"plain","optional":true}},"description_kind":"plain"}}},"description_kind":"plain"}},"yandex_lockbox_secret_version_hashed":{"version":1,"block":{"attributes":{"description":{"type":"string","description_kind":"plain","optional":true},"id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"key_1":{"type":"string","description_kind":"plain","optional":true},"key_10":{"type":"string","description_kind":"plain","optional":true},"key_2":{"type":"string","description_kind":"plain","optional":true},"key_3":{"type":"string","description_kind":"plain","optional":true},"key_4":{"type":"string","description_kind":"plain","optional":true},"key_5":{"type":"string","description_kind":"plain","optional":true},"key_6":{"type":"string","description_kind":"plain","optional":true},"key_7":{"type":"string","description_kind":"plain","optional":true},"key_8":{"type":"string","description_kind":"plain","optional":true},"key_9":{"type":"string","description_kind":"plain","optional":true},"secret_id":{"type":"string","description_kind":"plain","required":true},"text_value_1":{"type":"string","description_kind":"plain","optional":true,"sensitive":true},"text_value_10":{"type":"string","description_kind":"plain","optional":true,"sensitive":true},"text_value_2":{"type":"string","description_kind":"plain","optional":true,"sensitive":true},"text_value_3":{"type":"string","description_kind":"plain","optional":true,"sensitive":true},"text_value_4":{"type":"string","description_kind":"plain","optional":true,"sensitive":true},"text_value_5":{"type":"string","description_kind":"plain","optional":true,"sensitive":true},"text_value_6":{"type":"string","description_kind":"plain","optional":true,"sensitive":true},"text_value_7":{"type":"string","description_kind":"plain","optional":true,"sensitive":true},"text_value_8":{"type":"string","description_kind":"plain","optional":true,"sensitive":true},"text_value_9":{"type":"string","description_kind":"plain","optional":true,"sensitive":true}},"block_types":{"timeouts":{"nesting_mode":"single","block":{"attributes":{"create":{"type":"string","description_kind":"plain","optional":true},"delete":{"type":"string","description_kind":"plain","optional":true},"read":{"type":"string","description_kind":"plain","optional":true}},"description_kind":"plain"}}},"description_kind":"plain"}},"yandex_logging_group":{"version":0,"block":{"attributes":{"cloud_id":{"type":"string","description_kind":"plain","computed":true},"created_at":{"type":"string","description_kind":"plain","computed":true},"data_stream":{"type":"string","description_kind":"plain","optional":true},"description":{"type":"string","description_kind":"plain","optional":true},"folder_id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"labels":{"type":["map","string"],"description_kind":"plain","optional":true},"name":{"type":"string","description_kind":"plain","optional":true,"computed":true},"retention_period":{"type":"string","description_kind":"plain","optional":true,"computed":true},"status":{"type":"string","description_kind":"plain","computed":true}},"block_types":{"timeouts":{"nesting_mode":"single","block":{"attributes":{"default":{"type":"string","description_kind":"plain","optional":true}},"description_kind":"plain"}}},"description_kind":"plain"}},"yandex_mdb_clickhouse_cluster":{"version":0,"block":{"attributes":{"admin_password":{"type":"string","description_kind":"plain","optional":true,"sensitive":true},"backup_retain_period_days":{"type":"number","description_kind":"plain","optional":true},"cluster_id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"copy_schema_on_new_hosts":{"type":"bool","description_kind":"plain","optional":true},"created_at":{"type":"string","description_kind":"plain","computed":true},"deletion_protection":{"type":"bool","description_kind":"plain","optional":true,"computed":true},"description":{"type":"string","description_kind":"plain","optional":true},"embedded_keeper":{"type":"bool","description_kind":"plain","optional":true,"computed":true},"environment":{"type":"string","description_kind":"plain","required":true},"folder_id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"health":{"type":"string","description_kind":"plain","computed":true},"id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"labels":{"type":["map","string"],"description_kind":"plain","optional":true,"computed":true},"name":{"type":"string","description_kind":"plain","required":true},"network_id":{"type":"string","description_kind":"plain","required":true},"security_group_ids":{"type":["set","string"],"description_kind":"plain","optional":true,"computed":true},"service_account_id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"sql_database_management":{"type":"bool","description_kind":"plain","optional":true,"computed":true},"sql_user_management":{"type":"bool","description_kind":"plain","optional":true,"computed":true},"status":{"type":"string","description_kind":"plain","computed":true},"version":{"type":"string","description_kind":"plain","optional":true,"computed":true}},"block_types":{"access":{"nesting_mode":"list","block":{"attributes":{"data_lens":{"type":"bool","description_kind":"plain","optional":true},"data_transfer":{"type":"bool","description_kind":"plain","optional":true},"metrika":{"type":"bool","description_kind":"plain","optional":true},"serverless":{"type":"bool","description_kind":"plain","optional":true},"web_sql":{"type":"bool","description_kind":"plain","optional":true},"yandex_query":{"type":"bool","description_kind":"plain","optional":true}},"description_kind":"plain"},"max_items":1},"backup_window_start":{"nesting_mode":"list","block":{"attributes":{"hours":{"type":"number","description_kind":"plain","optional":true},"minutes":{"type":"number","description_kind":"plain","optional":true}},"description_kind":"plain"},"max_items":1},"clickhouse":{"nesting_mode":"list","block":{"block_types":{"config":{"nesting_mode":"list","block":{"attributes":{"asynchronous_insert_log_enabled":{"type":"bool","description_kind":"plain","optional":true,"computed":true},"asynchronous_insert_log_retention_size":{"type":"number","description_kind":"plain","optional":true,"computed":true},"asynchronous_insert_log_retention_time":{"type":"number","description_kind":"plain","optional":true,"computed":true},"asynchronous_metric_log_enabled":{"type":"bool","description_kind":"plain","optional":true,"computed":true},"asynchronous_metric_log_retention_size":{"type":"number","description_kind":"plain","optional":true,"computed":true},"asynchronous_metric_log_retention_time":{"type":"number","description_kind":"plain","optional":true,"computed":true},"background_buffer_flush_schedule_pool_size":{"type":"number","description_kind":"plain","optional":true,"computed":true},"background_common_pool_size":{"type":"number","description_kind":"plain","optional":true,"computed":true},"background_distributed_schedule_pool_size":{"type":"number","description_kind":"plain","optional":true,"computed":true},"background_fetches_pool_size":{"type":"number","description_kind":"plain","optional":true,"computed":true},"background_merges_mutations_concurrency_ratio":{"type":"number","description_kind":"plain","optional":true,"computed":true},"background_message_broker_schedule_pool_size":{"type":"number","description_kind":"plain","optional":true,"computed":true},"background_move_pool_size":{"type":"number","description_kind":"plain","optional":true,"computed":true},"background_pool_size":{"type":"number","description_kind":"plain","optional":true,"computed":true},"background_schedule_pool_size":{"type":"number","description_kind":"plain","optional":true,"computed":true},"default_database":{"type":"string","description_kind":"plain","optional":true,"computed":true},"dictionaries_lazy_load":{"type":"bool","description_kind":"plain","optional":true,"computed":true},"geobase_enabled":{"type":"bool","description_kind":"plain","optional":true,"computed":true},"geobase_uri":{"type":"string","description_kind":"plain","optional":true,"computed":true},"keep_alive_timeout":{"type":"number","description_kind":"plain","optional":true,"computed":true},"log_level":{"type":"string","description_kind":"plain","optional":true,"computed":true},"mark_cache_size":{"type":"number","description_kind":"plain","optional":true,"computed":true},"max_concurrent_queries":{"type":"number","description_kind":"plain","optional":true,"computed":true},"max_connections":{"type":"number","description_kind":"plain","optional":true,"computed":true},"max_partition_size_to_drop":{"type":"number","description_kind":"plain","optional":true,"computed":true},"max_table_size_to_drop":{"type":"number","description_kind":"plain","optional":true,"computed":true},"metric_log_enabled":{"type":"bool","description_kind":"plain","optional":true,"computed":true},"metric_log_retention_size":{"type":"number","description_kind":"plain","optional":true,"computed":true},"metric_log_retention_time":{"type":"number","description_kind":"plain","optional":true,"computed":true},"opentelemetry_span_log_enabled":{"type":"bool","description_kind":"plain","optional":true,"computed":true},"opentelemetry_span_log_retention_size":{"type":"number","description_kind":"plain","optional":true,"computed":true},"opentelemetry_span_log_retention_time":{"type":"number","description_kind":"plain","optional":true,"computed":true},"part_log_retention_size":{"type":"number","description_kind":"plain","optional":true,"computed":true},"part_log_retention_time":{"type":"number","description_kind":"plain","optional":true,"computed":true},"query_log_retention_size":{"type":"number","description_kind":"plain","optional":true,"computed":true},"query_log_retention_time":{"type":"number","description_kind":"plain","optional":true,"computed":true},"query_thread_log_enabled":{"type":"bool","description_kind":"plain","optional":true,"computed":true},"query_thread_log_retention_size":{"type":"number","description_kind":"plain","optional":true,"computed":true},"query_thread_log_retention_time":{"type":"number","description_kind":"plain","optional":true,"computed":true},"query_views_log_enabled":{"type":"bool","description_kind":"plain","optional":true,"computed":true},"query_views_log_retention_size":{"type":"number","description_kind":"plain","optional":true,"computed":true},"query_views_log_retention_time":{"type":"number","description_kind":"plain","optional":true,"computed":true},"session_log_enabled":{"type":"bool","description_kind":"plain","optional":true,"computed":true},"session_log_retention_size":{"type":"number","description_kind":"plain","optional":true,"computed":true},"session_log_retention_time":{"type":"number","description_kind":"plain","optional":true,"computed":true},"text_log_enabled":{"type":"bool","description_kind":"plain","optional":true,"computed":true},"text_log_level":{"type":"string","description_kind":"plain","optional":true,"computed":true},"text_log_retention_size":{"type":"number","description_kind":"plain","optional":true,"computed":true},"text_log_retention_time":{"type":"number","description_kind":"plain","optional":true,"computed":true},"timezone":{"type":"string","description_kind":"plain","optional":true,"computed":true},"total_memory_profiler_step":{"type":"number","description_kind":"plain","optional":true,"computed":true},"trace_log_enabled":{"type":"bool","description_kind":"plain","optional":true,"computed":true},"trace_log_retention_size":{"type":"number","description_kind":"plain","optional":true,"computed":true},"trace_log_retention_time":{"type":"number","description_kind":"plain","optional":true,"computed":true},"uncompressed_cache_size":{"type":"number","description_kind":"plain","optional":true,"computed":true},"zookeeper_log_enabled":{"type":"bool","description_kind":"plain","optional":true,"computed":true},"zookeeper_log_retention_size":{"type":"number","description_kind":"plain","optional":true,"computed":true},"zookeeper_log_retention_time":{"type":"number","description_kind":"plain","optional":true,"computed":true}},"block_types":{"compression":{"nesting_mode":"list","block":{"attributes":{"level":{"type":"number","description_kind":"plain","optional":true},"method":{"type":"string","description_kind":"plain","required":true},"min_part_size":{"type":"number","description_kind":"plain","required":true},"min_part_size_ratio":{"type":"number","description_kind":"plain","required":true}},"description_kind":"plain"}},"graphite_rollup":{"nesting_mode":"list","block":{"attributes":{"name":{"type":"string","description_kind":"plain","required":true},"path_column_name":{"type":"string","description_kind":"plain","optional":true,"computed":true},"time_column_name":{"type":"string","description_kind":"plain","optional":true,"computed":true},"value_column_name":{"type":"string","description_kind":"plain","optional":true,"computed":true},"version_column_name":{"type":"string","description_kind":"plain","optional":true,"computed":true}},"block_types":{"pattern":{"nesting_mode":"list","block":{"attributes":{"function":{"type":"string","description_kind":"plain","required":true},"regexp":{"type":"string","description_kind":"plain","optional":true,"computed":true}},"block_types":{"retention":{"nesting_mode":"list","block":{"attributes":{"age":{"type":"number","description_kind":"plain","required":true},"precision":{"type":"number","description_kind":"plain","required":true}},"description_kind":"plain"}}},"description_kind":"plain"}}},"description_kind":"plain"}},"kafka":{"nesting_mode":"list","block":{"attributes":{"auto_offset_reset":{"type":"string","description_kind":"plain","optional":true,"computed":true},"debug":{"type":"string","description_kind":"plain","optional":true,"computed":true},"enable_ssl_certificate_verification":{"type":"bool","description_kind":"plain","optional":true,"computed":true},"max_poll_interval_ms":{"type":"number","description_kind":"plain","optional":true,"computed":true},"sasl_mechanism":{"type":"string","description_kind":"plain","optional":true,"computed":true},"sasl_password":{"type":"string","description_kind":"plain","optional":true,"computed":true,"sensitive":true},"sasl_username":{"type":"string","description_kind":"plain","optional":true,"computed":true},"security_protocol":{"type":"string","description_kind":"plain","optional":true,"computed":true},"session_timeout_ms":{"type":"number","description_kind":"plain","optional":true,"computed":true}},"description_kind":"plain"},"max_items":1},"kafka_topic":{"nesting_mode":"list","block":{"attributes":{"name":{"type":"string","description_kind":"plain","required":true}},"block_types":{"settings":{"nesting_mode":"list","block":{"attributes":{"auto_offset_reset":{"type":"string","description_kind":"plain","optional":true,"computed":true},"debug":{"type":"string","description_kind":"plain","optional":true,"computed":true},"enable_ssl_certificate_verification":{"type":"bool","description_kind":"plain","optional":true,"computed":true},"max_poll_interval_ms":{"type":"number","description_kind":"plain","optional":true,"computed":true},"sasl_mechanism":{"type":"string","description_kind":"plain","optional":true},"sasl_password":{"type":"string","description_kind":"plain","optional":true,"sensitive":true},"sasl_username":{"type":"string","description_kind":"plain","optional":true},"security_protocol":{"type":"string","description_kind":"plain","optional":true},"session_timeout_ms":{"type":"number","description_kind":"plain","optional":true,"computed":true}},"description_kind":"plain"},"max_items":1}},"description_kind":"plain"}},"merge_tree":{"nesting_mode":"list","block":{"attributes":{"allow_remote_fs_zero_copy_replication":{"type":"bool","description_kind":"plain","optional":true,"computed":true},"check_sample_column_is_correct":{"type":"bool","description_kind":"plain","optional":true,"computed":true},"cleanup_delay_period":{"type":"number","description_kind":"plain","optional":true,"computed":true},"inactive_parts_to_delay_insert":{"type":"number","description_kind":"plain","optional":true,"computed":true},"inactive_parts_to_throw_insert":{"type":"number","description_kind":"plain","optional":true,"computed":true},"max_avg_part_size_for_too_many_parts":{"type":"number","description_kind":"plain","optional":true,"computed":true},"max_bytes_to_merge_at_max_space_in_pool":{"type":"number","description_kind":"plain","optional":true,"computed":true},"max_bytes_to_merge_at_min_space_in_pool":{"type":"number","description_kind":"plain","optional":true,"computed":true},"max_cleanup_delay_period":{"type":"number","description_kind":"plain","optional":true,"computed":true},"max_merge_selecting_sleep_ms":{"type":"number","description_kind":"plain","optional":true,"computed":true},"max_number_of_merges_with_ttl_in_pool":{"type":"number","description_kind":"plain","optional":true,"computed":true},"max_parts_in_total":{"type":"number","description_kind":"plain","optional":true,"computed":true},"max_replicated_merges_in_queue":{"type":"number","description_kind":"plain","optional":true,"computed":true},"merge_max_block_size":{"type":"number","description_kind":"plain","optional":true,"computed":true},"merge_selecting_sleep_ms":{"type":"number","description_kind":"plain","optional":true,"computed":true},"merge_with_recompression_ttl_timeout":{"type":"number","description_kind":"plain","optional":true,"computed":true},"merge_with_ttl_timeout":{"type":"number","description_kind":"plain","optional":true,"computed":true},"min_age_to_force_merge_on_partition_only":{"type":"bool","description_kind":"plain","optional":true,"computed":true},"min_age_to_force_merge_seconds":{"type":"number","description_kind":"plain","optional":true,"computed":true},"min_bytes_for_wide_part":{"type":"number","description_kind":"plain","optional":true,"computed":true},"min_rows_for_wide_part":{"type":"number","description_kind":"plain","optional":true,"computed":true},"number_of_free_entries_in_pool_to_execute_mutation":{"type":"number","description_kind":"plain","optional":true,"computed":true},"number_of_free_entries_in_pool_to_lower_max_size_of_merge":{"type":"number","description_kind":"plain","optional":true,"computed":true},"parts_to_delay_insert":{"type":"number","description_kind":"plain","optional":true,"computed":true},"parts_to_throw_insert":{"type":"number","description_kind":"plain","optional":true,"computed":true},"replicated_deduplication_window":{"type":"number","description_kind":"plain","optional":true,"computed":true},"replicated_deduplication_window_seconds":{"type":"number","description_kind":"plain","optional":true,"computed":true},"ttl_only_drop_parts":{"type":"bool","description_kind":"plain","optional":true,"computed":true}},"description_kind":"plain"},"max_items":1},"query_cache":{"nesting_mode":"list","block":{"attributes":{"max_entries":{"type":"number","description_kind":"plain","optional":true,"computed":true},"max_entry_size_in_bytes":{"type":"number","description_kind":"plain","optional":true,"computed":true},"max_entry_size_in_rows":{"type":"number","description_kind":"plain","optional":true,"computed":true},"max_size_in_bytes":{"type":"number","description_kind":"plain","optional":true,"computed":true}},"description_kind":"plain"},"max_items":1},"query_masking_rules":{"nesting_mode":"list","block":{"attributes":{"name":{"type":"string","description_kind":"plain","optional":true,"computed":true},"regexp":{"type":"string","description_kind":"plain","required":true},"replace":{"type":"string","description_kind":"plain","optional":true,"computed":true}},"description_kind":"plain"}},"rabbitmq":{"nesting_mode":"list","block":{"attributes":{"password":{"type":"string","description_kind":"plain","optional":true,"computed":true,"sensitive":true},"username":{"type":"string","description_kind":"plain","optional":true,"computed":true},"vhost":{"type":"string","description_kind":"plain","optional":true,"computed":true}},"description_kind":"plain"},"max_items":1}},"description_kind":"plain"},"max_items":1},"resources":{"nesting_mode":"list","block":{"attributes":{"disk_size":{"type":"number","description_kind":"plain","optional":true,"computed":true},"disk_type_id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"resource_preset_id":{"type":"string","description_kind":"plain","optional":true,"computed":true}},"description_kind":"plain"},"max_items":1}},"description_kind":"plain"},"max_items":1},"cloud_storage":{"nesting_mode":"list","block":{"attributes":{"data_cache_enabled":{"type":"bool","description_kind":"plain","optional":true,"computed":true},"data_cache_max_size":{"type":"number","description_kind":"plain","optional":true,"computed":true},"enabled":{"type":"bool","description_kind":"plain","required":true},"move_factor":{"type":"number","description_kind":"plain","optional":true,"computed":true},"prefer_not_to_merge":{"type":"bool","description_kind":"plain","optional":true,"computed":true}},"description_kind":"plain"},"max_items":1},"database":{"nesting_mode":"set","block":{"attributes":{"name":{"type":"string","description_kind":"plain","required":true}},"description_kind":"plain"}},"format_schema":{"nesting_mode":"set","block":{"attributes":{"name":{"type":"string","description_kind":"plain","required":true},"type":{"type":"string","description_kind":"plain","required":true},"uri":{"type":"string","description_kind":"plain","required":true}},"description_kind":"plain"}},"host":{"nesting_mode":"list","block":{"attributes":{"assign_public_ip":{"type":"bool","description_kind":"plain","optional":true},"fqdn":{"type":"string","description_kind":"plain","computed":true},"shard_name":{"type":"string","description_kind":"plain","optional":true,"computed":true},"subnet_id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"type":{"type":"string","description_kind":"plain","required":true},"zone":{"type":"string","description_kind":"plain","required":true}},"description_kind":"plain"},"min_items":1},"maintenance_window":{"nesting_mode":"list","block":{"attributes":{"day":{"type":"string","description_kind":"plain","optional":true},"hour":{"type":"number","description_kind":"plain","optional":true},"type":{"type":"string","description_kind":"plain","required":true}},"description_kind":"plain"},"max_items":1},"ml_model":{"nesting_mode":"set","block":{"attributes":{"name":{"type":"string","description_kind":"plain","required":true},"type":{"type":"string","description_kind":"plain","required":true},"uri":{"type":"string","description_kind":"plain","required":true}},"description_kind":"plain"}},"shard":{"nesting_mode":"set","block":{"attributes":{"name":{"type":"string","description_kind":"plain","required":true},"weight":{"type":"number","description_kind":"plain","optional":true,"computed":true}},"block_types":{"resources":{"nesting_mode":"list","block":{"attributes":{"disk_size":{"type":"number","description_kind":"plain","optional":true,"computed":true},"disk_type_id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"resource_preset_id":{"type":"string","description_kind":"plain","optional":true,"computed":true}},"description_kind":"plain"},"max_items":1}},"description_kind":"plain"}},"shard_group":{"nesting_mode":"list","block":{"attributes":{"description":{"type":"string","description_kind":"plain","optional":true},"name":{"type":"string","description_kind":"plain","required":true},"shard_names":{"type":["list","string"],"description_kind":"plain","required":true}},"description_kind":"plain"}},"timeouts":{"nesting_mode":"single","block":{"attributes":{"create":{"type":"string","description_kind":"plain","optional":true},"delete":{"type":"string","description_kind":"plain","optional":true},"update":{"type":"string","description_kind":"plain","optional":true}},"description_kind":"plain"}},"user":{"nesting_mode":"set","block":{"attributes":{"name":{"type":"string","description_kind":"plain","required":true},"password":{"type":"string","description_kind":"plain","required":true,"sensitive":true}},"block_types":{"permission":{"nesting_mode":"set","block":{"attributes":{"database_name":{"type":"string","description_kind":"plain","required":true}},"description_kind":"plain"}},"quota":{"nesting_mode":"set","block":{"attributes":{"errors":{"type":"number","description_kind":"plain","optional":true,"computed":true},"execution_time":{"type":"number","description_kind":"plain","optional":true,"computed":true},"interval_duration":{"type":"number","description_kind":"plain","required":true},"queries":{"type":"number","description_kind":"plain","optional":true,"computed":true},"read_rows":{"type":"number","description_kind":"plain","optional":true,"computed":true},"result_rows":{"type":"number","description_kind":"plain","optional":true,"computed":true}},"description_kind":"plain"}},"settings":{"nesting_mode":"list","block":{"attributes":{"add_http_cors_header":{"type":"bool","description_kind":"plain","optional":true,"computed":true},"allow_ddl":{"type":"bool","description_kind":"plain","optional":true,"computed":true},"allow_introspection_functions":{"type":"bool","description_kind":"plain","optional":true,"computed":true},"allow_suspicious_low_cardinality_types":{"type":"bool","description_kind":"plain","optional":true,"computed":true},"any_join_distinct_right_table_keys":{"type":"bool","description_kind":"plain","optional":true,"computed":true},"async_insert":{"type":"bool","description_kind":"plain","optional":true,"computed":true},"async_insert_busy_timeout":{"type":"number","description_kind":"plain","optional":true,"computed":true},"async_insert_max_data_size":{"type":"number","description_kind":"plain","optional":true,"computed":true},"async_insert_stale_timeout":{"type":"number","description_kind":"plain","optional":true,"computed":true},"async_insert_threads":{"type":"number","description_kind":"plain","optional":true,"computed":true},"cancel_http_readonly_queries_on_client_close":{"type":"bool","description_kind":"plain","optional":true,"computed":true},"compile":{"type":"bool","description_kind":"plain","optional":true,"computed":true},"compile_expressions":{"type":"bool","description_kind":"plain","optional":true,"computed":true},"connect_timeout":{"type":"number","description_kind":"plain","optional":true,"computed":true},"connect_timeout_with_failover":{"type":"number","description_kind":"plain","optional":true,"computed":true},"count_distinct_implementation":{"type":"string","description_kind":"plain","optional":true,"computed":true},"date_time_input_format":{"type":"string","description_kind":"plain","optional":true,"computed":true},"date_time_output_format":{"type":"string","description_kind":"plain","optional":true,"computed":true},"deduplicate_blocks_in_dependent_materialized_views":{"type":"bool","description_kind":"plain","optional":true,"computed":true},"distinct_overflow_mode":{"type":"string","description_kind":"plain","optional":true,"computed":true},"distributed_aggregation_memory_efficient":{"type":"bool","description_kind":"plain","optional":true,"computed":true},"distributed_ddl_task_timeout":{"type":"number","description_kind":"plain","optional":true,"computed":true},"distributed_product_mode":{"type":"string","description_kind":"plain","optional":true,"computed":true},"empty_result_for_aggregation_by_empty_set":{"type":"bool","description_kind":"plain","optional":true,"computed":true},"enable_http_compression":{"type":"bool","description_kind":"plain","optional":true,"computed":true},"fallback_to_stale_replicas_for_distributed_queries":{"type":"bool","description_kind":"plain","optional":true,"computed":true},"flatten_nested":{"type":"bool","description_kind":"plain","optional":true,"computed":true},"force_index_by_date":{"type":"bool","description_kind":"plain","optional":true,"computed":true},"force_primary_key":{"type":"bool","description_kind":"plain","optional":true,"computed":true},"format_regexp":{"type":"string","description_kind":"plain","optional":true,"computed":true},"format_regexp_skip_unmatched":{"type":"bool","description_kind":"plain","optional":true,"computed":true},"group_by_overflow_mode":{"type":"string","description_kind":"plain","optional":true,"computed":true},"group_by_two_level_threshold":{"type":"number","description_kind":"plain","optional":true,"computed":true},"group_by_two_level_threshold_bytes":{"type":"number","description_kind":"plain","optional":true,"computed":true},"hedged_connection_timeout_ms":{"type":"number","description_kind":"plain","optional":true,"computed":true},"http_connection_timeout":{"type":"number","description_kind":"plain","optional":true,"computed":true},"http_headers_progress_interval":{"type":"number","description_kind":"plain","optional":true,"computed":true},"http_receive_timeout":{"type":"number","description_kind":"plain","optional":true,"computed":true},"http_send_timeout":{"type":"number","description_kind":"plain","optional":true,"computed":true},"idle_connection_timeout":{"type":"number","description_kind":"plain","optional":true,"computed":true},"input_format_defaults_for_omitted_fields":{"type":"bool","description_kind":"plain","optional":true,"computed":true},"input_format_import_nested_json":{"type":"bool","description_kind":"plain","optional":true,"computed":true},"input_format_null_as_default":{"type":"bool","description_kind":"plain","optional":true,"computed":true},"input_format_parallel_parsing":{"type":"bool","description_kind":"plain","optional":true,"computed":true},"input_format_values_interpret_expressions":{"type":"bool","description_kind":"plain","optional":true,"computed":true},"input_format_with_names_use_header":{"type":"bool","description_kind":"plain","optional":true,"computed":true},"insert_keeper_max_retries":{"type":"number","description_kind":"plain","optional":true,"computed":true},"insert_null_as_default":{"type":"bool","description_kind":"plain","optional":true,"computed":true},"insert_quorum":{"type":"number","description_kind":"plain","optional":true,"computed":true},"insert_quorum_parallel":{"type":"bool","description_kind":"plain","optional":true,"computed":true},"insert_quorum_timeout":{"type":"number","description_kind":"plain","optional":true,"computed":true},"join_algorithm":{"type":["list","string"],"description_kind":"plain","optional":true,"computed":true},"join_overflow_mode":{"type":"string","description_kind":"plain","optional":true,"computed":true},"join_use_nulls":{"type":"bool","description_kind":"plain","optional":true,"computed":true},"joined_subquery_requires_alias":{"type":"bool","description_kind":"plain","optional":true,"computed":true},"load_balancing":{"type":"string","description_kind":"plain","optional":true,"computed":true},"local_filesystem_read_method":{"type":"string","description_kind":"plain","optional":true,"computed":true},"log_query_threads":{"type":"bool","description_kind":"plain","optional":true,"computed":true},"low_cardinality_allow_in_native_format":{"type":"bool","description_kind":"plain","optional":true,"computed":true},"max_ast_depth":{"type":"number","description_kind":"plain","optional":true,"computed":true},"max_ast_elements":{"type":"number","description_kind":"plain","optional":true,"computed":true},"max_block_size":{"type":"number","description_kind":"plain","optional":true,"computed":true},"max_bytes_before_external_group_by":{"type":"number","description_kind":"plain","optional":true,"computed":true},"max_bytes_before_external_sort":{"type":"number","description_kind":"plain","optional":true,"computed":true},"max_bytes_in_distinct":{"type":"number","description_kind":"plain","optional":true,"computed":true},"max_bytes_in_join":{"type":"number","description_kind":"plain","optional":true,"computed":true},"max_bytes_in_set":{"type":"number","description_kind":"plain","optional":true,"computed":true},"max_bytes_to_read":{"type":"number","description_kind":"plain","optional":true,"computed":true},"max_bytes_to_sort":{"type":"number","description_kind":"plain","optional":true,"computed":true},"max_bytes_to_transfer":{"type":"number","description_kind":"plain","optional":true,"computed":true},"max_columns_to_read":{"type":"number","description_kind":"plain","optional":true,"computed":true},"max_concurrent_queries_for_user":{"type":"number","description_kind":"plain","optional":true,"computed":true},"max_execution_time":{"type":"number","description_kind":"plain","optional":true,"computed":true},"max_expanded_ast_elements":{"type":"number","description_kind":"plain","optional":true,"computed":true},"max_final_threads":{"type":"number","description_kind":"plain","optional":true,"computed":true},"max_http_get_redirects":{"type":"number","description_kind":"plain","optional":true,"computed":true},"max_insert_block_size":{"type":"number","description_kind":"plain","optional":true,"computed":true},"max_insert_threads":{"type":"number","description_kind":"plain","optional":true,"computed":true},"max_memory_usage":{"type":"number","description_kind":"plain","optional":true,"computed":true},"max_memory_usage_for_user":{"type":"number","description_kind":"plain","optional":true,"computed":true},"max_network_bandwidth":{"type":"number","description_kind":"plain","optional":true,"computed":true},"max_network_bandwidth_for_user":{"type":"number","description_kind":"plain","optional":true,"computed":true},"max_parser_depth":{"type":"number","description_kind":"plain","optional":true,"computed":true},"max_query_size":{"type":"number","description_kind":"plain","optional":true,"computed":true},"max_read_buffer_size":{"type":"number","description_kind":"plain","optional":true,"computed":true},"max_replica_delay_for_distributed_queries":{"type":"number","description_kind":"plain","optional":true,"computed":true},"max_result_bytes":{"type":"number","description_kind":"plain","optional":true,"computed":true},"max_result_rows":{"type":"number","description_kind":"plain","optional":true,"computed":true},"max_rows_in_distinct":{"type":"number","description_kind":"plain","optional":true,"computed":true},"max_rows_in_join":{"type":"number","description_kind":"plain","optional":true,"computed":true},"max_rows_in_set":{"type":"number","description_kind":"plain","optional":true,"computed":true},"max_rows_to_group_by":{"type":"number","description_kind":"plain","optional":true,"computed":true},"max_rows_to_read":{"type":"number","description_kind":"plain","optional":true,"computed":true},"max_rows_to_sort":{"type":"number","description_kind":"plain","optional":true,"computed":true},"max_rows_to_transfer":{"type":"number","description_kind":"plain","optional":true,"computed":true},"max_temporary_columns":{"type":"number","description_kind":"plain","optional":true,"computed":true},"max_temporary_data_on_disk_size_for_query":{"type":"number","description_kind":"plain","optional":true,"computed":true},"max_temporary_data_on_disk_size_for_user":{"type":"number","description_kind":"plain","optional":true,"computed":true},"max_temporary_non_const_columns":{"type":"number","description_kind":"plain","optional":true,"computed":true},"max_threads":{"type":"number","description_kind":"plain","optional":true,"computed":true},"memory_overcommit_ratio_denominator":{"type":"number","description_kind":"plain","optional":true,"computed":true},"memory_overcommit_ratio_denominator_for_user":{"type":"number","description_kind":"plain","optional":true,"computed":true},"memory_profiler_sample_probability":{"type":"number","description_kind":"plain","optional":true,"computed":true},"memory_profiler_step":{"type":"number","description_kind":"plain","optional":true,"computed":true},"memory_usage_overcommit_max_wait_microseconds":{"type":"number","description_kind":"plain","optional":true,"computed":true},"merge_tree_max_bytes_to_use_cache":{"type":"number","description_kind":"plain","optional":true,"computed":true},"merge_tree_max_rows_to_use_cache":{"type":"number","description_kind":"plain","optional":true,"computed":true},"merge_tree_min_bytes_for_concurrent_read":{"type":"number","description_kind":"plain","optional":true,"computed":true},"merge_tree_min_rows_for_concurrent_read":{"type":"number","description_kind":"plain","optional":true,"computed":true},"min_bytes_to_use_direct_io":{"type":"number","description_kind":"plain","optional":true,"computed":true},"min_count_to_compile":{"type":"number","description_kind":"plain","optional":true,"computed":true},"min_count_to_compile_expression":{"type":"number","description_kind":"plain","optional":true,"computed":true},"min_execution_speed":{"type":"number","description_kind":"plain","optional":true,"computed":true},"min_execution_speed_bytes":{"type":"number","description_kind":"plain","optional":true,"computed":true},"min_insert_block_size_bytes":{"type":"number","description_kind":"plain","optional":true,"computed":true},"min_insert_block_size_rows":{"type":"number","description_kind":"plain","optional":true,"computed":true},"output_format_json_quote_64bit_integers":{"type":"bool","description_kind":"plain","optional":true,"computed":true},"output_format_json_quote_denormals":{"type":"bool","description_kind":"plain","optional":true,"computed":true},"prefer_localhost_replica":{"type":"bool","description_kind":"plain","optional":true,"computed":true},"priority":{"type":"number","description_kind":"plain","optional":true,"computed":true},"quota_mode":{"type":"string","description_kind":"plain","optional":true,"computed":true},"read_overflow_mode":{"type":"string","description_kind":"plain","optional":true,"computed":true},"readonly":{"type":"number","description_kind":"plain","optional":true,"computed":true},"receive_timeout":{"type":"number","description_kind":"plain","optional":true,"computed":true},"remote_filesystem_read_method":{"type":"string","description_kind":"plain","optional":true,"computed":true},"replication_alter_partitions_sync":{"type":"number","description_kind":"plain","optional":true,"computed":true},"result_overflow_mode":{"type":"string","description_kind":"plain","optional":true,"computed":true},"select_sequential_consistency":{"type":"bool","description_kind":"plain","optional":true,"computed":true},"send_progress_in_http_headers":{"type":"bool","description_kind":"plain","optional":true,"computed":true},"send_timeout":{"type":"number","description_kind":"plain","optional":true,"computed":true},"set_overflow_mode":{"type":"string","description_kind":"plain","optional":true,"computed":true},"skip_unavailable_shards":{"type":"bool","description_kind":"plain","optional":true,"computed":true},"sort_overflow_mode":{"type":"string","description_kind":"plain","optional":true,"computed":true},"timeout_before_checking_execution_speed":{"type":"number","description_kind":"plain","optional":true,"computed":true},"timeout_overflow_mode":{"type":"string","description_kind":"plain","optional":true,"computed":true},"transfer_overflow_mode":{"type":"string","description_kind":"plain","optional":true,"computed":true},"transform_null_in":{"type":"bool","description_kind":"plain","optional":true,"computed":true},"use_hedged_requests":{"type":"bool","description_kind":"plain","optional":true,"computed":true},"use_uncompressed_cache":{"type":"bool","description_kind":"plain","optional":true,"computed":true},"wait_for_async_insert":{"type":"bool","description_kind":"plain","optional":true,"computed":true},"wait_for_async_insert_timeout":{"type":"number","description_kind":"plain","optional":true,"computed":true}},"description_kind":"plain"},"max_items":1}},"description_kind":"plain"}},"zookeeper":{"nesting_mode":"list","block":{"block_types":{"resources":{"nesting_mode":"list","block":{"attributes":{"disk_size":{"type":"number","description_kind":"plain","optional":true,"computed":true},"disk_type_id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"resource_preset_id":{"type":"string","description_kind":"plain","optional":true,"computed":true}},"description_kind":"plain"},"max_items":1}},"description_kind":"plain"},"max_items":1}},"description_kind":"plain"}},"yandex_mdb_elasticsearch_cluster":{"version":0,"block":{"attributes":{"created_at":{"type":"string","description_kind":"plain","computed":true},"deletion_protection":{"type":"bool","description_kind":"plain","optional":true,"computed":true},"description":{"type":"string","description_kind":"plain","optional":true},"environment":{"type":"string","description_kind":"plain","required":true},"folder_id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"health":{"type":"string","description_kind":"plain","computed":true},"id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"labels":{"type":["map","string"],"description_kind":"plain","optional":true},"name":{"type":"string","description_kind":"plain","required":true},"network_id":{"type":"string","description_kind":"plain","required":true},"security_group_ids":{"type":["set","string"],"description_kind":"plain","optional":true},"service_account_id":{"type":"string","description_kind":"plain","optional":true},"status":{"type":"string","description_kind":"plain","computed":true}},"block_types":{"config":{"nesting_mode":"list","block":{"attributes":{"admin_password":{"type":"string","description_kind":"plain","required":true,"sensitive":true},"edition":{"type":"string","description_kind":"plain","optional":true,"computed":true},"plugins":{"type":["set","string"],"description_kind":"plain","optional":true},"version":{"type":"string","description_kind":"plain","optional":true,"computed":true}},"block_types":{"data_node":{"nesting_mode":"list","block":{"block_types":{"resources":{"nesting_mode":"list","block":{"attributes":{"disk_size":{"type":"number","description_kind":"plain","required":true},"disk_type_id":{"type":"string","description_kind":"plain","required":true},"resource_preset_id":{"type":"string","description_kind":"plain","required":true}},"description_kind":"plain"},"min_items":1,"max_items":1}},"description_kind":"plain"},"min_items":1,"max_items":1},"master_node":{"nesting_mode":"list","block":{"block_types":{"resources":{"nesting_mode":"list","block":{"attributes":{"disk_size":{"type":"number","description_kind":"plain","required":true},"disk_type_id":{"type":"string","description_kind":"plain","required":true},"resource_preset_id":{"type":"string","description_kind":"plain","required":true}},"description_kind":"plain"},"min_items":1,"max_items":1}},"description_kind":"plain"},"max_items":1}},"description_kind":"plain"},"min_items":1,"max_items":1},"host":{"nesting_mode":"set","block":{"attributes":{"assign_public_ip":{"type":"bool","description_kind":"plain","optional":true},"fqdn":{"type":"string","description_kind":"plain","computed":true},"name":{"type":"string","description_kind":"plain","required":true},"subnet_id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"type":{"type":"string","description_kind":"plain","required":true},"zone":{"type":"string","description_kind":"plain","required":true}},"description_kind":"plain"}},"maintenance_window":{"nesting_mode":"list","block":{"attributes":{"day":{"type":"string","description_kind":"plain","optional":true},"hour":{"type":"number","description_kind":"plain","optional":true},"type":{"type":"string","description_kind":"plain","required":true}},"description_kind":"plain"},"max_items":1},"timeouts":{"nesting_mode":"single","block":{"attributes":{"create":{"type":"string","description_kind":"plain","optional":true},"delete":{"type":"string","description_kind":"plain","optional":true},"update":{"type":"string","description_kind":"plain","optional":true}},"description_kind":"plain"}}},"description_kind":"plain"}},"yandex_mdb_greenplum_cluster":{"version":0,"block":{"attributes":{"assign_public_ip":{"type":"bool","description_kind":"plain","required":true},"created_at":{"type":"string","description_kind":"plain","computed":true},"deletion_protection":{"type":"bool","description_kind":"plain","optional":true,"computed":true},"description":{"type":"string","description_kind":"plain","optional":true},"environment":{"type":"string","description_kind":"plain","required":true},"folder_id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"greenplum_config":{"type":["map","string"],"description_kind":"plain","optional":true,"computed":true},"health":{"type":"string","description_kind":"plain","computed":true},"id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"labels":{"type":["map","string"],"description_kind":"plain","optional":true},"master_host_count":{"type":"number","description_kind":"plain","required":true},"master_host_group_ids":{"type":["set","string"],"description_kind":"plain","optional":true,"computed":true},"master_hosts":{"type":["list",["object",{"assign_public_ip":"bool","fqdn":"string"}]],"description_kind":"plain","computed":true},"name":{"type":"string","description_kind":"plain","required":true},"network_id":{"type":"string","description_kind":"plain","required":true},"security_group_ids":{"type":["set","string"],"description_kind":"plain","optional":true},"segment_host_count":{"type":"number","description_kind":"plain","required":true},"segment_host_group_ids":{"type":["set","string"],"description_kind":"plain","optional":true,"computed":true},"segment_hosts":{"type":["list",["object",{"fqdn":"string"}]],"description_kind":"plain","computed":true},"segment_in_host":{"type":"number","description_kind":"plain","required":true},"status":{"type":"string","description_kind":"plain","computed":true},"subnet_id":{"type":"string","description_kind":"plain","required":true},"user_name":{"type":"string","description_kind":"plain","required":true},"user_password":{"type":"string","description_kind":"plain","required":true,"sensitive":true},"version":{"type":"string","description_kind":"plain","required":true},"zone":{"type":"string","description_kind":"plain","required":true}},"block_types":{"access":{"nesting_mode":"list","block":{"attributes":{"data_lens":{"type":"bool","description_kind":"plain","optional":true},"data_transfer":{"type":"bool","description_kind":"plain","optional":true},"web_sql":{"type":"bool","description_kind":"plain","optional":true},"yandex_query":{"type":"bool","description_kind":"plain","optional":true}},"description_kind":"plain"},"max_items":1},"background_activities":{"nesting_mode":"list","block":{"block_types":{"analyze_and_vacuum":{"nesting_mode":"list","block":{"attributes":{"analyze_timeout":{"type":"number","description_kind":"plain","optional":true},"start_time":{"type":"string","description_kind":"plain","optional":true},"vacuum_timeout":{"type":"number","description_kind":"plain","optional":true}},"description_kind":"plain"}},"query_killer_idle":{"nesting_mode":"list","block":{"attributes":{"enable":{"type":"bool","description_kind":"plain","optional":true},"ignore_users":{"type":["list","string"],"description_kind":"plain","optional":true},"max_age":{"type":"number","description_kind":"plain","optional":true}},"description_kind":"plain"}},"query_killer_idle_in_transaction":{"nesting_mode":"list","block":{"attributes":{"enable":{"type":"bool","description_kind":"plain","optional":true},"ignore_users":{"type":["list","string"],"description_kind":"plain","optional":true},"max_age":{"type":"number","description_kind":"plain","optional":true}},"description_kind":"plain"}},"query_killer_long_running":{"nesting_mode":"list","block":{"attributes":{"enable":{"type":"bool","description_kind":"plain","optional":true},"ignore_users":{"type":["list","string"],"description_kind":"plain","optional":true},"max_age":{"type":"number","description_kind":"plain","optional":true}},"description_kind":"plain"}}},"description_kind":"plain"}},"backup_window_start":{"nesting_mode":"list","block":{"attributes":{"hours":{"type":"number","description_kind":"plain","optional":true},"minutes":{"type":"number","description_kind":"plain","optional":true}},"description_kind":"plain"},"max_items":1},"cloud_storage":{"nesting_mode":"list","block":{"attributes":{"enable":{"type":"bool","description_kind":"plain","optional":true}},"description_kind":"plain"},"max_items":1},"maintenance_window":{"nesting_mode":"list","block":{"attributes":{"day":{"type":"string","description_kind":"plain","optional":true},"hour":{"type":"number","description_kind":"plain","optional":true},"type":{"type":"string","description_kind":"plain","required":true}},"description_kind":"plain"},"max_items":1},"master_subcluster":{"nesting_mode":"list","block":{"block_types":{"resources":{"nesting_mode":"list","block":{"attributes":{"disk_size":{"type":"number","description_kind":"plain","required":true},"disk_type_id":{"type":"string","description_kind":"plain","required":true},"resource_preset_id":{"type":"string","description_kind":"plain","required":true}},"description_kind":"plain"},"min_items":1,"max_items":1}},"description_kind":"plain"},"min_items":1,"max_items":1},"pooler_config":{"nesting_mode":"list","block":{"attributes":{"pool_client_idle_timeout":{"type":"number","description_kind":"plain","optional":true},"pool_size":{"type":"number","description_kind":"plain","optional":true},"pooling_mode":{"type":"string","description_kind":"plain","optional":true}},"description_kind":"plain"},"max_items":1},"pxf_config":{"nesting_mode":"list","block":{"attributes":{"connection_timeout":{"type":"number","description_kind":"plain","optional":true},"max_threads":{"type":"number","description_kind":"plain","optional":true},"pool_allow_core_thread_timeout":{"type":"bool","description_kind":"plain","optional":true},"pool_core_size":{"type":"number","description_kind":"plain","optional":true},"pool_max_size":{"type":"number","description_kind":"plain","optional":true},"pool_queue_capacity":{"type":"number","description_kind":"plain","optional":true},"upload_timeout":{"type":"number","description_kind":"plain","optional":true},"xms":{"type":"number","description_kind":"plain","optional":true},"xmx":{"type":"number","description_kind":"plain","optional":true}},"description_kind":"plain"},"max_items":1},"segment_subcluster":{"nesting_mode":"list","block":{"block_types":{"resources":{"nesting_mode":"list","block":{"attributes":{"disk_size":{"type":"number","description_kind":"plain","required":true},"disk_type_id":{"type":"string","description_kind":"plain","required":true},"resource_preset_id":{"type":"string","description_kind":"plain","required":true}},"description_kind":"plain"},"min_items":1,"max_items":1}},"description_kind":"plain"},"min_items":1,"max_items":1},"timeouts":{"nesting_mode":"single","block":{"attributes":{"create":{"type":"string","description_kind":"plain","optional":true},"delete":{"type":"string","description_kind":"plain","optional":true},"update":{"type":"string","description_kind":"plain","optional":true}},"description_kind":"plain"}}},"description_kind":"plain"}},"yandex_mdb_kafka_cluster":{"version":0,"block":{"attributes":{"created_at":{"type":"string","description_kind":"plain","computed":true},"deletion_protection":{"type":"bool","description_kind":"plain","optional":true,"computed":true},"description":{"type":"string","description_kind":"plain","optional":true},"environment":{"type":"string","description_kind":"plain","optional":true},"folder_id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"health":{"type":"string","description_kind":"plain","computed":true},"host":{"type":["set",["object",{"assign_public_ip":"bool","health":"string","name":"string","role":"string","subnet_id":"string","zone_id":"string"}]],"description_kind":"plain","computed":true},"host_group_ids":{"type":["set","string"],"description_kind":"plain","optional":true,"computed":true},"id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"labels":{"type":["map","string"],"description_kind":"plain","optional":true,"computed":true},"name":{"type":"string","description_kind":"plain","required":true},"network_id":{"type":"string","description_kind":"plain","required":true},"security_group_ids":{"type":["set","string"],"description_kind":"plain","optional":true,"computed":true},"status":{"type":"string","description_kind":"plain","computed":true},"subnet_ids":{"type":["list","string"],"description_kind":"plain","optional":true}},"block_types":{"config":{"nesting_mode":"list","block":{"attributes":{"assign_public_ip":{"type":"bool","description_kind":"plain","optional":true},"brokers_count":{"type":"number","description_kind":"plain","optional":true},"schema_registry":{"type":"bool","description_kind":"plain","optional":true},"unmanaged_topics":{"type":"bool","description_kind":"plain","deprecated":true,"optional":true},"version":{"type":"string","description_kind":"plain","required":true},"zones":{"type":["list","string"],"description_kind":"plain","required":true}},"block_types":{"access":{"nesting_mode":"list","block":{"attributes":{"data_transfer":{"type":"bool","description_kind":"plain","optional":true}},"description_kind":"plain"},"max_items":1},"disk_size_autoscaling":{"nesting_mode":"list","block":{"attributes":{"disk_size_limit":{"type":"number","description_kind":"plain","required":true},"emergency_usage_threshold":{"type":"number","description_kind":"plain","optional":true},"planned_usage_threshold":{"type":"number","description_kind":"plain","optional":true}},"description_kind":"plain"},"max_items":1},"kafka":{"nesting_mode":"list","block":{"block_types":{"kafka_config":{"nesting_mode":"list","block":{"attributes":{"auto_create_topics_enable":{"type":"bool","description_kind":"plain","optional":true},"compression_type":{"type":"string","description_kind":"plain","optional":true},"default_replication_factor":{"type":"string","description_kind":"plain","optional":true},"log_flush_interval_messages":{"type":"string","description_kind":"plain","optional":true},"log_flush_interval_ms":{"type":"string","description_kind":"plain","optional":true},"log_flush_scheduler_interval_ms":{"type":"string","description_kind":"plain","optional":true},"log_preallocate":{"type":"bool","description_kind":"plain","optional":true},"log_retention_bytes":{"type":"string","description_kind":"plain","optional":true},"log_retention_hours":{"type":"string","description_kind":"plain","optional":true},"log_retention_minutes":{"type":"string","description_kind":"plain","optional":true},"log_retention_ms":{"type":"string","description_kind":"plain","optional":true},"log_segment_bytes":{"type":"string","description_kind":"plain","optional":true},"message_max_bytes":{"type":"string","description_kind":"plain","optional":true},"num_partitions":{"type":"string","description_kind":"plain","optional":true},"offsets_retention_minutes":{"type":"string","description_kind":"plain","optional":true},"replica_fetch_max_bytes":{"type":"string","description_kind":"plain","optional":true},"sasl_enabled_mechanisms":{"type":["set","string"],"description_kind":"plain","optional":true},"socket_receive_buffer_bytes":{"type":"string","description_kind":"plain","optional":true},"socket_send_buffer_bytes":{"type":"string","description_kind":"plain","optional":true},"ssl_cipher_suites":{"type":["set","string"],"description_kind":"plain","optional":true}},"description_kind":"plain"},"max_items":1},"resources":{"nesting_mode":"list","block":{"attributes":{"disk_size":{"type":"number","description_kind":"plain","required":true},"disk_type_id":{"type":"string","description_kind":"plain","required":true},"resource_preset_id":{"type":"string","description_kind":"plain","required":true}},"description_kind":"plain"},"min_items":1,"max_items":1}},"description_kind":"plain"},"min_items":1,"max_items":1},"zookeeper":{"nesting_mode":"list","block":{"block_types":{"resources":{"nesting_mode":"list","block":{"attributes":{"disk_size":{"type":"number","description_kind":"plain","optional":true,"computed":true},"disk_type_id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"resource_preset_id":{"type":"string","description_kind":"plain","optional":true,"computed":true}},"description_kind":"plain"},"max_items":1}},"description_kind":"plain"},"max_items":1}},"description_kind":"plain"},"min_items":1,"max_items":1},"maintenance_window":{"nesting_mode":"list","block":{"attributes":{"day":{"type":"string","description_kind":"plain","optional":true},"hour":{"type":"number","description_kind":"plain","optional":true},"type":{"type":"string","description_kind":"plain","required":true}},"description_kind":"plain"},"max_items":1},"timeouts":{"nesting_mode":"single","block":{"attributes":{"create":{"type":"string","description_kind":"plain","optional":true},"delete":{"type":"string","description_kind":"plain","optional":true},"read":{"type":"string","description_kind":"plain","optional":true},"update":{"type":"string","description_kind":"plain","optional":true}},"description_kind":"plain"}},"topic":{"nesting_mode":"list","block":{"attributes":{"name":{"type":"string","description_kind":"plain","required":true},"partitions":{"type":"number","description_kind":"plain","required":true},"replication_factor":{"type":"number","description_kind":"plain","required":true}},"block_types":{"topic_config":{"nesting_mode":"list","block":{"attributes":{"cleanup_policy":{"type":"string","description_kind":"plain","optional":true},"compression_type":{"type":"string","description_kind":"plain","optional":true},"delete_retention_ms":{"type":"string","description_kind":"plain","optional":true},"file_delete_delay_ms":{"type":"string","description_kind":"plain","optional":true},"flush_messages":{"type":"string","description_kind":"plain","optional":true},"flush_ms":{"type":"string","description_kind":"plain","optional":true},"max_message_bytes":{"type":"string","description_kind":"plain","optional":true},"min_compaction_lag_ms":{"type":"string","description_kind":"plain","optional":true},"min_insync_replicas":{"type":"string","description_kind":"plain","optional":true},"preallocate":{"type":"bool","description_kind":"plain","optional":true},"retention_bytes":{"type":"string","description_kind":"plain","optional":true},"retention_ms":{"type":"string","description_kind":"plain","optional":true},"segment_bytes":{"type":"string","description_kind":"plain","optional":true}},"description_kind":"plain"},"max_items":1}},"description_kind":"plain","deprecated":true}},"user":{"nesting_mode":"set","block":{"attributes":{"name":{"type":"string","description_kind":"plain","required":true},"password":{"type":"string","description_kind":"plain","required":true,"sensitive":true}},"block_types":{"permission":{"nesting_mode":"set","block":{"attributes":{"allow_hosts":{"type":["set","string"],"description_kind":"plain","optional":true},"role":{"type":"string","description_kind":"plain","required":true},"topic_name":{"type":"string","description_kind":"plain","required":true}},"description_kind":"plain"}}},"description_kind":"plain","deprecated":true}}},"description_kind":"plain"}},"yandex_mdb_kafka_connector":{"version":0,"block":{"attributes":{"cluster_id":{"type":"string","description_kind":"plain","required":true},"id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"name":{"type":"string","description_kind":"plain","required":true},"properties":{"type":["map","string"],"description_kind":"plain","optional":true,"computed":true},"tasks_max":{"type":"number","description_kind":"plain","optional":true}},"block_types":{"connector_config_mirrormaker":{"nesting_mode":"list","block":{"attributes":{"replication_factor":{"type":"number","description_kind":"plain","required":true},"topics":{"type":"string","description_kind":"plain","required":true}},"block_types":{"source_cluster":{"nesting_mode":"list","block":{"attributes":{"alias":{"type":"string","description_kind":"plain","optional":true}},"block_types":{"external_cluster":{"nesting_mode":"list","block":{"attributes":{"bootstrap_servers":{"type":"string","description_kind":"plain","required":true},"sasl_mechanism":{"type":"string","description_kind":"plain","optional":true},"sasl_password":{"type":"string","description_kind":"plain","optional":true,"sensitive":true},"sasl_username":{"type":"string","description_kind":"plain","optional":true},"security_protocol":{"type":"string","description_kind":"plain","optional":true}},"description_kind":"plain"}},"this_cluster":{"nesting_mode":"list","block":{"description_kind":"plain"}}},"description_kind":"plain"},"min_items":1,"max_items":1},"target_cluster":{"nesting_mode":"list","block":{"attributes":{"alias":{"type":"string","description_kind":"plain","optional":true}},"block_types":{"external_cluster":{"nesting_mode":"list","block":{"attributes":{"bootstrap_servers":{"type":"string","description_kind":"plain","required":true},"sasl_mechanism":{"type":"string","description_kind":"plain","optional":true},"sasl_password":{"type":"string","description_kind":"plain","optional":true,"sensitive":true},"sasl_username":{"type":"string","description_kind":"plain","optional":true},"security_protocol":{"type":"string","description_kind":"plain","optional":true}},"description_kind":"plain"}},"this_cluster":{"nesting_mode":"list","block":{"description_kind":"plain"}}},"description_kind":"plain"},"min_items":1,"max_items":1}},"description_kind":"plain"}},"connector_config_s3_sink":{"nesting_mode":"list","block":{"attributes":{"file_compression_type":{"type":"string","description_kind":"plain","required":true},"file_max_records":{"type":"number","description_kind":"plain","optional":true},"topics":{"type":"string","description_kind":"plain","required":true}},"block_types":{"s3_connection":{"nesting_mode":"list","block":{"attributes":{"bucket_name":{"type":"string","description_kind":"plain","required":true}},"block_types":{"external_s3":{"nesting_mode":"list","block":{"attributes":{"access_key_id":{"type":"string","description_kind":"plain","optional":true},"endpoint":{"type":"string","description_kind":"plain","required":true},"region":{"type":"string","description_kind":"plain","optional":true},"secret_access_key":{"type":"string","description_kind":"plain","optional":true,"sensitive":true}},"description_kind":"plain"},"min_items":1}},"description_kind":"plain"},"min_items":1,"max_items":1}},"description_kind":"plain"}}},"description_kind":"plain"}},"yandex_mdb_kafka_topic":{"version":0,"block":{"attributes":{"cluster_id":{"type":"string","description_kind":"plain","required":true},"id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"name":{"type":"string","description_kind":"plain","required":true},"partitions":{"type":"number","description_kind":"plain","required":true},"replication_factor":{"type":"number","description_kind":"plain","required":true}},"block_types":{"timeouts":{"nesting_mode":"single","block":{"attributes":{"create":{"type":"string","description_kind":"plain","optional":true},"delete":{"type":"string","description_kind":"plain","optional":true},"read":{"type":"string","description_kind":"plain","optional":true},"update":{"type":"string","description_kind":"plain","optional":true}},"description_kind":"plain"}},"topic_config":{"nesting_mode":"list","block":{"attributes":{"cleanup_policy":{"type":"string","description_kind":"plain","optional":true},"compression_type":{"type":"string","description_kind":"plain","optional":true},"delete_retention_ms":{"type":"string","description_kind":"plain","optional":true},"file_delete_delay_ms":{"type":"string","description_kind":"plain","optional":true},"flush_messages":{"type":"string","description_kind":"plain","optional":true},"flush_ms":{"type":"string","description_kind":"plain","optional":true},"max_message_bytes":{"type":"string","description_kind":"plain","optional":true},"min_compaction_lag_ms":{"type":"string","description_kind":"plain","optional":true},"min_insync_replicas":{"type":"string","description_kind":"plain","optional":true},"preallocate":{"type":"bool","description_kind":"plain","optional":true},"retention_bytes":{"type":"string","description_kind":"plain","optional":true},"retention_ms":{"type":"string","description_kind":"plain","optional":true},"segment_bytes":{"type":"string","description_kind":"plain","optional":true}},"description_kind":"plain"},"max_items":1}},"description_kind":"plain"}},"yandex_mdb_kafka_user":{"version":0,"block":{"attributes":{"cluster_id":{"type":"string","description_kind":"plain","required":true},"id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"name":{"type":"string","description_kind":"plain","required":true},"password":{"type":"string","description_kind":"plain","required":true,"sensitive":true}},"block_types":{"permission":{"nesting_mode":"set","block":{"attributes":{"allow_hosts":{"type":["set","string"],"description_kind":"plain","optional":true},"role":{"type":"string","description_kind":"plain","required":true},"topic_name":{"type":"string","description_kind":"plain","required":true}},"description_kind":"plain"}},"timeouts":{"nesting_mode":"single","block":{"attributes":{"create":{"type":"string","description_kind":"plain","optional":true},"delete":{"type":"string","description_kind":"plain","optional":true},"read":{"type":"string","description_kind":"plain","optional":true},"update":{"type":"string","description_kind":"plain","optional":true}},"description_kind":"plain"}}},"description_kind":"plain"}},"yandex_mdb_mongodb_cluster":{"version":0,"block":{"attributes":{"cluster_id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"created_at":{"type":"string","description_kind":"plain","computed":true},"deletion_protection":{"type":"bool","description_kind":"plain","optional":true,"computed":true},"description":{"type":"string","description_kind":"plain","optional":true},"environment":{"type":"string","description_kind":"plain","required":true},"folder_id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"health":{"type":"string","description_kind":"plain","computed":true},"id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"labels":{"type":["map","string"],"description_kind":"plain","optional":true,"computed":true},"name":{"type":"string","description_kind":"plain","required":true},"network_id":{"type":"string","description_kind":"plain","required":true},"security_group_ids":{"type":["set","string"],"description_kind":"plain","optional":true},"sharded":{"type":"bool","description_kind":"plain","computed":true},"status":{"type":"string","description_kind":"plain","computed":true}},"block_types":{"cluster_config":{"nesting_mode":"list","block":{"attributes":{"backup_retain_period_days":{"type":"number","description_kind":"plain","optional":true,"computed":true},"feature_compatibility_version":{"type":"string","description_kind":"plain","optional":true,"computed":true},"version":{"type":"string","description_kind":"plain","required":true}},"block_types":{"access":{"nesting_mode":"list","block":{"attributes":{"data_lens":{"type":"bool","description_kind":"plain","optional":true},"data_transfer":{"type":"bool","description_kind":"plain","optional":true}},"description_kind":"plain"},"max_items":1},"backup_window_start":{"nesting_mode":"list","block":{"attributes":{"hours":{"type":"number","description_kind":"plain","optional":true},"minutes":{"type":"number","description_kind":"plain","optional":true}},"description_kind":"plain"},"max_items":1},"mongocfg":{"nesting_mode":"list","block":{"block_types":{"net":{"nesting_mode":"list","block":{"attributes":{"max_incoming_connections":{"type":"number","description_kind":"plain","optional":true}},"description_kind":"plain"},"max_items":1},"operation_profiling":{"nesting_mode":"list","block":{"attributes":{"mode":{"type":"string","description_kind":"plain","optional":true},"slow_op_threshold":{"type":"number","description_kind":"plain","optional":true}},"description_kind":"plain"},"max_items":1},"storage":{"nesting_mode":"list","block":{"block_types":{"wired_tiger":{"nesting_mode":"list","block":{"attributes":{"cache_size_gb":{"type":"number","description_kind":"plain","optional":true}},"description_kind":"plain"},"max_items":1}},"description_kind":"plain"},"max_items":1}},"description_kind":"plain"},"max_items":1},"mongod":{"nesting_mode":"list","block":{"block_types":{"audit_log":{"nesting_mode":"list","block":{"attributes":{"filter":{"type":"string","description_kind":"plain","optional":true},"runtime_configuration":{"type":"bool","description_kind":"plain","optional":true}},"description_kind":"plain"},"max_items":1},"net":{"nesting_mode":"list","block":{"attributes":{"compressors":{"type":["list","string"],"description_kind":"plain","optional":true},"max_incoming_connections":{"type":"number","description_kind":"plain","optional":true}},"description_kind":"plain"},"max_items":1},"operation_profiling":{"nesting_mode":"list","block":{"attributes":{"mode":{"type":"string","description_kind":"plain","optional":true},"slow_op_sample_rate":{"type":"number","description_kind":"plain","optional":true},"slow_op_threshold":{"type":"number","description_kind":"plain","optional":true}},"description_kind":"plain"},"max_items":1},"security":{"nesting_mode":"list","block":{"attributes":{"enable_encryption":{"type":"bool","description_kind":"plain","optional":true}},"block_types":{"kmip":{"nesting_mode":"list","block":{"attributes":{"client_certificate":{"type":"string","description_kind":"plain","optional":true},"key_identifier":{"type":"string","description_kind":"plain","optional":true},"port":{"type":"number","description_kind":"plain","optional":true},"server_ca":{"type":"string","description_kind":"plain","optional":true},"server_name":{"type":"string","description_kind":"plain","optional":true}},"description_kind":"plain"},"max_items":1}},"description_kind":"plain"},"max_items":1},"set_parameter":{"nesting_mode":"list","block":{"attributes":{"audit_authorization_success":{"type":"bool","description_kind":"plain","optional":true},"enable_flow_control":{"type":"bool","description_kind":"plain","optional":true},"min_snapshot_history_window_in_seconds":{"type":"number","description_kind":"plain","optional":true}},"description_kind":"plain"},"max_items":1},"storage":{"nesting_mode":"list","block":{"block_types":{"journal":{"nesting_mode":"list","block":{"attributes":{"commit_interval":{"type":"number","description_kind":"plain","optional":true}},"description_kind":"plain"},"max_items":1},"wired_tiger":{"nesting_mode":"list","block":{"attributes":{"block_compressor":{"type":"string","description_kind":"plain","optional":true},"cache_size_gb":{"type":"number","description_kind":"plain","optional":true},"prefix_compression":{"type":"bool","description_kind":"plain","optional":true}},"description_kind":"plain"},"max_items":1}},"description_kind":"plain"},"max_items":1}},"description_kind":"plain"},"max_items":1},"mongos":{"nesting_mode":"list","block":{"block_types":{"net":{"nesting_mode":"list","block":{"attributes":{"compressors":{"type":["list","string"],"description_kind":"plain","optional":true},"max_incoming_connections":{"type":"number","description_kind":"plain","optional":true}},"description_kind":"plain"},"max_items":1}},"description_kind":"plain"},"max_items":1},"performance_diagnostics":{"nesting_mode":"list","block":{"attributes":{"enabled":{"type":"bool","description_kind":"plain","optional":true}},"description_kind":"plain"},"max_items":1}},"description_kind":"plain"},"min_items":1,"max_items":1},"database":{"nesting_mode":"set","block":{"attributes":{"name":{"type":"string","description_kind":"plain","required":true}},"description_kind":"plain","deprecated":true}},"disk_size_autoscaling_mongocfg":{"nesting_mode":"list","block":{"attributes":{"disk_size_limit":{"type":"number","description_kind":"plain","required":true},"emergency_usage_threshold":{"type":"number","description_kind":"plain","optional":true},"planned_usage_threshold":{"type":"number","description_kind":"plain","optional":true}},"description_kind":"plain"},"max_items":1},"disk_size_autoscaling_mongod":{"nesting_mode":"list","block":{"attributes":{"disk_size_limit":{"type":"number","description_kind":"plain","required":true},"emergency_usage_threshold":{"type":"number","description_kind":"plain","optional":true},"planned_usage_threshold":{"type":"number","description_kind":"plain","optional":true}},"description_kind":"plain"},"max_items":1},"disk_size_autoscaling_mongoinfra":{"nesting_mode":"list","block":{"attributes":{"disk_size_limit":{"type":"number","description_kind":"plain","required":true},"emergency_usage_threshold":{"type":"number","description_kind":"plain","optional":true},"planned_usage_threshold":{"type":"number","description_kind":"plain","optional":true}},"description_kind":"plain"},"max_items":1},"disk_size_autoscaling_mongos":{"nesting_mode":"list","block":{"attributes":{"disk_size_limit":{"type":"number","description_kind":"plain","required":true},"emergency_usage_threshold":{"type":"number","description_kind":"plain","optional":true},"planned_usage_threshold":{"type":"number","description_kind":"plain","optional":true}},"description_kind":"plain"},"max_items":1},"host":{"nesting_mode":"list","block":{"attributes":{"assign_public_ip":{"type":"bool","description_kind":"plain","optional":true},"health":{"type":"string","description_kind":"plain","computed":true},"name":{"type":"string","description_kind":"plain","computed":true},"role":{"type":"string","description_kind":"plain","optional":true,"computed":true},"shard_name":{"type":"string","description_kind":"plain","optional":true,"computed":true},"subnet_id":{"type":"string","description_kind":"plain","required":true},"type":{"type":"string","description_kind":"plain","optional":true},"zone_id":{"type":"string","description_kind":"plain","required":true}},"block_types":{"host_parameters":{"nesting_mode":"list","block":{"attributes":{"hidden":{"type":"bool","description_kind":"plain","optional":true},"priority":{"type":"number","description_kind":"plain","optional":true},"secondary_delay_secs":{"type":"number","description_kind":"plain","optional":true},"tags":{"type":["map","string"],"description_kind":"plain","optional":true}},"description_kind":"plain"},"max_items":1}},"description_kind":"plain"},"min_items":1},"maintenance_window":{"nesting_mode":"list","block":{"attributes":{"day":{"type":"string","description_kind":"plain","optional":true},"hour":{"type":"number","description_kind":"plain","optional":true},"type":{"type":"string","description_kind":"plain","required":true}},"description_kind":"plain"},"max_items":1},"resources":{"nesting_mode":"list","block":{"attributes":{"disk_size":{"type":"number","description_kind":"plain","required":true},"disk_type_id":{"type":"string","description_kind":"plain","required":true},"resource_preset_id":{"type":"string","description_kind":"plain","required":true}},"description_kind":"plain","deprecated":true},"max_items":1},"resources_mongocfg":{"nesting_mode":"list","block":{"attributes":{"disk_size":{"type":"number","description_kind":"plain","required":true},"disk_type_id":{"type":"string","description_kind":"plain","required":true},"resource_preset_id":{"type":"string","description_kind":"plain","required":true}},"description_kind":"plain"},"max_items":1},"resources_mongod":{"nesting_mode":"list","block":{"attributes":{"disk_size":{"type":"number","description_kind":"plain","required":true},"disk_type_id":{"type":"string","description_kind":"plain","required":true},"resource_preset_id":{"type":"string","description_kind":"plain","required":true}},"description_kind":"plain"},"max_items":1},"resources_mongoinfra":{"nesting_mode":"list","block":{"attributes":{"disk_size":{"type":"number","description_kind":"plain","required":true},"disk_type_id":{"type":"string","description_kind":"plain","required":true},"resource_preset_id":{"type":"string","description_kind":"plain","required":true}},"description_kind":"plain"},"max_items":1},"resources_mongos":{"nesting_mode":"list","block":{"attributes":{"disk_size":{"type":"number","description_kind":"plain","required":true},"disk_type_id":{"type":"string","description_kind":"plain","required":true},"resource_preset_id":{"type":"string","description_kind":"plain","required":true}},"description_kind":"plain"},"max_items":1},"restore":{"nesting_mode":"list","block":{"attributes":{"backup_id":{"type":"string","description_kind":"plain","required":true},"time":{"type":"string","description_kind":"plain","optional":true}},"description_kind":"plain"},"max_items":1},"timeouts":{"nesting_mode":"single","block":{"attributes":{"create":{"type":"string","description_kind":"plain","optional":true},"delete":{"type":"string","description_kind":"plain","optional":true},"update":{"type":"string","description_kind":"plain","optional":true}},"description_kind":"plain"}},"user":{"nesting_mode":"set","block":{"attributes":{"name":{"type":"string","description_kind":"plain","required":true},"password":{"type":"string","description_kind":"plain","required":true,"sensitive":true}},"block_types":{"permission":{"nesting_mode":"set","block":{"attributes":{"database_name":{"type":"string","description_kind":"plain","required":true},"roles":{"type":["list","string"],"description_kind":"plain","optional":true}},"description_kind":"plain"}}},"description_kind":"plain","deprecated":true}}},"description_kind":"plain"}},"yandex_mdb_mongodb_database":{"version":0,"block":{"attributes":{"cluster_id":{"type":"string","description_kind":"plain","required":true},"id":{"type":"string","description_kind":"plain","computed":true},"name":{"type":"string","description_kind":"plain","required":true}},"description_kind":"plain"}},"yandex_mdb_mongodb_user":{"version":0,"block":{"attributes":{"cluster_id":{"type":"string","description_kind":"plain","required":true},"id":{"type":"string","description_kind":"plain","computed":true},"name":{"type":"string","description_kind":"plain","required":true},"password":{"type":"string","description_kind":"plain","required":true,"sensitive":true}},"block_types":{"permission":{"nesting_mode":"set","block":{"attributes":{"database_name":{"type":"string","description_kind":"plain","required":true},"roles":{"type":["set","string"],"description_kind":"plain","optional":true}},"description_kind":"plain"}}},"description_kind":"plain"}},"yandex_mdb_mysql_cluster":{"version":0,"block":{"attributes":{"allow_regeneration_host":{"type":"bool","description_kind":"plain","deprecated":true,"optional":true},"backup_retain_period_days":{"type":"number","description_kind":"plain","optional":true,"computed":true},"created_at":{"type":"string","description_kind":"plain","computed":true},"deletion_protection":{"type":"bool","description_kind":"plain","optional":true,"computed":true},"description":{"type":"string","description_kind":"plain","optional":true},"environment":{"type":"string","description_kind":"plain","required":true},"folder_id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"health":{"type":"string","description_kind":"plain","computed":true},"host_group_ids":{"type":["set","string"],"description_kind":"plain","optional":true,"computed":true},"id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"labels":{"type":["map","string"],"description_kind":"plain","optional":true},"mysql_config":{"type":["map","string"],"description_kind":"plain","optional":true,"computed":true},"name":{"type":"string","description_kind":"plain","required":true},"network_id":{"type":"string","description_kind":"plain","required":true},"security_group_ids":{"type":["set","string"],"description_kind":"plain","optional":true},"status":{"type":"string","description_kind":"plain","computed":true},"version":{"type":"string","description_kind":"plain","required":true}},"block_types":{"access":{"nesting_mode":"list","block":{"attributes":{"data_lens":{"type":"bool","description_kind":"plain","optional":true},"data_transfer":{"type":"bool","description_kind":"plain","optional":true},"web_sql":{"type":"bool","description_kind":"plain","optional":true}},"description_kind":"plain"},"max_items":1},"backup_window_start":{"nesting_mode":"list","block":{"attributes":{"hours":{"type":"number","description_kind":"plain","optional":true},"minutes":{"type":"number","description_kind":"plain","optional":true}},"description_kind":"plain"},"max_items":1},"database":{"nesting_mode":"set","block":{"attributes":{"name":{"type":"string","description_kind":"plain","required":true}},"description_kind":"plain","deprecated":true}},"host":{"nesting_mode":"list","block":{"attributes":{"assign_public_ip":{"type":"bool","description_kind":"plain","optional":true},"backup_priority":{"type":"number","description_kind":"plain","optional":true},"fqdn":{"type":"string","description_kind":"plain","computed":true},"name":{"type":"string","description_kind":"plain","optional":true},"priority":{"type":"number","description_kind":"plain","optional":true},"replication_source":{"type":"string","description_kind":"plain","computed":true},"replication_source_name":{"type":"string","description_kind":"plain","optional":true},"subnet_id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"zone":{"type":"string","description_kind":"plain","required":true}},"description_kind":"plain"},"min_items":1},"maintenance_window":{"nesting_mode":"list","block":{"attributes":{"day":{"type":"string","description_kind":"plain","optional":true},"hour":{"type":"number","description_kind":"plain","optional":true},"type":{"type":"string","description_kind":"plain","required":true}},"description_kind":"plain"},"max_items":1},"performance_diagnostics":{"nesting_mode":"list","block":{"attributes":{"enabled":{"type":"bool","description_kind":"plain","optional":true,"computed":true},"sessions_sampling_interval":{"type":"number","description_kind":"plain","required":true},"statements_sampling_interval":{"type":"number","description_kind":"plain","required":true}},"description_kind":"plain"},"max_items":1},"resources":{"nesting_mode":"list","block":{"attributes":{"disk_size":{"type":"number","description_kind":"plain","required":true},"disk_type_id":{"type":"string","description_kind":"plain","required":true},"resource_preset_id":{"type":"string","description_kind":"plain","required":true}},"description_kind":"plain"},"min_items":1,"max_items":1},"restore":{"nesting_mode":"list","block":{"attributes":{"backup_id":{"type":"string","description_kind":"plain","required":true},"time":{"type":"string","description_kind":"plain","optional":true}},"description_kind":"plain"},"max_items":1},"timeouts":{"nesting_mode":"single","block":{"attributes":{"create":{"type":"string","description_kind":"plain","optional":true},"delete":{"type":"string","description_kind":"plain","optional":true},"update":{"type":"string","description_kind":"plain","optional":true}},"description_kind":"plain"}},"user":{"nesting_mode":"list","block":{"attributes":{"authentication_plugin":{"type":"string","description_kind":"plain","optional":true,"computed":true},"global_permissions":{"type":["set","string"],"description_kind":"plain","optional":true,"computed":true},"name":{"type":"string","description_kind":"plain","required":true},"password":{"type":"string","description_kind":"plain","required":true,"sensitive":true}},"block_types":{"connection_limits":{"nesting_mode":"list","block":{"attributes":{"max_connections_per_hour":{"type":"number","description_kind":"plain","optional":true},"max_questions_per_hour":{"type":"number","description_kind":"plain","optional":true},"max_updates_per_hour":{"type":"number","description_kind":"plain","optional":true},"max_user_connections":{"type":"number","description_kind":"plain","optional":true}},"description_kind":"plain"},"max_items":1},"permission":{"nesting_mode":"set","block":{"attributes":{"database_name":{"type":"string","description_kind":"plain","required":true},"roles":{"type":["list","string"],"description_kind":"plain","optional":true}},"description_kind":"plain"}}},"description_kind":"plain","deprecated":true}}},"description_kind":"plain"}},"yandex_mdb_mysql_database":{"version":0,"block":{"attributes":{"cluster_id":{"type":"string","description_kind":"plain","required":true},"id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"name":{"type":"string","description_kind":"plain","required":true}},"block_types":{"timeouts":{"nesting_mode":"single","block":{"attributes":{"create":{"type":"string","description_kind":"plain","optional":true},"delete":{"type":"string","description_kind":"plain","optional":true},"read":{"type":"string","description_kind":"plain","optional":true},"update":{"type":"string","description_kind":"plain","optional":true}},"description_kind":"plain"}}},"description_kind":"plain"}},"yandex_mdb_mysql_user":{"version":0,"block":{"attributes":{"authentication_plugin":{"type":"string","description_kind":"plain","optional":true,"computed":true},"cluster_id":{"type":"string","description_kind":"plain","required":true},"global_permissions":{"type":["set","string"],"description_kind":"plain","optional":true,"computed":true},"id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"name":{"type":"string","description_kind":"plain","required":true},"password":{"type":"string","description_kind":"plain","required":true,"sensitive":true}},"block_types":{"connection_limits":{"nesting_mode":"list","block":{"attributes":{"max_connections_per_hour":{"type":"number","description_kind":"plain","optional":true},"max_questions_per_hour":{"type":"number","description_kind":"plain","optional":true},"max_updates_per_hour":{"type":"number","description_kind":"plain","optional":true},"max_user_connections":{"type":"number","description_kind":"plain","optional":true}},"description_kind":"plain"},"max_items":1},"permission":{"nesting_mode":"set","block":{"attributes":{"database_name":{"type":"string","description_kind":"plain","required":true},"roles":{"type":["list","string"],"description_kind":"plain","optional":true}},"description_kind":"plain"}},"timeouts":{"nesting_mode":"single","block":{"attributes":{"create":{"type":"string","description_kind":"plain","optional":true},"delete":{"type":"string","description_kind":"plain","optional":true},"read":{"type":"string","description_kind":"plain","optional":true},"update":{"type":"string","description_kind":"plain","optional":true}},"description_kind":"plain"}}},"description_kind":"plain"}},"yandex_mdb_opensearch_cluster":{"version":2,"block":{"attributes":{"auth_settings":{"nested_type":{"attributes":{"saml":{"nested_type":{"attributes":{"dashboards_url":{"type":"string","description_kind":"plain","required":true},"enabled":{"type":"bool","description_kind":"plain","required":true},"idp_entity_id":{"type":"string","description_kind":"plain","required":true},"idp_metadata_file_content":{"type":"string","description_kind":"plain","required":true},"roles_key":{"type":"string","description_kind":"plain","optional":true},"sp_entity_id":{"type":"string","description_kind":"plain","required":true},"subject_key":{"type":"string","description_kind":"plain","optional":true}},"nesting_mode":"single"},"description_kind":"plain","optional":true}},"nesting_mode":"single"},"description":"Authentification settings for dashboards","description_kind":"plain","optional":true},"cluster_id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"created_at":{"type":"string","description":"Creation timestamp","description_kind":"plain","computed":true},"deletion_protection":{"type":"bool","description_kind":"plain","optional":true,"computed":true},"description":{"type":"string","description":"Description of the OpenSearch cluster","description_kind":"plain","optional":true},"environment":{"type":"string","description":"Deployment environment of the OpenSearch cluster.","description_kind":"plain","optional":true,"computed":true},"folder_id":{"type":"string","description":"ID of the folder that the OpenSearch cluster belongs to.","description_kind":"plain","optional":true,"computed":true},"health":{"type":"string","description":"Aggregated cluster health.","description_kind":"plain","computed":true},"hosts":{"nested_type":{"attributes":{"assign_public_ip":{"type":"bool","description_kind":"plain","optional":true,"computed":true},"fqdn":{"type":"string","description_kind":"plain","computed":true},"node_group":{"type":"string","description_kind":"plain","computed":true},"roles":{"type":["set","string"],"description_kind":"plain","computed":true},"subnet_id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"type":{"type":"string","description_kind":"plain","computed":true},"zone":{"type":"string","description_kind":"plain","computed":true}},"nesting_mode":"list"},"description":"Current nodes in the cluster","description_kind":"plain","computed":true},"id":{"type":"string","description_kind":"plain","computed":true},"labels":{"type":["map","string"],"description":"Custom labels for the OpenSearch cluster as `key:value` pairs.","description_kind":"plain","optional":true},"name":{"type":"string","description":"Name of the OpenSearch cluster. The name must be unique within the folder.","description_kind":"plain","required":true},"network_id":{"type":"string","description":"ID of the network that the cluster belongs to.","description_kind":"plain","required":true},"security_group_ids":{"type":["set","string"],"description":"User security groups","description_kind":"plain","optional":true},"service_account_id":{"type":"string","description_kind":"plain","optional":true},"status":{"type":"string","description":"Current state of the cluster.","description_kind":"plain","computed":true}},"block_types":{"config":{"nesting_mode":"single","block":{"attributes":{"admin_password":{"type":"string","description_kind":"plain","required":true,"sensitive":true},"version":{"type":"string","description_kind":"plain","optional":true,"computed":true}},"block_types":{"access":{"nesting_mode":"single","block":{"attributes":{"data_transfer":{"type":"bool","description_kind":"plain","optional":true},"serverless":{"type":"bool","description_kind":"plain","optional":true}},"description_kind":"plain"}},"dashboards":{"nesting_mode":"single","block":{"block_types":{"node_groups":{"nesting_mode":"list","block":{"attributes":{"assign_public_ip":{"type":"bool","description_kind":"plain","optional":true,"computed":true},"hosts_count":{"type":"number","description_kind":"plain","required":true},"name":{"type":"string","description_kind":"plain","required":true},"subnet_ids":{"type":["list","string"],"description_kind":"plain","optional":true,"computed":true},"zone_ids":{"type":["set","string"],"description_kind":"plain","required":true}},"block_types":{"resources":{"nesting_mode":"single","block":{"attributes":{"disk_size":{"type":"number","description_kind":"plain","required":true},"disk_type_id":{"type":"string","description_kind":"plain","required":true},"resource_preset_id":{"type":"string","description_kind":"plain","required":true}},"description_kind":"plain"}}},"description_kind":"plain"}}},"description_kind":"plain"}},"opensearch":{"nesting_mode":"single","block":{"attributes":{"plugins":{"type":["set","string"],"description_kind":"plain","optional":true,"computed":true}},"block_types":{"node_groups":{"nesting_mode":"list","block":{"attributes":{"assign_public_ip":{"type":"bool","description_kind":"plain","optional":true,"computed":true},"hosts_count":{"type":"number","description_kind":"plain","required":true},"name":{"type":"string","description_kind":"plain","required":true},"roles":{"type":["set","string"],"description_kind":"plain","required":true},"subnet_ids":{"type":["list","string"],"description_kind":"plain","optional":true,"computed":true},"zone_ids":{"type":["set","string"],"description_kind":"plain","required":true}},"block_types":{"resources":{"nesting_mode":"single","block":{"attributes":{"disk_size":{"type":"number","description_kind":"plain","required":true},"disk_type_id":{"type":"string","description_kind":"plain","required":true},"resource_preset_id":{"type":"string","description_kind":"plain","required":true}},"description_kind":"plain"}}},"description_kind":"plain"}}},"description_kind":"plain"}}},"description":"Configuration of the OpenSearch cluster.","description_kind":"plain"}},"maintenance_window":{"nesting_mode":"single","block":{"attributes":{"day":{"type":"string","description_kind":"plain","optional":true},"hour":{"type":"number","description_kind":"plain","optional":true},"type":{"type":"string","description_kind":"plain","required":true}},"description_kind":"plain"}},"timeouts":{"nesting_mode":"single","block":{"attributes":{"create":{"type":"string","description":"A string that can be [parsed as a duration](https://pkg.go.dev/time#ParseDuration) consisting of numbers and unit suffixes, such as \"30s\" or \"2h45m\". Valid time units are \"s\" (seconds), \"m\" (minutes), \"h\" (hours).","description_kind":"plain","optional":true},"delete":{"type":"string","description":"A string that can be [parsed as a duration](https://pkg.go.dev/time#ParseDuration) consisting of numbers and unit suffixes, such as \"30s\" or \"2h45m\". Valid time units are \"s\" (seconds), \"m\" (minutes), \"h\" (hours). Setting a timeout for a Delete operation is only applicable if changes are saved into state before the destroy operation occurs.","description_kind":"plain","optional":true},"update":{"type":"string","description":"A string that can be [parsed as a duration](https://pkg.go.dev/time#ParseDuration) consisting of numbers and unit suffixes, such as \"30s\" or \"2h45m\". Valid time units are \"s\" (seconds), \"m\" (minutes), \"h\" (hours).","description_kind":"plain","optional":true}},"description_kind":"plain"}}},"description_kind":"plain"}},"yandex_mdb_postgresql_cluster":{"version":0,"block":{"attributes":{"created_at":{"type":"string","description_kind":"plain","computed":true},"deletion_protection":{"type":"bool","description_kind":"plain","optional":true,"computed":true},"description":{"type":"string","description_kind":"plain","optional":true},"environment":{"type":"string","description_kind":"plain","required":true},"folder_id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"health":{"type":"string","description_kind":"plain","computed":true},"host_group_ids":{"type":["set","string"],"description_kind":"plain","optional":true,"computed":true},"host_master_name":{"type":"string","description_kind":"plain","optional":true,"computed":true},"id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"labels":{"type":["map","string"],"description_kind":"plain","optional":true,"computed":true},"name":{"type":"string","description_kind":"plain","required":true},"network_id":{"type":"string","description_kind":"plain","required":true},"security_group_ids":{"type":["set","string"],"description_kind":"plain","optional":true,"computed":true},"status":{"type":"string","description_kind":"plain","computed":true}},"block_types":{"config":{"nesting_mode":"list","block":{"attributes":{"autofailover":{"type":"bool","description_kind":"plain","optional":true,"computed":true},"backup_retain_period_days":{"type":"number","description_kind":"plain","optional":true,"computed":true},"postgresql_config":{"type":["map","string"],"description_kind":"plain","optional":true,"computed":true},"version":{"type":"string","description_kind":"plain","required":true}},"block_types":{"access":{"nesting_mode":"list","block":{"attributes":{"data_lens":{"type":"bool","description_kind":"plain","optional":true},"data_transfer":{"type":"bool","description_kind":"plain","optional":true},"serverless":{"type":"bool","description_kind":"plain","optional":true},"web_sql":{"type":"bool","description_kind":"plain","optional":true,"computed":true}},"description_kind":"plain"},"max_items":1},"backup_window_start":{"nesting_mode":"list","block":{"attributes":{"hours":{"type":"number","description_kind":"plain","optional":true},"minutes":{"type":"number","description_kind":"plain","optional":true}},"description_kind":"plain"},"max_items":1},"disk_size_autoscaling":{"nesting_mode":"list","block":{"attributes":{"disk_size_limit":{"type":"number","description_kind":"plain","required":true},"emergency_usage_threshold":{"type":"number","description_kind":"plain","optional":true},"planned_usage_threshold":{"type":"number","description_kind":"plain","optional":true}},"description_kind":"plain"},"max_items":1},"performance_diagnostics":{"nesting_mode":"list","block":{"attributes":{"enabled":{"type":"bool","description_kind":"plain","optional":true,"computed":true},"sessions_sampling_interval":{"type":"number","description_kind":"plain","required":true},"statements_sampling_interval":{"type":"number","description_kind":"plain","required":true}},"description_kind":"plain"},"max_items":1},"pooler_config":{"nesting_mode":"list","block":{"attributes":{"pool_discard":{"type":"bool","description_kind":"plain","optional":true},"pooling_mode":{"type":"string","description_kind":"plain","optional":true}},"description_kind":"plain"},"max_items":1},"resources":{"nesting_mode":"list","block":{"attributes":{"disk_size":{"type":"number","description_kind":"plain","required":true},"disk_type_id":{"type":"string","description_kind":"plain","optional":true},"resource_preset_id":{"type":"string","description_kind":"plain","required":true}},"description_kind":"plain"},"min_items":1,"max_items":1}},"description_kind":"plain"},"min_items":1,"max_items":1},"database":{"nesting_mode":"list","block":{"attributes":{"lc_collate":{"type":"string","description_kind":"plain","optional":true},"lc_type":{"type":"string","description_kind":"plain","optional":true},"name":{"type":"string","description_kind":"plain","required":true},"owner":{"type":"string","description_kind":"plain","required":true},"template_db":{"type":"string","description_kind":"plain","optional":true}},"block_types":{"extension":{"nesting_mode":"set","block":{"attributes":{"name":{"type":"string","description_kind":"plain","required":true},"version":{"type":"string","description_kind":"plain","optional":true}},"description_kind":"plain"}}},"description_kind":"plain","deprecated":true}},"host":{"nesting_mode":"list","block":{"attributes":{"assign_public_ip":{"type":"bool","description_kind":"plain","optional":true},"fqdn":{"type":"string","description_kind":"plain","computed":true},"name":{"type":"string","description_kind":"plain","optional":true},"priority":{"type":"number","description_kind":"plain","optional":true},"replication_source":{"type":"string","description_kind":"plain","computed":true},"replication_source_name":{"type":"string","description_kind":"plain","optional":true},"role":{"type":"string","description_kind":"plain","computed":true},"subnet_id":{"type":"string","description_kind":"plain","optional":true},"zone":{"type":"string","description_kind":"plain","required":true}},"description_kind":"plain"},"min_items":1},"maintenance_window":{"nesting_mode":"list","block":{"attributes":{"day":{"type":"string","description_kind":"plain","optional":true},"hour":{"type":"number","description_kind":"plain","optional":true},"type":{"type":"string","description_kind":"plain","required":true}},"description_kind":"plain"},"max_items":1},"restore":{"nesting_mode":"list","block":{"attributes":{"backup_id":{"type":"string","description_kind":"plain","required":true},"time":{"type":"string","description_kind":"plain","optional":true},"time_inclusive":{"type":"bool","description_kind":"plain","optional":true}},"description_kind":"plain"},"max_items":1},"timeouts":{"nesting_mode":"single","block":{"attributes":{"create":{"type":"string","description_kind":"plain","optional":true},"delete":{"type":"string","description_kind":"plain","optional":true},"update":{"type":"string","description_kind":"plain","optional":true}},"description_kind":"plain"}},"user":{"nesting_mode":"list","block":{"attributes":{"conn_limit":{"type":"number","description_kind":"plain","optional":true,"computed":true},"grants":{"type":["list","string"],"description_kind":"plain","optional":true,"computed":true},"login":{"type":"bool","description_kind":"plain","optional":true},"name":{"type":"string","description_kind":"plain","required":true},"password":{"type":"string","description_kind":"plain","required":true,"sensitive":true},"settings":{"type":["map","string"],"description_kind":"plain","optional":true,"computed":true}},"block_types":{"permission":{"nesting_mode":"set","block":{"attributes":{"database_name":{"type":"string","description_kind":"plain","required":true}},"description_kind":"plain"}}},"description_kind":"plain","deprecated":true}}},"description_kind":"plain"}},"yandex_mdb_postgresql_database":{"version":0,"block":{"attributes":{"cluster_id":{"type":"string","description_kind":"plain","required":true},"deletion_protection":{"type":"string","description_kind":"plain","optional":true},"id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"lc_collate":{"type":"string","description_kind":"plain","optional":true},"lc_type":{"type":"string","description_kind":"plain","optional":true},"name":{"type":"string","description_kind":"plain","required":true},"owner":{"type":"string","description_kind":"plain","required":true},"template_db":{"type":"string","description_kind":"plain","optional":true}},"block_types":{"extension":{"nesting_mode":"set","block":{"attributes":{"name":{"type":"string","description_kind":"plain","required":true},"version":{"type":"string","description_kind":"plain","optional":true}},"description_kind":"plain"}},"timeouts":{"nesting_mode":"single","block":{"attributes":{"create":{"type":"string","description_kind":"plain","optional":true},"delete":{"type":"string","description_kind":"plain","optional":true},"read":{"type":"string","description_kind":"plain","optional":true},"update":{"type":"string","description_kind":"plain","optional":true}},"description_kind":"plain"}}},"description_kind":"plain"}},"yandex_mdb_postgresql_user":{"version":0,"block":{"attributes":{"cluster_id":{"type":"string","description_kind":"plain","required":true},"conn_limit":{"type":"number","description_kind":"plain","optional":true,"computed":true},"deletion_protection":{"type":"string","description_kind":"plain","optional":true},"grants":{"type":["list","string"],"description_kind":"plain","optional":true},"id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"login":{"type":"bool","description_kind":"plain","optional":true},"name":{"type":"string","description_kind":"plain","required":true},"password":{"type":"string","description_kind":"plain","required":true,"sensitive":true},"settings":{"type":["map","string"],"description_kind":"plain","optional":true}},"block_types":{"permission":{"nesting_mode":"set","block":{"attributes":{"database_name":{"type":"string","description_kind":"plain","required":true}},"description_kind":"plain"}},"timeouts":{"nesting_mode":"single","block":{"attributes":{"create":{"type":"string","description_kind":"plain","optional":true},"delete":{"type":"string","description_kind":"plain","optional":true},"read":{"type":"string","description_kind":"plain","optional":true},"update":{"type":"string","description_kind":"plain","optional":true}},"description_kind":"plain"}}},"description_kind":"plain"}},"yandex_mdb_redis_cluster":{"version":0,"block":{"attributes":{"announce_hostnames":{"type":"bool","description_kind":"plain","optional":true},"created_at":{"type":"string","description_kind":"plain","computed":true},"deletion_protection":{"type":"bool","description_kind":"plain","optional":true,"computed":true},"description":{"type":"string","description_kind":"plain","optional":true},"environment":{"type":"string","description_kind":"plain","required":true},"folder_id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"health":{"type":"string","description_kind":"plain","computed":true},"id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"labels":{"type":["map","string"],"description_kind":"plain","optional":true},"name":{"type":"string","description_kind":"plain","required":true},"network_id":{"type":"string","description_kind":"plain","required":true},"persistence_mode":{"type":"string","description_kind":"plain","optional":true,"computed":true},"security_group_ids":{"type":["set","string"],"description_kind":"plain","optional":true},"sharded":{"type":"bool","description_kind":"plain","optional":true},"status":{"type":"string","description_kind":"plain","computed":true},"tls_enabled":{"type":"bool","description_kind":"plain","optional":true,"computed":true}},"block_types":{"access":{"nesting_mode":"list","block":{"attributes":{"data_lens":{"type":"bool","description_kind":"plain","optional":true,"computed":true},"web_sql":{"type":"bool","description_kind":"plain","optional":true,"computed":true}},"description_kind":"plain"},"max_items":1},"config":{"nesting_mode":"list","block":{"attributes":{"client_output_buffer_limit_normal":{"type":"string","description_kind":"plain","optional":true,"computed":true},"client_output_buffer_limit_pubsub":{"type":"string","description_kind":"plain","optional":true,"computed":true},"databases":{"type":"number","description_kind":"plain","optional":true,"computed":true},"maxmemory_percent":{"type":"number","description_kind":"plain","optional":true},"maxmemory_policy":{"type":"string","description_kind":"plain","optional":true,"computed":true},"notify_keyspace_events":{"type":"string","description_kind":"plain","optional":true,"computed":true},"password":{"type":"string","description_kind":"plain","required":true,"sensitive":true},"slowlog_log_slower_than":{"type":"number","description_kind":"plain","optional":true,"computed":true},"slowlog_max_len":{"type":"number","description_kind":"plain","optional":true,"computed":true},"timeout":{"type":"number","description_kind":"plain","optional":true,"computed":true},"version":{"type":"string","description_kind":"plain","required":true}},"description_kind":"plain"},"min_items":1,"max_items":1},"disk_size_autoscaling":{"nesting_mode":"list","block":{"attributes":{"disk_size_limit":{"type":"number","description_kind":"plain","required":true},"emergency_usage_threshold":{"type":"number","description_kind":"plain","optional":true},"planned_usage_threshold":{"type":"number","description_kind":"plain","optional":true}},"description_kind":"plain"},"max_items":1},"host":{"nesting_mode":"list","block":{"attributes":{"assign_public_ip":{"type":"bool","description_kind":"plain","optional":true},"fqdn":{"type":"string","description_kind":"plain","computed":true},"replica_priority":{"type":"number","description_kind":"plain","optional":true},"shard_name":{"type":"string","description_kind":"plain","optional":true,"computed":true},"subnet_id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"zone":{"type":"string","description_kind":"plain","required":true}},"description_kind":"plain"},"min_items":1},"maintenance_window":{"nesting_mode":"list","block":{"attributes":{"day":{"type":"string","description_kind":"plain","optional":true},"hour":{"type":"number","description_kind":"plain","optional":true},"type":{"type":"string","description_kind":"plain","required":true}},"description_kind":"plain"},"max_items":1},"resources":{"nesting_mode":"list","block":{"attributes":{"disk_size":{"type":"number","description_kind":"plain","required":true},"disk_type_id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"resource_preset_id":{"type":"string","description_kind":"plain","required":true}},"description_kind":"plain"},"min_items":1,"max_items":1},"timeouts":{"nesting_mode":"single","block":{"attributes":{"create":{"type":"string","description_kind":"plain","optional":true},"delete":{"type":"string","description_kind":"plain","optional":true},"update":{"type":"string","description_kind":"plain","optional":true}},"description_kind":"plain"}}},"description_kind":"plain"}},"yandex_mdb_sqlserver_cluster":{"version":0,"block":{"attributes":{"created_at":{"type":"string","description_kind":"plain","computed":true},"deletion_protection":{"type":"bool","description_kind":"plain","optional":true,"computed":true},"description":{"type":"string","description_kind":"plain","optional":true},"environment":{"type":"string","description_kind":"plain","required":true},"folder_id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"health":{"type":"string","description_kind":"plain","computed":true},"host_group_ids":{"type":["set","string"],"description_kind":"plain","optional":true,"computed":true},"id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"labels":{"type":["map","string"],"description_kind":"plain","optional":true},"name":{"type":"string","description_kind":"plain","required":true},"network_id":{"type":"string","description_kind":"plain","required":true},"security_group_ids":{"type":["set","string"],"description_kind":"plain","optional":true},"sqlcollation":{"type":"string","description_kind":"plain","optional":true,"computed":true},"sqlserver_config":{"type":["map","string"],"description_kind":"plain","optional":true,"computed":true},"status":{"type":"string","description_kind":"plain","computed":true},"version":{"type":"string","description_kind":"plain","required":true}},"block_types":{"backup_window_start":{"nesting_mode":"list","block":{"attributes":{"hours":{"type":"number","description_kind":"plain","optional":true},"minutes":{"type":"number","description_kind":"plain","optional":true}},"description_kind":"plain"},"max_items":1},"database":{"nesting_mode":"list","block":{"attributes":{"name":{"type":"string","description_kind":"plain","required":true}},"description_kind":"plain"},"min_items":1},"host":{"nesting_mode":"list","block":{"attributes":{"assign_public_ip":{"type":"bool","description_kind":"plain","optional":true},"fqdn":{"type":"string","description_kind":"plain","computed":true},"subnet_id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"zone":{"type":"string","description_kind":"plain","required":true}},"description_kind":"plain"},"min_items":1},"resources":{"nesting_mode":"list","block":{"attributes":{"disk_size":{"type":"number","description_kind":"plain","required":true},"disk_type_id":{"type":"string","description_kind":"plain","required":true},"resource_preset_id":{"type":"string","description_kind":"plain","required":true}},"description_kind":"plain"},"min_items":1,"max_items":1},"timeouts":{"nesting_mode":"single","block":{"attributes":{"create":{"type":"string","description_kind":"plain","optional":true},"delete":{"type":"string","description_kind":"plain","optional":true},"update":{"type":"string","description_kind":"plain","optional":true}},"description_kind":"plain"}},"user":{"nesting_mode":"list","block":{"attributes":{"name":{"type":"string","description_kind":"plain","required":true},"password":{"type":"string","description_kind":"plain","required":true,"sensitive":true}},"block_types":{"permission":{"nesting_mode":"set","block":{"attributes":{"database_name":{"type":"string","description_kind":"plain","required":true},"roles":{"type":["set","string"],"description_kind":"plain","optional":true}},"description_kind":"plain"}}},"description_kind":"plain"},"min_items":1}},"description_kind":"plain"}},"yandex_message_queue":{"version":0,"block":{"attributes":{"access_key":{"type":"string","description_kind":"plain","optional":true},"arn":{"type":"string","description_kind":"plain","computed":true},"content_based_deduplication":{"type":"bool","description_kind":"plain","optional":true},"delay_seconds":{"type":"number","description_kind":"plain","optional":true},"fifo_queue":{"type":"bool","description_kind":"plain","optional":true},"id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"max_message_size":{"type":"number","description_kind":"plain","optional":true},"message_retention_seconds":{"type":"number","description_kind":"plain","optional":true},"name":{"type":"string","description_kind":"plain","optional":true,"computed":true},"name_prefix":{"type":"string","description_kind":"plain","optional":true},"receive_wait_time_seconds":{"type":"number","description_kind":"plain","optional":true},"redrive_policy":{"type":"string","description_kind":"plain","optional":true},"region_id":{"type":"string","description_kind":"plain","optional":true},"secret_key":{"type":"string","description_kind":"plain","optional":true,"sensitive":true},"visibility_timeout_seconds":{"type":"number","description_kind":"plain","optional":true}},"description_kind":"plain"}},"yandex_monitoring_dashboard":{"version":1,"block":{"attributes":{"dashboard_id":{"type":"string","description":"Dashboard ID","description_kind":"plain","computed":true},"description":{"type":"string","description":"Dashboard description","description_kind":"plain","optional":true},"folder_id":{"type":"string","description":"Folder ID","description_kind":"plain","optional":true,"computed":true},"id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"labels":{"type":["map","string"],"description":"Dashboard labels","description_kind":"plain","optional":true,"computed":true},"name":{"type":"string","description":"Dashboard name, used as local identifier in folder_id","description_kind":"plain","required":true},"title":{"type":"string","description":"Dashboard title","description_kind":"plain","optional":true}},"block_types":{"parametrization":{"nesting_mode":"list","block":{"attributes":{"selectors":{"type":"string","description":"Predefined selectors","description_kind":"plain","optional":true}},"block_types":{"parameters":{"nesting_mode":"list","block":{"attributes":{"description":{"type":"string","description":"Parameter description","description_kind":"plain","optional":true},"hidden":{"type":"bool","description":"UI-visibility","description_kind":"plain","optional":true},"id":{"type":"string","description":"Parameter identifier","description_kind":"plain","required":true},"title":{"type":"string","description":"UI-visible title of the parameter","description_kind":"plain","optional":true}},"block_types":{"custom":{"nesting_mode":"list","block":{"attributes":{"default_values":{"type":["list","string"],"description":"Default value","description_kind":"plain","optional":true},"multiselectable":{"type":"bool","description":"Specifies the multiselectable values of parameter","description_kind":"plain","optional":true},"values":{"type":["list","string"],"description":"Parameter values","description_kind":"plain","optional":true}},"description":"Custom parameter","description_kind":"plain"}},"label_values":{"nesting_mode":"list","block":{"attributes":{"default_values":{"type":["list","string"],"description":"Default value","description_kind":"plain","optional":true},"folder_id":{"type":"string","description":"Folder ID","description_kind":"plain","optional":true},"label_key":{"type":"string","description":"Required. Label key to list label values","description_kind":"plain","required":true},"multiselectable":{"type":"bool","description":"Specifies the multiselectable values of parameter","description_kind":"plain","optional":true},"selectors":{"type":"string","description":"Required. Selectors to select metric label values","description_kind":"plain","optional":true}},"description":"Label values parameter","description_kind":"plain"}},"text":{"nesting_mode":"list","block":{"attributes":{"default_value":{"type":"string","description":"Default value","description_kind":"plain","optional":true}},"description":"Text parameter","description_kind":"plain"}}},"description":"Dashboard parameter","description_kind":"plain"}}},"description":"Dashboard parametrization","description_kind":"plain"}},"timeouts":{"nesting_mode":"single","block":{"attributes":{"create":{"type":"string","description_kind":"plain","optional":true},"delete":{"type":"string","description_kind":"plain","optional":true},"read":{"type":"string","description_kind":"plain","optional":true},"update":{"type":"string","description_kind":"plain","optional":true}},"description_kind":"plain"}},"widgets":{"nesting_mode":"list","block":{"block_types":{"chart":{"nesting_mode":"list","block":{"attributes":{"chart_id":{"type":"string","description":"Chart ID","description_kind":"plain","optional":true},"description":{"type":"string","description":"Chart description in dashboard (not enabled in UI)","description_kind":"plain","optional":true},"display_legend":{"type":"bool","description":"Enable legend under chart","description_kind":"plain","optional":true},"freeze":{"type":"string","description":"Fixed time interval for chart","description_kind":"plain","optional":true,"computed":true},"title":{"type":"string","description":"Chart widget title","description_kind":"plain","optional":true}},"block_types":{"name_hiding_settings":{"nesting_mode":"list","block":{"attributes":{"names":{"type":["list","string"],"description_kind":"plain","optional":true},"positive":{"type":"bool","description":"True if we want to show concrete series names only, false if we want to hide concrete series names","description_kind":"plain","optional":true}},"description":"Name hiding settings","description_kind":"plain"}},"queries":{"nesting_mode":"list","block":{"block_types":{"downsampling":{"nesting_mode":"list","block":{"attributes":{"disabled":{"type":"bool","description":"Disable downsampling","description_kind":"plain","optional":true},"gap_filling":{"type":"string","description":"Parameters for filling gaps in data","description_kind":"plain","optional":true},"grid_aggregation":{"type":"string","description":"Function that is used for downsampling","description_kind":"plain","optional":true},"grid_interval":{"type":"number","description":"Time interval (grid) for downsampling in milliseconds. Points in the specified range are aggregated into one time point","description_kind":"plain","optional":true},"max_points":{"type":"number","description":"Maximum number of points to be returned","description_kind":"plain","optional":true}},"description":"Downsampling settings","description_kind":"plain"}},"target":{"nesting_mode":"list","block":{"attributes":{"hidden":{"type":"bool","description":"Checks that target is visible or invisible","description_kind":"plain","optional":true},"query":{"type":"string","description":"Required. Query","description_kind":"plain","optional":true},"text_mode":{"type":"bool","description":"Text mode","description_kind":"plain","optional":true}},"description":"Downsampling settings","description_kind":"plain"}}},"description":"Queries","description_kind":"plain"}},"series_overrides":{"nesting_mode":"list","block":{"attributes":{"name":{"type":"string","description":"Series name","description_kind":"plain","optional":true},"target_index":{"type":"string","description":"Target index","description_kind":"plain","optional":true}},"block_types":{"settings":{"nesting_mode":"list","block":{"attributes":{"color":{"type":"string","description":"Series color or empty","description_kind":"plain","optional":true},"grow_down":{"type":"bool","description":"Stack grow down","description_kind":"plain","optional":true},"name":{"type":"string","description":"Series name or empty","description_kind":"plain","optional":true},"stack_name":{"type":"string","description":"Stack name or empty","description_kind":"plain","optional":true},"type":{"type":"string","description":"Type","description_kind":"plain","optional":true,"computed":true},"yaxis_position":{"type":"string","description":"Yaxis position","description_kind":"plain","optional":true,"computed":true}},"description":"Override settings","description_kind":"plain"}}},"description_kind":"plain"}},"visualization_settings":{"nesting_mode":"list","block":{"attributes":{"aggregation":{"type":"string","description":"Aggregation","description_kind":"plain","optional":true,"computed":true},"interpolate":{"type":"string","description":"Interpolate","description_kind":"plain","optional":true,"computed":true},"normalize":{"type":"bool","description":"Normalize","description_kind":"plain","optional":true},"show_labels":{"type":"bool","description":"Show chart labels","description_kind":"plain","optional":true},"title":{"type":"string","description":"Inside chart title","description_kind":"plain","optional":true},"type":{"type":"string","description":"Visualization type","description_kind":"plain","optional":true,"computed":true}},"block_types":{"color_scheme_settings":{"nesting_mode":"list","block":{"block_types":{"automatic":{"nesting_mode":"list","block":{"description":"Automatic color scheme","description_kind":"plain"}},"gradient":{"nesting_mode":"list","block":{"attributes":{"green_value":{"type":"string","description":"Gradient green value","description_kind":"plain","optional":true},"red_value":{"type":"string","description":"Gradient red value","description_kind":"plain","optional":true},"violet_value":{"type":"string","description":"Gradient violet_value","description_kind":"plain","optional":true},"yellow_value":{"type":"string","description":"Gradient yellow value","description_kind":"plain","optional":true}},"description":"Gradient color scheme","description_kind":"plain"}},"standard":{"nesting_mode":"list","block":{"description":"Standard color scheme","description_kind":"plain"}}},"description":"Color scheme settings","description_kind":"plain"}},"heatmap_settings":{"nesting_mode":"list","block":{"attributes":{"green_value":{"type":"string","description":"Heatmap green value","description_kind":"plain","optional":true},"red_value":{"type":"string","description":"Heatmap red value","description_kind":"plain","optional":true},"violet_value":{"type":"string","description":"Heatmap violet_value","description_kind":"plain","optional":true},"yellow_value":{"type":"string","description":"Heatmap yellow value","description_kind":"plain","optional":true}},"description":"Heatmap settings","description_kind":"plain"}},"yaxis_settings":{"nesting_mode":"list","block":{"block_types":{"left":{"nesting_mode":"list","block":{"attributes":{"max":{"type":"string","description":"Max value in extended number format or empty","description_kind":"plain","optional":true},"min":{"type":"string","description":"Min value in extended number format or empty","description_kind":"plain","optional":true},"precision":{"type":"number","description":"Tick value precision (null as default, 0-7 in other cases)","description_kind":"plain","optional":true},"title":{"type":"string","description":"Title or empty","description_kind":"plain","optional":true},"type":{"type":"string","description":"Type","description_kind":"plain","optional":true,"computed":true},"unit_format":{"type":"string","description":"Unit format","description_kind":"plain","optional":true,"computed":true}},"description":"Left Y axis settings","description_kind":"plain"}},"right":{"nesting_mode":"list","block":{"attributes":{"max":{"type":"string","description":"Max value in extended number format or empty","description_kind":"plain","optional":true},"min":{"type":"string","description":"Min value in extended number format or empty","description_kind":"plain","optional":true},"precision":{"type":"number","description":"Tick value precision (null as default, 0-7 in other cases)","description_kind":"plain","optional":true},"title":{"type":"string","description":"Title or empty","description_kind":"plain","optional":true},"type":{"type":"string","description":"Type","description_kind":"plain","optional":true},"unit_format":{"type":"string","description":"Unit format","description_kind":"plain","optional":true}},"description":"Right Y axis settings","description_kind":"plain"}}},"description":"Y axis settings","description_kind":"plain"}}},"description":"Visualization settings","description_kind":"plain"}}},"description":"Chart widget","description_kind":"plain"}},"position":{"nesting_mode":"list","block":{"attributes":{"h":{"type":"number","description":"Required. Height","description_kind":"plain","optional":true},"w":{"type":"number","description":"Required. Weight","description_kind":"plain","optional":true},"x":{"type":"number","description":"Required. X-axis top-left corner coordinate","description_kind":"plain","optional":true},"y":{"type":"number","description":"Required. Y-axis top-left corner coordinate","description_kind":"plain","optional":true}},"description":"Required. Widget layout position","description_kind":"plain"}},"text":{"nesting_mode":"list","block":{"attributes":{"text":{"type":"string","description":"Text","description_kind":"plain","optional":true}},"description":"Text widget","description_kind":"plain"}},"title":{"nesting_mode":"list","block":{"attributes":{"size":{"type":"string","description":"Title size","description_kind":"plain","optional":true,"computed":true},"text":{"type":"string","description":"Title text","description_kind":"plain","required":true}},"description":"Title widget","description_kind":"plain"}}},"description":"Widgets","description_kind":"plain"}}},"description":"Monitoring dashboard","description_kind":"plain"}},"yandex_organizationmanager_group":{"version":0,"block":{"attributes":{"created_at":{"type":"string","description_kind":"plain","computed":true},"description":{"type":"string","description_kind":"plain","optional":true},"id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"name":{"type":"string","description_kind":"plain","required":true},"organization_id":{"type":"string","description_kind":"plain","required":true}},"block_types":{"timeouts":{"nesting_mode":"single","block":{"attributes":{"create":{"type":"string","description_kind":"plain","optional":true},"delete":{"type":"string","description_kind":"plain","optional":true},"read":{"type":"string","description_kind":"plain","optional":true},"update":{"type":"string","description_kind":"plain","optional":true}},"description_kind":"plain"}}},"description_kind":"plain"}},"yandex_organizationmanager_group_iam_member":{"version":0,"block":{"attributes":{"group_id":{"type":"string","description_kind":"plain","required":true},"id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"member":{"type":"string","description_kind":"plain","required":true},"role":{"type":"string","description_kind":"plain","required":true},"sleep_after":{"type":"number","description_kind":"plain","optional":true}},"block_types":{"timeouts":{"nesting_mode":"single","block":{"attributes":{"default":{"type":"string","description_kind":"plain","optional":true}},"description_kind":"plain"}}},"description_kind":"plain"}},"yandex_organizationmanager_group_membership":{"version":0,"block":{"attributes":{"group_id":{"type":"string","description_kind":"plain","required":true},"id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"members":{"type":["set","string"],"description_kind":"plain","required":true}},"block_types":{"timeouts":{"nesting_mode":"single","block":{"attributes":{"create":{"type":"string","description_kind":"plain","optional":true},"delete":{"type":"string","description_kind":"plain","optional":true},"read":{"type":"string","description_kind":"plain","optional":true},"update":{"type":"string","description_kind":"plain","optional":true}},"description_kind":"plain"}}},"description_kind":"plain"}},"yandex_organizationmanager_organization_iam_binding":{"version":0,"block":{"attributes":{"id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"members":{"type":["set","string"],"description_kind":"plain","required":true},"organization_id":{"type":"string","description_kind":"plain","required":true},"role":{"type":"string","description_kind":"plain","required":true},"sleep_after":{"type":"number","description_kind":"plain","optional":true}},"block_types":{"timeouts":{"nesting_mode":"single","block":{"attributes":{"default":{"type":"string","description_kind":"plain","optional":true}},"description_kind":"plain"}}},"description_kind":"plain"}},"yandex_organizationmanager_organization_iam_member":{"version":0,"block":{"attributes":{"id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"member":{"type":"string","description_kind":"plain","required":true},"organization_id":{"type":"string","description_kind":"plain","required":true},"role":{"type":"string","description_kind":"plain","required":true},"sleep_after":{"type":"number","description_kind":"plain","optional":true}},"block_types":{"timeouts":{"nesting_mode":"single","block":{"attributes":{"default":{"type":"string","description_kind":"plain","optional":true}},"description_kind":"plain"}}},"description_kind":"plain"}},"yandex_organizationmanager_os_login_settings":{"version":0,"block":{"attributes":{"id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"organization_id":{"type":"string","description_kind":"plain","required":true}},"block_types":{"ssh_certificate_settings":{"nesting_mode":"list","block":{"attributes":{"enabled":{"type":"bool","description_kind":"plain","optional":true}},"description_kind":"plain"},"max_items":1},"timeouts":{"nesting_mode":"single","block":{"attributes":{"create":{"type":"string","description_kind":"plain","optional":true},"delete":{"type":"string","description_kind":"plain","optional":true},"read":{"type":"string","description_kind":"plain","optional":true},"update":{"type":"string","description_kind":"plain","optional":true}},"description_kind":"plain"}},"user_ssh_key_settings":{"nesting_mode":"list","block":{"attributes":{"allow_manage_own_keys":{"type":"bool","description_kind":"plain","optional":true},"enabled":{"type":"bool","description_kind":"plain","optional":true}},"description_kind":"plain"},"max_items":1}},"description_kind":"plain"}},"yandex_organizationmanager_saml_federation":{"version":0,"block":{"attributes":{"auto_create_account_on_login":{"type":"bool","description_kind":"plain","optional":true,"computed":true},"case_insensitive_name_ids":{"type":"bool","description_kind":"plain","optional":true,"computed":true},"cookie_max_age":{"type":"string","description_kind":"plain","optional":true,"computed":true},"created_at":{"type":"string","description_kind":"plain","computed":true},"description":{"type":"string","description_kind":"plain","optional":true},"id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"issuer":{"type":"string","description_kind":"plain","required":true},"labels":{"type":["map","string"],"description_kind":"plain","optional":true},"name":{"type":"string","description_kind":"plain","required":true},"organization_id":{"type":"string","description_kind":"plain","required":true},"sso_binding":{"type":"string","description_kind":"plain","required":true},"sso_url":{"type":"string","description_kind":"plain","required":true}},"block_types":{"security_settings":{"nesting_mode":"list","block":{"attributes":{"encrypted_assertions":{"type":"bool","description_kind":"plain","required":true}},"description_kind":"plain"},"max_items":1},"timeouts":{"nesting_mode":"single","block":{"attributes":{"create":{"type":"string","description_kind":"plain","optional":true},"delete":{"type":"string","description_kind":"plain","optional":true},"read":{"type":"string","description_kind":"plain","optional":true},"update":{"type":"string","description_kind":"plain","optional":true}},"description_kind":"plain"}}},"description_kind":"plain"}},"yandex_organizationmanager_saml_federation_user_account":{"version":0,"block":{"attributes":{"federation_id":{"type":"string","description_kind":"plain","required":true},"id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"name_id":{"type":"string","description_kind":"plain","required":true}},"block_types":{"timeouts":{"nesting_mode":"single","block":{"attributes":{"create":{"type":"string","description_kind":"plain","optional":true},"delete":{"type":"string","description_kind":"plain","optional":true},"read":{"type":"string","description_kind":"plain","optional":true},"update":{"type":"string","description_kind":"plain","optional":true}},"description_kind":"plain"}}},"description_kind":"plain"}},"yandex_organizationmanager_user_ssh_key":{"version":0,"block":{"attributes":{"created_at":{"type":"string","description_kind":"plain","computed":true},"data":{"type":"string","description_kind":"plain","required":true},"expires_at":{"type":"string","description_kind":"plain","optional":true},"fingerprint":{"type":"string","description_kind":"plain","computed":true},"id":{"type":"string","description_kind":"plain","computed":true},"name":{"type":"string","description_kind":"plain","optional":true},"organization_id":{"type":"string","description_kind":"plain","required":true},"subject_id":{"type":"string","description_kind":"plain","required":true}},"block_types":{"timeouts":{"nesting_mode":"single","block":{"attributes":{"create":{"type":"string","description_kind":"plain","optional":true},"delete":{"type":"string","description_kind":"plain","optional":true},"read":{"type":"string","description_kind":"plain","optional":true},"update":{"type":"string","description_kind":"plain","optional":true}},"description_kind":"plain"}}},"description_kind":"plain"}},"yandex_resourcemanager_cloud":{"version":0,"block":{"attributes":{"created_at":{"type":"string","description_kind":"plain","computed":true},"description":{"type":"string","description_kind":"plain","optional":true},"id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"labels":{"type":["map","string"],"description_kind":"plain","optional":true},"name":{"type":"string","description_kind":"plain","optional":true},"organization_id":{"type":"string","description_kind":"plain","optional":true,"computed":true}},"block_types":{"timeouts":{"nesting_mode":"single","block":{"attributes":{"create":{"type":"string","description_kind":"plain","optional":true},"delete":{"type":"string","description_kind":"plain","optional":true},"read":{"type":"string","description_kind":"plain","optional":true},"update":{"type":"string","description_kind":"plain","optional":true}},"description_kind":"plain"}}},"description_kind":"plain"}},"yandex_resourcemanager_cloud_iam_binding":{"version":0,"block":{"attributes":{"cloud_id":{"type":"string","description_kind":"plain","required":true},"id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"members":{"type":["set","string"],"description_kind":"plain","required":true},"role":{"type":"string","description_kind":"plain","required":true},"sleep_after":{"type":"number","description_kind":"plain","optional":true}},"block_types":{"timeouts":{"nesting_mode":"single","block":{"attributes":{"default":{"type":"string","description_kind":"plain","optional":true}},"description_kind":"plain"}}},"description_kind":"plain"}},"yandex_resourcemanager_cloud_iam_member":{"version":0,"block":{"attributes":{"cloud_id":{"type":"string","description_kind":"plain","required":true},"id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"member":{"type":"string","description_kind":"plain","required":true},"role":{"type":"string","description_kind":"plain","required":true},"sleep_after":{"type":"number","description_kind":"plain","optional":true}},"block_types":{"timeouts":{"nesting_mode":"single","block":{"attributes":{"default":{"type":"string","description_kind":"plain","optional":true}},"description_kind":"plain"}}},"description_kind":"plain"}},"yandex_resourcemanager_folder":{"version":0,"block":{"attributes":{"cloud_id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"created_at":{"type":"string","description_kind":"plain","computed":true},"description":{"type":"string","description_kind":"plain","optional":true},"id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"labels":{"type":["map","string"],"description_kind":"plain","optional":true},"name":{"type":"string","description_kind":"plain","optional":true}},"block_types":{"timeouts":{"nesting_mode":"single","block":{"attributes":{"create":{"type":"string","description_kind":"plain","optional":true},"delete":{"type":"string","description_kind":"plain","optional":true},"read":{"type":"string","description_kind":"plain","optional":true},"update":{"type":"string","description_kind":"plain","optional":true}},"description_kind":"plain"}}},"description_kind":"plain"}},"yandex_resourcemanager_folder_iam_binding":{"version":0,"block":{"attributes":{"folder_id":{"type":"string","description_kind":"plain","required":true},"id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"members":{"type":["set","string"],"description_kind":"plain","required":true},"role":{"type":"string","description_kind":"plain","required":true},"sleep_after":{"type":"number","description_kind":"plain","optional":true}},"block_types":{"timeouts":{"nesting_mode":"single","block":{"attributes":{"default":{"type":"string","description_kind":"plain","optional":true}},"description_kind":"plain"}}},"description_kind":"plain"}},"yandex_resourcemanager_folder_iam_member":{"version":0,"block":{"attributes":{"folder_id":{"type":"string","description_kind":"plain","required":true},"id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"member":{"type":"string","description_kind":"plain","required":true},"role":{"type":"string","description_kind":"plain","required":true},"sleep_after":{"type":"number","description_kind":"plain","optional":true}},"block_types":{"timeouts":{"nesting_mode":"single","block":{"attributes":{"default":{"type":"string","description_kind":"plain","optional":true}},"description_kind":"plain"}}},"description_kind":"plain"}},"yandex_resourcemanager_folder_iam_policy":{"version":0,"block":{"attributes":{"folder_id":{"type":"string","description_kind":"plain","required":true},"id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"policy_data":{"type":"string","description_kind":"plain","required":true}},"block_types":{"timeouts":{"nesting_mode":"single","block":{"attributes":{"default":{"type":"string","description_kind":"plain","optional":true}},"description_kind":"plain"}}},"description_kind":"plain"}},"yandex_serverless_container":{"version":0,"block":{"attributes":{"concurrency":{"type":"number","description_kind":"plain","optional":true},"core_fraction":{"type":"number","description_kind":"plain","optional":true,"computed":true},"cores":{"type":"number","description_kind":"plain","optional":true},"created_at":{"type":"string","description_kind":"plain","computed":true},"description":{"type":"string","description_kind":"plain","optional":true},"execution_timeout":{"type":"string","description_kind":"plain","optional":true,"computed":true},"folder_id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"labels":{"type":["map","string"],"description_kind":"plain","optional":true},"memory":{"type":"number","description":"Container memory in megabytes, should be aligned to 128","description_kind":"plain","required":true},"name":{"type":"string","description_kind":"plain","required":true},"revision_id":{"type":"string","description_kind":"plain","computed":true},"service_account_id":{"type":"string","description_kind":"plain","optional":true},"url":{"type":"string","description_kind":"plain","computed":true}},"block_types":{"connectivity":{"nesting_mode":"list","block":{"attributes":{"network_id":{"type":"string","description_kind":"plain","required":true}},"description_kind":"plain"},"max_items":1},"image":{"nesting_mode":"list","block":{"attributes":{"args":{"type":["list","string"],"description_kind":"plain","optional":true},"command":{"type":["list","string"],"description_kind":"plain","optional":true},"digest":{"type":"string","description_kind":"plain","optional":true,"computed":true},"environment":{"type":["map","string"],"description_kind":"plain","optional":true},"url":{"type":"string","description_kind":"plain","required":true},"work_dir":{"type":"string","description_kind":"plain","optional":true}},"description_kind":"plain"},"min_items":1,"max_items":1},"log_options":{"nesting_mode":"list","block":{"attributes":{"disabled":{"type":"bool","description_kind":"plain","optional":true},"folder_id":{"type":"string","description_kind":"plain","optional":true},"log_group_id":{"type":"string","description_kind":"plain","optional":true},"min_level":{"type":"string","description_kind":"plain","optional":true}},"description_kind":"plain"},"max_items":1},"mounts":{"nesting_mode":"list","block":{"attributes":{"mode":{"type":"string","description_kind":"plain","optional":true,"computed":true},"mount_point_path":{"type":"string","description_kind":"plain","required":true}},"block_types":{"ephemeral_disk":{"nesting_mode":"list","block":{"attributes":{"block_size_kb":{"type":"number","description_kind":"plain","optional":true,"computed":true},"size_gb":{"type":"number","description_kind":"plain","required":true}},"description_kind":"plain"},"max_items":1},"object_storage":{"nesting_mode":"list","block":{"attributes":{"bucket":{"type":"string","description_kind":"plain","required":true},"prefix":{"type":"string","description_kind":"plain","optional":true}},"description_kind":"plain"},"max_items":1}},"description_kind":"plain"}},"provision_policy":{"nesting_mode":"list","block":{"attributes":{"min_instances":{"type":"number","description_kind":"plain","required":true}},"description_kind":"plain"},"max_items":1},"secrets":{"nesting_mode":"list","block":{"attributes":{"environment_variable":{"type":"string","description_kind":"plain","required":true},"id":{"type":"string","description_kind":"plain","required":true},"key":{"type":"string","description_kind":"plain","required":true},"version_id":{"type":"string","description_kind":"plain","required":true}},"description_kind":"plain"}},"storage_mounts":{"nesting_mode":"list","block":{"attributes":{"bucket":{"type":"string","description_kind":"plain","required":true},"mount_point_path":{"type":"string","description_kind":"plain","required":true},"prefix":{"type":"string","description_kind":"plain","optional":true},"read_only":{"type":"bool","description_kind":"plain","optional":true}},"description_kind":"plain","deprecated":true}},"timeouts":{"nesting_mode":"single","block":{"attributes":{"create":{"type":"string","description_kind":"plain","optional":true},"delete":{"type":"string","description_kind":"plain","optional":true},"update":{"type":"string","description_kind":"plain","optional":true}},"description_kind":"plain"}}},"description_kind":"plain"}},"yandex_serverless_container_iam_binding":{"version":0,"block":{"attributes":{"container_id":{"type":"string","description_kind":"plain","required":true},"id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"members":{"type":["set","string"],"description_kind":"plain","required":true},"role":{"type":"string","description_kind":"plain","required":true},"sleep_after":{"type":"number","description_kind":"plain","optional":true}},"block_types":{"timeouts":{"nesting_mode":"single","block":{"attributes":{"default":{"type":"string","description_kind":"plain","optional":true}},"description_kind":"plain"}}},"description_kind":"plain"}},"yandex_smartcaptcha_captcha":{"version":1,"block":{"attributes":{"allowed_sites":{"type":["list","string"],"description_kind":"plain","optional":true},"challenge_type":{"type":"string","description_kind":"plain","optional":true},"client_key":{"type":"string","description_kind":"plain","computed":true},"cloud_id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"complexity":{"type":"string","description_kind":"plain","optional":true},"created_at":{"type":"string","description_kind":"plain","computed":true},"deletion_protection":{"type":"bool","description_kind":"plain","optional":true},"folder_id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"name":{"type":"string","description_kind":"plain","optional":true},"pre_check_type":{"type":"string","description_kind":"plain","optional":true},"style_json":{"type":"string","description_kind":"plain","optional":true},"suspend":{"type":"bool","description_kind":"plain","computed":true},"turn_off_hostname_check":{"type":"bool","description_kind":"plain","optional":true}},"block_types":{"override_variant":{"nesting_mode":"list","block":{"attributes":{"challenge_type":{"type":"string","description_kind":"plain","optional":true},"complexity":{"type":"string","description_kind":"plain","optional":true},"description":{"type":"string","description_kind":"plain","optional":true},"pre_check_type":{"type":"string","description_kind":"plain","optional":true},"uuid":{"type":"string","description_kind":"plain","optional":true}},"description_kind":"plain"}},"security_rule":{"nesting_mode":"list","block":{"attributes":{"description":{"type":"string","description_kind":"plain","optional":true},"name":{"type":"string","description_kind":"plain","optional":true},"override_variant_uuid":{"type":"string","description_kind":"plain","optional":true},"priority":{"type":"number","description_kind":"plain","optional":true}},"block_types":{"condition":{"nesting_mode":"list","block":{"block_types":{"headers":{"nesting_mode":"list","block":{"attributes":{"name":{"type":"string","description_kind":"plain","optional":true}},"block_types":{"value":{"nesting_mode":"list","block":{"attributes":{"exact_match":{"type":"string","description_kind":"plain","optional":true},"exact_not_match":{"type":"string","description_kind":"plain","optional":true},"pire_regex_match":{"type":"string","description_kind":"plain","optional":true},"pire_regex_not_match":{"type":"string","description_kind":"plain","optional":true},"prefix_match":{"type":"string","description_kind":"plain","optional":true},"prefix_not_match":{"type":"string","description_kind":"plain","optional":true}},"description_kind":"plain"},"min_items":1,"max_items":1}},"description_kind":"plain"}},"host":{"nesting_mode":"list","block":{"block_types":{"hosts":{"nesting_mode":"list","block":{"attributes":{"exact_match":{"type":"string","description_kind":"plain","optional":true},"exact_not_match":{"type":"string","description_kind":"plain","optional":true},"pire_regex_match":{"type":"string","description_kind":"plain","optional":true},"pire_regex_not_match":{"type":"string","description_kind":"plain","optional":true},"prefix_match":{"type":"string","description_kind":"plain","optional":true},"prefix_not_match":{"type":"string","description_kind":"plain","optional":true}},"description_kind":"plain"}}},"description_kind":"plain"},"max_items":1},"source_ip":{"nesting_mode":"list","block":{"block_types":{"geo_ip_match":{"nesting_mode":"list","block":{"attributes":{"locations":{"type":["list","string"],"description_kind":"plain","optional":true}},"description_kind":"plain"},"max_items":1},"geo_ip_not_match":{"nesting_mode":"list","block":{"attributes":{"locations":{"type":["list","string"],"description_kind":"plain","optional":true}},"description_kind":"plain"},"max_items":1},"ip_ranges_match":{"nesting_mode":"list","block":{"attributes":{"ip_ranges":{"type":["list","string"],"description_kind":"plain","optional":true}},"description_kind":"plain"},"max_items":1},"ip_ranges_not_match":{"nesting_mode":"list","block":{"attributes":{"ip_ranges":{"type":["list","string"],"description_kind":"plain","optional":true}},"description_kind":"plain"},"max_items":1}},"description_kind":"plain"},"max_items":1},"uri":{"nesting_mode":"list","block":{"block_types":{"path":{"nesting_mode":"list","block":{"attributes":{"exact_match":{"type":"string","description_kind":"plain","optional":true},"exact_not_match":{"type":"string","description_kind":"plain","optional":true},"pire_regex_match":{"type":"string","description_kind":"plain","optional":true},"pire_regex_not_match":{"type":"string","description_kind":"plain","optional":true},"prefix_match":{"type":"string","description_kind":"plain","optional":true},"prefix_not_match":{"type":"string","description_kind":"plain","optional":true}},"description_kind":"plain"},"max_items":1},"queries":{"nesting_mode":"list","block":{"attributes":{"key":{"type":"string","description_kind":"plain","required":true}},"block_types":{"value":{"nesting_mode":"list","block":{"attributes":{"exact_match":{"type":"string","description_kind":"plain","optional":true},"exact_not_match":{"type":"string","description_kind":"plain","optional":true},"pire_regex_match":{"type":"string","description_kind":"plain","optional":true},"pire_regex_not_match":{"type":"string","description_kind":"plain","optional":true},"prefix_match":{"type":"string","description_kind":"plain","optional":true},"prefix_not_match":{"type":"string","description_kind":"plain","optional":true}},"description_kind":"plain"},"min_items":1,"max_items":1}},"description_kind":"plain"}}},"description_kind":"plain"},"max_items":1}},"description_kind":"plain"},"max_items":1}},"description_kind":"plain"}},"timeouts":{"nesting_mode":"single","block":{"attributes":{"create":{"type":"string","description_kind":"plain","optional":true},"delete":{"type":"string","description_kind":"plain","optional":true},"read":{"type":"string","description_kind":"plain","optional":true},"update":{"type":"string","description_kind":"plain","optional":true}},"description_kind":"plain"}}},"description_kind":"plain"}},"yandex_storage_bucket":{"version":1,"block":{"attributes":{"access_key":{"type":"string","description_kind":"plain","optional":true},"acl":{"type":"string","description_kind":"plain","optional":true},"bucket":{"type":"string","description_kind":"plain","optional":true,"computed":true},"bucket_domain_name":{"type":"string","description_kind":"plain","computed":true},"bucket_prefix":{"type":"string","description_kind":"plain","optional":true},"default_storage_class":{"type":"string","description_kind":"plain","optional":true,"computed":true},"folder_id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"force_destroy":{"type":"bool","description_kind":"plain","optional":true},"id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"max_size":{"type":"number","description_kind":"plain","optional":true},"policy":{"type":"string","description_kind":"plain","optional":true},"secret_key":{"type":"string","description_kind":"plain","optional":true,"sensitive":true},"tags":{"type":["map","string"],"description_kind":"plain","optional":true},"website_domain":{"type":"string","description_kind":"plain","optional":true,"computed":true},"website_endpoint":{"type":"string","description_kind":"plain","optional":true,"computed":true}},"block_types":{"anonymous_access_flags":{"nesting_mode":"set","block":{"attributes":{"config_read":{"type":"bool","description_kind":"plain","optional":true},"list":{"type":"bool","description_kind":"plain","optional":true},"read":{"type":"bool","description_kind":"plain","optional":true}},"description_kind":"plain"},"max_items":1},"cors_rule":{"nesting_mode":"list","block":{"attributes":{"allowed_headers":{"type":["list","string"],"description_kind":"plain","optional":true},"allowed_methods":{"type":["list","string"],"description_kind":"plain","required":true},"allowed_origins":{"type":["list","string"],"description_kind":"plain","required":true},"expose_headers":{"type":["list","string"],"description_kind":"plain","optional":true},"max_age_seconds":{"type":"number","description_kind":"plain","optional":true}},"description_kind":"plain"}},"grant":{"nesting_mode":"set","block":{"attributes":{"id":{"type":"string","description_kind":"plain","optional":true},"permissions":{"type":["set","string"],"description_kind":"plain","required":true},"type":{"type":"string","description_kind":"plain","required":true},"uri":{"type":"string","description_kind":"plain","optional":true}},"description_kind":"plain"}},"https":{"nesting_mode":"set","block":{"attributes":{"certificate_id":{"type":"string","description_kind":"plain","required":true}},"description_kind":"plain"},"max_items":1},"lifecycle_rule":{"nesting_mode":"list","block":{"attributes":{"abort_incomplete_multipart_upload_days":{"type":"number","description_kind":"plain","optional":true},"enabled":{"type":"bool","description_kind":"plain","required":true},"id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"prefix":{"type":"string","description_kind":"plain","deprecated":true,"optional":true}},"block_types":{"expiration":{"nesting_mode":"list","block":{"attributes":{"date":{"type":"string","description_kind":"plain","optional":true},"days":{"type":"number","description_kind":"plain","optional":true},"expired_object_delete_marker":{"type":"bool","description_kind":"plain","optional":true}},"description_kind":"plain"},"max_items":1},"filter":{"nesting_mode":"list","block":{"attributes":{"object_size_greater_than":{"type":"number","description_kind":"plain","optional":true},"object_size_less_than":{"type":"number","description_kind":"plain","optional":true},"prefix":{"type":"string","description_kind":"plain","optional":true}},"block_types":{"and":{"nesting_mode":"list","block":{"attributes":{"object_size_greater_than":{"type":"number","description_kind":"plain","optional":true},"object_size_less_than":{"type":"number","description_kind":"plain","optional":true},"prefix":{"type":"string","description_kind":"plain","optional":true},"tags":{"type":["map","string"],"description_kind":"plain","optional":true}},"description_kind":"plain"},"max_items":1},"tag":{"nesting_mode":"list","block":{"attributes":{"key":{"type":"string","description_kind":"plain","required":true},"value":{"type":"string","description_kind":"plain","required":true}},"description_kind":"plain"},"max_items":1}},"description_kind":"plain"},"max_items":1},"noncurrent_version_expiration":{"nesting_mode":"list","block":{"attributes":{"days":{"type":"number","description_kind":"plain","optional":true}},"description_kind":"plain"},"max_items":1},"noncurrent_version_transition":{"nesting_mode":"set","block":{"attributes":{"days":{"type":"number","description_kind":"plain","optional":true},"storage_class":{"type":"string","description_kind":"plain","required":true}},"description_kind":"plain"}},"transition":{"nesting_mode":"set","block":{"attributes":{"date":{"type":"string","description_kind":"plain","optional":true},"days":{"type":"number","description_kind":"plain","optional":true},"storage_class":{"type":"string","description_kind":"plain","required":true}},"description_kind":"plain"}}},"description_kind":"plain"}},"logging":{"nesting_mode":"set","block":{"attributes":{"target_bucket":{"type":"string","description_kind":"plain","required":true},"target_prefix":{"type":"string","description_kind":"plain","optional":true}},"description_kind":"plain"}},"object_lock_configuration":{"nesting_mode":"list","block":{"attributes":{"object_lock_enabled":{"type":"string","description_kind":"plain","optional":true}},"block_types":{"rule":{"nesting_mode":"list","block":{"block_types":{"default_retention":{"nesting_mode":"list","block":{"attributes":{"days":{"type":"number","description_kind":"plain","optional":true},"mode":{"type":"string","description_kind":"plain","required":true},"years":{"type":"number","description_kind":"plain","optional":true}},"description_kind":"plain"},"min_items":1,"max_items":1}},"description_kind":"plain"},"max_items":1}},"description_kind":"plain"},"max_items":1},"server_side_encryption_configuration":{"nesting_mode":"list","block":{"block_types":{"rule":{"nesting_mode":"list","block":{"block_types":{"apply_server_side_encryption_by_default":{"nesting_mode":"list","block":{"attributes":{"kms_master_key_id":{"type":"string","description_kind":"plain","required":true},"sse_algorithm":{"type":"string","description_kind":"plain","required":true}},"description_kind":"plain"},"min_items":1,"max_items":1}},"description_kind":"plain"},"min_items":1,"max_items":1}},"description_kind":"plain"},"max_items":1},"versioning":{"nesting_mode":"list","block":{"attributes":{"enabled":{"type":"bool","description_kind":"plain","optional":true}},"description_kind":"plain"},"max_items":1},"website":{"nesting_mode":"list","block":{"attributes":{"error_document":{"type":"string","description_kind":"plain","optional":true},"index_document":{"type":"string","description_kind":"plain","optional":true},"redirect_all_requests_to":{"type":"string","description_kind":"plain","optional":true},"routing_rules":{"type":"string","description_kind":"plain","optional":true}},"description_kind":"plain"},"max_items":1}},"description_kind":"plain"}},"yandex_storage_object":{"version":0,"block":{"attributes":{"access_key":{"type":"string","description_kind":"plain","optional":true},"acl":{"type":"string","description_kind":"plain","optional":true},"bucket":{"type":"string","description_kind":"plain","required":true},"content":{"type":"string","description_kind":"plain","optional":true},"content_base64":{"type":"string","description_kind":"plain","optional":true},"content_type":{"type":"string","description_kind":"plain","optional":true,"computed":true},"id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"key":{"type":"string","description_kind":"plain","required":true},"object_lock_legal_hold_status":{"type":"string","description_kind":"plain","optional":true},"object_lock_mode":{"type":"string","description_kind":"plain","optional":true},"object_lock_retain_until_date":{"type":"string","description_kind":"plain","optional":true},"secret_key":{"type":"string","description_kind":"plain","optional":true,"sensitive":true},"source":{"type":"string","description_kind":"plain","optional":true},"source_hash":{"type":"string","description_kind":"plain","optional":true},"tags":{"type":["map","string"],"description_kind":"plain","optional":true}},"description_kind":"plain"}},"yandex_sws_advanced_rate_limiter_profile":{"version":1,"block":{"attributes":{"cloud_id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"created_at":{"type":"string","description_kind":"plain","computed":true},"description":{"type":"string","description_kind":"plain","optional":true},"folder_id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"labels":{"type":["map","string"],"description_kind":"plain","optional":true},"name":{"type":"string","description_kind":"plain","optional":true}},"block_types":{"advanced_rate_limiter_rule":{"nesting_mode":"list","block":{"attributes":{"description":{"type":"string","description_kind":"plain","optional":true},"dry_run":{"type":"bool","description_kind":"plain","optional":true},"name":{"type":"string","description_kind":"plain","optional":true},"priority":{"type":"number","description_kind":"plain","optional":true}},"block_types":{"dynamic_quota":{"nesting_mode":"list","block":{"attributes":{"action":{"type":"string","description_kind":"plain","optional":true},"limit":{"type":"number","description_kind":"plain","optional":true},"period":{"type":"number","description_kind":"plain","optional":true}},"block_types":{"characteristic":{"nesting_mode":"list","block":{"attributes":{"case_insensitive":{"type":"bool","description_kind":"plain","optional":true}},"block_types":{"key_characteristic":{"nesting_mode":"list","block":{"attributes":{"type":{"type":"string","description_kind":"plain","optional":true},"value":{"type":"string","description_kind":"plain","optional":true}},"description_kind":"plain"},"max_items":1},"simple_characteristic":{"nesting_mode":"list","block":{"attributes":{"type":{"type":"string","description_kind":"plain","optional":true}},"description_kind":"plain"},"max_items":1}},"description_kind":"plain"}},"condition":{"nesting_mode":"list","block":{"block_types":{"authority":{"nesting_mode":"list","block":{"block_types":{"authorities":{"nesting_mode":"list","block":{"attributes":{"exact_match":{"type":"string","description_kind":"plain","optional":true},"exact_not_match":{"type":"string","description_kind":"plain","optional":true},"pire_regex_match":{"type":"string","description_kind":"plain","optional":true},"pire_regex_not_match":{"type":"string","description_kind":"plain","optional":true},"prefix_match":{"type":"string","description_kind":"plain","optional":true},"prefix_not_match":{"type":"string","description_kind":"plain","optional":true}},"description_kind":"plain"}}},"description_kind":"plain"},"max_items":1},"headers":{"nesting_mode":"list","block":{"attributes":{"name":{"type":"string","description_kind":"plain","optional":true}},"block_types":{"value":{"nesting_mode":"list","block":{"attributes":{"exact_match":{"type":"string","description_kind":"plain","optional":true},"exact_not_match":{"type":"string","description_kind":"plain","optional":true},"pire_regex_match":{"type":"string","description_kind":"plain","optional":true},"pire_regex_not_match":{"type":"string","description_kind":"plain","optional":true},"prefix_match":{"type":"string","description_kind":"plain","optional":true},"prefix_not_match":{"type":"string","description_kind":"plain","optional":true}},"description_kind":"plain"},"min_items":1,"max_items":1}},"description_kind":"plain"}},"http_method":{"nesting_mode":"list","block":{"block_types":{"http_methods":{"nesting_mode":"list","block":{"attributes":{"exact_match":{"type":"string","description_kind":"plain","optional":true},"exact_not_match":{"type":"string","description_kind":"plain","optional":true},"pire_regex_match":{"type":"string","description_kind":"plain","optional":true},"pire_regex_not_match":{"type":"string","description_kind":"plain","optional":true},"prefix_match":{"type":"string","description_kind":"plain","optional":true},"prefix_not_match":{"type":"string","description_kind":"plain","optional":true}},"description_kind":"plain"}}},"description_kind":"plain"},"max_items":1},"request_uri":{"nesting_mode":"list","block":{"block_types":{"path":{"nesting_mode":"list","block":{"attributes":{"exact_match":{"type":"string","description_kind":"plain","optional":true},"exact_not_match":{"type":"string","description_kind":"plain","optional":true},"pire_regex_match":{"type":"string","description_kind":"plain","optional":true},"pire_regex_not_match":{"type":"string","description_kind":"plain","optional":true},"prefix_match":{"type":"string","description_kind":"plain","optional":true},"prefix_not_match":{"type":"string","description_kind":"plain","optional":true}},"description_kind":"plain"},"max_items":1},"queries":{"nesting_mode":"list","block":{"attributes":{"key":{"type":"string","description_kind":"plain","required":true}},"block_types":{"value":{"nesting_mode":"list","block":{"attributes":{"exact_match":{"type":"string","description_kind":"plain","optional":true},"exact_not_match":{"type":"string","description_kind":"plain","optional":true},"pire_regex_match":{"type":"string","description_kind":"plain","optional":true},"pire_regex_not_match":{"type":"string","description_kind":"plain","optional":true},"prefix_match":{"type":"string","description_kind":"plain","optional":true},"prefix_not_match":{"type":"string","description_kind":"plain","optional":true}},"description_kind":"plain"},"min_items":1,"max_items":1}},"description_kind":"plain"}}},"description_kind":"plain"},"max_items":1},"source_ip":{"nesting_mode":"list","block":{"block_types":{"geo_ip_match":{"nesting_mode":"list","block":{"attributes":{"locations":{"type":["list","string"],"description_kind":"plain","optional":true}},"description_kind":"plain"},"max_items":1},"geo_ip_not_match":{"nesting_mode":"list","block":{"attributes":{"locations":{"type":["list","string"],"description_kind":"plain","optional":true}},"description_kind":"plain"},"max_items":1},"ip_ranges_match":{"nesting_mode":"list","block":{"attributes":{"ip_ranges":{"type":["list","string"],"description_kind":"plain","optional":true}},"description_kind":"plain"},"max_items":1},"ip_ranges_not_match":{"nesting_mode":"list","block":{"attributes":{"ip_ranges":{"type":["list","string"],"description_kind":"plain","optional":true}},"description_kind":"plain"},"max_items":1}},"description_kind":"plain"},"max_items":1}},"description_kind":"plain"},"max_items":1}},"description_kind":"plain"},"max_items":1},"static_quota":{"nesting_mode":"list","block":{"attributes":{"action":{"type":"string","description_kind":"plain","optional":true},"limit":{"type":"number","description_kind":"plain","optional":true},"period":{"type":"number","description_kind":"plain","optional":true}},"block_types":{"condition":{"nesting_mode":"list","block":{"block_types":{"authority":{"nesting_mode":"list","block":{"block_types":{"authorities":{"nesting_mode":"list","block":{"attributes":{"exact_match":{"type":"string","description_kind":"plain","optional":true},"exact_not_match":{"type":"string","description_kind":"plain","optional":true},"pire_regex_match":{"type":"string","description_kind":"plain","optional":true},"pire_regex_not_match":{"type":"string","description_kind":"plain","optional":true},"prefix_match":{"type":"string","description_kind":"plain","optional":true},"prefix_not_match":{"type":"string","description_kind":"plain","optional":true}},"description_kind":"plain"}}},"description_kind":"plain"},"max_items":1},"headers":{"nesting_mode":"list","block":{"attributes":{"name":{"type":"string","description_kind":"plain","optional":true}},"block_types":{"value":{"nesting_mode":"list","block":{"attributes":{"exact_match":{"type":"string","description_kind":"plain","optional":true},"exact_not_match":{"type":"string","description_kind":"plain","optional":true},"pire_regex_match":{"type":"string","description_kind":"plain","optional":true},"pire_regex_not_match":{"type":"string","description_kind":"plain","optional":true},"prefix_match":{"type":"string","description_kind":"plain","optional":true},"prefix_not_match":{"type":"string","description_kind":"plain","optional":true}},"description_kind":"plain"},"min_items":1,"max_items":1}},"description_kind":"plain"}},"http_method":{"nesting_mode":"list","block":{"block_types":{"http_methods":{"nesting_mode":"list","block":{"attributes":{"exact_match":{"type":"string","description_kind":"plain","optional":true},"exact_not_match":{"type":"string","description_kind":"plain","optional":true},"pire_regex_match":{"type":"string","description_kind":"plain","optional":true},"pire_regex_not_match":{"type":"string","description_kind":"plain","optional":true},"prefix_match":{"type":"string","description_kind":"plain","optional":true},"prefix_not_match":{"type":"string","description_kind":"plain","optional":true}},"description_kind":"plain"}}},"description_kind":"plain"},"max_items":1},"request_uri":{"nesting_mode":"list","block":{"block_types":{"path":{"nesting_mode":"list","block":{"attributes":{"exact_match":{"type":"string","description_kind":"plain","optional":true},"exact_not_match":{"type":"string","description_kind":"plain","optional":true},"pire_regex_match":{"type":"string","description_kind":"plain","optional":true},"pire_regex_not_match":{"type":"string","description_kind":"plain","optional":true},"prefix_match":{"type":"string","description_kind":"plain","optional":true},"prefix_not_match":{"type":"string","description_kind":"plain","optional":true}},"description_kind":"plain"},"max_items":1},"queries":{"nesting_mode":"list","block":{"attributes":{"key":{"type":"string","description_kind":"plain","required":true}},"block_types":{"value":{"nesting_mode":"list","block":{"attributes":{"exact_match":{"type":"string","description_kind":"plain","optional":true},"exact_not_match":{"type":"string","description_kind":"plain","optional":true},"pire_regex_match":{"type":"string","description_kind":"plain","optional":true},"pire_regex_not_match":{"type":"string","description_kind":"plain","optional":true},"prefix_match":{"type":"string","description_kind":"plain","optional":true},"prefix_not_match":{"type":"string","description_kind":"plain","optional":true}},"description_kind":"plain"},"min_items":1,"max_items":1}},"description_kind":"plain"}}},"description_kind":"plain"},"max_items":1},"source_ip":{"nesting_mode":"list","block":{"block_types":{"geo_ip_match":{"nesting_mode":"list","block":{"attributes":{"locations":{"type":["list","string"],"description_kind":"plain","optional":true}},"description_kind":"plain"},"max_items":1},"geo_ip_not_match":{"nesting_mode":"list","block":{"attributes":{"locations":{"type":["list","string"],"description_kind":"plain","optional":true}},"description_kind":"plain"},"max_items":1},"ip_ranges_match":{"nesting_mode":"list","block":{"attributes":{"ip_ranges":{"type":["list","string"],"description_kind":"plain","optional":true}},"description_kind":"plain"},"max_items":1},"ip_ranges_not_match":{"nesting_mode":"list","block":{"attributes":{"ip_ranges":{"type":["list","string"],"description_kind":"plain","optional":true}},"description_kind":"plain"},"max_items":1}},"description_kind":"plain"},"max_items":1}},"description_kind":"plain"},"max_items":1}},"description_kind":"plain"},"max_items":1}},"description_kind":"plain"}},"timeouts":{"nesting_mode":"single","block":{"attributes":{"create":{"type":"string","description_kind":"plain","optional":true},"delete":{"type":"string","description_kind":"plain","optional":true},"read":{"type":"string","description_kind":"plain","optional":true},"update":{"type":"string","description_kind":"plain","optional":true}},"description_kind":"plain"}}},"description_kind":"plain"}},"yandex_sws_security_profile":{"version":1,"block":{"attributes":{"advanced_rate_limiter_profile_id":{"type":"string","description_kind":"plain","optional":true},"captcha_id":{"type":"string","description_kind":"plain","optional":true},"cloud_id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"created_at":{"type":"string","description_kind":"plain","computed":true},"default_action":{"type":"string","description_kind":"plain","optional":true},"description":{"type":"string","description_kind":"plain","optional":true},"folder_id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"labels":{"type":["map","string"],"description_kind":"plain","optional":true},"name":{"type":"string","description_kind":"plain","optional":true}},"block_types":{"security_rule":{"nesting_mode":"list","block":{"attributes":{"description":{"type":"string","description_kind":"plain","optional":true},"dry_run":{"type":"bool","description_kind":"plain","optional":true},"name":{"type":"string","description_kind":"plain","optional":true},"priority":{"type":"number","description_kind":"plain","optional":true}},"block_types":{"rule_condition":{"nesting_mode":"list","block":{"attributes":{"action":{"type":"string","description_kind":"plain","optional":true}},"block_types":{"condition":{"nesting_mode":"list","block":{"block_types":{"authority":{"nesting_mode":"list","block":{"block_types":{"authorities":{"nesting_mode":"list","block":{"attributes":{"exact_match":{"type":"string","description_kind":"plain","optional":true},"exact_not_match":{"type":"string","description_kind":"plain","optional":true},"pire_regex_match":{"type":"string","description_kind":"plain","optional":true},"pire_regex_not_match":{"type":"string","description_kind":"plain","optional":true},"prefix_match":{"type":"string","description_kind":"plain","optional":true},"prefix_not_match":{"type":"string","description_kind":"plain","optional":true}},"description_kind":"plain"}}},"description_kind":"plain"},"max_items":1},"headers":{"nesting_mode":"list","block":{"attributes":{"name":{"type":"string","description_kind":"plain","optional":true}},"block_types":{"value":{"nesting_mode":"list","block":{"attributes":{"exact_match":{"type":"string","description_kind":"plain","optional":true},"exact_not_match":{"type":"string","description_kind":"plain","optional":true},"pire_regex_match":{"type":"string","description_kind":"plain","optional":true},"pire_regex_not_match":{"type":"string","description_kind":"plain","optional":true},"prefix_match":{"type":"string","description_kind":"plain","optional":true},"prefix_not_match":{"type":"string","description_kind":"plain","optional":true}},"description_kind":"plain"},"min_items":1,"max_items":1}},"description_kind":"plain"}},"http_method":{"nesting_mode":"list","block":{"block_types":{"http_methods":{"nesting_mode":"list","block":{"attributes":{"exact_match":{"type":"string","description_kind":"plain","optional":true},"exact_not_match":{"type":"string","description_kind":"plain","optional":true},"pire_regex_match":{"type":"string","description_kind":"plain","optional":true},"pire_regex_not_match":{"type":"string","description_kind":"plain","optional":true},"prefix_match":{"type":"string","description_kind":"plain","optional":true},"prefix_not_match":{"type":"string","description_kind":"plain","optional":true}},"description_kind":"plain"}}},"description_kind":"plain"},"max_items":1},"request_uri":{"nesting_mode":"list","block":{"block_types":{"path":{"nesting_mode":"list","block":{"attributes":{"exact_match":{"type":"string","description_kind":"plain","optional":true},"exact_not_match":{"type":"string","description_kind":"plain","optional":true},"pire_regex_match":{"type":"string","description_kind":"plain","optional":true},"pire_regex_not_match":{"type":"string","description_kind":"plain","optional":true},"prefix_match":{"type":"string","description_kind":"plain","optional":true},"prefix_not_match":{"type":"string","description_kind":"plain","optional":true}},"description_kind":"plain"},"max_items":1},"queries":{"nesting_mode":"list","block":{"attributes":{"key":{"type":"string","description_kind":"plain","required":true}},"block_types":{"value":{"nesting_mode":"list","block":{"attributes":{"exact_match":{"type":"string","description_kind":"plain","optional":true},"exact_not_match":{"type":"string","description_kind":"plain","optional":true},"pire_regex_match":{"type":"string","description_kind":"plain","optional":true},"pire_regex_not_match":{"type":"string","description_kind":"plain","optional":true},"prefix_match":{"type":"string","description_kind":"plain","optional":true},"prefix_not_match":{"type":"string","description_kind":"plain","optional":true}},"description_kind":"plain"},"min_items":1,"max_items":1}},"description_kind":"plain"}}},"description_kind":"plain"},"max_items":1},"source_ip":{"nesting_mode":"list","block":{"block_types":{"geo_ip_match":{"nesting_mode":"list","block":{"attributes":{"locations":{"type":["list","string"],"description_kind":"plain","optional":true}},"description_kind":"plain"},"max_items":1},"geo_ip_not_match":{"nesting_mode":"list","block":{"attributes":{"locations":{"type":["list","string"],"description_kind":"plain","optional":true}},"description_kind":"plain"},"max_items":1},"ip_ranges_match":{"nesting_mode":"list","block":{"attributes":{"ip_ranges":{"type":["list","string"],"description_kind":"plain","optional":true}},"description_kind":"plain"},"max_items":1},"ip_ranges_not_match":{"nesting_mode":"list","block":{"attributes":{"ip_ranges":{"type":["list","string"],"description_kind":"plain","optional":true}},"description_kind":"plain"},"max_items":1}},"description_kind":"plain"},"max_items":1}},"description_kind":"plain"},"max_items":1}},"description_kind":"plain"},"max_items":1},"smart_protection":{"nesting_mode":"list","block":{"attributes":{"mode":{"type":"string","description_kind":"plain","optional":true}},"block_types":{"condition":{"nesting_mode":"list","block":{"block_types":{"authority":{"nesting_mode":"list","block":{"block_types":{"authorities":{"nesting_mode":"list","block":{"attributes":{"exact_match":{"type":"string","description_kind":"plain","optional":true},"exact_not_match":{"type":"string","description_kind":"plain","optional":true},"pire_regex_match":{"type":"string","description_kind":"plain","optional":true},"pire_regex_not_match":{"type":"string","description_kind":"plain","optional":true},"prefix_match":{"type":"string","description_kind":"plain","optional":true},"prefix_not_match":{"type":"string","description_kind":"plain","optional":true}},"description_kind":"plain"}}},"description_kind":"plain"},"max_items":1},"headers":{"nesting_mode":"list","block":{"attributes":{"name":{"type":"string","description_kind":"plain","optional":true}},"block_types":{"value":{"nesting_mode":"list","block":{"attributes":{"exact_match":{"type":"string","description_kind":"plain","optional":true},"exact_not_match":{"type":"string","description_kind":"plain","optional":true},"pire_regex_match":{"type":"string","description_kind":"plain","optional":true},"pire_regex_not_match":{"type":"string","description_kind":"plain","optional":true},"prefix_match":{"type":"string","description_kind":"plain","optional":true},"prefix_not_match":{"type":"string","description_kind":"plain","optional":true}},"description_kind":"plain"},"min_items":1,"max_items":1}},"description_kind":"plain"}},"http_method":{"nesting_mode":"list","block":{"block_types":{"http_methods":{"nesting_mode":"list","block":{"attributes":{"exact_match":{"type":"string","description_kind":"plain","optional":true},"exact_not_match":{"type":"string","description_kind":"plain","optional":true},"pire_regex_match":{"type":"string","description_kind":"plain","optional":true},"pire_regex_not_match":{"type":"string","description_kind":"plain","optional":true},"prefix_match":{"type":"string","description_kind":"plain","optional":true},"prefix_not_match":{"type":"string","description_kind":"plain","optional":true}},"description_kind":"plain"}}},"description_kind":"plain"},"max_items":1},"request_uri":{"nesting_mode":"list","block":{"block_types":{"path":{"nesting_mode":"list","block":{"attributes":{"exact_match":{"type":"string","description_kind":"plain","optional":true},"exact_not_match":{"type":"string","description_kind":"plain","optional":true},"pire_regex_match":{"type":"string","description_kind":"plain","optional":true},"pire_regex_not_match":{"type":"string","description_kind":"plain","optional":true},"prefix_match":{"type":"string","description_kind":"plain","optional":true},"prefix_not_match":{"type":"string","description_kind":"plain","optional":true}},"description_kind":"plain"},"max_items":1},"queries":{"nesting_mode":"list","block":{"attributes":{"key":{"type":"string","description_kind":"plain","required":true}},"block_types":{"value":{"nesting_mode":"list","block":{"attributes":{"exact_match":{"type":"string","description_kind":"plain","optional":true},"exact_not_match":{"type":"string","description_kind":"plain","optional":true},"pire_regex_match":{"type":"string","description_kind":"plain","optional":true},"pire_regex_not_match":{"type":"string","description_kind":"plain","optional":true},"prefix_match":{"type":"string","description_kind":"plain","optional":true},"prefix_not_match":{"type":"string","description_kind":"plain","optional":true}},"description_kind":"plain"},"min_items":1,"max_items":1}},"description_kind":"plain"}}},"description_kind":"plain"},"max_items":1},"source_ip":{"nesting_mode":"list","block":{"block_types":{"geo_ip_match":{"nesting_mode":"list","block":{"attributes":{"locations":{"type":["list","string"],"description_kind":"plain","optional":true}},"description_kind":"plain"},"max_items":1},"geo_ip_not_match":{"nesting_mode":"list","block":{"attributes":{"locations":{"type":["list","string"],"description_kind":"plain","optional":true}},"description_kind":"plain"},"max_items":1},"ip_ranges_match":{"nesting_mode":"list","block":{"attributes":{"ip_ranges":{"type":["list","string"],"description_kind":"plain","optional":true}},"description_kind":"plain"},"max_items":1},"ip_ranges_not_match":{"nesting_mode":"list","block":{"attributes":{"ip_ranges":{"type":["list","string"],"description_kind":"plain","optional":true}},"description_kind":"plain"},"max_items":1}},"description_kind":"plain"},"max_items":1}},"description_kind":"plain"},"max_items":1}},"description_kind":"plain"},"max_items":1},"waf":{"nesting_mode":"list","block":{"attributes":{"mode":{"type":"string","description_kind":"plain","optional":true},"waf_profile_id":{"type":"string","description_kind":"plain","required":true}},"block_types":{"condition":{"nesting_mode":"list","block":{"block_types":{"authority":{"nesting_mode":"list","block":{"block_types":{"authorities":{"nesting_mode":"list","block":{"attributes":{"exact_match":{"type":"string","description_kind":"plain","optional":true},"exact_not_match":{"type":"string","description_kind":"plain","optional":true},"pire_regex_match":{"type":"string","description_kind":"plain","optional":true},"pire_regex_not_match":{"type":"string","description_kind":"plain","optional":true},"prefix_match":{"type":"string","description_kind":"plain","optional":true},"prefix_not_match":{"type":"string","description_kind":"plain","optional":true}},"description_kind":"plain"}}},"description_kind":"plain"},"max_items":1},"headers":{"nesting_mode":"list","block":{"attributes":{"name":{"type":"string","description_kind":"plain","optional":true}},"block_types":{"value":{"nesting_mode":"list","block":{"attributes":{"exact_match":{"type":"string","description_kind":"plain","optional":true},"exact_not_match":{"type":"string","description_kind":"plain","optional":true},"pire_regex_match":{"type":"string","description_kind":"plain","optional":true},"pire_regex_not_match":{"type":"string","description_kind":"plain","optional":true},"prefix_match":{"type":"string","description_kind":"plain","optional":true},"prefix_not_match":{"type":"string","description_kind":"plain","optional":true}},"description_kind":"plain"},"min_items":1,"max_items":1}},"description_kind":"plain"}},"http_method":{"nesting_mode":"list","block":{"block_types":{"http_methods":{"nesting_mode":"list","block":{"attributes":{"exact_match":{"type":"string","description_kind":"plain","optional":true},"exact_not_match":{"type":"string","description_kind":"plain","optional":true},"pire_regex_match":{"type":"string","description_kind":"plain","optional":true},"pire_regex_not_match":{"type":"string","description_kind":"plain","optional":true},"prefix_match":{"type":"string","description_kind":"plain","optional":true},"prefix_not_match":{"type":"string","description_kind":"plain","optional":true}},"description_kind":"plain"}}},"description_kind":"plain"},"max_items":1},"request_uri":{"nesting_mode":"list","block":{"block_types":{"path":{"nesting_mode":"list","block":{"attributes":{"exact_match":{"type":"string","description_kind":"plain","optional":true},"exact_not_match":{"type":"string","description_kind":"plain","optional":true},"pire_regex_match":{"type":"string","description_kind":"plain","optional":true},"pire_regex_not_match":{"type":"string","description_kind":"plain","optional":true},"prefix_match":{"type":"string","description_kind":"plain","optional":true},"prefix_not_match":{"type":"string","description_kind":"plain","optional":true}},"description_kind":"plain"},"max_items":1},"queries":{"nesting_mode":"list","block":{"attributes":{"key":{"type":"string","description_kind":"plain","required":true}},"block_types":{"value":{"nesting_mode":"list","block":{"attributes":{"exact_match":{"type":"string","description_kind":"plain","optional":true},"exact_not_match":{"type":"string","description_kind":"plain","optional":true},"pire_regex_match":{"type":"string","description_kind":"plain","optional":true},"pire_regex_not_match":{"type":"string","description_kind":"plain","optional":true},"prefix_match":{"type":"string","description_kind":"plain","optional":true},"prefix_not_match":{"type":"string","description_kind":"plain","optional":true}},"description_kind":"plain"},"min_items":1,"max_items":1}},"description_kind":"plain"}}},"description_kind":"plain"},"max_items":1},"source_ip":{"nesting_mode":"list","block":{"block_types":{"geo_ip_match":{"nesting_mode":"list","block":{"attributes":{"locations":{"type":["list","string"],"description_kind":"plain","optional":true}},"description_kind":"plain"},"max_items":1},"geo_ip_not_match":{"nesting_mode":"list","block":{"attributes":{"locations":{"type":["list","string"],"description_kind":"plain","optional":true}},"description_kind":"plain"},"max_items":1},"ip_ranges_match":{"nesting_mode":"list","block":{"attributes":{"ip_ranges":{"type":["list","string"],"description_kind":"plain","optional":true}},"description_kind":"plain"},"max_items":1},"ip_ranges_not_match":{"nesting_mode":"list","block":{"attributes":{"ip_ranges":{"type":["list","string"],"description_kind":"plain","optional":true}},"description_kind":"plain"},"max_items":1}},"description_kind":"plain"},"max_items":1}},"description_kind":"plain"},"max_items":1}},"description_kind":"plain"},"max_items":1}},"description_kind":"plain"}},"timeouts":{"nesting_mode":"single","block":{"attributes":{"create":{"type":"string","description_kind":"plain","optional":true},"delete":{"type":"string","description_kind":"plain","optional":true},"read":{"type":"string","description_kind":"plain","optional":true},"update":{"type":"string","description_kind":"plain","optional":true}},"description_kind":"plain"}}},"description_kind":"plain"}},"yandex_sws_waf_profile":{"version":1,"block":{"attributes":{"cloud_id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"created_at":{"type":"string","description_kind":"plain","computed":true},"description":{"type":"string","description_kind":"plain","optional":true},"folder_id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"labels":{"type":["map","string"],"description_kind":"plain","optional":true},"name":{"type":"string","description_kind":"plain","optional":true}},"block_types":{"analyze_request_body":{"nesting_mode":"list","block":{"attributes":{"is_enabled":{"type":"bool","description_kind":"plain","optional":true},"size_limit":{"type":"number","description_kind":"plain","optional":true},"size_limit_action":{"type":"string","description_kind":"plain","optional":true}},"description_kind":"plain"},"max_items":1},"core_rule_set":{"nesting_mode":"list","block":{"attributes":{"inbound_anomaly_score":{"type":"number","description_kind":"plain","optional":true},"paranoia_level":{"type":"number","description_kind":"plain","optional":true}},"block_types":{"rule_set":{"nesting_mode":"list","block":{"attributes":{"name":{"type":"string","description_kind":"plain","optional":true},"version":{"type":"string","description_kind":"plain","required":true}},"description_kind":"plain"},"min_items":1,"max_items":1}},"description_kind":"plain"},"max_items":1},"exclusion_rule":{"nesting_mode":"list","block":{"attributes":{"description":{"type":"string","description_kind":"plain","optional":true},"log_excluded":{"type":"bool","description_kind":"plain","optional":true},"name":{"type":"string","description_kind":"plain","optional":true}},"block_types":{"condition":{"nesting_mode":"list","block":{"block_types":{"authority":{"nesting_mode":"list","block":{"block_types":{"authorities":{"nesting_mode":"list","block":{"attributes":{"exact_match":{"type":"string","description_kind":"plain","optional":true},"exact_not_match":{"type":"string","description_kind":"plain","optional":true},"pire_regex_match":{"type":"string","description_kind":"plain","optional":true},"pire_regex_not_match":{"type":"string","description_kind":"plain","optional":true},"prefix_match":{"type":"string","description_kind":"plain","optional":true},"prefix_not_match":{"type":"string","description_kind":"plain","optional":true}},"description_kind":"plain"}}},"description_kind":"plain"},"max_items":1},"headers":{"nesting_mode":"list","block":{"attributes":{"name":{"type":"string","description_kind":"plain","optional":true}},"block_types":{"value":{"nesting_mode":"list","block":{"attributes":{"exact_match":{"type":"string","description_kind":"plain","optional":true},"exact_not_match":{"type":"string","description_kind":"plain","optional":true},"pire_regex_match":{"type":"string","description_kind":"plain","optional":true},"pire_regex_not_match":{"type":"string","description_kind":"plain","optional":true},"prefix_match":{"type":"string","description_kind":"plain","optional":true},"prefix_not_match":{"type":"string","description_kind":"plain","optional":true}},"description_kind":"plain"},"min_items":1,"max_items":1}},"description_kind":"plain"}},"http_method":{"nesting_mode":"list","block":{"block_types":{"http_methods":{"nesting_mode":"list","block":{"attributes":{"exact_match":{"type":"string","description_kind":"plain","optional":true},"exact_not_match":{"type":"string","description_kind":"plain","optional":true},"pire_regex_match":{"type":"string","description_kind":"plain","optional":true},"pire_regex_not_match":{"type":"string","description_kind":"plain","optional":true},"prefix_match":{"type":"string","description_kind":"plain","optional":true},"prefix_not_match":{"type":"string","description_kind":"plain","optional":true}},"description_kind":"plain"}}},"description_kind":"plain"},"max_items":1},"request_uri":{"nesting_mode":"list","block":{"block_types":{"path":{"nesting_mode":"list","block":{"attributes":{"exact_match":{"type":"string","description_kind":"plain","optional":true},"exact_not_match":{"type":"string","description_kind":"plain","optional":true},"pire_regex_match":{"type":"string","description_kind":"plain","optional":true},"pire_regex_not_match":{"type":"string","description_kind":"plain","optional":true},"prefix_match":{"type":"string","description_kind":"plain","optional":true},"prefix_not_match":{"type":"string","description_kind":"plain","optional":true}},"description_kind":"plain"},"max_items":1},"queries":{"nesting_mode":"list","block":{"attributes":{"key":{"type":"string","description_kind":"plain","required":true}},"block_types":{"value":{"nesting_mode":"list","block":{"attributes":{"exact_match":{"type":"string","description_kind":"plain","optional":true},"exact_not_match":{"type":"string","description_kind":"plain","optional":true},"pire_regex_match":{"type":"string","description_kind":"plain","optional":true},"pire_regex_not_match":{"type":"string","description_kind":"plain","optional":true},"prefix_match":{"type":"string","description_kind":"plain","optional":true},"prefix_not_match":{"type":"string","description_kind":"plain","optional":true}},"description_kind":"plain"},"min_items":1,"max_items":1}},"description_kind":"plain"}}},"description_kind":"plain"},"max_items":1},"source_ip":{"nesting_mode":"list","block":{"block_types":{"geo_ip_match":{"nesting_mode":"list","block":{"attributes":{"locations":{"type":["list","string"],"description_kind":"plain","optional":true}},"description_kind":"plain"},"max_items":1},"geo_ip_not_match":{"nesting_mode":"list","block":{"attributes":{"locations":{"type":["list","string"],"description_kind":"plain","optional":true}},"description_kind":"plain"},"max_items":1},"ip_ranges_match":{"nesting_mode":"list","block":{"attributes":{"ip_ranges":{"type":["list","string"],"description_kind":"plain","optional":true}},"description_kind":"plain"},"max_items":1},"ip_ranges_not_match":{"nesting_mode":"list","block":{"attributes":{"ip_ranges":{"type":["list","string"],"description_kind":"plain","optional":true}},"description_kind":"plain"},"max_items":1}},"description_kind":"plain"},"max_items":1}},"description_kind":"plain"},"max_items":1},"exclude_rules":{"nesting_mode":"list","block":{"attributes":{"exclude_all":{"type":"bool","description_kind":"plain","optional":true},"rule_ids":{"type":["list","string"],"description_kind":"plain","optional":true}},"description_kind":"plain"},"min_items":1,"max_items":1}},"description_kind":"plain"}},"rule":{"nesting_mode":"list","block":{"attributes":{"is_blocking":{"type":"bool","description_kind":"plain","optional":true},"is_enabled":{"type":"bool","description_kind":"plain","optional":true},"rule_id":{"type":"string","description_kind":"plain","required":true}},"description_kind":"plain"}},"timeouts":{"nesting_mode":"single","block":{"attributes":{"create":{"type":"string","description_kind":"plain","optional":true},"delete":{"type":"string","description_kind":"plain","optional":true},"read":{"type":"string","description_kind":"plain","optional":true},"update":{"type":"string","description_kind":"plain","optional":true}},"description_kind":"plain"}}},"description_kind":"plain"}},"yandex_vpc_address":{"version":0,"block":{"attributes":{"created_at":{"type":"string","description_kind":"plain","computed":true},"deletion_protection":{"type":"bool","description_kind":"plain","optional":true,"computed":true},"description":{"type":"string","description_kind":"plain","optional":true},"folder_id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"labels":{"type":["map","string"],"description_kind":"plain","optional":true,"computed":true},"name":{"type":"string","description_kind":"plain","optional":true,"computed":true},"reserved":{"type":"bool","description_kind":"plain","computed":true},"used":{"type":"bool","description_kind":"plain","computed":true}},"block_types":{"dns_record":{"nesting_mode":"list","block":{"attributes":{"dns_zone_id":{"type":"string","description_kind":"plain","required":true},"fqdn":{"type":"string","description_kind":"plain","required":true},"ptr":{"type":"bool","description_kind":"plain","optional":true},"ttl":{"type":"number","description_kind":"plain","optional":true}},"description_kind":"plain"}},"external_ipv4_address":{"nesting_mode":"list","block":{"attributes":{"address":{"type":"string","description_kind":"plain","computed":true},"ddos_protection_provider":{"type":"string","description_kind":"plain","optional":true,"computed":true},"outgoing_smtp_capability":{"type":"string","description_kind":"plain","optional":true,"computed":true},"zone_id":{"type":"string","description_kind":"plain","optional":true,"computed":true}},"description_kind":"plain"},"max_items":1},"timeouts":{"nesting_mode":"single","block":{"attributes":{"create":{"type":"string","description_kind":"plain","optional":true},"delete":{"type":"string","description_kind":"plain","optional":true},"update":{"type":"string","description_kind":"plain","optional":true}},"description_kind":"plain"}}},"description_kind":"plain"}},"yandex_vpc_default_security_group":{"version":0,"block":{"attributes":{"created_at":{"type":"string","description_kind":"plain","computed":true},"description":{"type":"string","description_kind":"plain","optional":true},"folder_id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"labels":{"type":["map","string"],"description_kind":"plain","optional":true,"computed":true},"name":{"type":"string","description_kind":"plain","computed":true},"network_id":{"type":"string","description_kind":"plain","required":true},"status":{"type":"string","description_kind":"plain","computed":true}},"block_types":{"egress":{"nesting_mode":"set","block":{"attributes":{"description":{"type":"string","description_kind":"plain","optional":true},"from_port":{"type":"number","description_kind":"plain","optional":true},"id":{"type":"string","description_kind":"plain","computed":true},"labels":{"type":["map","string"],"description_kind":"plain","optional":true,"computed":true},"port":{"type":"number","description_kind":"plain","optional":true},"predefined_target":{"type":"string","description_kind":"plain","optional":true},"protocol":{"type":"string","description_kind":"plain","required":true},"security_group_id":{"type":"string","description_kind":"plain","optional":true},"to_port":{"type":"number","description_kind":"plain","optional":true},"v4_cidr_blocks":{"type":["list","string"],"description_kind":"plain","optional":true},"v6_cidr_blocks":{"type":["list","string"],"description_kind":"plain","optional":true}},"description_kind":"plain"}},"ingress":{"nesting_mode":"set","block":{"attributes":{"description":{"type":"string","description_kind":"plain","optional":true},"from_port":{"type":"number","description_kind":"plain","optional":true},"id":{"type":"string","description_kind":"plain","computed":true},"labels":{"type":["map","string"],"description_kind":"plain","optional":true,"computed":true},"port":{"type":"number","description_kind":"plain","optional":true},"predefined_target":{"type":"string","description_kind":"plain","optional":true},"protocol":{"type":"string","description_kind":"plain","required":true},"security_group_id":{"type":"string","description_kind":"plain","optional":true},"to_port":{"type":"number","description_kind":"plain","optional":true},"v4_cidr_blocks":{"type":["list","string"],"description_kind":"plain","optional":true},"v6_cidr_blocks":{"type":["list","string"],"description_kind":"plain","optional":true}},"description_kind":"plain"}},"timeouts":{"nesting_mode":"single","block":{"attributes":{"create":{"type":"string","description_kind":"plain","optional":true},"delete":{"type":"string","description_kind":"plain","optional":true},"read":{"type":"string","description_kind":"plain","optional":true},"update":{"type":"string","description_kind":"plain","optional":true}},"description_kind":"plain"}}},"description_kind":"plain"}},"yandex_vpc_gateway":{"version":0,"block":{"attributes":{"created_at":{"type":"string","description_kind":"plain","computed":true},"description":{"type":"string","description_kind":"plain","optional":true},"folder_id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"labels":{"type":["map","string"],"description_kind":"plain","optional":true,"computed":true},"name":{"type":"string","description_kind":"plain","optional":true,"computed":true}},"block_types":{"shared_egress_gateway":{"nesting_mode":"list","block":{"description_kind":"plain"},"max_items":1},"timeouts":{"nesting_mode":"single","block":{"attributes":{"create":{"type":"string","description_kind":"plain","optional":true},"delete":{"type":"string","description_kind":"plain","optional":true},"update":{"type":"string","description_kind":"plain","optional":true}},"description_kind":"plain"}}},"description_kind":"plain"}},"yandex_vpc_network":{"version":0,"block":{"attributes":{"created_at":{"type":"string","description_kind":"plain","computed":true},"default_security_group_id":{"type":"string","description_kind":"plain","computed":true},"description":{"type":"string","description_kind":"plain","optional":true},"folder_id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"labels":{"type":["map","string"],"description_kind":"plain","optional":true,"computed":true},"name":{"type":"string","description_kind":"plain","optional":true,"computed":true},"subnet_ids":{"type":["list","string"],"description_kind":"plain","computed":true}},"block_types":{"timeouts":{"nesting_mode":"single","block":{"attributes":{"create":{"type":"string","description_kind":"plain","optional":true},"delete":{"type":"string","description_kind":"plain","optional":true},"update":{"type":"string","description_kind":"plain","optional":true}},"description_kind":"plain"}}},"description_kind":"plain"}},"yandex_vpc_private_endpoint":{"version":0,"block":{"attributes":{"created_at":{"type":"string","description_kind":"plain","computed":true},"description":{"type":"string","description_kind":"plain","optional":true},"folder_id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"labels":{"type":["map","string"],"description_kind":"plain","optional":true,"computed":true},"name":{"type":"string","description_kind":"plain","optional":true,"computed":true},"network_id":{"type":"string","description_kind":"plain","required":true},"status":{"type":"string","description_kind":"plain","computed":true}},"block_types":{"dns_options":{"nesting_mode":"list","block":{"attributes":{"private_dns_records_enabled":{"type":"bool","description_kind":"plain","optional":true,"computed":true}},"description_kind":"plain"},"max_items":1},"endpoint_address":{"nesting_mode":"list","block":{"attributes":{"address":{"type":"string","description_kind":"plain","optional":true,"computed":true},"address_id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"subnet_id":{"type":"string","description_kind":"plain","optional":true,"computed":true}},"description_kind":"plain"},"max_items":1},"object_storage":{"nesting_mode":"list","block":{"description_kind":"plain"},"min_items":1,"max_items":1},"timeouts":{"nesting_mode":"single","block":{"attributes":{"create":{"type":"string","description_kind":"plain","optional":true},"delete":{"type":"string","description_kind":"plain","optional":true},"update":{"type":"string","description_kind":"plain","optional":true}},"description_kind":"plain"}}},"description_kind":"plain"}},"yandex_vpc_route_table":{"version":0,"block":{"attributes":{"created_at":{"type":"string","description_kind":"plain","computed":true},"description":{"type":"string","description_kind":"plain","optional":true},"folder_id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"labels":{"type":["map","string"],"description_kind":"plain","optional":true,"computed":true},"name":{"type":"string","description_kind":"plain","optional":true},"network_id":{"type":"string","description_kind":"plain","required":true}},"block_types":{"static_route":{"nesting_mode":"set","block":{"attributes":{"destination_prefix":{"type":"string","description_kind":"plain","optional":true},"gateway_id":{"type":"string","description_kind":"plain","optional":true},"next_hop_address":{"type":"string","description_kind":"plain","optional":true}},"description_kind":"plain"}},"timeouts":{"nesting_mode":"single","block":{"attributes":{"create":{"type":"string","description_kind":"plain","optional":true},"delete":{"type":"string","description_kind":"plain","optional":true},"update":{"type":"string","description_kind":"plain","optional":true}},"description_kind":"plain"}}},"description_kind":"plain"}},"yandex_vpc_security_group":{"version":0,"block":{"attributes":{"created_at":{"type":"string","description_kind":"plain","computed":true},"description":{"type":"string","description_kind":"plain","optional":true},"folder_id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"labels":{"type":["map","string"],"description_kind":"plain","optional":true,"computed":true},"name":{"type":"string","description_kind":"plain","optional":true},"network_id":{"type":"string","description_kind":"plain","required":true},"status":{"type":"string","description_kind":"plain","computed":true}},"block_types":{"egress":{"nesting_mode":"set","block":{"attributes":{"description":{"type":"string","description_kind":"plain","optional":true},"from_port":{"type":"number","description_kind":"plain","optional":true},"id":{"type":"string","description_kind":"plain","computed":true},"labels":{"type":["map","string"],"description_kind":"plain","optional":true,"computed":true},"port":{"type":"number","description_kind":"plain","optional":true},"predefined_target":{"type":"string","description_kind":"plain","optional":true},"protocol":{"type":"string","description_kind":"plain","required":true},"security_group_id":{"type":"string","description_kind":"plain","optional":true},"to_port":{"type":"number","description_kind":"plain","optional":true},"v4_cidr_blocks":{"type":["list","string"],"description_kind":"plain","optional":true},"v6_cidr_blocks":{"type":["list","string"],"description_kind":"plain","optional":true}},"description_kind":"plain"}},"ingress":{"nesting_mode":"set","block":{"attributes":{"description":{"type":"string","description_kind":"plain","optional":true},"from_port":{"type":"number","description_kind":"plain","optional":true},"id":{"type":"string","description_kind":"plain","computed":true},"labels":{"type":["map","string"],"description_kind":"plain","optional":true,"computed":true},"port":{"type":"number","description_kind":"plain","optional":true},"predefined_target":{"type":"string","description_kind":"plain","optional":true},"protocol":{"type":"string","description_kind":"plain","required":true},"security_group_id":{"type":"string","description_kind":"plain","optional":true},"to_port":{"type":"number","description_kind":"plain","optional":true},"v4_cidr_blocks":{"type":["list","string"],"description_kind":"plain","optional":true},"v6_cidr_blocks":{"type":["list","string"],"description_kind":"plain","optional":true}},"description_kind":"plain"}},"timeouts":{"nesting_mode":"single","block":{"attributes":{"create":{"type":"string","description_kind":"plain","optional":true},"delete":{"type":"string","description_kind":"plain","optional":true},"update":{"type":"string","description_kind":"plain","optional":true}},"description_kind":"plain"}}},"description_kind":"plain"}},"yandex_vpc_security_group_rule":{"version":0,"block":{"attributes":{"description":{"type":"string","description_kind":"plain","optional":true},"direction":{"type":"string","description_kind":"plain","required":true},"from_port":{"type":"number","description_kind":"plain","optional":true},"id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"labels":{"type":["map","string"],"description_kind":"plain","optional":true,"computed":true},"port":{"type":"number","description_kind":"plain","optional":true},"predefined_target":{"type":"string","description_kind":"plain","optional":true},"protocol":{"type":"string","description_kind":"plain","optional":true},"security_group_binding":{"type":"string","description_kind":"plain","required":true},"security_group_id":{"type":"string","description_kind":"plain","optional":true},"to_port":{"type":"number","description_kind":"plain","optional":true},"v4_cidr_blocks":{"type":["list","string"],"description_kind":"plain","optional":true},"v6_cidr_blocks":{"type":["list","string"],"description_kind":"plain","optional":true}},"block_types":{"timeouts":{"nesting_mode":"single","block":{"attributes":{"create":{"type":"string","description_kind":"plain","optional":true},"delete":{"type":"string","description_kind":"plain","optional":true},"read":{"type":"string","description_kind":"plain","optional":true},"update":{"type":"string","description_kind":"plain","optional":true}},"description_kind":"plain"}}},"description_kind":"plain"}},"yandex_vpc_subnet":{"version":0,"block":{"attributes":{"created_at":{"type":"string","description_kind":"plain","computed":true},"description":{"type":"string","description_kind":"plain","optional":true},"folder_id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"labels":{"type":["map","string"],"description_kind":"plain","optional":true,"computed":true},"name":{"type":"string","description_kind":"plain","optional":true,"computed":true},"network_id":{"type":"string","description_kind":"plain","required":true},"route_table_id":{"type":"string","description_kind":"plain","optional":true},"v4_cidr_blocks":{"type":["list","string"],"description_kind":"plain","required":true},"v6_cidr_blocks":{"type":["list","string"],"description_kind":"plain","computed":true},"zone":{"type":"string","description_kind":"plain","optional":true,"computed":true}},"block_types":{"dhcp_options":{"nesting_mode":"list","block":{"attributes":{"domain_name":{"type":"string","description_kind":"plain","optional":true},"domain_name_servers":{"type":["list","string"],"description_kind":"plain","optional":true},"ntp_servers":{"type":["list","string"],"description_kind":"plain","optional":true}},"description_kind":"plain"},"max_items":1},"timeouts":{"nesting_mode":"single","block":{"attributes":{"create":{"type":"string","description_kind":"plain","optional":true},"delete":{"type":"string","description_kind":"plain","optional":true},"update":{"type":"string","description_kind":"plain","optional":true}},"description_kind":"plain"}}},"description_kind":"plain"}},"yandex_ydb_database_dedicated":{"version":0,"block":{"attributes":{"assign_public_ips":{"type":"bool","description_kind":"plain","optional":true},"created_at":{"type":"string","description_kind":"plain","computed":true},"database_path":{"type":"string","description_kind":"plain","computed":true},"deletion_protection":{"type":"bool","description_kind":"plain","optional":true},"description":{"type":"string","description_kind":"plain","optional":true},"folder_id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"labels":{"type":["map","string"],"description_kind":"plain","optional":true},"location_id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"name":{"type":"string","description_kind":"plain","required":true},"network_id":{"type":"string","description_kind":"plain","required":true},"resource_preset_id":{"type":"string","description_kind":"plain","required":true},"sleep_after":{"type":"number","description_kind":"plain","optional":true},"status":{"type":"string","description_kind":"plain","computed":true},"subnet_ids":{"type":["set","string"],"description_kind":"plain","required":true},"tls_enabled":{"type":"bool","description_kind":"plain","computed":true},"ydb_api_endpoint":{"type":"string","description_kind":"plain","computed":true},"ydb_full_endpoint":{"type":"string","description_kind":"plain","computed":true}},"block_types":{"location":{"nesting_mode":"list","block":{"block_types":{"region":{"nesting_mode":"list","block":{"attributes":{"id":{"type":"string","description_kind":"plain","required":true}},"description_kind":"plain"},"max_items":1}},"description_kind":"plain"},"max_items":1},"scale_policy":{"nesting_mode":"list","block":{"block_types":{"fixed_scale":{"nesting_mode":"list","block":{"attributes":{"size":{"type":"number","description_kind":"plain","required":true}},"description_kind":"plain"},"min_items":1,"max_items":1}},"description_kind":"plain"},"min_items":1,"max_items":1},"storage_config":{"nesting_mode":"list","block":{"attributes":{"group_count":{"type":"number","description_kind":"plain","required":true},"storage_type_id":{"type":"string","description_kind":"plain","required":true}},"description_kind":"plain"},"min_items":1,"max_items":1},"timeouts":{"nesting_mode":"single","block":{"attributes":{"default":{"type":"string","description_kind":"plain","optional":true}},"description_kind":"plain"}}},"description_kind":"plain"}},"yandex_ydb_database_iam_binding":{"version":0,"block":{"attributes":{"database_id":{"type":"string","description_kind":"plain","required":true},"id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"members":{"type":["set","string"],"description_kind":"plain","required":true},"role":{"type":"string","description_kind":"plain","required":true},"sleep_after":{"type":"number","description_kind":"plain","optional":true}},"block_types":{"timeouts":{"nesting_mode":"single","block":{"attributes":{"default":{"type":"string","description_kind":"plain","optional":true}},"description_kind":"plain"}}},"description_kind":"plain"}},"yandex_ydb_database_serverless":{"version":0,"block":{"attributes":{"created_at":{"type":"string","description_kind":"plain","computed":true},"database_path":{"type":"string","description_kind":"plain","computed":true},"deletion_protection":{"type":"bool","description_kind":"plain","optional":true},"description":{"type":"string","description_kind":"plain","optional":true},"document_api_endpoint":{"type":"string","description_kind":"plain","computed":true},"folder_id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"labels":{"type":["map","string"],"description_kind":"plain","optional":true},"location_id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"name":{"type":"string","description_kind":"plain","required":true},"sleep_after":{"type":"number","description_kind":"plain","optional":true},"status":{"type":"string","description_kind":"plain","computed":true},"tls_enabled":{"type":"bool","description_kind":"plain","computed":true},"ydb_api_endpoint":{"type":"string","description_kind":"plain","computed":true},"ydb_full_endpoint":{"type":"string","description_kind":"plain","computed":true}},"block_types":{"serverless_database":{"nesting_mode":"set","block":{"attributes":{"enable_throttling_rcu_limit":{"type":"bool","description_kind":"plain","optional":true,"computed":true},"provisioned_rcu_limit":{"type":"number","description_kind":"plain","optional":true,"computed":true},"storage_size_limit":{"type":"number","description_kind":"plain","optional":true,"computed":true},"throttling_rcu_limit":{"type":"number","description_kind":"plain","optional":true,"computed":true}},"description_kind":"plain"}},"timeouts":{"nesting_mode":"single","block":{"attributes":{"default":{"type":"string","description_kind":"plain","optional":true}},"description_kind":"plain"}}},"description_kind":"plain"}},"yandex_ydb_table":{"version":0,"block":{"attributes":{"attributes":{"type":["map","string"],"description_kind":"plain","optional":true,"computed":true},"connection_string":{"type":"string","description_kind":"plain","required":true},"id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"key_bloom_filter":{"type":"bool","description_kind":"plain","optional":true,"computed":true},"path":{"type":"string","description_kind":"plain","required":true},"primary_key":{"type":["list","string"],"description_kind":"plain","required":true},"read_replicas_settings":{"type":"string","description_kind":"plain","optional":true,"computed":true}},"block_types":{"column":{"nesting_mode":"set","block":{"attributes":{"family":{"type":"string","description_kind":"plain","optional":true,"computed":true},"name":{"type":"string","description_kind":"plain","required":true},"not_null":{"type":"bool","description_kind":"plain","optional":true,"computed":true},"type":{"type":"string","description_kind":"plain","required":true}},"description_kind":"plain"},"min_items":1},"family":{"nesting_mode":"list","block":{"attributes":{"compression":{"type":"string","description_kind":"plain","required":true},"data":{"type":"string","description_kind":"plain","required":true},"name":{"type":"string","description_kind":"plain","required":true}},"description_kind":"plain"}},"partitioning_settings":{"nesting_mode":"list","block":{"attributes":{"auto_partitioning_by_load":{"type":"bool","description_kind":"plain","optional":true},"auto_partitioning_by_size_enabled":{"type":"bool","description_kind":"plain","optional":true},"auto_partitioning_max_partitions_count":{"type":"number","description_kind":"plain","optional":true,"computed":true},"auto_partitioning_min_partitions_count":{"type":"number","description_kind":"plain","optional":true,"computed":true},"auto_partitioning_partition_size_mb":{"type":"number","description_kind":"plain","optional":true,"computed":true},"uniform_partitions":{"type":"number","description_kind":"plain","optional":true,"computed":true}},"block_types":{"partition_at_keys":{"nesting_mode":"list","block":{"attributes":{"keys":{"type":["list","string"],"description_kind":"plain","required":true}},"description_kind":"plain"}}},"description_kind":"plain"},"max_items":1},"timeouts":{"nesting_mode":"single","block":{"attributes":{"create":{"type":"string","description_kind":"plain","optional":true},"default":{"type":"string","description_kind":"plain","optional":true},"delete":{"type":"string","description_kind":"plain","optional":true},"read":{"type":"string","description_kind":"plain","optional":true},"update":{"type":"string","description_kind":"plain","optional":true}},"description_kind":"plain"}},"ttl":{"nesting_mode":"set","block":{"attributes":{"column_name":{"type":"string","description_kind":"plain","required":true},"expire_interval":{"type":"string","description_kind":"plain","required":true},"unit":{"type":"string","description_kind":"plain","optional":true,"computed":true}},"description_kind":"plain"},"max_items":1}},"description_kind":"plain"}},"yandex_ydb_table_changefeed":{"version":0,"block":{"attributes":{"connection_string":{"type":"string","description_kind":"plain","optional":true,"computed":true},"format":{"type":"string","description_kind":"plain","required":true},"id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"mode":{"type":"string","description_kind":"plain","required":true},"name":{"type":"string","description_kind":"plain","required":true},"retention_period":{"type":"string","description_kind":"plain","optional":true},"table_id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"table_path":{"type":"string","description_kind":"plain","optional":true,"computed":true},"virtual_timestamps":{"type":"bool","description_kind":"plain","optional":true}},"block_types":{"consumer":{"nesting_mode":"set","block":{"attributes":{"important":{"type":"bool","description_kind":"plain","optional":true,"computed":true},"name":{"type":"string","description_kind":"plain","required":true},"starting_message_timestamp_ms":{"type":"number","description_kind":"plain","optional":true,"computed":true},"supported_codecs":{"type":["set","string"],"description_kind":"plain","optional":true,"computed":true}},"description_kind":"plain"}},"timeouts":{"nesting_mode":"single","block":{"attributes":{"create":{"type":"string","description_kind":"plain","optional":true},"default":{"type":"string","description_kind":"plain","optional":true},"delete":{"type":"string","description_kind":"plain","optional":true},"read":{"type":"string","description_kind":"plain","optional":true},"update":{"type":"string","description_kind":"plain","optional":true}},"description_kind":"plain"}}},"description_kind":"plain"}},"yandex_ydb_table_index":{"version":0,"block":{"attributes":{"columns":{"type":["list","string"],"description_kind":"plain","required":true},"connection_string":{"type":"string","description_kind":"plain","optional":true,"computed":true},"cover":{"type":["list","string"],"description_kind":"plain","optional":true},"id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"name":{"type":"string","description_kind":"plain","required":true},"table_id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"table_path":{"type":"string","description_kind":"plain","optional":true,"computed":true},"type":{"type":"string","description_kind":"plain","required":true}},"block_types":{"timeouts":{"nesting_mode":"single","block":{"attributes":{"create":{"type":"string","description_kind":"plain","optional":true},"default":{"type":"string","description_kind":"plain","optional":true},"delete":{"type":"string","description_kind":"plain","optional":true},"read":{"type":"string","description_kind":"plain","optional":true},"update":{"type":"string","description_kind":"plain","optional":true}},"description_kind":"plain"}}},"description_kind":"plain"}},"yandex_ydb_topic":{"version":0,"block":{"attributes":{"database_endpoint":{"type":"string","description_kind":"plain","required":true},"description":{"type":"string","description_kind":"plain","optional":true},"id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"metering_mode":{"type":"string","description_kind":"plain","optional":true,"computed":true},"name":{"type":"string","description_kind":"plain","required":true},"partition_write_speed_kbps":{"type":"number","description_kind":"plain","optional":true,"computed":true},"partitions_count":{"type":"number","description_kind":"plain","optional":true,"computed":true},"retention_period_hours":{"type":"number","description_kind":"plain","optional":true,"computed":true},"retention_storage_mb":{"type":"number","description_kind":"plain","optional":true,"computed":true},"supported_codecs":{"type":["set","string"],"description_kind":"plain","optional":true,"computed":true}},"block_types":{"consumer":{"nesting_mode":"set","block":{"attributes":{"important":{"type":"bool","description_kind":"plain","optional":true,"computed":true},"name":{"type":"string","description_kind":"plain","required":true},"starting_message_timestamp_ms":{"type":"number","description_kind":"plain","optional":true,"computed":true},"supported_codecs":{"type":["set","string"],"description_kind":"plain","optional":true,"computed":true}},"description_kind":"plain"}},"timeouts":{"nesting_mode":"single","block":{"attributes":{"create":{"type":"string","description_kind":"plain","optional":true},"default":{"type":"string","description_kind":"plain","optional":true},"delete":{"type":"string","description_kind":"plain","optional":true},"read":{"type":"string","description_kind":"plain","optional":true},"update":{"type":"string","description_kind":"plain","optional":true}},"description_kind":"plain"}}},"description_kind":"plain"}}},"data_source_schemas":{"yandex_alb_backend_group":{"version":0,"block":{"attributes":{"backend_group_id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"created_at":{"type":"string","description_kind":"plain","computed":true},"description":{"type":"string","description_kind":"plain","optional":true,"computed":true},"folder_id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"labels":{"type":["map","string"],"description_kind":"plain","optional":true,"computed":true},"name":{"type":"string","description_kind":"plain","optional":true,"computed":true}},"block_types":{"grpc_backend":{"nesting_mode":"list","block":{"attributes":{"name":{"type":"string","description_kind":"plain","computed":true},"port":{"type":"number","description_kind":"plain","optional":true,"computed":true},"target_group_ids":{"type":["list","string"],"description_kind":"plain","computed":true},"weight":{"type":"number","description_kind":"plain","optional":true,"computed":true}},"block_types":{"healthcheck":{"nesting_mode":"list","block":{"attributes":{"healthcheck_port":{"type":"number","description_kind":"plain","optional":true,"computed":true},"healthy_threshold":{"type":"number","description_kind":"plain","optional":true,"computed":true},"interval":{"type":"string","description_kind":"plain","computed":true},"interval_jitter_percent":{"type":"number","description_kind":"plain","optional":true,"computed":true},"timeout":{"type":"string","description_kind":"plain","computed":true},"unhealthy_threshold":{"type":"number","description_kind":"plain","optional":true,"computed":true}},"block_types":{"grpc_healthcheck":{"nesting_mode":"list","block":{"attributes":{"service_name":{"type":"string","description_kind":"plain","optional":true,"computed":true}},"description_kind":"plain"},"max_items":1},"http_healthcheck":{"nesting_mode":"list","block":{"attributes":{"host":{"type":"string","description_kind":"plain","optional":true,"computed":true},"http2":{"type":"bool","description_kind":"plain","optional":true,"computed":true},"path":{"type":"string","description_kind":"plain","computed":true}},"description_kind":"plain"},"max_items":1},"stream_healthcheck":{"nesting_mode":"list","block":{"attributes":{"receive":{"type":"string","description_kind":"plain","optional":true,"computed":true},"send":{"type":"string","description_kind":"plain","optional":true,"computed":true}},"description_kind":"plain"},"max_items":1}},"description_kind":"plain"},"max_items":1},"load_balancing_config":{"nesting_mode":"list","block":{"attributes":{"locality_aware_routing_percent":{"type":"number","description_kind":"plain","optional":true,"computed":true},"mode":{"type":"string","description_kind":"plain","optional":true,"computed":true},"panic_threshold":{"type":"number","description_kind":"plain","optional":true,"computed":true},"strict_locality":{"type":"bool","description_kind":"plain","optional":true,"computed":true}},"description_kind":"plain"},"max_items":1},"tls":{"nesting_mode":"list","block":{"attributes":{"sni":{"type":"string","description_kind":"plain","optional":true,"computed":true}},"block_types":{"validation_context":{"nesting_mode":"list","block":{"attributes":{"trusted_ca_bytes":{"type":"string","description_kind":"plain","optional":true,"computed":true},"trusted_ca_id":{"type":"string","description_kind":"plain","optional":true,"computed":true}},"description_kind":"plain"},"max_items":1}},"description_kind":"plain"},"max_items":1}},"description_kind":"plain"}},"http_backend":{"nesting_mode":"list","block":{"attributes":{"http2":{"type":"bool","description_kind":"plain","optional":true,"computed":true},"name":{"type":"string","description_kind":"plain","computed":true},"port":{"type":"number","description_kind":"plain","optional":true,"computed":true},"storage_bucket":{"type":"string","description_kind":"plain","optional":true,"computed":true},"target_group_ids":{"type":["list","string"],"description_kind":"plain","optional":true,"computed":true},"weight":{"type":"number","description_kind":"plain","optional":true,"computed":true}},"block_types":{"healthcheck":{"nesting_mode":"list","block":{"attributes":{"healthcheck_port":{"type":"number","description_kind":"plain","optional":true,"computed":true},"healthy_threshold":{"type":"number","description_kind":"plain","optional":true,"computed":true},"interval":{"type":"string","description_kind":"plain","computed":true},"interval_jitter_percent":{"type":"number","description_kind":"plain","optional":true,"computed":true},"timeout":{"type":"string","description_kind":"plain","computed":true},"unhealthy_threshold":{"type":"number","description_kind":"plain","optional":true,"computed":true}},"block_types":{"grpc_healthcheck":{"nesting_mode":"list","block":{"attributes":{"service_name":{"type":"string","description_kind":"plain","optional":true,"computed":true}},"description_kind":"plain"},"max_items":1},"http_healthcheck":{"nesting_mode":"list","block":{"attributes":{"host":{"type":"string","description_kind":"plain","optional":true,"computed":true},"http2":{"type":"bool","description_kind":"plain","optional":true,"computed":true},"path":{"type":"string","description_kind":"plain","computed":true}},"description_kind":"plain"},"max_items":1},"stream_healthcheck":{"nesting_mode":"list","block":{"attributes":{"receive":{"type":"string","description_kind":"plain","optional":true,"computed":true},"send":{"type":"string","description_kind":"plain","optional":true,"computed":true}},"description_kind":"plain"},"max_items":1}},"description_kind":"plain"},"max_items":1},"load_balancing_config":{"nesting_mode":"list","block":{"attributes":{"locality_aware_routing_percent":{"type":"number","description_kind":"plain","optional":true,"computed":true},"mode":{"type":"string","description_kind":"plain","optional":true,"computed":true},"panic_threshold":{"type":"number","description_kind":"plain","optional":true,"computed":true},"strict_locality":{"type":"bool","description_kind":"plain","optional":true,"computed":true}},"description_kind":"plain"},"max_items":1},"tls":{"nesting_mode":"list","block":{"attributes":{"sni":{"type":"string","description_kind":"plain","optional":true,"computed":true}},"block_types":{"validation_context":{"nesting_mode":"list","block":{"attributes":{"trusted_ca_bytes":{"type":"string","description_kind":"plain","optional":true,"computed":true},"trusted_ca_id":{"type":"string","description_kind":"plain","optional":true,"computed":true}},"description_kind":"plain"},"max_items":1}},"description_kind":"plain"},"max_items":1}},"description_kind":"plain"}},"session_affinity":{"nesting_mode":"list","block":{"block_types":{"connection":{"nesting_mode":"list","block":{"attributes":{"source_ip":{"type":"bool","description":"Use source IP address","description_kind":"plain","optional":true,"computed":true}},"description":"IP address affinity","description_kind":"plain"},"max_items":1},"cookie":{"nesting_mode":"list","block":{"attributes":{"name":{"type":"string","description":"Name of the HTTP cookie","description_kind":"plain","computed":true},"ttl":{"type":"string","description":"TTL for the cookie (if not set, session cookie will be used)","description_kind":"plain","optional":true,"computed":true}},"description":"Cookie affinity","description_kind":"plain"},"max_items":1},"header":{"nesting_mode":"list","block":{"attributes":{"header_name":{"type":"string","description":"The name of the request header that will be used","description_kind":"plain","optional":true,"computed":true}},"description":"Request header affinity","description_kind":"plain"},"max_items":1}},"description_kind":"plain"},"max_items":1},"stream_backend":{"nesting_mode":"list","block":{"attributes":{"enable_proxy_protocol":{"type":"bool","description_kind":"plain","optional":true,"computed":true},"name":{"type":"string","description_kind":"plain","computed":true},"port":{"type":"number","description_kind":"plain","optional":true,"computed":true},"target_group_ids":{"type":["list","string"],"description_kind":"plain","computed":true},"weight":{"type":"number","description_kind":"plain","optional":true,"computed":true}},"block_types":{"healthcheck":{"nesting_mode":"list","block":{"attributes":{"healthcheck_port":{"type":"number","description_kind":"plain","optional":true,"computed":true},"healthy_threshold":{"type":"number","description_kind":"plain","optional":true,"computed":true},"interval":{"type":"string","description_kind":"plain","computed":true},"interval_jitter_percent":{"type":"number","description_kind":"plain","optional":true,"computed":true},"timeout":{"type":"string","description_kind":"plain","computed":true},"unhealthy_threshold":{"type":"number","description_kind":"plain","optional":true,"computed":true}},"block_types":{"grpc_healthcheck":{"nesting_mode":"list","block":{"attributes":{"service_name":{"type":"string","description_kind":"plain","optional":true,"computed":true}},"description_kind":"plain"},"max_items":1},"http_healthcheck":{"nesting_mode":"list","block":{"attributes":{"host":{"type":"string","description_kind":"plain","optional":true,"computed":true},"http2":{"type":"bool","description_kind":"plain","optional":true,"computed":true},"path":{"type":"string","description_kind":"plain","computed":true}},"description_kind":"plain"},"max_items":1},"stream_healthcheck":{"nesting_mode":"list","block":{"attributes":{"receive":{"type":"string","description_kind":"plain","optional":true,"computed":true},"send":{"type":"string","description_kind":"plain","optional":true,"computed":true}},"description_kind":"plain"},"max_items":1}},"description_kind":"plain"},"max_items":1},"load_balancing_config":{"nesting_mode":"list","block":{"attributes":{"locality_aware_routing_percent":{"type":"number","description_kind":"plain","optional":true,"computed":true},"mode":{"type":"string","description_kind":"plain","optional":true,"computed":true},"panic_threshold":{"type":"number","description_kind":"plain","optional":true,"computed":true},"strict_locality":{"type":"bool","description_kind":"plain","optional":true,"computed":true}},"description_kind":"plain"},"max_items":1},"tls":{"nesting_mode":"list","block":{"attributes":{"sni":{"type":"string","description_kind":"plain","optional":true,"computed":true}},"block_types":{"validation_context":{"nesting_mode":"list","block":{"attributes":{"trusted_ca_bytes":{"type":"string","description_kind":"plain","optional":true,"computed":true},"trusted_ca_id":{"type":"string","description_kind":"plain","optional":true,"computed":true}},"description_kind":"plain"},"max_items":1}},"description_kind":"plain"},"max_items":1}},"description_kind":"plain"}}},"description_kind":"plain"}},"yandex_alb_http_router":{"version":0,"block":{"attributes":{"created_at":{"type":"string","description_kind":"plain","computed":true},"description":{"type":"string","description_kind":"plain","optional":true,"computed":true},"folder_id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"http_router_id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"labels":{"type":["map","string"],"description_kind":"plain","computed":true},"name":{"type":"string","description_kind":"plain","optional":true,"computed":true},"route_options":{"type":["list",["object",{"rbac":["list",["object",{"action":"string","principals":["list",["object",{"and_principals":["list",["object",{"any":"bool","headers":["list",["object",{"name":"string","value":["list",["object",{"exact":"string","prefix":"string","regex":"string"}]]}]],"remote_ip":"string"}]]}]]}]],"security_profile_id":"string"}]],"description_kind":"plain","computed":true}},"description_kind":"plain"}},"yandex_alb_load_balancer":{"version":0,"block":{"attributes":{"allocation_policy":{"type":["list",["object",{"location":["set",["object",{"disable_traffic":"bool","subnet_id":"string","zone_id":"string"}]]}]],"description_kind":"plain","computed":true},"created_at":{"type":"string","description_kind":"plain","computed":true},"description":{"type":"string","description_kind":"plain","computed":true},"folder_id":{"type":"string","description_kind":"plain","computed":true},"id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"labels":{"type":["map","string"],"description_kind":"plain","computed":true},"listener":{"type":["list",["object",{"endpoint":["list",["object",{"address":["list",["object",{"external_ipv4_address":["list",["object",{"address":"string"}]],"external_ipv6_address":["list",["object",{"address":"string"}]],"internal_ipv4_address":["list",["object",{"address":"string","subnet_id":"string"}]]}]],"ports":["list","number"]}]],"http":["list",["object",{"handler":["list",["object",{"allow_http10":"bool","http2_options":["list",["object",{"max_concurrent_streams":"number"}]],"http_router_id":"string","rewrite_request_id":"bool"}]],"redirects":["list",["object",{"http_to_https":"bool"}]]}]],"name":"string","stream":["list",["object",{"handler":["list",["object",{"backend_group_id":"string"}]]}]],"tls":["list",["object",{"default_handler":["list",["object",{"certificate_ids":["set","string"],"http_handler":["list",["object",{"allow_http10":"bool","http2_options":["list",["object",{"max_concurrent_streams":"number"}]],"http_router_id":"string","rewrite_request_id":"bool"}]],"stream_handler":["list",["object",{"backend_group_id":"string"}]]}]],"sni_handler":["list",["object",{"handler":["list",["object",{"certificate_ids":["set","string"],"http_handler":["list",["object",{"allow_http10":"bool","http2_options":["list",["object",{"max_concurrent_streams":"number"}]],"http_router_id":"string","rewrite_request_id":"bool"}]],"stream_handler":["list",["object",{"backend_group_id":"string"}]]}]],"name":"string","server_names":["set","string"]}]]}]]}]],"description_kind":"plain","computed":true},"load_balancer_id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"log_group_id":{"type":"string","description_kind":"plain","computed":true},"log_options":{"type":["list",["object",{"disable":"bool","discard_rule":["list",["object",{"discard_percent":"number","grpc_codes":["list","string"],"http_code_intervals":["list","string"],"http_codes":["list","number"]}]],"log_group_id":"string"}]],"description_kind":"plain","computed":true},"name":{"type":"string","description_kind":"plain","optional":true,"computed":true},"network_id":{"type":"string","description_kind":"plain","computed":true},"region_id":{"type":"string","description_kind":"plain","computed":true},"security_group_ids":{"type":["set","string"],"description_kind":"plain","computed":true},"status":{"type":"string","description_kind":"plain","computed":true}},"block_types":{"timeouts":{"nesting_mode":"single","block":{"attributes":{"create":{"type":"string","description_kind":"plain","optional":true},"delete":{"type":"string","description_kind":"plain","optional":true},"update":{"type":"string","description_kind":"plain","optional":true}},"description_kind":"plain"}}},"description_kind":"plain"}},"yandex_alb_target_group":{"version":0,"block":{"attributes":{"created_at":{"type":"string","description_kind":"plain","computed":true},"description":{"type":"string","description_kind":"plain","optional":true,"computed":true},"folder_id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"labels":{"type":["map","string"],"description_kind":"plain","computed":true},"name":{"type":"string","description_kind":"plain","optional":true,"computed":true},"target":{"type":["list",["object",{"ip_address":"string","private_ipv4_address":"bool","subnet_id":"string"}]],"description_kind":"plain","computed":true},"target_group_id":{"type":"string","description_kind":"plain","optional":true,"computed":true}},"description_kind":"plain"}},"yandex_alb_virtual_host":{"version":0,"block":{"attributes":{"authority":{"type":["set","string"],"description_kind":"plain","computed":true},"http_router_id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"modify_request_headers":{"type":["list",["object",{"append":"string","name":"string","remove":"bool","replace":"string"}]],"description_kind":"plain","computed":true},"modify_response_headers":{"type":["list",["object",{"append":"string","name":"string","remove":"bool","replace":"string"}]],"description_kind":"plain","computed":true},"name":{"type":"string","description_kind":"plain","optional":true,"computed":true},"route":{"type":["list",["object",{"grpc_route":["list",["object",{"grpc_match":["list",["object",{"fqmn":["list",["object",{"exact":"string","prefix":"string","regex":"string"}]]}]],"grpc_route_action":["list",["object",{"auto_host_rewrite":"bool","backend_group_id":"string","host_rewrite":"string","idle_timeout":"string","max_timeout":"string"}]],"grpc_status_response_action":["list",["object",{"status":"string"}]]}]],"http_route":["list",["object",{"direct_response_action":["list",["object",{"body":"string","status":"number"}]],"http_match":["list",["object",{"http_method":["set","string"],"path":["list",["object",{"exact":"string","prefix":"string","regex":"string"}]]}]],"http_route_action":["list",["object",{"auto_host_rewrite":"bool","backend_group_id":"string","host_rewrite":"string","idle_timeout":"string","prefix_rewrite":"string","timeout":"string","upgrade_types":["set","string"]}]],"redirect_action":["list",["object",{"remove_query":"bool","replace_host":"string","replace_path":"string","replace_port":"number","replace_prefix":"string","replace_scheme":"string","response_code":"string"}]]}]],"name":"string","route_options":["list",["object",{"rbac":["list",["object",{"action":"string","principals":["list",["object",{"and_principals":["list",["object",{"any":"bool","headers":["list",["object",{"name":"string","value":["list",["object",{"exact":"string","prefix":"string","regex":"string"}]]}]],"remote_ip":"string"}]]}]]}]],"security_profile_id":"string"}]]}]],"description_kind":"plain","computed":true},"route_options":{"type":["list",["object",{"rbac":["list",["object",{"action":"string","principals":["list",["object",{"and_principals":["list",["object",{"any":"bool","headers":["list",["object",{"name":"string","value":["list",["object",{"exact":"string","prefix":"string","regex":"string"}]]}]],"remote_ip":"string"}]]}]]}]],"security_profile_id":"string"}]],"description_kind":"plain","computed":true},"virtual_host_id":{"type":"string","description_kind":"plain","optional":true,"computed":true}},"description_kind":"plain"}},"yandex_api_gateway":{"version":0,"block":{"attributes":{"api_gateway_id":{"type":"string","description_kind":"plain","optional":true},"created_at":{"type":"string","description_kind":"plain","computed":true},"description":{"type":"string","description_kind":"plain","computed":true},"domain":{"type":"string","description_kind":"plain","computed":true},"execution_timeout":{"type":"string","description_kind":"plain","optional":true,"computed":true},"folder_id":{"type":"string","description_kind":"plain","optional":true},"id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"labels":{"type":["map","string"],"description_kind":"plain","computed":true},"log_group_id":{"type":"string","description_kind":"plain","computed":true},"log_options":{"type":["list",["object",{"disabled":"bool","folder_id":"string","log_group_id":"string","min_level":"string"}]],"description_kind":"plain","computed":true},"name":{"type":"string","description_kind":"plain","optional":true},"status":{"type":"string","description_kind":"plain","computed":true},"user_domains":{"type":["set","string"],"description_kind":"plain","deprecated":true,"computed":true},"variables":{"type":["map","string"],"description_kind":"plain","optional":true}},"block_types":{"canary":{"nesting_mode":"list","block":{"attributes":{"variables":{"type":["map","string"],"description_kind":"plain","optional":true},"weight":{"type":"number","description_kind":"plain","optional":true}},"description_kind":"plain"},"max_items":1},"connectivity":{"nesting_mode":"list","block":{"attributes":{"network_id":{"type":"string","description_kind":"plain","required":true}},"description_kind":"plain"},"max_items":1},"custom_domains":{"nesting_mode":"set","block":{"attributes":{"certificate_id":{"type":"string","description_kind":"plain","required":true},"domain_id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"fqdn":{"type":"string","description_kind":"plain","required":true}},"description_kind":"plain"}}},"description_kind":"plain"}},"yandex_audit_trails_trail":{"version":1,"block":{"attributes":{"data_stream_destination":{"type":["list",["object",{"database_id":"string","stream_name":"string"}]],"description_kind":"plain","computed":true},"description":{"type":"string","description_kind":"plain","computed":true},"filter":{"type":["set",["object",{"event_filters":["list",["object",{"categories":["list",["object",{"plane":"string","type":"string"}]],"path_filter":["list",["object",{"any_filter":["list",["object",{"resource_id":"string","resource_type":"string"}]],"some_filter":["list",["object",{"any_filters":["list",["object",{"resource_id":"string","resource_type":"string"}]],"resource_id":"string","resource_type":"string"}]]}]],"service":"string"}]],"path_filter":["list",["object",{"any_filter":["list",["object",{"resource_id":"string","resource_type":"string"}]],"some_filter":["list",["object",{"any_filters":["list",["object",{"resource_id":"string","resource_type":"string"}]],"resource_id":"string","resource_type":"string"}]]}]]}]],"description_kind":"plain","deprecated":true,"computed":true},"filtering_policy":{"type":["list",["object",{"data_events_filter":["list",["object",{"excluded_events":["list","string"],"included_events":["list","string"],"resource_scope":["list",["object",{"resource_id":"string","resource_type":"string"}]],"service":"string"}]],"management_events_filter":["list",["object",{"resource_scope":["list",["object",{"resource_id":"string","resource_type":"string"}]]}]]}]],"description_kind":"plain","computed":true},"folder_id":{"type":"string","description_kind":"plain","computed":true},"id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"labels":{"type":["map","string"],"description_kind":"plain","computed":true},"logging_destination":{"type":["list",["object",{"log_group_id":"string"}]],"description_kind":"plain","computed":true},"name":{"type":"string","description_kind":"plain","computed":true},"service_account_id":{"type":"string","description_kind":"plain","computed":true},"status":{"type":"string","description_kind":"plain","computed":true},"storage_destination":{"type":["list",["object",{"bucket_name":"string","object_prefix":"string"}]],"description_kind":"plain","computed":true},"trail_id":{"type":"string","description_kind":"plain","required":true}},"description_kind":"plain"}},"yandex_backup_policy":{"version":0,"block":{"attributes":{"archive_name":{"type":"string","description_kind":"plain","computed":true},"cbt":{"type":"string","description_kind":"plain","computed":true},"compression":{"type":"string","description_kind":"plain","computed":true},"created_at":{"type":"string","description_kind":"plain","computed":true},"enabled":{"type":"bool","description_kind":"plain","computed":true},"fast_backup_enabled":{"type":"bool","description_kind":"plain","computed":true},"folder_id":{"type":"string","description_kind":"plain","computed":true},"format":{"type":"string","description_kind":"plain","computed":true},"id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"multi_volume_snapshotting_enabled":{"type":"bool","description_kind":"plain","computed":true},"name":{"type":"string","description_kind":"plain","optional":true,"computed":true},"performance_window_enabled":{"type":"bool","description_kind":"plain","computed":true},"policy_id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"preserve_file_security_settings":{"type":"bool","description_kind":"plain","computed":true},"quiesce_snapshotting_enabled":{"type":"bool","description_kind":"plain","computed":true},"reattempts":{"type":["set",["object",{"enabled":"bool","interval":"string","max_attempts":"number"}]],"description_kind":"plain","computed":true},"retention":{"type":["set",["object",{"after_backup":"bool","rules":["set",["object",{"max_age":"string","max_count":"number","repeat_period":["list","string"]}]]}]],"description_kind":"plain","computed":true},"scheduling":{"type":["set",["object",{"backup_sets":["set",["object",{"execute_by_interval":"number","execute_by_time":["set",["object",{"include_last_day_of_month":"bool","monthdays":["list","number"],"months":["list","number"],"repeat_at":["list","string"],"repeat_every":"string","type":"string","weekdays":["list","string"]}]],"type":"string"}]],"enabled":"bool","max_parallel_backups":"number","random_max_delay":"string","scheme":"string","weekly_backup_day":"string"}]],"description_kind":"plain","computed":true},"silent_mode_enabled":{"type":"bool","description_kind":"plain","computed":true},"splitting_bytes":{"type":"string","description_kind":"plain","computed":true},"updated_at":{"type":"string","description_kind":"plain","computed":true},"vm_snapshot_reattempts":{"type":["set",["object",{"enabled":"bool","interval":"string","max_attempts":"number"}]],"description_kind":"plain","computed":true},"vss_provider":{"type":"string","description_kind":"plain","computed":true}},"description_kind":"plain"}},"yandex_billing_cloud_binding":{"version":0,"block":{"attributes":{"billing_account_id":{"type":"string","description_kind":"plain","required":true},"cloud_id":{"type":"string","description_kind":"plain","required":true},"id":{"type":"string","description":"Service generated identifier for the thing.","description_kind":"markdown","computed":true}},"description_kind":"plain"}},"yandex_cdn_origin_group":{"version":0,"block":{"attributes":{"folder_id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"name":{"type":"string","description_kind":"plain","optional":true,"computed":true},"origin":{"type":["set",["object",{"backup":"bool","enabled":"bool","origin_group_id":"number","source":"string"}]],"description_kind":"plain","computed":true},"origin_group_id":{"type":"number","description_kind":"plain","optional":true,"computed":true},"use_next":{"type":"bool","description_kind":"plain","computed":true}},"description_kind":"plain"}},"yandex_cdn_resource":{"version":0,"block":{"attributes":{"active":{"type":"bool","description_kind":"plain","optional":true},"cname":{"type":"string","description_kind":"plain","optional":true,"computed":true},"created_at":{"type":"string","description_kind":"plain","computed":true},"folder_id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"origin_group_id":{"type":"number","description_kind":"plain","optional":true},"origin_group_name":{"type":"string","description_kind":"plain","optional":true},"origin_protocol":{"type":"string","description_kind":"plain","optional":true},"provider_cname":{"type":"string","description_kind":"plain","computed":true},"resource_id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"secondary_hostnames":{"type":["set","string"],"description_kind":"plain","optional":true},"updated_at":{"type":"string","description_kind":"plain","optional":true,"computed":true}},"block_types":{"options":{"nesting_mode":"list","block":{"attributes":{"allowed_http_methods":{"type":["list","string"],"description_kind":"plain","optional":true,"computed":true},"browser_cache_settings":{"type":"number","description_kind":"plain","optional":true,"computed":true},"cache_http_headers":{"type":["list","string"],"description_kind":"plain","optional":true,"computed":true},"cors":{"type":["list","string"],"description_kind":"plain","optional":true,"computed":true},"custom_host_header":{"type":"string","description_kind":"plain","optional":true,"computed":true},"custom_server_name":{"type":"string","description_kind":"plain","optional":true,"computed":true},"disable_cache":{"type":"bool","description_kind":"plain","optional":true,"computed":true},"disable_proxy_force_ranges":{"type":"bool","description_kind":"plain","optional":true,"computed":true},"edge_cache_settings":{"type":"number","description_kind":"plain","optional":true,"computed":true},"enable_ip_url_signing":{"type":"bool","description_kind":"plain","optional":true,"computed":true},"fetched_compressed":{"type":"bool","description_kind":"plain","optional":true,"computed":true},"forward_host_header":{"type":"bool","description_kind":"plain","optional":true,"computed":true},"gzip_on":{"type":"bool","description_kind":"plain","optional":true,"computed":true},"ignore_cookie":{"type":"bool","description_kind":"plain","optional":true,"computed":true},"ignore_query_params":{"type":"bool","description_kind":"plain","optional":true,"computed":true},"proxy_cache_methods_set":{"type":"bool","description_kind":"plain","optional":true,"computed":true},"query_params_blacklist":{"type":["list","string"],"description_kind":"plain","optional":true,"computed":true},"query_params_whitelist":{"type":["list","string"],"description_kind":"plain","optional":true,"computed":true},"redirect_http_to_https":{"type":"bool","description_kind":"plain","optional":true,"computed":true},"redirect_https_to_http":{"type":"bool","description_kind":"plain","optional":true,"computed":true},"secure_key":{"type":"string","description_kind":"plain","optional":true,"computed":true},"slice":{"type":"bool","description_kind":"plain","optional":true,"computed":true},"static_request_headers":{"type":["map","string"],"description_kind":"plain","optional":true,"computed":true},"static_response_headers":{"type":["map","string"],"description_kind":"plain","optional":true,"computed":true}},"block_types":{"ip_address_acl":{"nesting_mode":"list","block":{"attributes":{"excepted_values":{"type":["list","string"],"description_kind":"plain","optional":true,"computed":true},"policy_type":{"type":"string","description_kind":"plain","optional":true,"computed":true}},"description_kind":"plain"},"max_items":1}},"description_kind":"plain"},"max_items":1},"ssl_certificate":{"nesting_mode":"set","block":{"attributes":{"certificate_manager_id":{"type":"string","description_kind":"plain","optional":true},"status":{"type":"string","description_kind":"plain","computed":true},"type":{"type":"string","description_kind":"plain","required":true}},"description_kind":"plain"},"max_items":1}},"description_kind":"plain"}},"yandex_client_config":{"version":0,"block":{"attributes":{"cloud_id":{"type":"string","description_kind":"plain","computed":true},"folder_id":{"type":"string","description_kind":"plain","computed":true},"iam_token":{"type":"string","description_kind":"plain","computed":true,"sensitive":true},"id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"zone":{"type":"string","description_kind":"plain","computed":true}},"description_kind":"plain"}},"yandex_cm_certificate":{"version":1,"block":{"attributes":{"certificate_id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"challenges":{"type":["list",["object",{"created_at":"string","dns_name":"string","dns_type":"string","dns_value":"string","domain":"string","http_content":"string","http_url":"string","message":"string","type":"string","updated_at":"string"}]],"description_kind":"plain","computed":true},"created_at":{"type":"string","description_kind":"plain","computed":true},"deletion_protection":{"type":"bool","description_kind":"plain","computed":true},"description":{"type":"string","description_kind":"plain","optional":true,"computed":true},"domains":{"type":["list","string"],"description_kind":"plain","computed":true},"folder_id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"issued_at":{"type":"string","description_kind":"plain","computed":true},"issuer":{"type":"string","description_kind":"plain","computed":true},"labels":{"type":["map","string"],"description_kind":"plain","optional":true,"computed":true},"name":{"type":"string","description_kind":"plain","optional":true,"computed":true},"not_after":{"type":"string","description_kind":"plain","computed":true},"not_before":{"type":"string","description_kind":"plain","computed":true},"serial":{"type":"string","description_kind":"plain","computed":true},"status":{"type":"string","description_kind":"plain","computed":true},"subject":{"type":"string","description_kind":"plain","computed":true},"type":{"type":"string","description_kind":"plain","computed":true},"updated_at":{"type":"string","description_kind":"plain","computed":true},"wait_validation":{"type":"bool","description_kind":"plain","optional":true}},"description_kind":"plain"}},"yandex_cm_certificate_content":{"version":1,"block":{"attributes":{"certificate_id":{"type":"string","description_kind":"plain","optional":true},"certificates":{"type":["list","string"],"description_kind":"plain","computed":true},"folder_id":{"type":"string","description_kind":"plain","optional":true},"id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"name":{"type":"string","description_kind":"plain","optional":true},"private_key":{"type":"string","description_kind":"plain","computed":true,"sensitive":true},"private_key_format":{"type":"string","description_kind":"plain","optional":true},"wait_validation":{"type":"bool","description_kind":"plain","optional":true}},"description_kind":"plain"}},"yandex_compute_disk":{"version":0,"block":{"attributes":{"block_size":{"type":"number","description_kind":"plain","computed":true},"created_at":{"type":"string","description_kind":"plain","computed":true},"description":{"type":"string","description_kind":"plain","computed":true},"disk_id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"folder_id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"hardware_generation":{"type":["list",["object",{"generation2_features":["list",["object",{}]],"legacy_features":["list",["object",{"pci_topology":"string"}]]}]],"description_kind":"plain","computed":true},"id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"image_id":{"type":"string","description_kind":"plain","computed":true},"instance_ids":{"type":["list","string"],"description_kind":"plain","computed":true},"labels":{"type":["map","string"],"description_kind":"plain","computed":true},"name":{"type":"string","description_kind":"plain","optional":true,"computed":true},"product_ids":{"type":["list","string"],"description_kind":"plain","computed":true},"size":{"type":"number","description_kind":"plain","computed":true},"snapshot_id":{"type":"string","description_kind":"plain","computed":true},"status":{"type":"string","description_kind":"plain","computed":true},"type":{"type":"string","description_kind":"plain","computed":true},"zone":{"type":"string","description_kind":"plain","computed":true}},"block_types":{"disk_placement_policy":{"nesting_mode":"list","block":{"attributes":{"disk_placement_group_id":{"type":"string","description_kind":"plain","required":true}},"description_kind":"plain"},"max_items":1}},"description_kind":"plain"}},"yandex_compute_disk_placement_group":{"version":0,"block":{"attributes":{"created_at":{"type":"string","description_kind":"plain","computed":true},"description":{"type":"string","description_kind":"plain","optional":true},"folder_id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"group_id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"labels":{"type":["map","string"],"description_kind":"plain","optional":true},"name":{"type":"string","description_kind":"plain","optional":true},"status":{"type":"string","description_kind":"plain","computed":true},"zone":{"type":"string","description_kind":"plain","optional":true}},"description_kind":"plain"}},"yandex_compute_filesystem":{"version":0,"block":{"attributes":{"block_size":{"type":"number","description_kind":"plain","computed":true},"created_at":{"type":"string","description_kind":"plain","computed":true},"description":{"type":"string","description_kind":"plain","computed":true},"filesystem_id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"folder_id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"labels":{"type":["map","string"],"description_kind":"plain","computed":true},"name":{"type":"string","description_kind":"plain","optional":true,"computed":true},"size":{"type":"number","description_kind":"plain","computed":true},"status":{"type":"string","description_kind":"plain","computed":true},"type":{"type":"string","description_kind":"plain","computed":true},"zone":{"type":"string","description_kind":"plain","computed":true}},"description_kind":"plain"}},"yandex_compute_gpu_cluster":{"version":0,"block":{"attributes":{"created_at":{"type":"string","description_kind":"plain","computed":true},"description":{"type":"string","description_kind":"plain","computed":true},"folder_id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"gpu_cluster_id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"interconnect_type":{"type":"string","description_kind":"plain","computed":true},"labels":{"type":["map","string"],"description_kind":"plain","computed":true},"name":{"type":"string","description_kind":"plain","optional":true,"computed":true},"status":{"type":"string","description_kind":"plain","computed":true},"zone":{"type":"string","description_kind":"plain","computed":true}},"description_kind":"plain"}},"yandex_compute_image":{"version":0,"block":{"attributes":{"created_at":{"type":"string","description_kind":"plain","computed":true},"description":{"type":"string","description_kind":"plain","computed":true},"family":{"type":"string","description_kind":"plain","optional":true,"computed":true},"folder_id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"hardware_generation":{"type":["list",["object",{"generation2_features":["list",["object",{}]],"legacy_features":["list",["object",{"pci_topology":"string"}]]}]],"description_kind":"plain","computed":true},"id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"image_id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"labels":{"type":["map","string"],"description_kind":"plain","computed":true},"min_disk_size":{"type":"number","description_kind":"plain","computed":true},"name":{"type":"string","description_kind":"plain","optional":true,"computed":true},"os_type":{"type":"string","description_kind":"plain","computed":true},"pooled":{"type":"bool","description_kind":"plain","computed":true},"product_ids":{"type":["set","string"],"description_kind":"plain","computed":true},"size":{"type":"number","description_kind":"plain","computed":true},"status":{"type":"string","description_kind":"plain","computed":true}},"description_kind":"plain"}},"yandex_compute_instance":{"version":0,"block":{"attributes":{"boot_disk":{"type":["list",["object",{"auto_delete":"bool","device_name":"string","disk_id":"string","initialize_params":["list",["object",{"block_size":"number","description":"string","image_id":"string","name":"string","size":"number","snapshot_id":"string","type":"string"}]],"mode":"string"}]],"description_kind":"plain","computed":true},"created_at":{"type":"string","description_kind":"plain","computed":true},"description":{"type":"string","description_kind":"plain","computed":true},"folder_id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"fqdn":{"type":"string","description_kind":"plain","computed":true},"gpu_cluster_id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"hardware_generation":{"type":["list",["object",{"generation2_features":["list",["object",{}]],"legacy_features":["list",["object",{"pci_topology":"string"}]]}]],"description_kind":"plain","computed":true},"id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"instance_id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"labels":{"type":["map","string"],"description_kind":"plain","computed":true},"maintenance_grace_period":{"type":"string","description_kind":"plain","optional":true,"computed":true},"maintenance_policy":{"type":"string","description_kind":"plain","optional":true,"computed":true},"metadata":{"type":["map","string"],"description_kind":"plain","computed":true},"name":{"type":"string","description_kind":"plain","optional":true,"computed":true},"network_acceleration_type":{"type":"string","description_kind":"plain","computed":true},"network_interface":{"type":["list",["object",{"dns_record":["list",["object",{"dns_zone_id":"string","fqdn":"string","ptr":"bool","ttl":"number"}]],"index":"number","ip_address":"string","ipv4":"bool","ipv6":"bool","ipv6_address":"string","ipv6_dns_record":["list",["object",{"dns_zone_id":"string","fqdn":"string","ptr":"bool","ttl":"number"}]],"mac_address":"string","nat":"bool","nat_dns_record":["list",["object",{"dns_zone_id":"string","fqdn":"string","ptr":"bool","ttl":"number"}]],"nat_ip_address":"string","nat_ip_version":"string","security_group_ids":["set","string"],"subnet_id":"string"}]],"description_kind":"plain","computed":true},"platform_id":{"type":"string","description_kind":"plain","computed":true},"resources":{"type":["list",["object",{"core_fraction":"number","cores":"number","gpus":"number","memory":"number"}]],"description_kind":"plain","computed":true},"scheduling_policy":{"type":["list",["object",{"preemptible":"bool"}]],"description_kind":"plain","computed":true},"secondary_disk":{"type":["set",["object",{"auto_delete":"bool","device_name":"string","disk_id":"string","mode":"string"}]],"description_kind":"plain","computed":true},"service_account_id":{"type":"string","description_kind":"plain","computed":true},"status":{"type":"string","description_kind":"plain","computed":true},"zone":{"type":"string","description_kind":"plain","computed":true}},"block_types":{"filesystem":{"nesting_mode":"set","block":{"attributes":{"device_name":{"type":"string","description_kind":"plain","computed":true},"filesystem_id":{"type":"string","description_kind":"plain","computed":true},"mode":{"type":"string","description_kind":"plain","optional":true,"computed":true}},"description_kind":"plain"}},"local_disk":{"nesting_mode":"list","block":{"attributes":{"device_name":{"type":"string","description_kind":"plain","computed":true},"size_bytes":{"type":"number","description_kind":"plain","required":true}},"description_kind":"plain"}},"metadata_options":{"nesting_mode":"list","block":{"attributes":{"aws_v1_http_endpoint":{"type":"number","description_kind":"plain","optional":true,"computed":true},"aws_v1_http_token":{"type":"number","description_kind":"plain","optional":true,"computed":true},"gce_http_endpoint":{"type":"number","description_kind":"plain","optional":true,"computed":true},"gce_http_token":{"type":"number","description_kind":"plain","optional":true,"computed":true}},"description_kind":"plain"},"max_items":1},"placement_policy":{"nesting_mode":"list","block":{"attributes":{"host_affinity_rules":{"type":["list",["object",{"key":"string","op":"string","values":["list","string"]}]],"description_kind":"plain","optional":true,"computed":true},"placement_group_id":{"type":"string","description_kind":"plain","optional":true},"placement_group_partition":{"type":"number","description_kind":"plain","optional":true}},"description_kind":"plain"},"max_items":1}},"description_kind":"plain"}},"yandex_compute_instance_group":{"version":0,"block":{"attributes":{"allocation_policy":{"type":["list",["object",{"instance_tags_pool":["list",["object",{"tags":["list","string"],"zone":"string"}]],"zones":["set","string"]}]],"description_kind":"plain","computed":true},"application_balancer_state":{"type":["list",["object",{"status_message":"string","target_group_id":"string"}]],"description_kind":"plain","computed":true},"application_load_balancer":{"type":["list",["object",{"ignore_health_checks":"bool","max_opening_traffic_duration":"number","status_message":"string","target_group_description":"string","target_group_id":"string","target_group_labels":["map","string"],"target_group_name":"string"}]],"description_kind":"plain","computed":true},"created_at":{"type":"string","description_kind":"plain","computed":true},"deletion_protection":{"type":"bool","description_kind":"plain","computed":true},"deploy_policy":{"type":["list",["object",{"max_creating":"number","max_deleting":"number","max_expansion":"number","max_unavailable":"number","startup_duration":"number","strategy":"string"}]],"description_kind":"plain","computed":true},"description":{"type":"string","description_kind":"plain","computed":true},"folder_id":{"type":"string","description_kind":"plain","computed":true},"health_check":{"type":["list",["object",{"healthy_threshold":"number","http_options":["list",["object",{"path":"string","port":"number"}]],"interval":"number","tcp_options":["list",["object",{"port":"number"}]],"timeout":"number","unhealthy_threshold":"number"}]],"description_kind":"plain","computed":true},"id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"instance_group_id":{"type":"string","description_kind":"plain","required":true},"instance_template":{"type":["list",["object",{"boot_disk":["list",["object",{"device_name":"string","disk_id":"string","initialize_params":["list",["object",{"description":"string","image_id":"string","size":"number","snapshot_id":"string","type":"string"}]],"mode":"string","name":"string"}]],"description":"string","filesystem":["set",["object",{"device_name":"string","filesystem_id":"string","mode":"string"}]],"hostname":"string","labels":["map","string"],"metadata":["map","string"],"metadata_options":["list",["object",{"aws_v1_http_endpoint":"number","aws_v1_http_token":"number","gce_http_endpoint":"number","gce_http_token":"number"}]],"name":"string","network_interface":["list",["object",{"dns_record":["list",["object",{"dns_zone_id":"string","fqdn":"string","ptr":"bool","ttl":"number"}]],"ip_address":"string","ipv4":"bool","ipv6":"bool","ipv6_address":"string","ipv6_dns_record":["list",["object",{"dns_zone_id":"string","fqdn":"string","ptr":"bool","ttl":"number"}]],"nat":"bool","nat_dns_record":["list",["object",{"dns_zone_id":"string","fqdn":"string","ptr":"bool","ttl":"number"}]],"nat_ip_address":"string","network_id":"string","security_group_ids":["set","string"],"subnet_ids":["set","string"]}]],"network_settings":["list",["object",{"type":"string"}]],"placement_policy":["list",["object",{"placement_group_id":"string"}]],"platform_id":"string","resources":["list",["object",{"core_fraction":"number","cores":"number","gpus":"number","memory":"number"}]],"scheduling_policy":["list",["object",{"preemptible":"bool"}]],"secondary_disk":["list",["object",{"device_name":"string","disk_id":"string","initialize_params":["list",["object",{"description":"string","image_id":"string","size":"number","snapshot_id":"string","type":"string"}]],"mode":"string","name":"string"}]],"service_account_id":"string"}]],"description_kind":"plain","computed":true},"instances":{"type":["list",["object",{"fqdn":"string","instance_id":"string","instance_tag":"string","name":"string","network_interface":["list",["object",{"index":"number","ip_address":"string","ipv4":"bool","ipv6":"bool","ipv6_address":"string","mac_address":"string","nat":"bool","nat_ip_address":"string","nat_ip_version":"string","subnet_id":"string"}]],"status":"string","status_changed_at":"string","status_message":"string","zone_id":"string"}]],"description_kind":"plain","computed":true},"labels":{"type":["map","string"],"description_kind":"plain","computed":true},"load_balancer":{"type":["list",["object",{"ignore_health_checks":"bool","max_opening_traffic_duration":"number","status_message":"string","target_group_description":"string","target_group_id":"string","target_group_labels":["map","string"],"target_group_name":"string"}]],"description_kind":"plain","computed":true},"load_balancer_state":{"type":["list",["object",{"status_message":"string","target_group_id":"string"}]],"description_kind":"plain","computed":true},"max_checking_health_duration":{"type":"number","description_kind":"plain","computed":true},"name":{"type":"string","description_kind":"plain","computed":true},"scale_policy":{"type":["list",["object",{"auto_scale":["list",["object",{"auto_scale_type":"string","cpu_utilization_target":"number","custom_rule":["list",["object",{"folder_id":"string","labels":["map","string"],"metric_name":"string","metric_type":"string","rule_type":"string","service":"string","target":"number"}]],"initial_size":"number","max_size":"number","measurement_duration":"number","min_zone_size":"number","stabilization_duration":"number","warmup_duration":"number"}]],"fixed_scale":["list",["object",{"size":"number"}]],"test_auto_scale":["list",["object",{"auto_scale_type":"string","cpu_utilization_target":"number","custom_rule":["list",["object",{"folder_id":"string","labels":["map","string"],"metric_name":"string","metric_type":"string","rule_type":"string","service":"string","target":"number"}]],"initial_size":"number","max_size":"number","measurement_duration":"number","min_zone_size":"number","stabilization_duration":"number","warmup_duration":"number"}]]}]],"description_kind":"plain","computed":true},"service_account_id":{"type":"string","description_kind":"plain","computed":true},"status":{"type":"string","description_kind":"plain","computed":true},"variables":{"type":["map","string"],"description_kind":"plain","computed":true}},"description_kind":"plain"}},"yandex_compute_placement_group":{"version":0,"block":{"attributes":{"created_at":{"type":"string","description_kind":"plain","computed":true},"description":{"type":"string","description_kind":"plain","optional":true},"folder_id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"group_id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"labels":{"type":["map","string"],"description_kind":"plain","optional":true},"name":{"type":"string","description_kind":"plain","optional":true},"placement_strategy":{"type":["map","string"],"description_kind":"plain","optional":true}},"description_kind":"plain"}},"yandex_compute_snapshot":{"version":0,"block":{"attributes":{"created_at":{"type":"string","description_kind":"plain","computed":true},"description":{"type":"string","description_kind":"plain","computed":true},"disk_size":{"type":"number","description_kind":"plain","computed":true},"folder_id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"hardware_generation":{"type":["list",["object",{"generation2_features":["list",["object",{}]],"legacy_features":["list",["object",{"pci_topology":"string"}]]}]],"description_kind":"plain","computed":true},"id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"labels":{"type":["map","string"],"description_kind":"plain","computed":true},"name":{"type":"string","description_kind":"plain","optional":true,"computed":true},"product_ids":{"type":["list","string"],"description_kind":"plain","computed":true},"snapshot_id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"source_disk_id":{"type":"string","description_kind":"plain","computed":true},"status":{"type":"string","description_kind":"plain","computed":true},"storage_size":{"type":"number","description_kind":"plain","computed":true}},"description_kind":"plain"}},"yandex_compute_snapshot_schedule":{"version":0,"block":{"attributes":{"created_at":{"type":"string","description_kind":"plain","computed":true},"description":{"type":"string","description_kind":"plain","optional":true,"computed":true},"disk_ids":{"type":["set","string"],"description_kind":"plain","optional":true,"computed":true},"folder_id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"labels":{"type":["map","string"],"description_kind":"plain","optional":true,"computed":true},"name":{"type":"string","description_kind":"plain","optional":true,"computed":true},"retention_period":{"type":"string","description_kind":"plain","optional":true,"computed":true},"snapshot_count":{"type":"number","description_kind":"plain","optional":true,"computed":true},"snapshot_schedule_id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"status":{"type":"string","description_kind":"plain","computed":true}},"block_types":{"schedule_policy":{"nesting_mode":"list","block":{"attributes":{"expression":{"type":"string","description_kind":"plain","optional":true,"computed":true},"start_at":{"type":"string","description_kind":"plain","optional":true,"computed":true}},"description_kind":"plain"}},"snapshot_spec":{"nesting_mode":"list","block":{"attributes":{"description":{"type":"string","description_kind":"plain","optional":true,"computed":true},"labels":{"type":["map","string"],"description_kind":"plain","optional":true,"computed":true}},"description_kind":"plain"}}},"description_kind":"plain"}},"yandex_container_registry":{"version":0,"block":{"attributes":{"created_at":{"type":"string","description_kind":"plain","computed":true},"folder_id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"labels":{"type":["map","string"],"description_kind":"plain","optional":true},"name":{"type":"string","description_kind":"plain","optional":true,"computed":true},"registry_id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"status":{"type":"string","description_kind":"plain","computed":true}},"description_kind":"plain"}},"yandex_container_registry_ip_permission":{"version":0,"block":{"attributes":{"id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"pull":{"type":["set","string"],"description_kind":"plain","computed":true},"push":{"type":["set","string"],"description_kind":"plain","computed":true},"registry_id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"registry_name":{"type":"string","description_kind":"plain","optional":true,"computed":true}},"block_types":{"timeouts":{"nesting_mode":"single","block":{"attributes":{"default":{"type":"string","description_kind":"plain","optional":true}},"description_kind":"plain"}}},"description_kind":"plain"}},"yandex_container_repository":{"version":0,"block":{"attributes":{"id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"name":{"type":"string","description_kind":"plain","optional":true,"computed":true},"repository_id":{"type":"string","description_kind":"plain","optional":true,"computed":true}},"description_kind":"plain"}},"yandex_container_repository_lifecycle_policy":{"version":0,"block":{"attributes":{"created_at":{"type":"string","description_kind":"plain","computed":true},"description":{"type":"string","description_kind":"plain","computed":true},"id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"lifecycle_policy_id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"name":{"type":"string","description_kind":"plain","optional":true,"computed":true},"repository_id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"rule":{"type":["list",["object",{"description":"string","expire_period":"string","retained_top":"number","tag_regexp":"string","untagged":"bool"}]],"description_kind":"plain","computed":true},"status":{"type":"string","description_kind":"plain","computed":true}},"block_types":{"timeouts":{"nesting_mode":"single","block":{"attributes":{"default":{"type":"string","description_kind":"plain","optional":true}},"description_kind":"plain"}}},"description_kind":"plain"}},"yandex_dataproc_cluster":{"version":0,"block":{"attributes":{"bucket":{"type":"string","description_kind":"plain","computed":true},"cluster_config":{"type":["list",["object",{"hadoop":["list",["object",{"initialization_action":["list",["object",{"args":["list","string"],"timeout":"string","uri":"string"}]],"properties":["map","string"],"services":["set","string"],"ssh_public_keys":["set","string"]}]],"subcluster_spec":["list",["object",{"assign_public_ip":"bool","autoscaling_config":["list",["object",{"cpu_utilization_target":"string","decommission_timeout":"string","max_hosts_count":"number","measurement_duration":"string","preemptible":"bool","stabilization_duration":"string","warmup_duration":"string"}]],"hosts_count":"number","id":"string","name":"string","resources":["list",["object",{"disk_size":"number","disk_type_id":"string","resource_preset_id":"string"}]],"role":"string","subnet_id":"string"}]],"version_id":"string"}]],"description_kind":"plain","computed":true},"cluster_id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"created_at":{"type":"string","description_kind":"plain","computed":true},"deletion_protection":{"type":"bool","description_kind":"plain","computed":true},"description":{"type":"string","description_kind":"plain","computed":true},"folder_id":{"type":"string","description_kind":"plain","computed":true},"host_group_ids":{"type":["set","string"],"description_kind":"plain","computed":true},"id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"labels":{"type":["map","string"],"description_kind":"plain","computed":true},"name":{"type":"string","description_kind":"plain","optional":true,"computed":true},"security_group_ids":{"type":["set","string"],"description_kind":"plain","computed":true},"service_account_id":{"type":"string","description_kind":"plain","computed":true},"ui_proxy":{"type":"bool","description_kind":"plain","computed":true},"zone_id":{"type":"string","description_kind":"plain","computed":true}},"description_kind":"plain"}},"yandex_datasphere_community":{"version":0,"block":{"attributes":{"billing_account_id":{"type":"string","description_kind":"plain","optional":true},"created_at":{"type":"string","description_kind":"plain","computed":true},"created_by":{"type":"string","description_kind":"plain","computed":true},"description":{"type":"string","description_kind":"plain","computed":true},"id":{"type":"string","description_kind":"plain","required":true},"labels":{"type":["map","string"],"description_kind":"plain","computed":true},"name":{"type":"string","description_kind":"plain","computed":true},"organization_id":{"type":"string","description_kind":"plain","computed":true},"timeouts":{"nested_type":{"attributes":{"create":{"type":"string","description":"A string that can be [parsed as a duration](https://pkg.go.dev/time#ParseDuration) consisting of numbers and unit suffixes, such as \"30s\" or \"2h45m\". Valid time units are \"s\" (seconds), \"m\" (minutes), \"h\" (hours).","description_kind":"plain","optional":true},"delete":{"type":"string","description":"A string that can be [parsed as a duration](https://pkg.go.dev/time#ParseDuration) consisting of numbers and unit suffixes, such as \"30s\" or \"2h45m\". Valid time units are \"s\" (seconds), \"m\" (minutes), \"h\" (hours). Setting a timeout for a Delete operation is only applicable if changes are saved into state before the destroy operation occurs.","description_kind":"plain","optional":true},"update":{"type":"string","description":"A string that can be [parsed as a duration](https://pkg.go.dev/time#ParseDuration) consisting of numbers and unit suffixes, such as \"30s\" or \"2h45m\". Valid time units are \"s\" (seconds), \"m\" (minutes), \"h\" (hours).","description_kind":"plain","optional":true}},"nesting_mode":"single"},"description_kind":"plain","optional":true}},"description_kind":"plain"}},"yandex_datasphere_project":{"version":0,"block":{"attributes":{"community_id":{"type":"string","description_kind":"plain","computed":true},"created_at":{"type":"string","description_kind":"plain","computed":true},"created_by":{"type":"string","description_kind":"plain","computed":true},"description":{"type":"string","description_kind":"plain","computed":true},"id":{"type":"string","description_kind":"plain","required":true},"labels":{"type":["map","string"],"description_kind":"plain","computed":true},"limits":{"nested_type":{"attributes":{"balance":{"type":"number","description_kind":"plain","computed":true},"max_units_per_execution":{"type":"number","description_kind":"plain","computed":true},"max_units_per_hour":{"type":"number","description_kind":"plain","computed":true}},"nesting_mode":"single"},"description_kind":"plain","computed":true},"name":{"type":"string","description_kind":"plain","computed":true},"settings":{"nested_type":{"attributes":{"commit_mode":{"type":"string","description_kind":"plain","computed":true},"data_proc_cluster_id":{"type":"string","description_kind":"plain","computed":true},"default_folder_id":{"type":"string","description_kind":"plain","computed":true},"ide":{"type":"string","description_kind":"plain","computed":true},"security_group_ids":{"type":["set","string"],"description_kind":"plain","computed":true},"service_account_id":{"type":"string","description_kind":"plain","computed":true},"stale_exec_timeout_mode":{"type":"string","description_kind":"plain","computed":true},"subnet_id":{"type":"string","description_kind":"plain","computed":true}},"nesting_mode":"single"},"description_kind":"plain","computed":true},"timeouts":{"nested_type":{"attributes":{"create":{"type":"string","description":"A string that can be [parsed as a duration](https://pkg.go.dev/time#ParseDuration) consisting of numbers and unit suffixes, such as \"30s\" or \"2h45m\". Valid time units are \"s\" (seconds), \"m\" (minutes), \"h\" (hours).","description_kind":"plain","optional":true},"delete":{"type":"string","description":"A string that can be [parsed as a duration](https://pkg.go.dev/time#ParseDuration) consisting of numbers and unit suffixes, such as \"30s\" or \"2h45m\". Valid time units are \"s\" (seconds), \"m\" (minutes), \"h\" (hours). Setting a timeout for a Delete operation is only applicable if changes are saved into state before the destroy operation occurs.","description_kind":"plain","optional":true},"update":{"type":"string","description":"A string that can be [parsed as a duration](https://pkg.go.dev/time#ParseDuration) consisting of numbers and unit suffixes, such as \"30s\" or \"2h45m\". Valid time units are \"s\" (seconds), \"m\" (minutes), \"h\" (hours).","description_kind":"plain","optional":true}},"nesting_mode":"single"},"description_kind":"plain","optional":true}},"description_kind":"plain"}},"yandex_dns_zone":{"version":0,"block":{"attributes":{"created_at":{"type":"string","description_kind":"plain","computed":true},"deletion_protection":{"type":"bool","description_kind":"plain","computed":true},"description":{"type":"string","description_kind":"plain","computed":true},"dns_zone_id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"folder_id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"labels":{"type":["map","string"],"description_kind":"plain","computed":true},"name":{"type":"string","description_kind":"plain","optional":true,"computed":true},"private_networks":{"type":["set","string"],"description_kind":"plain","computed":true},"public":{"type":"bool","description_kind":"plain","computed":true},"zone":{"type":"string","description_kind":"plain","computed":true}},"block_types":{"timeouts":{"nesting_mode":"single","block":{"attributes":{"create":{"type":"string","description_kind":"plain","optional":true},"delete":{"type":"string","description_kind":"plain","optional":true},"update":{"type":"string","description_kind":"plain","optional":true}},"description_kind":"plain"}}},"description_kind":"plain"}},"yandex_function":{"version":0,"block":{"attributes":{"async_invocation":{"type":["list",["object",{"retries_count":"number","service_account_id":"string","ymq_failure_target":["list",["object",{"arn":"string","service_account_id":"string"}]],"ymq_success_target":["list",["object",{"arn":"string","service_account_id":"string"}]]}]],"description_kind":"plain","computed":true},"concurrency":{"type":"number","description_kind":"plain","optional":true,"computed":true},"created_at":{"type":"string","description_kind":"plain","computed":true},"description":{"type":"string","description_kind":"plain","computed":true},"entrypoint":{"type":"string","description_kind":"plain","computed":true},"environment":{"type":["map","string"],"description_kind":"plain","computed":true},"execution_timeout":{"type":"string","description_kind":"plain","computed":true},"folder_id":{"type":"string","description_kind":"plain","optional":true},"function_id":{"type":"string","description_kind":"plain","optional":true},"id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"image_size":{"type":"number","description_kind":"plain","computed":true},"labels":{"type":["map","string"],"description_kind":"plain","computed":true},"log_options":{"type":["list",["object",{"disabled":"bool","folder_id":"string","log_group_id":"string","min_level":"string"}]],"description_kind":"plain","computed":true},"memory":{"type":"number","description_kind":"plain","computed":true},"name":{"type":"string","description_kind":"plain","optional":true},"runtime":{"type":"string","description_kind":"plain","computed":true},"service_account_id":{"type":"string","description_kind":"plain","computed":true},"tags":{"type":["set","string"],"description_kind":"plain","computed":true},"tmpfs_size":{"type":"number","description_kind":"plain","computed":true},"version":{"type":"string","description_kind":"plain","computed":true}},"block_types":{"connectivity":{"nesting_mode":"list","block":{"attributes":{"network_id":{"type":"string","description_kind":"plain","required":true}},"description_kind":"plain"},"max_items":1},"mounts":{"nesting_mode":"list","block":{"attributes":{"mode":{"type":"string","description_kind":"plain","optional":true,"computed":true},"name":{"type":"string","description_kind":"plain","required":true}},"block_types":{"ephemeral_disk":{"nesting_mode":"list","block":{"attributes":{"block_size_kb":{"type":"number","description_kind":"plain","optional":true,"computed":true},"size_gb":{"type":"number","description_kind":"plain","required":true}},"description_kind":"plain"},"max_items":1},"object_storage":{"nesting_mode":"list","block":{"attributes":{"bucket":{"type":"string","description_kind":"plain","required":true},"prefix":{"type":"string","description_kind":"plain","optional":true}},"description_kind":"plain"},"max_items":1}},"description_kind":"plain"}},"secrets":{"nesting_mode":"list","block":{"attributes":{"environment_variable":{"type":"string","description_kind":"plain","required":true},"id":{"type":"string","description_kind":"plain","required":true},"key":{"type":"string","description_kind":"plain","required":true},"version_id":{"type":"string","description_kind":"plain","required":true}},"description_kind":"plain"}},"storage_mounts":{"nesting_mode":"list","block":{"attributes":{"bucket":{"type":"string","description_kind":"plain","required":true},"mount_point_name":{"type":"string","description_kind":"plain","required":true},"prefix":{"type":"string","description_kind":"plain","optional":true},"read_only":{"type":"bool","description_kind":"plain","optional":true}},"description_kind":"plain","deprecated":true}}},"description_kind":"plain"}},"yandex_function_scaling_policy":{"version":0,"block":{"attributes":{"function_id":{"type":"string","description_kind":"plain","required":true},"id":{"type":"string","description_kind":"plain","optional":true,"computed":true}},"block_types":{"policy":{"nesting_mode":"list","block":{"attributes":{"tag":{"type":"string","description_kind":"plain","computed":true},"zone_instances_limit":{"type":"number","description_kind":"plain","optional":true},"zone_requests_limit":{"type":"number","description_kind":"plain","optional":true}},"description_kind":"plain"}}},"description_kind":"plain"}},"yandex_function_trigger":{"version":0,"block":{"attributes":{"container":{"type":["list",["object",{"id":"string","path":"string","retry_attempts":"string","retry_interval":"string","service_account_id":"string"}]],"description_kind":"plain","computed":true},"container_registry":{"type":["list",["object",{"batch_cutoff":"string","batch_size":"string","create_image":"bool","create_image_tag":"bool","delete_image":"bool","delete_image_tag":"bool","image_name":"string","registry_id":"string","tag":"string"}]],"description_kind":"plain","computed":true},"created_at":{"type":"string","description_kind":"plain","computed":true},"data_streams":{"type":["list",["object",{"batch_cutoff":"string","batch_size":"string","database":"string","service_account_id":"bool","stream_name":"string","suffix":"string"}]],"description_kind":"plain","computed":true},"description":{"type":"string","description_kind":"plain","computed":true},"dlq":{"type":["list",["object",{"queue_id":"string","service_account_id":"string"}]],"description_kind":"plain","computed":true},"folder_id":{"type":"string","description_kind":"plain","optional":true},"function":{"type":["list",["object",{"id":"string","retry_attempts":"string","retry_interval":"string","service_account_id":"string","tag":"string"}]],"description_kind":"plain","computed":true},"id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"iot":{"type":["list",["object",{"batch_cutoff":"string","batch_size":"string","device_id":"string","registry_id":"string","topic":"string"}]],"description_kind":"plain","computed":true},"labels":{"type":["map","string"],"description_kind":"plain","computed":true},"log_group":{"type":["list",["object",{"batch_cutoff":"string","batch_size":"string","log_group_ids":["set","string"]}]],"description_kind":"plain","computed":true},"logging":{"type":["list",["object",{"batch_cutoff":"string","batch_size":"string","group_id":"string","levels":["set","string"],"resource_ids":["set","string"],"resource_types":["set","string"],"stream_names":["set","string"]}]],"description_kind":"plain","computed":true},"mail":{"type":["list",["object",{"attachments_bucket_id":"string","batch_cutoff":"string","batch_size":"string","service_account_id":"string"}]],"description_kind":"plain","computed":true},"message_queue":{"type":["list",["object",{"batch_cutoff":"string","batch_size":"string","queue_id":"string","service_account_id":"string","visibility_timeout":"string"}]],"description_kind":"plain","computed":true},"name":{"type":"string","description_kind":"plain","optional":true},"object_storage":{"type":["list",["object",{"batch_cutoff":"string","batch_size":"string","bucket_id":"string","create":"bool","delete":"bool","prefix":"string","suffix":"string","update":"bool"}]],"description_kind":"plain","computed":true},"timer":{"type":["list",["object",{"cron_expression":"string","payload":"string"}]],"description_kind":"plain","computed":true},"trigger_id":{"type":"string","description_kind":"plain","optional":true}},"description_kind":"plain"}},"yandex_iam_policy":{"version":0,"block":{"attributes":{"id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"policy_data":{"type":"string","description_kind":"plain","computed":true}},"block_types":{"binding":{"nesting_mode":"set","block":{"attributes":{"members":{"type":["set","string"],"description_kind":"plain","required":true},"role":{"type":"string","description_kind":"plain","required":true}},"description_kind":"plain"},"min_items":1}},"description_kind":"plain"}},"yandex_iam_role":{"version":0,"block":{"attributes":{"description":{"type":"string","description_kind":"plain","optional":true},"id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"role_id":{"type":"string","description_kind":"plain","optional":true,"computed":true}},"description_kind":"plain"}},"yandex_iam_service_account":{"version":0,"block":{"attributes":{"created_at":{"type":"string","description_kind":"plain","computed":true},"description":{"type":"string","description_kind":"plain","computed":true},"folder_id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"name":{"type":"string","description_kind":"plain","optional":true,"computed":true},"service_account_id":{"type":"string","description_kind":"plain","optional":true,"computed":true}},"description_kind":"plain"}},"yandex_iam_service_agent":{"version":0,"block":{"attributes":{"cloud_id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"microservice_id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"service_id":{"type":"string","description_kind":"plain","optional":true,"computed":true}},"description_kind":"plain"}},"yandex_iam_user":{"version":0,"block":{"attributes":{"default_email":{"type":"string","description_kind":"plain","computed":true},"id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"login":{"type":"string","description_kind":"plain","optional":true,"computed":true},"user_id":{"type":"string","description_kind":"plain","optional":true,"computed":true}},"description_kind":"plain"}},"yandex_iam_workload_identity_federated_credential":{"version":1,"block":{"attributes":{"created_at":{"type":"string","description_kind":"plain","computed":true},"external_subject_id":{"type":"string","description_kind":"plain","computed":true},"federated_credential_id":{"type":"string","description_kind":"plain","required":true},"federation_id":{"type":"string","description_kind":"plain","computed":true},"id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"service_account_id":{"type":"string","description_kind":"plain","computed":true}},"description_kind":"plain"}},"yandex_iam_workload_identity_oidc_federation":{"version":1,"block":{"attributes":{"audiences":{"type":["list","string"],"description_kind":"plain","computed":true},"created_at":{"type":"string","description_kind":"plain","computed":true},"description":{"type":"string","description_kind":"plain","computed":true},"enabled":{"type":"bool","description_kind":"plain","computed":true},"federation_id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"folder_id":{"type":"string","description_kind":"plain","computed":true},"id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"issuer":{"type":"string","description_kind":"plain","computed":true},"jwks_url":{"type":"string","description_kind":"plain","computed":true},"labels":{"type":["map","string"],"description_kind":"plain","computed":true},"name":{"type":"string","description_kind":"plain","optional":true,"computed":true}},"description_kind":"plain"}},"yandex_iot_core_broker":{"version":0,"block":{"attributes":{"broker_id":{"type":"string","description_kind":"plain","optional":true},"certificates":{"type":["set","string"],"description_kind":"plain","computed":true},"created_at":{"type":"string","description_kind":"plain","computed":true},"description":{"type":"string","description_kind":"plain","computed":true},"folder_id":{"type":"string","description_kind":"plain","optional":true},"id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"labels":{"type":["map","string"],"description_kind":"plain","computed":true},"log_options":{"type":["list",["object",{"disabled":"bool","folder_id":"string","log_group_id":"string","min_level":"string"}]],"description_kind":"plain","computed":true},"name":{"type":"string","description_kind":"plain","optional":true}},"description_kind":"plain"}},"yandex_iot_core_device":{"version":0,"block":{"attributes":{"aliases":{"type":["map","string"],"description_kind":"plain","computed":true},"certificates":{"type":["set","string"],"description_kind":"plain","computed":true},"created_at":{"type":"string","description_kind":"plain","computed":true},"description":{"type":"string","description_kind":"plain","computed":true},"device_id":{"type":"string","description_kind":"plain","optional":true},"id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"name":{"type":"string","description_kind":"plain","optional":true},"passwords":{"type":["set","string"],"description_kind":"plain","computed":true},"registry_id":{"type":"string","description_kind":"plain","computed":true}},"description_kind":"plain"}},"yandex_iot_core_registry":{"version":0,"block":{"attributes":{"certificates":{"type":["set","string"],"description_kind":"plain","computed":true},"created_at":{"type":"string","description_kind":"plain","computed":true},"description":{"type":"string","description_kind":"plain","computed":true},"folder_id":{"type":"string","description_kind":"plain","optional":true},"id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"labels":{"type":["map","string"],"description_kind":"plain","computed":true},"log_options":{"type":["list",["object",{"disabled":"bool","folder_id":"string","log_group_id":"string","min_level":"string"}]],"description_kind":"plain","computed":true},"name":{"type":"string","description_kind":"plain","optional":true},"passwords":{"type":["set","string"],"description_kind":"plain","computed":true},"registry_id":{"type":"string","description_kind":"plain","optional":true}},"description_kind":"plain"}},"yandex_kms_asymmetric_encryption_key":{"version":1,"block":{"attributes":{"asymmetric_encryption_key_id":{"type":"string","description_kind":"plain","required":true},"created_at":{"type":"string","description_kind":"plain","computed":true},"deletion_protection":{"type":"bool","description_kind":"plain","optional":true},"description":{"type":"string","description_kind":"plain","optional":true},"encryption_algorithm":{"type":"string","description_kind":"plain","optional":true},"folder_id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"labels":{"type":["map","string"],"description_kind":"plain","optional":true},"name":{"type":"string","description_kind":"plain","optional":true},"status":{"type":"string","description_kind":"plain","computed":true}},"description_kind":"plain"}},"yandex_kms_asymmetric_signature_key":{"version":1,"block":{"attributes":{"asymmetric_signature_key_id":{"type":"string","description_kind":"plain","required":true},"created_at":{"type":"string","description_kind":"plain","computed":true},"deletion_protection":{"type":"bool","description_kind":"plain","optional":true},"description":{"type":"string","description_kind":"plain","optional":true},"folder_id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"labels":{"type":["map","string"],"description_kind":"plain","optional":true},"name":{"type":"string","description_kind":"plain","optional":true},"signature_algorithm":{"type":"string","description_kind":"plain","optional":true},"status":{"type":"string","description_kind":"plain","computed":true}},"description_kind":"plain"}},"yandex_kms_symmetric_key":{"version":1,"block":{"attributes":{"created_at":{"type":"string","description_kind":"plain","computed":true},"default_algorithm":{"type":"string","description_kind":"plain","optional":true},"deletion_protection":{"type":"bool","description_kind":"plain","optional":true},"description":{"type":"string","description_kind":"plain","optional":true},"folder_id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"labels":{"type":["map","string"],"description_kind":"plain","optional":true},"name":{"type":"string","description_kind":"plain","optional":true},"rotated_at":{"type":"string","description_kind":"plain","computed":true},"rotation_period":{"type":"string","description_kind":"plain","optional":true},"status":{"type":"string","description_kind":"plain","computed":true},"symmetric_key_id":{"type":"string","description_kind":"plain","optional":true}},"description_kind":"plain"}},"yandex_kubernetes_cluster":{"version":0,"block":{"attributes":{"cluster_id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"cluster_ipv4_range":{"type":"string","description_kind":"plain","computed":true},"cluster_ipv6_range":{"type":"string","description_kind":"plain","computed":true},"created_at":{"type":"string","description_kind":"plain","computed":true},"description":{"type":"string","description_kind":"plain","computed":true},"folder_id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"health":{"type":"string","description_kind":"plain","computed":true},"id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"kms_provider":{"type":["list",["object",{"key_id":"string"}]],"description_kind":"plain","computed":true},"labels":{"type":["map","string"],"description_kind":"plain","computed":true},"log_group_id":{"type":"string","description_kind":"plain","computed":true},"master":{"type":["list",["object",{"cluster_ca_certificate":"string","etcd_cluster_size":"number","external_v4_address":"string","external_v4_endpoint":"string","external_v6_address":"string","external_v6_endpoint":"string","internal_v4_address":"string","internal_v4_endpoint":"string","maintenance_policy":["list",["object",{"auto_upgrade":"bool","maintenance_window":["set",["object",{"day":"string","duration":"string","start_time":"string"}]]}]],"master_location":["list",["object",{"subnet_id":"string","zone":"string"}]],"master_logging":["list",["object",{"audit_enabled":"bool","cluster_autoscaler_enabled":"bool","enabled":"bool","events_enabled":"bool","folder_id":"string","kube_apiserver_enabled":"bool","log_group_id":"string"}]],"public_ip":"bool","regional":["list",["object",{"region":"string"}]],"security_group_ids":["set","string"],"version":"string","version_info":["list",["object",{"current_version":"string","new_revision_available":"bool","new_revision_summary":"string","version_deprecated":"bool"}]],"zonal":["list",["object",{"zone":"string"}]]}]],"description_kind":"plain","computed":true},"name":{"type":"string","description_kind":"plain","optional":true,"computed":true},"network_id":{"type":"string","description_kind":"plain","computed":true},"network_implementation":{"type":["list",["object",{"cilium":["list",["object",{"routing_mode":"string"}]]}]],"description_kind":"plain","computed":true},"network_policy_provider":{"type":"string","description_kind":"plain","computed":true},"node_ipv4_cidr_mask_size":{"type":"number","description_kind":"plain","computed":true},"node_service_account_id":{"type":"string","description_kind":"plain","computed":true},"release_channel":{"type":"string","description_kind":"plain","computed":true},"service_account_id":{"type":"string","description_kind":"plain","computed":true},"service_ipv4_range":{"type":"string","description_kind":"plain","computed":true},"service_ipv6_range":{"type":"string","description_kind":"plain","computed":true},"status":{"type":"string","description_kind":"plain","computed":true}},"description_kind":"plain"}},"yandex_kubernetes_node_group":{"version":0,"block":{"attributes":{"allocation_policy":{"type":["list",["object",{"location":["list",["object",{"subnet_id":"string","zone":"string"}]]}]],"description_kind":"plain","computed":true},"allowed_unsafe_sysctls":{"type":["list","string"],"description_kind":"plain","computed":true},"cluster_id":{"type":"string","description_kind":"plain","computed":true},"created_at":{"type":"string","description_kind":"plain","computed":true},"deploy_policy":{"type":["list",["object",{"max_expansion":"number","max_unavailable":"number"}]],"description_kind":"plain","computed":true},"description":{"type":"string","description_kind":"plain","computed":true},"folder_id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"instance_group_id":{"type":"string","description_kind":"plain","computed":true},"instance_template":{"type":["list",["object",{"boot_disk":["list",["object",{"size":"number","type":"string"}]],"container_network":["list",["object",{"pod_mtu":"number"}]],"container_runtime":["list",["object",{"type":"string"}]],"gpu_settings":["list",["object",{"gpu_cluster_id":"string","gpu_environment":"string"}]],"labels":["map","string"],"metadata":["map","string"],"name":"string","nat":"bool","network_acceleration_type":"string","network_interface":["list",["object",{"ipv4":"bool","ipv4_dns_records":["list",["object",{"dns_zone_id":"string","fqdn":"string","ptr":"bool","ttl":"number"}]],"ipv6":"bool","ipv6_dns_records":["list",["object",{"dns_zone_id":"string","fqdn":"string","ptr":"bool","ttl":"number"}]],"nat":"bool","security_group_ids":["set","string"],"subnet_ids":["set","string"]}]],"placement_policy":["list",["object",{"placement_group_id":"string"}]],"platform_id":"string","resources":["list",["object",{"core_fraction":"number","cores":"number","gpus":"number","memory":"number"}]],"scheduling_policy":["list",["object",{"preemptible":"bool"}]]}]],"description_kind":"plain","computed":true},"labels":{"type":["map","string"],"description_kind":"plain","computed":true},"maintenance_policy":{"type":["list",["object",{"auto_repair":"bool","auto_upgrade":"bool","maintenance_window":["set",["object",{"day":"string","duration":"string","start_time":"string"}]]}]],"description_kind":"plain","computed":true},"name":{"type":"string","description_kind":"plain","optional":true,"computed":true},"node_group_id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"node_labels":{"type":["map","string"],"description_kind":"plain","computed":true},"node_taints":{"type":["list","string"],"description_kind":"plain","computed":true},"scale_policy":{"type":["list",["object",{"auto_scale":["list",["object",{"initial":"number","max":"number","min":"number"}]],"fixed_scale":["list",["object",{"size":"number"}]]}]],"description_kind":"plain","computed":true},"status":{"type":"string","description_kind":"plain","computed":true},"version_info":{"type":["list",["object",{"current_version":"string","new_revision_available":"bool","new_revision_summary":"string","version_deprecated":"bool"}]],"description_kind":"plain","computed":true}},"description_kind":"plain"}},"yandex_lb_network_load_balancer":{"version":0,"block":{"attributes":{"attached_target_group":{"type":["set",["object",{"healthcheck":["list",["object",{"healthy_threshold":"number","http_options":["list",["object",{"path":"string","port":"number"}]],"interval":"number","name":"string","tcp_options":["list",["object",{"port":"number"}]],"timeout":"number","unhealthy_threshold":"number"}]],"target_group_id":"string"}]],"description_kind":"plain","computed":true},"created_at":{"type":"string","description_kind":"plain","computed":true},"deletion_protection":{"type":"bool","description_kind":"plain","computed":true},"description":{"type":"string","description_kind":"plain","computed":true},"folder_id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"labels":{"type":["map","string"],"description_kind":"plain","computed":true},"listener":{"type":["set",["object",{"external_address_spec":["set",["object",{"address":"string","ip_version":"string"}]],"internal_address_spec":["set",["object",{"address":"string","ip_version":"string","subnet_id":"string"}]],"name":"string","port":"number","protocol":"string","target_port":"number"}]],"description_kind":"plain","computed":true},"name":{"type":"string","description_kind":"plain","optional":true,"computed":true},"network_load_balancer_id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"region_id":{"type":"string","description_kind":"plain","computed":true},"type":{"type":"string","description_kind":"plain","computed":true}},"description_kind":"plain"}},"yandex_lb_target_group":{"version":0,"block":{"attributes":{"created_at":{"type":"string","description_kind":"plain","computed":true},"description":{"type":"string","description_kind":"plain","computed":true},"folder_id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"labels":{"type":["map","string"],"description_kind":"plain","computed":true},"name":{"type":"string","description_kind":"plain","optional":true,"computed":true},"target":{"type":["set",["object",{"address":"string","subnet_id":"string"}]],"description_kind":"plain","computed":true},"target_group_id":{"type":"string","description_kind":"plain","optional":true,"computed":true}},"description_kind":"plain"}},"yandex_loadtesting_agent":{"version":0,"block":{"attributes":{"agent_id":{"type":"string","description_kind":"plain","required":true},"compute_instance":{"type":["list",["object",{"boot_disk":["list",["object",{"auto_delete":"bool","device_name":"string","disk_id":"string","initialize_params":["list",["object",{"block_size":"number","description":"string","name":"string","size":"number","type":"string"}]]}]],"computed_labels":["map","string"],"computed_metadata":["map","string"],"labels":["map","string"],"metadata":["map","string"],"network_interface":["list",["object",{"index":"number","ip_address":"string","ipv4":"bool","ipv6":"bool","ipv6_address":"string","mac_address":"string","nat":"bool","nat_ip_address":"string","nat_ip_version":"string","security_group_ids":["set","string"],"subnet_id":"string"}]],"platform_id":"string","resources":["list",["object",{"core_fraction":"number","cores":"number","memory":"number"}]],"service_account_id":"string","zone_id":"string"}]],"description_kind":"plain","computed":true},"compute_instance_id":{"type":"string","description_kind":"plain","computed":true},"description":{"type":"string","description_kind":"plain","computed":true},"folder_id":{"type":"string","description_kind":"plain","computed":true},"id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"labels":{"type":["map","string"],"description_kind":"plain","computed":true},"name":{"type":"string","description_kind":"plain","computed":true}},"description_kind":"plain"}},"yandex_lockbox_secret":{"version":1,"block":{"attributes":{"created_at":{"type":"string","description_kind":"plain","computed":true},"current_version":{"type":["list",["object",{"created_at":"string","description":"string","destroy_at":"string","id":"string","payload_entry_keys":["list","string"],"secret_id":"string","status":"string"}]],"description_kind":"plain","computed":true},"deletion_protection":{"type":"bool","description_kind":"plain","computed":true},"description":{"type":"string","description_kind":"plain","computed":true},"folder_id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"kms_key_id":{"type":"string","description_kind":"plain","computed":true},"labels":{"type":["map","string"],"description_kind":"plain","computed":true},"name":{"type":"string","description_kind":"plain","optional":true,"computed":true},"password_payload_specification":{"type":["list",["object",{"excluded_punctuation":"string","include_digits":"bool","include_lowercase":"bool","include_punctuation":"bool","include_uppercase":"bool","included_punctuation":"string","length":"number","password_key":"string"}]],"description_kind":"plain","computed":true},"secret_id":{"type":"string","description_kind":"plain","optional":true},"status":{"type":"string","description_kind":"plain","computed":true}},"description_kind":"plain"}},"yandex_lockbox_secret_version":{"version":1,"block":{"attributes":{"entries":{"type":["list",["object",{"key":"string","text_value":"string"}]],"description_kind":"plain","computed":true},"id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"secret_id":{"type":"string","description_kind":"plain","required":true},"version_id":{"type":"string","description_kind":"plain","optional":true,"computed":true}},"description_kind":"plain"}},"yandex_logging_group":{"version":0,"block":{"attributes":{"cloud_id":{"type":"string","description_kind":"plain","computed":true},"created_at":{"type":"string","description_kind":"plain","computed":true},"data_stream":{"type":"string","description_kind":"plain","computed":true},"description":{"type":"string","description_kind":"plain","computed":true},"folder_id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"group_id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"labels":{"type":["map","string"],"description_kind":"plain","computed":true},"name":{"type":"string","description_kind":"plain","optional":true,"computed":true},"retention_period":{"type":"string","description_kind":"plain","computed":true},"status":{"type":"string","description_kind":"plain","computed":true}},"description_kind":"plain"}},"yandex_mdb_clickhouse_cluster":{"version":0,"block":{"attributes":{"admin_password":{"type":"string","description_kind":"plain","optional":true,"sensitive":true},"backup_retain_period_days":{"type":"number","description_kind":"plain","optional":true},"cluster_id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"copy_schema_on_new_hosts":{"type":"bool","description_kind":"plain","optional":true},"created_at":{"type":"string","description_kind":"plain","optional":true,"computed":true},"deletion_protection":{"type":"bool","description_kind":"plain","optional":true,"computed":true},"description":{"type":"string","description_kind":"plain","optional":true},"embedded_keeper":{"type":"bool","description_kind":"plain","optional":true,"computed":true},"environment":{"type":"string","description_kind":"plain","optional":true},"folder_id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"health":{"type":"string","description_kind":"plain","optional":true,"computed":true},"id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"labels":{"type":["map","string"],"description_kind":"plain","optional":true,"computed":true},"name":{"type":"string","description_kind":"plain","optional":true},"network_id":{"type":"string","description_kind":"plain","optional":true},"security_group_ids":{"type":["set","string"],"description_kind":"plain","optional":true,"computed":true},"service_account_id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"sql_database_management":{"type":"bool","description_kind":"plain","optional":true,"computed":true},"sql_user_management":{"type":"bool","description_kind":"plain","optional":true,"computed":true},"status":{"type":"string","description_kind":"plain","optional":true,"computed":true},"version":{"type":"string","description_kind":"plain","optional":true,"computed":true}},"block_types":{"access":{"nesting_mode":"list","block":{"attributes":{"data_lens":{"type":"bool","description_kind":"plain","optional":true},"data_transfer":{"type":"bool","description_kind":"plain","optional":true},"metrika":{"type":"bool","description_kind":"plain","optional":true},"serverless":{"type":"bool","description_kind":"plain","optional":true},"web_sql":{"type":"bool","description_kind":"plain","optional":true},"yandex_query":{"type":"bool","description_kind":"plain","optional":true}},"description_kind":"plain"},"max_items":1},"backup_window_start":{"nesting_mode":"list","block":{"attributes":{"hours":{"type":"number","description_kind":"plain","optional":true},"minutes":{"type":"number","description_kind":"plain","optional":true}},"description_kind":"plain"},"max_items":1},"clickhouse":{"nesting_mode":"list","block":{"block_types":{"config":{"nesting_mode":"list","block":{"attributes":{"asynchronous_insert_log_enabled":{"type":"bool","description_kind":"plain","optional":true,"computed":true},"asynchronous_insert_log_retention_size":{"type":"number","description_kind":"plain","optional":true,"computed":true},"asynchronous_insert_log_retention_time":{"type":"number","description_kind":"plain","optional":true,"computed":true},"asynchronous_metric_log_enabled":{"type":"bool","description_kind":"plain","optional":true,"computed":true},"asynchronous_metric_log_retention_size":{"type":"number","description_kind":"plain","optional":true,"computed":true},"asynchronous_metric_log_retention_time":{"type":"number","description_kind":"plain","optional":true,"computed":true},"background_buffer_flush_schedule_pool_size":{"type":"number","description_kind":"plain","optional":true,"computed":true},"background_common_pool_size":{"type":"number","description_kind":"plain","optional":true,"computed":true},"background_distributed_schedule_pool_size":{"type":"number","description_kind":"plain","optional":true,"computed":true},"background_fetches_pool_size":{"type":"number","description_kind":"plain","optional":true,"computed":true},"background_merges_mutations_concurrency_ratio":{"type":"number","description_kind":"plain","optional":true,"computed":true},"background_message_broker_schedule_pool_size":{"type":"number","description_kind":"plain","optional":true,"computed":true},"background_move_pool_size":{"type":"number","description_kind":"plain","optional":true,"computed":true},"background_pool_size":{"type":"number","description_kind":"plain","optional":true,"computed":true},"background_schedule_pool_size":{"type":"number","description_kind":"plain","optional":true,"computed":true},"default_database":{"type":"string","description_kind":"plain","optional":true,"computed":true},"dictionaries_lazy_load":{"type":"bool","description_kind":"plain","optional":true,"computed":true},"geobase_enabled":{"type":"bool","description_kind":"plain","optional":true,"computed":true},"geobase_uri":{"type":"string","description_kind":"plain","optional":true,"computed":true},"keep_alive_timeout":{"type":"number","description_kind":"plain","optional":true,"computed":true},"log_level":{"type":"string","description_kind":"plain","optional":true,"computed":true},"mark_cache_size":{"type":"number","description_kind":"plain","optional":true,"computed":true},"max_concurrent_queries":{"type":"number","description_kind":"plain","optional":true,"computed":true},"max_connections":{"type":"number","description_kind":"plain","optional":true,"computed":true},"max_partition_size_to_drop":{"type":"number","description_kind":"plain","optional":true,"computed":true},"max_table_size_to_drop":{"type":"number","description_kind":"plain","optional":true,"computed":true},"metric_log_enabled":{"type":"bool","description_kind":"plain","optional":true,"computed":true},"metric_log_retention_size":{"type":"number","description_kind":"plain","optional":true,"computed":true},"metric_log_retention_time":{"type":"number","description_kind":"plain","optional":true,"computed":true},"opentelemetry_span_log_enabled":{"type":"bool","description_kind":"plain","optional":true,"computed":true},"opentelemetry_span_log_retention_size":{"type":"number","description_kind":"plain","optional":true,"computed":true},"opentelemetry_span_log_retention_time":{"type":"number","description_kind":"plain","optional":true,"computed":true},"part_log_retention_size":{"type":"number","description_kind":"plain","optional":true,"computed":true},"part_log_retention_time":{"type":"number","description_kind":"plain","optional":true,"computed":true},"query_log_retention_size":{"type":"number","description_kind":"plain","optional":true,"computed":true},"query_log_retention_time":{"type":"number","description_kind":"plain","optional":true,"computed":true},"query_thread_log_enabled":{"type":"bool","description_kind":"plain","optional":true,"computed":true},"query_thread_log_retention_size":{"type":"number","description_kind":"plain","optional":true,"computed":true},"query_thread_log_retention_time":{"type":"number","description_kind":"plain","optional":true,"computed":true},"query_views_log_enabled":{"type":"bool","description_kind":"plain","optional":true,"computed":true},"query_views_log_retention_size":{"type":"number","description_kind":"plain","optional":true,"computed":true},"query_views_log_retention_time":{"type":"number","description_kind":"plain","optional":true,"computed":true},"session_log_enabled":{"type":"bool","description_kind":"plain","optional":true,"computed":true},"session_log_retention_size":{"type":"number","description_kind":"plain","optional":true,"computed":true},"session_log_retention_time":{"type":"number","description_kind":"plain","optional":true,"computed":true},"text_log_enabled":{"type":"bool","description_kind":"plain","optional":true,"computed":true},"text_log_level":{"type":"string","description_kind":"plain","optional":true,"computed":true},"text_log_retention_size":{"type":"number","description_kind":"plain","optional":true,"computed":true},"text_log_retention_time":{"type":"number","description_kind":"plain","optional":true,"computed":true},"timezone":{"type":"string","description_kind":"plain","optional":true,"computed":true},"total_memory_profiler_step":{"type":"number","description_kind":"plain","optional":true,"computed":true},"trace_log_enabled":{"type":"bool","description_kind":"plain","optional":true,"computed":true},"trace_log_retention_size":{"type":"number","description_kind":"plain","optional":true,"computed":true},"trace_log_retention_time":{"type":"number","description_kind":"plain","optional":true,"computed":true},"uncompressed_cache_size":{"type":"number","description_kind":"plain","optional":true,"computed":true},"zookeeper_log_enabled":{"type":"bool","description_kind":"plain","optional":true,"computed":true},"zookeeper_log_retention_size":{"type":"number","description_kind":"plain","optional":true,"computed":true},"zookeeper_log_retention_time":{"type":"number","description_kind":"plain","optional":true,"computed":true}},"block_types":{"compression":{"nesting_mode":"list","block":{"attributes":{"level":{"type":"number","description_kind":"plain","optional":true},"method":{"type":"string","description_kind":"plain","optional":true},"min_part_size":{"type":"number","description_kind":"plain","optional":true},"min_part_size_ratio":{"type":"number","description_kind":"plain","optional":true}},"description_kind":"plain"}},"graphite_rollup":{"nesting_mode":"list","block":{"attributes":{"name":{"type":"string","description_kind":"plain","optional":true},"path_column_name":{"type":"string","description_kind":"plain","optional":true,"computed":true},"time_column_name":{"type":"string","description_kind":"plain","optional":true,"computed":true},"value_column_name":{"type":"string","description_kind":"plain","optional":true,"computed":true},"version_column_name":{"type":"string","description_kind":"plain","optional":true,"computed":true}},"block_types":{"pattern":{"nesting_mode":"list","block":{"attributes":{"function":{"type":"string","description_kind":"plain","optional":true},"regexp":{"type":"string","description_kind":"plain","optional":true,"computed":true}},"block_types":{"retention":{"nesting_mode":"list","block":{"attributes":{"age":{"type":"number","description_kind":"plain","optional":true},"precision":{"type":"number","description_kind":"plain","optional":true}},"description_kind":"plain"}}},"description_kind":"plain"}}},"description_kind":"plain"}},"kafka":{"nesting_mode":"list","block":{"attributes":{"auto_offset_reset":{"type":"string","description_kind":"plain","optional":true,"computed":true},"debug":{"type":"string","description_kind":"plain","optional":true,"computed":true},"enable_ssl_certificate_verification":{"type":"bool","description_kind":"plain","optional":true,"computed":true},"max_poll_interval_ms":{"type":"number","description_kind":"plain","optional":true,"computed":true},"sasl_mechanism":{"type":"string","description_kind":"plain","optional":true,"computed":true},"sasl_password":{"type":"string","description_kind":"plain","optional":true,"computed":true,"sensitive":true},"sasl_username":{"type":"string","description_kind":"plain","optional":true,"computed":true},"security_protocol":{"type":"string","description_kind":"plain","optional":true,"computed":true},"session_timeout_ms":{"type":"number","description_kind":"plain","optional":true,"computed":true}},"description_kind":"plain"},"max_items":1},"kafka_topic":{"nesting_mode":"list","block":{"attributes":{"name":{"type":"string","description_kind":"plain","optional":true}},"block_types":{"settings":{"nesting_mode":"list","block":{"attributes":{"auto_offset_reset":{"type":"string","description_kind":"plain","optional":true,"computed":true},"debug":{"type":"string","description_kind":"plain","optional":true,"computed":true},"enable_ssl_certificate_verification":{"type":"bool","description_kind":"plain","optional":true,"computed":true},"max_poll_interval_ms":{"type":"number","description_kind":"plain","optional":true,"computed":true},"sasl_mechanism":{"type":"string","description_kind":"plain","optional":true},"sasl_password":{"type":"string","description_kind":"plain","optional":true,"sensitive":true},"sasl_username":{"type":"string","description_kind":"plain","optional":true},"security_protocol":{"type":"string","description_kind":"plain","optional":true},"session_timeout_ms":{"type":"number","description_kind":"plain","optional":true,"computed":true}},"description_kind":"plain"},"max_items":1}},"description_kind":"plain"}},"merge_tree":{"nesting_mode":"list","block":{"attributes":{"allow_remote_fs_zero_copy_replication":{"type":"bool","description_kind":"plain","optional":true,"computed":true},"check_sample_column_is_correct":{"type":"bool","description_kind":"plain","optional":true,"computed":true},"cleanup_delay_period":{"type":"number","description_kind":"plain","optional":true,"computed":true},"inactive_parts_to_delay_insert":{"type":"number","description_kind":"plain","optional":true,"computed":true},"inactive_parts_to_throw_insert":{"type":"number","description_kind":"plain","optional":true,"computed":true},"max_avg_part_size_for_too_many_parts":{"type":"number","description_kind":"plain","optional":true,"computed":true},"max_bytes_to_merge_at_max_space_in_pool":{"type":"number","description_kind":"plain","optional":true,"computed":true},"max_bytes_to_merge_at_min_space_in_pool":{"type":"number","description_kind":"plain","optional":true,"computed":true},"max_cleanup_delay_period":{"type":"number","description_kind":"plain","optional":true,"computed":true},"max_merge_selecting_sleep_ms":{"type":"number","description_kind":"plain","optional":true,"computed":true},"max_number_of_merges_with_ttl_in_pool":{"type":"number","description_kind":"plain","optional":true,"computed":true},"max_parts_in_total":{"type":"number","description_kind":"plain","optional":true,"computed":true},"max_replicated_merges_in_queue":{"type":"number","description_kind":"plain","optional":true,"computed":true},"merge_max_block_size":{"type":"number","description_kind":"plain","optional":true,"computed":true},"merge_selecting_sleep_ms":{"type":"number","description_kind":"plain","optional":true,"computed":true},"merge_with_recompression_ttl_timeout":{"type":"number","description_kind":"plain","optional":true,"computed":true},"merge_with_ttl_timeout":{"type":"number","description_kind":"plain","optional":true,"computed":true},"min_age_to_force_merge_on_partition_only":{"type":"bool","description_kind":"plain","optional":true,"computed":true},"min_age_to_force_merge_seconds":{"type":"number","description_kind":"plain","optional":true,"computed":true},"min_bytes_for_wide_part":{"type":"number","description_kind":"plain","optional":true,"computed":true},"min_rows_for_wide_part":{"type":"number","description_kind":"plain","optional":true,"computed":true},"number_of_free_entries_in_pool_to_execute_mutation":{"type":"number","description_kind":"plain","optional":true,"computed":true},"number_of_free_entries_in_pool_to_lower_max_size_of_merge":{"type":"number","description_kind":"plain","optional":true,"computed":true},"parts_to_delay_insert":{"type":"number","description_kind":"plain","optional":true,"computed":true},"parts_to_throw_insert":{"type":"number","description_kind":"plain","optional":true,"computed":true},"replicated_deduplication_window":{"type":"number","description_kind":"plain","optional":true,"computed":true},"replicated_deduplication_window_seconds":{"type":"number","description_kind":"plain","optional":true,"computed":true},"ttl_only_drop_parts":{"type":"bool","description_kind":"plain","optional":true,"computed":true}},"description_kind":"plain"},"max_items":1},"query_cache":{"nesting_mode":"list","block":{"attributes":{"max_entries":{"type":"number","description_kind":"plain","optional":true,"computed":true},"max_entry_size_in_bytes":{"type":"number","description_kind":"plain","optional":true,"computed":true},"max_entry_size_in_rows":{"type":"number","description_kind":"plain","optional":true,"computed":true},"max_size_in_bytes":{"type":"number","description_kind":"plain","optional":true,"computed":true}},"description_kind":"plain"},"max_items":1},"query_masking_rules":{"nesting_mode":"list","block":{"attributes":{"name":{"type":"string","description_kind":"plain","optional":true,"computed":true},"regexp":{"type":"string","description_kind":"plain","optional":true},"replace":{"type":"string","description_kind":"plain","optional":true,"computed":true}},"description_kind":"plain"}},"rabbitmq":{"nesting_mode":"list","block":{"attributes":{"password":{"type":"string","description_kind":"plain","optional":true,"computed":true,"sensitive":true},"username":{"type":"string","description_kind":"plain","optional":true,"computed":true},"vhost":{"type":"string","description_kind":"plain","optional":true,"computed":true}},"description_kind":"plain"},"max_items":1}},"description_kind":"plain"},"max_items":1},"resources":{"nesting_mode":"list","block":{"attributes":{"disk_size":{"type":"number","description_kind":"plain","optional":true,"computed":true},"disk_type_id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"resource_preset_id":{"type":"string","description_kind":"plain","optional":true,"computed":true}},"description_kind":"plain"},"max_items":1}},"description_kind":"plain"},"max_items":1},"cloud_storage":{"nesting_mode":"list","block":{"attributes":{"data_cache_enabled":{"type":"bool","description_kind":"plain","optional":true,"computed":true},"data_cache_max_size":{"type":"number","description_kind":"plain","optional":true,"computed":true},"enabled":{"type":"bool","description_kind":"plain","optional":true},"move_factor":{"type":"number","description_kind":"plain","optional":true,"computed":true},"prefer_not_to_merge":{"type":"bool","description_kind":"plain","optional":true,"computed":true}},"description_kind":"plain"},"max_items":1},"database":{"nesting_mode":"set","block":{"attributes":{"name":{"type":"string","description_kind":"plain","optional":true}},"description_kind":"plain"}},"format_schema":{"nesting_mode":"set","block":{"attributes":{"name":{"type":"string","description_kind":"plain","optional":true},"type":{"type":"string","description_kind":"plain","optional":true},"uri":{"type":"string","description_kind":"plain","optional":true}},"description_kind":"plain"}},"host":{"nesting_mode":"list","block":{"attributes":{"assign_public_ip":{"type":"bool","description_kind":"plain","optional":true},"fqdn":{"type":"string","description_kind":"plain","optional":true,"computed":true},"shard_name":{"type":"string","description_kind":"plain","optional":true,"computed":true},"subnet_id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"type":{"type":"string","description_kind":"plain","optional":true},"zone":{"type":"string","description_kind":"plain","optional":true}},"description_kind":"plain"}},"maintenance_window":{"nesting_mode":"list","block":{"attributes":{"day":{"type":"string","description_kind":"plain","optional":true},"hour":{"type":"number","description_kind":"plain","optional":true},"type":{"type":"string","description_kind":"plain","optional":true}},"description_kind":"plain"},"max_items":1},"ml_model":{"nesting_mode":"set","block":{"attributes":{"name":{"type":"string","description_kind":"plain","optional":true},"type":{"type":"string","description_kind":"plain","optional":true},"uri":{"type":"string","description_kind":"plain","optional":true}},"description_kind":"plain"}},"shard":{"nesting_mode":"set","block":{"attributes":{"name":{"type":"string","description_kind":"plain","optional":true},"weight":{"type":"number","description_kind":"plain","optional":true,"computed":true}},"block_types":{"resources":{"nesting_mode":"list","block":{"attributes":{"disk_size":{"type":"number","description_kind":"plain","optional":true,"computed":true},"disk_type_id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"resource_preset_id":{"type":"string","description_kind":"plain","optional":true,"computed":true}},"description_kind":"plain"},"max_items":1}},"description_kind":"plain"}},"shard_group":{"nesting_mode":"list","block":{"attributes":{"description":{"type":"string","description_kind":"plain","optional":true},"name":{"type":"string","description_kind":"plain","optional":true},"shard_names":{"type":["list","string"],"description_kind":"plain","optional":true}},"description_kind":"plain"}},"user":{"nesting_mode":"set","block":{"attributes":{"name":{"type":"string","description_kind":"plain","optional":true},"password":{"type":"string","description_kind":"plain","optional":true,"sensitive":true}},"block_types":{"permission":{"nesting_mode":"set","block":{"attributes":{"database_name":{"type":"string","description_kind":"plain","optional":true}},"description_kind":"plain"}},"quota":{"nesting_mode":"set","block":{"attributes":{"errors":{"type":"number","description_kind":"plain","optional":true,"computed":true},"execution_time":{"type":"number","description_kind":"plain","optional":true,"computed":true},"interval_duration":{"type":"number","description_kind":"plain","optional":true},"queries":{"type":"number","description_kind":"plain","optional":true,"computed":true},"read_rows":{"type":"number","description_kind":"plain","optional":true,"computed":true},"result_rows":{"type":"number","description_kind":"plain","optional":true,"computed":true}},"description_kind":"plain"}},"settings":{"nesting_mode":"list","block":{"attributes":{"add_http_cors_header":{"type":"bool","description_kind":"plain","optional":true,"computed":true},"allow_ddl":{"type":"bool","description_kind":"plain","optional":true,"computed":true},"allow_introspection_functions":{"type":"bool","description_kind":"plain","optional":true,"computed":true},"allow_suspicious_low_cardinality_types":{"type":"bool","description_kind":"plain","optional":true,"computed":true},"any_join_distinct_right_table_keys":{"type":"bool","description_kind":"plain","optional":true,"computed":true},"async_insert":{"type":"bool","description_kind":"plain","optional":true,"computed":true},"async_insert_busy_timeout":{"type":"number","description_kind":"plain","optional":true,"computed":true},"async_insert_max_data_size":{"type":"number","description_kind":"plain","optional":true,"computed":true},"async_insert_stale_timeout":{"type":"number","description_kind":"plain","optional":true,"computed":true},"async_insert_threads":{"type":"number","description_kind":"plain","optional":true,"computed":true},"cancel_http_readonly_queries_on_client_close":{"type":"bool","description_kind":"plain","optional":true,"computed":true},"compile":{"type":"bool","description_kind":"plain","optional":true,"computed":true},"compile_expressions":{"type":"bool","description_kind":"plain","optional":true,"computed":true},"connect_timeout":{"type":"number","description_kind":"plain","optional":true,"computed":true},"connect_timeout_with_failover":{"type":"number","description_kind":"plain","optional":true,"computed":true},"count_distinct_implementation":{"type":"string","description_kind":"plain","optional":true,"computed":true},"date_time_input_format":{"type":"string","description_kind":"plain","optional":true,"computed":true},"date_time_output_format":{"type":"string","description_kind":"plain","optional":true,"computed":true},"deduplicate_blocks_in_dependent_materialized_views":{"type":"bool","description_kind":"plain","optional":true,"computed":true},"distinct_overflow_mode":{"type":"string","description_kind":"plain","optional":true,"computed":true},"distributed_aggregation_memory_efficient":{"type":"bool","description_kind":"plain","optional":true,"computed":true},"distributed_ddl_task_timeout":{"type":"number","description_kind":"plain","optional":true,"computed":true},"distributed_product_mode":{"type":"string","description_kind":"plain","optional":true,"computed":true},"empty_result_for_aggregation_by_empty_set":{"type":"bool","description_kind":"plain","optional":true,"computed":true},"enable_http_compression":{"type":"bool","description_kind":"plain","optional":true,"computed":true},"fallback_to_stale_replicas_for_distributed_queries":{"type":"bool","description_kind":"plain","optional":true,"computed":true},"flatten_nested":{"type":"bool","description_kind":"plain","optional":true,"computed":true},"force_index_by_date":{"type":"bool","description_kind":"plain","optional":true,"computed":true},"force_primary_key":{"type":"bool","description_kind":"plain","optional":true,"computed":true},"format_regexp":{"type":"string","description_kind":"plain","optional":true,"computed":true},"format_regexp_skip_unmatched":{"type":"bool","description_kind":"plain","optional":true,"computed":true},"group_by_overflow_mode":{"type":"string","description_kind":"plain","optional":true,"computed":true},"group_by_two_level_threshold":{"type":"number","description_kind":"plain","optional":true,"computed":true},"group_by_two_level_threshold_bytes":{"type":"number","description_kind":"plain","optional":true,"computed":true},"hedged_connection_timeout_ms":{"type":"number","description_kind":"plain","optional":true,"computed":true},"http_connection_timeout":{"type":"number","description_kind":"plain","optional":true,"computed":true},"http_headers_progress_interval":{"type":"number","description_kind":"plain","optional":true,"computed":true},"http_receive_timeout":{"type":"number","description_kind":"plain","optional":true,"computed":true},"http_send_timeout":{"type":"number","description_kind":"plain","optional":true,"computed":true},"idle_connection_timeout":{"type":"number","description_kind":"plain","optional":true,"computed":true},"input_format_defaults_for_omitted_fields":{"type":"bool","description_kind":"plain","optional":true,"computed":true},"input_format_import_nested_json":{"type":"bool","description_kind":"plain","optional":true,"computed":true},"input_format_null_as_default":{"type":"bool","description_kind":"plain","optional":true,"computed":true},"input_format_parallel_parsing":{"type":"bool","description_kind":"plain","optional":true,"computed":true},"input_format_values_interpret_expressions":{"type":"bool","description_kind":"plain","optional":true,"computed":true},"input_format_with_names_use_header":{"type":"bool","description_kind":"plain","optional":true,"computed":true},"insert_keeper_max_retries":{"type":"number","description_kind":"plain","optional":true,"computed":true},"insert_null_as_default":{"type":"bool","description_kind":"plain","optional":true,"computed":true},"insert_quorum":{"type":"number","description_kind":"plain","optional":true,"computed":true},"insert_quorum_parallel":{"type":"bool","description_kind":"plain","optional":true,"computed":true},"insert_quorum_timeout":{"type":"number","description_kind":"plain","optional":true,"computed":true},"join_algorithm":{"type":["list","string"],"description_kind":"plain","optional":true,"computed":true},"join_overflow_mode":{"type":"string","description_kind":"plain","optional":true,"computed":true},"join_use_nulls":{"type":"bool","description_kind":"plain","optional":true,"computed":true},"joined_subquery_requires_alias":{"type":"bool","description_kind":"plain","optional":true,"computed":true},"load_balancing":{"type":"string","description_kind":"plain","optional":true,"computed":true},"local_filesystem_read_method":{"type":"string","description_kind":"plain","optional":true,"computed":true},"log_query_threads":{"type":"bool","description_kind":"plain","optional":true,"computed":true},"low_cardinality_allow_in_native_format":{"type":"bool","description_kind":"plain","optional":true,"computed":true},"max_ast_depth":{"type":"number","description_kind":"plain","optional":true,"computed":true},"max_ast_elements":{"type":"number","description_kind":"plain","optional":true,"computed":true},"max_block_size":{"type":"number","description_kind":"plain","optional":true,"computed":true},"max_bytes_before_external_group_by":{"type":"number","description_kind":"plain","optional":true,"computed":true},"max_bytes_before_external_sort":{"type":"number","description_kind":"plain","optional":true,"computed":true},"max_bytes_in_distinct":{"type":"number","description_kind":"plain","optional":true,"computed":true},"max_bytes_in_join":{"type":"number","description_kind":"plain","optional":true,"computed":true},"max_bytes_in_set":{"type":"number","description_kind":"plain","optional":true,"computed":true},"max_bytes_to_read":{"type":"number","description_kind":"plain","optional":true,"computed":true},"max_bytes_to_sort":{"type":"number","description_kind":"plain","optional":true,"computed":true},"max_bytes_to_transfer":{"type":"number","description_kind":"plain","optional":true,"computed":true},"max_columns_to_read":{"type":"number","description_kind":"plain","optional":true,"computed":true},"max_concurrent_queries_for_user":{"type":"number","description_kind":"plain","optional":true,"computed":true},"max_execution_time":{"type":"number","description_kind":"plain","optional":true,"computed":true},"max_expanded_ast_elements":{"type":"number","description_kind":"plain","optional":true,"computed":true},"max_final_threads":{"type":"number","description_kind":"plain","optional":true,"computed":true},"max_http_get_redirects":{"type":"number","description_kind":"plain","optional":true,"computed":true},"max_insert_block_size":{"type":"number","description_kind":"plain","optional":true,"computed":true},"max_insert_threads":{"type":"number","description_kind":"plain","optional":true,"computed":true},"max_memory_usage":{"type":"number","description_kind":"plain","optional":true,"computed":true},"max_memory_usage_for_user":{"type":"number","description_kind":"plain","optional":true,"computed":true},"max_network_bandwidth":{"type":"number","description_kind":"plain","optional":true,"computed":true},"max_network_bandwidth_for_user":{"type":"number","description_kind":"plain","optional":true,"computed":true},"max_parser_depth":{"type":"number","description_kind":"plain","optional":true,"computed":true},"max_query_size":{"type":"number","description_kind":"plain","optional":true,"computed":true},"max_read_buffer_size":{"type":"number","description_kind":"plain","optional":true,"computed":true},"max_replica_delay_for_distributed_queries":{"type":"number","description_kind":"plain","optional":true,"computed":true},"max_result_bytes":{"type":"number","description_kind":"plain","optional":true,"computed":true},"max_result_rows":{"type":"number","description_kind":"plain","optional":true,"computed":true},"max_rows_in_distinct":{"type":"number","description_kind":"plain","optional":true,"computed":true},"max_rows_in_join":{"type":"number","description_kind":"plain","optional":true,"computed":true},"max_rows_in_set":{"type":"number","description_kind":"plain","optional":true,"computed":true},"max_rows_to_group_by":{"type":"number","description_kind":"plain","optional":true,"computed":true},"max_rows_to_read":{"type":"number","description_kind":"plain","optional":true,"computed":true},"max_rows_to_sort":{"type":"number","description_kind":"plain","optional":true,"computed":true},"max_rows_to_transfer":{"type":"number","description_kind":"plain","optional":true,"computed":true},"max_temporary_columns":{"type":"number","description_kind":"plain","optional":true,"computed":true},"max_temporary_data_on_disk_size_for_query":{"type":"number","description_kind":"plain","optional":true,"computed":true},"max_temporary_data_on_disk_size_for_user":{"type":"number","description_kind":"plain","optional":true,"computed":true},"max_temporary_non_const_columns":{"type":"number","description_kind":"plain","optional":true,"computed":true},"max_threads":{"type":"number","description_kind":"plain","optional":true,"computed":true},"memory_overcommit_ratio_denominator":{"type":"number","description_kind":"plain","optional":true,"computed":true},"memory_overcommit_ratio_denominator_for_user":{"type":"number","description_kind":"plain","optional":true,"computed":true},"memory_profiler_sample_probability":{"type":"number","description_kind":"plain","optional":true,"computed":true},"memory_profiler_step":{"type":"number","description_kind":"plain","optional":true,"computed":true},"memory_usage_overcommit_max_wait_microseconds":{"type":"number","description_kind":"plain","optional":true,"computed":true},"merge_tree_max_bytes_to_use_cache":{"type":"number","description_kind":"plain","optional":true,"computed":true},"merge_tree_max_rows_to_use_cache":{"type":"number","description_kind":"plain","optional":true,"computed":true},"merge_tree_min_bytes_for_concurrent_read":{"type":"number","description_kind":"plain","optional":true,"computed":true},"merge_tree_min_rows_for_concurrent_read":{"type":"number","description_kind":"plain","optional":true,"computed":true},"min_bytes_to_use_direct_io":{"type":"number","description_kind":"plain","optional":true,"computed":true},"min_count_to_compile":{"type":"number","description_kind":"plain","optional":true,"computed":true},"min_count_to_compile_expression":{"type":"number","description_kind":"plain","optional":true,"computed":true},"min_execution_speed":{"type":"number","description_kind":"plain","optional":true,"computed":true},"min_execution_speed_bytes":{"type":"number","description_kind":"plain","optional":true,"computed":true},"min_insert_block_size_bytes":{"type":"number","description_kind":"plain","optional":true,"computed":true},"min_insert_block_size_rows":{"type":"number","description_kind":"plain","optional":true,"computed":true},"output_format_json_quote_64bit_integers":{"type":"bool","description_kind":"plain","optional":true,"computed":true},"output_format_json_quote_denormals":{"type":"bool","description_kind":"plain","optional":true,"computed":true},"prefer_localhost_replica":{"type":"bool","description_kind":"plain","optional":true,"computed":true},"priority":{"type":"number","description_kind":"plain","optional":true,"computed":true},"quota_mode":{"type":"string","description_kind":"plain","optional":true,"computed":true},"read_overflow_mode":{"type":"string","description_kind":"plain","optional":true,"computed":true},"readonly":{"type":"number","description_kind":"plain","optional":true,"computed":true},"receive_timeout":{"type":"number","description_kind":"plain","optional":true,"computed":true},"remote_filesystem_read_method":{"type":"string","description_kind":"plain","optional":true,"computed":true},"replication_alter_partitions_sync":{"type":"number","description_kind":"plain","optional":true,"computed":true},"result_overflow_mode":{"type":"string","description_kind":"plain","optional":true,"computed":true},"select_sequential_consistency":{"type":"bool","description_kind":"plain","optional":true,"computed":true},"send_progress_in_http_headers":{"type":"bool","description_kind":"plain","optional":true,"computed":true},"send_timeout":{"type":"number","description_kind":"plain","optional":true,"computed":true},"set_overflow_mode":{"type":"string","description_kind":"plain","optional":true,"computed":true},"skip_unavailable_shards":{"type":"bool","description_kind":"plain","optional":true,"computed":true},"sort_overflow_mode":{"type":"string","description_kind":"plain","optional":true,"computed":true},"timeout_before_checking_execution_speed":{"type":"number","description_kind":"plain","optional":true,"computed":true},"timeout_overflow_mode":{"type":"string","description_kind":"plain","optional":true,"computed":true},"transfer_overflow_mode":{"type":"string","description_kind":"plain","optional":true,"computed":true},"transform_null_in":{"type":"bool","description_kind":"plain","optional":true,"computed":true},"use_hedged_requests":{"type":"bool","description_kind":"plain","optional":true,"computed":true},"use_uncompressed_cache":{"type":"bool","description_kind":"plain","optional":true,"computed":true},"wait_for_async_insert":{"type":"bool","description_kind":"plain","optional":true,"computed":true},"wait_for_async_insert_timeout":{"type":"number","description_kind":"plain","optional":true,"computed":true}},"description_kind":"plain"},"max_items":1}},"description_kind":"plain"}},"zookeeper":{"nesting_mode":"list","block":{"block_types":{"resources":{"nesting_mode":"list","block":{"attributes":{"disk_size":{"type":"number","description_kind":"plain","optional":true,"computed":true},"disk_type_id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"resource_preset_id":{"type":"string","description_kind":"plain","optional":true,"computed":true}},"description_kind":"plain"},"max_items":1}},"description_kind":"plain"},"max_items":1}},"description_kind":"plain"}},"yandex_mdb_elasticsearch_cluster":{"version":0,"block":{"attributes":{"cluster_id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"config":{"type":["list",["object",{"admin_password":"string","data_node":["list",["object",{"resources":["list",["object",{"disk_size":"number","disk_type_id":"string","resource_preset_id":"string"}]]}]],"edition":"string","master_node":["list",["object",{"resources":["list",["object",{"disk_size":"number","disk_type_id":"string","resource_preset_id":"string"}]]}]],"plugins":["set","string"],"version":"string"}]],"description_kind":"plain","computed":true},"created_at":{"type":"string","description_kind":"plain","computed":true},"deletion_protection":{"type":"bool","description_kind":"plain","optional":true,"computed":true},"description":{"type":"string","description_kind":"plain","optional":true,"computed":true},"environment":{"type":"string","description_kind":"plain","computed":true},"folder_id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"health":{"type":"string","description_kind":"plain","computed":true},"host":{"type":["set",["object",{"assign_public_ip":"bool","fqdn":"string","name":"string","subnet_id":"string","type":"string","zone":"string"}]],"description_kind":"plain","computed":true},"id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"labels":{"type":["map","string"],"description_kind":"plain","optional":true,"computed":true},"maintenance_window":{"type":["list",["object",{"day":"string","hour":"number","type":"string"}]],"description_kind":"plain","computed":true},"name":{"type":"string","description_kind":"plain","optional":true,"computed":true},"network_id":{"type":"string","description_kind":"plain","computed":true},"security_group_ids":{"type":["set","string"],"description_kind":"plain","optional":true,"computed":true},"service_account_id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"status":{"type":"string","description_kind":"plain","computed":true}},"description_kind":"plain"}},"yandex_mdb_greenplum_cluster":{"version":0,"block":{"attributes":{"access":{"type":["list",["object",{"data_lens":"bool","data_transfer":"bool","web_sql":"bool","yandex_query":"bool"}]],"description_kind":"plain","computed":true},"assign_public_ip":{"type":"bool","description_kind":"plain","computed":true},"backup_window_start":{"type":["list",["object",{"hours":"number","minutes":"number"}]],"description_kind":"plain","computed":true},"cloud_storage":{"type":["list",["object",{"enable":"bool"}]],"description_kind":"plain","computed":true},"cluster_id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"created_at":{"type":"string","description_kind":"plain","computed":true},"deletion_protection":{"type":"bool","description_kind":"plain","computed":true},"description":{"type":"string","description_kind":"plain","computed":true},"environment":{"type":"string","description_kind":"plain","computed":true},"folder_id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"greenplum_config":{"type":["map","string"],"description_kind":"plain","optional":true,"computed":true},"health":{"type":"string","description_kind":"plain","computed":true},"id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"labels":{"type":["map","string"],"description_kind":"plain","computed":true},"maintenance_window":{"type":["list",["object",{"day":"string","hour":"number","type":"string"}]],"description_kind":"plain","computed":true},"master_host_count":{"type":"number","description_kind":"plain","computed":true},"master_host_group_ids":{"type":["set","string"],"description_kind":"plain","optional":true,"computed":true},"master_hosts":{"type":["list",["object",{"assign_public_ip":"bool","fqdn":"string"}]],"description_kind":"plain","computed":true},"master_subcluster":{"type":["list",["object",{"resources":["list",["object",{"disk_size":"number","disk_type_id":"string","resource_preset_id":"string"}]]}]],"description_kind":"plain","computed":true},"name":{"type":"string","description_kind":"plain","optional":true,"computed":true},"network_id":{"type":"string","description_kind":"plain","computed":true},"security_group_ids":{"type":["set","string"],"description_kind":"plain","computed":true},"segment_host_count":{"type":"number","description_kind":"plain","computed":true},"segment_host_group_ids":{"type":["set","string"],"description_kind":"plain","optional":true,"computed":true},"segment_hosts":{"type":["list",["object",{"fqdn":"string"}]],"description_kind":"plain","computed":true},"segment_in_host":{"type":"number","description_kind":"plain","computed":true},"segment_subcluster":{"type":["list",["object",{"resources":["list",["object",{"disk_size":"number","disk_type_id":"string","resource_preset_id":"string"}]]}]],"description_kind":"plain","computed":true},"status":{"type":"string","description_kind":"plain","computed":true},"subnet_id":{"type":"string","description_kind":"plain","computed":true},"user_name":{"type":"string","description_kind":"plain","computed":true},"version":{"type":"string","description_kind":"plain","computed":true},"zone":{"type":"string","description_kind":"plain","computed":true}},"block_types":{"background_activities":{"nesting_mode":"list","block":{"block_types":{"analyze_and_vacuum":{"nesting_mode":"list","block":{"attributes":{"analyze_timeout":{"type":"number","description_kind":"plain","optional":true,"computed":true},"start_time":{"type":"string","description_kind":"plain","optional":true,"computed":true},"vacuum_timeout":{"type":"number","description_kind":"plain","optional":true,"computed":true}},"description_kind":"plain"}},"query_killer_idle":{"nesting_mode":"list","block":{"attributes":{"enable":{"type":"bool","description_kind":"plain","optional":true,"computed":true},"ignore_users":{"type":["list","string"],"description_kind":"plain","optional":true,"computed":true},"max_age":{"type":"number","description_kind":"plain","optional":true,"computed":true}},"description_kind":"plain"}},"query_killer_idle_in_transaction":{"nesting_mode":"list","block":{"attributes":{"enable":{"type":"bool","description_kind":"plain","optional":true,"computed":true},"ignore_users":{"type":["list","string"],"description_kind":"plain","optional":true,"computed":true},"max_age":{"type":"number","description_kind":"plain","optional":true,"computed":true}},"description_kind":"plain"}},"query_killer_long_running":{"nesting_mode":"list","block":{"attributes":{"enable":{"type":"bool","description_kind":"plain","optional":true,"computed":true},"ignore_users":{"type":["list","string"],"description_kind":"plain","optional":true,"computed":true},"max_age":{"type":"number","description_kind":"plain","optional":true,"computed":true}},"description_kind":"plain"}}},"description_kind":"plain"}},"pooler_config":{"nesting_mode":"list","block":{"attributes":{"pool_client_idle_timeout":{"type":"number","description_kind":"plain","optional":true},"pool_size":{"type":"number","description_kind":"plain","optional":true},"pooling_mode":{"type":"string","description_kind":"plain","optional":true}},"description_kind":"plain"},"max_items":1},"pxf_config":{"nesting_mode":"list","block":{"attributes":{"connection_timeout":{"type":"number","description_kind":"plain","optional":true},"max_threads":{"type":"number","description_kind":"plain","optional":true},"pool_allow_core_thread_timeout":{"type":"bool","description_kind":"plain","optional":true},"pool_core_size":{"type":"number","description_kind":"plain","optional":true},"pool_max_size":{"type":"number","description_kind":"plain","optional":true},"pool_queue_capacity":{"type":"number","description_kind":"plain","optional":true},"upload_timeout":{"type":"number","description_kind":"plain","optional":true},"xms":{"type":"number","description_kind":"plain","optional":true},"xmx":{"type":"number","description_kind":"plain","optional":true}},"description_kind":"plain"}}},"description_kind":"plain"}},"yandex_mdb_kafka_cluster":{"version":0,"block":{"attributes":{"access":{"type":["list",["object",{"data_transfer":"bool"}]],"description_kind":"plain","computed":true},"cluster_id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"created_at":{"type":"string","description_kind":"plain","computed":true},"deletion_protection":{"type":"bool","description_kind":"plain","optional":true,"computed":true},"description":{"type":"string","description_kind":"plain","computed":true},"disk_size_autoscaling":{"type":["list",["object",{"disk_size_limit":"number","emergency_usage_threshold":"number","planned_usage_threshold":"number"}]],"description_kind":"plain","computed":true},"environment":{"type":"string","description_kind":"plain","computed":true},"folder_id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"health":{"type":"string","description_kind":"plain","computed":true},"host":{"type":["set",["object",{"assign_public_ip":"bool","health":"string","name":"string","role":"string","subnet_id":"string","zone_id":"string"}]],"description_kind":"plain","computed":true},"host_group_ids":{"type":["set","string"],"description_kind":"plain","computed":true},"id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"labels":{"type":["map","string"],"description_kind":"plain","computed":true},"maintenance_window":{"type":["list",["object",{"day":"string","hour":"number","type":"string"}]],"description_kind":"plain","computed":true},"name":{"type":"string","description_kind":"plain","optional":true,"computed":true},"network_id":{"type":"string","description_kind":"plain","computed":true},"security_group_ids":{"type":["set","string"],"description_kind":"plain","computed":true},"status":{"type":"string","description_kind":"plain","computed":true},"subnet_ids":{"type":["list","string"],"description_kind":"plain","optional":true}},"block_types":{"config":{"nesting_mode":"list","block":{"attributes":{"assign_public_ip":{"type":"bool","description_kind":"plain","optional":true},"brokers_count":{"type":"number","description_kind":"plain","optional":true},"schema_registry":{"type":"bool","description_kind":"plain","optional":true},"unmanaged_topics":{"type":"bool","description_kind":"plain","deprecated":true,"optional":true},"version":{"type":"string","description_kind":"plain","required":true},"zones":{"type":["list","string"],"description_kind":"plain","required":true}},"block_types":{"access":{"nesting_mode":"list","block":{"attributes":{"data_transfer":{"type":"bool","description_kind":"plain","optional":true}},"description_kind":"plain"},"max_items":1},"disk_size_autoscaling":{"nesting_mode":"list","block":{"attributes":{"disk_size_limit":{"type":"number","description_kind":"plain","required":true},"emergency_usage_threshold":{"type":"number","description_kind":"plain","optional":true},"planned_usage_threshold":{"type":"number","description_kind":"plain","optional":true}},"description_kind":"plain"},"max_items":1},"kafka":{"nesting_mode":"list","block":{"block_types":{"kafka_config":{"nesting_mode":"list","block":{"attributes":{"auto_create_topics_enable":{"type":"bool","description_kind":"plain","optional":true},"compression_type":{"type":"string","description_kind":"plain","optional":true},"default_replication_factor":{"type":"string","description_kind":"plain","optional":true},"log_flush_interval_messages":{"type":"string","description_kind":"plain","optional":true},"log_flush_interval_ms":{"type":"string","description_kind":"plain","optional":true},"log_flush_scheduler_interval_ms":{"type":"string","description_kind":"plain","optional":true},"log_preallocate":{"type":"bool","description_kind":"plain","optional":true},"log_retention_bytes":{"type":"string","description_kind":"plain","optional":true},"log_retention_hours":{"type":"string","description_kind":"plain","optional":true},"log_retention_minutes":{"type":"string","description_kind":"plain","optional":true},"log_retention_ms":{"type":"string","description_kind":"plain","optional":true},"log_segment_bytes":{"type":"string","description_kind":"plain","optional":true},"message_max_bytes":{"type":"string","description_kind":"plain","optional":true},"num_partitions":{"type":"string","description_kind":"plain","optional":true},"offsets_retention_minutes":{"type":"string","description_kind":"plain","optional":true},"replica_fetch_max_bytes":{"type":"string","description_kind":"plain","optional":true},"sasl_enabled_mechanisms":{"type":["set","string"],"description_kind":"plain","optional":true},"socket_receive_buffer_bytes":{"type":"string","description_kind":"plain","optional":true},"socket_send_buffer_bytes":{"type":"string","description_kind":"plain","optional":true},"ssl_cipher_suites":{"type":["set","string"],"description_kind":"plain","optional":true}},"description_kind":"plain"},"max_items":1},"resources":{"nesting_mode":"list","block":{"attributes":{"disk_size":{"type":"number","description_kind":"plain","required":true},"disk_type_id":{"type":"string","description_kind":"plain","required":true},"resource_preset_id":{"type":"string","description_kind":"plain","required":true}},"description_kind":"plain"},"min_items":1,"max_items":1}},"description_kind":"plain"},"min_items":1,"max_items":1},"zookeeper":{"nesting_mode":"list","block":{"block_types":{"resources":{"nesting_mode":"list","block":{"attributes":{"disk_size":{"type":"number","description_kind":"plain","optional":true,"computed":true},"disk_type_id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"resource_preset_id":{"type":"string","description_kind":"plain","optional":true,"computed":true}},"description_kind":"plain"},"max_items":1}},"description_kind":"plain"},"max_items":1}},"description_kind":"plain"},"max_items":1},"topic":{"nesting_mode":"list","block":{"attributes":{"name":{"type":"string","description_kind":"plain","required":true},"partitions":{"type":"number","description_kind":"plain","required":true},"replication_factor":{"type":"number","description_kind":"plain","required":true}},"block_types":{"topic_config":{"nesting_mode":"list","block":{"attributes":{"cleanup_policy":{"type":"string","description_kind":"plain","optional":true},"compression_type":{"type":"string","description_kind":"plain","optional":true},"delete_retention_ms":{"type":"string","description_kind":"plain","optional":true},"file_delete_delay_ms":{"type":"string","description_kind":"plain","optional":true},"flush_messages":{"type":"string","description_kind":"plain","optional":true},"flush_ms":{"type":"string","description_kind":"plain","optional":true},"max_message_bytes":{"type":"string","description_kind":"plain","optional":true},"min_compaction_lag_ms":{"type":"string","description_kind":"plain","optional":true},"min_insync_replicas":{"type":"string","description_kind":"plain","optional":true},"preallocate":{"type":"bool","description_kind":"plain","optional":true},"retention_bytes":{"type":"string","description_kind":"plain","optional":true},"retention_ms":{"type":"string","description_kind":"plain","optional":true},"segment_bytes":{"type":"string","description_kind":"plain","optional":true}},"description_kind":"plain"},"max_items":1}},"description_kind":"plain"}},"user":{"nesting_mode":"set","block":{"attributes":{"name":{"type":"string","description_kind":"plain","required":true},"password":{"type":"string","description_kind":"plain","required":true,"sensitive":true}},"block_types":{"permission":{"nesting_mode":"set","block":{"attributes":{"allow_hosts":{"type":["set","string"],"description_kind":"plain","optional":true},"role":{"type":"string","description_kind":"plain","required":true},"topic_name":{"type":"string","description_kind":"plain","required":true}},"description_kind":"plain"}}},"description_kind":"plain"}}},"description_kind":"plain"}},"yandex_mdb_kafka_connector":{"version":0,"block":{"attributes":{"cluster_id":{"type":"string","description_kind":"plain","required":true},"connector_config_mirrormaker":{"type":["list",["object",{"replication_factor":"number","source_cluster":["list",["object",{"alias":"string","external_cluster":["list",["object",{"bootstrap_servers":"string","sasl_mechanism":"string","sasl_password":"string","sasl_username":"string","security_protocol":"string"}]],"this_cluster":["list",["object",{}]]}]],"target_cluster":["list",["object",{"alias":"string","external_cluster":["list",["object",{"bootstrap_servers":"string","sasl_mechanism":"string","sasl_password":"string","sasl_username":"string","security_protocol":"string"}]],"this_cluster":["list",["object",{}]]}]],"topics":"string"}]],"description_kind":"plain","computed":true},"connector_config_s3_sink":{"type":["list",["object",{"file_compression_type":"string","file_max_records":"number","s3_connection":["list",["object",{"bucket_name":"string","external_s3":["list",["object",{"access_key_id":"string","endpoint":"string","region":"string","secret_access_key":"string"}]]}]],"topics":"string"}]],"description_kind":"plain","computed":true},"id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"name":{"type":"string","description_kind":"plain","required":true},"properties":{"type":["map","string"],"description_kind":"plain","computed":true},"tasks_max":{"type":"number","description_kind":"plain","computed":true}},"description_kind":"plain"}},"yandex_mdb_kafka_topic":{"version":0,"block":{"attributes":{"cluster_id":{"type":"string","description_kind":"plain","required":true},"id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"name":{"type":"string","description_kind":"plain","required":true},"partitions":{"type":"number","description_kind":"plain","computed":true},"replication_factor":{"type":"number","description_kind":"plain","computed":true},"topic_config":{"type":["list",["object",{"cleanup_policy":"string","compression_type":"string","delete_retention_ms":"string","file_delete_delay_ms":"string","flush_messages":"string","flush_ms":"string","max_message_bytes":"string","min_compaction_lag_ms":"string","min_insync_replicas":"string","preallocate":"bool","retention_bytes":"string","retention_ms":"string","segment_bytes":"string"}]],"description_kind":"plain","computed":true}},"description_kind":"plain"}},"yandex_mdb_kafka_user":{"version":0,"block":{"attributes":{"cluster_id":{"type":"string","description_kind":"plain","required":true},"id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"name":{"type":"string","description_kind":"plain","required":true},"password":{"type":"string","description_kind":"plain","computed":true,"sensitive":true},"permission":{"type":["set",["object",{"allow_hosts":["set","string"],"role":"string","topic_name":"string"}]],"description_kind":"plain","computed":true}},"description_kind":"plain"}},"yandex_mdb_mongodb_cluster":{"version":0,"block":{"attributes":{"cluster_id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"created_at":{"type":"string","description_kind":"plain","optional":true,"computed":true},"deletion_protection":{"type":"bool","description_kind":"plain","optional":true,"computed":true},"description":{"type":"string","description_kind":"plain","optional":true},"environment":{"type":"string","description_kind":"plain","optional":true},"folder_id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"health":{"type":"string","description_kind":"plain","optional":true,"computed":true},"id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"labels":{"type":["map","string"],"description_kind":"plain","optional":true,"computed":true},"name":{"type":"string","description_kind":"plain","optional":true},"network_id":{"type":"string","description_kind":"plain","optional":true},"security_group_ids":{"type":["set","string"],"description_kind":"plain","optional":true},"sharded":{"type":"bool","description_kind":"plain","optional":true,"computed":true},"status":{"type":"string","description_kind":"plain","optional":true,"computed":true}},"block_types":{"cluster_config":{"nesting_mode":"list","block":{"attributes":{"backup_retain_period_days":{"type":"number","description_kind":"plain","optional":true,"computed":true},"feature_compatibility_version":{"type":"string","description_kind":"plain","optional":true,"computed":true},"version":{"type":"string","description_kind":"plain","optional":true}},"block_types":{"access":{"nesting_mode":"list","block":{"attributes":{"data_lens":{"type":"bool","description_kind":"plain","optional":true},"data_transfer":{"type":"bool","description_kind":"plain","optional":true}},"description_kind":"plain"},"max_items":1},"backup_window_start":{"nesting_mode":"list","block":{"attributes":{"hours":{"type":"number","description_kind":"plain","optional":true},"minutes":{"type":"number","description_kind":"plain","optional":true}},"description_kind":"plain"},"max_items":1},"mongocfg":{"nesting_mode":"list","block":{"block_types":{"net":{"nesting_mode":"list","block":{"attributes":{"max_incoming_connections":{"type":"number","description_kind":"plain","optional":true}},"description_kind":"plain"},"max_items":1},"operation_profiling":{"nesting_mode":"list","block":{"attributes":{"mode":{"type":"string","description_kind":"plain","optional":true},"slow_op_threshold":{"type":"number","description_kind":"plain","optional":true}},"description_kind":"plain"},"max_items":1},"storage":{"nesting_mode":"list","block":{"block_types":{"wired_tiger":{"nesting_mode":"list","block":{"attributes":{"cache_size_gb":{"type":"number","description_kind":"plain","optional":true}},"description_kind":"plain"},"max_items":1}},"description_kind":"plain"},"max_items":1}},"description_kind":"plain"},"max_items":1},"mongod":{"nesting_mode":"list","block":{"block_types":{"audit_log":{"nesting_mode":"list","block":{"attributes":{"filter":{"type":"string","description_kind":"plain","optional":true},"runtime_configuration":{"type":"bool","description_kind":"plain","optional":true}},"description_kind":"plain"},"max_items":1},"net":{"nesting_mode":"list","block":{"attributes":{"compressors":{"type":["list","string"],"description_kind":"plain","optional":true},"max_incoming_connections":{"type":"number","description_kind":"plain","optional":true}},"description_kind":"plain"},"max_items":1},"operation_profiling":{"nesting_mode":"list","block":{"attributes":{"mode":{"type":"string","description_kind":"plain","optional":true},"slow_op_sample_rate":{"type":"number","description_kind":"plain","optional":true},"slow_op_threshold":{"type":"number","description_kind":"plain","optional":true}},"description_kind":"plain"},"max_items":1},"security":{"nesting_mode":"list","block":{"attributes":{"enable_encryption":{"type":"bool","description_kind":"plain","optional":true}},"block_types":{"kmip":{"nesting_mode":"list","block":{"attributes":{"client_certificate":{"type":"string","description_kind":"plain","optional":true},"key_identifier":{"type":"string","description_kind":"plain","optional":true},"port":{"type":"number","description_kind":"plain","optional":true},"server_ca":{"type":"string","description_kind":"plain","optional":true},"server_name":{"type":"string","description_kind":"plain","optional":true}},"description_kind":"plain"},"max_items":1}},"description_kind":"plain"},"max_items":1},"set_parameter":{"nesting_mode":"list","block":{"attributes":{"audit_authorization_success":{"type":"bool","description_kind":"plain","optional":true},"enable_flow_control":{"type":"bool","description_kind":"plain","optional":true},"min_snapshot_history_window_in_seconds":{"type":"number","description_kind":"plain","optional":true}},"description_kind":"plain"},"max_items":1},"storage":{"nesting_mode":"list","block":{"block_types":{"journal":{"nesting_mode":"list","block":{"attributes":{"commit_interval":{"type":"number","description_kind":"plain","optional":true}},"description_kind":"plain"},"max_items":1},"wired_tiger":{"nesting_mode":"list","block":{"attributes":{"block_compressor":{"type":"string","description_kind":"plain","optional":true},"cache_size_gb":{"type":"number","description_kind":"plain","optional":true},"prefix_compression":{"type":"bool","description_kind":"plain","optional":true}},"description_kind":"plain"},"max_items":1}},"description_kind":"plain"},"max_items":1}},"description_kind":"plain"},"max_items":1},"mongos":{"nesting_mode":"list","block":{"block_types":{"net":{"nesting_mode":"list","block":{"attributes":{"compressors":{"type":["list","string"],"description_kind":"plain","optional":true},"max_incoming_connections":{"type":"number","description_kind":"plain","optional":true}},"description_kind":"plain"},"max_items":1}},"description_kind":"plain"},"max_items":1},"performance_diagnostics":{"nesting_mode":"list","block":{"attributes":{"enabled":{"type":"bool","description_kind":"plain","optional":true}},"description_kind":"plain"},"max_items":1}},"description_kind":"plain"},"max_items":1},"database":{"nesting_mode":"set","block":{"attributes":{"name":{"type":"string","description_kind":"plain","optional":true}},"description_kind":"plain","deprecated":true}},"disk_size_autoscaling_mongocfg":{"nesting_mode":"list","block":{"attributes":{"disk_size_limit":{"type":"number","description_kind":"plain","optional":true},"emergency_usage_threshold":{"type":"number","description_kind":"plain","optional":true},"planned_usage_threshold":{"type":"number","description_kind":"plain","optional":true}},"description_kind":"plain"},"max_items":1},"disk_size_autoscaling_mongod":{"nesting_mode":"list","block":{"attributes":{"disk_size_limit":{"type":"number","description_kind":"plain","optional":true},"emergency_usage_threshold":{"type":"number","description_kind":"plain","optional":true},"planned_usage_threshold":{"type":"number","description_kind":"plain","optional":true}},"description_kind":"plain"},"max_items":1},"disk_size_autoscaling_mongoinfra":{"nesting_mode":"list","block":{"attributes":{"disk_size_limit":{"type":"number","description_kind":"plain","optional":true},"emergency_usage_threshold":{"type":"number","description_kind":"plain","optional":true},"planned_usage_threshold":{"type":"number","description_kind":"plain","optional":true}},"description_kind":"plain"},"max_items":1},"disk_size_autoscaling_mongos":{"nesting_mode":"list","block":{"attributes":{"disk_size_limit":{"type":"number","description_kind":"plain","optional":true},"emergency_usage_threshold":{"type":"number","description_kind":"plain","optional":true},"planned_usage_threshold":{"type":"number","description_kind":"plain","optional":true}},"description_kind":"plain"},"max_items":1},"host":{"nesting_mode":"list","block":{"attributes":{"assign_public_ip":{"type":"bool","description_kind":"plain","optional":true},"health":{"type":"string","description_kind":"plain","optional":true,"computed":true},"name":{"type":"string","description_kind":"plain","optional":true,"computed":true},"role":{"type":"string","description_kind":"plain","optional":true,"computed":true},"shard_name":{"type":"string","description_kind":"plain","optional":true,"computed":true},"subnet_id":{"type":"string","description_kind":"plain","optional":true},"type":{"type":"string","description_kind":"plain","optional":true},"zone_id":{"type":"string","description_kind":"plain","optional":true}},"block_types":{"host_parameters":{"nesting_mode":"list","block":{"attributes":{"hidden":{"type":"bool","description_kind":"plain","optional":true},"priority":{"type":"number","description_kind":"plain","optional":true},"secondary_delay_secs":{"type":"number","description_kind":"plain","optional":true},"tags":{"type":["map","string"],"description_kind":"plain","optional":true}},"description_kind":"plain"},"max_items":1}},"description_kind":"plain"}},"maintenance_window":{"nesting_mode":"list","block":{"attributes":{"day":{"type":"string","description_kind":"plain","optional":true},"hour":{"type":"number","description_kind":"plain","optional":true},"type":{"type":"string","description_kind":"plain","optional":true}},"description_kind":"plain"},"max_items":1},"resources":{"nesting_mode":"list","block":{"attributes":{"disk_size":{"type":"number","description_kind":"plain","optional":true},"disk_type_id":{"type":"string","description_kind":"plain","optional":true},"resource_preset_id":{"type":"string","description_kind":"plain","optional":true}},"description_kind":"plain","deprecated":true},"max_items":1},"resources_mongocfg":{"nesting_mode":"list","block":{"attributes":{"disk_size":{"type":"number","description_kind":"plain","optional":true},"disk_type_id":{"type":"string","description_kind":"plain","optional":true},"resource_preset_id":{"type":"string","description_kind":"plain","optional":true}},"description_kind":"plain"},"max_items":1},"resources_mongod":{"nesting_mode":"list","block":{"attributes":{"disk_size":{"type":"number","description_kind":"plain","optional":true},"disk_type_id":{"type":"string","description_kind":"plain","optional":true},"resource_preset_id":{"type":"string","description_kind":"plain","optional":true}},"description_kind":"plain"},"max_items":1},"resources_mongoinfra":{"nesting_mode":"list","block":{"attributes":{"disk_size":{"type":"number","description_kind":"plain","optional":true},"disk_type_id":{"type":"string","description_kind":"plain","optional":true},"resource_preset_id":{"type":"string","description_kind":"plain","optional":true}},"description_kind":"plain"},"max_items":1},"resources_mongos":{"nesting_mode":"list","block":{"attributes":{"disk_size":{"type":"number","description_kind":"plain","optional":true},"disk_type_id":{"type":"string","description_kind":"plain","optional":true},"resource_preset_id":{"type":"string","description_kind":"plain","optional":true}},"description_kind":"plain"},"max_items":1},"restore":{"nesting_mode":"list","block":{"attributes":{"backup_id":{"type":"string","description_kind":"plain","optional":true},"time":{"type":"string","description_kind":"plain","optional":true}},"description_kind":"plain"},"max_items":1},"user":{"nesting_mode":"set","block":{"attributes":{"name":{"type":"string","description_kind":"plain","optional":true},"password":{"type":"string","description_kind":"plain","optional":true,"sensitive":true}},"block_types":{"permission":{"nesting_mode":"set","block":{"attributes":{"database_name":{"type":"string","description_kind":"plain","optional":true},"roles":{"type":["list","string"],"description_kind":"plain","optional":true}},"description_kind":"plain"}}},"description_kind":"plain","deprecated":true}}},"description_kind":"plain"}},"yandex_mdb_mongodb_database":{"version":0,"block":{"attributes":{"cluster_id":{"type":"string","description_kind":"plain","required":true},"id":{"type":"string","description_kind":"plain","computed":true},"name":{"type":"string","description_kind":"plain","required":true}},"description_kind":"plain"}},"yandex_mdb_mongodb_user":{"version":0,"block":{"attributes":{"cluster_id":{"type":"string","description_kind":"plain","required":true},"id":{"type":"string","description_kind":"plain","computed":true},"name":{"type":"string","description_kind":"plain","required":true},"password":{"type":"string","description_kind":"plain","computed":true,"sensitive":true}},"block_types":{"permission":{"nesting_mode":"set","block":{"attributes":{"database_name":{"type":"string","description_kind":"plain","required":true},"roles":{"type":["set","string"],"description_kind":"plain","optional":true}},"description_kind":"plain"}}},"description_kind":"plain"}},"yandex_mdb_mysql_cluster":{"version":0,"block":{"attributes":{"backup_retain_period_days":{"type":"number","description_kind":"plain","computed":true},"backup_window_start":{"type":["list",["object",{"hours":"number","minutes":"number"}]],"description_kind":"plain","computed":true},"cluster_id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"created_at":{"type":"string","description_kind":"plain","computed":true},"database":{"type":["set",["object",{"name":"string"}]],"description_kind":"plain","computed":true},"deletion_protection":{"type":"bool","description_kind":"plain","optional":true,"computed":true},"description":{"type":"string","description_kind":"plain","optional":true},"environment":{"type":"string","description_kind":"plain","computed":true},"folder_id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"health":{"type":"string","description_kind":"plain","computed":true},"host":{"type":["list",["object",{"assign_public_ip":"bool","backup_priority":"number","fqdn":"string","priority":"number","replication_source":"string","subnet_id":"string","zone":"string"}]],"description_kind":"plain","computed":true},"host_group_ids":{"type":["set","string"],"description_kind":"plain","computed":true},"id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"labels":{"type":["map","string"],"description_kind":"plain","optional":true},"maintenance_window":{"type":["list",["object",{"day":"string","hour":"number","type":"string"}]],"description_kind":"plain","computed":true},"mysql_config":{"type":["map","string"],"description_kind":"plain","optional":true,"computed":true},"name":{"type":"string","description_kind":"plain","optional":true,"computed":true},"network_id":{"type":"string","description_kind":"plain","computed":true},"performance_diagnostics":{"type":["list",["object",{"enabled":"bool","sessions_sampling_interval":"number","statements_sampling_interval":"number"}]],"description_kind":"plain","computed":true},"resources":{"type":["list",["object",{"disk_size":"number","disk_type_id":"string","resource_preset_id":"string"}]],"description_kind":"plain","computed":true},"security_group_ids":{"type":["set","string"],"description_kind":"plain","computed":true},"status":{"type":"string","description_kind":"plain","computed":true},"user":{"type":["list",["object",{"authentication_plugin":"string","connection_limits":["list",["object",{"max_connections_per_hour":"number","max_questions_per_hour":"number","max_updates_per_hour":"number","max_user_connections":"number"}]],"global_permissions":["set","string"],"name":"string","password":"string","permission":["set",["object",{"database_name":"string","roles":["list","string"]}]]}]],"description_kind":"plain","computed":true},"version":{"type":"string","description_kind":"plain","computed":true}},"block_types":{"access":{"nesting_mode":"list","block":{"attributes":{"data_lens":{"type":"bool","description_kind":"plain","optional":true,"computed":true},"data_transfer":{"type":"bool","description_kind":"plain","optional":true,"computed":true},"web_sql":{"type":"bool","description_kind":"plain","optional":true,"computed":true}},"description_kind":"plain"},"max_items":1}},"description_kind":"plain"}},"yandex_mdb_mysql_database":{"version":0,"block":{"attributes":{"cluster_id":{"type":"string","description_kind":"plain","required":true},"id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"name":{"type":"string","description_kind":"plain","required":true}},"description_kind":"plain"}},"yandex_mdb_mysql_user":{"version":0,"block":{"attributes":{"authentication_plugin":{"type":"string","description_kind":"plain","computed":true},"cluster_id":{"type":"string","description_kind":"plain","required":true},"connection_limits":{"type":["list",["object",{"max_connections_per_hour":"number","max_questions_per_hour":"number","max_updates_per_hour":"number","max_user_connections":"number"}]],"description_kind":"plain","computed":true},"global_permissions":{"type":["set","string"],"description_kind":"plain","computed":true},"id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"name":{"type":"string","description_kind":"plain","required":true}},"block_types":{"permission":{"nesting_mode":"set","block":{"attributes":{"database_name":{"type":"string","description_kind":"plain","computed":true},"roles":{"type":["list","string"],"description_kind":"plain","optional":true}},"description_kind":"plain"}}},"description_kind":"plain"}},"yandex_mdb_opensearch_cluster":{"version":0,"block":{"attributes":{"auth_settings":{"nested_type":{"attributes":{"saml":{"nested_type":{"attributes":{"dashboards_url":{"type":"string","description_kind":"plain","computed":true},"enabled":{"type":"bool","description_kind":"plain","computed":true},"idp_entity_id":{"type":"string","description_kind":"plain","computed":true},"idp_metadata_file_content":{"type":"string","description_kind":"plain","computed":true},"roles_key":{"type":"string","description_kind":"plain","optional":true,"computed":true},"sp_entity_id":{"type":"string","description_kind":"plain","computed":true},"subject_key":{"type":"string","description_kind":"plain","optional":true,"computed":true}},"nesting_mode":"single"},"description_kind":"plain","optional":true,"computed":true}},"nesting_mode":"single"},"description_kind":"plain","optional":true,"computed":true},"cluster_id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"created_at":{"type":"string","description_kind":"plain","computed":true},"deletion_protection":{"type":"bool","description_kind":"plain","optional":true,"computed":true},"description":{"type":"string","description_kind":"plain","optional":true,"computed":true},"environment":{"type":"string","description_kind":"plain","computed":true},"folder_id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"health":{"type":"string","description_kind":"plain","computed":true},"hosts":{"nested_type":{"attributes":{"assign_public_ip":{"type":"bool","description_kind":"plain","optional":true,"computed":true},"fqdn":{"type":"string","description_kind":"plain","computed":true},"node_group":{"type":"string","description_kind":"plain","computed":true},"roles":{"type":["set","string"],"description_kind":"plain","computed":true},"subnet_id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"type":{"type":"string","description_kind":"plain","computed":true},"zone":{"type":"string","description_kind":"plain","computed":true}},"nesting_mode":"list"},"description":"Current nodes in the cluster","description_kind":"plain","computed":true},"id":{"type":"string","description_kind":"plain","computed":true},"labels":{"type":["map","string"],"description_kind":"plain","optional":true,"computed":true},"name":{"type":"string","description_kind":"plain","optional":true,"computed":true},"network_id":{"type":"string","description_kind":"plain","computed":true},"security_group_ids":{"type":["set","string"],"description_kind":"plain","optional":true,"computed":true},"service_account_id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"status":{"type":"string","description_kind":"plain","computed":true}},"block_types":{"config":{"nesting_mode":"single","block":{"attributes":{"admin_password":{"type":"string","description_kind":"plain","optional":true,"computed":true,"sensitive":true},"version":{"type":"string","description_kind":"plain","optional":true,"computed":true}},"block_types":{"access":{"nesting_mode":"single","block":{"attributes":{"data_transfer":{"type":"bool","description_kind":"plain","computed":true},"serverless":{"type":"bool","description_kind":"plain","computed":true}},"description_kind":"plain"}},"dashboards":{"nesting_mode":"single","block":{"block_types":{"node_groups":{"nesting_mode":"list","block":{"attributes":{"assign_public_ip":{"type":"bool","description_kind":"plain","optional":true,"computed":true},"hosts_count":{"type":"number","description_kind":"plain","required":true},"name":{"type":"string","description_kind":"plain","required":true},"subnet_ids":{"type":["list","string"],"description_kind":"plain","optional":true,"computed":true},"zone_ids":{"type":["set","string"],"description_kind":"plain","optional":true,"computed":true}},"block_types":{"resources":{"nesting_mode":"single","block":{"attributes":{"disk_size":{"type":"number","description_kind":"plain","required":true},"disk_type_id":{"type":"string","description_kind":"plain","required":true},"resource_preset_id":{"type":"string","description_kind":"plain","required":true}},"description_kind":"plain"}}},"description_kind":"plain"}}},"description_kind":"plain"}},"opensearch":{"nesting_mode":"single","block":{"attributes":{"plugins":{"type":["set","string"],"description_kind":"plain","optional":true,"computed":true}},"block_types":{"node_groups":{"nesting_mode":"list","block":{"attributes":{"assign_public_ip":{"type":"bool","description_kind":"plain","optional":true,"computed":true},"hosts_count":{"type":"number","description_kind":"plain","computed":true},"name":{"type":"string","description_kind":"plain","computed":true},"roles":{"type":["set","string"],"description_kind":"plain","optional":true,"computed":true},"subnet_ids":{"type":["list","string"],"description_kind":"plain","optional":true,"computed":true},"zone_ids":{"type":["set","string"],"description_kind":"plain","optional":true,"computed":true}},"block_types":{"resources":{"nesting_mode":"single","block":{"attributes":{"disk_size":{"type":"number","description_kind":"plain","required":true},"disk_type_id":{"type":"string","description_kind":"plain","required":true},"resource_preset_id":{"type":"string","description_kind":"plain","required":true}},"description_kind":"plain"}}},"description_kind":"plain"}}},"description_kind":"plain"}}},"description":"Configuration of the OpenSearch cluster.","description_kind":"plain"}},"maintenance_window":{"nesting_mode":"single","block":{"attributes":{"day":{"type":"string","description_kind":"plain","computed":true},"hour":{"type":"number","description_kind":"plain","computed":true},"type":{"type":"string","description_kind":"plain","computed":true}},"description_kind":"plain"}},"timeouts":{"nesting_mode":"single","block":{"attributes":{"create":{"type":"string","description":"A string that can be [parsed as a duration](https://pkg.go.dev/time#ParseDuration) consisting of numbers and unit suffixes, such as \"30s\" or \"2h45m\". Valid time units are \"s\" (seconds), \"m\" (minutes), \"h\" (hours).","description_kind":"plain","optional":true},"delete":{"type":"string","description":"A string that can be [parsed as a duration](https://pkg.go.dev/time#ParseDuration) consisting of numbers and unit suffixes, such as \"30s\" or \"2h45m\". Valid time units are \"s\" (seconds), \"m\" (minutes), \"h\" (hours). Setting a timeout for a Delete operation is only applicable if changes are saved into state before the destroy operation occurs.","description_kind":"plain","optional":true},"update":{"type":"string","description":"A string that can be [parsed as a duration](https://pkg.go.dev/time#ParseDuration) consisting of numbers and unit suffixes, such as \"30s\" or \"2h45m\". Valid time units are \"s\" (seconds), \"m\" (minutes), \"h\" (hours).","description_kind":"plain","optional":true}},"description_kind":"plain"}}},"description_kind":"plain"}},"yandex_mdb_postgresql_cluster":{"version":0,"block":{"attributes":{"cluster_id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"config":{"type":["list",["object",{"access":["list",["object",{"data_lens":"bool","data_transfer":"bool","serverless":"bool","web_sql":"bool"}]],"autofailover":"bool","backup_retain_period_days":"number","backup_window_start":["list",["object",{"hours":"number","minutes":"number"}]],"disk_size_autoscaling":["list",["object",{"disk_size_limit":"number","emergency_usage_threshold":"number","planned_usage_threshold":"number"}]],"performance_diagnostics":["list",["object",{"enabled":"bool","sessions_sampling_interval":"number","statements_sampling_interval":"number"}]],"pooler_config":["list",["object",{"pool_discard":"bool","pooling_mode":"string"}]],"postgresql_config":["map","string"],"resources":["list",["object",{"disk_size":"number","disk_type_id":"string","resource_preset_id":"string"}]],"version":"string"}]],"description_kind":"plain","computed":true},"created_at":{"type":"string","description_kind":"plain","computed":true},"database":{"type":["set",["object",{"extension":["set",["object",{"name":"string","version":"string"}]],"lc_collate":"string","lc_type":"string","name":"string","owner":"string","template_db":"string"}]],"description_kind":"plain","computed":true},"deletion_protection":{"type":"bool","description_kind":"plain","optional":true,"computed":true},"description":{"type":"string","description_kind":"plain","optional":true},"environment":{"type":"string","description_kind":"plain","computed":true},"folder_id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"health":{"type":"string","description_kind":"plain","computed":true},"host":{"type":["list",["object",{"assign_public_ip":"bool","fqdn":"string","priority":"number","replication_source":"string","role":"string","subnet_id":"string","zone":"string"}]],"description_kind":"plain","computed":true},"host_group_ids":{"type":["set","string"],"description_kind":"plain","computed":true},"id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"labels":{"type":["map","string"],"description_kind":"plain","computed":true},"maintenance_window":{"type":["list",["object",{"day":"string","hour":"number","type":"string"}]],"description_kind":"plain","computed":true},"name":{"type":"string","description_kind":"plain","optional":true,"computed":true},"network_id":{"type":"string","description_kind":"plain","computed":true},"security_group_ids":{"type":["set","string"],"description_kind":"plain","computed":true},"status":{"type":"string","description_kind":"plain","computed":true},"user":{"type":["list",["object",{"conn_limit":"number","grants":["list","string"],"login":"bool","name":"string","permission":["set",["object",{"database_name":"string"}]],"settings":["map","string"]}]],"description_kind":"plain","computed":true}},"description_kind":"plain"}},"yandex_mdb_postgresql_database":{"version":0,"block":{"attributes":{"cluster_id":{"type":"string","description_kind":"plain","required":true},"deletion_protection":{"type":"string","description_kind":"plain","optional":true},"id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"lc_collate":{"type":"string","description_kind":"plain","optional":true,"computed":true},"lc_type":{"type":"string","description_kind":"plain","optional":true,"computed":true},"name":{"type":"string","description_kind":"plain","required":true},"owner":{"type":"string","description_kind":"plain","optional":true,"computed":true},"template_db":{"type":"string","description_kind":"plain","optional":true,"computed":true}},"block_types":{"extension":{"nesting_mode":"set","block":{"attributes":{"name":{"type":"string","description_kind":"plain","required":true},"version":{"type":"string","description_kind":"plain","optional":true}},"description_kind":"plain"}}},"description_kind":"plain"}},"yandex_mdb_postgresql_user":{"version":0,"block":{"attributes":{"cluster_id":{"type":"string","description_kind":"plain","required":true},"conn_limit":{"type":"number","description_kind":"plain","optional":true},"deletion_protection":{"type":"string","description_kind":"plain","optional":true},"grants":{"type":["list","string"],"description_kind":"plain","computed":true},"id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"login":{"type":"bool","description_kind":"plain","optional":true},"name":{"type":"string","description_kind":"plain","required":true},"password":{"type":"string","description_kind":"plain","computed":true,"sensitive":true},"permission":{"type":["set",["object",{"database_name":"string"}]],"description_kind":"plain","computed":true},"settings":{"type":["map","string"],"description_kind":"plain","optional":true,"computed":true}},"description_kind":"plain"}},"yandex_mdb_redis_cluster":{"version":0,"block":{"attributes":{"announce_hostnames":{"type":"bool","description_kind":"plain","computed":true},"cluster_id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"config":{"type":["list",["object",{"client_output_buffer_limit_normal":"string","client_output_buffer_limit_pubsub":"string","databases":"number","maxmemory_percent":"number","maxmemory_policy":"string","notify_keyspace_events":"string","slowlog_log_slower_than":"number","slowlog_max_len":"number","timeout":"number","version":"string"}]],"description_kind":"plain","computed":true},"created_at":{"type":"string","description_kind":"plain","computed":true},"deletion_protection":{"type":"bool","description_kind":"plain","optional":true,"computed":true},"description":{"type":"string","description_kind":"plain","computed":true},"disk_size_autoscaling":{"type":["list",["object",{"disk_size_limit":"number","emergency_usage_threshold":"number","planned_usage_threshold":"number"}]],"description_kind":"plain","computed":true},"environment":{"type":"string","description_kind":"plain","computed":true},"folder_id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"health":{"type":"string","description_kind":"plain","computed":true},"host":{"type":["list",["object",{"assign_public_ip":"bool","fqdn":"string","replica_priority":"number","shard_name":"string","subnet_id":"string","zone":"string"}]],"description_kind":"plain","computed":true},"id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"labels":{"type":["map","string"],"description_kind":"plain","computed":true},"maintenance_window":{"type":["list",["object",{"day":"string","hour":"number","type":"string"}]],"description_kind":"plain","computed":true},"name":{"type":"string","description_kind":"plain","optional":true,"computed":true},"network_id":{"type":"string","description_kind":"plain","computed":true},"persistence_mode":{"type":"string","description_kind":"plain","computed":true},"resources":{"type":["list",["object",{"disk_size":"number","disk_type_id":"string","resource_preset_id":"string"}]],"description_kind":"plain","computed":true},"security_group_ids":{"type":["set","string"],"description_kind":"plain","computed":true},"sharded":{"type":"bool","description_kind":"plain","computed":true},"status":{"type":"string","description_kind":"plain","computed":true},"tls_enabled":{"type":"bool","description_kind":"plain","computed":true}},"description_kind":"plain"}},"yandex_mdb_sqlserver_cluster":{"version":0,"block":{"attributes":{"backup_window_start":{"type":["list",["object",{"hours":"number","minutes":"number"}]],"description_kind":"plain","computed":true},"cluster_id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"created_at":{"type":"string","description_kind":"plain","computed":true},"database":{"type":["list",["object",{"name":"string"}]],"description_kind":"plain","computed":true},"deletion_protection":{"type":"bool","description_kind":"plain","optional":true,"computed":true},"description":{"type":"string","description_kind":"plain","computed":true},"environment":{"type":"string","description_kind":"plain","computed":true},"folder_id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"health":{"type":"string","description_kind":"plain","computed":true},"host":{"type":["list",["object",{"assign_public_ip":"bool","fqdn":"string","subnet_id":"string","zone":"string"}]],"description_kind":"plain","computed":true},"host_group_ids":{"type":["set","string"],"description_kind":"plain","computed":true},"id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"labels":{"type":["map","string"],"description_kind":"plain","computed":true},"name":{"type":"string","description_kind":"plain","optional":true,"computed":true},"network_id":{"type":"string","description_kind":"plain","computed":true},"resources":{"type":["list",["object",{"disk_size":"number","disk_type_id":"string","resource_preset_id":"string"}]],"description_kind":"plain","computed":true},"security_group_ids":{"type":["set","string"],"description_kind":"plain","computed":true},"sqlcollation":{"type":"string","description_kind":"plain","optional":true,"computed":true},"sqlserver_config":{"type":["map","string"],"description_kind":"plain","optional":true,"computed":true},"status":{"type":"string","description_kind":"plain","computed":true},"user":{"type":["list",["object",{"name":"string","password":"string","permission":["set",["object",{"database_name":"string","roles":["set","string"]}]]}]],"description_kind":"plain","computed":true},"version":{"type":"string","description_kind":"plain","computed":true}},"description_kind":"plain"}},"yandex_message_queue":{"version":0,"block":{"attributes":{"access_key":{"type":"string","description_kind":"plain","optional":true},"arn":{"type":"string","description_kind":"plain","computed":true},"id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"name":{"type":"string","description_kind":"plain","required":true},"region_id":{"type":"string","description_kind":"plain","optional":true},"secret_key":{"type":"string","description_kind":"plain","optional":true,"sensitive":true},"url":{"type":"string","description_kind":"plain","computed":true}},"description_kind":"plain"}},"yandex_monitoring_dashboard":{"version":0,"block":{"attributes":{"dashboard_id":{"type":"string","description":"Dashboard ID","description_kind":"plain","optional":true},"description":{"type":"string","description":"Dashboard description","description_kind":"plain","optional":true},"folder_id":{"type":"string","description":"Folder ID","description_kind":"plain","optional":true,"computed":true},"id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"labels":{"type":["map","string"],"description":"Dashboard labels","description_kind":"plain","computed":true},"name":{"type":"string","description":"Dashboard name, used as local identifier in folder_id","description_kind":"plain","optional":true},"parametrization":{"type":["list",["object",{"parameters":["list",["object",{"custom":["list",["object",{"default_values":["list","string"],"multiselectable":"bool","values":["list","string"]}]],"description":"string","hidden":"bool","id":"string","label_values":["list",["object",{"default_values":["list","string"],"folder_id":"string","label_key":"string","multiselectable":"bool","selectors":"string"}]],"text":["list",["object",{"default_value":"string"}]],"title":"string"}]],"selectors":"string"}]],"description":"Dashboard parametrization","description_kind":"plain","computed":true},"title":{"type":"string","description":"Dashboard title","description_kind":"plain","computed":true},"widgets":{"type":["list",["object",{"chart":["list",["object",{"chart_id":"string","description":"string","display_legend":"bool","freeze":"string","name_hiding_settings":["list",["object",{"names":["list","string"],"positive":"bool"}]],"queries":["list",["object",{"downsampling":["list",["object",{"disabled":"bool","gap_filling":"string","grid_aggregation":"string","grid_interval":"number","max_points":"number"}]],"target":["list",["object",{"hidden":"bool","query":"string","text_mode":"bool"}]]}]],"series_overrides":["list",["object",{"name":"string","settings":["list",["object",{"color":"string","grow_down":"bool","name":"string","stack_name":"string","type":"string","yaxis_position":"string"}]],"target_index":"string"}]],"title":"string","visualization_settings":["list",["object",{"aggregation":"string","color_scheme_settings":["list",["object",{"automatic":["list",["object",{}]],"gradient":["list",["object",{"green_value":"string","red_value":"string","violet_value":"string","yellow_value":"string"}]],"standard":["list",["object",{}]]}]],"heatmap_settings":["list",["object",{"green_value":"string","red_value":"string","violet_value":"string","yellow_value":"string"}]],"interpolate":"string","normalize":"bool","show_labels":"bool","title":"string","type":"string","yaxis_settings":["list",["object",{"left":["list",["object",{"max":"string","min":"string","precision":"number","title":"string","type":"string","unit_format":"string"}]],"right":["list",["object",{"max":"string","min":"string","precision":"number","title":"string","type":"string","unit_format":"string"}]]}]]}]]}]],"position":["list",["object",{"h":"number","w":"number","x":"number","y":"number"}]],"text":["list",["object",{"text":"string"}]],"title":["list",["object",{"size":"string","text":"string"}]]}]],"description":"Widgets","description_kind":"plain","computed":true}},"description_kind":"plain"}},"yandex_organizationmanager_group":{"version":0,"block":{"attributes":{"created_at":{"type":"string","description_kind":"plain","computed":true},"description":{"type":"string","description_kind":"plain","computed":true},"group_id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"members":{"type":["list",["object",{"id":"string","type":"string"}]],"description_kind":"plain","computed":true},"name":{"type":"string","description_kind":"plain","optional":true,"computed":true},"organization_id":{"type":"string","description_kind":"plain","optional":true}},"description_kind":"plain"}},"yandex_organizationmanager_os_login_settings":{"version":0,"block":{"attributes":{"id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"organization_id":{"type":"string","description_kind":"plain","optional":true,"computed":true}},"block_types":{"ssh_certificate_settings":{"nesting_mode":"list","block":{"attributes":{"enabled":{"type":"bool","description_kind":"plain","optional":true}},"description_kind":"plain"},"max_items":1},"user_ssh_key_settings":{"nesting_mode":"list","block":{"attributes":{"allow_manage_own_keys":{"type":"bool","description_kind":"plain","optional":true},"enabled":{"type":"bool","description_kind":"plain","optional":true}},"description_kind":"plain"},"max_items":1}},"description_kind":"plain"}},"yandex_organizationmanager_saml_federation":{"version":0,"block":{"attributes":{"auto_create_account_on_login":{"type":"bool","description_kind":"plain","computed":true},"case_insensitive_name_ids":{"type":"bool","description_kind":"plain","computed":true},"cookie_max_age":{"type":"string","description_kind":"plain","computed":true},"created_at":{"type":"string","description_kind":"plain","computed":true},"description":{"type":"string","description_kind":"plain","computed":true},"federation_id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"issuer":{"type":"string","description_kind":"plain","computed":true},"labels":{"type":["map","string"],"description_kind":"plain","optional":true},"name":{"type":"string","description_kind":"plain","optional":true,"computed":true},"organization_id":{"type":"string","description_kind":"plain","optional":true},"security_settings":{"type":["list",["object",{"encrypted_assertions":"bool"}]],"description_kind":"plain","computed":true},"sso_binding":{"type":"string","description_kind":"plain","computed":true},"sso_url":{"type":"string","description_kind":"plain","computed":true}},"description_kind":"plain"}},"yandex_organizationmanager_saml_federation_user_account":{"version":0,"block":{"attributes":{"federation_id":{"type":"string","description_kind":"plain","required":true},"id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"name_id":{"type":"string","description_kind":"plain","required":true}},"description_kind":"plain"}},"yandex_organizationmanager_user_ssh_key":{"version":0,"block":{"attributes":{"created_at":{"type":"string","description_kind":"plain","computed":true},"data":{"type":"string","description_kind":"plain","optional":true},"expires_at":{"type":"string","description_kind":"plain","optional":true},"fingerprint":{"type":"string","description_kind":"plain","computed":true},"id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"name":{"type":"string","description_kind":"plain","optional":true},"organization_id":{"type":"string","description_kind":"plain","optional":true},"subject_id":{"type":"string","description_kind":"plain","optional":true},"user_ssh_key_id":{"type":"string","description_kind":"plain","required":true}},"description_kind":"plain"}},"yandex_resourcemanager_cloud":{"version":0,"block":{"attributes":{"cloud_id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"created_at":{"type":"string","description_kind":"plain","computed":true},"description":{"type":"string","description_kind":"plain","optional":true},"id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"name":{"type":"string","description_kind":"plain","optional":true,"computed":true}},"description_kind":"plain"}},"yandex_resourcemanager_folder":{"version":0,"block":{"attributes":{"cloud_id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"created_at":{"type":"string","description_kind":"plain","computed":true},"description":{"type":"string","description_kind":"plain","computed":true},"folder_id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"labels":{"type":["map","string"],"description_kind":"plain","optional":true},"name":{"type":"string","description_kind":"plain","optional":true,"computed":true},"status":{"type":"string","description_kind":"plain","computed":true}},"description_kind":"plain"}},"yandex_serverless_container":{"version":0,"block":{"attributes":{"concurrency":{"type":"number","description_kind":"plain","computed":true},"container_id":{"type":"string","description_kind":"plain","optional":true},"core_fraction":{"type":"number","description_kind":"plain","computed":true},"cores":{"type":"number","description_kind":"plain","computed":true},"created_at":{"type":"string","description_kind":"plain","computed":true},"description":{"type":"string","description_kind":"plain","computed":true},"execution_timeout":{"type":"string","description_kind":"plain","computed":true},"folder_id":{"type":"string","description_kind":"plain","optional":true},"id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"image":{"type":["list",["object",{"args":["list","string"],"command":["list","string"],"digest":"string","environment":["map","string"],"url":"string","work_dir":"string"}]],"description_kind":"plain","computed":true},"labels":{"type":["map","string"],"description_kind":"plain","computed":true},"log_options":{"type":["list",["object",{"disabled":"bool","folder_id":"string","log_group_id":"string","min_level":"string"}]],"description_kind":"plain","computed":true},"memory":{"type":"number","description":"Container memory in megabytes, should be aligned to 128","description_kind":"plain","computed":true},"name":{"type":"string","description_kind":"plain","optional":true},"revision_id":{"type":"string","description_kind":"plain","computed":true},"service_account_id":{"type":"string","description_kind":"plain","computed":true},"url":{"type":"string","description_kind":"plain","computed":true}},"block_types":{"connectivity":{"nesting_mode":"list","block":{"attributes":{"network_id":{"type":"string","description_kind":"plain","required":true}},"description_kind":"plain"},"max_items":1},"mounts":{"nesting_mode":"list","block":{"attributes":{"mode":{"type":"string","description_kind":"plain","optional":true,"computed":true},"mount_point_path":{"type":"string","description_kind":"plain","required":true}},"block_types":{"ephemeral_disk":{"nesting_mode":"list","block":{"attributes":{"block_size_kb":{"type":"number","description_kind":"plain","optional":true,"computed":true},"size_gb":{"type":"number","description_kind":"plain","required":true}},"description_kind":"plain"},"max_items":1},"object_storage":{"nesting_mode":"list","block":{"attributes":{"bucket":{"type":"string","description_kind":"plain","required":true},"prefix":{"type":"string","description_kind":"plain","optional":true}},"description_kind":"plain"},"max_items":1}},"description_kind":"plain"}},"secrets":{"nesting_mode":"list","block":{"attributes":{"environment_variable":{"type":"string","description_kind":"plain","required":true},"id":{"type":"string","description_kind":"plain","required":true},"key":{"type":"string","description_kind":"plain","required":true},"version_id":{"type":"string","description_kind":"plain","required":true}},"description_kind":"plain"}},"storage_mounts":{"nesting_mode":"list","block":{"attributes":{"bucket":{"type":"string","description_kind":"plain","required":true},"mount_point_path":{"type":"string","description_kind":"plain","required":true},"prefix":{"type":"string","description_kind":"plain","optional":true},"read_only":{"type":"bool","description_kind":"plain","optional":true}},"description_kind":"plain","deprecated":true}}},"description_kind":"plain"}},"yandex_smartcaptcha_captcha":{"version":1,"block":{"attributes":{"allowed_sites":{"type":["list","string"],"description_kind":"plain","computed":true},"captcha_id":{"type":"string","description_kind":"plain","optional":true},"challenge_type":{"type":"string","description_kind":"plain","computed":true},"client_key":{"type":"string","description_kind":"plain","computed":true},"cloud_id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"complexity":{"type":"string","description_kind":"plain","computed":true},"created_at":{"type":"string","description_kind":"plain","computed":true},"deletion_protection":{"type":"bool","description_kind":"plain","computed":true},"folder_id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"name":{"type":"string","description_kind":"plain","optional":true,"computed":true},"override_variant":{"type":["list",["object",{"challenge_type":"string","complexity":"string","description":"string","pre_check_type":"string","uuid":"string"}]],"description_kind":"plain","computed":true},"pre_check_type":{"type":"string","description_kind":"plain","computed":true},"security_rule":{"type":["list",["object",{"condition":["list",["object",{"headers":["list",["object",{"name":"string","value":["list",["object",{"exact_match":"string","exact_not_match":"string","pire_regex_match":"string","pire_regex_not_match":"string","prefix_match":"string","prefix_not_match":"string"}]]}]],"host":["list",["object",{"hosts":["list",["object",{"exact_match":"string","exact_not_match":"string","pire_regex_match":"string","pire_regex_not_match":"string","prefix_match":"string","prefix_not_match":"string"}]]}]],"source_ip":["list",["object",{"geo_ip_match":["list",["object",{"locations":["list","string"]}]],"geo_ip_not_match":["list",["object",{"locations":["list","string"]}]],"ip_ranges_match":["list",["object",{"ip_ranges":["list","string"]}]],"ip_ranges_not_match":["list",["object",{"ip_ranges":["list","string"]}]]}]],"uri":["list",["object",{"path":["list",["object",{"exact_match":"string","exact_not_match":"string","pire_regex_match":"string","pire_regex_not_match":"string","prefix_match":"string","prefix_not_match":"string"}]],"queries":["list",["object",{"key":"string","value":["list",["object",{"exact_match":"string","exact_not_match":"string","pire_regex_match":"string","pire_regex_not_match":"string","prefix_match":"string","prefix_not_match":"string"}]]}]]}]]}]],"description":"string","name":"string","override_variant_uuid":"string","priority":"number"}]],"description_kind":"plain","computed":true},"style_json":{"type":"string","description_kind":"plain","computed":true},"suspend":{"type":"bool","description_kind":"plain","computed":true},"turn_off_hostname_check":{"type":"bool","description_kind":"plain","computed":true}},"description_kind":"plain"}},"yandex_sws_advanced_rate_limiter_profile":{"version":1,"block":{"attributes":{"advanced_rate_limiter_profile_id":{"type":"string","description_kind":"plain","optional":true},"advanced_rate_limiter_rule":{"type":["list",["object",{"description":"string","dry_run":"bool","dynamic_quota":["list",["object",{"action":"string","characteristic":["list",["object",{"case_insensitive":"bool","key_characteristic":["list",["object",{"type":"string","value":"string"}]],"simple_characteristic":["list",["object",{"type":"string"}]]}]],"condition":["list",["object",{"authority":["list",["object",{"authorities":["list",["object",{"exact_match":"string","exact_not_match":"string","pire_regex_match":"string","pire_regex_not_match":"string","prefix_match":"string","prefix_not_match":"string"}]]}]],"headers":["list",["object",{"name":"string","value":["list",["object",{"exact_match":"string","exact_not_match":"string","pire_regex_match":"string","pire_regex_not_match":"string","prefix_match":"string","prefix_not_match":"string"}]]}]],"http_method":["list",["object",{"http_methods":["list",["object",{"exact_match":"string","exact_not_match":"string","pire_regex_match":"string","pire_regex_not_match":"string","prefix_match":"string","prefix_not_match":"string"}]]}]],"request_uri":["list",["object",{"path":["list",["object",{"exact_match":"string","exact_not_match":"string","pire_regex_match":"string","pire_regex_not_match":"string","prefix_match":"string","prefix_not_match":"string"}]],"queries":["list",["object",{"key":"string","value":["list",["object",{"exact_match":"string","exact_not_match":"string","pire_regex_match":"string","pire_regex_not_match":"string","prefix_match":"string","prefix_not_match":"string"}]]}]]}]],"source_ip":["list",["object",{"geo_ip_match":["list",["object",{"locations":["list","string"]}]],"geo_ip_not_match":["list",["object",{"locations":["list","string"]}]],"ip_ranges_match":["list",["object",{"ip_ranges":["list","string"]}]],"ip_ranges_not_match":["list",["object",{"ip_ranges":["list","string"]}]]}]]}]],"limit":"number","period":"number"}]],"name":"string","priority":"number","static_quota":["list",["object",{"action":"string","condition":["list",["object",{"authority":["list",["object",{"authorities":["list",["object",{"exact_match":"string","exact_not_match":"string","pire_regex_match":"string","pire_regex_not_match":"string","prefix_match":"string","prefix_not_match":"string"}]]}]],"headers":["list",["object",{"name":"string","value":["list",["object",{"exact_match":"string","exact_not_match":"string","pire_regex_match":"string","pire_regex_not_match":"string","prefix_match":"string","prefix_not_match":"string"}]]}]],"http_method":["list",["object",{"http_methods":["list",["object",{"exact_match":"string","exact_not_match":"string","pire_regex_match":"string","pire_regex_not_match":"string","prefix_match":"string","prefix_not_match":"string"}]]}]],"request_uri":["list",["object",{"path":["list",["object",{"exact_match":"string","exact_not_match":"string","pire_regex_match":"string","pire_regex_not_match":"string","prefix_match":"string","prefix_not_match":"string"}]],"queries":["list",["object",{"key":"string","value":["list",["object",{"exact_match":"string","exact_not_match":"string","pire_regex_match":"string","pire_regex_not_match":"string","prefix_match":"string","prefix_not_match":"string"}]]}]]}]],"source_ip":["list",["object",{"geo_ip_match":["list",["object",{"locations":["list","string"]}]],"geo_ip_not_match":["list",["object",{"locations":["list","string"]}]],"ip_ranges_match":["list",["object",{"ip_ranges":["list","string"]}]],"ip_ranges_not_match":["list",["object",{"ip_ranges":["list","string"]}]]}]]}]],"limit":"number","period":"number"}]]}]],"description_kind":"plain","computed":true},"cloud_id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"created_at":{"type":"string","description_kind":"plain","computed":true},"description":{"type":"string","description_kind":"plain","computed":true},"folder_id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"labels":{"type":["map","string"],"description_kind":"plain","computed":true},"name":{"type":"string","description_kind":"plain","optional":true,"computed":true}},"description_kind":"plain"}},"yandex_sws_security_profile":{"version":1,"block":{"attributes":{"advanced_rate_limiter_profile_id":{"type":"string","description_kind":"plain","computed":true},"captcha_id":{"type":"string","description_kind":"plain","computed":true},"cloud_id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"created_at":{"type":"string","description_kind":"plain","computed":true},"default_action":{"type":"string","description_kind":"plain","computed":true},"description":{"type":"string","description_kind":"plain","computed":true},"folder_id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"labels":{"type":["map","string"],"description_kind":"plain","computed":true},"name":{"type":"string","description_kind":"plain","optional":true,"computed":true},"security_profile_id":{"type":"string","description_kind":"plain","optional":true},"security_rule":{"type":["list",["object",{"description":"string","dry_run":"bool","name":"string","priority":"number","rule_condition":["list",["object",{"action":"string","condition":["list",["object",{"authority":["list",["object",{"authorities":["list",["object",{"exact_match":"string","exact_not_match":"string","pire_regex_match":"string","pire_regex_not_match":"string","prefix_match":"string","prefix_not_match":"string"}]]}]],"headers":["list",["object",{"name":"string","value":["list",["object",{"exact_match":"string","exact_not_match":"string","pire_regex_match":"string","pire_regex_not_match":"string","prefix_match":"string","prefix_not_match":"string"}]]}]],"http_method":["list",["object",{"http_methods":["list",["object",{"exact_match":"string","exact_not_match":"string","pire_regex_match":"string","pire_regex_not_match":"string","prefix_match":"string","prefix_not_match":"string"}]]}]],"request_uri":["list",["object",{"path":["list",["object",{"exact_match":"string","exact_not_match":"string","pire_regex_match":"string","pire_regex_not_match":"string","prefix_match":"string","prefix_not_match":"string"}]],"queries":["list",["object",{"key":"string","value":["list",["object",{"exact_match":"string","exact_not_match":"string","pire_regex_match":"string","pire_regex_not_match":"string","prefix_match":"string","prefix_not_match":"string"}]]}]]}]],"source_ip":["list",["object",{"geo_ip_match":["list",["object",{"locations":["list","string"]}]],"geo_ip_not_match":["list",["object",{"locations":["list","string"]}]],"ip_ranges_match":["list",["object",{"ip_ranges":["list","string"]}]],"ip_ranges_not_match":["list",["object",{"ip_ranges":["list","string"]}]]}]]}]]}]],"smart_protection":["list",["object",{"condition":["list",["object",{"authority":["list",["object",{"authorities":["list",["object",{"exact_match":"string","exact_not_match":"string","pire_regex_match":"string","pire_regex_not_match":"string","prefix_match":"string","prefix_not_match":"string"}]]}]],"headers":["list",["object",{"name":"string","value":["list",["object",{"exact_match":"string","exact_not_match":"string","pire_regex_match":"string","pire_regex_not_match":"string","prefix_match":"string","prefix_not_match":"string"}]]}]],"http_method":["list",["object",{"http_methods":["list",["object",{"exact_match":"string","exact_not_match":"string","pire_regex_match":"string","pire_regex_not_match":"string","prefix_match":"string","prefix_not_match":"string"}]]}]],"request_uri":["list",["object",{"path":["list",["object",{"exact_match":"string","exact_not_match":"string","pire_regex_match":"string","pire_regex_not_match":"string","prefix_match":"string","prefix_not_match":"string"}]],"queries":["list",["object",{"key":"string","value":["list",["object",{"exact_match":"string","exact_not_match":"string","pire_regex_match":"string","pire_regex_not_match":"string","prefix_match":"string","prefix_not_match":"string"}]]}]]}]],"source_ip":["list",["object",{"geo_ip_match":["list",["object",{"locations":["list","string"]}]],"geo_ip_not_match":["list",["object",{"locations":["list","string"]}]],"ip_ranges_match":["list",["object",{"ip_ranges":["list","string"]}]],"ip_ranges_not_match":["list",["object",{"ip_ranges":["list","string"]}]]}]]}]],"mode":"string"}]],"waf":["list",["object",{"condition":["list",["object",{"authority":["list",["object",{"authorities":["list",["object",{"exact_match":"string","exact_not_match":"string","pire_regex_match":"string","pire_regex_not_match":"string","prefix_match":"string","prefix_not_match":"string"}]]}]],"headers":["list",["object",{"name":"string","value":["list",["object",{"exact_match":"string","exact_not_match":"string","pire_regex_match":"string","pire_regex_not_match":"string","prefix_match":"string","prefix_not_match":"string"}]]}]],"http_method":["list",["object",{"http_methods":["list",["object",{"exact_match":"string","exact_not_match":"string","pire_regex_match":"string","pire_regex_not_match":"string","prefix_match":"string","prefix_not_match":"string"}]]}]],"request_uri":["list",["object",{"path":["list",["object",{"exact_match":"string","exact_not_match":"string","pire_regex_match":"string","pire_regex_not_match":"string","prefix_match":"string","prefix_not_match":"string"}]],"queries":["list",["object",{"key":"string","value":["list",["object",{"exact_match":"string","exact_not_match":"string","pire_regex_match":"string","pire_regex_not_match":"string","prefix_match":"string","prefix_not_match":"string"}]]}]]}]],"source_ip":["list",["object",{"geo_ip_match":["list",["object",{"locations":["list","string"]}]],"geo_ip_not_match":["list",["object",{"locations":["list","string"]}]],"ip_ranges_match":["list",["object",{"ip_ranges":["list","string"]}]],"ip_ranges_not_match":["list",["object",{"ip_ranges":["list","string"]}]]}]]}]],"mode":"string","waf_profile_id":"string"}]]}]],"description_kind":"plain","computed":true}},"description_kind":"plain"}},"yandex_sws_waf_profile":{"version":1,"block":{"attributes":{"analyze_request_body":{"type":["list",["object",{"is_enabled":"bool","size_limit":"number","size_limit_action":"string"}]],"description_kind":"plain","computed":true},"cloud_id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"core_rule_set":{"type":["list",["object",{"inbound_anomaly_score":"number","paranoia_level":"number","rule_set":["list",["object",{"name":"string","version":"string"}]]}]],"description_kind":"plain","computed":true},"created_at":{"type":"string","description_kind":"plain","computed":true},"description":{"type":"string","description_kind":"plain","computed":true},"exclusion_rule":{"type":["list",["object",{"condition":["list",["object",{"authority":["list",["object",{"authorities":["list",["object",{"exact_match":"string","exact_not_match":"string","pire_regex_match":"string","pire_regex_not_match":"string","prefix_match":"string","prefix_not_match":"string"}]]}]],"headers":["list",["object",{"name":"string","value":["list",["object",{"exact_match":"string","exact_not_match":"string","pire_regex_match":"string","pire_regex_not_match":"string","prefix_match":"string","prefix_not_match":"string"}]]}]],"http_method":["list",["object",{"http_methods":["list",["object",{"exact_match":"string","exact_not_match":"string","pire_regex_match":"string","pire_regex_not_match":"string","prefix_match":"string","prefix_not_match":"string"}]]}]],"request_uri":["list",["object",{"path":["list",["object",{"exact_match":"string","exact_not_match":"string","pire_regex_match":"string","pire_regex_not_match":"string","prefix_match":"string","prefix_not_match":"string"}]],"queries":["list",["object",{"key":"string","value":["list",["object",{"exact_match":"string","exact_not_match":"string","pire_regex_match":"string","pire_regex_not_match":"string","prefix_match":"string","prefix_not_match":"string"}]]}]]}]],"source_ip":["list",["object",{"geo_ip_match":["list",["object",{"locations":["list","string"]}]],"geo_ip_not_match":["list",["object",{"locations":["list","string"]}]],"ip_ranges_match":["list",["object",{"ip_ranges":["list","string"]}]],"ip_ranges_not_match":["list",["object",{"ip_ranges":["list","string"]}]]}]]}]],"description":"string","exclude_rules":["list",["object",{"exclude_all":"bool","rule_ids":["list","string"]}]],"log_excluded":"bool","name":"string"}]],"description_kind":"plain","computed":true},"folder_id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"labels":{"type":["map","string"],"description_kind":"plain","computed":true},"name":{"type":"string","description_kind":"plain","optional":true,"computed":true},"rule":{"type":["list",["object",{"is_blocking":"bool","is_enabled":"bool","rule_id":"string"}]],"description_kind":"plain","computed":true},"waf_profile_id":{"type":"string","description_kind":"plain","optional":true}},"description_kind":"plain"}},"yandex_sws_waf_rule_set_descriptor":{"version":1,"block":{"attributes":{"id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"name":{"type":"string","description_kind":"plain","optional":true,"computed":true},"rule_set_descriptor_id":{"type":"string","description_kind":"plain","optional":true},"rules":{"type":["list",["object",{"anomaly_score":"number","id":"string","paranoia_level":"number"}]],"description_kind":"plain","computed":true},"version":{"type":"string","description_kind":"plain","required":true}},"description_kind":"plain"}},"yandex_vpc_address":{"version":0,"block":{"attributes":{"address_id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"created_at":{"type":"string","description_kind":"plain","computed":true},"deletion_protection":{"type":"bool","description_kind":"plain","computed":true},"description":{"type":"string","description_kind":"plain","computed":true},"dns_record":{"type":["list",["object",{"dns_zone_id":"string","fqdn":"string","ptr":"bool","ttl":"number"}]],"description_kind":"plain","computed":true},"external_ipv4_address":{"type":["list",["object",{"address":"string","ddos_protection_provider":"string","outgoing_smtp_capability":"string","zone_id":"string"}]],"description_kind":"plain","computed":true},"folder_id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"labels":{"type":["map","string"],"description_kind":"plain","computed":true},"name":{"type":"string","description_kind":"plain","optional":true,"computed":true},"reserved":{"type":"bool","description_kind":"plain","computed":true},"used":{"type":"bool","description_kind":"plain","computed":true}},"description_kind":"plain"}},"yandex_vpc_gateway":{"version":0,"block":{"attributes":{"created_at":{"type":"string","description_kind":"plain","computed":true},"description":{"type":"string","description_kind":"plain","computed":true},"folder_id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"gateway_id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"labels":{"type":["map","string"],"description_kind":"plain","computed":true},"name":{"type":"string","description_kind":"plain","optional":true,"computed":true}},"block_types":{"shared_egress_gateway":{"nesting_mode":"list","block":{"description_kind":"plain"},"max_items":1}},"description_kind":"plain"}},"yandex_vpc_network":{"version":0,"block":{"attributes":{"created_at":{"type":"string","description_kind":"plain","computed":true},"default_security_group_id":{"type":"string","description_kind":"plain","computed":true},"description":{"type":"string","description_kind":"plain","computed":true},"folder_id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"labels":{"type":["map","string"],"description_kind":"plain","computed":true},"name":{"type":"string","description_kind":"plain","optional":true,"computed":true},"network_id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"subnet_ids":{"type":["list","string"],"description_kind":"plain","computed":true}},"description_kind":"plain"}},"yandex_vpc_private_endpoint":{"version":0,"block":{"attributes":{"created_at":{"type":"string","description_kind":"plain","computed":true},"description":{"type":"string","description_kind":"plain","computed":true},"dns_options":{"type":["list",["object",{"private_dns_records_enabled":"bool"}]],"description_kind":"plain","computed":true},"endpoint_address":{"type":["list",["object",{"address":"string","address_id":"string","subnet_id":"string"}]],"description_kind":"plain","computed":true},"folder_id":{"type":"string","description_kind":"plain","computed":true},"id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"labels":{"type":["map","string"],"description_kind":"plain","computed":true},"name":{"type":"string","description_kind":"plain","optional":true,"computed":true},"network_id":{"type":"string","description_kind":"plain","computed":true},"private_endpoint_id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"status":{"type":"string","description_kind":"plain","computed":true}},"block_types":{"object_storage":{"nesting_mode":"list","block":{"description_kind":"plain"}}},"description_kind":"plain"}},"yandex_vpc_route_table":{"version":0,"block":{"attributes":{"created_at":{"type":"string","description_kind":"plain","computed":true},"description":{"type":"string","description_kind":"plain","computed":true},"folder_id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"labels":{"type":["map","string"],"description_kind":"plain","computed":true},"name":{"type":"string","description_kind":"plain","optional":true,"computed":true},"network_id":{"type":"string","description_kind":"plain","computed":true},"route_table_id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"static_route":{"type":["set",["object",{"destination_prefix":"string","gateway_id":"string","next_hop_address":"string"}]],"description_kind":"plain","computed":true}},"description_kind":"plain"}},"yandex_vpc_security_group":{"version":0,"block":{"attributes":{"created_at":{"type":"string","description_kind":"plain","computed":true},"description":{"type":"string","description_kind":"plain","computed":true},"egress":{"type":["set",["object",{"description":"string","from_port":"number","id":"string","labels":["map","string"],"port":"number","predefined_target":"string","protocol":"string","security_group_id":"string","to_port":"number","v4_cidr_blocks":["list","string"],"v6_cidr_blocks":["list","string"]}]],"description_kind":"plain","computed":true},"folder_id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"ingress":{"type":["set",["object",{"description":"string","from_port":"number","id":"string","labels":["map","string"],"port":"number","predefined_target":"string","protocol":"string","security_group_id":"string","to_port":"number","v4_cidr_blocks":["list","string"],"v6_cidr_blocks":["list","string"]}]],"description_kind":"plain","computed":true},"labels":{"type":["map","string"],"description_kind":"plain","computed":true},"name":{"type":"string","description_kind":"plain","optional":true,"computed":true},"network_id":{"type":"string","description_kind":"plain","computed":true},"security_group_id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"status":{"type":"string","description_kind":"plain","computed":true}},"description_kind":"plain"}},"yandex_vpc_security_group_rule":{"version":0,"block":{"attributes":{"description":{"type":"string","description_kind":"plain","computed":true},"direction":{"type":"string","description_kind":"plain","computed":true},"from_port":{"type":"number","description_kind":"plain","computed":true},"id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"labels":{"type":["map","string"],"description_kind":"plain","computed":true},"port":{"type":"number","description_kind":"plain","computed":true},"predefined_target":{"type":"string","description_kind":"plain","computed":true},"protocol":{"type":"string","description_kind":"plain","computed":true},"rule_id":{"type":"string","description_kind":"plain","required":true},"security_group_binding":{"type":"string","description_kind":"plain","required":true},"security_group_id":{"type":"string","description_kind":"plain","computed":true},"to_port":{"type":"number","description_kind":"plain","computed":true},"v4_cidr_blocks":{"type":["list","string"],"description_kind":"plain","computed":true},"v6_cidr_blocks":{"type":["list","string"],"description_kind":"plain","computed":true}},"description_kind":"plain"}},"yandex_vpc_subnet":{"version":0,"block":{"attributes":{"created_at":{"type":"string","description_kind":"plain","computed":true},"description":{"type":"string","description_kind":"plain","computed":true},"dhcp_options":{"type":["list",["object",{"domain_name":"string","domain_name_servers":["list","string"],"ntp_servers":["list","string"]}]],"description_kind":"plain","computed":true},"folder_id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"labels":{"type":["map","string"],"description_kind":"plain","computed":true},"name":{"type":"string","description_kind":"plain","optional":true,"computed":true},"network_id":{"type":"string","description_kind":"plain","computed":true},"route_table_id":{"type":"string","description_kind":"plain","computed":true},"subnet_id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"v4_cidr_blocks":{"type":["list","string"],"description_kind":"plain","computed":true},"v6_cidr_blocks":{"type":["list","string"],"description_kind":"plain","computed":true},"zone":{"type":"string","description_kind":"plain","computed":true}},"description_kind":"plain"}},"yandex_ydb_database_dedicated":{"version":0,"block":{"attributes":{"assign_public_ips":{"type":"bool","description_kind":"plain","computed":true},"created_at":{"type":"string","description_kind":"plain","computed":true},"database_id":{"type":"string","description_kind":"plain","optional":true},"database_path":{"type":"string","description_kind":"plain","computed":true},"deletion_protection":{"type":"bool","description_kind":"plain","optional":true,"computed":true},"description":{"type":"string","description_kind":"plain","computed":true},"folder_id":{"type":"string","description_kind":"plain","optional":true},"id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"labels":{"type":["map","string"],"description_kind":"plain","computed":true},"location":{"type":["list",["object",{"region":["list",["object",{"id":"string"}]],"zone":["list",["object",{"id":"string"}]]}]],"description_kind":"plain","computed":true},"location_id":{"type":"string","description_kind":"plain","computed":true},"name":{"type":"string","description_kind":"plain","optional":true},"network_id":{"type":"string","description_kind":"plain","computed":true},"resource_preset_id":{"type":"string","description_kind":"plain","computed":true},"scale_policy":{"type":["list",["object",{"fixed_scale":["list",["object",{"size":"number"}]]}]],"description_kind":"plain","computed":true},"status":{"type":"string","description_kind":"plain","computed":true},"storage_config":{"type":["list",["object",{"group_count":"number","storage_type_id":"string"}]],"description_kind":"plain","computed":true},"subnet_ids":{"type":["set","string"],"description_kind":"plain","computed":true},"tls_enabled":{"type":"bool","description_kind":"plain","computed":true},"ydb_api_endpoint":{"type":"string","description_kind":"plain","computed":true},"ydb_full_endpoint":{"type":"string","description_kind":"plain","computed":true}},"description_kind":"plain"}},"yandex_ydb_database_serverless":{"version":0,"block":{"attributes":{"created_at":{"type":"string","description_kind":"plain","computed":true},"database_id":{"type":"string","description_kind":"plain","optional":true},"database_path":{"type":"string","description_kind":"plain","computed":true},"deletion_protection":{"type":"bool","description_kind":"plain","optional":true,"computed":true},"description":{"type":"string","description_kind":"plain","computed":true},"document_api_endpoint":{"type":"string","description_kind":"plain","computed":true},"folder_id":{"type":"string","description_kind":"plain","optional":true},"id":{"type":"string","description_kind":"plain","optional":true,"computed":true},"labels":{"type":["map","string"],"description_kind":"plain","computed":true},"location_id":{"type":"string","description_kind":"plain","computed":true},"name":{"type":"string","description_kind":"plain","optional":true},"status":{"type":"string","description_kind":"plain","computed":true},"tls_enabled":{"type":"bool","description_kind":"plain","computed":true},"ydb_api_endpoint":{"type":"string","description_kind":"plain","computed":true},"ydb_full_endpoint":{"type":"string","description_kind":"plain","computed":true}},"block_types":{"serverless_database":{"nesting_mode":"set","block":{"attributes":{"enable_throttling_rcu_limit":{"type":"bool","description_kind":"plain","optional":true,"computed":true},"provisioned_rcu_limit":{"type":"number","description_kind":"plain","optional":true,"computed":true},"storage_size_limit":{"type":"number","description_kind":"plain","optional":true,"computed":true},"throttling_rcu_limit":{"type":"number","description_kind":"plain","optional":true,"computed":true}},"description_kind":"plain"}}},"description_kind":"plain"}}}}}} diff --git a/examples-generated/audit/v1alpha1/trailstrail.yaml b/examples-generated/audit/v1alpha1/trailstrail.yaml index 4ff83f9..ee0922f 100644 --- a/examples-generated/audit/v1alpha1/trailstrail.yaml +++ b/examples-generated/audit/v1alpha1/trailstrail.yaml @@ -9,31 +9,20 @@ metadata: spec: forProvider: description: Some trail description - filter: - - eventFilters: - - categories: - - plane: DATA_PLANE - type: WRITE - pathFilter: - - anyFilter: - - resourceId: home-folder - resourceType: resource-manager.folder + filteringPolicy: + - dataEventsFilter: + - resourceScope: + - resourceId: home-folder + resourceType: resource-manager.folder service: storage - - categories: - - plane: DATA_PLANE - type: READ - pathFilter: - - someFilter: - - anyFilters: - - resourceId: vpc-net-id-1 - resourceType: vpc.network - - resourceId: vpc-net-id-2 - resourceType: vpc.network - resourceId: home-folder - resourceType: resource-manager.folder + - resourceScope: + - resourceId: vpc-net-id-1 + resourceType: vpc.network + - resourceId: vpc-net-id-2 + resourceType: vpc.network service: dns - pathFilter: - - anyFilter: + managementEventsFilter: + - resourceScope: - resourceId: home-folder resourceType: resource-manager.folder folderIdSelector: diff --git a/examples-generated/backup/v1alpha1/policy.yaml b/examples-generated/backup/v1alpha1/policy.yaml index e039135..2f4e54e 100644 --- a/examples-generated/backup/v1alpha1/policy.yaml +++ b/examples-generated/backup/v1alpha1/policy.yaml @@ -14,7 +14,8 @@ spec: retention: - afterBackup: false scheduling: - - enabled: false - executeByInterval: 86400 + - backupSets: + - executeByInterval: 86400 + enabled: false vmSnapshotReattempts: - {} diff --git a/examples-generated/backup/v1alpha1/policybindings.yaml b/examples-generated/backup/v1alpha1/policybindings.yaml new file mode 100644 index 0000000..7f127ae --- /dev/null +++ b/examples-generated/backup/v1alpha1/policybindings.yaml @@ -0,0 +1,164 @@ +apiVersion: backup.yandex-cloud.upjet.crossplane.io/v1alpha1 +kind: PolicyBindings +metadata: + annotations: + meta.upbound.io/example-id: backup/v1alpha1/policybindings + labels: + testing.upbound.io/example-name: test_backup_binding + name: test-backup-binding +spec: + forProvider: + instanceIdSelector: + matchLabels: + testing.upbound.io/example-name: test_backup_compute + policyId: ${data.yandex_backup_policy.test_backup_policy.id} + +--- + +apiVersion: compute.yandex-cloud.upjet.crossplane.io/v1alpha1 +kind: Instance +metadata: + annotations: + meta.upbound.io/example-id: backup/v1alpha1/policybindings + labels: + testing.upbound.io/example-name: test_backup_compute + name: test-backup-compute +spec: + forProvider: + bootDisk: + - initializeParams: + - imageIdSelector: + matchLabels: + testing.upbound.io/example-name: yandex_compute_image + metadata: + user-data: | + #cloud-config + packages: + - curl + - perl + - jq + runcmd: + - curl https://storage.yandexcloud.net/backup-distributions/agent_installer.sh | sudo bash + name: test-backup-compute + networkInterface: + - nat: true + securityGroupIdsRefs: + - name: test_backup_security_group + subnetIdSelector: + matchLabels: + testing.upbound.io/example-name: test_backup_subnet + platformId: standard-v1 + resources: + - cores: 2 + memory: 4 + serviceAccountIdSelector: + matchLabels: + testing.upbound.io/example-name: test_sa + zone: ru-central1-a + +--- + +apiVersion: iam.yandex-cloud.upjet.crossplane.io/v1alpha1 +kind: ServiceAccount +metadata: + annotations: + meta.upbound.io/example-id: backup/v1alpha1/policybindings + labels: + testing.upbound.io/example-name: test_sa + name: test-sa +spec: + forProvider: {} + +--- + +apiVersion: resourcemanager.yandex-cloud.upjet.crossplane.io/v1alpha1 +kind: FolderIAMMember +metadata: + annotations: + meta.upbound.io/example-id: backup/v1alpha1/policybindings + labels: + testing.upbound.io/example-name: test_binding + name: test-binding +spec: + forProvider: + folderIdSelector: + matchLabels: + testing.upbound.io/example-name: test_sa + member: serviceAccount:${yandex_iam_service_account.test_sa.id} + role: backup.editor + +--- + +apiVersion: vpc.yandex-cloud.upjet.crossplane.io/v1alpha1 +kind: Network +metadata: + annotations: + meta.upbound.io/example-id: backup/v1alpha1/policybindings + labels: + testing.upbound.io/example-name: test_backup_network + name: test-backup-network +spec: + forProvider: {} + +--- + +apiVersion: vpc.yandex-cloud.upjet.crossplane.io/v1alpha1 +kind: SecurityGroup +metadata: + annotations: + meta.upbound.io/example-id: backup/v1alpha1/policybindings + labels: + testing.upbound.io/example-name: test_backup_security_group + name: test-backup-security-group +spec: + forProvider: + egress: + - fromPort: 7770 + protocol: TCP + toPort: 7800 + v4CidrBlocks: + - 84.47.172.0/24 + - port: 443 + protocol: TCP + v4CidrBlocks: + - 213.180.204.0/24 + - 213.180.193.0/24 + - 178.176.128.0/24 + - 84.201.181.0/24 + - 84.47.172.0/24 + - port: 80 + protocol: TCP + v4CidrBlocks: + - 213.180.204.0/24 + - 213.180.193.0/24 + - port: 8443 + protocol: TCP + v4CidrBlocks: + - 84.47.172.0/24 + - port: 44445 + protocol: TCP + v4CidrBlocks: + - 51.250.1.0/24 + name: cloud-backup + networkIdSelector: + matchLabels: + testing.upbound.io/example-name: test_backup_network + +--- + +apiVersion: vpc.yandex-cloud.upjet.crossplane.io/v1alpha1 +kind: Subnet +metadata: + annotations: + meta.upbound.io/example-id: backup/v1alpha1/policybindings + labels: + testing.upbound.io/example-name: test_backup_subnet + name: test-backup-subnet +spec: + forProvider: + networkIdSelector: + matchLabels: + testing.upbound.io/example-name: test_backup_network + v4CidrBlocks: + - 192.168.0.0/24 + zone: ru-central1-a diff --git a/examples-generated/container/v1alpha1/repository.yaml b/examples-generated/container/v1alpha1/repository.yaml deleted file mode 100644 index f5333f4..0000000 --- a/examples-generated/container/v1alpha1/repository.yaml +++ /dev/null @@ -1,25 +0,0 @@ -apiVersion: container.yandex-cloud.upjet.crossplane.io/v1alpha1 -kind: Repository -metadata: - annotations: - meta.upbound.io/example-id: container/v1alpha1/repository - labels: - testing.upbound.io/example-name: my-repository - name: my-repository -spec: - forProvider: - name: ${yandex_container_registry.my-registry.id}/test-repository - ---- - -apiVersion: container.yandex-cloud.upjet.crossplane.io/v1alpha1 -kind: Registry -metadata: - annotations: - meta.upbound.io/example-id: container/v1alpha1/repository - labels: - testing.upbound.io/example-name: my-registry - name: my-registry -spec: - forProvider: - name: test-registry diff --git a/examples-generated/container/v1alpha1/repositoryiambinding.yaml b/examples-generated/container/v1alpha1/repositoryiambinding.yaml deleted file mode 100644 index 2e7b7da..0000000 --- a/examples-generated/container/v1alpha1/repositoryiambinding.yaml +++ /dev/null @@ -1,47 +0,0 @@ -apiVersion: container.yandex-cloud.upjet.crossplane.io/v1alpha1 -kind: RepositoryIAMBinding -metadata: - annotations: - meta.upbound.io/example-id: container/v1alpha1/repositoryiambinding - labels: - testing.upbound.io/example-name: puller - name: puller -spec: - forProvider: - repositoryIdSelector: - matchLabels: - testing.upbound.io/example-name: repo-1 - role: container-registry.images.puller - serviceAccountRef: - - name: example - ---- - -apiVersion: container.yandex-cloud.upjet.crossplane.io/v1alpha1 -kind: Registry -metadata: - annotations: - meta.upbound.io/example-id: container/v1alpha1/repositoryiambinding - labels: - testing.upbound.io/example-name: your-registry - name: your-registry -spec: - forProvider: - folderIdSelector: - matchLabels: - testing.upbound.io/example-name: example - name: registry-name - ---- - -apiVersion: container.yandex-cloud.upjet.crossplane.io/v1alpha1 -kind: Repository -metadata: - annotations: - meta.upbound.io/example-id: container/v1alpha1/repositoryiambinding - labels: - testing.upbound.io/example-name: repo-1 - name: repo-1 -spec: - forProvider: - name: ${yandex_container_registry.your-registry.id}/repo-1 diff --git a/examples-generated/container/v1alpha1/repositorylifecyclepolicy.yaml b/examples-generated/container/v1alpha1/repositorylifecyclepolicy.yaml deleted file mode 100644 index 078d467..0000000 --- a/examples-generated/container/v1alpha1/repositorylifecyclepolicy.yaml +++ /dev/null @@ -1,48 +0,0 @@ -apiVersion: container.yandex-cloud.upjet.crossplane.io/v1alpha1 -kind: RepositoryLifecyclePolicy -metadata: - annotations: - meta.upbound.io/example-id: container/v1alpha1/repositorylifecyclepolicy - labels: - testing.upbound.io/example-name: my_lifecycle_policy - name: my-lifecycle-policy -spec: - forProvider: - name: test-lifecycle-policy-name - repositoryIdSelector: - matchLabels: - testing.upbound.io/example-name: my_repository - rule: - - description: my description - retainedTop: 1 - tagRegexp: .* - untagged: true - status: active - ---- - -apiVersion: container.yandex-cloud.upjet.crossplane.io/v1alpha1 -kind: Registry -metadata: - annotations: - meta.upbound.io/example-id: container/v1alpha1/repositorylifecyclepolicy - labels: - testing.upbound.io/example-name: my_registry - name: my-registry -spec: - forProvider: - name: test-registry - ---- - -apiVersion: container.yandex-cloud.upjet.crossplane.io/v1alpha1 -kind: Repository -metadata: - annotations: - meta.upbound.io/example-id: container/v1alpha1/repositorylifecyclepolicy - labels: - testing.upbound.io/example-name: my_repository - name: my-repository -spec: - forProvider: - name: ${yandex_container_registry.my_registry.id}/test-repository diff --git a/examples-generated/datatransfer/v1alpha1/endpoint.yaml b/examples-generated/datatransfer/v1alpha1/endpoint.yaml deleted file mode 100644 index 4b230c0..0000000 --- a/examples-generated/datatransfer/v1alpha1/endpoint.yaml +++ /dev/null @@ -1,30 +0,0 @@ -apiVersion: datatransfer.yandex-cloud.upjet.crossplane.io/v1alpha1 -kind: Endpoint -metadata: - annotations: - meta.upbound.io/example-id: datatransfer/v1alpha1/endpoint - labels: - testing.upbound.io/example-name: pg_source - name: pg-source -spec: - forProvider: - name: pg-test-source - settings: - - postgresSource: - - connection: - - onPremise: - - hosts: - - example.org - port: 5432 - databaseSelector: - matchLabels: - testing.upbound.io/example-name: example - password: - - rawSecretRef: - key: example-key - name: example-secret - namespace: upbound-system - slotGigabyteLagLimit: 100 - userSelector: - matchLabels: - testing.upbound.io/example-name: example diff --git a/examples-generated/datatransfer/v1alpha1/transfer.yaml b/examples-generated/datatransfer/v1alpha1/transfer.yaml deleted file mode 100644 index 4589d6e..0000000 --- a/examples-generated/datatransfer/v1alpha1/transfer.yaml +++ /dev/null @@ -1,104 +0,0 @@ -apiVersion: datatransfer.yandex-cloud.upjet.crossplane.io/v1alpha1 -kind: Transfer -metadata: - annotations: - meta.upbound.io/example-id: datatransfer/v1alpha1/transfer - labels: - testing.upbound.io/example-name: pgpg_transfer - name: pgpg-transfer -spec: - forProvider: - folderIdSelector: - matchLabels: - testing.upbound.io/example-name: example - name: pgpg - runtime: - - ycRuntime: - - jobCount: 1 - uploadShardParams: - - jobCount: 4 - processCount: 1 - sourceIdSelector: - matchLabels: - testing.upbound.io/example-name: pg_source - targetIdSelector: - matchLabels: - testing.upbound.io/example-name: pg_target - transformation: - - transformers: - - one: - of: - transfomer: - - {} - - one: - of: - transfomers: - - {} - type: SNAPSHOT_AND_INCREMENT - ---- - -apiVersion: datatransfer.yandex-cloud.upjet.crossplane.io/v1alpha1 -kind: Endpoint -metadata: - annotations: - meta.upbound.io/example-id: datatransfer/v1alpha1/transfer - labels: - testing.upbound.io/example-name: pg_source - name: pg-source -spec: - forProvider: - name: pg-test-source - settings: - - postgresSource: - - connection: - - onPremise: - - hosts: - - example.org - port: 5432 - databaseSelector: - matchLabels: - testing.upbound.io/example-name: example - password: - - rawSecretRef: - key: example-key - name: example-secret - namespace: upbound-system - slotGigabyteLagLimit: 100 - userSelector: - matchLabels: - testing.upbound.io/example-name: example - ---- - -apiVersion: datatransfer.yandex-cloud.upjet.crossplane.io/v1alpha1 -kind: Endpoint -metadata: - annotations: - meta.upbound.io/example-id: datatransfer/v1alpha1/transfer - labels: - testing.upbound.io/example-name: pg_target - name: pg-target -spec: - forProvider: - folderIdSelector: - matchLabels: - testing.upbound.io/example-name: example - name: pg-test-target2 - settings: - - postgresTarget: - - connection: - - mdbClusterIdSelector: - matchLabels: - testing.upbound.io/example-name: example - databaseSelector: - matchLabels: - testing.upbound.io/example-name: example - password: - - rawSecretRef: - key: example-key - name: example-secret - namespace: upbound-system - userSelector: - matchLabels: - testing.upbound.io/example-name: example diff --git a/examples-generated/iam/v1alpha1/serviceaccountapikey.yaml b/examples-generated/iam/v1alpha1/serviceaccountapikey.yaml index 6fb622e..58571e2 100644 --- a/examples-generated/iam/v1alpha1/serviceaccountapikey.yaml +++ b/examples-generated/iam/v1alpha1/serviceaccountapikey.yaml @@ -9,7 +9,9 @@ metadata: spec: forProvider: description: api key for authorization + expiresAt: "2024-11-11T00:00:00Z" pgpKey: keybase:keybaseusername + scope: yc.ydb.topics.manage serviceAccountIdSelector: matchLabels: testing.upbound.io/example-name: example diff --git a/examples-generated/kubernetes/v1alpha1/cluster.yaml b/examples-generated/kubernetes/v1alpha1/cluster.yaml index 286155f..3e7154c 100644 --- a/examples-generated/kubernetes/v1alpha1/cluster.yaml +++ b/examples-generated/kubernetes/v1alpha1/cluster.yaml @@ -28,7 +28,9 @@ spec: enabled: true eventsEnabled: true kubeApiserverEnabled: true - logGroupId: ${yandex_logging_group.log_group_resoruce_name.id} + logGroupIdSelector: + matchLabels: + testing.upbound.io/example-name: log_group_resoruce_name publicIp: true securityGroupIdsRefs: - name: security_group_name @@ -37,7 +39,9 @@ spec: - subnetIdSelector: matchLabels: testing.upbound.io/example-name: subnet_resource_name - zone: ru-central1-a + zoneSelector: + matchLabels: + testing.upbound.io/example-name: subnet_resource_name name: name networkIdSelector: matchLabels: diff --git a/examples-generated/mdb/v1alpha1/clickhousecluster.yaml b/examples-generated/mdb/v1alpha1/clickhousecluster.yaml index d5915c9..df560b6 100644 --- a/examples-generated/mdb/v1alpha1/clickhousecluster.yaml +++ b/examples-generated/mdb/v1alpha1/clickhousecluster.yaml @@ -64,7 +64,8 @@ spec: maxPartitionSizeToDrop: 53687091200 maxTableSizeToDrop: 53687091200 mergeTree: - - maxBytesToMergeAtMinSpaceInPool: 1048576 + - maxBytesToMergeAtMaxSpaceInPool: 161061273600 + maxBytesToMergeAtMinSpaceInPool: 1048576 maxReplicatedMergesInQueue: 16 numberOfFreeEntriesInPoolToLowerMaxSizeOfMerge: 8 partsToDelayInsert: 150 diff --git a/examples-generated/mdb/v1alpha1/opensearchcluster.yaml b/examples-generated/mdb/v1alpha1/opensearchcluster.yaml deleted file mode 100644 index 3f6bef1..0000000 --- a/examples-generated/mdb/v1alpha1/opensearchcluster.yaml +++ /dev/null @@ -1,70 +0,0 @@ -apiVersion: mdb.yandex-cloud.upjet.crossplane.io/v1alpha1 -kind: OpensearchCluster -metadata: - annotations: - meta.upbound.io/example-id: mdb/v1alpha1/opensearchcluster - labels: - testing.upbound.io/example-name: foo - name: foo -spec: - forProvider: - config: - - adminPasswordSecretRef: - key: example-key - name: example-secret - namespace: upbound-system - opensearch: - - nodeGroups: - - assignPublicIp: true - hostsCount: 1 - name: group0 - resources: - - diskSize: 10737418240 - diskTypeId: network-ssd - resourcePresetId: s2.micro - roles: - - data - - manager - subnetIdsRefs: - - name: foo - zoneIds: - - ru-central1-a - environment: PRESTABLE - maintenanceWindow: - - type: ANYTIME - name: test - networkIdSelector: - matchLabels: - testing.upbound.io/example-name: foo - ---- - -apiVersion: vpc.yandex-cloud.upjet.crossplane.io/v1alpha1 -kind: Network -metadata: - annotations: - meta.upbound.io/example-id: mdb/v1alpha1/opensearchcluster - labels: - testing.upbound.io/example-name: foo - name: foo -spec: - forProvider: {} - ---- - -apiVersion: vpc.yandex-cloud.upjet.crossplane.io/v1alpha1 -kind: Subnet -metadata: - annotations: - meta.upbound.io/example-id: mdb/v1alpha1/opensearchcluster - labels: - testing.upbound.io/example-name: foo - name: foo -spec: - forProvider: - networkIdSelector: - matchLabels: - testing.upbound.io/example-name: foo - v4CidrBlocks: - - 10.5.0.0/24 - zone: ru-central1-a diff --git a/examples-generated/serverless/v1alpha1/container.yaml b/examples-generated/serverless/v1alpha1/container.yaml index 4994ba7..1581fa8 100644 --- a/examples-generated/serverless/v1alpha1/container.yaml +++ b/examples-generated/serverless/v1alpha1/container.yaml @@ -18,10 +18,22 @@ spec: - logGroupId: e2392vo6d1bne2aeq9fr minLevel: ERROR memory: 256 + mounts: + - ephemeralDisk: + - sizeGb: 5 + mountPointPath: /mount/point name: some_name + provisionPolicy: + - minInstances: 1 secrets: - environmentVariable: ENV_VARIABLE - id: ${yandex_lockbox_secret.secret.id} + idSelector: + matchLabels: + testing.upbound.io/example-name: secret key: secret-key - versionId: ${yandex_lockbox_secret_version.secret_version.id} - serviceAccountId: are1service2account3id + versionIdSelector: + matchLabels: + testing.upbound.io/example-name: secret_version + serviceAccountIdSelector: + matchLabels: + testing.upbound.io/example-name: example diff --git a/examples-generated/storage/v1alpha1/bucket.yaml b/examples-generated/storage/v1alpha1/bucket.yaml index b19cdbc..af28b15 100644 --- a/examples-generated/storage/v1alpha1/bucket.yaml +++ b/examples-generated/storage/v1alpha1/bucket.yaml @@ -8,62 +8,4 @@ metadata: name: test spec: forProvider: - accessKeySelector: - matchLabels: - testing.upbound.io/example-name: sa-static-key bucket: tf-test-bucket - secretKeySecretRef: - key: attribute.secret_key - name: example-iam-service-account-static-access-key - namespace: upbound-system - ---- - -apiVersion: iam.yandex-cloud.upjet.crossplane.io/v1alpha1 -kind: ServiceAccount -metadata: - annotations: - meta.upbound.io/example-id: storage/v1alpha1/bucket - labels: - testing.upbound.io/example-name: sa - name: sa -spec: - forProvider: - folderIdSelector: - matchLabels: - testing.upbound.io/example-name: example - ---- - -apiVersion: iam.yandex-cloud.upjet.crossplane.io/v1alpha1 -kind: ServiceAccountStaticAccessKey -metadata: - annotations: - meta.upbound.io/example-id: storage/v1alpha1/bucket - labels: - testing.upbound.io/example-name: sa-static-key - name: sa-static-key -spec: - forProvider: - description: static access key for object storage - serviceAccountIdSelector: - matchLabels: - testing.upbound.io/example-name: sa - ---- - -apiVersion: resourcemanager.yandex-cloud.upjet.crossplane.io/v1alpha1 -kind: FolderIAMMember -metadata: - annotations: - meta.upbound.io/example-id: storage/v1alpha1/bucket - labels: - testing.upbound.io/example-name: sa-editor - name: sa-editor -spec: - forProvider: - folderIdSelector: - matchLabels: - testing.upbound.io/example-name: example - member: serviceAccount:${yandex_iam_service_account.sa.id} - role: storage.editor diff --git a/examples-generated/sws/v1alpha1/securityprofile.yaml b/examples-generated/sws/v1alpha1/securityprofile.yaml new file mode 100644 index 0000000..68b265a --- /dev/null +++ b/examples-generated/sws/v1alpha1/securityprofile.yaml @@ -0,0 +1,17 @@ +apiVersion: sws.yandex-cloud.upjet.crossplane.io/v1alpha1 +kind: SecurityProfile +metadata: + annotations: + meta.upbound.io/example-id: sws/v1alpha1/securityprofile + labels: + testing.upbound.io/example-name: demo-profile-simple + name: demo-profile-simple +spec: + forProvider: + defaultAction: ALLOW + name: demo-profile-simple + securityRule: + - name: smart-protection + priority: 99999 + smartProtection: + - mode: API diff --git a/examples-generated/vpc/v1alpha1/privateendpoint.yaml b/examples-generated/vpc/v1alpha1/privateendpoint.yaml new file mode 100644 index 0000000..b276e8b --- /dev/null +++ b/examples-generated/vpc/v1alpha1/privateendpoint.yaml @@ -0,0 +1,58 @@ +apiVersion: vpc.yandex-cloud.upjet.crossplane.io/v1alpha1 +kind: PrivateEndpoint +metadata: + annotations: + meta.upbound.io/example-id: vpc/v1alpha1/privateendpoint + labels: + testing.upbound.io/example-name: default + name: default +spec: + forProvider: + description: description for private endpoint + dnsOptions: + - privateDnsRecordsEnabled: true + endpointAddress: + - subnetIdSelector: + matchLabels: + testing.upbound.io/example-name: lab-subnet-a + labels: + my-label: my-label-value + name: object-storage-private-endpoint + networkIdSelector: + matchLabels: + testing.upbound.io/example-name: lab-net + objectStorage: + - {} + +--- + +apiVersion: vpc.yandex-cloud.upjet.crossplane.io/v1alpha1 +kind: Network +metadata: + annotations: + meta.upbound.io/example-id: vpc/v1alpha1/privateendpoint + labels: + testing.upbound.io/example-name: lab-net + name: lab-net +spec: + forProvider: + name: lab-network + +--- + +apiVersion: vpc.yandex-cloud.upjet.crossplane.io/v1alpha1 +kind: Subnet +metadata: + annotations: + meta.upbound.io/example-id: vpc/v1alpha1/privateendpoint + labels: + testing.upbound.io/example-name: lab-subnet-a + name: lab-subnet-a +spec: + forProvider: + networkIdSelector: + matchLabels: + testing.upbound.io/example-name: lab-net + v4CidrBlocks: + - 10.2.0.0/16 + zone: ru-central1-a diff --git a/examples-generated/yandex/v1alpha1/function.yaml b/examples-generated/yandex/v1alpha1/function.yaml index 03d6aac..37b8a40 100644 --- a/examples-generated/yandex/v1alpha1/function.yaml +++ b/examples-generated/yandex/v1alpha1/function.yaml @@ -26,13 +26,21 @@ spec: - logGroupId: e2392vo6d1bne2aeq9fr minLevel: ERROR memory: "128" + mounts: + - ephemeralDisk: + - sizeGb: 32 + name: mnt name: some_name runtime: python37 secrets: - environmentVariable: ENV_VARIABLE - id: ${yandex_lockbox_secret.secret.id} + idSelector: + matchLabels: + testing.upbound.io/example-name: secret key: secret-key - versionId: ${yandex_lockbox_secret_version.secret_version.id} + versionIdSelector: + matchLabels: + testing.upbound.io/example-name: secret_version serviceAccountId: are1service2account3id tags: - my_tag diff --git a/examples-generated/ydb/v1alpha1/topic.yaml b/examples-generated/ydb/v1alpha1/topic.yaml index ada9713..1bfb5e1 100644 --- a/examples-generated/ydb/v1alpha1/topic.yaml +++ b/examples-generated/ydb/v1alpha1/topic.yaml @@ -14,7 +14,9 @@ spec: supportedCodecs: - raw - gzip - databaseEndpoint: ${yandex_ydb_database_serverless.database_name.ydb_full_endpoint} + databaseEndpointSelector: + matchLabels: + testing.upbound.io/example-name: database_name name: topic-test partitionsCount: 1 retention_period_ms: 2000000 diff --git a/go.mod b/go.mod index 45a0fd2..c851fa5 100644 --- a/go.mod +++ b/go.mod @@ -6,11 +6,11 @@ require ( dario.cat/mergo v1.0.0 github.com/crossplane/crossplane-runtime v1.16.0-rc.2.0.20240510094504-3f697876fa57 github.com/crossplane/crossplane-tools v0.0.0-20230925130601-628280f8bf79 - github.com/crossplane/upjet v1.4.1-0.20240612123927-37c7f4e91d57 - github.com/hashicorp/terraform-json v0.21.0 + github.com/crossplane/upjet v1.4.1-0.20240911184956-3afbb7796d46 + github.com/hashicorp/terraform-json v0.22.1 github.com/hashicorp/terraform-plugin-sdk/v2 v2.33.0 github.com/pkg/errors v0.9.1 - github.com/yandex-cloud/terraform-provider-yandex v0.123.0 + github.com/yandex-cloud/terraform-provider-yandex v0.130.0 gopkg.in/alecthomas/kingpin.v2 v2.2.6 k8s.io/apimachinery v0.29.4 k8s.io/client-go v0.29.4 @@ -19,7 +19,7 @@ require ( ) require ( - github.com/ProtonMail/go-crypto v1.1.0-alpha.0 // indirect + github.com/ProtonMail/go-crypto v1.1.0-alpha.2 // indirect github.com/agext/levenshtein v1.2.3 // indirect github.com/alecthomas/kingpin/v2 v2.4.0 // indirect github.com/alecthomas/template v0.0.0-20190718012654-fb15b899a751 // indirect @@ -27,11 +27,11 @@ require ( github.com/antchfx/htmlquery v1.3.0 // indirect github.com/antchfx/xpath v1.2.5 // indirect github.com/apparentlymart/go-textseg/v15 v15.0.0 // indirect - github.com/aws/aws-sdk-go v1.37.0 // indirect + github.com/aws/aws-sdk-go v1.42.11 // indirect github.com/beorn7/perks v1.0.1 // indirect github.com/blang/semver/v4 v4.0.0 // indirect - github.com/c2h5oh/datasize v0.0.0-20200112174442-28bbd4740fee // indirect - github.com/cespare/xxhash/v2 v2.2.0 // indirect + github.com/c2h5oh/datasize v0.0.0-20200825124411-48ed595a09d2 // indirect + github.com/cespare/xxhash/v2 v2.3.0 // indirect github.com/cloudflare/circl v1.3.7 // indirect github.com/dave/jennifer v1.7.0 // indirect github.com/davecgh/go-spew v1.1.1 // indirect @@ -68,11 +68,11 @@ require ( github.com/hashicorp/go-multierror v1.1.1 // indirect github.com/hashicorp/go-plugin v1.6.0 // indirect github.com/hashicorp/go-uuid v1.0.3 // indirect - github.com/hashicorp/go-version v1.6.0 // indirect - github.com/hashicorp/hc-install v0.6.3 // indirect + github.com/hashicorp/go-version v1.7.0 // indirect + github.com/hashicorp/hc-install v0.7.0 // indirect github.com/hashicorp/hcl/v2 v2.20.0 // indirect github.com/hashicorp/logutils v1.0.0 // indirect - github.com/hashicorp/terraform-exec v0.20.0 // indirect + github.com/hashicorp/terraform-exec v0.21.0 // indirect github.com/hashicorp/terraform-plugin-framework v1.7.0 // indirect github.com/hashicorp/terraform-plugin-framework-timeouts v0.4.1 // indirect github.com/hashicorp/terraform-plugin-framework-validators v0.10.0 // indirect @@ -113,43 +113,44 @@ require ( github.com/prometheus/client_model v0.5.0 // indirect github.com/prometheus/common v0.45.0 // indirect github.com/prometheus/procfs v0.12.0 // indirect + github.com/rogpeppe/go-internal v1.12.0 // indirect github.com/spf13/afero v1.11.0 // indirect github.com/spf13/cobra v1.8.0 // indirect github.com/spf13/pflag v1.0.5 // indirect - github.com/stretchr/objx v0.5.0 // indirect + github.com/stretchr/objx v0.5.2 // indirect github.com/tmccombs/hcl2json v0.6.0 // indirect github.com/vmihailenco/msgpack v4.0.4+incompatible // indirect github.com/vmihailenco/msgpack/v5 v5.4.1 // indirect github.com/vmihailenco/tagparser/v2 v2.0.0 // indirect github.com/xhit/go-str2duration/v2 v2.1.0 // indirect - github.com/yandex-cloud/go-genproto v0.0.0-20240618172339-aafa8543bd63 // indirect - github.com/yandex-cloud/go-sdk v0.0.0-20240621081111-1018f7c96dc7 // indirect - github.com/ydb-platform/terraform-provider-ydb v0.0.20 // indirect + github.com/yandex-cloud/go-genproto v0.0.0-20240919115538-c1956ccf891c // indirect + github.com/yandex-cloud/go-sdk v0.0.0-20240919120105-e63f9f4339a3 // indirect + github.com/ydb-platform/terraform-provider-ydb v0.0.21 // indirect github.com/ydb-platform/ydb-go-genproto v0.0.0-20240315124112-fc0fbffd6613 // indirect github.com/ydb-platform/ydb-go-sdk/v3 v3.56.2 // indirect - github.com/yuin/goldmark v1.6.0 // indirect - github.com/zclconf/go-cty v1.14.3 // indirect + github.com/yuin/goldmark v1.7.1 // indirect + github.com/zclconf/go-cty v1.14.4 // indirect github.com/zclconf/go-cty-yaml v1.0.3 // indirect go.uber.org/multierr v1.11.0 // indirect go.uber.org/zap v1.26.0 // indirect - golang.org/x/crypto v0.21.0 // indirect + golang.org/x/crypto v0.26.0 // indirect golang.org/x/exp v0.0.0-20240112132812-db7319d0e0e3 // indirect - golang.org/x/mod v0.15.0 // indirect - golang.org/x/net v0.23.0 // indirect - golang.org/x/oauth2 v0.16.0 // indirect - golang.org/x/sync v0.6.0 // indirect - golang.org/x/sys v0.18.0 // indirect - golang.org/x/term v0.18.0 // indirect - golang.org/x/text v0.14.0 // indirect + golang.org/x/mod v0.17.0 // indirect + golang.org/x/net v0.28.0 // indirect + golang.org/x/oauth2 v0.21.0 // indirect + golang.org/x/sync v0.8.0 // indirect + golang.org/x/sys v0.25.0 // indirect + golang.org/x/term v0.24.0 // indirect + golang.org/x/text v0.17.0 // indirect golang.org/x/time v0.5.0 // indirect - golang.org/x/tools v0.17.0 // indirect + golang.org/x/tools v0.21.1-0.20240508182429-e35e4ccd0d2d // indirect gomodules.xyz/jsonpatch/v2 v2.4.0 // indirect google.golang.org/appengine v1.6.8 // indirect - google.golang.org/genproto v0.0.0-20240325203815-454cdb8f5daa // indirect - google.golang.org/genproto/googleapis/api v0.0.0-20240325203815-454cdb8f5daa // indirect - google.golang.org/genproto/googleapis/rpc v0.0.0-20240325203815-454cdb8f5daa // indirect - google.golang.org/grpc v1.62.1 // indirect - google.golang.org/protobuf v1.33.0 // indirect + google.golang.org/genproto v0.0.0-20240903143218-8af14fe29dc1 // indirect + google.golang.org/genproto/googleapis/api v0.0.0-20240903143218-8af14fe29dc1 // indirect + google.golang.org/genproto/googleapis/rpc v0.0.0-20240903143218-8af14fe29dc1 // indirect + google.golang.org/grpc v1.66.2 // indirect + google.golang.org/protobuf v1.34.2 // indirect gopkg.in/inf.v0 v0.9.1 // indirect gopkg.in/yaml.v2 v2.4.0 // indirect gopkg.in/yaml.v3 v3.0.1 // indirect diff --git a/go.sum b/go.sum index 58dd5e6..6dce626 100644 --- a/go.sum +++ b/go.sum @@ -5,9 +5,8 @@ dario.cat/mergo v1.0.0/go.mod h1:uNxQE+84aUszobStD9th8a29P2fMDhsBdgRYvZOxGmk= github.com/BurntSushi/toml v0.3.1/go.mod h1:xHWCNGjB5oqiDr8zfno3MHue2Ht5sIBksp03qcyfWMU= github.com/Microsoft/go-winio v0.6.1 h1:9/kr64B9VUZrLm5YYwbGtUJnMgqWVOdUAXu6Migciow= github.com/Microsoft/go-winio v0.6.1/go.mod h1:LRdKpFKfdobln8UmuiYcKPot9D2v6svN5+sAH+4kjUM= -github.com/OneOfOne/xxhash v1.2.2/go.mod h1:HSdplMjZKSmBqAxg5vPj2TmRDmfkzw+cTzAElWljhcU= -github.com/ProtonMail/go-crypto v1.1.0-alpha.0 h1:nHGfwXmFvJrSR9xu8qL7BkO4DqTHXE9N5vPhgY2I+j0= -github.com/ProtonMail/go-crypto v1.1.0-alpha.0/go.mod h1:rA3QumHc/FZ8pAHreoekgiAbzpNsfQAosU5td4SnOrE= +github.com/ProtonMail/go-crypto v1.1.0-alpha.2 h1:bkyFVUP+ROOARdgCiJzNQo2V2kiB97LyUpzH9P6Hrlg= +github.com/ProtonMail/go-crypto v1.1.0-alpha.2/go.mod h1:rA3QumHc/FZ8pAHreoekgiAbzpNsfQAosU5td4SnOrE= github.com/agext/levenshtein v1.2.3 h1:YB2fHEn0UJagG8T1rrWknE3ZQzWM06O8AMAatNn7lmo= github.com/agext/levenshtein v1.2.3/go.mod h1:JEDfjyjHDjOF/1e4FlBE/PkbqA9OfWu2ki2W0IB5558= github.com/alecthomas/kingpin/v2 v2.4.0 h1:f48lwail6p8zpO1bC4TxtqACaGqHYA22qkHjHpqDjYY= @@ -26,29 +25,26 @@ github.com/antihax/optional v1.0.0/go.mod h1:uupD/76wgC+ih3iEmQUL+0Ugr19nfwCT1kd github.com/apparentlymart/go-textseg/v12 v12.0.0/go.mod h1:S/4uRK2UtaQttw1GenVJEynmyUenKwP++x/+DdGV/Ec= github.com/apparentlymart/go-textseg/v15 v15.0.0 h1:uYvfpb3DyLSCGWnctWKGj857c6ew1u1fNQOlOtuGxQY= github.com/apparentlymart/go-textseg/v15 v15.0.0/go.mod h1:K8XmNZdhEBkdlyDdvbmmsvpAG721bKi0joRfFdHIWJ4= -github.com/aws/aws-sdk-go v1.37.0 h1:GzFnhOIsrGyQ69s7VgqtrG2BG8v7X7vwB3Xpbd/DBBk= -github.com/aws/aws-sdk-go v1.37.0/go.mod h1:hcU610XS61/+aQV88ixoOzUoG7v3b31pl2zKMmprdro= +github.com/aws/aws-sdk-go v1.42.11 h1:5wfKuNcbch3IFZth5+j2Ud/+UOxCR0zfgLGPoiK1p4s= +github.com/aws/aws-sdk-go v1.42.11/go.mod h1:585smgzpB/KqRA+K3y/NL/oYRqQvpNJYvLm+LY1U59Q= github.com/beorn7/perks v1.0.1 h1:VlbKKnNfV8bJzeqoa4cOKqO6bYr3WgKZxO8Z16+hsOM= github.com/beorn7/perks v1.0.1/go.mod h1:G2ZrVWU2WbWT9wwq4/hrbKbnv/1ERSJQ0ibhJ6rlkpw= github.com/blang/semver/v4 v4.0.0 h1:1PFHFE6yCCTv8C1TeyNNarDzntLi7wMI5i/pzqYIsAM= github.com/blang/semver/v4 v4.0.0/go.mod h1:IbckMUScFkM3pff0VJDNKRiT6TG/YpiHIM2yvyW5YoQ= github.com/bufbuild/protocompile v0.6.0 h1:Uu7WiSQ6Yj9DbkdnOe7U4mNKp58y9WDMKDn28/ZlunY= github.com/bufbuild/protocompile v0.6.0/go.mod h1:YNP35qEYoYGme7QMtz5SBCoN4kL4g12jTtjuzRNdjpE= -github.com/c2h5oh/datasize v0.0.0-20200112174442-28bbd4740fee h1:BnPxIde0gjtTnc9Er7cxvBk8DHLWhEux0SxayC8dP6I= -github.com/c2h5oh/datasize v0.0.0-20200112174442-28bbd4740fee/go.mod h1:S/7n9copUssQ56c7aAgHqftWO4LTf4xY6CGWt8Bc+3M= +github.com/c2h5oh/datasize v0.0.0-20200825124411-48ed595a09d2 h1:t8KYCwSKsOEZBFELI4Pn/phbp38iJ1RRAkDFNin1aak= +github.com/c2h5oh/datasize v0.0.0-20200825124411-48ed595a09d2/go.mod h1:S/7n9copUssQ56c7aAgHqftWO4LTf4xY6CGWt8Bc+3M= github.com/census-instrumentation/opencensus-proto v0.2.1/go.mod h1:f6KPmirojxKA12rnyqOA5BBL4O983OfeGPqjHWSTneU= -github.com/cespare/xxhash v1.1.0/go.mod h1:XrSqR1VqqWfGrhpAt58auRo0WTKS1nRRg3ghfAqPWnc= github.com/cespare/xxhash/v2 v2.1.1/go.mod h1:VGX0DQ3Q6kWi7AoAeZDth3/j3BFtOZR5XLFGgcrjCOs= -github.com/cespare/xxhash/v2 v2.2.0 h1:DC2CZ1Ep5Y4k3ZQ899DldepgrayRUGE6BBZ/cd9Cj44= -github.com/cespare/xxhash/v2 v2.2.0/go.mod h1:VGX0DQ3Q6kWi7AoAeZDth3/j3BFtOZR5XLFGgcrjCOs= +github.com/cespare/xxhash/v2 v2.3.0 h1:UL815xU9SqsFlibzuggzjXhog7bL6oX9BbNZnL2UFvs= +github.com/cespare/xxhash/v2 v2.3.0/go.mod h1:VGX0DQ3Q6kWi7AoAeZDth3/j3BFtOZR5XLFGgcrjCOs= github.com/client9/misspell v0.3.4/go.mod h1:qj6jICC3Q7zFZvVWo7KLAzC3yx5G7kyvSDkc90ppPyw= github.com/cloudflare/circl v1.3.7 h1:qlCDlTPz2n9fu58M0Nh1J/JzcFpfgkFHHX3O35r5vcU= github.com/cloudflare/circl v1.3.7/go.mod h1:sRTcRWXGLrKw6yIGJ+l7amYJFfAXbZG0kBSc8r4zxgA= github.com/cncf/udpa/go v0.0.0-20191209042840-269d4d468f6f/go.mod h1:M8M6+tZqaGXZJjfX53e64911xZQV5JYwmTeXPW+k8Sc= github.com/cncf/udpa/go v0.0.0-20201120205902-5459f2c99403/go.mod h1:WmhPx2Nbnhtbo57+VJT5O0JRkEi1Wbu0z5j0R8u5Hbk= github.com/cncf/udpa/go v0.0.0-20210930031921-04548b0d99d4/go.mod h1:6pvJx4me5XPnfI9Z40ddWsdw2W/uZgQLFXToKeRcDiI= -github.com/cncf/xds/go v0.0.0-20210312221358-fbca930ec8ed/go.mod h1:eXthEFrGJvWHgFFCl3hGmgk+/aYT6PnTQLykKQRLhEs= -github.com/cncf/xds/go v0.0.0-20210805033703-aa0b78936158/go.mod h1:eXthEFrGJvWHgFFCl3hGmgk+/aYT6PnTQLykKQRLhEs= github.com/cncf/xds/go v0.0.0-20210922020428-25de7278fc84/go.mod h1:eXthEFrGJvWHgFFCl3hGmgk+/aYT6PnTQLykKQRLhEs= github.com/cncf/xds/go v0.0.0-20211001041855-01bcc9b48dfe/go.mod h1:eXthEFrGJvWHgFFCl3hGmgk+/aYT6PnTQLykKQRLhEs= github.com/cncf/xds/go v0.0.0-20211011173535-cb28da3451f1/go.mod h1:eXthEFrGJvWHgFFCl3hGmgk+/aYT6PnTQLykKQRLhEs= @@ -58,8 +54,8 @@ github.com/crossplane/crossplane-runtime v1.16.0-rc.2.0.20240510094504-3f697876f github.com/crossplane/crossplane-runtime v1.16.0-rc.2.0.20240510094504-3f697876fa57/go.mod h1:Pz2tdGVMF6KDGzHZOkvKro0nKc8EzK0sb/nSA7pH4Dc= github.com/crossplane/crossplane-tools v0.0.0-20230925130601-628280f8bf79 h1:HigXs5tEQxWz0fcj8hzbU2UAZgEM7wPe0XRFOsrtF8Y= github.com/crossplane/crossplane-tools v0.0.0-20230925130601-628280f8bf79/go.mod h1:+e4OaFlOcmr0JvINHl/yvEYBrZawzTgj6pQumOH1SS0= -github.com/crossplane/upjet v1.4.1-0.20240612123927-37c7f4e91d57 h1:hyKXccOb8BepVJj79KsvwYsid5Lhlr2DojO29Sqi+rw= -github.com/crossplane/upjet v1.4.1-0.20240612123927-37c7f4e91d57/go.mod h1:wkdZf/Cvhr6PI30VdHIOjg4dX39Z5uijqnLWFk5PbGM= +github.com/crossplane/upjet v1.4.1-0.20240911184956-3afbb7796d46 h1:2IH1YPTBrNmBj0Z1OCjEBTrQCuRaLutZbWLaswFeCFQ= +github.com/crossplane/upjet v1.4.1-0.20240911184956-3afbb7796d46/go.mod h1:wkdZf/Cvhr6PI30VdHIOjg4dX39Z5uijqnLWFk5PbGM= github.com/cyphar/filepath-securejoin v0.2.4 h1:Ugdm7cg7i6ZK6x3xDF1oEu1nfkyfH53EtKeQYTC3kyg= github.com/cyphar/filepath-securejoin v0.2.4/go.mod h1:aPGpWjXOXUn2NCNjFvBE6aRxGGx79pTxQpKOJNYHHl4= github.com/dave/jennifer v1.7.0 h1:uRbSBH9UTS64yXbh4FrMHfgfY762RD+C7bUPKODpSJE= @@ -75,8 +71,6 @@ github.com/envoyproxy/go-control-plane v0.9.0/go.mod h1:YTl/9mNaCwkRvm6d1a2C3ymF github.com/envoyproxy/go-control-plane v0.9.1-0.20191026205805-5f8ba28d4473/go.mod h1:YTl/9mNaCwkRvm6d1a2C3ymFceY/DCBVvsKhRF0iEA4= github.com/envoyproxy/go-control-plane v0.9.4/go.mod h1:6rpuAdCZL397s3pYoYcLgu1mIlRU8Am5FuJP05cCM98= github.com/envoyproxy/go-control-plane v0.9.9-0.20201210154907-fd9021fe5dad/go.mod h1:cXg6YxExXjJnVBQHBLXeUAgxn2UodCpnH306RInaBQk= -github.com/envoyproxy/go-control-plane v0.9.9-0.20210512163311-63b5d3c536b0/go.mod h1:hliV/p42l8fGbc6Y9bQ70uLwIvmJyVE5k4iMKlh8wCQ= -github.com/envoyproxy/go-control-plane v0.9.10-0.20210907150352-cf90f659a021/go.mod h1:AFq3mo9L8Lqqiid3OhADV3RfLJnjiw63cSpi+fDTRC0= github.com/envoyproxy/go-control-plane v0.10.2-0.20220325020618-49ff273808a1/go.mod h1:KJwIaB5Mv44NWtYuAOFCVOjcI94vtpEz2JU/D2v6IjE= github.com/envoyproxy/protoc-gen-validate v0.1.0/go.mod h1:iSmxcyjqTsJpI2R4NaDN7+kN2VEUnK/pcBlmesArF7c= github.com/evanphx/json-patch v5.6.0+incompatible h1:jBYDEEiFBPxA0v50tFdvOzQQTCvpL6mnFh5mB2/l16U= @@ -101,8 +95,8 @@ github.com/go-git/gcfg v1.5.1-0.20230307220236-3a3c6141e376 h1:+zs/tPmkDkHx3U66D github.com/go-git/gcfg v1.5.1-0.20230307220236-3a3c6141e376/go.mod h1:an3vInlBmSxCcxctByoQdvwPiA7DTK7jaaFDBTtu0ic= github.com/go-git/go-billy/v5 v5.5.0 h1:yEY4yhzCDuMGSv83oGxiBotRzhwhNr8VZyphhiu+mTU= github.com/go-git/go-billy/v5 v5.5.0/go.mod h1:hmexnoNsr2SJU1Ju67OaNz5ASJY3+sHgFRpCtpDCKow= -github.com/go-git/go-git/v5 v5.11.0 h1:XIZc1p+8YzypNr34itUfSvYJcv+eYdTnTvOZ2vD3cA4= -github.com/go-git/go-git/v5 v5.11.0/go.mod h1:6GFcX2P3NM7FPBfpePbpLd21XxsgdAt+lKqXmCUiUCY= +github.com/go-git/go-git/v5 v5.12.0 h1:7Md+ndsjrzZxbddRDZjF14qK+NN56sy6wkqaVrjZtys= +github.com/go-git/go-git/v5 v5.12.0/go.mod h1:FTM9VKtnI2m65hNI/TenDDDnUf2Q9FHnXYjuz9i5OEY= github.com/go-kit/kit v0.9.0/go.mod h1:xBxKIO96dXMWWy0MnWVtmwkA9/13aqxPnvrjFYMA2as= github.com/go-logfmt/logfmt v0.4.0/go.mod h1:3RMwSq7FuexP4Kalkev3ejPJsZTpXXBr9+V4qmtdjCk= github.com/go-logr/logr v1.3.0/go.mod h1:9T104GzyrTigFIr8wt5mBrctHMim0Nb2HLGrmQ40KvY= @@ -127,7 +121,6 @@ github.com/gobuffalo/flect v1.0.2 h1:eqjPGSo2WmjgY2XlpGwo2NXgL3RucAKo4k4qQMNA5sA github.com/gobuffalo/flect v1.0.2/go.mod h1:A5msMlrHtLqh9umBSnvabjsMrCcCpAyzglnDvkbYKHs= 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/v4 v4.1.0/go.mod h1:/xlHOz8bRuivTWchD4jCa+NbatV+wEUSzwAxVc6locg= github.com/golang-jwt/jwt/v4 v4.5.0 h1:7cYmW1XlMY7h7ii7UhUyChSgS5wUJEnm9uZVTGqOWzg= github.com/golang-jwt/jwt/v4 v4.5.0/go.mod h1:m21LjoU+eqJr34lmDMbreY2eSTRJ1cv77w39/MY0Ch0= github.com/golang/glog v0.0.0-20160126235308-23def4e6c14b/go.mod h1:SBH7ygxi8pfUlaOkMMuAQtPIUF8ecWP5IEl/CR7VP2Q= @@ -191,7 +184,6 @@ github.com/hashicorp/go-cty v1.4.1-0.20200414143053-d3edf31b6320 h1:1/D3zfFHttUK github.com/hashicorp/go-cty v1.4.1-0.20200414143053-d3edf31b6320/go.mod h1:EiZBMaudVLy8fmjf9Npq1dq9RalhveqZG5w/yz3mHWs= github.com/hashicorp/go-hclog v1.6.2 h1:NOtoftovWkDheyUM/8JW3QMiXyxJK3uHRK7wV04nD2I= github.com/hashicorp/go-hclog v1.6.2/go.mod h1:W4Qnvbt70Wk/zYJryRzDRU/4r0kIg0PVHBcfoyhpF5M= -github.com/hashicorp/go-multierror v1.0.0/go.mod h1:dHtQlpGsu+cZNNAkkCN/P3hoUDHhCYQXV3UM06sGGrk= github.com/hashicorp/go-multierror v1.1.1 h1:H5DkEtf6CXdFp0N0Em5UCwQpXMWke8IA0+lD48awMYo= github.com/hashicorp/go-multierror v1.1.1/go.mod h1:iw975J/qwKPdAO1clOe2L8331t/9/fmwbPZ6JB6eMoM= github.com/hashicorp/go-plugin v1.6.0 h1:wgd4KxHJTVGGqWBq4QPB1i5BZNEx9BR8+OFmHDmTk8A= @@ -199,18 +191,18 @@ github.com/hashicorp/go-plugin v1.6.0/go.mod h1:lBS5MtSSBZk0SHc66KACcjjlU6WzEVP/ github.com/hashicorp/go-uuid v1.0.0/go.mod h1:6SBZvOh/SIDV7/2o3Jml5SYk/TvGqwFJ/bN7x4byOro= github.com/hashicorp/go-uuid v1.0.3 h1:2gKiV6YVmrJ1i2CKKa9obLvRieoRGviZFL26PcT/Co8= github.com/hashicorp/go-uuid v1.0.3/go.mod h1:6SBZvOh/SIDV7/2o3Jml5SYk/TvGqwFJ/bN7x4byOro= -github.com/hashicorp/go-version v1.6.0 h1:feTTfFNnjP967rlCxM/I9g701jU+RN74YKx2mOkIeek= -github.com/hashicorp/go-version v1.6.0/go.mod h1:fltr4n8CU8Ke44wwGCBoEymUuxUHl09ZGVZPK5anwXA= -github.com/hashicorp/hc-install v0.6.3 h1:yE/r1yJvWbtrJ0STwScgEnCanb0U9v7zp0Gbkmcoxqs= -github.com/hashicorp/hc-install v0.6.3/go.mod h1:KamGdbodYzlufbWh4r9NRo8y6GLHWZP2GBtdnms1Ln0= +github.com/hashicorp/go-version v1.7.0 h1:5tqGy27NaOTB8yJKUZELlFAS/LTKJkrmONwQKeRZfjY= +github.com/hashicorp/go-version v1.7.0/go.mod h1:fltr4n8CU8Ke44wwGCBoEymUuxUHl09ZGVZPK5anwXA= +github.com/hashicorp/hc-install v0.7.0 h1:Uu9edVqjKQxxuD28mR5TikkKDd/p55S8vzPC1659aBk= +github.com/hashicorp/hc-install v0.7.0/go.mod h1:ELmmzZlGnEcqoUMKUuykHaPCIR1sYLYX+KSggWSKZuA= github.com/hashicorp/hcl/v2 v2.20.0 h1:l++cRs/5jQOiKVvqXZm/P1ZEfVXJmvLS9WSVxkaeTb4= github.com/hashicorp/hcl/v2 v2.20.0/go.mod h1:WmcD/Ym72MDOOx5F62Ly+leloeu6H7m0pG7VBiU6pQk= github.com/hashicorp/logutils v1.0.0 h1:dLEQVugN8vlakKOUE3ihGLTZJRB4j+M2cdTm/ORI65Y= github.com/hashicorp/logutils v1.0.0/go.mod h1:QIAnNjmIWmVIIkWDTG1z5v++HQmx9WQRO+LraFDTW64= -github.com/hashicorp/terraform-exec v0.20.0 h1:DIZnPsqzPGuUnq6cH8jWcPunBfY+C+M8JyYF3vpnuEo= -github.com/hashicorp/terraform-exec v0.20.0/go.mod h1:ckKGkJWbsNqFKV1itgMnE0hY9IYf1HoiekpuN0eWoDw= -github.com/hashicorp/terraform-json v0.21.0 h1:9NQxbLNqPbEMze+S6+YluEdXgJmhQykRyRNd+zTI05U= -github.com/hashicorp/terraform-json v0.21.0/go.mod h1:qdeBs11ovMzo5puhrRibdD6d2Dq6TyE/28JiU4tIQxk= +github.com/hashicorp/terraform-exec v0.21.0 h1:uNkLAe95ey5Uux6KJdua6+cv8asgILFVWkd/RG0D2XQ= +github.com/hashicorp/terraform-exec v0.21.0/go.mod h1:1PPeMYou+KDUSSeRE9szMZ/oHf4fYUmB923Wzbq1ICg= +github.com/hashicorp/terraform-json v0.22.1 h1:xft84GZR0QzjPVWs4lRUwvTcPnegqlyS7orfb5Ltvec= +github.com/hashicorp/terraform-json v0.22.1/go.mod h1:JbWSQCLFSXFFhg42T7l9iJwdGXBYV8fmmD6o/ML4p3A= github.com/hashicorp/terraform-plugin-framework v1.7.0 h1:wOULbVmfONnJo9iq7/q+iBOBJul5vRovaYJIu2cY/Pw= github.com/hashicorp/terraform-plugin-framework v1.7.0/go.mod h1:jY9Id+3KbZ17OMpulgnWLSfwxNVYSoYBQFTgsx044CI= github.com/hashicorp/terraform-plugin-framework-timeouts v0.4.1 h1:gm5b1kHgFFhaKFhm4h2TgvMUlNzFAtUqlcOWnWPm+9E= @@ -292,7 +284,6 @@ github.com/mitchellh/go-homedir v1.1.0 h1:lukF9ziXFxDFPkA1vsr5zpc1XuPDn/wFntq5mG github.com/mitchellh/go-homedir v1.1.0/go.mod h1:SfyaCUpYCn1Vlf4IUYiD9fPX4A5wJrkLzIz1N1q0pr0= github.com/mitchellh/go-ps v1.0.0 h1:i6ampVEEF4wQFF+bkYfwYgY+F/uYJDktmvLPf7qIgjc= github.com/mitchellh/go-ps v1.0.0/go.mod h1:J4lOc8z8yJs6vUwklHw2XEIiT4z4C40KtWVN3nvg8Pg= -github.com/mitchellh/go-testing-interface v1.0.0/go.mod h1:kRemZodwjscx+RGhAo8eIhFbs2+BFgRtFPeD/KE+zxI= github.com/mitchellh/go-testing-interface v1.14.1 h1:jrgshOhYAUVNMAJiKbEu7EqAwgJJ2JqpQmpLJOu07cU= github.com/mitchellh/go-testing-interface v1.14.1/go.mod h1:gfgS7OtZj6MA4U1UrDRp04twqAjfvlZyCfX3sDjEym8= github.com/mitchellh/go-wordwrap v1.0.1 h1:TLuKupo69TCn6TQSyGxwI1EblZZEsQ0vMlAFQflz0v0= @@ -348,15 +339,14 @@ github.com/rekby/fixenv v0.6.1 h1:jUFiSPpajT4WY2cYuc++7Y1zWrnCxnovGCIX72PZniM= github.com/rekby/fixenv v0.6.1/go.mod h1:/b5LRc06BYJtslRtHKxsPWFT/ySpHV+rWvzTg+XWk4c= github.com/rogpeppe/fastuuid v1.2.0/go.mod h1:jVj6XXZzXRy/MSR5jhDC/2q6DgLz+nrA6LYCDYWNEvQ= github.com/rogpeppe/go-internal v1.9.0/go.mod h1:WtVeX8xhTBvf0smdhujwtBcq4Qrzq/fJaraNFVN+nFs= -github.com/rogpeppe/go-internal v1.10.0 h1:TMyTOH3F/DB16zRVcYyreMH6GnZZrwQVAoYjRBZyWFQ= -github.com/rogpeppe/go-internal v1.10.0/go.mod h1:UQnix2H7Ngw/k4C5ijL5+65zddjncjaFoBhdsK/akog= +github.com/rogpeppe/go-internal v1.12.0 h1:exVL4IDcn6na9z1rAb56Vxr+CgyK3nn3O+epU5NdKM8= +github.com/rogpeppe/go-internal v1.12.0/go.mod h1:E+RYuTGaKKdloAfM02xzb0FW3Paa99yedzYV+kq4uf4= github.com/russross/blackfriday/v2 v2.1.0/go.mod h1:+Rmxgy9KzJVeS9/2gXHxylqXiyQDYRxCVz55jmeOWTM= -github.com/sergi/go-diff v1.2.0 h1:XU+rvMAioB0UC3q1MFrIQy4Vo5/4VsRDQQXHsEya6xQ= -github.com/sergi/go-diff v1.2.0/go.mod h1:STckp+ISIX8hZLjrqAeVduY0gWCT9IjLuqbuNXdaHfM= +github.com/sergi/go-diff v1.3.2-0.20230802210424-5b0b94c5c0d3 h1:n661drycOFuPLCN3Uc8sB6B/s6Z4t2xvBgU1htSHuq8= +github.com/sergi/go-diff v1.3.2-0.20230802210424-5b0b94c5c0d3/go.mod h1:A0bzQcvG0E7Rwjx0REVgAGH58e96+X0MeOfepqsbeW4= github.com/sirupsen/logrus v1.4.2/go.mod h1:tLMulIdttU9McNUspp0xgXVQah82FyeX6MwdIuYE2rE= -github.com/skeema/knownhosts v1.2.1 h1:SHWdIUa82uGZz+F+47k8SY4QhhI291cXCpopT1lK2AQ= -github.com/skeema/knownhosts v1.2.1/go.mod h1:xYbVRSPxqBZFrdmDyMmsOs+uX1UZC3nTN3ThzgDxUwo= -github.com/spaolacci/murmur3 v0.0.0-20180118202830-f09979ecbc72/go.mod h1:JwIasOWyU6f++ZhiEuf87xNszmSA2myDM2Kzu9HwQUA= +github.com/skeema/knownhosts v1.2.2 h1:Iug2P4fLmDw9f41PB6thxUkNUkJzB5i+1/exaj40L3A= +github.com/skeema/knownhosts v1.2.2/go.mod h1:xYbVRSPxqBZFrdmDyMmsOs+uX1UZC3nTN3ThzgDxUwo= github.com/spf13/afero v1.11.0 h1:WJQKhtpdm3v2IzqG8VMqrr6Rf3UYpEF239Jy9wNepM8= github.com/spf13/afero v1.11.0/go.mod h1:GH9Y3pIexgf1MTIWtNGyogA5MwRIDXGUr+hbWNoBjkY= github.com/spf13/cobra v1.8.0 h1:7aJaZx1B85qltLMc546zn58BxxfZdR/W22ej9CFoEf0= @@ -366,8 +356,9 @@ github.com/spf13/pflag v1.0.5/go.mod h1:McXfInJRrz4CZXVZOBLb0bTZqETkiAhM9Iw0y3An 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 h1:1zr/of2m5FGMsad5YfcqgdqdWrIhu+EBEJRhR1U7z/c= 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= @@ -377,8 +368,8 @@ github.com/stretchr/testify v1.7.1/go.mod h1:6Fq8oRcR53rry900zMqJjRRixrwX3KX962/ github.com/stretchr/testify v1.7.2/go.mod h1:R6va5+xMeoiuVRoj+gSkQ7d3FALtqAAGI1FQKckRals= 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.8.4 h1:CcVxjf3Q8PM0mHUKJCdn+eZZtm5yQwehR5yeSVQQcUk= -github.com/stretchr/testify v1.8.4/go.mod h1:sz/lmYIOXD/1dqDmKjjqLyZ2RngseejIcXlSw2iwfAo= +github.com/stretchr/testify v1.9.0 h1:HtqpIVDClZ4nwg75+f6Lvsy/wHu+3BoSGCbBAcpTsTg= +github.com/stretchr/testify v1.9.0/go.mod h1:r2ic/lqez/lEtzL7wO/rwa5dbSLXVDPFyf8C91i36aY= github.com/tmccombs/hcl2json v0.6.0 h1:Qc5NL4NQbpNnw8w8HQcA3GsVHvQDJXJwVTUxf2AEhOs= github.com/tmccombs/hcl2json v0.6.0/go.mod h1:QNirG4H64ZvlFsy9werRxXlWNTDR1GhWzXkjqPILHwo= github.com/vmihailenco/msgpack v3.3.3+incompatible/go.mod h1:fy3FlTQTDXWkZ7Bh6AcGMlsjHatGryHQYUTf1ShIgkk= @@ -392,14 +383,14 @@ github.com/xanzy/ssh-agent v0.3.3 h1:+/15pJfg/RsTxqYcX6fHqOXZwwMP+2VyYWJeWM2qQFM github.com/xanzy/ssh-agent v0.3.3/go.mod h1:6dzNDKs0J9rVPHPhaGCukekBHKqfl+L3KghI1Bc68Uw= github.com/xhit/go-str2duration/v2 v2.1.0 h1:lxklc02Drh6ynqX+DdPyp5pCKLUQpRT8bp8Ydu2Bstc= github.com/xhit/go-str2duration/v2 v2.1.0/go.mod h1:ohY8p+0f07DiV6Em5LKB0s2YpLtXVyJfNt1+BlmyAsU= -github.com/yandex-cloud/go-genproto v0.0.0-20240618172339-aafa8543bd63 h1:mHrm9qMyi5zkH1J7wG8RtWZPtbW+0YEiHlrbse6Jqos= -github.com/yandex-cloud/go-genproto v0.0.0-20240618172339-aafa8543bd63/go.mod h1:HEUYX/p8966tMUHHT+TsS0hF/Ca/NYwqprC5WXSDMfE= -github.com/yandex-cloud/go-sdk v0.0.0-20240621081111-1018f7c96dc7 h1:/8yjsR2CXDI78EYoZNjKWWI1zl80mehvXHWJNDXV0Wg= -github.com/yandex-cloud/go-sdk v0.0.0-20240621081111-1018f7c96dc7/go.mod h1:urEKFBFYulcun3e4CbZY33Czfy7XeI1y4ctASTB/MUQ= -github.com/yandex-cloud/terraform-provider-yandex v0.123.0 h1:gmeZFu2K5hhzClngstaZbezNfrZYNWlu3GOiU1IlbbU= -github.com/yandex-cloud/terraform-provider-yandex v0.123.0/go.mod h1:QK3Mm/dWctgGD7ugi/XKJHEEP5ZYl4Z9GiQOdAZUCwQ= -github.com/ydb-platform/terraform-provider-ydb v0.0.20 h1:Z0zjLvMS/IjwERLqcW9IoZ6ZV3pTOamcnbD+wDpOsd4= -github.com/ydb-platform/terraform-provider-ydb v0.0.20/go.mod h1:OSFQZZXv8p1gpjcXXikvTUFiHrH5fyLA5Zz2Jgy3S/w= +github.com/yandex-cloud/go-genproto v0.0.0-20240919115538-c1956ccf891c h1:y6RpwhlBgWBJWHEgPXA2IyIHgWnrsjJV+LuGBN+WzP0= +github.com/yandex-cloud/go-genproto v0.0.0-20240919115538-c1956ccf891c/go.mod h1:0LDD/IZLIUIV4iPH+YcF+jysO3jkSvADFGm4dCAuwQo= +github.com/yandex-cloud/go-sdk v0.0.0-20240919120105-e63f9f4339a3 h1:t4T2EYu9LCNGYYjJA8x/ZIn8PHzJIxghjEGa9+Cx4xg= +github.com/yandex-cloud/go-sdk v0.0.0-20240919120105-e63f9f4339a3/go.mod h1:RI42kDbwc4lOD8MtWmJDji5N/1P4AEToQQAprJby6XU= +github.com/yandex-cloud/terraform-provider-yandex v0.130.0 h1:zrUGw6JxRYrYU+zf80v4Rm+1QW2jXEyPcPNUXMB6dsE= +github.com/yandex-cloud/terraform-provider-yandex v0.130.0/go.mod h1:97aSknca+svp596KroMWb4XQnMo7FdbB1CQoJg8vAA8= +github.com/ydb-platform/terraform-provider-ydb v0.0.21 h1:YWiZG/2tquBuVBLlgyhwnpaHwLUGzEMM0unfG1h0Z88= +github.com/ydb-platform/terraform-provider-ydb v0.0.21/go.mod h1:cxih2YR382b84aZRMrPBaYLUcNEITrEUqnlWPMj31Ag= github.com/ydb-platform/ydb-go-genproto v0.0.0-20240315124112-fc0fbffd6613 h1:M3jRVL6CkCsgKb7d2s1Jnc9gdiSfzcmbMUMvNHWuWbw= github.com/ydb-platform/ydb-go-genproto v0.0.0-20240315124112-fc0fbffd6613/go.mod h1:Er+FePu1dNUieD+XTMDduGpQuCPssK5Q4BjF+IIXJ3I= github.com/ydb-platform/ydb-go-sdk/v3 v3.56.2 h1:8Mbm6BUuPgpU8Xs62rDAa2DAYlaQtiIk3fFvrjCKyRU= @@ -408,10 +399,10 @@ github.com/yuin/goldmark v1.1.27/go.mod h1:3hX8gzYuyVAZsxl0MRgGTJEmQBFcNTphYh9de github.com/yuin/goldmark v1.2.1/go.mod h1:3hX8gzYuyVAZsxl0MRgGTJEmQBFcNTphYh9decYSb74= github.com/yuin/goldmark v1.3.5/go.mod h1:mwnBkeHKe2W/ZEtQ+71ViKU8L12m81fl3OWwC1Zlc8k= github.com/yuin/goldmark v1.4.13/go.mod h1:6yULJ656Px+3vBD8DxQVa3kxgyrAnzto9xy5taEt/CY= -github.com/yuin/goldmark v1.6.0 h1:boZcn2GTjpsynOsC0iJHnBWa4Bi0qzfJjthwauItG68= -github.com/yuin/goldmark v1.6.0/go.mod h1:6yULJ656Px+3vBD8DxQVa3kxgyrAnzto9xy5taEt/CY= -github.com/zclconf/go-cty v1.14.3 h1:1JXy1XroaGrzZuG6X9dt7HL6s9AwbY+l4UNL8o5B6ho= -github.com/zclconf/go-cty v1.14.3/go.mod h1:VvMs5i0vgZdhYawQNq5kePSpLAoz8u1xvZgrPIxfnZE= +github.com/yuin/goldmark v1.7.1 h1:3bajkSilaCbjdKVsKdZjZCLBNPL9pYzrCakKaf4U49U= +github.com/yuin/goldmark v1.7.1/go.mod h1:uzxRWxtg69N339t3louHJ7+O03ezfj6PlliRlaOzY1E= +github.com/zclconf/go-cty v1.14.4 h1:uXXczd9QDGsgu0i/QFR/hzI5NYCHLf6NQw/atrbnhq8= +github.com/zclconf/go-cty v1.14.4/go.mod h1:VvMs5i0vgZdhYawQNq5kePSpLAoz8u1xvZgrPIxfnZE= github.com/zclconf/go-cty-yaml v1.0.3 h1:og/eOQ7lvA/WWhHGFETVWNduJM7Rjsv2RRpx1sdFMLc= github.com/zclconf/go-cty-yaml v1.0.3/go.mod h1:9YLUH4g7lOhVWqUbctnVlZ5KLpg7JAprQNgxSZ1Gyxs= go.opentelemetry.io/proto/otlp v0.7.0/go.mod h1:PqfVotwruBrMGOCsRd/89rSnXhoiJIqeYNgFYFoEGnI= @@ -430,8 +421,8 @@ golang.org/x/crypto v0.0.0-20190308221718-c2843e01d9a2/go.mod h1:djNgcEr1/C05ACk 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.0.0-20210921155107-089bfa567519/go.mod h1:GvvjBRRGRdwPK5ydBHafDWAxML/pGHZbMvKqRZ5+Abc= -golang.org/x/crypto v0.21.0 h1:X31++rzVUdKhX5sWmSOFZxx8UW/ldWx55cbf08iNAMA= -golang.org/x/crypto v0.21.0/go.mod h1:0BP7YvVV9gBbVKyeTG0Gyn+gZm94bibOW5BjDEYAOMs= +golang.org/x/crypto v0.26.0 h1:RrRspgV4mU+YwB4FYnuBoKsUapNIL5cohGAmSH3azsw= +golang.org/x/crypto v0.26.0/go.mod h1:GY7jblb9wI+FOo5y8/S2oY4zWP07AkOJ4+jxCqdqn54= golang.org/x/exp v0.0.0-20190121172915-509febef88a4/go.mod h1:CJ0aWSM057203Lf6IL+f9T1iT9GByDxfZKAQTCR3kQA= golang.org/x/exp v0.0.0-20240112132812-db7319d0e0e3 h1:hNQpMuAJe5CtcUqCXaWga3FHu+kQvCqcsoVaQgSV60o= golang.org/x/exp v0.0.0-20240112132812-db7319d0e0e3/go.mod h1:idGWGoKP1toJGkd5/ig9ZLuPcZBC3ewk7SzmH0uou08= @@ -442,8 +433,8 @@ 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.4.2/go.mod h1:s0Qsj1ACt9ePp/hMypM3fl4fZqREWJwdYDEqhRiZZUA= golang.org/x/mod v0.6.0-dev.0.20220419223038-86c51ed26bb4/go.mod h1:jJ57K6gSWd91VN4djpZkiMVwK6gcyfeH4XE8wZrZaV4= -golang.org/x/mod v0.15.0 h1:SernR4v+D55NyBH2QiEQrlBAnj1ECL6AGrA5+dPaMY8= -golang.org/x/mod v0.15.0/go.mod h1:hTbmBsO62+eylJbnUtE2MGJUyE7QWk4xUqPFrRgJ+7c= +golang.org/x/mod v0.17.0 h1:zY54UmvipHiNd+pm+m0x9KhZ9hl1/7QNMyxXbc6ICqA= +golang.org/x/mod v0.17.0/go.mod h1:hTbmBsO62+eylJbnUtE2MGJUyE7QWk4xUqPFrRgJ+7c= golang.org/x/net v0.0.0-20180724234803-3673e40ba225/go.mod h1:mL1N/T3taQHkDXs73rZJwtUhF3w3ftmwwsq0BUmARs4= golang.org/x/net v0.0.0-20180826012351-8a410e7b638d/go.mod h1:mL1N/T3taQHkDXs73rZJwtUhF3w3ftmwwsq0BUmARs4= golang.org/x/net v0.0.0-20190108225652-1e06a53dbb7e/go.mod h1:mL1N/T3taQHkDXs73rZJwtUhF3w3ftmwwsq0BUmARs4= @@ -454,17 +445,17 @@ golang.org/x/net v0.0.0-20190620200207-3b0461eec859/go.mod h1:z5CRVTTTmAJ677TzLL golang.org/x/net v0.0.0-20200226121028-0de0cce0169b/go.mod h1:z5CRVTTTmAJ677TzLLGU+0bjPO0LkuOLi4/5GtJWs/s= golang.org/x/net v0.0.0-20200822124328-c89045814202/go.mod h1:/O7V0waA8r7cgGh81Ro3o1hOxt32SMVPicZroKQ2sZA= golang.org/x/net v0.0.0-20201021035429-f5854403a974/go.mod h1:sp8m0HH+o8qH0wwXwYZr8TS3Oi6o0r6Gce1SSxlDquU= -golang.org/x/net v0.0.0-20201110031124-69a78807bb2b/go.mod h1:sp8m0HH+o8qH0wwXwYZr8TS3Oi6o0r6Gce1SSxlDquU= golang.org/x/net v0.0.0-20210226172049-e18ecbb05110/go.mod h1:m0MpNAwzfU5UDzcl9v0D8zg8gWTRqZa9RBIspLL5mdg= golang.org/x/net v0.0.0-20210405180319-a5a99cb37ef4/go.mod h1:p54w0d4576C0XHj96bSt6lcn1PtDYWL6XObtHCRCNQM= +golang.org/x/net v0.0.0-20210614182718-04defd469f4e/go.mod h1:9nx3DQGgdP8bBQD5qxJ1jj9UTztislL4KSBs9R2vV5Y= golang.org/x/net v0.0.0-20220722155237-a158d28d115b/go.mod h1:XRhObCWvk6IyKnWLug+ECip1KBveYUHfp+8e9klMJ9c= golang.org/x/net v0.5.0/go.mod h1:DivGGAXEgPSlEBzxGzZI+ZLohi+xUj054jfeKui00ws= -golang.org/x/net v0.23.0 h1:7EYJ93RZ9vYSZAIb2x3lnuvqO5zneoD6IvWjuhfxjTs= -golang.org/x/net v0.23.0/go.mod h1:JKghWKKOSdJwpW2GEx0Ja7fmaKnMsbu+MWVZTokSYmg= +golang.org/x/net v0.28.0 h1:a9JDOJc5GMUJ0+UDqmLT86WiEy7iWyIhz8gz8E4e5hE= +golang.org/x/net v0.28.0/go.mod h1:yqtgsTWOOnlGLG9GFRrK3++bGOUEkNBoHZc8MEDWPNg= golang.org/x/oauth2 v0.0.0-20180821212333-d2e6202438be/go.mod h1:N/0e6XlmueqKjAGxoOufVs8QHGRruUQn6yWY3a++T0U= golang.org/x/oauth2 v0.0.0-20200107190931-bf48bf16ab8d/go.mod h1:gOpvHmFTYa4IltrdGE7lF6nIHvwfUNPOp7c8zoXwtLw= -golang.org/x/oauth2 v0.16.0 h1:aDkGMBSYxElaoP81NpoUoz2oo2R2wHdZpGToUxfyQrQ= -golang.org/x/oauth2 v0.16.0/go.mod h1:hqZ+0LWXsiVoZpeld6jVt06P3adbS2Uu911W1SsJv2o= +golang.org/x/oauth2 v0.21.0 h1:tsimM75w1tF/uws5rbeHzIWxEqElMehnc+iW793zsZs= +golang.org/x/oauth2 v0.21.0/go.mod h1:XYTD2NtWslqkgxebSiOHnXEap4TF09sJSc7H1sXbhtI= golang.org/x/sync v0.0.0-20180314180146-1d60e4601c6f/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= 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= @@ -473,8 +464,8 @@ golang.org/x/sync v0.0.0-20190911185100-cd5d95a43a6e/go.mod h1:RxMgew5VJxzue5/jJ golang.org/x/sync v0.0.0-20201020160332-67f06af15bc9/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= golang.org/x/sync v0.0.0-20210220032951-036812b2e83c/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= golang.org/x/sync v0.0.0-20220722155255-886fb9371eb4/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= -golang.org/x/sync v0.6.0 h1:5BMeUDZ7vkXGfEr1x9B4bRcTH4lpkTkpdh0T/J+qjbQ= -golang.org/x/sync v0.6.0/go.mod h1:Czt+wKu1gCyEFDUtn0jG5QVvpJ6rzVqr5aXyt9drQfk= +golang.org/x/sync v0.8.0 h1:3NFvSEYkUoMifnESzZl15y791HH1qU2xm6eCJU5ZPXQ= +golang.org/x/sync v0.8.0/go.mod h1:Czt+wKu1gCyEFDUtn0jG5QVvpJ6rzVqr5aXyt9drQfk= golang.org/x/sys v0.0.0-20180830151530-49385e6e1522/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY= golang.org/x/sys v0.0.0-20190215142949-d0b11bdaac8a/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY= golang.org/x/sys v0.0.0-20190412213103-97732733099d/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= @@ -486,6 +477,7 @@ golang.org/x/sys v0.0.0-20200930185726-fdedc70b468f/go.mod h1:h1NjWce9XRLGQEsW7w golang.org/x/sys v0.0.0-20201119102817-f84b799fce68/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= golang.org/x/sys v0.0.0-20210119212857-b64e53b001e4/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= golang.org/x/sys v0.0.0-20210330210617-4fbd30eecc44/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= +golang.org/x/sys v0.0.0-20210423082822-04245dca01da/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= golang.org/x/sys v0.0.0-20210510120138-977fb7262007/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= golang.org/x/sys v0.0.0-20210615035016-665e8c7367d1/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= golang.org/x/sys v0.0.0-20210630005230-0f9fa26af87c/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= @@ -496,22 +488,22 @@ golang.org/x/sys v0.0.0-20220722155257-8c9f86f7a55f/go.mod h1:oPkhp1MJrh7nUepCBc golang.org/x/sys v0.0.0-20220811171246-fbc7d0a398ab/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= golang.org/x/sys v0.4.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= golang.org/x/sys v0.6.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= -golang.org/x/sys v0.18.0 h1:DBdB3niSjOA/O0blCZBqDefyWNYveAYMNF1Wum0DYQ4= -golang.org/x/sys v0.18.0/go.mod h1:/VUhepiaJMQUp4+oa/7Zr1D23ma6VTLIYjOOTFZPUcA= +golang.org/x/sys v0.25.0 h1:r+8e+loiHxRqhXVl6ML1nO3l1+oFoWbnlu2Ehimmi34= +golang.org/x/sys v0.25.0/go.mod h1:/VUhepiaJMQUp4+oa/7Zr1D23ma6VTLIYjOOTFZPUcA= golang.org/x/term v0.0.0-20201126162022-7de9c90e9dd1/go.mod h1:bj7SfCRtBDWHUb9snDiAeCFNEtKQo2Wmx5Cou7ajbmo= golang.org/x/term v0.0.0-20210927222741-03fcf44c2211/go.mod h1:jbD1KX2456YbFQfuXm/mYQcufACuNUgVhRMnK/tPxf8= golang.org/x/term v0.4.0/go.mod h1:9P2UbLfCdcvo3p/nzKvsmas4TnlujnuoV9hGgYzW1lQ= -golang.org/x/term v0.18.0 h1:FcHjZXDMxI8mM3nwhX9HlKop4C0YQvCVCdwYl2wOtE8= -golang.org/x/term v0.18.0/go.mod h1:ILwASektA3OnRv7amZ1xhE/KTR+u50pbXfZ03+6Nx58= +golang.org/x/term v0.24.0 h1:Mh5cbb+Zk2hqqXNO7S1iTjEphVL+jb8ZWaqh/g+JWkM= +golang.org/x/term v0.24.0/go.mod h1:lOBK/LVxemqiMij05LGJ0tzNr8xlmwBRJ81PX6wVLH8= golang.org/x/text v0.3.0/go.mod h1:NqM8EUOU14njkJ3fqMW+pc6Ldnwhi/IjpwHt7yyuwOQ= golang.org/x/text v0.3.2/go.mod h1:bEr9sfX3Q8Zfm5fL9x+3itogRgK3+ptLWKqgva+5dAk= golang.org/x/text v0.3.3/go.mod h1:5Zoc/QRtKVWzQhOtBMvqHzDpF6irO9z98xDceosuGiQ= -golang.org/x/text v0.3.5/go.mod h1:5Zoc/QRtKVWzQhOtBMvqHzDpF6irO9z98xDceosuGiQ= +golang.org/x/text v0.3.6/go.mod h1:5Zoc/QRtKVWzQhOtBMvqHzDpF6irO9z98xDceosuGiQ= golang.org/x/text v0.3.7/go.mod h1:u+2+/6zg+i71rQMx5EYifcz6MCKuco9NR6JIITiCfzQ= golang.org/x/text v0.3.8/go.mod h1:E6s5w1FMmriuDzIBO73fBruAKo1PCIq6d2Q6DHfQ8WQ= golang.org/x/text v0.6.0/go.mod h1:mrYo+phRRbMaCq/xk9113O4dZlRixOauAjOtrjsXDZ8= -golang.org/x/text v0.14.0 h1:ScX5w1eTa3QqT8oi6+ziP7dTV1S2+ALU0bI+0zXKWiQ= -golang.org/x/text v0.14.0/go.mod h1:18ZOQIKpY8NJVqYksKHtTdi31H5itFRjB5/qKTNYzSU= +golang.org/x/text v0.17.0 h1:XtiM5bkSOt+ewxlOE/aE/AKEHibwj/6gvWMl9Rsh0Qc= +golang.org/x/text v0.17.0/go.mod h1:BuEKDfySbSR4drPmRPG/7iBdf8hvFMuRexcpahXilzY= golang.org/x/time v0.5.0 h1:o7cqy6amK/52YcAKIPlM3a+Fpj35zvRj2TP+e1xFSfk= golang.org/x/time v0.5.0/go.mod h1:3BpzKBy/shNhVucY/MWOyx10tF3SFh9QdLuxbVysPQM= golang.org/x/tools v0.0.0-20180917221912-90fa682c2a6e/go.mod h1:n7NCudcB/nEzxVGmLbDWY5pfWTLqBcC2KZ6jyYvM4mQ= @@ -525,8 +517,8 @@ golang.org/x/tools v0.0.0-20210106214847-113979e3529a/go.mod h1:emZCQorbCU4vsT4f golang.org/x/tools v0.1.0/go.mod h1:xkSsbof2nBLbhDlRMhhhyNLN/zl3eTqcnHD5viDpcZ0= golang.org/x/tools v0.1.1/go.mod h1:o0xws9oXOQQZyjljx8fwUC0k7L1pTE6eaCbjGeHmOkk= golang.org/x/tools v0.1.12/go.mod h1:hNGJHUnrk76NpqgfD5Aqm5Crs+Hm0VOH/i9J2+nxYbc= -golang.org/x/tools v0.17.0 h1:FvmRgNOcs3kOa+T20R1uhfP9F6HgG2mfxDv1vrx1Htc= -golang.org/x/tools v0.17.0/go.mod h1:xsh6VxdV005rRVaS6SSAf9oiAqljS7UZUacMZ8Bnsps= +golang.org/x/tools v0.21.1-0.20240508182429-e35e4ccd0d2d h1:vU5i/LfpvrRCpgM/VPfJLg5KjxD3E+hfT1SH+d9zLwg= +golang.org/x/tools v0.21.1-0.20240508182429-e35e4ccd0d2d/go.mod h1:aiJjzUbINMkxbQROHiO6hDPo2LHcIPhhQsa9DLh0yGk= 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= @@ -542,13 +534,12 @@ google.golang.org/genproto v0.0.0-20190819201941-24fa4b261c55/go.mod h1:DMBHOl98 google.golang.org/genproto v0.0.0-20200423170343-7949de9c1215/go.mod h1:55QSHmfGQM9UVYDPBsyGGes0y52j32PQ3BqQfXhyH3c= google.golang.org/genproto v0.0.0-20200513103714-09dca8ec2884/go.mod h1:55QSHmfGQM9UVYDPBsyGGes0y52j32PQ3BqQfXhyH3c= google.golang.org/genproto v0.0.0-20200526211855-cb27e3aa2013/go.mod h1:NbSheEEYHJ7i3ixzK3sjbqSGDJWnxyFXZblF3eUsNvo= -google.golang.org/genproto v0.0.0-20211021150943-2b146023228c/go.mod h1:5CzLGKJ67TSI2B9POpiiyGha0AjJvZIUgRMt1dSmuhc= -google.golang.org/genproto v0.0.0-20240325203815-454cdb8f5daa h1:ePqxpG3LVx+feAUOx8YmR5T7rc0rdzK8DyxM8cQ9zq0= -google.golang.org/genproto v0.0.0-20240325203815-454cdb8f5daa/go.mod h1:CnZenrTdRJb7jc+jOm0Rkywq+9wh0QC4U8tyiRbEPPM= -google.golang.org/genproto/googleapis/api v0.0.0-20240325203815-454cdb8f5daa h1:Jt1XW5PaLXF1/ePZrznsh/aAUvI7Adfc3LY1dAKlzRs= -google.golang.org/genproto/googleapis/api v0.0.0-20240325203815-454cdb8f5daa/go.mod h1:K4kfzHtI0kqWA79gecJarFtDn/Mls+GxQcg3Zox91Ac= -google.golang.org/genproto/googleapis/rpc v0.0.0-20240325203815-454cdb8f5daa h1:RBgMaUMP+6soRkik4VoN8ojR2nex2TqZwjSSogic+eo= -google.golang.org/genproto/googleapis/rpc v0.0.0-20240325203815-454cdb8f5daa/go.mod h1:WtryC6hu0hhx87FDGxWCDptyssuo68sk10vYjF+T9fY= +google.golang.org/genproto v0.0.0-20240903143218-8af14fe29dc1 h1:BulPr26Jqjnd4eYDVe+YvyR7Yc2vJGkO5/0UxD0/jZU= +google.golang.org/genproto v0.0.0-20240903143218-8af14fe29dc1/go.mod h1:hL97c3SYopEHblzpxRL4lSs523++l8DYxGM1FQiYmb4= +google.golang.org/genproto/googleapis/api v0.0.0-20240903143218-8af14fe29dc1 h1:hjSy6tcFQZ171igDaN5QHOw2n6vx40juYbC/x67CEhc= +google.golang.org/genproto/googleapis/api v0.0.0-20240903143218-8af14fe29dc1/go.mod h1:qpvKtACPCQhAdu3PyQgV4l3LMXZEtft7y8QcarRsp9I= +google.golang.org/genproto/googleapis/rpc v0.0.0-20240903143218-8af14fe29dc1 h1:pPJltXNxVzT4pK9yD8vR9X75DaWYYmLGMsEvBfFQZzQ= +google.golang.org/genproto/googleapis/rpc v0.0.0-20240903143218-8af14fe29dc1/go.mod h1:UqMtugtsSgubUsoxbuAoiCXvqvErP7Gf0so0mK9tHxU= google.golang.org/grpc v1.19.0/go.mod h1:mqu4LbDTu4XGKhr4mRzUsmM4RtVoemTSY81AxZiDr8c= google.golang.org/grpc v1.23.0/go.mod h1:Y5yQAOtifL1yxbo5wqy6BxZv8vAUGQwXBOALyacEbxg= google.golang.org/grpc v1.25.1/go.mod h1:c3i+UQWmh7LiEpx4sFZnkU36qjEYZ0imhYfXVyQciAY= @@ -556,11 +547,9 @@ google.golang.org/grpc v1.27.0/go.mod h1:qbnxyOmOxrQa7FizSgH+ReBfzJrCY1pSN7KXBS8 google.golang.org/grpc v1.29.1/go.mod h1:itym6AZVZYACWQqET3MqgPpjcuV5QH3BxFS3IjizoKk= google.golang.org/grpc v1.33.1/go.mod h1:fr5YgcSWrqhRRxogOsw7RzIpsmvOZ6IcH4kBYTpR3n0= google.golang.org/grpc v1.36.0/go.mod h1:qjiiYl8FncCW8feJPdyg3v6XW24KsRHe+dy9BAGRRjU= -google.golang.org/grpc v1.40.0/go.mod h1:ogyxbiOoUXAkP+4+xa6PZSE9DZgIHtSpzjDTB9KAK34= -google.golang.org/grpc v1.41.0/go.mod h1:U3l9uK9J0sini8mHphKoXyaqDA/8VyGnDee1zzIUK6k= google.golang.org/grpc v1.47.0/go.mod h1:vN9eftEi1UMyUsIF80+uQXhHjbXYbm0uXoFCACuMGWk= -google.golang.org/grpc v1.62.1 h1:B4n+nfKzOICUXMgyrNd19h/I9oH0L1pizfk1d4zSgTk= -google.golang.org/grpc v1.62.1/go.mod h1:IWTG0VlJLCh1SkC58F7np9ka9mx/WNkjl4PGJaiq+QE= +google.golang.org/grpc v1.66.2 h1:3QdXkuq3Bkh7w+ywLdLvM56cmGvQHUMZpiCzt6Rqaoo= +google.golang.org/grpc v1.66.2/go.mod h1:s3/l6xSSCURdVfAnL+TqCNMyTDAGN6+lZeVxnZR128Y= google.golang.org/protobuf v0.0.0-20200109180630-ec00e32a8dfd/go.mod h1:DFci5gLYBciE7Vtevhsrf46CRTquxDuWsQurQQe4oz8= google.golang.org/protobuf v0.0.0-20200221191635-4d8936d0db64/go.mod h1:kwYJMbMJ01Woi6D6+Kah6886xMZcty6N08ah7+eCXa0= google.golang.org/protobuf v0.0.0-20200228230310-ab0ca4ff8a60/go.mod h1:cfTl7dwQJ+fmap5saPgwCLgHXTUD7jkjRqWcaiX5VyM= @@ -574,8 +563,8 @@ google.golang.org/protobuf v1.26.0-rc.1/go.mod h1:jlhhOSvTdKEhbULTjvd4ARK9grFBp0 google.golang.org/protobuf v1.26.0/go.mod h1:9q0QmTI4eRPtz6boOQmLYwt+qCgq0jsYwAQnmE0givc= google.golang.org/protobuf v1.27.1/go.mod h1:9q0QmTI4eRPtz6boOQmLYwt+qCgq0jsYwAQnmE0givc= google.golang.org/protobuf v1.28.0/go.mod h1:HV8QOd/L58Z+nl8r43ehVNZIU/HEI6OcFqwMG9pJV4I= -google.golang.org/protobuf v1.33.0 h1:uNO2rsAINq/JlFpSdYEKIZ0uKD/R9cpdv0T+yoGwGmI= -google.golang.org/protobuf v1.33.0/go.mod h1:c6P6GXX6sHbq/GpV6MGZEdwhWPcYBgnhAHhKbcUYpos= +google.golang.org/protobuf v1.34.2 h1:6xV6lTsCfpGD21XK49h7MhtcApnLqkfYgPcdHftf6hg= +google.golang.org/protobuf v1.34.2/go.mod h1:qYOHts0dSfpeUzUFpOMr/WGzszTmLH+DiWniOlNbLDw= gopkg.in/alecthomas/kingpin.v2 v2.2.6 h1:jMFz6MfLP0/4fUyZle81rXUoxOBFi19VUFKVDOQfozc= 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= diff --git a/internal/controller/backup/policybindings/zz_controller.go b/internal/controller/backup/policybindings/zz_controller.go new file mode 100755 index 0000000..80f5a53 --- /dev/null +++ b/internal/controller/backup/policybindings/zz_controller.go @@ -0,0 +1,87 @@ +// Code generated by upjet. DO NOT EDIT. + +package policybindings + +import ( + "time" + + "github.com/crossplane/crossplane-runtime/pkg/connection" + "github.com/crossplane/crossplane-runtime/pkg/event" + "github.com/crossplane/crossplane-runtime/pkg/ratelimiter" + "github.com/crossplane/crossplane-runtime/pkg/reconciler/managed" + xpresource "github.com/crossplane/crossplane-runtime/pkg/resource" + "github.com/crossplane/crossplane-runtime/pkg/statemetrics" + tjcontroller "github.com/crossplane/upjet/pkg/controller" + "github.com/crossplane/upjet/pkg/controller/handler" + "github.com/crossplane/upjet/pkg/metrics" + "github.com/pkg/errors" + ctrl "sigs.k8s.io/controller-runtime" + + v1alpha1 "github.com/tagesjump/provider-upjet-yc/apis/backup/v1alpha1" + features "github.com/tagesjump/provider-upjet-yc/internal/features" +) + +// Setup adds a controller that reconciles PolicyBindings managed resources. +func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { + name := managed.ControllerName(v1alpha1.PolicyBindings_GroupVersionKind.String()) + var initializers managed.InitializerChain + cps := []managed.ConnectionPublisher{managed.NewAPISecretPublisher(mgr.GetClient(), mgr.GetScheme())} + if o.SecretStoreConfigGVK != nil { + cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) + } + eventHandler := handler.NewEventHandler(handler.WithLogger(o.Logger.WithValues("gvk", v1alpha1.PolicyBindings_GroupVersionKind))) + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1alpha1.PolicyBindings_GroupVersionKind), tjcontroller.WithEventHandler(eventHandler), tjcontroller.WithStatusUpdates(false)) + opts := []managed.ReconcilerOption{ + managed.WithExternalConnecter( + tjcontroller.NewTerraformPluginSDKAsyncConnector(mgr.GetClient(), o.OperationTrackerStore, o.SetupFn, o.Provider.Resources["yandex_backup_policy_bindings"], + tjcontroller.WithTerraformPluginSDKAsyncLogger(o.Logger), + tjcontroller.WithTerraformPluginSDKAsyncConnectorEventHandler(eventHandler), + tjcontroller.WithTerraformPluginSDKAsyncCallbackProvider(ac), + tjcontroller.WithTerraformPluginSDKAsyncMetricRecorder(metrics.NewMetricRecorder(v1alpha1.PolicyBindings_GroupVersionKind, mgr, o.PollInterval)), + tjcontroller.WithTerraformPluginSDKAsyncManagementPolicies(o.Features.Enabled(features.EnableBetaManagementPolicies)))), + managed.WithLogger(o.Logger.WithValues("controller", name)), + managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), + managed.WithFinalizer(tjcontroller.NewOperationTrackerFinalizer(o.OperationTrackerStore, xpresource.NewAPIFinalizer(mgr.GetClient(), managed.FinalizerName))), + managed.WithTimeout(3 * time.Minute), + managed.WithInitializers(initializers), + managed.WithConnectionPublishers(cps...), + managed.WithPollInterval(o.PollInterval), + } + if o.PollJitter != 0 { + opts = append(opts, managed.WithPollJitterHook(o.PollJitter)) + } + if o.Features.Enabled(features.EnableBetaManagementPolicies) { + opts = append(opts, managed.WithManagementPolicies()) + } + if o.MetricOptions != nil { + opts = append(opts, managed.WithMetricRecorder(o.MetricOptions.MRMetrics)) + } + + // register webhooks for the kind v1alpha1.PolicyBindings + // if they're enabled. + if o.StartWebhooks { + if err := ctrl.NewWebhookManagedBy(mgr). + For(&v1alpha1.PolicyBindings{}). + Complete(); err != nil { + return errors.Wrap(err, "cannot register webhook for the kind v1alpha1.PolicyBindings") + } + } + + if o.MetricOptions != nil && o.MetricOptions.MRStateMetrics != nil { + stateMetricsRecorder := statemetrics.NewMRStateRecorder( + mgr.GetClient(), o.Logger, o.MetricOptions.MRStateMetrics, &v1alpha1.PolicyBindingsList{}, o.MetricOptions.PollStateMetricInterval, + ) + if err := mgr.Add(stateMetricsRecorder); err != nil { + return errors.Wrap(err, "cannot register MR state metrics recorder for kind v1alpha1.PolicyBindingsList") + } + } + + r := managed.NewReconciler(mgr, xpresource.ManagedKind(v1alpha1.PolicyBindings_GroupVersionKind), opts...) + + return ctrl.NewControllerManagedBy(mgr). + Named(name). + WithOptions(o.ForControllerRuntime()). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1alpha1.PolicyBindings{}, eventHandler). + Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) +} diff --git a/internal/controller/mdb/opensearchcluster/zz_controller.go b/internal/controller/vpc/privateendpoint/zz_controller.go similarity index 78% rename from internal/controller/mdb/opensearchcluster/zz_controller.go rename to internal/controller/vpc/privateendpoint/zz_controller.go index 7a2846c..02e299a 100755 --- a/internal/controller/mdb/opensearchcluster/zz_controller.go +++ b/internal/controller/vpc/privateendpoint/zz_controller.go @@ -1,6 +1,6 @@ // Code generated by upjet. DO NOT EDIT. -package opensearchcluster +package privateendpoint import ( "time" @@ -17,27 +17,27 @@ import ( "github.com/pkg/errors" ctrl "sigs.k8s.io/controller-runtime" - v1alpha1 "github.com/tagesjump/provider-upjet-yc/apis/mdb/v1alpha1" + v1alpha1 "github.com/tagesjump/provider-upjet-yc/apis/vpc/v1alpha1" features "github.com/tagesjump/provider-upjet-yc/internal/features" ) -// Setup adds a controller that reconciles OpensearchCluster managed resources. +// Setup adds a controller that reconciles PrivateEndpoint managed resources. func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { - name := managed.ControllerName(v1alpha1.OpensearchCluster_GroupVersionKind.String()) + name := managed.ControllerName(v1alpha1.PrivateEndpoint_GroupVersionKind.String()) var initializers managed.InitializerChain cps := []managed.ConnectionPublisher{managed.NewAPISecretPublisher(mgr.GetClient(), mgr.GetScheme())} if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } - eventHandler := handler.NewEventHandler(handler.WithLogger(o.Logger.WithValues("gvk", v1alpha1.OpensearchCluster_GroupVersionKind))) - ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1alpha1.OpensearchCluster_GroupVersionKind), tjcontroller.WithEventHandler(eventHandler), tjcontroller.WithStatusUpdates(false)) + eventHandler := handler.NewEventHandler(handler.WithLogger(o.Logger.WithValues("gvk", v1alpha1.PrivateEndpoint_GroupVersionKind))) + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1alpha1.PrivateEndpoint_GroupVersionKind), tjcontroller.WithEventHandler(eventHandler), tjcontroller.WithStatusUpdates(false)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter( - tjcontroller.NewTerraformPluginSDKAsyncConnector(mgr.GetClient(), o.OperationTrackerStore, o.SetupFn, o.Provider.Resources["yandex_mdb_opensearch_cluster"], + tjcontroller.NewTerraformPluginSDKAsyncConnector(mgr.GetClient(), o.OperationTrackerStore, o.SetupFn, o.Provider.Resources["yandex_vpc_private_endpoint"], tjcontroller.WithTerraformPluginSDKAsyncLogger(o.Logger), tjcontroller.WithTerraformPluginSDKAsyncConnectorEventHandler(eventHandler), tjcontroller.WithTerraformPluginSDKAsyncCallbackProvider(ac), - tjcontroller.WithTerraformPluginSDKAsyncMetricRecorder(metrics.NewMetricRecorder(v1alpha1.OpensearchCluster_GroupVersionKind, mgr, o.PollInterval)), + tjcontroller.WithTerraformPluginSDKAsyncMetricRecorder(metrics.NewMetricRecorder(v1alpha1.PrivateEndpoint_GroupVersionKind, mgr, o.PollInterval)), tjcontroller.WithTerraformPluginSDKAsyncManagementPolicies(o.Features.Enabled(features.EnableBetaManagementPolicies)))), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -57,31 +57,31 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { opts = append(opts, managed.WithMetricRecorder(o.MetricOptions.MRMetrics)) } - // register webhooks for the kind v1alpha1.OpensearchCluster + // register webhooks for the kind v1alpha1.PrivateEndpoint // if they're enabled. if o.StartWebhooks { if err := ctrl.NewWebhookManagedBy(mgr). - For(&v1alpha1.OpensearchCluster{}). + For(&v1alpha1.PrivateEndpoint{}). Complete(); err != nil { - return errors.Wrap(err, "cannot register webhook for the kind v1alpha1.OpensearchCluster") + return errors.Wrap(err, "cannot register webhook for the kind v1alpha1.PrivateEndpoint") } } if o.MetricOptions != nil && o.MetricOptions.MRStateMetrics != nil { stateMetricsRecorder := statemetrics.NewMRStateRecorder( - mgr.GetClient(), o.Logger, o.MetricOptions.MRStateMetrics, &v1alpha1.OpensearchClusterList{}, o.MetricOptions.PollStateMetricInterval, + mgr.GetClient(), o.Logger, o.MetricOptions.MRStateMetrics, &v1alpha1.PrivateEndpointList{}, o.MetricOptions.PollStateMetricInterval, ) if err := mgr.Add(stateMetricsRecorder); err != nil { - return errors.Wrap(err, "cannot register MR state metrics recorder for kind v1alpha1.OpensearchClusterList") + return errors.Wrap(err, "cannot register MR state metrics recorder for kind v1alpha1.PrivateEndpointList") } } - r := managed.NewReconciler(mgr, xpresource.ManagedKind(v1alpha1.OpensearchCluster_GroupVersionKind), opts...) + r := managed.NewReconciler(mgr, xpresource.ManagedKind(v1alpha1.PrivateEndpoint_GroupVersionKind), opts...) return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). WithEventFilter(xpresource.DesiredStateChanged()). - Watches(&v1alpha1.OpensearchCluster{}, eventHandler). + Watches(&v1alpha1.PrivateEndpoint{}, eventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/zz_setup.go b/internal/controller/zz_setup.go index 37b282b..b16d967 100755 --- a/internal/controller/zz_setup.go +++ b/internal/controller/zz_setup.go @@ -13,6 +13,7 @@ import ( gateway "github.com/tagesjump/provider-upjet-yc/internal/controller/api/gateway" trailstrail "github.com/tagesjump/provider-upjet-yc/internal/controller/audit/trailstrail" policy "github.com/tagesjump/provider-upjet-yc/internal/controller/backup/policy" + policybindings "github.com/tagesjump/provider-upjet-yc/internal/controller/backup/policybindings" cloudbinding "github.com/tagesjump/provider-upjet-yc/internal/controller/billing/cloudbinding" origingroup "github.com/tagesjump/provider-upjet-yc/internal/controller/cdn/origingroup" resource "github.com/tagesjump/provider-upjet-yc/internal/controller/cdn/resource" @@ -90,7 +91,6 @@ import ( mysqlcluster "github.com/tagesjump/provider-upjet-yc/internal/controller/mdb/mysqlcluster" mysqldatabase "github.com/tagesjump/provider-upjet-yc/internal/controller/mdb/mysqldatabase" mysqluser "github.com/tagesjump/provider-upjet-yc/internal/controller/mdb/mysqluser" - opensearchcluster "github.com/tagesjump/provider-upjet-yc/internal/controller/mdb/opensearchcluster" postgresqlcluster "github.com/tagesjump/provider-upjet-yc/internal/controller/mdb/postgresqlcluster" postgresqldatabase "github.com/tagesjump/provider-upjet-yc/internal/controller/mdb/postgresqldatabase" postgresqluser "github.com/tagesjump/provider-upjet-yc/internal/controller/mdb/postgresqluser" @@ -125,6 +125,7 @@ import ( defaultsecuritygroup "github.com/tagesjump/provider-upjet-yc/internal/controller/vpc/defaultsecuritygroup" gatewayvpc "github.com/tagesjump/provider-upjet-yc/internal/controller/vpc/gateway" network "github.com/tagesjump/provider-upjet-yc/internal/controller/vpc/network" + privateendpoint "github.com/tagesjump/provider-upjet-yc/internal/controller/vpc/privateendpoint" routetable "github.com/tagesjump/provider-upjet-yc/internal/controller/vpc/routetable" securitygroup "github.com/tagesjump/provider-upjet-yc/internal/controller/vpc/securitygroup" securitygrouprule "github.com/tagesjump/provider-upjet-yc/internal/controller/vpc/securitygrouprule" @@ -151,6 +152,7 @@ func Setup(mgr ctrl.Manager, o controller.Options) error { gateway.Setup, trailstrail.Setup, policy.Setup, + policybindings.Setup, cloudbinding.Setup, origingroup.Setup, resource.Setup, @@ -228,7 +230,6 @@ func Setup(mgr ctrl.Manager, o controller.Options) error { mysqlcluster.Setup, mysqldatabase.Setup, mysqluser.Setup, - opensearchcluster.Setup, postgresqlcluster.Setup, postgresqldatabase.Setup, postgresqluser.Setup, @@ -263,6 +264,7 @@ func Setup(mgr ctrl.Manager, o controller.Options) error { defaultsecuritygroup.Setup, gatewayvpc.Setup, network.Setup, + privateendpoint.Setup, routetable.Setup, securitygroup.Setup, securitygrouprule.Setup, diff --git a/package/crds/alb.yandex-cloud.upjet.crossplane.io_backendgroups.yaml b/package/crds/alb.yandex-cloud.upjet.crossplane.io_backendgroups.yaml index 8e2ee04..2e3ead5 100644 --- a/package/crds/alb.yandex-cloud.upjet.crossplane.io_backendgroups.yaml +++ b/package/crds/alb.yandex-cloud.upjet.crossplane.io_backendgroups.yaml @@ -232,7 +232,7 @@ spec: type: string send: description: Message sent to targets during - TCP data transfer. If not specified, no data + TCP data transfer. If not specified, no data is sent to the target. type: string type: object @@ -268,8 +268,8 @@ spec: backend is lower than panic_threshold, traffic will be routed to all backends no matter what the health status is. This helps to avoid healthy backends - overloading when everything is bad. Zero means - no panic threshold. + overloading when everything is bad. Zero means no + panic threshold. type: number strictLocality: description: If set, will route requests only to the @@ -472,7 +472,7 @@ spec: type: string send: description: Message sent to targets during - TCP data transfer. If not specified, no data + TCP data transfer. If not specified, no data is sent to the target. type: string type: object @@ -512,8 +512,8 @@ spec: backend is lower than panic_threshold, traffic will be routed to all backends no matter what the health status is. This helps to avoid healthy backends - overloading when everything is bad. Zero means - no panic threshold. + overloading when everything is bad. Zero means no + panic threshold. type: number strictLocality: description: If set, will route requests only to the @@ -780,7 +780,7 @@ spec: type: string send: description: Message sent to targets during - TCP data transfer. If not specified, no data + TCP data transfer. If not specified, no data is sent to the target. type: string type: object @@ -816,8 +816,8 @@ spec: backend is lower than panic_threshold, traffic will be routed to all backends no matter what the health status is. This helps to avoid healthy backends - overloading when everything is bad. Zero means - no panic threshold. + overloading when everything is bad. Zero means no + panic threshold. type: number strictLocality: description: If set, will route requests only to the @@ -1117,7 +1117,7 @@ spec: type: string send: description: Message sent to targets during - TCP data transfer. If not specified, no data + TCP data transfer. If not specified, no data is sent to the target. type: string type: object @@ -1153,8 +1153,8 @@ spec: backend is lower than panic_threshold, traffic will be routed to all backends no matter what the health status is. This helps to avoid healthy backends - overloading when everything is bad. Zero means - no panic threshold. + overloading when everything is bad. Zero means no + panic threshold. type: number strictLocality: description: If set, will route requests only to the @@ -1357,7 +1357,7 @@ spec: type: string send: description: Message sent to targets during - TCP data transfer. If not specified, no data + TCP data transfer. If not specified, no data is sent to the target. type: string type: object @@ -1397,8 +1397,8 @@ spec: backend is lower than panic_threshold, traffic will be routed to all backends no matter what the health status is. This helps to avoid healthy backends - overloading when everything is bad. Zero means - no panic threshold. + overloading when everything is bad. Zero means no + panic threshold. type: number strictLocality: description: If set, will route requests only to the @@ -1665,7 +1665,7 @@ spec: type: string send: description: Message sent to targets during - TCP data transfer. If not specified, no data + TCP data transfer. If not specified, no data is sent to the target. type: string type: object @@ -1701,8 +1701,8 @@ spec: backend is lower than panic_threshold, traffic will be routed to all backends no matter what the health status is. This helps to avoid healthy backends - overloading when everything is bad. Zero means - no panic threshold. + overloading when everything is bad. Zero means no + panic threshold. type: number strictLocality: description: If set, will route requests only to the @@ -2088,7 +2088,7 @@ spec: type: string send: description: Message sent to targets during - TCP data transfer. If not specified, no data + TCP data transfer. If not specified, no data is sent to the target. type: string type: object @@ -2124,8 +2124,8 @@ spec: backend is lower than panic_threshold, traffic will be routed to all backends no matter what the health status is. This helps to avoid healthy backends - overloading when everything is bad. Zero means - no panic threshold. + overloading when everything is bad. Zero means no + panic threshold. type: number strictLocality: description: If set, will route requests only to the @@ -2250,7 +2250,7 @@ spec: type: string send: description: Message sent to targets during - TCP data transfer. If not specified, no data + TCP data transfer. If not specified, no data is sent to the target. type: string type: object @@ -2290,8 +2290,8 @@ spec: backend is lower than panic_threshold, traffic will be routed to all backends no matter what the health status is. This helps to avoid healthy backends - overloading when everything is bad. Zero means - no panic threshold. + overloading when everything is bad. Zero means no + panic threshold. type: number strictLocality: description: If set, will route requests only to the @@ -2483,7 +2483,7 @@ spec: type: string send: description: Message sent to targets during - TCP data transfer. If not specified, no data + TCP data transfer. If not specified, no data is sent to the target. type: string type: object @@ -2519,8 +2519,8 @@ spec: backend is lower than panic_threshold, traffic will be routed to all backends no matter what the health status is. This helps to avoid healthy backends - overloading when everything is bad. Zero means - no panic threshold. + overloading when everything is bad. Zero means no + panic threshold. type: number strictLocality: description: If set, will route requests only to the diff --git a/package/crds/alb.yandex-cloud.upjet.crossplane.io_httprouters.yaml b/package/crds/alb.yandex-cloud.upjet.crossplane.io_httprouters.yaml index 90423bc..61055ef 100644 --- a/package/crds/alb.yandex-cloud.upjet.crossplane.io_httprouters.yaml +++ b/package/crds/alb.yandex-cloud.upjet.crossplane.io_httprouters.yaml @@ -74,13 +74,11 @@ spec: forProvider: properties: description: - description: |- - An optional description of the HTTP Router. Provide this property when - you create the resource. + description: An optional description of the HTTP Router. Provide + this property when you create the resource. type: string folderId: - description: |- - The ID of the folder to which the resource belongs. + description: The ID of the folder to which the resource belongs. If omitted, the provider folder is used. type: string folderIdRef: @@ -235,13 +233,11 @@ spec: autoscaler. properties: description: - description: |- - An optional description of the HTTP Router. Provide this property when - you create the resource. + description: An optional description of the HTTP Router. Provide + this property when you create the resource. type: string folderId: - description: |- - The ID of the folder to which the resource belongs. + description: The ID of the folder to which the resource belongs. If omitted, the provider folder is used. type: string folderIdRef: @@ -558,13 +554,11 @@ spec: description: The HTTP Router creation timestamp. type: string description: - description: |- - An optional description of the HTTP Router. Provide this property when - you create the resource. + description: An optional description of the HTTP Router. Provide + this property when you create the resource. type: string folderId: - description: |- - The ID of the folder to which the resource belongs. + description: The ID of the folder to which the resource belongs. If omitted, the provider folder is used. type: string id: diff --git a/package/crds/alb.yandex-cloud.upjet.crossplane.io_loadbalancers.yaml b/package/crds/alb.yandex-cloud.upjet.crossplane.io_loadbalancers.yaml index 976c1c9..7cb37e2 100644 --- a/package/crds/alb.yandex-cloud.upjet.crossplane.io_loadbalancers.yaml +++ b/package/crds/alb.yandex-cloud.upjet.crossplane.io_loadbalancers.yaml @@ -560,9 +560,11 @@ spec: items: properties: certificateIds: - description: |- - Certificate IDs in the Certificate Manager. Multiple TLS certificates can be associated - with the same context to allow both RSA and ECDSA certificates. Only the first certificate of each type will be used. + description: Certificate IDs in the Certificate + Manager. Multiple TLS certificates can be + associated with the same context to allow + both RSA and ECDSA certificates. Only the + first certificate of each type will be used. items: type: string type: array @@ -622,9 +624,12 @@ spec: items: properties: certificateIds: - description: |- - Certificate IDs in the Certificate Manager. Multiple TLS certificates can be associated - with the same context to allow both RSA and ECDSA certificates. Only the first certificate of each type will be used. + description: Certificate IDs in the Certificate + Manager. Multiple TLS certificates can + be associated with the same context + to allow both RSA and ECDSA certificates. + Only the first certificate of each type + will be used. items: type: string type: array @@ -1400,9 +1405,11 @@ spec: items: properties: certificateIds: - description: |- - Certificate IDs in the Certificate Manager. Multiple TLS certificates can be associated - with the same context to allow both RSA and ECDSA certificates. Only the first certificate of each type will be used. + description: Certificate IDs in the Certificate + Manager. Multiple TLS certificates can be + associated with the same context to allow + both RSA and ECDSA certificates. Only the + first certificate of each type will be used. items: type: string type: array @@ -1462,9 +1469,12 @@ spec: items: properties: certificateIds: - description: |- - Certificate IDs in the Certificate Manager. Multiple TLS certificates can be associated - with the same context to allow both RSA and ECDSA certificates. Only the first certificate of each type will be used. + description: Certificate IDs in the Certificate + Manager. Multiple TLS certificates can + be associated with the same context + to allow both RSA and ECDSA certificates. + Only the first certificate of each type + will be used. items: type: string type: array @@ -2105,9 +2115,11 @@ spec: items: properties: certificateIds: - description: |- - Certificate IDs in the Certificate Manager. Multiple TLS certificates can be associated - with the same context to allow both RSA and ECDSA certificates. Only the first certificate of each type will be used. + description: Certificate IDs in the Certificate + Manager. Multiple TLS certificates can be + associated with the same context to allow + both RSA and ECDSA certificates. Only the + first certificate of each type will be used. items: type: string type: array @@ -2167,9 +2179,12 @@ spec: items: properties: certificateIds: - description: |- - Certificate IDs in the Certificate Manager. Multiple TLS certificates can be associated - with the same context to allow both RSA and ECDSA certificates. Only the first certificate of each type will be used. + description: Certificate IDs in the Certificate + Manager. Multiple TLS certificates can + be associated with the same context + to allow both RSA and ECDSA certificates. + Only the first certificate of each type + will be used. items: type: string type: array diff --git a/package/crds/alb.yandex-cloud.upjet.crossplane.io_targetgroups.yaml b/package/crds/alb.yandex-cloud.upjet.crossplane.io_targetgroups.yaml index 4c69578..584eab4 100644 --- a/package/crds/alb.yandex-cloud.upjet.crossplane.io_targetgroups.yaml +++ b/package/crds/alb.yandex-cloud.upjet.crossplane.io_targetgroups.yaml @@ -75,13 +75,11 @@ spec: forProvider: properties: description: - description: |- - An optional description of the target group. Provide this property when - you create the resource. + description: An optional description of the target group. Provide + this property when you create the resource. type: string folderId: - description: |- - The ID of the folder to which the resource belongs. + description: The ID of the folder to which the resource belongs. If omitted, the provider folder is used. type: string folderIdRef: @@ -181,9 +179,9 @@ spec: privateIpv4Address: type: boolean subnetId: - description: |- - ID of the subnet that targets are connected to. - All targets in the target group must be connected to the same subnet within a single availability zone. + description: ID of the subnet that targets are connected + to. All targets in the target group must be connected + to the same subnet within a single availability zone. type: string subnetIdRef: description: Reference to a Subnet in vpc to populate subnetId. @@ -276,13 +274,11 @@ spec: autoscaler. properties: description: - description: |- - An optional description of the target group. Provide this property when - you create the resource. + description: An optional description of the target group. Provide + this property when you create the resource. type: string folderId: - description: |- - The ID of the folder to which the resource belongs. + description: The ID of the folder to which the resource belongs. If omitted, the provider folder is used. type: string folderIdRef: @@ -382,9 +378,9 @@ spec: privateIpv4Address: type: boolean subnetId: - description: |- - ID of the subnet that targets are connected to. - All targets in the target group must be connected to the same subnet within a single availability zone. + description: ID of the subnet that targets are connected + to. All targets in the target group must be connected + to the same subnet within a single availability zone. type: string subnetIdRef: description: Reference to a Subnet in vpc to populate subnetId. @@ -639,13 +635,11 @@ spec: description: The target group creation timestamp. type: string description: - description: |- - An optional description of the target group. Provide this property when - you create the resource. + description: An optional description of the target group. Provide + this property when you create the resource. type: string folderId: - description: |- - The ID of the folder to which the resource belongs. + description: The ID of the folder to which the resource belongs. If omitted, the provider folder is used. type: string id: @@ -672,9 +666,9 @@ spec: privateIpv4Address: type: boolean subnetId: - description: |- - ID of the subnet that targets are connected to. - All targets in the target group must be connected to the same subnet within a single availability zone. + description: ID of the subnet that targets are connected + to. All targets in the target group must be connected + to the same subnet within a single availability zone. type: string type: object type: array diff --git a/package/crds/alb.yandex-cloud.upjet.crossplane.io_virtualhosts.yaml b/package/crds/alb.yandex-cloud.upjet.crossplane.io_virtualhosts.yaml index 59e09f3..406ade2 100644 --- a/package/crds/alb.yandex-cloud.upjet.crossplane.io_virtualhosts.yaml +++ b/package/crds/alb.yandex-cloud.upjet.crossplane.io_virtualhosts.yaml @@ -74,9 +74,10 @@ spec: forProvider: properties: authority: - description: |- - A list of domains (host/authority header) that will be matched to this virtual host. Wildcard - hosts are supported in the form of '.foo.com' or '-bar.foo.com'. If not specified, all domains will be matched. + description: A list of domains (host/authority header) that will + be matched to this virtual host. Wildcard hosts are supported + in the form of '.foo.com' or '-bar.foo.com'. If not specified, + all domains will be matched. items: type: string type: array @@ -160,8 +161,7 @@ spec: type: object type: object modifyRequestHeaders: - description: |- - Apply the following modifications to the request + description: Apply the following modifications to the request headers. The structure is documented below. items: properties: @@ -175,15 +175,13 @@ spec: description: If set, remove the header. type: boolean replace: - description: |- - New value for a header. Header values support the following - formatters. + description: New value for a header. Header values support + the following formatters. type: string type: object type: array modifyResponseHeaders: - description: |- - Apply the following modifications to the response + description: Apply the following modifications to the response headers. The structure is documented below. items: properties: @@ -197,9 +195,8 @@ spec: description: If set, remove the header. type: boolean replace: - description: |- - New value for a header. Header values support the following - formatters. + description: New value for a header. Header values support + the following formatters. type: string type: object type: array @@ -208,9 +205,10 @@ spec: when the virtual host is created. type: string route: - description: |- - A Route resource. Routes are matched in-order. Be careful when adding them to the end. For instance, having - http '/' match first makes all other routes unused. The structure is documented below. + description: A Route resource. Routes are matched in-order. Be + careful when adding them to the end. For instance, having http + '/' match first makes all other routes unused. The structure + is documented below. items: properties: grpcRoute: @@ -333,16 +331,19 @@ spec: description: Host rewrite specifier. type: string idleTimeout: - description: |- - Specifies the idle timeout (time without any data transfer for the active request) for the - route. It is useful for streaming scenarios (i.e. long-polling, server-sent events) - one should set idle_timeout to - something meaningful and timeout to the maximum time the stream is allowed to be alive. If not specified, there is no - per-route idle timeout. + description: Specifies the idle timeout (time + without any data transfer for the active request) + for the route. It is useful for streaming + scenarios (i.e. long-polling, server-sent + events) - one should set idle_timeout to something + meaningful and timeout to the maximum time + the stream is allowed to be alive. If not + specified, there is no per-route idle timeout. type: string maxTimeout: - description: |- - Lower timeout may be specified by the client (using grpc-timeout header). If not set, default is - 60 seconds. + description: Lower timeout may be specified + by the client (using grpc-timeout header). + If not set, default is 60 seconds. type: string type: object type: array @@ -352,9 +353,10 @@ spec: items: properties: status: - description: |- - The status of the response. Supported values are: ok, invalid_argumet, not_found, - permission_denied, unauthenticated, unimplemented, internal, unavailable. + description: 'The status of the response. Supported + values are: ok, invalid_argumet, not_found, + permission_denied, unauthenticated, unimplemented, + internal, unavailable.' type: string type: object type: array @@ -374,9 +376,10 @@ spec: description: Response body text. type: string status: - description: |- - The status of the response. Supported values are: ok, invalid_argumet, not_found, - permission_denied, unauthenticated, unimplemented, internal, unavailable. + description: 'The status of the response. Supported + values are: ok, invalid_argumet, not_found, + permission_denied, unauthenticated, unimplemented, + internal, unavailable.' type: number type: object type: array @@ -501,24 +504,27 @@ spec: description: Host rewrite specifier. type: string idleTimeout: - description: |- - Specifies the idle timeout (time without any data transfer for the active request) for the - route. It is useful for streaming scenarios (i.e. long-polling, server-sent events) - one should set idle_timeout to - something meaningful and timeout to the maximum time the stream is allowed to be alive. If not specified, there is no - per-route idle timeout. + description: Specifies the idle timeout (time + without any data transfer for the active request) + for the route. It is useful for streaming + scenarios (i.e. long-polling, server-sent + events) - one should set idle_timeout to something + meaningful and timeout to the maximum time + the stream is allowed to be alive. If not + specified, there is no per-route idle timeout. type: string prefixRewrite: description: If not empty, matched path prefix will be replaced by this value. type: string timeout: - description: |- - Specifies the request timeout (overall time request processing is allowed to take) for the - route. If not set, default is 60 seconds. + description: Specifies the request timeout (overall + time request processing is allowed to take) + for the route. If not set, default is 60 seconds. type: string upgradeTypes: - description: |- - List of upgrade types. Only specified upgrade types will be allowed. For example, + description: List of upgrade types. Only specified + upgrade types will be allowed. For example, "websocket". items: type: string @@ -543,19 +549,21 @@ spec: description: Replaces port. type: number replacePrefix: - description: |- - Replace only matched prefix. Example: match:{ prefix_match: "/some" } - redirect: { replace_prefix: "/other" } will redirect "/something" to "/otherthing". + description: 'Replace only matched prefix. Example: + match:{ prefix_match: "/some" } redirect: + { replace_prefix: "/other" } will redirect + "/something" to "/otherthing".' type: string replaceScheme: - description: |- - Replaces scheme. If the original scheme is http or https, will also remove the - 80 or 443 port, if present. + description: Replaces scheme. If the original + scheme is http or https, will also remove + the 80 or 443 port, if present. type: string responseCode: - description: |- - The HTTP status code to use in the redirect response. Supported values are: - moved_permanently, found, see_other, temporary_redirect, permanent_redirect. + description: 'The HTTP status code to use in + the redirect response. Supported values are: + moved_permanently, found, see_other, temporary_redirect, + permanent_redirect.' type: string type: object type: array @@ -689,9 +697,10 @@ spec: autoscaler. properties: authority: - description: |- - A list of domains (host/authority header) that will be matched to this virtual host. Wildcard - hosts are supported in the form of '.foo.com' or '-bar.foo.com'. If not specified, all domains will be matched. + description: A list of domains (host/authority header) that will + be matched to this virtual host. Wildcard hosts are supported + in the form of '.foo.com' or '-bar.foo.com'. If not specified, + all domains will be matched. items: type: string type: array @@ -775,8 +784,7 @@ spec: type: object type: object modifyRequestHeaders: - description: |- - Apply the following modifications to the request + description: Apply the following modifications to the request headers. The structure is documented below. items: properties: @@ -790,15 +798,13 @@ spec: description: If set, remove the header. type: boolean replace: - description: |- - New value for a header. Header values support the following - formatters. + description: New value for a header. Header values support + the following formatters. type: string type: object type: array modifyResponseHeaders: - description: |- - Apply the following modifications to the response + description: Apply the following modifications to the response headers. The structure is documented below. items: properties: @@ -812,9 +818,8 @@ spec: description: If set, remove the header. type: boolean replace: - description: |- - New value for a header. Header values support the following - formatters. + description: New value for a header. Header values support + the following formatters. type: string type: object type: array @@ -823,9 +828,10 @@ spec: when the virtual host is created. type: string route: - description: |- - A Route resource. Routes are matched in-order. Be careful when adding them to the end. For instance, having - http '/' match first makes all other routes unused. The structure is documented below. + description: A Route resource. Routes are matched in-order. Be + careful when adding them to the end. For instance, having http + '/' match first makes all other routes unused. The structure + is documented below. items: properties: grpcRoute: @@ -948,16 +954,19 @@ spec: description: Host rewrite specifier. type: string idleTimeout: - description: |- - Specifies the idle timeout (time without any data transfer for the active request) for the - route. It is useful for streaming scenarios (i.e. long-polling, server-sent events) - one should set idle_timeout to - something meaningful and timeout to the maximum time the stream is allowed to be alive. If not specified, there is no - per-route idle timeout. + description: Specifies the idle timeout (time + without any data transfer for the active request) + for the route. It is useful for streaming + scenarios (i.e. long-polling, server-sent + events) - one should set idle_timeout to something + meaningful and timeout to the maximum time + the stream is allowed to be alive. If not + specified, there is no per-route idle timeout. type: string maxTimeout: - description: |- - Lower timeout may be specified by the client (using grpc-timeout header). If not set, default is - 60 seconds. + description: Lower timeout may be specified + by the client (using grpc-timeout header). + If not set, default is 60 seconds. type: string type: object type: array @@ -967,9 +976,10 @@ spec: items: properties: status: - description: |- - The status of the response. Supported values are: ok, invalid_argumet, not_found, - permission_denied, unauthenticated, unimplemented, internal, unavailable. + description: 'The status of the response. Supported + values are: ok, invalid_argumet, not_found, + permission_denied, unauthenticated, unimplemented, + internal, unavailable.' type: string type: object type: array @@ -989,9 +999,10 @@ spec: description: Response body text. type: string status: - description: |- - The status of the response. Supported values are: ok, invalid_argumet, not_found, - permission_denied, unauthenticated, unimplemented, internal, unavailable. + description: 'The status of the response. Supported + values are: ok, invalid_argumet, not_found, + permission_denied, unauthenticated, unimplemented, + internal, unavailable.' type: number type: object type: array @@ -1116,24 +1127,27 @@ spec: description: Host rewrite specifier. type: string idleTimeout: - description: |- - Specifies the idle timeout (time without any data transfer for the active request) for the - route. It is useful for streaming scenarios (i.e. long-polling, server-sent events) - one should set idle_timeout to - something meaningful and timeout to the maximum time the stream is allowed to be alive. If not specified, there is no - per-route idle timeout. + description: Specifies the idle timeout (time + without any data transfer for the active request) + for the route. It is useful for streaming + scenarios (i.e. long-polling, server-sent + events) - one should set idle_timeout to something + meaningful and timeout to the maximum time + the stream is allowed to be alive. If not + specified, there is no per-route idle timeout. type: string prefixRewrite: description: If not empty, matched path prefix will be replaced by this value. type: string timeout: - description: |- - Specifies the request timeout (overall time request processing is allowed to take) for the - route. If not set, default is 60 seconds. + description: Specifies the request timeout (overall + time request processing is allowed to take) + for the route. If not set, default is 60 seconds. type: string upgradeTypes: - description: |- - List of upgrade types. Only specified upgrade types will be allowed. For example, + description: List of upgrade types. Only specified + upgrade types will be allowed. For example, "websocket". items: type: string @@ -1158,19 +1172,21 @@ spec: description: Replaces port. type: number replacePrefix: - description: |- - Replace only matched prefix. Example: match:{ prefix_match: "/some" } - redirect: { replace_prefix: "/other" } will redirect "/something" to "/otherthing". + description: 'Replace only matched prefix. Example: + match:{ prefix_match: "/some" } redirect: + { replace_prefix: "/other" } will redirect + "/something" to "/otherthing".' type: string replaceScheme: - description: |- - Replaces scheme. If the original scheme is http or https, will also remove the - 80 or 443 port, if present. + description: Replaces scheme. If the original + scheme is http or https, will also remove + the 80 or 443 port, if present. type: string responseCode: - description: |- - The HTTP status code to use in the redirect response. Supported values are: - moved_permanently, found, see_other, temporary_redirect, permanent_redirect. + description: 'The HTTP status code to use in + the redirect response. Supported values are: + moved_permanently, found, see_other, temporary_redirect, + permanent_redirect.' type: string type: object type: array @@ -1468,9 +1484,10 @@ spec: atProvider: properties: authority: - description: |- - A list of domains (host/authority header) that will be matched to this virtual host. Wildcard - hosts are supported in the form of '.foo.com' or '-bar.foo.com'. If not specified, all domains will be matched. + description: A list of domains (host/authority header) that will + be matched to this virtual host. Wildcard hosts are supported + in the form of '.foo.com' or '-bar.foo.com'. If not specified, + all domains will be matched. items: type: string type: array @@ -1483,8 +1500,7 @@ spec: description: The ID of the virtual host. type: string modifyRequestHeaders: - description: |- - Apply the following modifications to the request + description: Apply the following modifications to the request headers. The structure is documented below. items: properties: @@ -1498,15 +1514,13 @@ spec: description: If set, remove the header. type: boolean replace: - description: |- - New value for a header. Header values support the following - formatters. + description: New value for a header. Header values support + the following formatters. type: string type: object type: array modifyResponseHeaders: - description: |- - Apply the following modifications to the response + description: Apply the following modifications to the response headers. The structure is documented below. items: properties: @@ -1520,9 +1534,8 @@ spec: description: If set, remove the header. type: boolean replace: - description: |- - New value for a header. Header values support the following - formatters. + description: New value for a header. Header values support + the following formatters. type: string type: object type: array @@ -1531,9 +1544,10 @@ spec: when the virtual host is created. type: string route: - description: |- - A Route resource. Routes are matched in-order. Be careful when adding them to the end. For instance, having - http '/' match first makes all other routes unused. The structure is documented below. + description: A Route resource. Routes are matched in-order. Be + careful when adding them to the end. For instance, having http + '/' match first makes all other routes unused. The structure + is documented below. items: properties: grpcRoute: @@ -1580,16 +1594,19 @@ spec: description: Host rewrite specifier. type: string idleTimeout: - description: |- - Specifies the idle timeout (time without any data transfer for the active request) for the - route. It is useful for streaming scenarios (i.e. long-polling, server-sent events) - one should set idle_timeout to - something meaningful and timeout to the maximum time the stream is allowed to be alive. If not specified, there is no - per-route idle timeout. + description: Specifies the idle timeout (time + without any data transfer for the active request) + for the route. It is useful for streaming + scenarios (i.e. long-polling, server-sent + events) - one should set idle_timeout to something + meaningful and timeout to the maximum time + the stream is allowed to be alive. If not + specified, there is no per-route idle timeout. type: string maxTimeout: - description: |- - Lower timeout may be specified by the client (using grpc-timeout header). If not set, default is - 60 seconds. + description: Lower timeout may be specified + by the client (using grpc-timeout header). + If not set, default is 60 seconds. type: string type: object type: array @@ -1599,9 +1616,10 @@ spec: items: properties: status: - description: |- - The status of the response. Supported values are: ok, invalid_argumet, not_found, - permission_denied, unauthenticated, unimplemented, internal, unavailable. + description: 'The status of the response. Supported + values are: ok, invalid_argumet, not_found, + permission_denied, unauthenticated, unimplemented, + internal, unavailable.' type: string type: object type: array @@ -1621,9 +1639,10 @@ spec: description: Response body text. type: string status: - description: |- - The status of the response. Supported values are: ok, invalid_argumet, not_found, - permission_denied, unauthenticated, unimplemented, internal, unavailable. + description: 'The status of the response. Supported + values are: ok, invalid_argumet, not_found, + permission_denied, unauthenticated, unimplemented, + internal, unavailable.' type: number type: object type: array @@ -1672,24 +1691,27 @@ spec: description: Host rewrite specifier. type: string idleTimeout: - description: |- - Specifies the idle timeout (time without any data transfer for the active request) for the - route. It is useful for streaming scenarios (i.e. long-polling, server-sent events) - one should set idle_timeout to - something meaningful and timeout to the maximum time the stream is allowed to be alive. If not specified, there is no - per-route idle timeout. + description: Specifies the idle timeout (time + without any data transfer for the active request) + for the route. It is useful for streaming + scenarios (i.e. long-polling, server-sent + events) - one should set idle_timeout to something + meaningful and timeout to the maximum time + the stream is allowed to be alive. If not + specified, there is no per-route idle timeout. type: string prefixRewrite: description: If not empty, matched path prefix will be replaced by this value. type: string timeout: - description: |- - Specifies the request timeout (overall time request processing is allowed to take) for the - route. If not set, default is 60 seconds. + description: Specifies the request timeout (overall + time request processing is allowed to take) + for the route. If not set, default is 60 seconds. type: string upgradeTypes: - description: |- - List of upgrade types. Only specified upgrade types will be allowed. For example, + description: List of upgrade types. Only specified + upgrade types will be allowed. For example, "websocket". items: type: string @@ -1714,19 +1736,21 @@ spec: description: Replaces port. type: number replacePrefix: - description: |- - Replace only matched prefix. Example: match:{ prefix_match: "/some" } - redirect: { replace_prefix: "/other" } will redirect "/something" to "/otherthing". + description: 'Replace only matched prefix. Example: + match:{ prefix_match: "/some" } redirect: + { replace_prefix: "/other" } will redirect + "/something" to "/otherthing".' type: string replaceScheme: - description: |- - Replaces scheme. If the original scheme is http or https, will also remove the - 80 or 443 port, if present. + description: Replaces scheme. If the original + scheme is http or https, will also remove + the 80 or 443 port, if present. type: string responseCode: - description: |- - The HTTP status code to use in the redirect response. Supported values are: - moved_permanently, found, see_other, temporary_redirect, permanent_redirect. + description: 'The HTTP status code to use in + the redirect response. Supported values are: + moved_permanently, found, see_other, temporary_redirect, + permanent_redirect.' type: string type: object type: array diff --git a/package/crds/audit.yandex-cloud.upjet.crossplane.io_trailstrails.yaml b/package/crds/audit.yandex-cloud.upjet.crossplane.io_trailstrails.yaml index 577ed24..f8206bb 100644 --- a/package/crds/audit.yandex-cloud.upjet.crossplane.io_trailstrails.yaml +++ b/package/crds/audit.yandex-cloud.upjet.crossplane.io_trailstrails.yaml @@ -98,29 +98,31 @@ spec: properties: eventFilters: description: Structure describing filtering process for - the service-specific data plane events + the service-specific data plane events. items: properties: categories: - description: List of structures describing categories - of gathered data plane events + description: blocks. With the introduction of included_events/excluded_events + you can configure filtering per each event type. items: properties: plane: description: 'Type of the event by its relation to the cloud resource model. Possible values: - CONTROL_PLANE/DATA_PLANE' + CONTROL_PLANE/DATA_PLANE.' type: string type: description: 'Type of the event by its operation - effect on the resource. Possible values: READ/WRITE' + effect on the resource. Possible values: READ/WRITE.' type: string type: object type: array pathFilter: - description: Structure describing filtering process - for default control plane events. If omitted, the - trail will not deliver this category + description: with the appropriate resource_scope blocks. + You have to account that resource_scope does not + support specifying relations between resources, + so your configuration will simplify to only the + actual resources, that will be monitored. items: properties: anyFilter: @@ -148,7 +150,7 @@ spec: properties: anyFilters: description: List of child resources from - which events will be gathered + which events will be gathered. items: properties: resourceId: @@ -173,14 +175,15 @@ spec: type: array service: description: ID of the service which events will be - gathered + gathered. type: string type: object type: array pathFilter: - description: Structure describing filtering process for - default control plane events. If omitted, the trail will - not deliver this category + description: block with the filtering_policy.management_events_filter. + New API states management events filtration in a more + clear way. The resources, that were specified, must migrate + into the filtering_policy.management_events_filter.resource_scope items: properties: anyFilter: @@ -207,7 +210,7 @@ spec: properties: anyFilters: description: List of child resources from which - events will be gathered + events will be gathered. items: properties: resourceId: @@ -231,6 +234,75 @@ spec: type: array type: object type: array + filteringPolicy: + description: Structure describing event filtering process for + the trail. Mutually exclusive with filter. At least one of the + management_events_filter or data_events_filter fields will be + filled. + items: + properties: + dataEventsFilter: + description: Structure describing filtering process for + the service-specific data events. + items: + properties: + excludedEvents: + description: A list of events that won't be gathered + by the trail from this service. New events will + be automatically gathered when this option is specified. + Mutually exclusive with included_events. + items: + type: string + type: array + includedEvents: + description: A list of events that will be gathered + by the trail from this service. New events won't + be gathered by default when this option is specified. + Mutually exclusive with excluded_events. + items: + type: string + type: array + resourceScope: + description: Structure describing that events will + be gathered from the specified resource. + items: + properties: + resourceId: + description: ID of the parent resource. + type: string + resourceType: + description: Resource type of the parent resource. + type: string + type: object + type: array + service: + description: ID of the service which events will be + gathered. + type: string + type: object + type: array + managementEventsFilter: + description: Structure describing filtering process for + management events. + items: + properties: + resourceScope: + description: Structure describing that events will + be gathered from the specified resource. + items: + properties: + resourceId: + description: ID of the parent resource. + type: string + resourceType: + description: Resource type of the parent resource. + type: string + type: object + type: array + type: object + type: array + type: object + type: array folderId: description: ID of the folder to which the trail belongs. type: string @@ -322,7 +394,7 @@ spec: items: properties: logGroupId: - description: ID of the destination Cloud Logging Group + description: ID of the destination Cloud Logging Group. type: string type: object type: array @@ -339,12 +411,12 @@ spec: items: properties: bucketName: - description: Name of the destination bucket + description: Name of the destination bucket. type: string objectPrefix: description: Additional prefix of the uploaded objects. If not specified, objects will be uploaded with prefix - equal to trail_id + equal to trail_id. type: string type: object type: array @@ -387,29 +459,31 @@ spec: properties: eventFilters: description: Structure describing filtering process for - the service-specific data plane events + the service-specific data plane events. items: properties: categories: - description: List of structures describing categories - of gathered data plane events + description: blocks. With the introduction of included_events/excluded_events + you can configure filtering per each event type. items: properties: plane: description: 'Type of the event by its relation to the cloud resource model. Possible values: - CONTROL_PLANE/DATA_PLANE' + CONTROL_PLANE/DATA_PLANE.' type: string type: description: 'Type of the event by its operation - effect on the resource. Possible values: READ/WRITE' + effect on the resource. Possible values: READ/WRITE.' type: string type: object type: array pathFilter: - description: Structure describing filtering process - for default control plane events. If omitted, the - trail will not deliver this category + description: with the appropriate resource_scope blocks. + You have to account that resource_scope does not + support specifying relations between resources, + so your configuration will simplify to only the + actual resources, that will be monitored. items: properties: anyFilter: @@ -437,7 +511,7 @@ spec: properties: anyFilters: description: List of child resources from - which events will be gathered + which events will be gathered. items: properties: resourceId: @@ -462,14 +536,15 @@ spec: type: array service: description: ID of the service which events will be - gathered + gathered. type: string type: object type: array pathFilter: - description: Structure describing filtering process for - default control plane events. If omitted, the trail will - not deliver this category + description: block with the filtering_policy.management_events_filter. + New API states management events filtration in a more + clear way. The resources, that were specified, must migrate + into the filtering_policy.management_events_filter.resource_scope items: properties: anyFilter: @@ -496,7 +571,7 @@ spec: properties: anyFilters: description: List of child resources from which - events will be gathered + events will be gathered. items: properties: resourceId: @@ -520,6 +595,75 @@ spec: type: array type: object type: array + filteringPolicy: + description: Structure describing event filtering process for + the trail. Mutually exclusive with filter. At least one of the + management_events_filter or data_events_filter fields will be + filled. + items: + properties: + dataEventsFilter: + description: Structure describing filtering process for + the service-specific data events. + items: + properties: + excludedEvents: + description: A list of events that won't be gathered + by the trail from this service. New events will + be automatically gathered when this option is specified. + Mutually exclusive with included_events. + items: + type: string + type: array + includedEvents: + description: A list of events that will be gathered + by the trail from this service. New events won't + be gathered by default when this option is specified. + Mutually exclusive with excluded_events. + items: + type: string + type: array + resourceScope: + description: Structure describing that events will + be gathered from the specified resource. + items: + properties: + resourceId: + description: ID of the parent resource. + type: string + resourceType: + description: Resource type of the parent resource. + type: string + type: object + type: array + service: + description: ID of the service which events will be + gathered. + type: string + type: object + type: array + managementEventsFilter: + description: Structure describing filtering process for + management events. + items: + properties: + resourceScope: + description: Structure describing that events will + be gathered from the specified resource. + items: + properties: + resourceId: + description: ID of the parent resource. + type: string + resourceType: + description: Resource type of the parent resource. + type: string + type: object + type: array + type: object + type: array + type: object + type: array folderId: description: ID of the folder to which the trail belongs. type: string @@ -611,7 +755,7 @@ spec: items: properties: logGroupId: - description: ID of the destination Cloud Logging Group + description: ID of the destination Cloud Logging Group. type: string type: object type: array @@ -628,12 +772,12 @@ spec: items: properties: bucketName: - description: Name of the destination bucket + description: Name of the destination bucket. type: string objectPrefix: description: Additional prefix of the uploaded objects. If not specified, objects will be uploaded with prefix - equal to trail_id + equal to trail_id. type: string type: object type: array @@ -806,10 +950,6 @@ spec: - forProvider type: object x-kubernetes-validations: - - message: spec.forProvider.filter is a required parameter - rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies - || ''Update'' in self.managementPolicies) || has(self.forProvider.filter) - || (has(self.initProvider) && has(self.initProvider.filter))' - message: spec.forProvider.name is a required parameter rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies || ''Update'' in self.managementPolicies) || has(self.forProvider.name) @@ -848,29 +988,31 @@ spec: properties: eventFilters: description: Structure describing filtering process for - the service-specific data plane events + the service-specific data plane events. items: properties: categories: - description: List of structures describing categories - of gathered data plane events + description: blocks. With the introduction of included_events/excluded_events + you can configure filtering per each event type. items: properties: plane: description: 'Type of the event by its relation to the cloud resource model. Possible values: - CONTROL_PLANE/DATA_PLANE' + CONTROL_PLANE/DATA_PLANE.' type: string type: description: 'Type of the event by its operation - effect on the resource. Possible values: READ/WRITE' + effect on the resource. Possible values: READ/WRITE.' type: string type: object type: array pathFilter: - description: Structure describing filtering process - for default control plane events. If omitted, the - trail will not deliver this category + description: with the appropriate resource_scope blocks. + You have to account that resource_scope does not + support specifying relations between resources, + so your configuration will simplify to only the + actual resources, that will be monitored. items: properties: anyFilter: @@ -898,7 +1040,7 @@ spec: properties: anyFilters: description: List of child resources from - which events will be gathered + which events will be gathered. items: properties: resourceId: @@ -923,14 +1065,15 @@ spec: type: array service: description: ID of the service which events will be - gathered + gathered. type: string type: object type: array pathFilter: - description: Structure describing filtering process for - default control plane events. If omitted, the trail will - not deliver this category + description: block with the filtering_policy.management_events_filter. + New API states management events filtration in a more + clear way. The resources, that were specified, must migrate + into the filtering_policy.management_events_filter.resource_scope items: properties: anyFilter: @@ -957,7 +1100,7 @@ spec: properties: anyFilters: description: List of child resources from which - events will be gathered + events will be gathered. items: properties: resourceId: @@ -981,6 +1124,75 @@ spec: type: array type: object type: array + filteringPolicy: + description: Structure describing event filtering process for + the trail. Mutually exclusive with filter. At least one of the + management_events_filter or data_events_filter fields will be + filled. + items: + properties: + dataEventsFilter: + description: Structure describing filtering process for + the service-specific data events. + items: + properties: + excludedEvents: + description: A list of events that won't be gathered + by the trail from this service. New events will + be automatically gathered when this option is specified. + Mutually exclusive with included_events. + items: + type: string + type: array + includedEvents: + description: A list of events that will be gathered + by the trail from this service. New events won't + be gathered by default when this option is specified. + Mutually exclusive with excluded_events. + items: + type: string + type: array + resourceScope: + description: Structure describing that events will + be gathered from the specified resource. + items: + properties: + resourceId: + description: ID of the parent resource. + type: string + resourceType: + description: Resource type of the parent resource. + type: string + type: object + type: array + service: + description: ID of the service which events will be + gathered. + type: string + type: object + type: array + managementEventsFilter: + description: Structure describing filtering process for + management events. + items: + properties: + resourceScope: + description: Structure describing that events will + be gathered from the specified resource. + items: + properties: + resourceId: + description: ID of the parent resource. + type: string + resourceType: + description: Resource type of the parent resource. + type: string + type: object + type: array + type: object + type: array + type: object + type: array folderId: description: ID of the folder to which the trail belongs. type: string @@ -998,7 +1210,7 @@ spec: items: properties: logGroupId: - description: ID of the destination Cloud Logging Group + description: ID of the destination Cloud Logging Group. type: string type: object type: array @@ -1018,12 +1230,12 @@ spec: items: properties: bucketName: - description: Name of the destination bucket + description: Name of the destination bucket. type: string objectPrefix: description: Additional prefix of the uploaded objects. If not specified, objects will be uploaded with prefix - equal to trail_id + equal to trail_id. type: string type: object type: array diff --git a/package/crds/backup.yandex-cloud.upjet.crossplane.io_policies.yaml b/package/crds/backup.yandex-cloud.upjet.crossplane.io_policies.yaml index a723554..e1e8064 100644 --- a/package/crds/backup.yandex-cloud.upjet.crossplane.io_policies.yaml +++ b/package/crds/backup.yandex-cloud.upjet.crossplane.io_policies.yaml @@ -78,14 +78,12 @@ spec: archives.' type: string cbt: - description: |- - — Configuration of Changed Block Tracking. - Available values are: "USE_IF_ENABLED", "ENABLED_AND_USE", "DO_NOT_USE". + description: '— Configuration of Changed Block Tracking. Available + values are: "USE_IF_ENABLED", "ENABLED_AND_USE", "DO_NOT_USE".' type: string compression: - description: |- - — Archive compression level. Affects CPU. - Available values: "NORMAL", "HIGH", "MAX", "OFF". + description: '— Archive compression level. Affects CPU. Available + values: "NORMAL", "HIGH", "MAX", "OFF".' type: string fastBackupEnabled: description: — Enable flag @@ -170,9 +168,9 @@ spec: type: object type: object format: - description: |- - — Format of the backup. It's strongly recommend to leave this option empty or "AUTO". - Available values: "AUTO", "VERSION_11", "VERSION_12". + description: '— Format of the backup. It''s strongly recommend + to leave this option empty or "AUTO". Available values: "AUTO", + "VERSION_11", "VERSION_12".' type: string multiVolumeSnapshottingEnabled: description: — If true, snapshots of multiple volumes will be @@ -193,9 +191,9 @@ spec: will be taken. type: boolean reattempts: - description: |- - — Amount of reattempts that should be performed while trying to make backup at the host. - This attribute consists of the following parameters: + description: '— Amount of reattempts that should be performed + while trying to make backup at the host. This attribute consists + of the following parameters:' items: properties: enabled: @@ -212,9 +210,9 @@ spec: type: object type: array retention: - description: |- - — Retention policy for backups. Allows to setup backups lifecycle. - This attribute consists of the following parameters: + description: '— Retention policy for backups. Allows to setup + backups lifecycle. This attribute consists of the following + parameters:' items: properties: afterBackup: @@ -248,13 +246,76 @@ spec: description: — Schedule settings for creating backups on the host. items: properties: + backupSets: + description: A list of schedules with backup sets that compose + the whole scheme. + items: + properties: + executeByInterval: + description: '— Perform backup by interval, since + last backup of the host. Maximum value is: 9999 + days. See interval_type for available values. Exactly + on of options should be set: execute_by_interval + or execute_by_time.' + type: number + executeByTime: + description: '— Perform backup periodically at specific + time. Exactly on of options should be set: execute_by_interval + or execute_by_time.' + items: + properties: + includeLastDayOfMonth: + description: — If true, schedule will be applied + on the last day of month. See day_type for + available values. + type: boolean + monthdays: + description: — List of days when schedule applies. + Used in "MONTHLY" type. + items: + type: number + type: array + months: + description: — seconds + items: + type: number + type: array + repeatAt: + description: hours format), when the schedule + applies. + items: + type: string + type: array + repeatEvery: + description: — Frequency of backup repetition. + See interval_type for available values. + type: string + type: + description: '— Type of the scheduling. Available + values are: "HOURLY", "DAILY", "WEEKLY", "MONTHLY".' + type: string + weekdays: + description: — List of weekdays when the backup + will be applied. Used in "WEEKLY" type. + items: + type: string + type: array + type: object + type: array + type: + description: '— Type of the scheduling. Available + values are: "HOURLY", "DAILY", "WEEKLY", "MONTHLY".' + type: string + type: object + type: array enabled: description: — Enable flag type: boolean executeByInterval: - description: |- - — Perform backup by interval, since last backup of the host. Maximum value is: 9999 days. - See interval_type for available values. Exactly on of options should be set: execute_by_interval or execute_by_time. + description: '— Perform backup by interval, since last backup + of the host. Maximum value is: 9999 days. See interval_type + for available values. Exactly on of options should be + set: execute_by_interval or execute_by_time.' type: number executeByTime: description: '— Perform backup periodically at specific @@ -263,9 +324,9 @@ spec: items: properties: includeLastDayOfMonth: - description: |- - — If true, schedule will be applied on the last day of month. - See day_type for available values. + description: — If true, schedule will be applied on + the last day of month. See day_type for available + values. type: boolean monthdays: description: — List of days when schedule applies. @@ -304,19 +365,18 @@ spec: to run in parallel. 0 for unlimited. type: number randomMaxDelay: - description: |- - — Configuration of the random delay between the execution of parallel tasks. - See interval_type for available values. + description: — Configuration of the random delay between + the execution of parallel tasks. See interval_type for + available values. type: string scheme: - description: |- - — Scheme of the backups. - Available values are: "ALWAYS_INCREMENTAL", "ALWAYS_FULL", "WEEKLY_FULL_DAILY_INCREMENTAL", 'WEEKLY_INCREMENTAL". + description: '— Scheme of the backups. Available values + are: "ALWAYS_INCREMENTAL", "ALWAYS_FULL", "WEEKLY_FULL_DAILY_INCREMENTAL", + ''WEEKLY_INCREMENTAL".' type: string weeklyBackupDay: - description: |- - — A day of week to start weekly backups. - See day_type for available values. + description: — A day of week to start weekly backups. See + day_type for available values. type: string type: object type: array @@ -329,9 +389,9 @@ spec: to leave this option unchanged. type: string vmSnapshotReattempts: - description: |- - (Requied) — Amount of reattempts that should be performed while trying to make snapshot. - This attribute consists of the following parameters: + description: '(Requied) — Amount of reattempts that should be + performed while trying to make snapshot. This attribute consists + of the following parameters:' items: properties: enabled: @@ -348,9 +408,8 @@ spec: type: object type: array vssProvider: - description: |- - — Settings for the volume shadow copy service. - Available values are: "NATIVE", "TARGET_SYSTEM_DEFINED" + description: '— Settings for the volume shadow copy service. Available + values are: "NATIVE", "TARGET_SYSTEM_DEFINED"' type: string type: object initProvider: @@ -371,14 +430,12 @@ spec: archives.' type: string cbt: - description: |- - — Configuration of Changed Block Tracking. - Available values are: "USE_IF_ENABLED", "ENABLED_AND_USE", "DO_NOT_USE". + description: '— Configuration of Changed Block Tracking. Available + values are: "USE_IF_ENABLED", "ENABLED_AND_USE", "DO_NOT_USE".' type: string compression: - description: |- - — Archive compression level. Affects CPU. - Available values: "NORMAL", "HIGH", "MAX", "OFF". + description: '— Archive compression level. Affects CPU. Available + values: "NORMAL", "HIGH", "MAX", "OFF".' type: string fastBackupEnabled: description: — Enable flag @@ -463,9 +520,9 @@ spec: type: object type: object format: - description: |- - — Format of the backup. It's strongly recommend to leave this option empty or "AUTO". - Available values: "AUTO", "VERSION_11", "VERSION_12". + description: '— Format of the backup. It''s strongly recommend + to leave this option empty or "AUTO". Available values: "AUTO", + "VERSION_11", "VERSION_12".' type: string multiVolumeSnapshottingEnabled: description: — If true, snapshots of multiple volumes will be @@ -486,9 +543,9 @@ spec: will be taken. type: boolean reattempts: - description: |- - — Amount of reattempts that should be performed while trying to make backup at the host. - This attribute consists of the following parameters: + description: '— Amount of reattempts that should be performed + while trying to make backup at the host. This attribute consists + of the following parameters:' items: properties: enabled: @@ -505,9 +562,9 @@ spec: type: object type: array retention: - description: |- - — Retention policy for backups. Allows to setup backups lifecycle. - This attribute consists of the following parameters: + description: '— Retention policy for backups. Allows to setup + backups lifecycle. This attribute consists of the following + parameters:' items: properties: afterBackup: @@ -541,13 +598,76 @@ spec: description: — Schedule settings for creating backups on the host. items: properties: + backupSets: + description: A list of schedules with backup sets that compose + the whole scheme. + items: + properties: + executeByInterval: + description: '— Perform backup by interval, since + last backup of the host. Maximum value is: 9999 + days. See interval_type for available values. Exactly + on of options should be set: execute_by_interval + or execute_by_time.' + type: number + executeByTime: + description: '— Perform backup periodically at specific + time. Exactly on of options should be set: execute_by_interval + or execute_by_time.' + items: + properties: + includeLastDayOfMonth: + description: — If true, schedule will be applied + on the last day of month. See day_type for + available values. + type: boolean + monthdays: + description: — List of days when schedule applies. + Used in "MONTHLY" type. + items: + type: number + type: array + months: + description: — seconds + items: + type: number + type: array + repeatAt: + description: hours format), when the schedule + applies. + items: + type: string + type: array + repeatEvery: + description: — Frequency of backup repetition. + See interval_type for available values. + type: string + type: + description: '— Type of the scheduling. Available + values are: "HOURLY", "DAILY", "WEEKLY", "MONTHLY".' + type: string + weekdays: + description: — List of weekdays when the backup + will be applied. Used in "WEEKLY" type. + items: + type: string + type: array + type: object + type: array + type: + description: '— Type of the scheduling. Available + values are: "HOURLY", "DAILY", "WEEKLY", "MONTHLY".' + type: string + type: object + type: array enabled: description: — Enable flag type: boolean executeByInterval: - description: |- - — Perform backup by interval, since last backup of the host. Maximum value is: 9999 days. - See interval_type for available values. Exactly on of options should be set: execute_by_interval or execute_by_time. + description: '— Perform backup by interval, since last backup + of the host. Maximum value is: 9999 days. See interval_type + for available values. Exactly on of options should be + set: execute_by_interval or execute_by_time.' type: number executeByTime: description: '— Perform backup periodically at specific @@ -556,9 +676,9 @@ spec: items: properties: includeLastDayOfMonth: - description: |- - — If true, schedule will be applied on the last day of month. - See day_type for available values. + description: — If true, schedule will be applied on + the last day of month. See day_type for available + values. type: boolean monthdays: description: — List of days when schedule applies. @@ -597,19 +717,18 @@ spec: to run in parallel. 0 for unlimited. type: number randomMaxDelay: - description: |- - — Configuration of the random delay between the execution of parallel tasks. - See interval_type for available values. + description: — Configuration of the random delay between + the execution of parallel tasks. See interval_type for + available values. type: string scheme: - description: |- - — Scheme of the backups. - Available values are: "ALWAYS_INCREMENTAL", "ALWAYS_FULL", "WEEKLY_FULL_DAILY_INCREMENTAL", 'WEEKLY_INCREMENTAL". + description: '— Scheme of the backups. Available values + are: "ALWAYS_INCREMENTAL", "ALWAYS_FULL", "WEEKLY_FULL_DAILY_INCREMENTAL", + ''WEEKLY_INCREMENTAL".' type: string weeklyBackupDay: - description: |- - — A day of week to start weekly backups. - See day_type for available values. + description: — A day of week to start weekly backups. See + day_type for available values. type: string type: object type: array @@ -622,9 +741,9 @@ spec: to leave this option unchanged. type: string vmSnapshotReattempts: - description: |- - (Requied) — Amount of reattempts that should be performed while trying to make snapshot. - This attribute consists of the following parameters: + description: '(Requied) — Amount of reattempts that should be + performed while trying to make snapshot. This attribute consists + of the following parameters:' items: properties: enabled: @@ -641,9 +760,8 @@ spec: type: object type: array vssProvider: - description: |- - — Settings for the volume shadow copy service. - Available values are: "NATIVE", "TARGET_SYSTEM_DEFINED" + description: '— Settings for the volume shadow copy service. Available + values are: "NATIVE", "TARGET_SYSTEM_DEFINED"' type: string type: object managementPolicies: @@ -844,14 +962,12 @@ spec: archives.' type: string cbt: - description: |- - — Configuration of Changed Block Tracking. - Available values are: "USE_IF_ENABLED", "ENABLED_AND_USE", "DO_NOT_USE". + description: '— Configuration of Changed Block Tracking. Available + values are: "USE_IF_ENABLED", "ENABLED_AND_USE", "DO_NOT_USE".' type: string compression: - description: |- - — Archive compression level. Affects CPU. - Available values: "NORMAL", "HIGH", "MAX", "OFF". + description: '— Archive compression level. Affects CPU. Available + values: "NORMAL", "HIGH", "MAX", "OFF".' type: string createdAt: type: string @@ -865,9 +981,9 @@ spec: description: — days type: string format: - description: |- - — Format of the backup. It's strongly recommend to leave this option empty or "AUTO". - Available values: "AUTO", "VERSION_11", "VERSION_12". + description: '— Format of the backup. It''s strongly recommend + to leave this option empty or "AUTO". Available values: "AUTO", + "VERSION_11", "VERSION_12".' type: string id: description: — days @@ -891,9 +1007,9 @@ spec: will be taken. type: boolean reattempts: - description: |- - — Amount of reattempts that should be performed while trying to make backup at the host. - This attribute consists of the following parameters: + description: '— Amount of reattempts that should be performed + while trying to make backup at the host. This attribute consists + of the following parameters:' items: properties: enabled: @@ -910,9 +1026,9 @@ spec: type: object type: array retention: - description: |- - — Retention policy for backups. Allows to setup backups lifecycle. - This attribute consists of the following parameters: + description: '— Retention policy for backups. Allows to setup + backups lifecycle. This attribute consists of the following + parameters:' items: properties: afterBackup: @@ -946,13 +1062,76 @@ spec: description: — Schedule settings for creating backups on the host. items: properties: + backupSets: + description: A list of schedules with backup sets that compose + the whole scheme. + items: + properties: + executeByInterval: + description: '— Perform backup by interval, since + last backup of the host. Maximum value is: 9999 + days. See interval_type for available values. Exactly + on of options should be set: execute_by_interval + or execute_by_time.' + type: number + executeByTime: + description: '— Perform backup periodically at specific + time. Exactly on of options should be set: execute_by_interval + or execute_by_time.' + items: + properties: + includeLastDayOfMonth: + description: — If true, schedule will be applied + on the last day of month. See day_type for + available values. + type: boolean + monthdays: + description: — List of days when schedule applies. + Used in "MONTHLY" type. + items: + type: number + type: array + months: + description: — seconds + items: + type: number + type: array + repeatAt: + description: hours format), when the schedule + applies. + items: + type: string + type: array + repeatEvery: + description: — Frequency of backup repetition. + See interval_type for available values. + type: string + type: + description: '— Type of the scheduling. Available + values are: "HOURLY", "DAILY", "WEEKLY", "MONTHLY".' + type: string + weekdays: + description: — List of weekdays when the backup + will be applied. Used in "WEEKLY" type. + items: + type: string + type: array + type: object + type: array + type: + description: '— Type of the scheduling. Available + values are: "HOURLY", "DAILY", "WEEKLY", "MONTHLY".' + type: string + type: object + type: array enabled: description: — Enable flag type: boolean executeByInterval: - description: |- - — Perform backup by interval, since last backup of the host. Maximum value is: 9999 days. - See interval_type for available values. Exactly on of options should be set: execute_by_interval or execute_by_time. + description: '— Perform backup by interval, since last backup + of the host. Maximum value is: 9999 days. See interval_type + for available values. Exactly on of options should be + set: execute_by_interval or execute_by_time.' type: number executeByTime: description: '— Perform backup periodically at specific @@ -961,9 +1140,9 @@ spec: items: properties: includeLastDayOfMonth: - description: |- - — If true, schedule will be applied on the last day of month. - See day_type for available values. + description: — If true, schedule will be applied on + the last day of month. See day_type for available + values. type: boolean monthdays: description: — List of days when schedule applies. @@ -1002,19 +1181,18 @@ spec: to run in parallel. 0 for unlimited. type: number randomMaxDelay: - description: |- - — Configuration of the random delay between the execution of parallel tasks. - See interval_type for available values. + description: — Configuration of the random delay between + the execution of parallel tasks. See interval_type for + available values. type: string scheme: - description: |- - — Scheme of the backups. - Available values are: "ALWAYS_INCREMENTAL", "ALWAYS_FULL", "WEEKLY_FULL_DAILY_INCREMENTAL", 'WEEKLY_INCREMENTAL". + description: '— Scheme of the backups. Available values + are: "ALWAYS_INCREMENTAL", "ALWAYS_FULL", "WEEKLY_FULL_DAILY_INCREMENTAL", + ''WEEKLY_INCREMENTAL".' type: string weeklyBackupDay: - description: |- - — A day of week to start weekly backups. - See day_type for available values. + description: — A day of week to start weekly backups. See + day_type for available values. type: string type: object type: array @@ -1029,9 +1207,9 @@ spec: updatedAt: type: string vmSnapshotReattempts: - description: |- - (Requied) — Amount of reattempts that should be performed while trying to make snapshot. - This attribute consists of the following parameters: + description: '(Requied) — Amount of reattempts that should be + performed while trying to make snapshot. This attribute consists + of the following parameters:' items: properties: enabled: @@ -1048,9 +1226,8 @@ spec: type: object type: array vssProvider: - description: |- - — Settings for the volume shadow copy service. - Available values are: "NATIVE", "TARGET_SYSTEM_DEFINED" + description: '— Settings for the volume shadow copy service. Available + values are: "NATIVE", "TARGET_SYSTEM_DEFINED"' type: string type: object conditions: diff --git a/package/crds/backup.yandex-cloud.upjet.crossplane.io_policybindings.yaml b/package/crds/backup.yandex-cloud.upjet.crossplane.io_policybindings.yaml new file mode 100644 index 0000000..e36114c --- /dev/null +++ b/package/crds/backup.yandex-cloud.upjet.crossplane.io_policybindings.yaml @@ -0,0 +1,508 @@ +--- +apiVersion: apiextensions.k8s.io/v1 +kind: CustomResourceDefinition +metadata: + annotations: + controller-gen.kubebuilder.io/version: v0.14.0 + name: policybindings.backup.yandex-cloud.upjet.crossplane.io +spec: + group: backup.yandex-cloud.upjet.crossplane.io + names: + categories: + - crossplane + - managed + - yandex-cloud + kind: PolicyBindings + listKind: PolicyBindingsList + plural: policybindings + singular: policybindings + scope: Cluster + versions: + - additionalPrinterColumns: + - jsonPath: .status.conditions[?(@.type=='Synced')].status + name: SYNCED + type: string + - jsonPath: .status.conditions[?(@.type=='Ready')].status + name: READY + type: string + - jsonPath: .metadata.annotations.crossplane\.io/external-name + name: EXTERNAL-NAME + type: string + - jsonPath: .metadata.creationTimestamp + name: AGE + type: date + name: v1alpha1 + schema: + openAPIV3Schema: + description: PolicyBindings is the Schema for the PolicyBindingss API. Allows + to bind compute instance with backup policy. + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: PolicyBindingsSpec defines the desired state of PolicyBindings + properties: + deletionPolicy: + default: Delete + description: |- + DeletionPolicy specifies what will happen to the underlying external + when this managed resource is deleted - either "Delete" or "Orphan" the + external resource. + This field is planned to be deprecated in favor of the ManagementPolicies + field in a future release. Currently, both could be set independently and + non-default values would be honored if the feature flag is enabled. + See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + enum: + - Orphan + - Delete + type: string + forProvider: + properties: + instanceId: + description: — Compute Cloud instance ID. + type: string + instanceIdRef: + description: Reference to a Instance in compute to populate instanceId. + properties: + name: + description: Name of the referenced object. + type: string + policy: + description: Policies for referencing. + properties: + resolution: + default: Required + description: |- + Resolution specifies whether resolution of this reference is required. + The default is 'Required', which means the reconcile will fail if the + reference cannot be resolved. 'Optional' means this reference will be + a no-op if it cannot be resolved. + enum: + - Required + - Optional + type: string + resolve: + description: |- + Resolve specifies when this reference should be resolved. The default + is 'IfNotPresent', which will attempt to resolve the reference only when + the corresponding field is not present. Use 'Always' to resolve the + reference on every reconcile. + enum: + - Always + - IfNotPresent + type: string + type: object + required: + - name + type: object + instanceIdSelector: + description: Selector for a Instance in compute to populate instanceId. + properties: + matchControllerRef: + description: |- + MatchControllerRef ensures an object with the same controller reference + as the selecting object is selected. + type: boolean + matchLabels: + additionalProperties: + type: string + description: MatchLabels ensures an object with matching labels + is selected. + type: object + policy: + description: Policies for selection. + properties: + resolution: + default: Required + description: |- + Resolution specifies whether resolution of this reference is required. + The default is 'Required', which means the reconcile will fail if the + reference cannot be resolved. 'Optional' means this reference will be + a no-op if it cannot be resolved. + enum: + - Required + - Optional + type: string + resolve: + description: |- + Resolve specifies when this reference should be resolved. The default + is 'IfNotPresent', which will attempt to resolve the reference only when + the corresponding field is not present. Use 'Always' to resolve the + reference on every reconcile. + enum: + - Always + - IfNotPresent + type: string + type: object + type: object + policyId: + description: — Backup Policy ID. + type: string + type: object + initProvider: + description: |- + THIS IS A BETA FIELD. It will be honored + unless the Management Policies feature flag is disabled. + InitProvider holds the same fields as ForProvider, with the exception + of Identifier and other resource reference fields. The fields that are + in InitProvider are merged into ForProvider when the resource is created. + The same fields are also added to the terraform ignore_changes hook, to + avoid updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after creation, + for example because of an external controller is managing them, like an + autoscaler. + properties: + instanceId: + description: — Compute Cloud instance ID. + type: string + instanceIdRef: + description: Reference to a Instance in compute to populate instanceId. + properties: + name: + description: Name of the referenced object. + type: string + policy: + description: Policies for referencing. + properties: + resolution: + default: Required + description: |- + Resolution specifies whether resolution of this reference is required. + The default is 'Required', which means the reconcile will fail if the + reference cannot be resolved. 'Optional' means this reference will be + a no-op if it cannot be resolved. + enum: + - Required + - Optional + type: string + resolve: + description: |- + Resolve specifies when this reference should be resolved. The default + is 'IfNotPresent', which will attempt to resolve the reference only when + the corresponding field is not present. Use 'Always' to resolve the + reference on every reconcile. + enum: + - Always + - IfNotPresent + type: string + type: object + required: + - name + type: object + instanceIdSelector: + description: Selector for a Instance in compute to populate instanceId. + properties: + matchControllerRef: + description: |- + MatchControllerRef ensures an object with the same controller reference + as the selecting object is selected. + type: boolean + matchLabels: + additionalProperties: + type: string + description: MatchLabels ensures an object with matching labels + is selected. + type: object + policy: + description: Policies for selection. + properties: + resolution: + default: Required + description: |- + Resolution specifies whether resolution of this reference is required. + The default is 'Required', which means the reconcile will fail if the + reference cannot be resolved. 'Optional' means this reference will be + a no-op if it cannot be resolved. + enum: + - Required + - Optional + type: string + resolve: + description: |- + Resolve specifies when this reference should be resolved. The default + is 'IfNotPresent', which will attempt to resolve the reference only when + the corresponding field is not present. Use 'Always' to resolve the + reference on every reconcile. + enum: + - Always + - IfNotPresent + type: string + type: object + type: object + policyId: + description: — Backup Policy ID. + type: string + type: object + managementPolicies: + default: + - '*' + description: |- + THIS IS A BETA FIELD. It is on by default but can be opted out + through a Crossplane feature flag. + ManagementPolicies specify the array of actions Crossplane is allowed to + take on the managed and external resources. + This field is planned to replace the DeletionPolicy field in a future + release. Currently, both could be set independently and non-default + values would be honored if the feature flag is enabled. If both are + custom, the DeletionPolicy field will be ignored. + See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md + items: + description: |- + A ManagementAction represents an action that the Crossplane controllers + can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array + providerConfigRef: + default: + name: default + description: |- + ProviderConfigReference specifies how the provider that will be used to + create, observe, update, and delete this managed resource should be + configured. + properties: + name: + description: Name of the referenced object. + type: string + policy: + description: Policies for referencing. + properties: + resolution: + default: Required + description: |- + Resolution specifies whether resolution of this reference is required. + The default is 'Required', which means the reconcile will fail if the + reference cannot be resolved. 'Optional' means this reference will be + a no-op if it cannot be resolved. + enum: + - Required + - Optional + type: string + resolve: + description: |- + Resolve specifies when this reference should be resolved. The default + is 'IfNotPresent', which will attempt to resolve the reference only when + the corresponding field is not present. Use 'Always' to resolve the + reference on every reconcile. + enum: + - Always + - IfNotPresent + type: string + type: object + required: + - name + type: object + publishConnectionDetailsTo: + description: |- + PublishConnectionDetailsTo specifies the connection secret config which + contains a name, metadata and a reference to secret store config to + which any connection details for this managed resource should be written. + Connection details frequently include the endpoint, username, + and password required to connect to the managed resource. + properties: + configRef: + default: + name: default + description: |- + SecretStoreConfigRef specifies which secret store config should be used + for this ConnectionSecret. + properties: + name: + description: Name of the referenced object. + type: string + policy: + description: Policies for referencing. + properties: + resolution: + default: Required + description: |- + Resolution specifies whether resolution of this reference is required. + The default is 'Required', which means the reconcile will fail if the + reference cannot be resolved. 'Optional' means this reference will be + a no-op if it cannot be resolved. + enum: + - Required + - Optional + type: string + resolve: + description: |- + Resolve specifies when this reference should be resolved. The default + is 'IfNotPresent', which will attempt to resolve the reference only when + the corresponding field is not present. Use 'Always' to resolve the + reference on every reconcile. + enum: + - Always + - IfNotPresent + type: string + type: object + required: + - name + type: object + metadata: + description: Metadata is the metadata for connection secret. + properties: + annotations: + additionalProperties: + type: string + description: |- + Annotations are the annotations to be added to connection secret. + - For Kubernetes secrets, this will be used as "metadata.annotations". + - It is up to Secret Store implementation for others store types. + type: object + labels: + additionalProperties: + type: string + description: |- + Labels are the labels/tags to be added to connection secret. + - For Kubernetes secrets, this will be used as "metadata.labels". + - It is up to Secret Store implementation for others store types. + type: object + type: + description: |- + Type is the SecretType for the connection secret. + - Only valid for Kubernetes Secret Stores. + type: string + type: object + name: + description: Name is the name of the connection secret. + type: string + required: + - name + type: object + writeConnectionSecretToRef: + description: |- + WriteConnectionSecretToReference specifies the namespace and name of a + Secret to which any connection details for this managed resource should + be written. Connection details frequently include the endpoint, username, + and password required to connect to the managed resource. + This field is planned to be replaced in a future release in favor of + PublishConnectionDetailsTo. Currently, both could be set independently + and connection details would be published to both without affecting + each other. + properties: + name: + description: Name of the secret. + type: string + namespace: + description: Namespace of the secret. + type: string + required: + - name + - namespace + type: object + required: + - forProvider + type: object + x-kubernetes-validations: + - message: spec.forProvider.policyId is a required parameter + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.policyId) + || (has(self.initProvider) && has(self.initProvider.policyId))' + status: + description: PolicyBindingsStatus defines the observed state of PolicyBindings. + properties: + atProvider: + properties: + createdAt: + description: Creation timestamp of the Yandex Cloud Policy Bindings. + type: string + enabled: + description: Boolean flag that specifies whether the policy application + is enabled. May be false if processing flag is true. + type: boolean + id: + type: string + instanceId: + description: — Compute Cloud instance ID. + type: string + policyId: + description: — Backup Policy ID. + type: string + processing: + description: Boolean flag that specifies whether the policy is + in the process of binding to an instance. + type: boolean + type: object + conditions: + description: Conditions of the resource. + items: + description: A Condition that may apply to a resource. + properties: + lastTransitionTime: + description: |- + LastTransitionTime is the last time this condition transitioned from one + status to another. + format: date-time + type: string + message: + description: |- + A Message containing details about this condition's last transition from + one status to another, if any. + type: string + observedGeneration: + description: |- + ObservedGeneration represents the .metadata.generation that the condition was set based upon. + For instance, if .metadata.generation is currently 12, but the .status.conditions[x].observedGeneration is 9, the condition is out of date + with respect to the current state of the instance. + format: int64 + type: integer + reason: + description: A Reason for this condition's last transition from + one status to another. + type: string + status: + description: Status of this condition; is it currently True, + False, or Unknown? + type: string + type: + description: |- + Type of this condition. At most one of each condition type may apply to + a resource at any point in time. + type: string + required: + - lastTransitionTime + - reason + - status + - type + type: object + type: array + x-kubernetes-list-map-keys: + - type + x-kubernetes-list-type: map + observedGeneration: + description: |- + ObservedGeneration is the latest metadata.generation + which resulted in either a ready state, or stalled due to error + it can not recover from without human intervention. + format: int64 + type: integer + type: object + required: + - spec + type: object + served: true + storage: true + subresources: + status: {} diff --git a/package/crds/cm.yandex-cloud.upjet.crossplane.io_certificates.yaml b/package/crds/cm.yandex-cloud.upjet.crossplane.io_certificates.yaml index 97508fe..82f3c8a 100644 --- a/package/crds/cm.yandex-cloud.upjet.crossplane.io_certificates.yaml +++ b/package/crds/cm.yandex-cloud.upjet.crossplane.io_certificates.yaml @@ -176,10 +176,12 @@ spec: items: properties: challengeCount: - description: |- - . Expected number of challenge count needed to validate certificate. - Resource creation will fail if the specified value does not match the actual number of challenges received from issue provider. - This argument is helpful for safe automatic resource creation for passing challenges for multi-domain certificates. + description: . Expected number of challenge count needed + to validate certificate. Resource creation will fail if + the specified value does not match the actual number of + challenges received from issue provider. This argument + is helpful for safe automatic resource creation for passing + challenges for multi-domain certificates. type: number challengeType: description: 'Domain owner-check method. Possible values:' @@ -346,10 +348,12 @@ spec: items: properties: challengeCount: - description: |- - . Expected number of challenge count needed to validate certificate. - Resource creation will fail if the specified value does not match the actual number of challenges received from issue provider. - This argument is helpful for safe automatic resource creation for passing challenges for multi-domain certificates. + description: . Expected number of challenge count needed + to validate certificate. Resource creation will fail if + the specified value does not match the actual number of + challenges received from issue provider. This argument + is helpful for safe automatic resource creation for passing + challenges for multi-domain certificates. type: number challengeType: description: 'Domain owner-check method. Possible values:' @@ -655,10 +659,12 @@ spec: items: properties: challengeCount: - description: |- - . Expected number of challenge count needed to validate certificate. - Resource creation will fail if the specified value does not match the actual number of challenges received from issue provider. - This argument is helpful for safe automatic resource creation for passing challenges for multi-domain certificates. + description: . Expected number of challenge count needed + to validate certificate. Resource creation will fail if + the specified value does not match the actual number of + challenges received from issue provider. This argument + is helpful for safe automatic resource creation for passing + challenges for multi-domain certificates. type: number challengeType: description: 'Domain owner-check method. Possible values:' @@ -702,7 +708,7 @@ spec: description: Certificate serial number. type: string status: - description: 'Certificate status: "VALIDATING", "INVALID", "ISSUED", + description: 'Certificate status: "VALIDATING", "INVALID", "ISSUED", "REVOKED", "RENEWING" or "RENEWAL_FAILED".' type: string subject: diff --git a/package/crds/compute.yandex-cloud.upjet.crossplane.io_diskiambindings.yaml b/package/crds/compute.yandex-cloud.upjet.crossplane.io_diskiambindings.yaml index f6c8d78..2376138 100644 --- a/package/crds/compute.yandex-cloud.upjet.crossplane.io_diskiambindings.yaml +++ b/package/crds/compute.yandex-cloud.upjet.crossplane.io_diskiambindings.yaml @@ -77,17 +77,16 @@ spec: description: ID of the disk to attach the policy to. type: string members: - description: |- - An array of identities that will be granted the privilege in the role. - Each entry can have one of the following values: + description: 'An array of identities that will be granted the + privilege in the role. Each entry can have one of the following + values:' items: type: string type: array x-kubernetes-list-type: set role: - description: |- - The role that should be assigned. Only one - yandex_compute_disk_iam_binding can be used per role. + description: The role that should be assigned. Only one yandex_compute_disk_iam_binding + can be used per role. type: string type: object initProvider: @@ -107,17 +106,16 @@ spec: description: ID of the disk to attach the policy to. type: string members: - description: |- - An array of identities that will be granted the privilege in the role. - Each entry can have one of the following values: + description: 'An array of identities that will be granted the + privilege in the role. Each entry can have one of the following + values:' items: type: string type: array x-kubernetes-list-type: set role: - description: |- - The role that should be assigned. Only one - yandex_compute_disk_iam_binding can be used per role. + description: The role that should be assigned. Only one yandex_compute_disk_iam_binding + can be used per role. type: string type: object managementPolicies: @@ -311,17 +309,16 @@ spec: id: type: string members: - description: |- - An array of identities that will be granted the privilege in the role. - Each entry can have one of the following values: + description: 'An array of identities that will be granted the + privilege in the role. Each entry can have one of the following + values:' items: type: string type: array x-kubernetes-list-type: set role: - description: |- - The role that should be assigned. Only one - yandex_compute_disk_iam_binding can be used per role. + description: The role that should be assigned. Only one yandex_compute_disk_iam_binding + can be used per role. type: string type: object conditions: diff --git a/package/crds/compute.yandex-cloud.upjet.crossplane.io_diskplacementgroupiambindings.yaml b/package/crds/compute.yandex-cloud.upjet.crossplane.io_diskplacementgroupiambindings.yaml index 01c62ab..6d61055 100644 --- a/package/crds/compute.yandex-cloud.upjet.crossplane.io_diskplacementgroupiambindings.yaml +++ b/package/crds/compute.yandex-cloud.upjet.crossplane.io_diskplacementgroupiambindings.yaml @@ -79,17 +79,16 @@ spec: to. type: string members: - description: |- - An array of identities that will be granted the privilege in the role. - Each entry can have one of the following values: + description: 'An array of identities that will be granted the + privilege in the role. Each entry can have one of the following + values:' items: type: string type: array x-kubernetes-list-type: set role: - description: |- - The role that should be assigned. Only one - yandex_compute_disk_placement_group_iam_binding can be used per role. + description: The role that should be assigned. Only one yandex_compute_disk_placement_group_iam_binding + can be used per role. type: string type: object initProvider: @@ -110,17 +109,16 @@ spec: to. type: string members: - description: |- - An array of identities that will be granted the privilege in the role. - Each entry can have one of the following values: + description: 'An array of identities that will be granted the + privilege in the role. Each entry can have one of the following + values:' items: type: string type: array x-kubernetes-list-type: set role: - description: |- - The role that should be assigned. Only one - yandex_compute_disk_placement_group_iam_binding can be used per role. + description: The role that should be assigned. Only one yandex_compute_disk_placement_group_iam_binding + can be used per role. type: string type: object managementPolicies: @@ -316,17 +314,16 @@ spec: id: type: string members: - description: |- - An array of identities that will be granted the privilege in the role. - Each entry can have one of the following values: + description: 'An array of identities that will be granted the + privilege in the role. Each entry can have one of the following + values:' items: type: string type: array x-kubernetes-list-type: set role: - description: |- - The role that should be assigned. Only one - yandex_compute_disk_placement_group_iam_binding can be used per role. + description: The role that should be assigned. Only one yandex_compute_disk_placement_group_iam_binding + can be used per role. type: string type: object conditions: diff --git a/package/crds/compute.yandex-cloud.upjet.crossplane.io_diskplacementgroups.yaml b/package/crds/compute.yandex-cloud.upjet.crossplane.io_diskplacementgroups.yaml index 2827103..9bb472e 100644 --- a/package/crds/compute.yandex-cloud.upjet.crossplane.io_diskplacementgroups.yaml +++ b/package/crds/compute.yandex-cloud.upjet.crossplane.io_diskplacementgroups.yaml @@ -168,6 +168,7 @@ spec: type: string zone: description: ID of the zone where the Disk Placement Group resides. + Default is ru-central1-b type: string type: object initProvider: @@ -278,6 +279,7 @@ spec: type: string zone: description: ID of the zone where the Disk Placement Group resides. + Default is ru-central1-b type: string type: object managementPolicies: @@ -478,6 +480,7 @@ spec: type: string zone: description: ID of the zone where the Disk Placement Group resides. + Default is ru-central1-b type: string type: object conditions: diff --git a/package/crds/compute.yandex-cloud.upjet.crossplane.io_disks.yaml b/package/crds/compute.yandex-cloud.upjet.crossplane.io_disks.yaml index 8ca98af..e1bdb83 100644 --- a/package/crds/compute.yandex-cloud.upjet.crossplane.io_disks.yaml +++ b/package/crds/compute.yandex-cloud.upjet.crossplane.io_disks.yaml @@ -81,8 +81,7 @@ spec: description: Block size of the disk, specified in bytes. type: number description: - description: |- - Description of the disk. Provide this property when + description: Description of the disk. Provide this property when you create a resource. type: string diskPlacementPolicy: @@ -172,9 +171,8 @@ spec: type: object type: array folderId: - description: |- - The ID of the folder that the disk belongs to. - If it is not provided, the default provider folder is used. + description: The ID of the folder that the disk belongs to. If + it is not provided, the default provider folder is used. type: string folderIdRef: description: Reference to a Folder in resourcemanager to populate @@ -252,6 +250,33 @@ spec: type: string type: object type: object + hardwareGeneration: + description: |- + Hardware generation and its features, + which will be applied to the instance when this disk is used as a boot + disk. Provide this property if you wish to override this value, which + otherwise is inherited from the source. The structure is documented below. + items: + properties: + generation2Features: + description: A newer hardware generation, which always uses + PCI_TOPOLOGY_V2 and UEFI boot. + items: + type: object + type: array + legacyFeatures: + description: 'Defines the first known hardware generation + and its features, which are:' + items: + properties: + pciTopology: + description: A variant of PCI topology, one of PCI_TOPOLOGY_V1 + or PCI_TOPOLOGY_V2. + type: string + type: object + type: array + type: object + type: array imageId: description: The source image to use for disk creation. type: string @@ -337,18 +362,16 @@ spec: type: object x-kubernetes-map-type: granular name: - description: |- - Name of the disk. Provide this property when - you create a resource. + description: Name of the disk. Provide this property when you + create a resource. type: string size: - description: |- - Size of the persistent disk, specified in GB. You can specify this - field when creating a persistent disk using the image_id or snapshot_id - parameter, or specify it alone to create an empty persistent disk. - If you specify this field along with image_id or snapshot_id, - the size value must not be less than the size of the source image - or the size of the snapshot. + description: Size of the persistent disk, specified in GB. You + can specify this field when creating a persistent disk using + the image_id or snapshot_id parameter, or specify it alone to + create an empty persistent disk. If you specify this field along + with image_id or snapshot_id, the size value must not be less + than the size of the source image or the size of the snapshot. type: number snapshotId: description: The source snapshot to use for disk creation. @@ -381,8 +404,7 @@ spec: description: Block size of the disk, specified in bytes. type: number description: - description: |- - Description of the disk. Provide this property when + description: Description of the disk. Provide this property when you create a resource. type: string diskPlacementPolicy: @@ -472,9 +494,8 @@ spec: type: object type: array folderId: - description: |- - The ID of the folder that the disk belongs to. - If it is not provided, the default provider folder is used. + description: The ID of the folder that the disk belongs to. If + it is not provided, the default provider folder is used. type: string folderIdRef: description: Reference to a Folder in resourcemanager to populate @@ -552,6 +573,33 @@ spec: type: string type: object type: object + hardwareGeneration: + description: |- + Hardware generation and its features, + which will be applied to the instance when this disk is used as a boot + disk. Provide this property if you wish to override this value, which + otherwise is inherited from the source. The structure is documented below. + items: + properties: + generation2Features: + description: A newer hardware generation, which always uses + PCI_TOPOLOGY_V2 and UEFI boot. + items: + type: object + type: array + legacyFeatures: + description: 'Defines the first known hardware generation + and its features, which are:' + items: + properties: + pciTopology: + description: A variant of PCI topology, one of PCI_TOPOLOGY_V1 + or PCI_TOPOLOGY_V2. + type: string + type: object + type: array + type: object + type: array imageId: description: The source image to use for disk creation. type: string @@ -637,18 +685,16 @@ spec: type: object x-kubernetes-map-type: granular name: - description: |- - Name of the disk. Provide this property when - you create a resource. + description: Name of the disk. Provide this property when you + create a resource. type: string size: - description: |- - Size of the persistent disk, specified in GB. You can specify this - field when creating a persistent disk using the image_id or snapshot_id - parameter, or specify it alone to create an empty persistent disk. - If you specify this field along with image_id or snapshot_id, - the size value must not be less than the size of the source image - or the size of the snapshot. + description: Size of the persistent disk, specified in GB. You + can specify this field when creating a persistent disk using + the image_id or snapshot_id parameter, or specify it alone to + create an empty persistent disk. If you specify this field along + with image_id or snapshot_id, the size value must not be less + than the size of the source image or the size of the snapshot. type: number snapshotId: description: The source snapshot to use for disk creation. @@ -843,8 +889,7 @@ spec: description: Creation timestamp of the disk. type: string description: - description: |- - Description of the disk. Provide this property when + description: Description of the disk. Provide this property when you create a resource. type: string diskPlacementPolicy: @@ -858,10 +903,36 @@ spec: type: object type: array folderId: - description: |- - The ID of the folder that the disk belongs to. - If it is not provided, the default provider folder is used. + description: The ID of the folder that the disk belongs to. If + it is not provided, the default provider folder is used. type: string + hardwareGeneration: + description: |- + Hardware generation and its features, + which will be applied to the instance when this disk is used as a boot + disk. Provide this property if you wish to override this value, which + otherwise is inherited from the source. The structure is documented below. + items: + properties: + generation2Features: + description: A newer hardware generation, which always uses + PCI_TOPOLOGY_V2 and UEFI boot. + items: + type: object + type: array + legacyFeatures: + description: 'Defines the first known hardware generation + and its features, which are:' + items: + properties: + pciTopology: + description: A variant of PCI topology, one of PCI_TOPOLOGY_V1 + or PCI_TOPOLOGY_V2. + type: string + type: object + type: array + type: object + type: array id: type: string imageId: @@ -875,22 +946,20 @@ spec: type: object x-kubernetes-map-type: granular name: - description: |- - Name of the disk. Provide this property when - you create a resource. + description: Name of the disk. Provide this property when you + create a resource. type: string productIds: items: type: string type: array size: - description: |- - Size of the persistent disk, specified in GB. You can specify this - field when creating a persistent disk using the image_id or snapshot_id - parameter, or specify it alone to create an empty persistent disk. - If you specify this field along with image_id or snapshot_id, - the size value must not be less than the size of the source image - or the size of the snapshot. + description: Size of the persistent disk, specified in GB. You + can specify this field when creating a persistent disk using + the image_id or snapshot_id parameter, or specify it alone to + create an empty persistent disk. If you specify this field along + with image_id or snapshot_id, the size value must not be less + than the size of the source image or the size of the snapshot. type: number snapshotId: description: The source snapshot to use for disk creation. diff --git a/package/crds/compute.yandex-cloud.upjet.crossplane.io_filesystemiambindings.yaml b/package/crds/compute.yandex-cloud.upjet.crossplane.io_filesystemiambindings.yaml index e2fdde1..c1ed57d 100644 --- a/package/crds/compute.yandex-cloud.upjet.crossplane.io_filesystemiambindings.yaml +++ b/package/crds/compute.yandex-cloud.upjet.crossplane.io_filesystemiambindings.yaml @@ -77,17 +77,16 @@ spec: description: ID of the filesystem to attach the policy to. type: string members: - description: |- - An array of identities that will be granted the privilege in the role. - Each entry can have one of the following values: + description: 'An array of identities that will be granted the + privilege in the role. Each entry can have one of the following + values:' items: type: string type: array x-kubernetes-list-type: set role: - description: |- - The role that should be assigned. Only one - yandex_compute_filesystem_iam_binding can be used per role. + description: The role that should be assigned. Only one yandex_compute_filesystem_iam_binding + can be used per role. type: string type: object initProvider: @@ -107,17 +106,16 @@ spec: description: ID of the filesystem to attach the policy to. type: string members: - description: |- - An array of identities that will be granted the privilege in the role. - Each entry can have one of the following values: + description: 'An array of identities that will be granted the + privilege in the role. Each entry can have one of the following + values:' items: type: string type: array x-kubernetes-list-type: set role: - description: |- - The role that should be assigned. Only one - yandex_compute_filesystem_iam_binding can be used per role. + description: The role that should be assigned. Only one yandex_compute_filesystem_iam_binding + can be used per role. type: string type: object managementPolicies: @@ -312,17 +310,16 @@ spec: id: type: string members: - description: |- - An array of identities that will be granted the privilege in the role. - Each entry can have one of the following values: + description: 'An array of identities that will be granted the + privilege in the role. Each entry can have one of the following + values:' items: type: string type: array x-kubernetes-list-type: set role: - description: |- - The role that should be assigned. Only one - yandex_compute_filesystem_iam_binding can be used per role. + description: The role that should be assigned. Only one yandex_compute_filesystem_iam_binding + can be used per role. type: string type: object conditions: diff --git a/package/crds/compute.yandex-cloud.upjet.crossplane.io_filesystems.yaml b/package/crds/compute.yandex-cloud.upjet.crossplane.io_filesystems.yaml index 0f70db2..5c94e45 100644 --- a/package/crds/compute.yandex-cloud.upjet.crossplane.io_filesystems.yaml +++ b/package/crds/compute.yandex-cloud.upjet.crossplane.io_filesystems.yaml @@ -82,9 +82,8 @@ spec: when you create a resource. type: string folderId: - description: |- - The ID of the folder that the filesystem belongs to. If it is not provided, the default - provider folder is used. + description: The ID of the folder that the filesystem belongs + to. If it is not provided, the default provider folder is used. type: string folderIdRef: description: Reference to a Folder in resourcemanager to populate @@ -165,9 +164,8 @@ spec: labels: additionalProperties: type: string - description: |- - Labels to assign to this filesystem. A list of key/value pairs. For details about the concept, - see documentation. + description: Labels to assign to this filesystem. A list of key/value + pairs. For details about the concept, see documentation. type: object x-kubernetes-map-type: granular name: @@ -206,9 +204,8 @@ spec: when you create a resource. type: string folderId: - description: |- - The ID of the folder that the filesystem belongs to. If it is not provided, the default - provider folder is used. + description: The ID of the folder that the filesystem belongs + to. If it is not provided, the default provider folder is used. type: string folderIdRef: description: Reference to a Folder in resourcemanager to populate @@ -289,9 +286,8 @@ spec: labels: additionalProperties: type: string - description: |- - Labels to assign to this filesystem. A list of key/value pairs. For details about the concept, - see documentation. + description: Labels to assign to this filesystem. A list of key/value + pairs. For details about the concept, see documentation. type: object x-kubernetes-map-type: granular name: @@ -492,18 +488,16 @@ spec: when you create a resource. type: string folderId: - description: |- - The ID of the folder that the filesystem belongs to. If it is not provided, the default - provider folder is used. + description: The ID of the folder that the filesystem belongs + to. If it is not provided, the default provider folder is used. type: string id: type: string labels: additionalProperties: type: string - description: |- - Labels to assign to this filesystem. A list of key/value pairs. For details about the concept, - see documentation. + description: Labels to assign to this filesystem. A list of key/value + pairs. For details about the concept, see documentation. type: object x-kubernetes-map-type: granular name: diff --git a/package/crds/compute.yandex-cloud.upjet.crossplane.io_gpuclusteriambindings.yaml b/package/crds/compute.yandex-cloud.upjet.crossplane.io_gpuclusteriambindings.yaml index a69778c..b5facab 100644 --- a/package/crds/compute.yandex-cloud.upjet.crossplane.io_gpuclusteriambindings.yaml +++ b/package/crds/compute.yandex-cloud.upjet.crossplane.io_gpuclusteriambindings.yaml @@ -77,17 +77,16 @@ spec: description: ID of the gpu cluster to attach the policy to. type: string members: - description: |- - An array of identities that will be granted the privilege in the role. - Each entry can have one of the following values: + description: 'An array of identities that will be granted the + privilege in the role. Each entry can have one of the following + values:' items: type: string type: array x-kubernetes-list-type: set role: - description: |- - The role that should be assigned. Only one - yandex_compute_gpu_cluster_iam_binding can be used per role. + description: The role that should be assigned. Only one yandex_compute_gpu_cluster_iam_binding + can be used per role. type: string type: object initProvider: @@ -107,17 +106,16 @@ spec: description: ID of the gpu cluster to attach the policy to. type: string members: - description: |- - An array of identities that will be granted the privilege in the role. - Each entry can have one of the following values: + description: 'An array of identities that will be granted the + privilege in the role. Each entry can have one of the following + values:' items: type: string type: array x-kubernetes-list-type: set role: - description: |- - The role that should be assigned. Only one - yandex_compute_gpu_cluster_iam_binding can be used per role. + description: The role that should be assigned. Only one yandex_compute_gpu_cluster_iam_binding + can be used per role. type: string type: object managementPolicies: @@ -312,17 +310,16 @@ spec: id: type: string members: - description: |- - An array of identities that will be granted the privilege in the role. - Each entry can have one of the following values: + description: 'An array of identities that will be granted the + privilege in the role. Each entry can have one of the following + values:' items: type: string type: array x-kubernetes-list-type: set role: - description: |- - The role that should be assigned. Only one - yandex_compute_gpu_cluster_iam_binding can be used per role. + description: The role that should be assigned. Only one yandex_compute_gpu_cluster_iam_binding + can be used per role. type: string type: object conditions: diff --git a/package/crds/compute.yandex-cloud.upjet.crossplane.io_gpuclusters.yaml b/package/crds/compute.yandex-cloud.upjet.crossplane.io_gpuclusters.yaml index 7af46e9..cc56b31 100644 --- a/package/crds/compute.yandex-cloud.upjet.crossplane.io_gpuclusters.yaml +++ b/package/crds/compute.yandex-cloud.upjet.crossplane.io_gpuclusters.yaml @@ -79,9 +79,8 @@ spec: when you create a resource. type: string folderId: - description: |- - The ID of the folder that the GPU cluster belongs to. If it is not provided, the default - provider folder is used. + description: The ID of the folder that the GPU cluster belongs + to. If it is not provided, the default provider folder is used. type: string folderIdRef: description: Reference to a Folder in resourcemanager to populate @@ -160,16 +159,15 @@ spec: type: object type: object interconnectType: - description: |- - Type of interconnect between nodes to use in GPU cluster. Type infiniband is set by default, - and it is the only one available at the moment. + description: Type of interconnect between nodes to use in GPU + cluster. Type infiniband is set by default, and it is the only + one available at the moment. type: string labels: additionalProperties: type: string - description: |- - Labels to assign to this GPU cluster. A list of key/value pairs. For details about the concept, - see documentation. + description: Labels to assign to this GPU cluster. A list of key/value + pairs. For details about the concept, see documentation. type: object x-kubernetes-map-type: granular name: @@ -198,9 +196,8 @@ spec: when you create a resource. type: string folderId: - description: |- - The ID of the folder that the GPU cluster belongs to. If it is not provided, the default - provider folder is used. + description: The ID of the folder that the GPU cluster belongs + to. If it is not provided, the default provider folder is used. type: string folderIdRef: description: Reference to a Folder in resourcemanager to populate @@ -279,16 +276,15 @@ spec: type: object type: object interconnectType: - description: |- - Type of interconnect between nodes to use in GPU cluster. Type infiniband is set by default, - and it is the only one available at the moment. + description: Type of interconnect between nodes to use in GPU + cluster. Type infiniband is set by default, and it is the only + one available at the moment. type: string labels: additionalProperties: type: string - description: |- - Labels to assign to this GPU cluster. A list of key/value pairs. For details about the concept, - see documentation. + description: Labels to assign to this GPU cluster. A list of key/value + pairs. For details about the concept, see documentation. type: object x-kubernetes-map-type: granular name: @@ -479,23 +475,21 @@ spec: when you create a resource. type: string folderId: - description: |- - The ID of the folder that the GPU cluster belongs to. If it is not provided, the default - provider folder is used. + description: The ID of the folder that the GPU cluster belongs + to. If it is not provided, the default provider folder is used. type: string id: type: string interconnectType: - description: |- - Type of interconnect between nodes to use in GPU cluster. Type infiniband is set by default, - and it is the only one available at the moment. + description: Type of interconnect between nodes to use in GPU + cluster. Type infiniband is set by default, and it is the only + one available at the moment. type: string labels: additionalProperties: type: string - description: |- - Labels to assign to this GPU cluster. A list of key/value pairs. For details about the concept, - see documentation. + description: Labels to assign to this GPU cluster. A list of key/value + pairs. For details about the concept, see documentation. type: object x-kubernetes-map-type: granular name: diff --git a/package/crds/compute.yandex-cloud.upjet.crossplane.io_imageiambindings.yaml b/package/crds/compute.yandex-cloud.upjet.crossplane.io_imageiambindings.yaml index 41e0567..0a5ef7a 100644 --- a/package/crds/compute.yandex-cloud.upjet.crossplane.io_imageiambindings.yaml +++ b/package/crds/compute.yandex-cloud.upjet.crossplane.io_imageiambindings.yaml @@ -77,17 +77,16 @@ spec: description: ID of the image to attach the policy to. type: string members: - description: |- - An array of identities that will be granted the privilege in the role. - Each entry can have one of the following values: + description: 'An array of identities that will be granted the + privilege in the role. Each entry can have one of the following + values:' items: type: string type: array x-kubernetes-list-type: set role: - description: |- - The role that should be assigned. Only one - yandex_compute_image_iam_binding can be used per role. + description: The role that should be assigned. Only one yandex_compute_image_iam_binding + can be used per role. type: string type: object initProvider: @@ -107,17 +106,16 @@ spec: description: ID of the image to attach the policy to. type: string members: - description: |- - An array of identities that will be granted the privilege in the role. - Each entry can have one of the following values: + description: 'An array of identities that will be granted the + privilege in the role. Each entry can have one of the following + values:' items: type: string type: array x-kubernetes-list-type: set role: - description: |- - The role that should be assigned. Only one - yandex_compute_image_iam_binding can be used per role. + description: The role that should be assigned. Only one yandex_compute_image_iam_binding + can be used per role. type: string type: object managementPolicies: @@ -311,17 +309,16 @@ spec: description: ID of the image to attach the policy to. type: string members: - description: |- - An array of identities that will be granted the privilege in the role. - Each entry can have one of the following values: + description: 'An array of identities that will be granted the + privilege in the role. Each entry can have one of the following + values:' items: type: string type: array x-kubernetes-list-type: set role: - description: |- - The role that should be assigned. Only one - yandex_compute_image_iam_binding can be used per role. + description: The role that should be assigned. Only one yandex_compute_image_iam_binding + can be used per role. type: string type: object conditions: diff --git a/package/crds/compute.yandex-cloud.upjet.crossplane.io_images.yaml b/package/crds/compute.yandex-cloud.upjet.crossplane.io_images.yaml index 869f601..9ab0952 100644 --- a/package/crds/compute.yandex-cloud.upjet.crossplane.io_images.yaml +++ b/package/crds/compute.yandex-cloud.upjet.crossplane.io_images.yaml @@ -74,18 +74,16 @@ spec: forProvider: properties: description: - description: |- - An optional description of the image. Provide this property when - you create a resource. + description: An optional description of the image. Provide this + property when you create a resource. type: string family: description: The name of the image family to which this image belongs. type: string folderId: - description: |- - The ID of the folder that the resource belongs to. If it - is not provided, the default provider folder is used. + description: The ID of the folder that the resource belongs to. + If it is not provided, the default provider folder is used. type: string folderIdRef: description: Reference to a Folder in resourcemanager to populate @@ -163,6 +161,22 @@ spec: type: string type: object type: object + hardwareGeneration: + items: + properties: + generation2Features: + items: + type: object + type: array + legacyFeatures: + items: + properties: + pciTopology: + type: string + type: object + type: array + type: object + type: array labels: additionalProperties: type: string @@ -184,38 +198,32 @@ spec: description: Optimize the image to create a disk. type: boolean productIds: - description: |- - License IDs that indicate which licenses are - attached to this image. + description: License IDs that indicate which licenses are attached + to this image. items: type: string type: array x-kubernetes-list-type: set sourceDisk: - description: |- - The ID of a disk to use as the source of the - image. Changing this ID forces a new resource to be created. + description: The ID of a disk to use as the source of the image. + Changing this ID forces a new resource to be created. type: string sourceFamily: - description: |- - The name of the family to use as the source of the new image. - The ID of the latest image is taken from the "standard-images" folder. Changing the family forces - a new resource to be created. + description: The name of the family to use as the source of the + new image. The ID of the latest image is taken from the "standard-images" + folder. Changing the family forces a new resource to be created. type: string sourceImage: - description: |- - The ID of an existing image to use as the source of the - image. Changing this ID forces a new resource to be created. + description: The ID of an existing image to use as the source + of the image. Changing this ID forces a new resource to be created. type: string sourceSnapshot: - description: |- - The ID of a snapshot to use as the source of the + description: The ID of a snapshot to use as the source of the image. Changing this ID forces a new resource to be created. type: string sourceUrl: - description: |- - The URL to use as the source of the - image. Changing this URL forces a new resource to be created. + description: The URL to use as the source of the image. Changing + this URL forces a new resource to be created. type: string type: object initProvider: @@ -232,18 +240,16 @@ spec: autoscaler. properties: description: - description: |- - An optional description of the image. Provide this property when - you create a resource. + description: An optional description of the image. Provide this + property when you create a resource. type: string family: description: The name of the image family to which this image belongs. type: string folderId: - description: |- - The ID of the folder that the resource belongs to. If it - is not provided, the default provider folder is used. + description: The ID of the folder that the resource belongs to. + If it is not provided, the default provider folder is used. type: string folderIdRef: description: Reference to a Folder in resourcemanager to populate @@ -321,6 +327,22 @@ spec: type: string type: object type: object + hardwareGeneration: + items: + properties: + generation2Features: + items: + type: object + type: array + legacyFeatures: + items: + properties: + pciTopology: + type: string + type: object + type: array + type: object + type: array labels: additionalProperties: type: string @@ -342,38 +364,32 @@ spec: description: Optimize the image to create a disk. type: boolean productIds: - description: |- - License IDs that indicate which licenses are - attached to this image. + description: License IDs that indicate which licenses are attached + to this image. items: type: string type: array x-kubernetes-list-type: set sourceDisk: - description: |- - The ID of a disk to use as the source of the - image. Changing this ID forces a new resource to be created. + description: The ID of a disk to use as the source of the image. + Changing this ID forces a new resource to be created. type: string sourceFamily: - description: |- - The name of the family to use as the source of the new image. - The ID of the latest image is taken from the "standard-images" folder. Changing the family forces - a new resource to be created. + description: The name of the family to use as the source of the + new image. The ID of the latest image is taken from the "standard-images" + folder. Changing the family forces a new resource to be created. type: string sourceImage: - description: |- - The ID of an existing image to use as the source of the - image. Changing this ID forces a new resource to be created. + description: The ID of an existing image to use as the source + of the image. Changing this ID forces a new resource to be created. type: string sourceSnapshot: - description: |- - The ID of a snapshot to use as the source of the + description: The ID of a snapshot to use as the source of the image. Changing this ID forces a new resource to be created. type: string sourceUrl: - description: |- - The URL to use as the source of the - image. Changing this URL forces a new resource to be created. + description: The URL to use as the source of the image. Changing + this URL forces a new resource to be created. type: string type: object managementPolicies: @@ -552,19 +568,33 @@ spec: description: Creation timestamp of the image. type: string description: - description: |- - An optional description of the image. Provide this property when - you create a resource. + description: An optional description of the image. Provide this + property when you create a resource. type: string family: description: The name of the image family to which this image belongs. type: string folderId: - description: |- - The ID of the folder that the resource belongs to. If it - is not provided, the default provider folder is used. + description: The ID of the folder that the resource belongs to. + If it is not provided, the default provider folder is used. type: string + hardwareGeneration: + items: + properties: + generation2Features: + items: + type: object + type: array + legacyFeatures: + items: + properties: + pciTopology: + type: string + type: object + type: array + type: object + type: array id: type: string labels: @@ -588,9 +618,8 @@ spec: description: Optimize the image to create a disk. type: boolean productIds: - description: |- - License IDs that indicate which licenses are - attached to this image. + description: License IDs that indicate which licenses are attached + to this image. items: type: string type: array @@ -599,30 +628,25 @@ spec: description: The size of the image, specified in GB. type: number sourceDisk: - description: |- - The ID of a disk to use as the source of the - image. Changing this ID forces a new resource to be created. + description: The ID of a disk to use as the source of the image. + Changing this ID forces a new resource to be created. type: string sourceFamily: - description: |- - The name of the family to use as the source of the new image. - The ID of the latest image is taken from the "standard-images" folder. Changing the family forces - a new resource to be created. + description: The name of the family to use as the source of the + new image. The ID of the latest image is taken from the "standard-images" + folder. Changing the family forces a new resource to be created. type: string sourceImage: - description: |- - The ID of an existing image to use as the source of the - image. Changing this ID forces a new resource to be created. + description: The ID of an existing image to use as the source + of the image. Changing this ID forces a new resource to be created. type: string sourceSnapshot: - description: |- - The ID of a snapshot to use as the source of the + description: The ID of a snapshot to use as the source of the image. Changing this ID forces a new resource to be created. type: string sourceUrl: - description: |- - The URL to use as the source of the - image. Changing this URL forces a new resource to be created. + description: The URL to use as the source of the image. Changing + this URL forces a new resource to be created. type: string status: description: The status of the image. diff --git a/package/crds/compute.yandex-cloud.upjet.crossplane.io_instancegroups.yaml b/package/crds/compute.yandex-cloud.upjet.crossplane.io_instancegroups.yaml index 7852ae4..b420d33 100644 --- a/package/crds/compute.yandex-cloud.upjet.crossplane.io_instancegroups.yaml +++ b/package/crds/compute.yandex-cloud.upjet.crossplane.io_instancegroups.yaml @@ -147,26 +147,28 @@ spec: deleted at the same time. type: number maxExpansion: - description: |- - The maximum number of instances that can be temporarily allocated above the group's target size - during the update process. + description: The maximum number of instances that can be + temporarily allocated above the group's target size during + the update process. type: number maxUnavailable: - description: |- - The maximum number of running instances that can be taken offline (stopped or deleted) at the same time - during the update process. + description: The maximum number of running instances that + can be taken offline (stopped or deleted) at the same + time during the update process. type: number startupDuration: - description: |- - The amount of time in seconds to allow for an instance to start. - Instance will be considered up and running (and start receiving traffic) only after the startup_duration + description: The amount of time in seconds to allow for + an instance to start. Instance will be considered up and + running (and start receiving traffic) only after the startup_duration has elapsed and all health checks are passed. type: number strategy: - description: |- - Affects the lifecycle of the instance during deployment. If set to proactive (default), Instance Groups - can forcefully stop a running instance. If opportunistic, Instance Groups does not stop a running instance. Instead, - it will wait until the instance stops itself or becomes unhealthy. + description: Affects the lifecycle of the instance during + deployment. If set to proactive (default), Instance Groups + can forcefully stop a running instance. If opportunistic, + Instance Groups does not stop a running instance. Instead, + it will wait until the instance stops itself or becomes + unhealthy. type: string type: object type: array @@ -509,7 +511,7 @@ spec: items: properties: dnsRecord: - description: List of dns records. The structure is + description: List of dns records. The structure is documented below. items: properties: @@ -543,7 +545,7 @@ spec: description: Manual set static IPv6 address. type: string ipv6DnsRecord: - description: List of ipv6 dns records. The structure + description: List of ipv6 dns records. The structure is documented below. items: properties: @@ -568,7 +570,7 @@ spec: description: Flag for using NAT. type: boolean natDnsRecord: - description: List of nat dns records. The structure + description: List of nat dns records. The structure is documented below. items: properties: @@ -1007,6 +1009,10 @@ spec: The structure is documented below. items: properties: + autoScaleType: + description: . Autoscale type, can be ZONAL or REGIONAL. + By default ZONAL type is used. + type: string cpuUtilizationTarget: description: Target CPU load level. type: number @@ -1033,12 +1039,16 @@ spec: description: Metric type, GAUGE or COUNTER. type: string ruleType: - description: |- - Rule type: UTILIZATION - This type means that the metric applies to one instance. - First, Instance Groups calculates the average metric value for each instance, - then averages the values for instances in one availability zone. - This type of metric must have the instance_id label. WORKLOAD - This type means that the metric applies to instances in one availability zone. - This type of metric must have the zone_id label. + description: 'Rule type: UTILIZATION - This + type means that the metric applies to one + instance. First, Instance Groups calculates + the average metric value for each instance, + then averages the values for instances in + one availability zone. This type of metric + must have the instance_id label. WORKLOAD + - This type means that the metric applies + to instances in one availability zone. This + type of metric must have the zone_id label.' type: string service: description: Service of custom metric in Yandex @@ -1058,25 +1068,28 @@ spec: in the group. type: number measurementDuration: - description: |- - The amount of time, in seconds, that metrics are averaged for. - If the average value at the end of the interval is higher than the cpu_utilization_target, - the instance group will increase the number of virtual machines in the group. + description: The amount of time, in seconds, that + metrics are averaged for. If the average value at + the end of the interval is higher than the cpu_utilization_target, + the instance group will increase the number of virtual + machines in the group. type: number minZoneSize: description: The minimum number of virtual machines in a single availability zone. type: number stabilizationDuration: - description: |- - The minimum time interval, in seconds, to monitor the load before - an instance group can reduce the number of virtual machines in the group. During this time, the group - will not decrease even if the average load falls below the value of cpu_utilization_target. + description: The minimum time interval, in seconds, + to monitor the load before an instance group can + reduce the number of virtual machines in the group. + During this time, the group will not decrease even + if the average load falls below the value of cpu_utilization_target. type: number warmupDuration: - description: |- - The warm-up time of the virtual machine, in seconds. During this time, - traffic is fed to the virtual machine, but load metrics are not taken into account. + description: The warm-up time of the virtual machine, + in seconds. During this time, traffic is fed to + the virtual machine, but load metrics are not taken + into account. type: number type: object type: array @@ -1096,6 +1109,10 @@ spec: is documented below. items: properties: + autoScaleType: + description: . Autoscale type, can be ZONAL or REGIONAL. + By default ZONAL type is used. + type: string cpuUtilizationTarget: description: Target CPU load level. type: number @@ -1122,12 +1139,16 @@ spec: description: Metric type, GAUGE or COUNTER. type: string ruleType: - description: |- - Rule type: UTILIZATION - This type means that the metric applies to one instance. - First, Instance Groups calculates the average metric value for each instance, - then averages the values for instances in one availability zone. - This type of metric must have the instance_id label. WORKLOAD - This type means that the metric applies to instances in one availability zone. - This type of metric must have the zone_id label. + description: 'Rule type: UTILIZATION - This + type means that the metric applies to one + instance. First, Instance Groups calculates + the average metric value for each instance, + then averages the values for instances in + one availability zone. This type of metric + must have the instance_id label. WORKLOAD + - This type means that the metric applies + to instances in one availability zone. This + type of metric must have the zone_id label.' type: string service: description: Service of custom metric in Yandex @@ -1147,25 +1168,28 @@ spec: in the group. type: number measurementDuration: - description: |- - The amount of time, in seconds, that metrics are averaged for. - If the average value at the end of the interval is higher than the cpu_utilization_target, - the instance group will increase the number of virtual machines in the group. + description: The amount of time, in seconds, that + metrics are averaged for. If the average value at + the end of the interval is higher than the cpu_utilization_target, + the instance group will increase the number of virtual + machines in the group. type: number minZoneSize: description: The minimum number of virtual machines in a single availability zone. type: number stabilizationDuration: - description: |- - The minimum time interval, in seconds, to monitor the load before - an instance group can reduce the number of virtual machines in the group. During this time, the group - will not decrease even if the average load falls below the value of cpu_utilization_target. + description: The minimum time interval, in seconds, + to monitor the load before an instance group can + reduce the number of virtual machines in the group. + During this time, the group will not decrease even + if the average load falls below the value of cpu_utilization_target. type: number warmupDuration: - description: |- - The warm-up time of the virtual machine, in seconds. During this time, - traffic is fed to the virtual machine, but load metrics are not taken into account. + description: The warm-up time of the virtual machine, + in seconds. During this time, traffic is fed to + the virtual machine, but load metrics are not taken + into account. type: number type: object type: array @@ -1254,8 +1278,8 @@ spec: variables: additionalProperties: type: string - description: A set of key/value variables pairs to assign to - the instance group. + description: A set of key/value variables pairs to assign to the + instance group. type: object x-kubernetes-map-type: granular type: object @@ -1346,26 +1370,28 @@ spec: deleted at the same time. type: number maxExpansion: - description: |- - The maximum number of instances that can be temporarily allocated above the group's target size - during the update process. + description: The maximum number of instances that can be + temporarily allocated above the group's target size during + the update process. type: number maxUnavailable: - description: |- - The maximum number of running instances that can be taken offline (stopped or deleted) at the same time - during the update process. + description: The maximum number of running instances that + can be taken offline (stopped or deleted) at the same + time during the update process. type: number startupDuration: - description: |- - The amount of time in seconds to allow for an instance to start. - Instance will be considered up and running (and start receiving traffic) only after the startup_duration + description: The amount of time in seconds to allow for + an instance to start. Instance will be considered up and + running (and start receiving traffic) only after the startup_duration has elapsed and all health checks are passed. type: number strategy: - description: |- - Affects the lifecycle of the instance during deployment. If set to proactive (default), Instance Groups - can forcefully stop a running instance. If opportunistic, Instance Groups does not stop a running instance. Instead, - it will wait until the instance stops itself or becomes unhealthy. + description: Affects the lifecycle of the instance during + deployment. If set to proactive (default), Instance Groups + can forcefully stop a running instance. If opportunistic, + Instance Groups does not stop a running instance. Instead, + it will wait until the instance stops itself or becomes + unhealthy. type: string type: object type: array @@ -1708,7 +1734,7 @@ spec: items: properties: dnsRecord: - description: List of dns records. The structure is + description: List of dns records. The structure is documented below. items: properties: @@ -1742,7 +1768,7 @@ spec: description: Manual set static IPv6 address. type: string ipv6DnsRecord: - description: List of ipv6 dns records. The structure + description: List of ipv6 dns records. The structure is documented below. items: properties: @@ -1767,7 +1793,7 @@ spec: description: Flag for using NAT. type: boolean natDnsRecord: - description: List of nat dns records. The structure + description: List of nat dns records. The structure is documented below. items: properties: @@ -2206,6 +2232,10 @@ spec: The structure is documented below. items: properties: + autoScaleType: + description: . Autoscale type, can be ZONAL or REGIONAL. + By default ZONAL type is used. + type: string cpuUtilizationTarget: description: Target CPU load level. type: number @@ -2232,12 +2262,16 @@ spec: description: Metric type, GAUGE or COUNTER. type: string ruleType: - description: |- - Rule type: UTILIZATION - This type means that the metric applies to one instance. - First, Instance Groups calculates the average metric value for each instance, - then averages the values for instances in one availability zone. - This type of metric must have the instance_id label. WORKLOAD - This type means that the metric applies to instances in one availability zone. - This type of metric must have the zone_id label. + description: 'Rule type: UTILIZATION - This + type means that the metric applies to one + instance. First, Instance Groups calculates + the average metric value for each instance, + then averages the values for instances in + one availability zone. This type of metric + must have the instance_id label. WORKLOAD + - This type means that the metric applies + to instances in one availability zone. This + type of metric must have the zone_id label.' type: string service: description: Service of custom metric in Yandex @@ -2257,25 +2291,28 @@ spec: in the group. type: number measurementDuration: - description: |- - The amount of time, in seconds, that metrics are averaged for. - If the average value at the end of the interval is higher than the cpu_utilization_target, - the instance group will increase the number of virtual machines in the group. + description: The amount of time, in seconds, that + metrics are averaged for. If the average value at + the end of the interval is higher than the cpu_utilization_target, + the instance group will increase the number of virtual + machines in the group. type: number minZoneSize: description: The minimum number of virtual machines in a single availability zone. type: number stabilizationDuration: - description: |- - The minimum time interval, in seconds, to monitor the load before - an instance group can reduce the number of virtual machines in the group. During this time, the group - will not decrease even if the average load falls below the value of cpu_utilization_target. + description: The minimum time interval, in seconds, + to monitor the load before an instance group can + reduce the number of virtual machines in the group. + During this time, the group will not decrease even + if the average load falls below the value of cpu_utilization_target. type: number warmupDuration: - description: |- - The warm-up time of the virtual machine, in seconds. During this time, - traffic is fed to the virtual machine, but load metrics are not taken into account. + description: The warm-up time of the virtual machine, + in seconds. During this time, traffic is fed to + the virtual machine, but load metrics are not taken + into account. type: number type: object type: array @@ -2295,6 +2332,10 @@ spec: is documented below. items: properties: + autoScaleType: + description: . Autoscale type, can be ZONAL or REGIONAL. + By default ZONAL type is used. + type: string cpuUtilizationTarget: description: Target CPU load level. type: number @@ -2321,12 +2362,16 @@ spec: description: Metric type, GAUGE or COUNTER. type: string ruleType: - description: |- - Rule type: UTILIZATION - This type means that the metric applies to one instance. - First, Instance Groups calculates the average metric value for each instance, - then averages the values for instances in one availability zone. - This type of metric must have the instance_id label. WORKLOAD - This type means that the metric applies to instances in one availability zone. - This type of metric must have the zone_id label. + description: 'Rule type: UTILIZATION - This + type means that the metric applies to one + instance. First, Instance Groups calculates + the average metric value for each instance, + then averages the values for instances in + one availability zone. This type of metric + must have the instance_id label. WORKLOAD + - This type means that the metric applies + to instances in one availability zone. This + type of metric must have the zone_id label.' type: string service: description: Service of custom metric in Yandex @@ -2346,25 +2391,28 @@ spec: in the group. type: number measurementDuration: - description: |- - The amount of time, in seconds, that metrics are averaged for. - If the average value at the end of the interval is higher than the cpu_utilization_target, - the instance group will increase the number of virtual machines in the group. + description: The amount of time, in seconds, that + metrics are averaged for. If the average value at + the end of the interval is higher than the cpu_utilization_target, + the instance group will increase the number of virtual + machines in the group. type: number minZoneSize: description: The minimum number of virtual machines in a single availability zone. type: number stabilizationDuration: - description: |- - The minimum time interval, in seconds, to monitor the load before - an instance group can reduce the number of virtual machines in the group. During this time, the group - will not decrease even if the average load falls below the value of cpu_utilization_target. + description: The minimum time interval, in seconds, + to monitor the load before an instance group can + reduce the number of virtual machines in the group. + During this time, the group will not decrease even + if the average load falls below the value of cpu_utilization_target. type: number warmupDuration: - description: |- - The warm-up time of the virtual machine, in seconds. During this time, - traffic is fed to the virtual machine, but load metrics are not taken into account. + description: The warm-up time of the virtual machine, + in seconds. During this time, traffic is fed to + the virtual machine, but load metrics are not taken + into account. type: number type: object type: array @@ -2453,8 +2501,8 @@ spec: variables: additionalProperties: type: string - description: A set of key/value variables pairs to assign to - the instance group. + description: A set of key/value variables pairs to assign to the + instance group. type: object x-kubernetes-map-type: granular type: object @@ -2730,26 +2778,28 @@ spec: deleted at the same time. type: number maxExpansion: - description: |- - The maximum number of instances that can be temporarily allocated above the group's target size - during the update process. + description: The maximum number of instances that can be + temporarily allocated above the group's target size during + the update process. type: number maxUnavailable: - description: |- - The maximum number of running instances that can be taken offline (stopped or deleted) at the same time - during the update process. + description: The maximum number of running instances that + can be taken offline (stopped or deleted) at the same + time during the update process. type: number startupDuration: - description: |- - The amount of time in seconds to allow for an instance to start. - Instance will be considered up and running (and start receiving traffic) only after the startup_duration + description: The amount of time in seconds to allow for + an instance to start. Instance will be considered up and + running (and start receiving traffic) only after the startup_duration has elapsed and all health checks are passed. type: number strategy: - description: |- - Affects the lifecycle of the instance during deployment. If set to proactive (default), Instance Groups - can forcefully stop a running instance. If opportunistic, Instance Groups does not stop a running instance. Instead, - it will wait until the instance stops itself or becomes unhealthy. + description: Affects the lifecycle of the instance during + deployment. If set to proactive (default), Instance Groups + can forcefully stop a running instance. If opportunistic, + Instance Groups does not stop a running instance. Instead, + it will wait until the instance stops itself or becomes + unhealthy. type: string type: object type: array @@ -2943,7 +2993,7 @@ spec: items: properties: dnsRecord: - description: List of dns records. The structure is + description: List of dns records. The structure is documented below. items: properties: @@ -2977,7 +3027,7 @@ spec: description: Manual set static IPv6 address. type: string ipv6DnsRecord: - description: List of ipv6 dns records. The structure + description: List of ipv6 dns records. The structure is documented below. items: properties: @@ -3002,7 +3052,7 @@ spec: description: Flag for using NAT. type: boolean natDnsRecord: - description: List of nat dns records. The structure + description: List of nat dns records. The structure is documented below. items: properties: @@ -3285,6 +3335,10 @@ spec: The structure is documented below. items: properties: + autoScaleType: + description: . Autoscale type, can be ZONAL or REGIONAL. + By default ZONAL type is used. + type: string cpuUtilizationTarget: description: Target CPU load level. type: number @@ -3311,12 +3365,16 @@ spec: description: Metric type, GAUGE or COUNTER. type: string ruleType: - description: |- - Rule type: UTILIZATION - This type means that the metric applies to one instance. - First, Instance Groups calculates the average metric value for each instance, - then averages the values for instances in one availability zone. - This type of metric must have the instance_id label. WORKLOAD - This type means that the metric applies to instances in one availability zone. - This type of metric must have the zone_id label. + description: 'Rule type: UTILIZATION - This + type means that the metric applies to one + instance. First, Instance Groups calculates + the average metric value for each instance, + then averages the values for instances in + one availability zone. This type of metric + must have the instance_id label. WORKLOAD + - This type means that the metric applies + to instances in one availability zone. This + type of metric must have the zone_id label.' type: string service: description: Service of custom metric in Yandex @@ -3336,25 +3394,28 @@ spec: in the group. type: number measurementDuration: - description: |- - The amount of time, in seconds, that metrics are averaged for. - If the average value at the end of the interval is higher than the cpu_utilization_target, - the instance group will increase the number of virtual machines in the group. + description: The amount of time, in seconds, that + metrics are averaged for. If the average value at + the end of the interval is higher than the cpu_utilization_target, + the instance group will increase the number of virtual + machines in the group. type: number minZoneSize: description: The minimum number of virtual machines in a single availability zone. type: number stabilizationDuration: - description: |- - The minimum time interval, in seconds, to monitor the load before - an instance group can reduce the number of virtual machines in the group. During this time, the group - will not decrease even if the average load falls below the value of cpu_utilization_target. + description: The minimum time interval, in seconds, + to monitor the load before an instance group can + reduce the number of virtual machines in the group. + During this time, the group will not decrease even + if the average load falls below the value of cpu_utilization_target. type: number warmupDuration: - description: |- - The warm-up time of the virtual machine, in seconds. During this time, - traffic is fed to the virtual machine, but load metrics are not taken into account. + description: The warm-up time of the virtual machine, + in seconds. During this time, traffic is fed to + the virtual machine, but load metrics are not taken + into account. type: number type: object type: array @@ -3374,6 +3435,10 @@ spec: is documented below. items: properties: + autoScaleType: + description: . Autoscale type, can be ZONAL or REGIONAL. + By default ZONAL type is used. + type: string cpuUtilizationTarget: description: Target CPU load level. type: number @@ -3400,12 +3465,16 @@ spec: description: Metric type, GAUGE or COUNTER. type: string ruleType: - description: |- - Rule type: UTILIZATION - This type means that the metric applies to one instance. - First, Instance Groups calculates the average metric value for each instance, - then averages the values for instances in one availability zone. - This type of metric must have the instance_id label. WORKLOAD - This type means that the metric applies to instances in one availability zone. - This type of metric must have the zone_id label. + description: 'Rule type: UTILIZATION - This + type means that the metric applies to one + instance. First, Instance Groups calculates + the average metric value for each instance, + then averages the values for instances in + one availability zone. This type of metric + must have the instance_id label. WORKLOAD + - This type means that the metric applies + to instances in one availability zone. This + type of metric must have the zone_id label.' type: string service: description: Service of custom metric in Yandex @@ -3425,25 +3494,28 @@ spec: in the group. type: number measurementDuration: - description: |- - The amount of time, in seconds, that metrics are averaged for. - If the average value at the end of the interval is higher than the cpu_utilization_target, - the instance group will increase the number of virtual machines in the group. + description: The amount of time, in seconds, that + metrics are averaged for. If the average value at + the end of the interval is higher than the cpu_utilization_target, + the instance group will increase the number of virtual + machines in the group. type: number minZoneSize: description: The minimum number of virtual machines in a single availability zone. type: number stabilizationDuration: - description: |- - The minimum time interval, in seconds, to monitor the load before - an instance group can reduce the number of virtual machines in the group. During this time, the group - will not decrease even if the average load falls below the value of cpu_utilization_target. + description: The minimum time interval, in seconds, + to monitor the load before an instance group can + reduce the number of virtual machines in the group. + During this time, the group will not decrease even + if the average load falls below the value of cpu_utilization_target. type: number warmupDuration: - description: |- - The warm-up time of the virtual machine, in seconds. During this time, - traffic is fed to the virtual machine, but load metrics are not taken into account. + description: The warm-up time of the virtual machine, + in seconds. During this time, traffic is fed to + the virtual machine, but load metrics are not taken + into account. type: number type: object type: array @@ -3459,8 +3531,8 @@ spec: variables: additionalProperties: type: string - description: A set of key/value variables pairs to assign to - the instance group. + description: A set of key/value variables pairs to assign to the + instance group. type: object x-kubernetes-map-type: granular type: object diff --git a/package/crds/compute.yandex-cloud.upjet.crossplane.io_instanceiambindings.yaml b/package/crds/compute.yandex-cloud.upjet.crossplane.io_instanceiambindings.yaml index 1e6224a..122500d 100644 --- a/package/crds/compute.yandex-cloud.upjet.crossplane.io_instanceiambindings.yaml +++ b/package/crds/compute.yandex-cloud.upjet.crossplane.io_instanceiambindings.yaml @@ -77,17 +77,16 @@ spec: description: ID of the instance to attach the policy to. type: string members: - description: |- - An array of identities that will be granted the privilege in the role. - Each entry can have one of the following values: + description: 'An array of identities that will be granted the + privilege in the role. Each entry can have one of the following + values:' items: type: string type: array x-kubernetes-list-type: set role: - description: |- - The role that should be assigned. Only one - yandex_compute_instance_iam_binding can be used per role. + description: The role that should be assigned. Only one yandex_compute_instance_iam_binding + can be used per role. type: string type: object initProvider: @@ -107,17 +106,16 @@ spec: description: ID of the instance to attach the policy to. type: string members: - description: |- - An array of identities that will be granted the privilege in the role. - Each entry can have one of the following values: + description: 'An array of identities that will be granted the + privilege in the role. Each entry can have one of the following + values:' items: type: string type: array x-kubernetes-list-type: set role: - description: |- - The role that should be assigned. Only one - yandex_compute_instance_iam_binding can be used per role. + description: The role that should be assigned. Only one yandex_compute_instance_iam_binding + can be used per role. type: string type: object managementPolicies: @@ -311,17 +309,16 @@ spec: description: ID of the instance to attach the policy to. type: string members: - description: |- - An array of identities that will be granted the privilege in the role. - Each entry can have one of the following values: + description: 'An array of identities that will be granted the + privilege in the role. Each entry can have one of the following + values:' items: type: string type: array x-kubernetes-list-type: set role: - description: |- - The role that should be assigned. Only one - yandex_compute_instance_iam_binding can be used per role. + description: The role that should be assigned. Only one yandex_compute_instance_iam_binding + can be used per role. type: string type: object conditions: diff --git a/package/crds/compute.yandex-cloud.upjet.crossplane.io_instances.yaml b/package/crds/compute.yandex-cloud.upjet.crossplane.io_instances.yaml index 412f908..64d57e0 100644 --- a/package/crds/compute.yandex-cloud.upjet.crossplane.io_instances.yaml +++ b/package/crds/compute.yandex-cloud.upjet.crossplane.io_instances.yaml @@ -86,18 +86,16 @@ spec: items: properties: autoDelete: - description: |- - Defines whether the disk will be auto-deleted when the instance - is deleted. The default value is True. + description: Defines whether the disk will be auto-deleted + when the instance is deleted. The default value is True. type: boolean deviceName: description: Name that can be used to access an attached disk. type: string diskId: - description: |- - The ID of the existing disk (such as those managed by - yandex_compute_disk) to attach as a boot disk. + description: The ID of the existing disk (such as those + managed by yandex_compute_disk) to attach as a boot disk. type: string diskIdRef: description: Reference to a Disk to populate diskId. @@ -174,9 +172,9 @@ spec: type: object type: object initializeParams: - description: |- - Parameters for a new disk that will be created - alongside the new instance. Either initialize_params or disk_id must be set. The structure is documented below. + description: Parameters for a new disk that will be created + alongside the new instance. Either initialize_params or + disk_id must be set. The structure is documented below. items: properties: blockSize: @@ -300,16 +298,15 @@ spec: description: ID of the filesystem that should be attached. type: string mode: - description: |- - Mode of access to the filesystem that should be attached. By default, filesystem is attached - in READ_WRITE mode. + description: Mode of access to the filesystem that should + be attached. By default, filesystem is attached in READ_WRITE + mode. type: string type: object type: array folderId: - description: |- - The ID of the folder that the resource belongs to. If it - is not provided, the default provider folder is used. + description: The ID of the folder that the resource belongs to. + If it is not provided, the default provider folder is used. type: string folderIdRef: description: Reference to a Folder in resourcemanager to populate @@ -392,10 +389,10 @@ spec: The GPU cluster must exist in the same zone as the instance. type: string hostname: - description: |- - Host name for the instance. This field is used to generate the instance fqdn value. - The host name must be unique within the network and region. If not specified, the host name will be equal - to id of the instance and fqdn will be .auto.internal. + description: Host name for the instance. This field is used to + generate the instance fqdn value. The host name must be unique + within the network and region. If not specified, the host name + will be equal to id of the instance and fqdn will be .auto.internal. Otherwise FQDN will be ..internal. type: string labels: @@ -425,9 +422,8 @@ spec: metadata: additionalProperties: type: string - description: |- - Metadata key/value pairs to make available from - within the instance. + description: Metadata key/value pairs to make available from within + the instance. type: object x-kubernetes-map-type: granular metadataOptions: @@ -453,9 +449,8 @@ spec: Values: standard, software_accelerated' type: string networkInterface: - description: |- - Networks to attach to the instance. This can - be specified multiple times. The structure is documented below. + description: Networks to attach to the instance. This can be specified + multiple times. The structure is documented below. items: properties: dnsRecord: @@ -481,23 +476,23 @@ spec: type: object type: array index: - description: |- - Index of network interface, will be calculated automatically for instance create or update operations + description: Index of network interface, will be calculated + automatically for instance create or update operations if not specified. Required for attach/detach operations. type: number ipAddress: - description: |- - The private IP address to assign to the instance. If - empty, the address will be automatically assigned from the specified subnet. + description: The private IP address to assign to the instance. + If empty, the address will be automatically assigned from + the specified subnet. type: string ipv4: description: Allocate an IPv4 address for the interface. The default value is true. type: boolean ipv6: - description: |- - If true, allocate an IPv6 address for the interface. - The address will be automatically assigned from the specified subnet. + description: If true, allocate an IPv6 address for the interface. + The address will be automatically assigned from the specified + subnet. type: boolean ipv6Address: description: The private IPv6 address to assign to the instance. @@ -641,10 +636,9 @@ spec: type: object type: object subnetId: - description: |- - ID of the subnet to attach this - interface to. The subnet must exist in the same zone where this instance will be - created. + description: ID of the subnet to attach this interface to. + The subnet must exist in the same zone where this instance + will be created. type: string subnetIdRef: description: Reference to a Subnet in vpc to populate subnetId. @@ -791,20 +785,18 @@ spec: type: object type: array secondaryDisk: - description: |- - A set of disks to attach to the instance. The structure is documented below. - Note: The allow_stopping_for_update property must be set to true in order to update this structure. + description: 'A set of disks to attach to the instance. The structure + is documented below. Note: The allow_stopping_for_update property + must be set to true in order to update this structure.' items: properties: autoDelete: - description: |- - Whether the disk is auto-deleted when the instance + description: Whether the disk is auto-deleted when the instance is deleted. The default value is false. type: boolean deviceName: - description: |- - Name that can be used to access an attached disk - under /dev/disk/by-id/. + description: Name that can be used to access an attached + disk under /dev/disk/by-id/. type: string diskId: description: ID of the disk that is attached to the instance. @@ -895,9 +887,9 @@ spec: type: object type: object zone: - description: |- - The availability zone where the virtual machine will be created. If it is not provided, - the default provider folder is used. + description: The availability zone where the virtual machine will + be created. If it is not provided, the default provider folder + is used. type: string type: object initProvider: @@ -926,18 +918,16 @@ spec: items: properties: autoDelete: - description: |- - Defines whether the disk will be auto-deleted when the instance - is deleted. The default value is True. + description: Defines whether the disk will be auto-deleted + when the instance is deleted. The default value is True. type: boolean deviceName: description: Name that can be used to access an attached disk. type: string diskId: - description: |- - The ID of the existing disk (such as those managed by - yandex_compute_disk) to attach as a boot disk. + description: The ID of the existing disk (such as those + managed by yandex_compute_disk) to attach as a boot disk. type: string diskIdRef: description: Reference to a Disk to populate diskId. @@ -1014,9 +1004,9 @@ spec: type: object type: object initializeParams: - description: |- - Parameters for a new disk that will be created - alongside the new instance. Either initialize_params or disk_id must be set. The structure is documented below. + description: Parameters for a new disk that will be created + alongside the new instance. Either initialize_params or + disk_id must be set. The structure is documented below. items: properties: blockSize: @@ -1140,16 +1130,15 @@ spec: description: ID of the filesystem that should be attached. type: string mode: - description: |- - Mode of access to the filesystem that should be attached. By default, filesystem is attached - in READ_WRITE mode. + description: Mode of access to the filesystem that should + be attached. By default, filesystem is attached in READ_WRITE + mode. type: string type: object type: array folderId: - description: |- - The ID of the folder that the resource belongs to. If it - is not provided, the default provider folder is used. + description: The ID of the folder that the resource belongs to. + If it is not provided, the default provider folder is used. type: string folderIdRef: description: Reference to a Folder in resourcemanager to populate @@ -1232,10 +1221,10 @@ spec: The GPU cluster must exist in the same zone as the instance. type: string hostname: - description: |- - Host name for the instance. This field is used to generate the instance fqdn value. - The host name must be unique within the network and region. If not specified, the host name will be equal - to id of the instance and fqdn will be .auto.internal. + description: Host name for the instance. This field is used to + generate the instance fqdn value. The host name must be unique + within the network and region. If not specified, the host name + will be equal to id of the instance and fqdn will be .auto.internal. Otherwise FQDN will be ..internal. type: string labels: @@ -1265,9 +1254,8 @@ spec: metadata: additionalProperties: type: string - description: |- - Metadata key/value pairs to make available from - within the instance. + description: Metadata key/value pairs to make available from within + the instance. type: object x-kubernetes-map-type: granular metadataOptions: @@ -1293,9 +1281,8 @@ spec: Values: standard, software_accelerated' type: string networkInterface: - description: |- - Networks to attach to the instance. This can - be specified multiple times. The structure is documented below. + description: Networks to attach to the instance. This can be specified + multiple times. The structure is documented below. items: properties: dnsRecord: @@ -1321,23 +1308,23 @@ spec: type: object type: array index: - description: |- - Index of network interface, will be calculated automatically for instance create or update operations + description: Index of network interface, will be calculated + automatically for instance create or update operations if not specified. Required for attach/detach operations. type: number ipAddress: - description: |- - The private IP address to assign to the instance. If - empty, the address will be automatically assigned from the specified subnet. + description: The private IP address to assign to the instance. + If empty, the address will be automatically assigned from + the specified subnet. type: string ipv4: description: Allocate an IPv4 address for the interface. The default value is true. type: boolean ipv6: - description: |- - If true, allocate an IPv6 address for the interface. - The address will be automatically assigned from the specified subnet. + description: If true, allocate an IPv6 address for the interface. + The address will be automatically assigned from the specified + subnet. type: boolean ipv6Address: description: The private IPv6 address to assign to the instance. @@ -1481,10 +1468,9 @@ spec: type: object type: object subnetId: - description: |- - ID of the subnet to attach this - interface to. The subnet must exist in the same zone where this instance will be - created. + description: ID of the subnet to attach this interface to. + The subnet must exist in the same zone where this instance + will be created. type: string subnetIdRef: description: Reference to a Subnet in vpc to populate subnetId. @@ -1631,20 +1617,18 @@ spec: type: object type: array secondaryDisk: - description: |- - A set of disks to attach to the instance. The structure is documented below. - Note: The allow_stopping_for_update property must be set to true in order to update this structure. + description: 'A set of disks to attach to the instance. The structure + is documented below. Note: The allow_stopping_for_update property + must be set to true in order to update this structure.' items: properties: autoDelete: - description: |- - Whether the disk is auto-deleted when the instance + description: Whether the disk is auto-deleted when the instance is deleted. The default value is false. type: boolean deviceName: - description: |- - Name that can be used to access an attached disk - under /dev/disk/by-id/. + description: Name that can be used to access an attached + disk under /dev/disk/by-id/. type: string diskId: description: ID of the disk that is attached to the instance. @@ -1735,9 +1719,9 @@ spec: type: object type: object zone: - description: |- - The availability zone where the virtual machine will be created. If it is not provided, - the default provider folder is used. + description: The availability zone where the virtual machine will + be created. If it is not provided, the default provider folder + is used. type: string type: object managementPolicies: @@ -1938,23 +1922,21 @@ spec: items: properties: autoDelete: - description: |- - Defines whether the disk will be auto-deleted when the instance - is deleted. The default value is True. + description: Defines whether the disk will be auto-deleted + when the instance is deleted. The default value is True. type: boolean deviceName: description: Name that can be used to access an attached disk. type: string diskId: - description: |- - The ID of the existing disk (such as those managed by - yandex_compute_disk) to attach as a boot disk. + description: The ID of the existing disk (such as those + managed by yandex_compute_disk) to attach as a boot disk. type: string initializeParams: - description: |- - Parameters for a new disk that will be created - alongside the new instance. Either initialize_params or disk_id must be set. The structure is documented below. + description: Parameters for a new disk that will be created + alongside the new instance. Either initialize_params or + disk_id must be set. The structure is documented below. items: properties: blockSize: @@ -2007,16 +1989,15 @@ spec: description: ID of the filesystem that should be attached. type: string mode: - description: |- - Mode of access to the filesystem that should be attached. By default, filesystem is attached - in READ_WRITE mode. + description: Mode of access to the filesystem that should + be attached. By default, filesystem is attached in READ_WRITE + mode. type: string type: object type: array folderId: - description: |- - The ID of the folder that the resource belongs to. If it - is not provided, the default provider folder is used. + description: The ID of the folder that the resource belongs to. + If it is not provided, the default provider folder is used. type: string fqdn: description: The fully qualified DNS name of this instance. @@ -2025,11 +2006,27 @@ spec: description: ID of the GPU cluster to attach this instance to. The GPU cluster must exist in the same zone as the instance. type: string + hardwareGeneration: + items: + properties: + generation2Features: + items: + type: object + type: array + legacyFeatures: + items: + properties: + pciTopology: + type: string + type: object + type: array + type: object + type: array hostname: - description: |- - Host name for the instance. This field is used to generate the instance fqdn value. - The host name must be unique within the network and region. If not specified, the host name will be equal - to id of the instance and fqdn will be .auto.internal. + description: Host name for the instance. This field is used to + generate the instance fqdn value. The host name must be unique + within the network and region. If not specified, the host name + will be equal to id of the instance and fqdn will be .auto.internal. Otherwise FQDN will be ..internal. type: string id: @@ -2064,9 +2061,8 @@ spec: metadata: additionalProperties: type: string - description: |- - Metadata key/value pairs to make available from - within the instance. + description: Metadata key/value pairs to make available from within + the instance. type: object x-kubernetes-map-type: granular metadataOptions: @@ -2092,9 +2088,8 @@ spec: Values: standard, software_accelerated' type: string networkInterface: - description: |- - Networks to attach to the instance. This can - be specified multiple times. The structure is documented below. + description: Networks to attach to the instance. This can be specified + multiple times. The structure is documented below. items: properties: dnsRecord: @@ -2120,23 +2115,23 @@ spec: type: object type: array index: - description: |- - Index of network interface, will be calculated automatically for instance create or update operations + description: Index of network interface, will be calculated + automatically for instance create or update operations if not specified. Required for attach/detach operations. type: number ipAddress: - description: |- - The private IP address to assign to the instance. If - empty, the address will be automatically assigned from the specified subnet. + description: The private IP address to assign to the instance. + If empty, the address will be automatically assigned from + the specified subnet. type: string ipv4: description: Allocate an IPv4 address for the interface. The default value is true. type: boolean ipv6: - description: |- - If true, allocate an IPv6 address for the interface. - The address will be automatically assigned from the specified subnet. + description: If true, allocate an IPv6 address for the interface. + The address will be automatically assigned from the specified + subnet. type: boolean ipv6Address: description: The private IPv6 address to assign to the instance. @@ -2205,10 +2200,9 @@ spec: type: array x-kubernetes-list-type: set subnetId: - description: |- - ID of the subnet to attach this - interface to. The subnet must exist in the same zone where this instance will be - created. + description: ID of the subnet to attach this interface to. + The subnet must exist in the same zone where this instance + will be created. type: string type: object type: array @@ -2281,20 +2275,18 @@ spec: type: object type: array secondaryDisk: - description: |- - A set of disks to attach to the instance. The structure is documented below. - Note: The allow_stopping_for_update property must be set to true in order to update this structure. + description: 'A set of disks to attach to the instance. The structure + is documented below. Note: The allow_stopping_for_update property + must be set to true in order to update this structure.' items: properties: autoDelete: - description: |- - Whether the disk is auto-deleted when the instance + description: Whether the disk is auto-deleted when the instance is deleted. The default value is false. type: boolean deviceName: - description: |- - Name that can be used to access an attached disk - under /dev/disk/by-id/. + description: Name that can be used to access an attached + disk under /dev/disk/by-id/. type: string diskId: description: ID of the disk that is attached to the instance. @@ -2312,9 +2304,9 @@ spec: description: The status of this instance. type: string zone: - description: |- - The availability zone where the virtual machine will be created. If it is not provided, - the default provider folder is used. + description: The availability zone where the virtual machine will + be created. If it is not provided, the default provider folder + is used. type: string type: object conditions: diff --git a/package/crds/compute.yandex-cloud.upjet.crossplane.io_placementgroupiambindings.yaml b/package/crds/compute.yandex-cloud.upjet.crossplane.io_placementgroupiambindings.yaml index e49d705..fbfaedf 100644 --- a/package/crds/compute.yandex-cloud.upjet.crossplane.io_placementgroupiambindings.yaml +++ b/package/crds/compute.yandex-cloud.upjet.crossplane.io_placementgroupiambindings.yaml @@ -75,9 +75,9 @@ spec: forProvider: properties: members: - description: |- - An array of identities that will be granted the privilege in the role. - Each entry can have one of the following values: + description: 'An array of identities that will be granted the + privilege in the role. Each entry can have one of the following + values:' items: type: string type: array @@ -86,9 +86,8 @@ spec: description: ID of the placement group to attach the policy to. type: string role: - description: |- - The role that should be assigned. Only one - yandex_compute_placement_group_iam_binding can be used per role. + description: The role that should be assigned. Only one yandex_compute_placement_group_iam_binding + can be used per role. type: string type: object initProvider: @@ -105,9 +104,9 @@ spec: autoscaler. properties: members: - description: |- - An array of identities that will be granted the privilege in the role. - Each entry can have one of the following values: + description: 'An array of identities that will be granted the + privilege in the role. Each entry can have one of the following + values:' items: type: string type: array @@ -116,9 +115,8 @@ spec: description: ID of the placement group to attach the policy to. type: string role: - description: |- - The role that should be assigned. Only one - yandex_compute_placement_group_iam_binding can be used per role. + description: The role that should be assigned. Only one yandex_compute_placement_group_iam_binding + can be used per role. type: string type: object managementPolicies: @@ -310,9 +308,9 @@ spec: id: type: string members: - description: |- - An array of identities that will be granted the privilege in the role. - Each entry can have one of the following values: + description: 'An array of identities that will be granted the + privilege in the role. Each entry can have one of the following + values:' items: type: string type: array @@ -321,9 +319,8 @@ spec: description: ID of the placement group to attach the policy to. type: string role: - description: |- - The role that should be assigned. Only one - yandex_compute_placement_group_iam_binding can be used per role. + description: The role that should be assigned. Only one yandex_compute_placement_group_iam_binding + can be used per role. type: string type: object conditions: diff --git a/package/crds/compute.yandex-cloud.upjet.crossplane.io_snapshotiambindings.yaml b/package/crds/compute.yandex-cloud.upjet.crossplane.io_snapshotiambindings.yaml index 9155130..bf84382 100644 --- a/package/crds/compute.yandex-cloud.upjet.crossplane.io_snapshotiambindings.yaml +++ b/package/crds/compute.yandex-cloud.upjet.crossplane.io_snapshotiambindings.yaml @@ -74,17 +74,16 @@ spec: forProvider: properties: members: - description: |- - An array of identities that will be granted the privilege in the role. - Each entry can have one of the following values: + description: 'An array of identities that will be granted the + privilege in the role. Each entry can have one of the following + values:' items: type: string type: array x-kubernetes-list-type: set role: - description: |- - The role that should be assigned. Only one - yandex_compute_snapshot_iam_binding can be used per role. + description: The role that should be assigned. Only one yandex_compute_snapshot_iam_binding + can be used per role. type: string snapshotId: description: ID of the snapshot to attach the policy to. @@ -104,17 +103,16 @@ spec: autoscaler. properties: members: - description: |- - An array of identities that will be granted the privilege in the role. - Each entry can have one of the following values: + description: 'An array of identities that will be granted the + privilege in the role. Each entry can have one of the following + values:' items: type: string type: array x-kubernetes-list-type: set role: - description: |- - The role that should be assigned. Only one - yandex_compute_snapshot_iam_binding can be used per role. + description: The role that should be assigned. Only one yandex_compute_snapshot_iam_binding + can be used per role. type: string snapshotId: description: ID of the snapshot to attach the policy to. @@ -308,17 +306,16 @@ spec: id: type: string members: - description: |- - An array of identities that will be granted the privilege in the role. - Each entry can have one of the following values: + description: 'An array of identities that will be granted the + privilege in the role. Each entry can have one of the following + values:' items: type: string type: array x-kubernetes-list-type: set role: - description: |- - The role that should be assigned. Only one - yandex_compute_snapshot_iam_binding can be used per role. + description: The role that should be assigned. Only one yandex_compute_snapshot_iam_binding + can be used per role. type: string snapshotId: description: ID of the snapshot to attach the policy to. diff --git a/package/crds/compute.yandex-cloud.upjet.crossplane.io_snapshots.yaml b/package/crds/compute.yandex-cloud.upjet.crossplane.io_snapshots.yaml index 24481e6..69dea23 100644 --- a/package/crds/compute.yandex-cloud.upjet.crossplane.io_snapshots.yaml +++ b/package/crds/compute.yandex-cloud.upjet.crossplane.io_snapshots.yaml @@ -77,9 +77,8 @@ spec: description: Description of the resource. type: string folderId: - description: |- - The ID of the folder that the resource belongs to. If it - is not provided, the default provider folder is used. + description: The ID of the folder that the resource belongs to. + If it is not provided, the default provider folder is used. type: string folderIdRef: description: Reference to a Folder in resourcemanager to populate @@ -157,6 +156,33 @@ spec: type: string type: object type: object + hardwareGeneration: + description: |- + Hardware generation and its features, + which will be applied to the instance when this snapshot is used as a boot + disk source. Provide this property if you wish to override this value, which + otherwise is inherited from the source. The structure is documented below. + items: + properties: + generation2Features: + description: A newer hardware generation, which always uses + PCI_TOPOLOGY_V2 and UEFI boot. + items: + type: object + type: array + legacyFeatures: + description: 'Defines the first known hardware generation + and its features, which are:' + items: + properties: + pciTopology: + description: A variant of PCI topology, one of PCI_TOPOLOGY_V1 + or PCI_TOPOLOGY_V2. + type: string + type: object + type: array + type: object + type: array labels: additionalProperties: type: string @@ -261,9 +287,8 @@ spec: description: Description of the resource. type: string folderId: - description: |- - The ID of the folder that the resource belongs to. If it - is not provided, the default provider folder is used. + description: The ID of the folder that the resource belongs to. + If it is not provided, the default provider folder is used. type: string folderIdRef: description: Reference to a Folder in resourcemanager to populate @@ -341,6 +366,33 @@ spec: type: string type: object type: object + hardwareGeneration: + description: |- + Hardware generation and its features, + which will be applied to the instance when this snapshot is used as a boot + disk source. Provide this property if you wish to override this value, which + otherwise is inherited from the source. The structure is documented below. + items: + properties: + generation2Features: + description: A newer hardware generation, which always uses + PCI_TOPOLOGY_V2 and UEFI boot. + items: + type: object + type: array + legacyFeatures: + description: 'Defines the first known hardware generation + and its features, which are:' + items: + properties: + pciTopology: + description: A variant of PCI topology, one of PCI_TOPOLOGY_V1 + or PCI_TOPOLOGY_V2. + type: string + type: object + type: array + type: object + type: array labels: additionalProperties: type: string @@ -611,10 +663,36 @@ spec: in GB. type: number folderId: - description: |- - The ID of the folder that the resource belongs to. If it - is not provided, the default provider folder is used. + description: The ID of the folder that the resource belongs to. + If it is not provided, the default provider folder is used. type: string + hardwareGeneration: + description: |- + Hardware generation and its features, + which will be applied to the instance when this snapshot is used as a boot + disk source. Provide this property if you wish to override this value, which + otherwise is inherited from the source. The structure is documented below. + items: + properties: + generation2Features: + description: A newer hardware generation, which always uses + PCI_TOPOLOGY_V2 and UEFI boot. + items: + type: object + type: array + legacyFeatures: + description: 'Defines the first known hardware generation + and its features, which are:' + items: + properties: + pciTopology: + description: A variant of PCI topology, one of PCI_TOPOLOGY_V1 + or PCI_TOPOLOGY_V2. + type: string + type: object + type: array + type: object + type: array id: type: string labels: diff --git a/package/crds/compute.yandex-cloud.upjet.crossplane.io_snapshotscheduleiambindings.yaml b/package/crds/compute.yandex-cloud.upjet.crossplane.io_snapshotscheduleiambindings.yaml index 9725887..20df284 100644 --- a/package/crds/compute.yandex-cloud.upjet.crossplane.io_snapshotscheduleiambindings.yaml +++ b/package/crds/compute.yandex-cloud.upjet.crossplane.io_snapshotscheduleiambindings.yaml @@ -75,17 +75,16 @@ spec: forProvider: properties: members: - description: |- - An array of identities that will be granted the privilege in the role. - Each entry can have one of the following values: + description: 'An array of identities that will be granted the + privilege in the role. Each entry can have one of the following + values:' items: type: string type: array x-kubernetes-list-type: set role: - description: |- - The role that should be assigned. Only one - yandex_compute_snapshot_schedule_iam_binding can be used per role. + description: The role that should be assigned. Only one yandex_compute_snapshot_schedule_iam_binding + can be used per role. type: string snapshotScheduleId: description: ID of the snapshot schedule to attach the policy @@ -106,17 +105,16 @@ spec: autoscaler. properties: members: - description: |- - An array of identities that will be granted the privilege in the role. - Each entry can have one of the following values: + description: 'An array of identities that will be granted the + privilege in the role. Each entry can have one of the following + values:' items: type: string type: array x-kubernetes-list-type: set role: - description: |- - The role that should be assigned. Only one - yandex_compute_snapshot_schedule_iam_binding can be used per role. + description: The role that should be assigned. Only one yandex_compute_snapshot_schedule_iam_binding + can be used per role. type: string snapshotScheduleId: description: ID of the snapshot schedule to attach the policy @@ -312,17 +310,16 @@ spec: id: type: string members: - description: |- - An array of identities that will be granted the privilege in the role. - Each entry can have one of the following values: + description: 'An array of identities that will be granted the + privilege in the role. Each entry can have one of the following + values:' items: type: string type: array x-kubernetes-list-type: set role: - description: |- - The role that should be assigned. Only one - yandex_compute_snapshot_schedule_iam_binding can be used per role. + description: The role that should be assigned. Only one yandex_compute_snapshot_schedule_iam_binding + can be used per role. type: string snapshotScheduleId: description: ID of the snapshot schedule to attach the policy diff --git a/package/crds/compute.yandex-cloud.upjet.crossplane.io_snapshotschedules.yaml b/package/crds/compute.yandex-cloud.upjet.crossplane.io_snapshotschedules.yaml index 630b8cc..e0d7d2f 100644 --- a/package/crds/compute.yandex-cloud.upjet.crossplane.io_snapshotschedules.yaml +++ b/package/crds/compute.yandex-cloud.upjet.crossplane.io_snapshotschedules.yaml @@ -160,9 +160,8 @@ spec: type: object type: object folderId: - description: |- - The ID of the folder that the resource belongs to. If it - is not provided, the default provider folder is used. + description: The ID of the folder that the resource belongs to. + If it is not provided, the default provider folder is used. type: string folderIdRef: description: Reference to a Folder in resourcemanager to populate @@ -397,9 +396,8 @@ spec: type: object type: object folderId: - description: |- - The ID of the folder that the resource belongs to. If it - is not provided, the default provider folder is used. + description: The ID of the folder that the resource belongs to. + If it is not provided, the default provider folder is used. type: string folderIdRef: description: Reference to a Folder in resourcemanager to populate @@ -719,9 +717,8 @@ spec: type: array x-kubernetes-list-type: set folderId: - description: |- - The ID of the folder that the resource belongs to. If it - is not provided, the default provider folder is used. + description: The ID of the folder that the resource belongs to. + If it is not provided, the default provider folder is used. type: string id: type: string diff --git a/package/crds/container.yandex-cloud.upjet.crossplane.io_registryiambindings.yaml b/package/crds/container.yandex-cloud.upjet.crossplane.io_registryiambindings.yaml index b588363..935a1c1 100644 --- a/package/crds/container.yandex-cloud.upjet.crossplane.io_registryiambindings.yaml +++ b/package/crds/container.yandex-cloud.upjet.crossplane.io_registryiambindings.yaml @@ -74,9 +74,8 @@ spec: forProvider: properties: members: - description: |- - Identities that will be granted the privilege in role. - Each entry can have one of the following values: + description: 'Identities that will be granted the privilege in + role. Each entry can have one of the following values:' items: type: string type: array @@ -257,9 +256,8 @@ spec: autoscaler. properties: members: - description: |- - Identities that will be granted the privilege in role. - Each entry can have one of the following values: + description: 'Identities that will be granted the privilege in + role. Each entry can have one of the following values:' items: type: string type: array @@ -606,9 +604,8 @@ spec: id: type: string members: - description: |- - Identities that will be granted the privilege in role. - Each entry can have one of the following values: + description: 'Identities that will be granted the privilege in + role. Each entry can have one of the following values:' items: type: string type: array diff --git a/package/crds/container.yandex-cloud.upjet.crossplane.io_repositories.yaml b/package/crds/container.yandex-cloud.upjet.crossplane.io_repositories.yaml index 6cd9d69..ca64f92 100644 --- a/package/crds/container.yandex-cloud.upjet.crossplane.io_repositories.yaml +++ b/package/crds/container.yandex-cloud.upjet.crossplane.io_repositories.yaml @@ -34,8 +34,7 @@ spec: name: v1alpha1 schema: openAPIV3Schema: - description: Repository is the Schema for the Repositorys API. Creates a new - container repository. + description: Repository is the Schema for the Repositorys API. properties: apiVersion: description: |- @@ -74,9 +73,7 @@ spec: forProvider: properties: name: - description: A name of the repository. The name of the repository - should start with id of a container registry and match the name - of the images that will be pushed in the repository. + description: (String) type: string type: object initProvider: @@ -93,9 +90,7 @@ spec: autoscaler. properties: name: - description: A name of the repository. The name of the repository - should start with id of a container registry and match the name - of the images that will be pushed in the repository. + description: (String) type: string type: object managementPolicies: @@ -276,11 +271,10 @@ spec: atProvider: properties: id: + description: (String) The ID of this resource. type: string name: - description: A name of the repository. The name of the repository - should start with id of a container registry and match the name - of the images that will be pushed in the repository. + description: (String) type: string type: object conditions: diff --git a/package/crds/container.yandex-cloud.upjet.crossplane.io_repositoryiambindings.yaml b/package/crds/container.yandex-cloud.upjet.crossplane.io_repositoryiambindings.yaml index f7265a0..cd2fcb7 100644 --- a/package/crds/container.yandex-cloud.upjet.crossplane.io_repositoryiambindings.yaml +++ b/package/crds/container.yandex-cloud.upjet.crossplane.io_repositoryiambindings.yaml @@ -35,7 +35,7 @@ spec: schema: openAPIV3Schema: description: RepositoryIAMBinding is the Schema for the RepositoryIAMBindings - API. Allows management of a single IAM binding for a + API. properties: apiVersion: description: |- @@ -74,16 +74,13 @@ spec: forProvider: properties: members: - description: |- - Identities that will be granted the privilege in role. - Each entry can have one of the following values: + description: (Set of String) items: type: string type: array x-kubernetes-list-type: set repositoryId: - description: The Yandex Container Repository ID to apply a binding - to. + description: (String) type: string repositoryIdRef: description: Reference to a Repository to populate repositoryId. @@ -160,7 +157,7 @@ spec: type: object type: object role: - description: The role that should be applied. See roles. + description: (String) type: string serviceAccountRef: description: References to ServiceAccount in iam to populate members. @@ -241,6 +238,7 @@ spec: type: object type: object sleepAfter: + description: (Number) type: number type: object initProvider: @@ -257,16 +255,13 @@ spec: autoscaler. properties: members: - description: |- - Identities that will be granted the privilege in role. - Each entry can have one of the following values: + description: (Set of String) items: type: string type: array x-kubernetes-list-type: set repositoryId: - description: The Yandex Container Repository ID to apply a binding - to. + description: (String) type: string repositoryIdRef: description: Reference to a Repository to populate repositoryId. @@ -343,7 +338,7 @@ spec: type: object type: object role: - description: The role that should be applied. See roles. + description: (String) type: string serviceAccountRef: description: References to ServiceAccount in iam to populate members. @@ -424,6 +419,7 @@ spec: type: object type: object sleepAfter: + description: (Number) type: number type: object managementPolicies: @@ -605,23 +601,22 @@ spec: atProvider: properties: id: + description: (String) The ID of this resource. type: string members: - description: |- - Identities that will be granted the privilege in role. - Each entry can have one of the following values: + description: (Set of String) items: type: string type: array x-kubernetes-list-type: set repositoryId: - description: The Yandex Container Repository ID to apply a binding - to. + description: (String) type: string role: - description: The role that should be applied. See roles. + description: (String) type: string sleepAfter: + description: (Number) type: number type: object conditions: diff --git a/package/crds/container.yandex-cloud.upjet.crossplane.io_repositorylifecyclepolicies.yaml b/package/crds/container.yandex-cloud.upjet.crossplane.io_repositorylifecyclepolicies.yaml index 30064ee..5ed3d1b 100644 --- a/package/crds/container.yandex-cloud.upjet.crossplane.io_repositorylifecyclepolicies.yaml +++ b/package/crds/container.yandex-cloud.upjet.crossplane.io_repositorylifecyclepolicies.yaml @@ -35,7 +35,7 @@ spec: schema: openAPIV3Schema: description: RepositoryLifecyclePolicy is the Schema for the RepositoryLifecyclePolicys - API. Creates a new container repository lifecycle policy. + API. properties: apiVersion: description: |- @@ -75,14 +75,13 @@ spec: forProvider: properties: description: - description: Description of the lifecycle policy. + description: (String) type: string name: - description: Lifecycle policy name. + description: (String) type: string repositoryId: - description: The ID of the repository that the resource belongs - to. + description: (String) type: string repositoryIdRef: description: Reference to a Repository to populate repositoryId. @@ -159,33 +158,28 @@ spec: type: object type: object rule: + description: (Block List) (see below for nested schema) items: properties: description: - description: Description of the lifecycle policy. + description: (String) type: string expirePeriod: - description: The period of time that must pass after creating - a image for it to suit the automatic deletion criteria. - It must be a multiple of 24 hours. + description: (String) type: string retainedTop: - description: The number of images to be retained even if - the expire_period already expired. + description: (Number) type: number tagRegexp: - description: Tag to specify a filter as a regular expression. - For example .* - all images with tags. + description: (String) type: string untagged: - description: If enabled, rules apply to untagged Docker - images. + description: (Boolean) type: boolean type: object type: array status: - description: The status of lifecycle policy. Must be active or - disabled. + description: (String) type: string type: object initProvider: @@ -202,14 +196,13 @@ spec: autoscaler. properties: description: - description: Description of the lifecycle policy. + description: (String) type: string name: - description: Lifecycle policy name. + description: (String) type: string repositoryId: - description: The ID of the repository that the resource belongs - to. + description: (String) type: string repositoryIdRef: description: Reference to a Repository to populate repositoryId. @@ -286,33 +279,28 @@ spec: type: object type: object rule: + description: (Block List) (see below for nested schema) items: properties: description: - description: Description of the lifecycle policy. + description: (String) type: string expirePeriod: - description: The period of time that must pass after creating - a image for it to suit the automatic deletion criteria. - It must be a multiple of 24 hours. + description: (String) type: string retainedTop: - description: The number of images to be retained even if - the expire_period already expired. + description: (Number) type: number tagRegexp: - description: Tag to specify a filter as a regular expression. - For example .* - all images with tags. + description: (String) type: string untagged: - description: If enabled, rules apply to untagged Docker - images. + description: (Boolean) type: boolean type: object type: array status: - description: The status of lifecycle policy. Must be active or - disabled. + description: (String) type: string type: object managementPolicies: @@ -494,48 +482,43 @@ spec: atProvider: properties: createdAt: - description: Creation timestamp of the instance. + description: (String) type: string description: - description: Description of the lifecycle policy. + description: (String) type: string id: + description: (String) The ID of this resource. type: string name: - description: Lifecycle policy name. + description: (String) type: string repositoryId: - description: The ID of the repository that the resource belongs - to. + description: (String) type: string rule: + description: (Block List) (see below for nested schema) items: properties: description: - description: Description of the lifecycle policy. + description: (String) type: string expirePeriod: - description: The period of time that must pass after creating - a image for it to suit the automatic deletion criteria. - It must be a multiple of 24 hours. + description: (String) type: string retainedTop: - description: The number of images to be retained even if - the expire_period already expired. + description: (Number) type: number tagRegexp: - description: Tag to specify a filter as a regular expression. - For example .* - all images with tags. + description: (String) type: string untagged: - description: If enabled, rules apply to untagged Docker - images. + description: (Boolean) type: boolean type: object type: array status: - description: The status of lifecycle policy. Must be active or - disabled. + description: (String) type: string type: object conditions: diff --git a/package/crds/dataproc.yandex-cloud.upjet.crossplane.io_clusters.yaml b/package/crds/dataproc.yandex-cloud.upjet.crossplane.io_clusters.yaml index 6ca365d..2d295b8 100644 --- a/package/crds/dataproc.yandex-cloud.upjet.crossplane.io_clusters.yaml +++ b/package/crds/dataproc.yandex-cloud.upjet.crossplane.io_clusters.yaml @@ -383,8 +383,8 @@ spec: type: object type: array deletionProtection: - description: Inhibits deletion of the cluster. Can be either - true or false. + description: Inhibits deletion of the cluster. Can be either true + or false. type: boolean description: description: Description of the Data Proc cluster. @@ -906,8 +906,8 @@ spec: type: object type: array deletionProtection: - description: Inhibits deletion of the cluster. Can be either - true or false. + description: Inhibits deletion of the cluster. Can be either true + or false. type: boolean description: description: Description of the Data Proc cluster. @@ -1453,8 +1453,8 @@ spec: description: (Computed) The Data Proc cluster creation timestamp. type: string deletionProtection: - description: Inhibits deletion of the cluster. Can be either - true or false. + description: Inhibits deletion of the cluster. Can be either true + or false. type: boolean description: description: Description of the Data Proc cluster. diff --git a/package/crds/datatransfer.yandex-cloud.upjet.crossplane.io_endpoints.yaml b/package/crds/datatransfer.yandex-cloud.upjet.crossplane.io_endpoints.yaml index c4a9676..fd25c76 100644 --- a/package/crds/datatransfer.yandex-cloud.upjet.crossplane.io_endpoints.yaml +++ b/package/crds/datatransfer.yandex-cloud.upjet.crossplane.io_endpoints.yaml @@ -34,8 +34,7 @@ spec: name: v1alpha1 schema: openAPIV3Schema: - description: Endpoint is the Schema for the Endpoints API. Manages a Data - Transfer endpoint within Yandex.Cloud. + description: Endpoint is the Schema for the Endpoints API. properties: apiVersion: description: |- @@ -74,11 +73,10 @@ spec: forProvider: properties: description: - description: Arbitrary description text for the endpoint. + description: (String) type: string folderId: - description: ID of the folder to create the endpoint in. If it - is not provided, the default provider folder is used. + description: (String) type: string folderIdRef: description: Reference to a Folder in resourcemanager to populate @@ -159,106 +157,86 @@ spec: labels: additionalProperties: type: string - description: A set of key/value label pairs to assign to the Data - Transfer endpoint. + description: (Map of String) type: object x-kubernetes-map-type: granular name: - description: Name of the endpoint. + description: (String) type: string settings: - description: Settings for the endpoint. The structure is documented - below. + description: '(Block List, Max: 1) (see below for nested schema)' items: properties: clickhouseSource: - description: Settings specific to the ClickHouse source - endpoint. + description: '(Block List, Max: 1) (see below for nested + schema)' items: properties: + clickhouseClusterName: + description: (String) + type: string connection: - description: Connection settings. + description: '(Block List, Max: 1) (see below for + nested schema)' items: properties: connectionOptions: - description: Connection options. The structure - is documented below. + description: '(Block List, Max: 1) (see below + for nested schema)' items: properties: database: - description: '- Database.' + description: (String) type: string mdbClusterId: - description: Identifier of the Managed - PostgreSQL cluster. + description: (String) type: string onPremise: - description: Connection settings of the - on-premise PostgreSQL server. + description: '(Block List, Max: 1) (see + below for nested schema)' items: properties: httpPort: - description: TCP port number for - the HTTP interface of the ClickHouse - server. + description: (Number) type: number nativePort: - description: TCP port number for - the native interface of the ClickHouse - server. + description: (Number) type: number shards: - description: The list of ClickHouse - shards. The structure is documented - below. + description: (Block List) (see below + for nested schema) items: properties: hosts: - description: List of host - names of the PostgreSQL - server. Exactly one host - is expected currently. + description: (List of String) items: type: string type: array name: - description: Field name. + description: (String) type: string type: object type: array tlsMode: - description: TLS settings for the - server connection. Empty implies - plaintext connection. The structure - is documented below. + description: '(Block List, Max: + 1) (see below for nested schema)' items: properties: disabled: - description: Empty block designating - that the connection is not - secured, i.e. plaintext - connection. + description: '(Block List, + Max: 1) (see below for nested + schema)' items: type: object type: array enabled: - description: If this attribute - is not an empty block, then - TLS is used for the server - connection. The structure - is documented below. + description: '(Block List, + Max: 1) (see below for nested + schema)' items: properties: caCertificate: - description: X.509 certificate - of the certificate - authority which issued - the server's certificate, - in PEM format. If - empty, the server's - certificate must be - signed by a well-known - CA. + description: (String) type: string type: object type: array @@ -267,16 +245,12 @@ spec: type: object type: array password: - description: Password for the database - access. This is a block with a single - field named raw which should contain - the password. + description: '(Block List, Max: 1) (see + below for nested schema)' items: properties: rawSecretRef: - description: A SecretKeySelector - is a reference to a secret key - in an arbitrary namespace. + description: (String, Sensitive) properties: key: description: The key to select. @@ -296,35 +270,29 @@ spec: type: object type: array user: - description: User for the database access. + description: (String) type: string type: object type: array type: object type: array excludeTables: - description: List of tables which will not be transfered, - formatted as schemaname.tablename. + description: (List of String) items: type: string type: array includeTables: - description: List of tables to transfer, formatted - as schemaname.tablename. If omitted or an empty - list is specified, all tables will be transferred. + description: (List of String) items: type: string type: array securityGroups: - description: '- List of security groups that the - transfer associated with this endpoint should use.' + description: (List of String) items: type: string type: array subnetId: - description: '- Identifier of the Yandex Cloud VPC - subnetwork to user for accessing the database. If - omitted, the server has to be accessible via Internet.' + description: (String) type: string subnetIdRef: description: Reference to a Subnet in vpc to populate @@ -405,116 +373,90 @@ spec: type: object type: array clickhouseTarget: - description: Settings specific to the ClickHouse target - endpoint. + description: '(Block List, Max: 1) (see below for nested + schema)' items: properties: altNames: - description: Table renaming rules. The structure is - documented below. + description: (Block List) (see below for nested schema) items: properties: fromName: - description: Name of the endpoint. + description: (String) type: string toName: - description: Name of the endpoint. + description: (String) type: string type: object type: array cleanupPolicy: - description: '- How to clean collections when activating - the transfer. One of "YDB_CLEANUP_POLICY_DISABLED" - or "YDB_CLEANUP_POLICY_DROP".' + description: (String) type: string clickhouseClusterName: - description: Name of the ClickHouse cluster. For managed - ClickHouse clusters defaults to managed cluster - ID. + description: (String) type: string connection: - description: Connection settings. + description: '(Block List, Max: 1) (see below for + nested schema)' items: properties: connectionOptions: - description: Connection options. The structure - is documented below. + description: '(Block List, Max: 1) (see below + for nested schema)' items: properties: database: - description: '- Database.' + description: (String) type: string mdbClusterId: - description: Identifier of the Managed - PostgreSQL cluster. + description: (String) type: string onPremise: - description: Connection settings of the - on-premise PostgreSQL server. + description: '(Block List, Max: 1) (see + below for nested schema)' items: properties: httpPort: - description: TCP port number for - the HTTP interface of the ClickHouse - server. + description: (Number) type: number nativePort: - description: TCP port number for - the native interface of the ClickHouse - server. + description: (Number) type: number shards: - description: The list of ClickHouse - shards. The structure is documented - below. + description: (Block List) (see below + for nested schema) items: properties: hosts: - description: List of host - names of the PostgreSQL - server. Exactly one host - is expected currently. + description: (List of String) items: type: string type: array name: - description: Field name. + description: (String) type: string type: object type: array tlsMode: - description: TLS settings for the - server connection. Empty implies - plaintext connection. The structure - is documented below. + description: '(Block List, Max: + 1) (see below for nested schema)' items: properties: disabled: - description: Empty block designating - that the connection is not - secured, i.e. plaintext - connection. + description: '(Block List, + Max: 1) (see below for nested + schema)' items: type: object type: array enabled: - description: If this attribute - is not an empty block, then - TLS is used for the server - connection. The structure - is documented below. + description: '(Block List, + Max: 1) (see below for nested + schema)' items: properties: caCertificate: - description: X.509 certificate - of the certificate - authority which issued - the server's certificate, - in PEM format. If - empty, the server's - certificate must be - signed by a well-known - CA. + description: (String) type: string type: object type: array @@ -523,16 +465,12 @@ spec: type: object type: array password: - description: Password for the database - access. This is a block with a single - field named raw which should contain - the password. + description: '(Block List, Max: 1) (see + below for nested schema)' items: properties: rawSecretRef: - description: A SecretKeySelector - is a reference to a secret key - in an arbitrary namespace. + description: (String, Sensitive) properties: key: description: The key to select. @@ -552,91 +490,78 @@ spec: type: object type: array user: - description: User for the database access. + description: (String) type: string type: object type: array type: object type: array securityGroups: - description: '- List of security groups that the - transfer associated with this endpoint should use.' + description: (List of String) items: type: string type: array sharding: - description: Shard selection rules for the data being - transferred. The structure is documented below. + description: '(Block List, Max: 1) (see below for + nested schema)' items: properties: columnValueHash: - description: Shard data by the hash value of - the specified column. The structure is documented - below. + description: '(Block List, Max: 1) (see below + for nested schema)' items: properties: columnName: - description: The name of the column to - calculate hash from. + description: (String) type: string type: object type: array customMapping: - description: A custom shard mapping by the value - of the specified column. The structure is - documented below. + description: '(Block List, Max: 1) (see below + for nested schema)' items: properties: columnName: - description: The name of the column to - calculate hash from. + description: (String) type: string mapping: - description: The mapping of the specified - column values to the shard names. The - structure is documented below. + description: (Block List) (see below for + nested schema) items: properties: columnValue: - description: The value of the column. - Currently only the string columns - are supported. The structure is - documented below. + description: '(Block List, Max: + 1) (see below for nested schema)' items: properties: stringValue: - description: The string value - of the column. + description: (String) type: string type: object type: array shardName: - description: The name of the shard - into which all the rows with the - specified column_value will be - written. + description: (String) type: string type: object type: array type: object type: array roundRobin: - description: robin manner. Specify as an empty - block to enable. + description: '(Block List, Max: 1) (see below + for nested schema)' items: type: object type: array transferId: - description: Shard data by ID of the transfer. + description: '(Block List, Max: 1) (see below + for nested schema)' items: type: object type: array type: object type: array subnetId: - description: '- Identifier of the Yandex Cloud VPC - subnetwork to user for accessing the database. If - omitted, the server has to be accessible via Internet.' + description: (String) type: string subnetIdRef: description: Reference to a Subnet in vpc to populate @@ -717,36 +642,36 @@ spec: type: object type: array kafkaSource: - description: Settings specific to the Kafka source endpoint. + description: '(Block List, Max: 1) (see below for nested + schema)' items: properties: auth: - description: Authentication data. + description: '(Block List, Max: 1) (see below for + nested schema)' items: properties: noAuth: - description: Connection without authentication - data. + description: '(Block List, Max: 1) (see below + for nested schema)' items: type: object type: array sasl: - description: Authentication using sasl. + description: '(Block List, Max: 1) (see below + for nested schema)' items: properties: mechanism: + description: (String) type: string password: - description: Password for the database - access. This is a block with a single - field named raw which should contain - the password. + description: '(Block List, Max: 1) (see + below for nested schema)' items: properties: rawSecretRef: - description: A SecretKeySelector - is a reference to a secret key - in an arbitrary namespace. + description: (String, Sensitive) properties: key: description: The key to select. @@ -766,65 +691,51 @@ spec: type: object type: array user: - description: User for the database access. + description: (String) type: string type: object type: array type: object type: array connection: - description: Connection settings. + description: '(Block List, Max: 1) (see below for + nested schema)' items: properties: clusterId: - description: Identifier of the Managed Kafka - cluster. + description: (String) type: string onPremise: - description: Connection settings of the on-premise - PostgreSQL server. + description: '(Block List, Max: 1) (see below + for nested schema)' items: properties: brokerUrls: - description: List of Kafka broker URLs. + description: (List of String) items: type: string type: array subnetId: - description: '- Identifier of the Yandex - Cloud VPC subnetwork to user for accessing - the database. If omitted, the server - has to be accessible via Internet.' + description: (String) type: string tlsMode: - description: TLS settings for the server - connection. Empty implies plaintext - connection. The structure is documented - below. + description: '(Block List, Max: 1) (see + below for nested schema)' items: properties: disabled: - description: Empty block designating - that the connection is not secured, - i.e. plaintext connection. + description: '(Block List, Max: + 1) (see below for nested schema)' items: type: object type: array enabled: - description: If this attribute is - not an empty block, then TLS is - used for the server connection. - The structure is documented below. + description: '(Block List, Max: + 1) (see below for nested schema)' items: properties: caCertificate: - description: X.509 certificate - of the certificate authority - which issued the server's - certificate, in PEM format. - If empty, the server's certificate - must be signed by a well-known - CA. + description: (String) type: string type: object type: array @@ -835,232 +746,207 @@ spec: type: object type: array parser: - description: '- Data parsing rules.' + description: '(Block List, Max: 1) (see below for + nested schema)' items: properties: auditTrailsV1Parser: - description: Parse Audit Trails data. Empty - struct. + description: '(Block List, Max: 1) (see below + for nested schema)' items: type: object type: array cloudLoggingParser: - description: Parse Cloud Logging data. Empty - struct. + description: '(Block List, Max: 1) (see below + for nested schema)' items: type: object type: array jsonParser: - description: Parse data in json format. + description: '(Block List, Max: 1) (see below + for nested schema)' items: properties: addRestColumn: - description: Add fields, that are not - in the schema, into the _rest column. + description: (Boolean) type: boolean dataSchema: - description: Data parsing scheme.The structure - is documented below. + description: '(Block List, Max: 1) (see + below for nested schema)' items: properties: fields: - description: Description of the - data schema in the array of fields - structure (documented below). + description: '(Block List, Max: + 1) (see below for nested schema)' items: properties: fields: - description: Description of - the data schema in the array - of fields structure (documented - below). + description: '(Block List, + Max: 1) (see below for nested + schema)' items: properties: key: - description: Mark field - as Primary Key. + description: (Boolean) type: boolean name: - description: Field name. + description: (String) type: string path: - description: '- A path - where resulting tables - are stored.' + description: (String) type: string required: - description: Mark field - as required. + description: (Boolean) type: boolean type: - description: 'Field - type, one of: INT64, - INT32, INT16, INT8, - UINT64, UINT32, UINT16, - UINT8, DOUBLE, BOOLEAN, - STRING, UTF8, ANY, - DATETIME.' + description: (String) type: string type: object type: array type: object type: array jsonFields: - description: Description of the - data schema as JSON specification. + description: (String) type: string type: object type: array nullKeysAllowed: - description: Allow null keys. If false - - null keys will be putted to unparsed - data + description: (Boolean) type: boolean unescapeStringValues: - description: Allow unescape string values. + description: (Boolean) type: boolean type: object type: array tskvParser: - description: Parse data if tskv format. + description: '(Block List, Max: 1) (see below + for nested schema)' items: properties: addRestColumn: - description: Add fields, that are not - in the schema, into the _rest column. + description: (Boolean) type: boolean dataSchema: - description: Data parsing scheme.The structure - is documented below. + description: '(Block List, Max: 1) (see + below for nested schema)' items: properties: fields: - description: Description of the - data schema in the array of fields - structure (documented below). + description: '(Block List, Max: + 1) (see below for nested schema)' items: properties: fields: - description: Description of - the data schema in the array - of fields structure (documented - below). + description: '(Block List, + Max: 1) (see below for nested + schema)' items: properties: key: - description: Mark field - as Primary Key. + description: (Boolean) type: boolean name: - description: Field name. + description: (String) type: string path: - description: '- A path - where resulting tables - are stored.' + description: (String) type: string required: - description: Mark field - as required. + description: (Boolean) type: boolean type: - description: 'Field - type, one of: INT64, - INT32, INT16, INT8, - UINT64, UINT32, UINT16, - UINT8, DOUBLE, BOOLEAN, - STRING, UTF8, ANY, - DATETIME.' + description: (String) type: string type: object type: array type: object type: array jsonFields: - description: Description of the - data schema as JSON specification. + description: (String) type: string type: object type: array nullKeysAllowed: - description: Allow null keys. If false - - null keys will be putted to unparsed - data + description: (Boolean) type: boolean unescapeStringValues: - description: Allow unescape string values. + description: (Boolean) type: boolean type: object type: array type: object type: array securityGroups: - description: '- List of security groups that the - transfer associated with this endpoint should use.' + description: (List of String) items: type: string type: array topicName: - description: Full topic name + description: (String) type: string topicNames: - description: The list of full source topic names. + description: (List of String) items: type: string type: array transformer: - description: Transform data with a custom Cloud Function. + description: '(Block List, Max: 1) (see below for + nested schema)' items: properties: bufferFlushInterval: + description: (String) type: string bufferSize: + description: (String) type: string cloudFunction: + description: (String) type: string invocationTimeout: + description: (String) type: string numberOfRetries: + description: (Number) type: number serviceAccountId: - description: '- Service account ID for interaction - with database.' + description: (String) type: string type: object type: array type: object type: array kafkaTarget: - description: Settings specific to the Kafka target endpoint. + description: '(Block List, Max: 1) (see below for nested + schema)' items: properties: auth: - description: Authentication data. + description: '(Block List, Max: 1) (see below for + nested schema)' items: properties: noAuth: - description: Connection without authentication - data. + description: '(Block List, Max: 1) (see below + for nested schema)' items: type: object type: array sasl: - description: Authentication using sasl. + description: '(Block List, Max: 1) (see below + for nested schema)' items: properties: mechanism: + description: (String) type: string password: - description: Password for the database - access. This is a block with a single - field named raw which should contain - the password. + description: '(Block List, Max: 1) (see + below for nested schema)' items: properties: rawSecretRef: - description: A SecretKeySelector - is a reference to a secret key - in an arbitrary namespace. + description: (String, Sensitive) properties: key: description: The key to select. @@ -1080,65 +966,51 @@ spec: type: object type: array user: - description: User for the database access. + description: (String) type: string type: object type: array type: object type: array connection: - description: Connection settings. + description: '(Block List, Max: 1) (see below for + nested schema)' items: properties: clusterId: - description: Identifier of the Managed Kafka - cluster. + description: (String) type: string onPremise: - description: Connection settings of the on-premise - PostgreSQL server. + description: '(Block List, Max: 1) (see below + for nested schema)' items: properties: brokerUrls: - description: List of Kafka broker URLs. + description: (List of String) items: type: string type: array subnetId: - description: '- Identifier of the Yandex - Cloud VPC subnetwork to user for accessing - the database. If omitted, the server - has to be accessible via Internet.' + description: (String) type: string tlsMode: - description: TLS settings for the server - connection. Empty implies plaintext - connection. The structure is documented - below. + description: '(Block List, Max: 1) (see + below for nested schema)' items: properties: disabled: - description: Empty block designating - that the connection is not secured, - i.e. plaintext connection. + description: '(Block List, Max: + 1) (see below for nested schema)' items: type: object type: array enabled: - description: If this attribute is - not an empty block, then TLS is - used for the server connection. - The structure is documented below. + description: '(Block List, Max: + 1) (see below for nested schema)' items: properties: caCertificate: - description: X.509 certificate - of the certificate authority - which issued the server's - certificate, in PEM format. - If empty, the server's certificate - must be signed by a well-known - CA. + description: (String) type: string type: object type: array @@ -1149,102 +1021,105 @@ spec: type: object type: array securityGroups: - description: '- List of security groups that the - transfer associated with this endpoint should use.' + description: (List of String) items: type: string type: array serializer: - description: '- Data serialization format.' + description: '(Block List, Max: 1) (see below for + nested schema)' items: properties: serializerAuto: - description: Empty block. Select data serialization - format automatically. + description: '(Block List, Max: 1) (see below + for nested schema)' items: type: object type: array serializerDebezium: - description: Serialize data in json format. - The structure is documented below. + description: '(Block List, Max: 1) (see below + for nested schema)' items: properties: serializerParameters: - description: A list of debezium parameters - set by the structure of the key and - value string fields. + description: (Block List) (see below for + nested schema) items: properties: key: - description: Mark field as Primary - Key. + description: (Boolean) type: string value: + description: (String) type: string type: object type: array type: object type: array serializerJson: - description: Empty block. Serialize data in - json format. + description: '(Block List, Max: 1) (see below + for nested schema)' items: type: object type: array type: object type: array topicSettings: - description: Target topic settings. + description: '(Block List, Max: 1) (see below for + nested schema)' items: properties: topic: - description: All messages will be sent to one - topic. The structure is documented below. + description: '(Block List, Max: 1) (see below + for nested schema)' items: properties: saveTxOrder: - description: '- Save transaction order' + description: (Boolean) type: boolean topicName: - description: Full topic name + description: (String) type: string type: object type: array topicPrefix: - description: Topic name prefix. Messages will - be sent to topic with name ... + description: (String) type: string type: object type: array type: object type: array metrikaSource: + description: '(Block List, Max: 1) (see below for nested + schema)' items: properties: counterIds: + description: (List of Number) items: type: number type: array streams: + description: (Block List) (see below for nested schema) items: properties: columns: + description: (List of String) items: type: string type: array type: - description: 'Field type, one of: INT64, INT32, - INT16, INT8, UINT64, UINT32, UINT16, UINT8, - DOUBLE, BOOLEAN, STRING, UTF8, ANY, DATETIME.' + description: (String) type: string type: object type: array token: + description: '(Block List, Max: 1) (see below for + nested schema)' items: properties: rawSecretRef: - description: A SecretKeySelector is a reference - to a secret key in an arbitrary namespace. + description: (String, Sensitive) properties: key: description: The key to select. @@ -1265,40 +1140,37 @@ spec: type: object type: array mongoSource: - description: Settings specific to the MongoDB source endpoint. + description: '(Block List, Max: 1) (see below for nested + schema)' items: properties: collections: - description: The list of the MongoDB collections that - should be transferred. If omitted, all available - collections will be transferred. The structure of - the list item is documented below. + description: (Block List) (see below for nested schema) items: properties: collectionName: - description: Collection name. + description: (String) type: string databaseName: - description: Database name. + description: (String) type: string type: object type: array connection: - description: Connection settings. + description: '(Block List, Max: 1) (see below for + nested schema)' items: properties: connectionOptions: - description: Connection options. The structure - is documented below. + description: '(Block List, Max: 1) (see below + for nested schema)' items: properties: authSource: - description: Name of the database associated - with the credentials. + description: (String) type: string mdbClusterId: - description: Identifier of the Managed - PostgreSQL cluster. + description: (String) type: string mdbClusterIdRef: description: Reference to a MongodbCluster @@ -1378,57 +1250,41 @@ spec: type: object type: object onPremise: - description: Connection settings of the - on-premise PostgreSQL server. + description: '(Block List, Max: 1) (see + below for nested schema)' items: properties: hosts: - description: List of host names - of the PostgreSQL server. Exactly - one host is expected currently. + description: (List of String) items: type: string type: array port: - description: Port for the database - connection. + description: (Number) type: number replicaSet: - description: Replica set name. + description: (String) type: string tlsMode: - description: TLS settings for the - server connection. Empty implies - plaintext connection. The structure - is documented below. + description: '(Block List, Max: + 1) (see below for nested schema)' items: properties: disabled: - description: Empty block designating - that the connection is not - secured, i.e. plaintext - connection. + description: '(Block List, + Max: 1) (see below for nested + schema)' items: type: object type: array enabled: - description: If this attribute - is not an empty block, then - TLS is used for the server - connection. The structure - is documented below. + description: '(Block List, + Max: 1) (see below for nested + schema)' items: properties: caCertificate: - description: X.509 certificate - of the certificate - authority which issued - the server's certificate, - in PEM format. If - empty, the server's - certificate must be - signed by a well-known - CA. + description: (String) type: string type: object type: array @@ -1437,16 +1293,12 @@ spec: type: object type: array password: - description: Password for the database - access. This is a block with a single - field named raw which should contain - the password. + description: '(Block List, Max: 1) (see + below for nested schema)' items: properties: rawSecretRef: - description: A SecretKeySelector - is a reference to a secret key - in an arbitrary namespace. + description: (String, Sensitive) properties: key: description: The key to select. @@ -1466,39 +1318,34 @@ spec: type: object type: array user: - description: User for the database access. + description: (String) type: string type: object type: array type: object type: array excludedCollections: - description: The list of the MongoDB collections that - should not be transferred. + description: (Block List) (see below for nested schema) items: properties: collectionName: - description: Collection name. + description: (String) type: string databaseName: - description: Database name. + description: (String) type: string type: object type: array secondaryPreferredMode: - description: whether the secondary server should be - preferred to the primary when copying data. + description: (Boolean) type: boolean securityGroups: - description: '- List of security groups that the - transfer associated with this endpoint should use.' + description: (List of String) items: type: string type: array subnetId: - description: '- Identifier of the Yandex Cloud VPC - subnetwork to user for accessing the database. If - omitted, the server has to be accessible via Internet.' + description: (String) type: string subnetIdRef: description: Reference to a Subnet in vpc to populate @@ -1579,30 +1426,28 @@ spec: type: object type: array mongoTarget: - description: Settings specific to the MongoDB target endpoint. + description: '(Block List, Max: 1) (see below for nested + schema)' items: properties: cleanupPolicy: - description: '- How to clean collections when activating - the transfer. One of "YDB_CLEANUP_POLICY_DISABLED" - or "YDB_CLEANUP_POLICY_DROP".' + description: (String) type: string connection: - description: Connection settings. + description: '(Block List, Max: 1) (see below for + nested schema)' items: properties: connectionOptions: - description: Connection options. The structure - is documented below. + description: '(Block List, Max: 1) (see below + for nested schema)' items: properties: authSource: - description: Name of the database associated - with the credentials. + description: (String) type: string mdbClusterId: - description: Identifier of the Managed - PostgreSQL cluster. + description: (String) type: string mdbClusterIdRef: description: Reference to a MongodbCluster @@ -1682,57 +1527,41 @@ spec: type: object type: object onPremise: - description: Connection settings of the - on-premise PostgreSQL server. + description: '(Block List, Max: 1) (see + below for nested schema)' items: properties: hosts: - description: List of host names - of the PostgreSQL server. Exactly - one host is expected currently. + description: (List of String) items: type: string type: array port: - description: Port for the database - connection. + description: (Number) type: number replicaSet: - description: Replica set name. + description: (String) type: string tlsMode: - description: TLS settings for the - server connection. Empty implies - plaintext connection. The structure - is documented below. + description: '(Block List, Max: + 1) (see below for nested schema)' items: properties: disabled: - description: Empty block designating - that the connection is not - secured, i.e. plaintext - connection. + description: '(Block List, + Max: 1) (see below for nested + schema)' items: type: object type: array enabled: - description: If this attribute - is not an empty block, then - TLS is used for the server - connection. The structure - is documented below. + description: '(Block List, + Max: 1) (see below for nested + schema)' items: properties: caCertificate: - description: X.509 certificate - of the certificate - authority which issued - the server's certificate, - in PEM format. If - empty, the server's - certificate must be - signed by a well-known - CA. + description: (String) type: string type: object type: array @@ -1741,16 +1570,12 @@ spec: type: object type: array password: - description: Password for the database - access. This is a block with a single - field named raw which should contain - the password. + description: '(Block List, Max: 1) (see + below for nested schema)' items: properties: rawSecretRef: - description: A SecretKeySelector - is a reference to a secret key - in an arbitrary namespace. + description: (String, Sensitive) properties: key: description: The key to select. @@ -1770,25 +1595,22 @@ spec: type: object type: array user: - description: User for the database access. + description: (String) type: string type: object type: array type: object type: array database: - description: '- Database.' + description: (String) type: string securityGroups: - description: '- List of security groups that the - transfer associated with this endpoint should use.' + description: (List of String) items: type: string type: array subnetId: - description: '- Identifier of the Yandex Cloud VPC - subnetwork to user for accessing the database. If - omitted, the server has to be accessible via Internet.' + description: (String) type: string subnetIdRef: description: Reference to a Subnet in vpc to populate @@ -1869,16 +1691,17 @@ spec: type: object type: array mysqlSource: - description: Settings specific to the MySQL source endpoint. + description: '(Block List, Max: 1) (see below for nested + schema)' items: properties: connection: - description: Connection settings. + description: '(Block List, Max: 1) (see below for + nested schema)' items: properties: mdbClusterId: - description: Identifier of the Managed PostgreSQL - cluster. + description: (String) type: string mdbClusterIdRef: description: Reference to a MySQLCluster in @@ -1957,25 +1780,20 @@ spec: type: object type: object onPremise: - description: Connection settings of the on-premise - PostgreSQL server. + description: '(Block List, Max: 1) (see below + for nested schema)' items: properties: hosts: - description: List of host names of the - PostgreSQL server. Exactly one host - is expected currently. + description: (List of String) items: type: string type: array port: - description: Port for the database connection. + description: (Number) type: number subnetId: - description: '- Identifier of the Yandex - Cloud VPC subnetwork to user for accessing - the database. If omitted, the server - has to be accessible via Internet.' + description: (String) type: string subnetIdRef: description: Reference to a Subnet in @@ -2055,34 +1873,23 @@ spec: type: object type: object tlsMode: - description: TLS settings for the server - connection. Empty implies plaintext - connection. The structure is documented - below. + description: '(Block List, Max: 1) (see + below for nested schema)' items: properties: disabled: - description: Empty block designating - that the connection is not secured, - i.e. plaintext connection. + description: '(Block List, Max: + 1) (see below for nested schema)' items: type: object type: array enabled: - description: If this attribute is - not an empty block, then TLS is - used for the server connection. - The structure is documented below. + description: '(Block List, Max: + 1) (see below for nested schema)' items: properties: caCertificate: - description: X.509 certificate - of the certificate authority - which issued the server's - certificate, in PEM format. - If empty, the server's certificate - must be signed by a well-known - CA. + description: (String) type: string type: object type: array @@ -2093,7 +1900,7 @@ spec: type: object type: array database: - description: '- Database.' + description: (String) type: string databaseRef: description: Reference to a MySQLDatabase in mdb to @@ -2172,47 +1979,41 @@ spec: type: object type: object excludeTablesRegex: - description: Opposite of include_table_regex. The - tables matching the specified regular expressions - will not be transferred. + description: (List of String) items: type: string type: array includeTablesRegex: - description: List of regular expressions of table - names which should be transferred. A table name - is formatted as schemaname.tablename. For example, - a single regular expression may look like ^mydb.employees$. + description: (List of String) items: type: string type: array objectTransferSettings: - description: Defines which database schema objects - should be transferred, e.g. views, functions, etc. + description: '(Block List, Max: 1) (see below for + nested schema)' items: properties: routine: + description: (String) type: string tables: + description: (String) type: string trigger: - description: All of the attrubutes are optional - and should be either "BEFORE_DATA", "AFTER_DATA" - or "NEVER". + description: (String) type: string view: + description: (String) type: string type: object type: array password: - description: Password for the database access. This - is a block with a single field named raw which should - contain the password. + description: '(Block List, Max: 1) (see below for + nested schema)' items: properties: rawSecretRef: - description: A SecretKeySelector is a reference - to a secret key in an arbitrary namespace. + description: (String, Sensitive) properties: key: description: The key to select. @@ -2231,8 +2032,7 @@ spec: type: object type: array securityGroups: - description: '- List of security groups that the - transfer associated with this endpoint should use.' + description: (List of String) items: type: string type: array @@ -2316,17 +2116,13 @@ spec: type: object type: object serviceDatabase: - description: The name of the database where technical - tables (__tm_keeper, __tm_gtid_keeper) will be created. - Default is the value of the attribute database. + description: (String) type: string timezone: - description: 'Timezone to use for parsing timestamps - for saving source timezones. Accepts values from - IANA timezone database. Default: local timezone.' + description: (String) type: string user: - description: User for the database access. + description: (String) type: string userRef: description: Reference to a MySQLUser in mdb to populate @@ -2407,21 +2203,20 @@ spec: type: object type: array mysqlTarget: - description: Settings specific to the MySQL target endpoint. + description: '(Block List, Max: 1) (see below for nested + schema)' items: properties: cleanupPolicy: - description: '- How to clean collections when activating - the transfer. One of "YDB_CLEANUP_POLICY_DISABLED" - or "YDB_CLEANUP_POLICY_DROP".' + description: (String) type: string connection: - description: Connection settings. + description: '(Block List, Max: 1) (see below for + nested schema)' items: properties: mdbClusterId: - description: Identifier of the Managed PostgreSQL - cluster. + description: (String) type: string mdbClusterIdRef: description: Reference to a MySQLCluster in @@ -2500,25 +2295,20 @@ spec: type: object type: object onPremise: - description: Connection settings of the on-premise - PostgreSQL server. + description: '(Block List, Max: 1) (see below + for nested schema)' items: properties: hosts: - description: List of host names of the - PostgreSQL server. Exactly one host - is expected currently. + description: (List of String) items: type: string type: array port: - description: Port for the database connection. + description: (Number) type: number subnetId: - description: '- Identifier of the Yandex - Cloud VPC subnetwork to user for accessing - the database. If omitted, the server - has to be accessible via Internet.' + description: (String) type: string subnetIdRef: description: Reference to a Subnet in @@ -2598,34 +2388,23 @@ spec: type: object type: object tlsMode: - description: TLS settings for the server - connection. Empty implies plaintext - connection. The structure is documented - below. + description: '(Block List, Max: 1) (see + below for nested schema)' items: properties: disabled: - description: Empty block designating - that the connection is not secured, - i.e. plaintext connection. + description: '(Block List, Max: + 1) (see below for nested schema)' items: type: object type: array enabled: - description: If this attribute is - not an empty block, then TLS is - used for the server connection. - The structure is documented below. + description: '(Block List, Max: + 1) (see below for nested schema)' items: properties: caCertificate: - description: X.509 certificate - of the certificate authority - which issued the server's - certificate, in PEM format. - If empty, the server's certificate - must be signed by a well-known - CA. + description: (String) type: string type: object type: array @@ -2636,7 +2415,7 @@ spec: type: object type: array database: - description: '- Database.' + description: (String) type: string databaseRef: description: Reference to a MySQLDatabase in mdb to @@ -2715,14 +2494,12 @@ spec: type: object type: object password: - description: Password for the database access. This - is a block with a single field named raw which should - contain the password. + description: '(Block List, Max: 1) (see below for + nested schema)' items: properties: rawSecretRef: - description: A SecretKeySelector is a reference - to a secret key in an arbitrary namespace. + description: (String, Sensitive) properties: key: description: The key to select. @@ -2741,8 +2518,7 @@ spec: type: object type: array securityGroups: - description: '- List of security groups that the - transfer associated with this endpoint should use.' + description: (List of String) items: type: string type: array @@ -2826,25 +2602,19 @@ spec: type: object type: object serviceDatabase: - description: The name of the database where technical - tables (__tm_keeper, __tm_gtid_keeper) will be created. - Default is the value of the attribute database. + description: (String) type: string skipConstraintChecks: - description: When true, disables foreign key checks. - See foreign_key_checks. False by default. + description: (Boolean) type: boolean sqlMode: - description: sql_mode to use when interacting with - the server. Defaults to "NO_AUTO_VALUE_ON_ZERO,NO_DIR_IN_CREATE,NO_ENGINE_SUBSTITUTION". + description: (String) type: string timezone: - description: 'Timezone to use for parsing timestamps - for saving source timezones. Accepts values from - IANA timezone database. Default: local timezone.' + description: (String) type: string user: - description: User for the database access. + description: (String) type: string userRef: description: Reference to a MySQLUser in mdb to populate @@ -2925,18 +2695,17 @@ spec: type: object type: array postgresSource: - description: Settings specific to the PostgreSQL source - endpoint. + description: '(Block List, Max: 1) (see below for nested + schema)' items: properties: connection: - description: Connection settings. The structure is - documented below. + description: '(Block List, Max: 1) (see below for + nested schema)' items: properties: mdbClusterId: - description: Identifier of the Managed PostgreSQL - cluster. + description: (String) type: string mdbClusterIdRef: description: Reference to a PostgresqlCluster @@ -3015,25 +2784,20 @@ spec: type: object type: object onPremise: - description: Connection settings of the on-premise - PostgreSQL server. + description: '(Block List, Max: 1) (see below + for nested schema)' items: properties: hosts: - description: List of host names of the - PostgreSQL server. Exactly one host - is expected currently. + description: (List of String) items: type: string type: array port: - description: Port for the database connection. + description: (Number) type: number subnetId: - description: '- Identifier of the Yandex - Cloud VPC subnetwork to user for accessing - the database. If omitted, the server - has to be accessible via Internet.' + description: (String) type: string subnetIdRef: description: Reference to a Subnet in @@ -3113,34 +2877,23 @@ spec: type: object type: object tlsMode: - description: TLS settings for the server - connection. Empty implies plaintext - connection. The structure is documented - below. + description: '(Block List, Max: 1) (see + below for nested schema)' items: properties: disabled: - description: Empty block designating - that the connection is not secured, - i.e. plaintext connection. + description: '(Block List, Max: + 1) (see below for nested schema)' items: type: object type: array enabled: - description: If this attribute is - not an empty block, then TLS is - used for the server connection. - The structure is documented below. + description: '(Block List, Max: + 1) (see below for nested schema)' items: properties: caCertificate: - description: X.509 certificate - of the certificate authority - which issued the server's - certificate, in PEM format. - If empty, the server's certificate - must be signed by a well-known - CA. + description: (String) type: string type: object type: array @@ -3151,7 +2904,7 @@ spec: type: object type: array database: - description: Name of the database to transfer. + description: (String) type: string databaseRef: description: Reference to a PostgresqlDatabase in @@ -3230,79 +2983,83 @@ spec: type: object type: object excludeTables: - description: List of tables which will not be transfered, - formatted as schemaname.tablename. + description: (List of String) items: type: string type: array includeTables: - description: List of tables to transfer, formatted - as schemaname.tablename. If omitted or an empty - list is specified, all tables will be transferred. + description: (List of String) items: type: string type: array objectTransferSettings: - description: Defines which database schema objects - should be transferred, e.g. views, functions, etc. + description: '(Block List, Max: 1) (see below for + nested schema)' items: properties: cast: - description: All of the attrubutes are optional - and should be either "BEFORE_DATA", "AFTER_DATA" - or "NEVER". + description: (String) type: string collation: + description: (String) type: string constraint: + description: (String) type: string defaultValues: + description: (String) type: string fkConstraint: + description: (String) type: string function: + description: (String) type: string index: + description: (String) type: string materializedView: + description: (String) type: string policy: + description: (String) type: string primaryKey: + description: (String) type: string rule: + description: (String) type: string sequence: + description: (String) type: string sequenceOwnedBy: + description: (String) type: string sequenceSet: + description: (String) type: string table: + description: (String) type: string trigger: - description: All of the attrubutes are optional - and should be either "BEFORE_DATA", "AFTER_DATA" - or "NEVER". + description: (String) type: string type: - description: 'Field type, one of: INT64, INT32, - INT16, INT8, UINT64, UINT32, UINT16, UINT8, - DOUBLE, BOOLEAN, STRING, UTF8, ANY, DATETIME.' + description: (String) type: string view: + description: (String) type: string type: object type: array password: - description: Password for the database access. This - is a block with a single field named raw which should - contain the password. + description: '(Block List, Max: 1) (see below for + nested schema)' items: properties: rawSecretRef: - description: A SecretKeySelector is a reference - to a secret key in an arbitrary namespace. + description: (String, Sensitive) properties: key: description: The key to select. @@ -3321,8 +3078,7 @@ spec: type: object type: array securityGroups: - description: List of security groups that the transfer - associated with this endpoint should use. + description: (List of String) items: type: string type: array @@ -3406,18 +3162,13 @@ spec: type: object type: object serviceSchema: - description: Name of the database schema in which - auxiliary tables needed for the transfer will be - created. Empty service_schema implies schema "public". + description: (String) type: string slotGigabyteLagLimit: - description: Maximum WAL size held by the replication - slot, in gigabytes. Exceeding this limit will result - in a replication failure and deletion of the replication - slot. Unlimited by default. + description: (Number) type: number user: - description: User for the database access. + description: (String) type: string userRef: description: Reference to a PostgresqlUser in mdb @@ -3498,22 +3249,20 @@ spec: type: object type: array postgresTarget: - description: Settings specific to the PostgreSQL target - endpoint. + description: '(Block List, Max: 1) (see below for nested + schema)' items: properties: cleanupPolicy: - description: '- How to clean collections when activating - the transfer. One of "YDB_CLEANUP_POLICY_DISABLED" - or "YDB_CLEANUP_POLICY_DROP".' + description: (String) type: string connection: - description: Connection settings. + description: '(Block List, Max: 1) (see below for + nested schema)' items: properties: mdbClusterId: - description: Identifier of the Managed PostgreSQL - cluster. + description: (String) type: string mdbClusterIdRef: description: Reference to a PostgresqlCluster @@ -3592,25 +3341,20 @@ spec: type: object type: object onPremise: - description: Connection settings of the on-premise - PostgreSQL server. + description: '(Block List, Max: 1) (see below + for nested schema)' items: properties: hosts: - description: List of host names of the - PostgreSQL server. Exactly one host - is expected currently. + description: (List of String) items: type: string type: array port: - description: Port for the database connection. + description: (Number) type: number subnetId: - description: '- Identifier of the Yandex - Cloud VPC subnetwork to user for accessing - the database. If omitted, the server - has to be accessible via Internet.' + description: (String) type: string subnetIdRef: description: Reference to a Subnet in @@ -3690,34 +3434,23 @@ spec: type: object type: object tlsMode: - description: TLS settings for the server - connection. Empty implies plaintext - connection. The structure is documented - below. + description: '(Block List, Max: 1) (see + below for nested schema)' items: properties: disabled: - description: Empty block designating - that the connection is not secured, - i.e. plaintext connection. + description: '(Block List, Max: + 1) (see below for nested schema)' items: type: object type: array enabled: - description: If this attribute is - not an empty block, then TLS is - used for the server connection. - The structure is documented below. + description: '(Block List, Max: + 1) (see below for nested schema)' items: properties: caCertificate: - description: X.509 certificate - of the certificate authority - which issued the server's - certificate, in PEM format. - If empty, the server's certificate - must be signed by a well-known - CA. + description: (String) type: string type: object type: array @@ -3728,7 +3461,7 @@ spec: type: object type: array database: - description: '- Database.' + description: (String) type: string databaseRef: description: Reference to a PostgresqlDatabase in @@ -3807,14 +3540,12 @@ spec: type: object type: object password: - description: Password for the database access. This - is a block with a single field named raw which should - contain the password. + description: '(Block List, Max: 1) (see below for + nested schema)' items: properties: rawSecretRef: - description: A SecretKeySelector is a reference - to a secret key in an arbitrary namespace. + description: (String, Sensitive) properties: key: description: The key to select. @@ -3833,8 +3564,7 @@ spec: type: object type: array securityGroups: - description: '- List of security groups that the - transfer associated with this endpoint should use.' + description: (List of String) items: type: string type: array @@ -3918,7 +3648,7 @@ spec: type: object type: object user: - description: User for the database access. + description: (String) type: string userRef: description: Reference to a PostgresqlUser in mdb @@ -3999,26 +3729,26 @@ spec: type: object type: array ydbSource: - description: Settings specific to the YDB source endpoint. + description: '(Block List, Max: 1) (see below for nested + schema)' items: properties: changefeedCustomName: - description: '- Custom name for changefeed.' + description: (String) type: string database: - description: '- Database.' + description: (String) type: string instance: - description: '- Instance of YDB. Example: "my-cute-ydb.cloud.yandex.ru:2135".' + description: (String) type: string paths: - description: '- A list of paths which should be uploaded. - When not specified, all available tables are uploaded.' + description: (List of String) items: type: string type: array saKeyContentSecretRef: - description: '- Authentication key.' + description: (String, Sensitive) properties: key: description: The key to select. @@ -4035,54 +3765,43 @@ spec: - namespace type: object securityGroups: - description: '- List of security groups that the - transfer associated with this endpoint should use.' + description: (List of String) items: type: string type: array serviceAccountId: - description: '- Service account ID for interaction - with database.' + description: (String) type: string subnetId: - description: '- Identifier of the Yandex Cloud VPC - subnetwork to user for accessing the database. If - omitted, the server has to be accessible via Internet.' + description: (String) type: string type: object type: array ydbTarget: - description: Settings specific to the YDB target endpoint. + description: '(Block List, Max: 1) (see below for nested + schema)' items: properties: cleanupPolicy: - description: '- How to clean collections when activating - the transfer. One of "YDB_CLEANUP_POLICY_DISABLED" - or "YDB_CLEANUP_POLICY_DROP".' + description: (String) type: string database: - description: '- Database.' + description: (String) type: string defaultCompression: - description: '- Compression that will be used for - default columns family on YDB table creation One - of "YDB_DEFAULT_COMPRESSION_UNSPECIFIED", "YDB_DEFAULT_COMPRESSION_DISABLED", - "YDB_DEFAULT_COMPRESSION_LZ4".' + description: (String) type: string instance: - description: '- Instance of YDB. Example: "my-cute-ydb.cloud.yandex.ru:2135".' + description: (String) type: string isTableColumnOriented: - description: '- Whether a column-oriented (i.e. OLAP) - tables should be created. Default is false (create - row-oriented OLTP tables).' + description: (Boolean) type: boolean path: - description: '- A path where resulting tables are - stored.' + description: (String) type: string saKeyContentSecretRef: - description: '- Authentication key.' + description: (String, Sensitive) properties: key: description: The key to select. @@ -4099,293 +3818,253 @@ spec: - namespace type: object securityGroups: - description: '- List of security groups that the - transfer associated with this endpoint should use.' + description: (List of String) items: type: string type: array serviceAccountId: - description: '- Service account ID for interaction - with database.' + description: (String) type: string subnetId: - description: '- Identifier of the Yandex Cloud VPC - subnetwork to user for accessing the database. If - omitted, the server has to be accessible via Internet.' + description: (String) type: string type: object type: array ydsSource: - description: Settings specific to the YDS source endpoint. + description: '(Block List, Max: 1) (see below for nested + schema)' items: properties: allowTtlRewind: - description: '- Should continue working, if consumer - read lag exceed TTL of topic.' + description: (Boolean) type: boolean consumer: - description: '- Consumer.' + description: (String) type: string database: - description: '- Database.' + description: (String) type: string endpoint: - description: '- YDS Endpoint.' + description: (String) type: string parser: - description: '- Data parsing rules.' + description: '(Block List, Max: 1) (see below for + nested schema)' items: properties: auditTrailsV1Parser: - description: Parse Audit Trails data. Empty - struct. + description: '(Block List, Max: 1) (see below + for nested schema)' items: type: object type: array cloudLoggingParser: - description: Parse Cloud Logging data. Empty - struct. + description: '(Block List, Max: 1) (see below + for nested schema)' items: type: object type: array jsonParser: - description: Parse data in json format. + description: '(Block List, Max: 1) (see below + for nested schema)' items: properties: addRestColumn: - description: Add fields, that are not - in the schema, into the _rest column. + description: (Boolean) type: boolean dataSchema: - description: Data parsing scheme.The structure - is documented below. + description: '(Block List, Max: 1) (see + below for nested schema)' items: properties: fields: - description: Description of the - data schema in the array of fields - structure (documented below). + description: '(Block List, Max: + 1) (see below for nested schema)' items: properties: fields: - description: Description of - the data schema in the array - of fields structure (documented - below). + description: '(Block List, + Max: 1) (see below for nested + schema)' items: properties: key: - description: Mark field - as Primary Key. + description: (Boolean) type: boolean name: - description: Field name. + description: (String) type: string path: - description: '- A path - where resulting tables - are stored.' + description: (String) type: string required: - description: Mark field - as required. + description: (Boolean) type: boolean type: - description: 'Field - type, one of: INT64, - INT32, INT16, INT8, - UINT64, UINT32, UINT16, - UINT8, DOUBLE, BOOLEAN, - STRING, UTF8, ANY, - DATETIME.' + description: (String) type: string type: object type: array type: object type: array jsonFields: - description: Description of the - data schema as JSON specification. + description: (String) type: string type: object type: array nullKeysAllowed: - description: Allow null keys. If false - - null keys will be putted to unparsed - data + description: (Boolean) type: boolean unescapeStringValues: - description: Allow unescape string values. + description: (Boolean) type: boolean type: object type: array tskvParser: - description: Parse data if tskv format. + description: '(Block List, Max: 1) (see below + for nested schema)' items: properties: addRestColumn: - description: Add fields, that are not - in the schema, into the _rest column. + description: (Boolean) type: boolean dataSchema: - description: Data parsing scheme.The structure - is documented below. + description: '(Block List, Max: 1) (see + below for nested schema)' items: properties: fields: - description: Description of the - data schema in the array of fields - structure (documented below). + description: '(Block List, Max: + 1) (see below for nested schema)' items: properties: fields: - description: Description of - the data schema in the array - of fields structure (documented - below). + description: '(Block List, + Max: 1) (see below for nested + schema)' items: properties: key: - description: Mark field - as Primary Key. + description: (Boolean) type: boolean name: - description: Field name. + description: (String) type: string path: - description: '- A path - where resulting tables - are stored.' + description: (String) type: string required: - description: Mark field - as required. + description: (Boolean) type: boolean type: - description: 'Field - type, one of: INT64, - INT32, INT16, INT8, - UINT64, UINT32, UINT16, - UINT8, DOUBLE, BOOLEAN, - STRING, UTF8, ANY, - DATETIME.' + description: (String) type: string type: object type: array type: object type: array jsonFields: - description: Description of the - data schema as JSON specification. + description: (String) type: string type: object type: array nullKeysAllowed: - description: Allow null keys. If false - - null keys will be putted to unparsed - data + description: (Boolean) type: boolean unescapeStringValues: - description: Allow unescape string values. + description: (Boolean) type: boolean type: object type: array type: object type: array securityGroups: - description: '- List of security groups that the - transfer associated with this endpoint should use.' + description: (List of String) items: type: string type: array serviceAccountId: - description: '- Service account ID for interaction - with database.' + description: (String) type: string stream: - description: '- Stream.' + description: (String) type: string subnetId: - description: '- Identifier of the Yandex Cloud VPC - subnetwork to user for accessing the database. If - omitted, the server has to be accessible via Internet.' + description: (String) type: string supportedCodecs: - description: '- List of supported compression codec.' + description: (List of String) items: type: string type: array type: object type: array ydsTarget: - description: Settings specific to the YDS target endpoint. + description: '(Block List, Max: 1) (see below for nested + schema)' items: properties: database: - description: '- Database.' + description: (String) type: string endpoint: - description: '- YDS Endpoint.' + description: (String) type: string saveTxOrder: - description: '- Save transaction order' + description: (Boolean) type: boolean securityGroups: - description: '- List of security groups that the - transfer associated with this endpoint should use.' + description: (List of String) items: type: string type: array serializer: - description: '- Data serialization format.' + description: '(Block List, Max: 1) (see below for + nested schema)' items: properties: serializerAuto: - description: Empty block. Select data serialization - format automatically. + description: '(Block List, Max: 1) (see below + for nested schema)' items: type: object type: array serializerDebezium: - description: Serialize data in json format. - The structure is documented below. + description: '(Block List, Max: 1) (see below + for nested schema)' items: properties: serializerParameters: - description: A list of debezium parameters - set by the structure of the key and - value string fields. + description: (Block List) (see below for + nested schema) items: properties: key: - description: Mark field as Primary - Key. + description: (Boolean) type: string value: + description: (String) type: string type: object type: array type: object type: array serializerJson: - description: Empty block. Serialize data in - json format. + description: '(Block List, Max: 1) (see below + for nested schema)' items: type: object type: array type: object type: array serviceAccountId: - description: '- Service account ID for interaction - with database.' + description: (String) type: string stream: - description: '- Stream.' + description: (String) type: string subnetId: - description: '- Identifier of the Yandex Cloud VPC - subnetwork to user for accessing the database. If - omitted, the server has to be accessible via Internet.' + description: (String) type: string type: object type: array @@ -4406,11 +4085,10 @@ spec: autoscaler. properties: description: - description: Arbitrary description text for the endpoint. + description: (String) type: string folderId: - description: ID of the folder to create the endpoint in. If it - is not provided, the default provider folder is used. + description: (String) type: string folderIdRef: description: Reference to a Folder in resourcemanager to populate @@ -4491,106 +4169,86 @@ spec: labels: additionalProperties: type: string - description: A set of key/value label pairs to assign to the Data - Transfer endpoint. + description: (Map of String) type: object x-kubernetes-map-type: granular name: - description: Name of the endpoint. + description: (String) type: string settings: - description: Settings for the endpoint. The structure is documented - below. + description: '(Block List, Max: 1) (see below for nested schema)' items: properties: clickhouseSource: - description: Settings specific to the ClickHouse source - endpoint. + description: '(Block List, Max: 1) (see below for nested + schema)' items: properties: + clickhouseClusterName: + description: (String) + type: string connection: - description: Connection settings. + description: '(Block List, Max: 1) (see below for + nested schema)' items: properties: connectionOptions: - description: Connection options. The structure - is documented below. + description: '(Block List, Max: 1) (see below + for nested schema)' items: properties: database: - description: '- Database.' + description: (String) type: string mdbClusterId: - description: Identifier of the Managed - PostgreSQL cluster. + description: (String) type: string onPremise: - description: Connection settings of the - on-premise PostgreSQL server. + description: '(Block List, Max: 1) (see + below for nested schema)' items: properties: httpPort: - description: TCP port number for - the HTTP interface of the ClickHouse - server. + description: (Number) type: number nativePort: - description: TCP port number for - the native interface of the ClickHouse - server. + description: (Number) type: number shards: - description: The list of ClickHouse - shards. The structure is documented - below. + description: (Block List) (see below + for nested schema) items: properties: hosts: - description: List of host - names of the PostgreSQL - server. Exactly one host - is expected currently. + description: (List of String) items: type: string type: array name: - description: Field name. + description: (String) type: string type: object type: array tlsMode: - description: TLS settings for the - server connection. Empty implies - plaintext connection. The structure - is documented below. + description: '(Block List, Max: + 1) (see below for nested schema)' items: properties: disabled: - description: Empty block designating - that the connection is not - secured, i.e. plaintext - connection. + description: '(Block List, + Max: 1) (see below for nested + schema)' items: type: object type: array enabled: - description: If this attribute - is not an empty block, then - TLS is used for the server - connection. The structure - is documented below. + description: '(Block List, + Max: 1) (see below for nested + schema)' items: properties: caCertificate: - description: X.509 certificate - of the certificate - authority which issued - the server's certificate, - in PEM format. If - empty, the server's - certificate must be - signed by a well-known - CA. + description: (String) type: string type: object type: array @@ -4599,16 +4257,12 @@ spec: type: object type: array password: - description: Password for the database - access. This is a block with a single - field named raw which should contain - the password. + description: '(Block List, Max: 1) (see + below for nested schema)' items: properties: rawSecretRef: - description: A SecretKeySelector - is a reference to a secret key - in an arbitrary namespace. + description: (String, Sensitive) properties: key: description: The key to select. @@ -4628,35 +4282,29 @@ spec: type: object type: array user: - description: User for the database access. + description: (String) type: string type: object type: array type: object type: array excludeTables: - description: List of tables which will not be transfered, - formatted as schemaname.tablename. + description: (List of String) items: type: string type: array includeTables: - description: List of tables to transfer, formatted - as schemaname.tablename. If omitted or an empty - list is specified, all tables will be transferred. + description: (List of String) items: type: string type: array securityGroups: - description: '- List of security groups that the - transfer associated with this endpoint should use.' + description: (List of String) items: type: string type: array subnetId: - description: '- Identifier of the Yandex Cloud VPC - subnetwork to user for accessing the database. If - omitted, the server has to be accessible via Internet.' + description: (String) type: string subnetIdRef: description: Reference to a Subnet in vpc to populate @@ -4737,116 +4385,90 @@ spec: type: object type: array clickhouseTarget: - description: Settings specific to the ClickHouse target - endpoint. + description: '(Block List, Max: 1) (see below for nested + schema)' items: properties: altNames: - description: Table renaming rules. The structure is - documented below. + description: (Block List) (see below for nested schema) items: properties: fromName: - description: Name of the endpoint. + description: (String) type: string toName: - description: Name of the endpoint. + description: (String) type: string type: object type: array cleanupPolicy: - description: '- How to clean collections when activating - the transfer. One of "YDB_CLEANUP_POLICY_DISABLED" - or "YDB_CLEANUP_POLICY_DROP".' + description: (String) type: string clickhouseClusterName: - description: Name of the ClickHouse cluster. For managed - ClickHouse clusters defaults to managed cluster - ID. + description: (String) type: string connection: - description: Connection settings. + description: '(Block List, Max: 1) (see below for + nested schema)' items: properties: connectionOptions: - description: Connection options. The structure - is documented below. + description: '(Block List, Max: 1) (see below + for nested schema)' items: properties: database: - description: '- Database.' + description: (String) type: string mdbClusterId: - description: Identifier of the Managed - PostgreSQL cluster. + description: (String) type: string onPremise: - description: Connection settings of the - on-premise PostgreSQL server. + description: '(Block List, Max: 1) (see + below for nested schema)' items: properties: httpPort: - description: TCP port number for - the HTTP interface of the ClickHouse - server. + description: (Number) type: number nativePort: - description: TCP port number for - the native interface of the ClickHouse - server. + description: (Number) type: number shards: - description: The list of ClickHouse - shards. The structure is documented - below. + description: (Block List) (see below + for nested schema) items: properties: hosts: - description: List of host - names of the PostgreSQL - server. Exactly one host - is expected currently. + description: (List of String) items: type: string type: array name: - description: Field name. + description: (String) type: string type: object type: array tlsMode: - description: TLS settings for the - server connection. Empty implies - plaintext connection. The structure - is documented below. + description: '(Block List, Max: + 1) (see below for nested schema)' items: properties: disabled: - description: Empty block designating - that the connection is not - secured, i.e. plaintext - connection. + description: '(Block List, + Max: 1) (see below for nested + schema)' items: type: object type: array enabled: - description: If this attribute - is not an empty block, then - TLS is used for the server - connection. The structure - is documented below. + description: '(Block List, + Max: 1) (see below for nested + schema)' items: properties: caCertificate: - description: X.509 certificate - of the certificate - authority which issued - the server's certificate, - in PEM format. If - empty, the server's - certificate must be - signed by a well-known - CA. + description: (String) type: string type: object type: array @@ -4855,16 +4477,12 @@ spec: type: object type: array password: - description: Password for the database - access. This is a block with a single - field named raw which should contain - the password. + description: '(Block List, Max: 1) (see + below for nested schema)' items: properties: rawSecretRef: - description: A SecretKeySelector - is a reference to a secret key - in an arbitrary namespace. + description: (String, Sensitive) properties: key: description: The key to select. @@ -4884,91 +4502,78 @@ spec: type: object type: array user: - description: User for the database access. + description: (String) type: string type: object type: array type: object type: array securityGroups: - description: '- List of security groups that the - transfer associated with this endpoint should use.' + description: (List of String) items: type: string type: array sharding: - description: Shard selection rules for the data being - transferred. The structure is documented below. + description: '(Block List, Max: 1) (see below for + nested schema)' items: properties: columnValueHash: - description: Shard data by the hash value of - the specified column. The structure is documented - below. + description: '(Block List, Max: 1) (see below + for nested schema)' items: properties: columnName: - description: The name of the column to - calculate hash from. + description: (String) type: string type: object type: array customMapping: - description: A custom shard mapping by the value - of the specified column. The structure is - documented below. + description: '(Block List, Max: 1) (see below + for nested schema)' items: properties: columnName: - description: The name of the column to - calculate hash from. + description: (String) type: string mapping: - description: The mapping of the specified - column values to the shard names. The - structure is documented below. + description: (Block List) (see below for + nested schema) items: properties: columnValue: - description: The value of the column. - Currently only the string columns - are supported. The structure is - documented below. + description: '(Block List, Max: + 1) (see below for nested schema)' items: properties: stringValue: - description: The string value - of the column. + description: (String) type: string type: object type: array shardName: - description: The name of the shard - into which all the rows with the - specified column_value will be - written. + description: (String) type: string type: object type: array type: object type: array roundRobin: - description: robin manner. Specify as an empty - block to enable. + description: '(Block List, Max: 1) (see below + for nested schema)' items: type: object type: array transferId: - description: Shard data by ID of the transfer. + description: '(Block List, Max: 1) (see below + for nested schema)' items: type: object type: array type: object type: array subnetId: - description: '- Identifier of the Yandex Cloud VPC - subnetwork to user for accessing the database. If - omitted, the server has to be accessible via Internet.' + description: (String) type: string subnetIdRef: description: Reference to a Subnet in vpc to populate @@ -5049,36 +4654,36 @@ spec: type: object type: array kafkaSource: - description: Settings specific to the Kafka source endpoint. + description: '(Block List, Max: 1) (see below for nested + schema)' items: properties: auth: - description: Authentication data. + description: '(Block List, Max: 1) (see below for + nested schema)' items: properties: noAuth: - description: Connection without authentication - data. + description: '(Block List, Max: 1) (see below + for nested schema)' items: type: object type: array sasl: - description: Authentication using sasl. + description: '(Block List, Max: 1) (see below + for nested schema)' items: properties: mechanism: + description: (String) type: string password: - description: Password for the database - access. This is a block with a single - field named raw which should contain - the password. + description: '(Block List, Max: 1) (see + below for nested schema)' items: properties: rawSecretRef: - description: A SecretKeySelector - is a reference to a secret key - in an arbitrary namespace. + description: (String, Sensitive) properties: key: description: The key to select. @@ -5098,65 +4703,51 @@ spec: type: object type: array user: - description: User for the database access. + description: (String) type: string type: object type: array type: object type: array connection: - description: Connection settings. + description: '(Block List, Max: 1) (see below for + nested schema)' items: properties: clusterId: - description: Identifier of the Managed Kafka - cluster. + description: (String) type: string onPremise: - description: Connection settings of the on-premise - PostgreSQL server. + description: '(Block List, Max: 1) (see below + for nested schema)' items: properties: brokerUrls: - description: List of Kafka broker URLs. + description: (List of String) items: type: string type: array subnetId: - description: '- Identifier of the Yandex - Cloud VPC subnetwork to user for accessing - the database. If omitted, the server - has to be accessible via Internet.' + description: (String) type: string tlsMode: - description: TLS settings for the server - connection. Empty implies plaintext - connection. The structure is documented - below. + description: '(Block List, Max: 1) (see + below for nested schema)' items: properties: disabled: - description: Empty block designating - that the connection is not secured, - i.e. plaintext connection. + description: '(Block List, Max: + 1) (see below for nested schema)' items: type: object type: array enabled: - description: If this attribute is - not an empty block, then TLS is - used for the server connection. - The structure is documented below. + description: '(Block List, Max: + 1) (see below for nested schema)' items: properties: caCertificate: - description: X.509 certificate - of the certificate authority - which issued the server's - certificate, in PEM format. - If empty, the server's certificate - must be signed by a well-known - CA. + description: (String) type: string type: object type: array @@ -5167,232 +4758,207 @@ spec: type: object type: array parser: - description: '- Data parsing rules.' + description: '(Block List, Max: 1) (see below for + nested schema)' items: properties: auditTrailsV1Parser: - description: Parse Audit Trails data. Empty - struct. + description: '(Block List, Max: 1) (see below + for nested schema)' items: type: object type: array cloudLoggingParser: - description: Parse Cloud Logging data. Empty - struct. + description: '(Block List, Max: 1) (see below + for nested schema)' items: type: object type: array jsonParser: - description: Parse data in json format. + description: '(Block List, Max: 1) (see below + for nested schema)' items: properties: addRestColumn: - description: Add fields, that are not - in the schema, into the _rest column. + description: (Boolean) type: boolean dataSchema: - description: Data parsing scheme.The structure - is documented below. + description: '(Block List, Max: 1) (see + below for nested schema)' items: properties: fields: - description: Description of the - data schema in the array of fields - structure (documented below). + description: '(Block List, Max: + 1) (see below for nested schema)' items: properties: fields: - description: Description of - the data schema in the array - of fields structure (documented - below). + description: '(Block List, + Max: 1) (see below for nested + schema)' items: properties: key: - description: Mark field - as Primary Key. + description: (Boolean) type: boolean name: - description: Field name. + description: (String) type: string path: - description: '- A path - where resulting tables - are stored.' + description: (String) type: string required: - description: Mark field - as required. + description: (Boolean) type: boolean type: - description: 'Field - type, one of: INT64, - INT32, INT16, INT8, - UINT64, UINT32, UINT16, - UINT8, DOUBLE, BOOLEAN, - STRING, UTF8, ANY, - DATETIME.' + description: (String) type: string type: object type: array type: object type: array jsonFields: - description: Description of the - data schema as JSON specification. + description: (String) type: string type: object type: array nullKeysAllowed: - description: Allow null keys. If false - - null keys will be putted to unparsed - data + description: (Boolean) type: boolean unescapeStringValues: - description: Allow unescape string values. + description: (Boolean) type: boolean type: object type: array tskvParser: - description: Parse data if tskv format. + description: '(Block List, Max: 1) (see below + for nested schema)' items: properties: addRestColumn: - description: Add fields, that are not - in the schema, into the _rest column. + description: (Boolean) type: boolean dataSchema: - description: Data parsing scheme.The structure - is documented below. + description: '(Block List, Max: 1) (see + below for nested schema)' items: properties: fields: - description: Description of the - data schema in the array of fields - structure (documented below). + description: '(Block List, Max: + 1) (see below for nested schema)' items: properties: fields: - description: Description of - the data schema in the array - of fields structure (documented - below). + description: '(Block List, + Max: 1) (see below for nested + schema)' items: properties: key: - description: Mark field - as Primary Key. + description: (Boolean) type: boolean name: - description: Field name. + description: (String) type: string path: - description: '- A path - where resulting tables - are stored.' + description: (String) type: string required: - description: Mark field - as required. + description: (Boolean) type: boolean type: - description: 'Field - type, one of: INT64, - INT32, INT16, INT8, - UINT64, UINT32, UINT16, - UINT8, DOUBLE, BOOLEAN, - STRING, UTF8, ANY, - DATETIME.' + description: (String) type: string type: object type: array type: object type: array jsonFields: - description: Description of the - data schema as JSON specification. + description: (String) type: string type: object type: array nullKeysAllowed: - description: Allow null keys. If false - - null keys will be putted to unparsed - data + description: (Boolean) type: boolean unescapeStringValues: - description: Allow unescape string values. + description: (Boolean) type: boolean type: object type: array type: object type: array securityGroups: - description: '- List of security groups that the - transfer associated with this endpoint should use.' + description: (List of String) items: type: string type: array topicName: - description: Full topic name + description: (String) type: string topicNames: - description: The list of full source topic names. + description: (List of String) items: type: string type: array transformer: - description: Transform data with a custom Cloud Function. + description: '(Block List, Max: 1) (see below for + nested schema)' items: properties: bufferFlushInterval: + description: (String) type: string bufferSize: + description: (String) type: string cloudFunction: + description: (String) type: string invocationTimeout: + description: (String) type: string numberOfRetries: + description: (Number) type: number serviceAccountId: - description: '- Service account ID for interaction - with database.' + description: (String) type: string type: object type: array type: object type: array kafkaTarget: - description: Settings specific to the Kafka target endpoint. + description: '(Block List, Max: 1) (see below for nested + schema)' items: properties: auth: - description: Authentication data. + description: '(Block List, Max: 1) (see below for + nested schema)' items: properties: noAuth: - description: Connection without authentication - data. + description: '(Block List, Max: 1) (see below + for nested schema)' items: type: object type: array sasl: - description: Authentication using sasl. + description: '(Block List, Max: 1) (see below + for nested schema)' items: properties: mechanism: + description: (String) type: string password: - description: Password for the database - access. This is a block with a single - field named raw which should contain - the password. + description: '(Block List, Max: 1) (see + below for nested schema)' items: properties: rawSecretRef: - description: A SecretKeySelector - is a reference to a secret key - in an arbitrary namespace. + description: (String, Sensitive) properties: key: description: The key to select. @@ -5412,65 +4978,51 @@ spec: type: object type: array user: - description: User for the database access. + description: (String) type: string type: object type: array type: object type: array connection: - description: Connection settings. + description: '(Block List, Max: 1) (see below for + nested schema)' items: properties: clusterId: - description: Identifier of the Managed Kafka - cluster. + description: (String) type: string onPremise: - description: Connection settings of the on-premise - PostgreSQL server. + description: '(Block List, Max: 1) (see below + for nested schema)' items: properties: brokerUrls: - description: List of Kafka broker URLs. + description: (List of String) items: type: string type: array subnetId: - description: '- Identifier of the Yandex - Cloud VPC subnetwork to user for accessing - the database. If omitted, the server - has to be accessible via Internet.' + description: (String) type: string tlsMode: - description: TLS settings for the server - connection. Empty implies plaintext - connection. The structure is documented - below. + description: '(Block List, Max: 1) (see + below for nested schema)' items: properties: disabled: - description: Empty block designating - that the connection is not secured, - i.e. plaintext connection. + description: '(Block List, Max: + 1) (see below for nested schema)' items: type: object type: array enabled: - description: If this attribute is - not an empty block, then TLS is - used for the server connection. - The structure is documented below. + description: '(Block List, Max: + 1) (see below for nested schema)' items: properties: caCertificate: - description: X.509 certificate - of the certificate authority - which issued the server's - certificate, in PEM format. - If empty, the server's certificate - must be signed by a well-known - CA. + description: (String) type: string type: object type: array @@ -5481,102 +5033,105 @@ spec: type: object type: array securityGroups: - description: '- List of security groups that the - transfer associated with this endpoint should use.' + description: (List of String) items: type: string type: array serializer: - description: '- Data serialization format.' + description: '(Block List, Max: 1) (see below for + nested schema)' items: properties: serializerAuto: - description: Empty block. Select data serialization - format automatically. + description: '(Block List, Max: 1) (see below + for nested schema)' items: type: object type: array serializerDebezium: - description: Serialize data in json format. - The structure is documented below. + description: '(Block List, Max: 1) (see below + for nested schema)' items: properties: serializerParameters: - description: A list of debezium parameters - set by the structure of the key and - value string fields. + description: (Block List) (see below for + nested schema) items: properties: key: - description: Mark field as Primary - Key. + description: (Boolean) type: string value: + description: (String) type: string type: object type: array type: object type: array serializerJson: - description: Empty block. Serialize data in - json format. + description: '(Block List, Max: 1) (see below + for nested schema)' items: type: object type: array type: object type: array topicSettings: - description: Target topic settings. + description: '(Block List, Max: 1) (see below for + nested schema)' items: properties: topic: - description: All messages will be sent to one - topic. The structure is documented below. + description: '(Block List, Max: 1) (see below + for nested schema)' items: properties: saveTxOrder: - description: '- Save transaction order' + description: (Boolean) type: boolean topicName: - description: Full topic name + description: (String) type: string type: object type: array topicPrefix: - description: Topic name prefix. Messages will - be sent to topic with name ... + description: (String) type: string type: object type: array type: object type: array metrikaSource: + description: '(Block List, Max: 1) (see below for nested + schema)' items: properties: counterIds: + description: (List of Number) items: type: number type: array streams: + description: (Block List) (see below for nested schema) items: properties: columns: + description: (List of String) items: type: string type: array type: - description: 'Field type, one of: INT64, INT32, - INT16, INT8, UINT64, UINT32, UINT16, UINT8, - DOUBLE, BOOLEAN, STRING, UTF8, ANY, DATETIME.' + description: (String) type: string type: object type: array token: + description: '(Block List, Max: 1) (see below for + nested schema)' items: properties: rawSecretRef: - description: A SecretKeySelector is a reference - to a secret key in an arbitrary namespace. + description: (String, Sensitive) properties: key: description: The key to select. @@ -5597,40 +5152,37 @@ spec: type: object type: array mongoSource: - description: Settings specific to the MongoDB source endpoint. + description: '(Block List, Max: 1) (see below for nested + schema)' items: properties: collections: - description: The list of the MongoDB collections that - should be transferred. If omitted, all available - collections will be transferred. The structure of - the list item is documented below. + description: (Block List) (see below for nested schema) items: properties: collectionName: - description: Collection name. + description: (String) type: string databaseName: - description: Database name. + description: (String) type: string type: object type: array connection: - description: Connection settings. + description: '(Block List, Max: 1) (see below for + nested schema)' items: properties: connectionOptions: - description: Connection options. The structure - is documented below. + description: '(Block List, Max: 1) (see below + for nested schema)' items: properties: authSource: - description: Name of the database associated - with the credentials. + description: (String) type: string mdbClusterId: - description: Identifier of the Managed - PostgreSQL cluster. + description: (String) type: string mdbClusterIdRef: description: Reference to a MongodbCluster @@ -5710,57 +5262,41 @@ spec: type: object type: object onPremise: - description: Connection settings of the - on-premise PostgreSQL server. + description: '(Block List, Max: 1) (see + below for nested schema)' items: properties: hosts: - description: List of host names - of the PostgreSQL server. Exactly - one host is expected currently. + description: (List of String) items: type: string type: array port: - description: Port for the database - connection. + description: (Number) type: number replicaSet: - description: Replica set name. + description: (String) type: string tlsMode: - description: TLS settings for the - server connection. Empty implies - plaintext connection. The structure - is documented below. + description: '(Block List, Max: + 1) (see below for nested schema)' items: properties: disabled: - description: Empty block designating - that the connection is not - secured, i.e. plaintext - connection. + description: '(Block List, + Max: 1) (see below for nested + schema)' items: type: object type: array enabled: - description: If this attribute - is not an empty block, then - TLS is used for the server - connection. The structure - is documented below. + description: '(Block List, + Max: 1) (see below for nested + schema)' items: properties: caCertificate: - description: X.509 certificate - of the certificate - authority which issued - the server's certificate, - in PEM format. If - empty, the server's - certificate must be - signed by a well-known - CA. + description: (String) type: string type: object type: array @@ -5769,16 +5305,12 @@ spec: type: object type: array password: - description: Password for the database - access. This is a block with a single - field named raw which should contain - the password. + description: '(Block List, Max: 1) (see + below for nested schema)' items: properties: rawSecretRef: - description: A SecretKeySelector - is a reference to a secret key - in an arbitrary namespace. + description: (String, Sensitive) properties: key: description: The key to select. @@ -5798,39 +5330,34 @@ spec: type: object type: array user: - description: User for the database access. + description: (String) type: string type: object type: array type: object type: array excludedCollections: - description: The list of the MongoDB collections that - should not be transferred. + description: (Block List) (see below for nested schema) items: properties: collectionName: - description: Collection name. + description: (String) type: string databaseName: - description: Database name. + description: (String) type: string type: object type: array secondaryPreferredMode: - description: whether the secondary server should be - preferred to the primary when copying data. + description: (Boolean) type: boolean securityGroups: - description: '- List of security groups that the - transfer associated with this endpoint should use.' + description: (List of String) items: type: string type: array subnetId: - description: '- Identifier of the Yandex Cloud VPC - subnetwork to user for accessing the database. If - omitted, the server has to be accessible via Internet.' + description: (String) type: string subnetIdRef: description: Reference to a Subnet in vpc to populate @@ -5911,30 +5438,28 @@ spec: type: object type: array mongoTarget: - description: Settings specific to the MongoDB target endpoint. + description: '(Block List, Max: 1) (see below for nested + schema)' items: properties: cleanupPolicy: - description: '- How to clean collections when activating - the transfer. One of "YDB_CLEANUP_POLICY_DISABLED" - or "YDB_CLEANUP_POLICY_DROP".' + description: (String) type: string connection: - description: Connection settings. + description: '(Block List, Max: 1) (see below for + nested schema)' items: properties: connectionOptions: - description: Connection options. The structure - is documented below. + description: '(Block List, Max: 1) (see below + for nested schema)' items: properties: authSource: - description: Name of the database associated - with the credentials. + description: (String) type: string mdbClusterId: - description: Identifier of the Managed - PostgreSQL cluster. + description: (String) type: string mdbClusterIdRef: description: Reference to a MongodbCluster @@ -6014,57 +5539,41 @@ spec: type: object type: object onPremise: - description: Connection settings of the - on-premise PostgreSQL server. + description: '(Block List, Max: 1) (see + below for nested schema)' items: properties: hosts: - description: List of host names - of the PostgreSQL server. Exactly - one host is expected currently. + description: (List of String) items: type: string type: array port: - description: Port for the database - connection. + description: (Number) type: number replicaSet: - description: Replica set name. + description: (String) type: string tlsMode: - description: TLS settings for the - server connection. Empty implies - plaintext connection. The structure - is documented below. + description: '(Block List, Max: + 1) (see below for nested schema)' items: properties: disabled: - description: Empty block designating - that the connection is not - secured, i.e. plaintext - connection. + description: '(Block List, + Max: 1) (see below for nested + schema)' items: type: object type: array enabled: - description: If this attribute - is not an empty block, then - TLS is used for the server - connection. The structure - is documented below. + description: '(Block List, + Max: 1) (see below for nested + schema)' items: properties: caCertificate: - description: X.509 certificate - of the certificate - authority which issued - the server's certificate, - in PEM format. If - empty, the server's - certificate must be - signed by a well-known - CA. + description: (String) type: string type: object type: array @@ -6073,16 +5582,12 @@ spec: type: object type: array password: - description: Password for the database - access. This is a block with a single - field named raw which should contain - the password. + description: '(Block List, Max: 1) (see + below for nested schema)' items: properties: rawSecretRef: - description: A SecretKeySelector - is a reference to a secret key - in an arbitrary namespace. + description: (String, Sensitive) properties: key: description: The key to select. @@ -6102,25 +5607,22 @@ spec: type: object type: array user: - description: User for the database access. + description: (String) type: string type: object type: array type: object type: array database: - description: '- Database.' + description: (String) type: string securityGroups: - description: '- List of security groups that the - transfer associated with this endpoint should use.' + description: (List of String) items: type: string type: array subnetId: - description: '- Identifier of the Yandex Cloud VPC - subnetwork to user for accessing the database. If - omitted, the server has to be accessible via Internet.' + description: (String) type: string subnetIdRef: description: Reference to a Subnet in vpc to populate @@ -6201,16 +5703,17 @@ spec: type: object type: array mysqlSource: - description: Settings specific to the MySQL source endpoint. + description: '(Block List, Max: 1) (see below for nested + schema)' items: properties: connection: - description: Connection settings. + description: '(Block List, Max: 1) (see below for + nested schema)' items: properties: mdbClusterId: - description: Identifier of the Managed PostgreSQL - cluster. + description: (String) type: string mdbClusterIdRef: description: Reference to a MySQLCluster in @@ -6289,25 +5792,20 @@ spec: type: object type: object onPremise: - description: Connection settings of the on-premise - PostgreSQL server. + description: '(Block List, Max: 1) (see below + for nested schema)' items: properties: hosts: - description: List of host names of the - PostgreSQL server. Exactly one host - is expected currently. + description: (List of String) items: type: string type: array port: - description: Port for the database connection. + description: (Number) type: number subnetId: - description: '- Identifier of the Yandex - Cloud VPC subnetwork to user for accessing - the database. If omitted, the server - has to be accessible via Internet.' + description: (String) type: string subnetIdRef: description: Reference to a Subnet in @@ -6387,34 +5885,23 @@ spec: type: object type: object tlsMode: - description: TLS settings for the server - connection. Empty implies plaintext - connection. The structure is documented - below. + description: '(Block List, Max: 1) (see + below for nested schema)' items: properties: disabled: - description: Empty block designating - that the connection is not secured, - i.e. plaintext connection. + description: '(Block List, Max: + 1) (see below for nested schema)' items: type: object type: array enabled: - description: If this attribute is - not an empty block, then TLS is - used for the server connection. - The structure is documented below. + description: '(Block List, Max: + 1) (see below for nested schema)' items: properties: caCertificate: - description: X.509 certificate - of the certificate authority - which issued the server's - certificate, in PEM format. - If empty, the server's certificate - must be signed by a well-known - CA. + description: (String) type: string type: object type: array @@ -6425,7 +5912,7 @@ spec: type: object type: array database: - description: '- Database.' + description: (String) type: string databaseRef: description: Reference to a MySQLDatabase in mdb to @@ -6504,47 +5991,41 @@ spec: type: object type: object excludeTablesRegex: - description: Opposite of include_table_regex. The - tables matching the specified regular expressions - will not be transferred. + description: (List of String) items: type: string type: array includeTablesRegex: - description: List of regular expressions of table - names which should be transferred. A table name - is formatted as schemaname.tablename. For example, - a single regular expression may look like ^mydb.employees$. + description: (List of String) items: type: string type: array objectTransferSettings: - description: Defines which database schema objects - should be transferred, e.g. views, functions, etc. + description: '(Block List, Max: 1) (see below for + nested schema)' items: properties: routine: + description: (String) type: string tables: + description: (String) type: string trigger: - description: All of the attrubutes are optional - and should be either "BEFORE_DATA", "AFTER_DATA" - or "NEVER". + description: (String) type: string view: + description: (String) type: string type: object type: array password: - description: Password for the database access. This - is a block with a single field named raw which should - contain the password. + description: '(Block List, Max: 1) (see below for + nested schema)' items: properties: rawSecretRef: - description: A SecretKeySelector is a reference - to a secret key in an arbitrary namespace. + description: (String, Sensitive) properties: key: description: The key to select. @@ -6563,8 +6044,7 @@ spec: type: object type: array securityGroups: - description: '- List of security groups that the - transfer associated with this endpoint should use.' + description: (List of String) items: type: string type: array @@ -6648,17 +6128,13 @@ spec: type: object type: object serviceDatabase: - description: The name of the database where technical - tables (__tm_keeper, __tm_gtid_keeper) will be created. - Default is the value of the attribute database. + description: (String) type: string timezone: - description: 'Timezone to use for parsing timestamps - for saving source timezones. Accepts values from - IANA timezone database. Default: local timezone.' + description: (String) type: string user: - description: User for the database access. + description: (String) type: string userRef: description: Reference to a MySQLUser in mdb to populate @@ -6739,21 +6215,20 @@ spec: type: object type: array mysqlTarget: - description: Settings specific to the MySQL target endpoint. + description: '(Block List, Max: 1) (see below for nested + schema)' items: properties: cleanupPolicy: - description: '- How to clean collections when activating - the transfer. One of "YDB_CLEANUP_POLICY_DISABLED" - or "YDB_CLEANUP_POLICY_DROP".' + description: (String) type: string connection: - description: Connection settings. + description: '(Block List, Max: 1) (see below for + nested schema)' items: properties: mdbClusterId: - description: Identifier of the Managed PostgreSQL - cluster. + description: (String) type: string mdbClusterIdRef: description: Reference to a MySQLCluster in @@ -6832,25 +6307,20 @@ spec: type: object type: object onPremise: - description: Connection settings of the on-premise - PostgreSQL server. + description: '(Block List, Max: 1) (see below + for nested schema)' items: properties: hosts: - description: List of host names of the - PostgreSQL server. Exactly one host - is expected currently. + description: (List of String) items: type: string type: array port: - description: Port for the database connection. + description: (Number) type: number subnetId: - description: '- Identifier of the Yandex - Cloud VPC subnetwork to user for accessing - the database. If omitted, the server - has to be accessible via Internet.' + description: (String) type: string subnetIdRef: description: Reference to a Subnet in @@ -6930,34 +6400,23 @@ spec: type: object type: object tlsMode: - description: TLS settings for the server - connection. Empty implies plaintext - connection. The structure is documented - below. + description: '(Block List, Max: 1) (see + below for nested schema)' items: properties: disabled: - description: Empty block designating - that the connection is not secured, - i.e. plaintext connection. + description: '(Block List, Max: + 1) (see below for nested schema)' items: type: object type: array enabled: - description: If this attribute is - not an empty block, then TLS is - used for the server connection. - The structure is documented below. + description: '(Block List, Max: + 1) (see below for nested schema)' items: properties: caCertificate: - description: X.509 certificate - of the certificate authority - which issued the server's - certificate, in PEM format. - If empty, the server's certificate - must be signed by a well-known - CA. + description: (String) type: string type: object type: array @@ -6968,7 +6427,7 @@ spec: type: object type: array database: - description: '- Database.' + description: (String) type: string databaseRef: description: Reference to a MySQLDatabase in mdb to @@ -7047,14 +6506,12 @@ spec: type: object type: object password: - description: Password for the database access. This - is a block with a single field named raw which should - contain the password. + description: '(Block List, Max: 1) (see below for + nested schema)' items: properties: rawSecretRef: - description: A SecretKeySelector is a reference - to a secret key in an arbitrary namespace. + description: (String, Sensitive) properties: key: description: The key to select. @@ -7073,8 +6530,7 @@ spec: type: object type: array securityGroups: - description: '- List of security groups that the - transfer associated with this endpoint should use.' + description: (List of String) items: type: string type: array @@ -7158,25 +6614,19 @@ spec: type: object type: object serviceDatabase: - description: The name of the database where technical - tables (__tm_keeper, __tm_gtid_keeper) will be created. - Default is the value of the attribute database. + description: (String) type: string skipConstraintChecks: - description: When true, disables foreign key checks. - See foreign_key_checks. False by default. + description: (Boolean) type: boolean sqlMode: - description: sql_mode to use when interacting with - the server. Defaults to "NO_AUTO_VALUE_ON_ZERO,NO_DIR_IN_CREATE,NO_ENGINE_SUBSTITUTION". + description: (String) type: string timezone: - description: 'Timezone to use for parsing timestamps - for saving source timezones. Accepts values from - IANA timezone database. Default: local timezone.' + description: (String) type: string user: - description: User for the database access. + description: (String) type: string userRef: description: Reference to a MySQLUser in mdb to populate @@ -7257,18 +6707,17 @@ spec: type: object type: array postgresSource: - description: Settings specific to the PostgreSQL source - endpoint. + description: '(Block List, Max: 1) (see below for nested + schema)' items: properties: connection: - description: Connection settings. The structure is - documented below. + description: '(Block List, Max: 1) (see below for + nested schema)' items: properties: mdbClusterId: - description: Identifier of the Managed PostgreSQL - cluster. + description: (String) type: string mdbClusterIdRef: description: Reference to a PostgresqlCluster @@ -7347,25 +6796,20 @@ spec: type: object type: object onPremise: - description: Connection settings of the on-premise - PostgreSQL server. + description: '(Block List, Max: 1) (see below + for nested schema)' items: properties: hosts: - description: List of host names of the - PostgreSQL server. Exactly one host - is expected currently. + description: (List of String) items: type: string type: array port: - description: Port for the database connection. + description: (Number) type: number subnetId: - description: '- Identifier of the Yandex - Cloud VPC subnetwork to user for accessing - the database. If omitted, the server - has to be accessible via Internet.' + description: (String) type: string subnetIdRef: description: Reference to a Subnet in @@ -7445,34 +6889,23 @@ spec: type: object type: object tlsMode: - description: TLS settings for the server - connection. Empty implies plaintext - connection. The structure is documented - below. + description: '(Block List, Max: 1) (see + below for nested schema)' items: properties: disabled: - description: Empty block designating - that the connection is not secured, - i.e. plaintext connection. + description: '(Block List, Max: + 1) (see below for nested schema)' items: type: object type: array enabled: - description: If this attribute is - not an empty block, then TLS is - used for the server connection. - The structure is documented below. + description: '(Block List, Max: + 1) (see below for nested schema)' items: properties: caCertificate: - description: X.509 certificate - of the certificate authority - which issued the server's - certificate, in PEM format. - If empty, the server's certificate - must be signed by a well-known - CA. + description: (String) type: string type: object type: array @@ -7483,7 +6916,7 @@ spec: type: object type: array database: - description: Name of the database to transfer. + description: (String) type: string databaseRef: description: Reference to a PostgresqlDatabase in @@ -7562,79 +6995,83 @@ spec: type: object type: object excludeTables: - description: List of tables which will not be transfered, - formatted as schemaname.tablename. + description: (List of String) items: type: string type: array includeTables: - description: List of tables to transfer, formatted - as schemaname.tablename. If omitted or an empty - list is specified, all tables will be transferred. + description: (List of String) items: type: string type: array objectTransferSettings: - description: Defines which database schema objects - should be transferred, e.g. views, functions, etc. + description: '(Block List, Max: 1) (see below for + nested schema)' items: properties: cast: - description: All of the attrubutes are optional - and should be either "BEFORE_DATA", "AFTER_DATA" - or "NEVER". + description: (String) type: string collation: + description: (String) type: string constraint: + description: (String) type: string defaultValues: + description: (String) type: string fkConstraint: + description: (String) type: string function: + description: (String) type: string index: + description: (String) type: string materializedView: + description: (String) type: string policy: + description: (String) type: string primaryKey: + description: (String) type: string rule: + description: (String) type: string sequence: + description: (String) type: string sequenceOwnedBy: + description: (String) type: string sequenceSet: + description: (String) type: string table: + description: (String) type: string trigger: - description: All of the attrubutes are optional - and should be either "BEFORE_DATA", "AFTER_DATA" - or "NEVER". + description: (String) type: string type: - description: 'Field type, one of: INT64, INT32, - INT16, INT8, UINT64, UINT32, UINT16, UINT8, - DOUBLE, BOOLEAN, STRING, UTF8, ANY, DATETIME.' + description: (String) type: string view: + description: (String) type: string type: object type: array password: - description: Password for the database access. This - is a block with a single field named raw which should - contain the password. + description: '(Block List, Max: 1) (see below for + nested schema)' items: properties: rawSecretRef: - description: A SecretKeySelector is a reference - to a secret key in an arbitrary namespace. + description: (String, Sensitive) properties: key: description: The key to select. @@ -7653,8 +7090,7 @@ spec: type: object type: array securityGroups: - description: List of security groups that the transfer - associated with this endpoint should use. + description: (List of String) items: type: string type: array @@ -7738,18 +7174,13 @@ spec: type: object type: object serviceSchema: - description: Name of the database schema in which - auxiliary tables needed for the transfer will be - created. Empty service_schema implies schema "public". + description: (String) type: string slotGigabyteLagLimit: - description: Maximum WAL size held by the replication - slot, in gigabytes. Exceeding this limit will result - in a replication failure and deletion of the replication - slot. Unlimited by default. + description: (Number) type: number user: - description: User for the database access. + description: (String) type: string userRef: description: Reference to a PostgresqlUser in mdb @@ -7830,22 +7261,20 @@ spec: type: object type: array postgresTarget: - description: Settings specific to the PostgreSQL target - endpoint. + description: '(Block List, Max: 1) (see below for nested + schema)' items: properties: cleanupPolicy: - description: '- How to clean collections when activating - the transfer. One of "YDB_CLEANUP_POLICY_DISABLED" - or "YDB_CLEANUP_POLICY_DROP".' + description: (String) type: string connection: - description: Connection settings. + description: '(Block List, Max: 1) (see below for + nested schema)' items: properties: mdbClusterId: - description: Identifier of the Managed PostgreSQL - cluster. + description: (String) type: string mdbClusterIdRef: description: Reference to a PostgresqlCluster @@ -7924,25 +7353,20 @@ spec: type: object type: object onPremise: - description: Connection settings of the on-premise - PostgreSQL server. + description: '(Block List, Max: 1) (see below + for nested schema)' items: properties: hosts: - description: List of host names of the - PostgreSQL server. Exactly one host - is expected currently. + description: (List of String) items: type: string type: array port: - description: Port for the database connection. + description: (Number) type: number subnetId: - description: '- Identifier of the Yandex - Cloud VPC subnetwork to user for accessing - the database. If omitted, the server - has to be accessible via Internet.' + description: (String) type: string subnetIdRef: description: Reference to a Subnet in @@ -8022,34 +7446,23 @@ spec: type: object type: object tlsMode: - description: TLS settings for the server - connection. Empty implies plaintext - connection. The structure is documented - below. + description: '(Block List, Max: 1) (see + below for nested schema)' items: properties: disabled: - description: Empty block designating - that the connection is not secured, - i.e. plaintext connection. + description: '(Block List, Max: + 1) (see below for nested schema)' items: type: object type: array enabled: - description: If this attribute is - not an empty block, then TLS is - used for the server connection. - The structure is documented below. + description: '(Block List, Max: + 1) (see below for nested schema)' items: properties: caCertificate: - description: X.509 certificate - of the certificate authority - which issued the server's - certificate, in PEM format. - If empty, the server's certificate - must be signed by a well-known - CA. + description: (String) type: string type: object type: array @@ -8060,7 +7473,7 @@ spec: type: object type: array database: - description: '- Database.' + description: (String) type: string databaseRef: description: Reference to a PostgresqlDatabase in @@ -8139,14 +7552,12 @@ spec: type: object type: object password: - description: Password for the database access. This - is a block with a single field named raw which should - contain the password. + description: '(Block List, Max: 1) (see below for + nested schema)' items: properties: rawSecretRef: - description: A SecretKeySelector is a reference - to a secret key in an arbitrary namespace. + description: (String, Sensitive) properties: key: description: The key to select. @@ -8165,8 +7576,7 @@ spec: type: object type: array securityGroups: - description: '- List of security groups that the - transfer associated with this endpoint should use.' + description: (List of String) items: type: string type: array @@ -8250,7 +7660,7 @@ spec: type: object type: object user: - description: User for the database access. + description: (String) type: string userRef: description: Reference to a PostgresqlUser in mdb @@ -8331,26 +7741,26 @@ spec: type: object type: array ydbSource: - description: Settings specific to the YDB source endpoint. + description: '(Block List, Max: 1) (see below for nested + schema)' items: properties: changefeedCustomName: - description: '- Custom name for changefeed.' + description: (String) type: string database: - description: '- Database.' + description: (String) type: string instance: - description: '- Instance of YDB. Example: "my-cute-ydb.cloud.yandex.ru:2135".' + description: (String) type: string paths: - description: '- A list of paths which should be uploaded. - When not specified, all available tables are uploaded.' + description: (List of String) items: type: string type: array saKeyContentSecretRef: - description: '- Authentication key.' + description: (String, Sensitive) properties: key: description: The key to select. @@ -8367,54 +7777,43 @@ spec: - namespace type: object securityGroups: - description: '- List of security groups that the - transfer associated with this endpoint should use.' + description: (List of String) items: type: string type: array serviceAccountId: - description: '- Service account ID for interaction - with database.' + description: (String) type: string subnetId: - description: '- Identifier of the Yandex Cloud VPC - subnetwork to user for accessing the database. If - omitted, the server has to be accessible via Internet.' + description: (String) type: string type: object type: array ydbTarget: - description: Settings specific to the YDB target endpoint. + description: '(Block List, Max: 1) (see below for nested + schema)' items: properties: cleanupPolicy: - description: '- How to clean collections when activating - the transfer. One of "YDB_CLEANUP_POLICY_DISABLED" - or "YDB_CLEANUP_POLICY_DROP".' + description: (String) type: string database: - description: '- Database.' + description: (String) type: string defaultCompression: - description: '- Compression that will be used for - default columns family on YDB table creation One - of "YDB_DEFAULT_COMPRESSION_UNSPECIFIED", "YDB_DEFAULT_COMPRESSION_DISABLED", - "YDB_DEFAULT_COMPRESSION_LZ4".' + description: (String) type: string instance: - description: '- Instance of YDB. Example: "my-cute-ydb.cloud.yandex.ru:2135".' + description: (String) type: string isTableColumnOriented: - description: '- Whether a column-oriented (i.e. OLAP) - tables should be created. Default is false (create - row-oriented OLTP tables).' + description: (Boolean) type: boolean path: - description: '- A path where resulting tables are - stored.' + description: (String) type: string saKeyContentSecretRef: - description: '- Authentication key.' + description: (String, Sensitive) properties: key: description: The key to select. @@ -8431,293 +7830,253 @@ spec: - namespace type: object securityGroups: - description: '- List of security groups that the - transfer associated with this endpoint should use.' + description: (List of String) items: type: string type: array serviceAccountId: - description: '- Service account ID for interaction - with database.' + description: (String) type: string subnetId: - description: '- Identifier of the Yandex Cloud VPC - subnetwork to user for accessing the database. If - omitted, the server has to be accessible via Internet.' + description: (String) type: string type: object type: array ydsSource: - description: Settings specific to the YDS source endpoint. + description: '(Block List, Max: 1) (see below for nested + schema)' items: properties: allowTtlRewind: - description: '- Should continue working, if consumer - read lag exceed TTL of topic.' + description: (Boolean) type: boolean consumer: - description: '- Consumer.' + description: (String) type: string database: - description: '- Database.' + description: (String) type: string endpoint: - description: '- YDS Endpoint.' + description: (String) type: string parser: - description: '- Data parsing rules.' + description: '(Block List, Max: 1) (see below for + nested schema)' items: properties: auditTrailsV1Parser: - description: Parse Audit Trails data. Empty - struct. + description: '(Block List, Max: 1) (see below + for nested schema)' items: type: object type: array cloudLoggingParser: - description: Parse Cloud Logging data. Empty - struct. + description: '(Block List, Max: 1) (see below + for nested schema)' items: type: object type: array jsonParser: - description: Parse data in json format. + description: '(Block List, Max: 1) (see below + for nested schema)' items: properties: addRestColumn: - description: Add fields, that are not - in the schema, into the _rest column. + description: (Boolean) type: boolean dataSchema: - description: Data parsing scheme.The structure - is documented below. + description: '(Block List, Max: 1) (see + below for nested schema)' items: properties: fields: - description: Description of the - data schema in the array of fields - structure (documented below). + description: '(Block List, Max: + 1) (see below for nested schema)' items: properties: fields: - description: Description of - the data schema in the array - of fields structure (documented - below). + description: '(Block List, + Max: 1) (see below for nested + schema)' items: properties: key: - description: Mark field - as Primary Key. + description: (Boolean) type: boolean name: - description: Field name. + description: (String) type: string path: - description: '- A path - where resulting tables - are stored.' + description: (String) type: string required: - description: Mark field - as required. + description: (Boolean) type: boolean type: - description: 'Field - type, one of: INT64, - INT32, INT16, INT8, - UINT64, UINT32, UINT16, - UINT8, DOUBLE, BOOLEAN, - STRING, UTF8, ANY, - DATETIME.' + description: (String) type: string type: object type: array type: object type: array jsonFields: - description: Description of the - data schema as JSON specification. + description: (String) type: string type: object type: array nullKeysAllowed: - description: Allow null keys. If false - - null keys will be putted to unparsed - data + description: (Boolean) type: boolean unescapeStringValues: - description: Allow unescape string values. + description: (Boolean) type: boolean type: object type: array tskvParser: - description: Parse data if tskv format. + description: '(Block List, Max: 1) (see below + for nested schema)' items: properties: addRestColumn: - description: Add fields, that are not - in the schema, into the _rest column. + description: (Boolean) type: boolean dataSchema: - description: Data parsing scheme.The structure - is documented below. + description: '(Block List, Max: 1) (see + below for nested schema)' items: properties: fields: - description: Description of the - data schema in the array of fields - structure (documented below). + description: '(Block List, Max: + 1) (see below for nested schema)' items: properties: fields: - description: Description of - the data schema in the array - of fields structure (documented - below). + description: '(Block List, + Max: 1) (see below for nested + schema)' items: properties: key: - description: Mark field - as Primary Key. + description: (Boolean) type: boolean name: - description: Field name. + description: (String) type: string path: - description: '- A path - where resulting tables - are stored.' + description: (String) type: string required: - description: Mark field - as required. + description: (Boolean) type: boolean type: - description: 'Field - type, one of: INT64, - INT32, INT16, INT8, - UINT64, UINT32, UINT16, - UINT8, DOUBLE, BOOLEAN, - STRING, UTF8, ANY, - DATETIME.' + description: (String) type: string type: object type: array type: object type: array jsonFields: - description: Description of the - data schema as JSON specification. + description: (String) type: string type: object type: array nullKeysAllowed: - description: Allow null keys. If false - - null keys will be putted to unparsed - data + description: (Boolean) type: boolean unescapeStringValues: - description: Allow unescape string values. + description: (Boolean) type: boolean type: object type: array type: object type: array securityGroups: - description: '- List of security groups that the - transfer associated with this endpoint should use.' + description: (List of String) items: type: string type: array serviceAccountId: - description: '- Service account ID for interaction - with database.' + description: (String) type: string stream: - description: '- Stream.' + description: (String) type: string subnetId: - description: '- Identifier of the Yandex Cloud VPC - subnetwork to user for accessing the database. If - omitted, the server has to be accessible via Internet.' + description: (String) type: string supportedCodecs: - description: '- List of supported compression codec.' + description: (List of String) items: type: string type: array type: object type: array ydsTarget: - description: Settings specific to the YDS target endpoint. + description: '(Block List, Max: 1) (see below for nested + schema)' items: properties: database: - description: '- Database.' + description: (String) type: string endpoint: - description: '- YDS Endpoint.' + description: (String) type: string saveTxOrder: - description: '- Save transaction order' + description: (Boolean) type: boolean securityGroups: - description: '- List of security groups that the - transfer associated with this endpoint should use.' + description: (List of String) items: type: string type: array serializer: - description: '- Data serialization format.' + description: '(Block List, Max: 1) (see below for + nested schema)' items: properties: serializerAuto: - description: Empty block. Select data serialization - format automatically. + description: '(Block List, Max: 1) (see below + for nested schema)' items: type: object type: array serializerDebezium: - description: Serialize data in json format. - The structure is documented below. + description: '(Block List, Max: 1) (see below + for nested schema)' items: properties: serializerParameters: - description: A list of debezium parameters - set by the structure of the key and - value string fields. + description: (Block List) (see below for + nested schema) items: properties: key: - description: Mark field as Primary - Key. + description: (Boolean) type: string value: + description: (String) type: string type: object type: array type: object type: array serializerJson: - description: Empty block. Serialize data in - json format. + description: '(Block List, Max: 1) (see below + for nested schema)' items: type: object type: array type: object type: array serviceAccountId: - description: '- Service account ID for interaction - with database.' + description: (String) type: string stream: - description: '- Stream.' + description: (String) type: string subnetId: - description: '- Identifier of the Yandex Cloud VPC - subnetwork to user for accessing the database. If - omitted, the server has to be accessible via Internet.' + description: (String) type: string type: object type: array @@ -8897,118 +8256,97 @@ spec: atProvider: properties: description: - description: Arbitrary description text for the endpoint. + description: (String) type: string folderId: - description: ID of the folder to create the endpoint in. If it - is not provided, the default provider folder is used. + description: (String) type: string id: - description: (Computed) Identifier of a new Data Transfer endpoint. + description: (String) The ID of this resource. type: string labels: additionalProperties: type: string - description: A set of key/value label pairs to assign to the Data - Transfer endpoint. + description: (Map of String) type: object x-kubernetes-map-type: granular name: - description: Name of the endpoint. + description: (String) type: string settings: - description: Settings for the endpoint. The structure is documented - below. + description: '(Block List, Max: 1) (see below for nested schema)' items: properties: clickhouseSource: - description: Settings specific to the ClickHouse source - endpoint. + description: '(Block List, Max: 1) (see below for nested + schema)' items: properties: + clickhouseClusterName: + description: (String) + type: string connection: - description: Connection settings. + description: '(Block List, Max: 1) (see below for + nested schema)' items: properties: connectionOptions: - description: Connection options. The structure - is documented below. + description: '(Block List, Max: 1) (see below + for nested schema)' items: properties: database: - description: '- Database.' + description: (String) type: string mdbClusterId: - description: Identifier of the Managed - PostgreSQL cluster. + description: (String) type: string onPremise: - description: Connection settings of the - on-premise PostgreSQL server. + description: '(Block List, Max: 1) (see + below for nested schema)' items: properties: httpPort: - description: TCP port number for - the HTTP interface of the ClickHouse - server. + description: (Number) type: number nativePort: - description: TCP port number for - the native interface of the ClickHouse - server. + description: (Number) type: number shards: - description: The list of ClickHouse - shards. The structure is documented - below. + description: (Block List) (see below + for nested schema) items: properties: hosts: - description: List of host - names of the PostgreSQL - server. Exactly one host - is expected currently. + description: (List of String) items: type: string type: array name: - description: Field name. + description: (String) type: string type: object type: array tlsMode: - description: TLS settings for the - server connection. Empty implies - plaintext connection. The structure - is documented below. + description: '(Block List, Max: + 1) (see below for nested schema)' items: properties: disabled: - description: Empty block designating - that the connection is not - secured, i.e. plaintext - connection. + description: '(Block List, + Max: 1) (see below for nested + schema)' items: type: object type: array enabled: - description: If this attribute - is not an empty block, then - TLS is used for the server - connection. The structure - is documented below. + description: '(Block List, + Max: 1) (see below for nested + schema)' items: properties: caCertificate: - description: X.509 certificate - of the certificate - authority which issued - the server's certificate, - in PEM format. If - empty, the server's - certificate must be - signed by a well-known - CA. + description: (String) type: string type: object type: array @@ -9017,16 +8355,12 @@ spec: type: object type: array password: - description: Password for the database - access. This is a block with a single - field named raw which should contain - the password. + description: '(Block List, Max: 1) (see + below for nested schema)' items: properties: rawSecretRef: - description: A SecretKeySelector - is a reference to a secret key - in an arbitrary namespace. + description: (String, Sensitive) properties: key: description: The key to select. @@ -9046,149 +8380,117 @@ spec: type: object type: array user: - description: User for the database access. + description: (String) type: string type: object type: array type: object type: array excludeTables: - description: List of tables which will not be transfered, - formatted as schemaname.tablename. + description: (List of String) items: type: string type: array includeTables: - description: List of tables to transfer, formatted - as schemaname.tablename. If omitted or an empty - list is specified, all tables will be transferred. + description: (List of String) items: type: string type: array securityGroups: - description: '- List of security groups that the - transfer associated with this endpoint should use.' + description: (List of String) items: type: string type: array subnetId: - description: '- Identifier of the Yandex Cloud VPC - subnetwork to user for accessing the database. If - omitted, the server has to be accessible via Internet.' + description: (String) type: string type: object type: array clickhouseTarget: - description: Settings specific to the ClickHouse target - endpoint. + description: '(Block List, Max: 1) (see below for nested + schema)' items: properties: altNames: - description: Table renaming rules. The structure is - documented below. + description: (Block List) (see below for nested schema) items: properties: fromName: - description: Name of the endpoint. + description: (String) type: string toName: - description: Name of the endpoint. + description: (String) type: string type: object type: array cleanupPolicy: - description: '- How to clean collections when activating - the transfer. One of "YDB_CLEANUP_POLICY_DISABLED" - or "YDB_CLEANUP_POLICY_DROP".' + description: (String) type: string clickhouseClusterName: - description: Name of the ClickHouse cluster. For managed - ClickHouse clusters defaults to managed cluster - ID. + description: (String) type: string connection: - description: Connection settings. + description: '(Block List, Max: 1) (see below for + nested schema)' items: properties: connectionOptions: - description: Connection options. The structure - is documented below. + description: '(Block List, Max: 1) (see below + for nested schema)' items: properties: database: - description: '- Database.' + description: (String) type: string mdbClusterId: - description: Identifier of the Managed - PostgreSQL cluster. + description: (String) type: string onPremise: - description: Connection settings of the - on-premise PostgreSQL server. + description: '(Block List, Max: 1) (see + below for nested schema)' items: properties: httpPort: - description: TCP port number for - the HTTP interface of the ClickHouse - server. + description: (Number) type: number nativePort: - description: TCP port number for - the native interface of the ClickHouse - server. + description: (Number) type: number shards: - description: The list of ClickHouse - shards. The structure is documented - below. + description: (Block List) (see below + for nested schema) items: properties: hosts: - description: List of host - names of the PostgreSQL - server. Exactly one host - is expected currently. + description: (List of String) items: type: string type: array name: - description: Field name. + description: (String) type: string type: object type: array tlsMode: - description: TLS settings for the - server connection. Empty implies - plaintext connection. The structure - is documented below. + description: '(Block List, Max: + 1) (see below for nested schema)' items: properties: disabled: - description: Empty block designating - that the connection is not - secured, i.e. plaintext - connection. + description: '(Block List, + Max: 1) (see below for nested + schema)' items: type: object type: array enabled: - description: If this attribute - is not an empty block, then - TLS is used for the server - connection. The structure - is documented below. + description: '(Block List, + Max: 1) (see below for nested + schema)' items: properties: caCertificate: - description: X.509 certificate - of the certificate - authority which issued - the server's certificate, - in PEM format. If - empty, the server's - certificate must be - signed by a well-known - CA. + description: (String) type: string type: object type: array @@ -9197,16 +8499,12 @@ spec: type: object type: array password: - description: Password for the database - access. This is a block with a single - field named raw which should contain - the password. + description: '(Block List, Max: 1) (see + below for nested schema)' items: properties: rawSecretRef: - description: A SecretKeySelector - is a reference to a secret key - in an arbitrary namespace. + description: (String, Sensitive) properties: key: description: The key to select. @@ -9226,125 +8524,112 @@ spec: type: object type: array user: - description: User for the database access. + description: (String) type: string type: object type: array type: object type: array securityGroups: - description: '- List of security groups that the - transfer associated with this endpoint should use.' + description: (List of String) items: type: string type: array sharding: - description: Shard selection rules for the data being - transferred. The structure is documented below. + description: '(Block List, Max: 1) (see below for + nested schema)' items: properties: columnValueHash: - description: Shard data by the hash value of - the specified column. The structure is documented - below. + description: '(Block List, Max: 1) (see below + for nested schema)' items: properties: columnName: - description: The name of the column to - calculate hash from. + description: (String) type: string type: object type: array customMapping: - description: A custom shard mapping by the value - of the specified column. The structure is - documented below. + description: '(Block List, Max: 1) (see below + for nested schema)' items: properties: columnName: - description: The name of the column to - calculate hash from. + description: (String) type: string mapping: - description: The mapping of the specified - column values to the shard names. The - structure is documented below. + description: (Block List) (see below for + nested schema) items: properties: columnValue: - description: The value of the column. - Currently only the string columns - are supported. The structure is - documented below. + description: '(Block List, Max: + 1) (see below for nested schema)' items: properties: stringValue: - description: The string value - of the column. + description: (String) type: string type: object type: array shardName: - description: The name of the shard - into which all the rows with the - specified column_value will be - written. + description: (String) type: string type: object type: array type: object type: array roundRobin: - description: robin manner. Specify as an empty - block to enable. + description: '(Block List, Max: 1) (see below + for nested schema)' items: type: object type: array transferId: - description: Shard data by ID of the transfer. + description: '(Block List, Max: 1) (see below + for nested schema)' items: type: object type: array type: object type: array subnetId: - description: '- Identifier of the Yandex Cloud VPC - subnetwork to user for accessing the database. If - omitted, the server has to be accessible via Internet.' + description: (String) type: string type: object type: array kafkaSource: - description: Settings specific to the Kafka source endpoint. + description: '(Block List, Max: 1) (see below for nested + schema)' items: properties: auth: - description: Authentication data. + description: '(Block List, Max: 1) (see below for + nested schema)' items: properties: noAuth: - description: Connection without authentication - data. + description: '(Block List, Max: 1) (see below + for nested schema)' items: type: object type: array sasl: - description: Authentication using sasl. + description: '(Block List, Max: 1) (see below + for nested schema)' items: properties: mechanism: + description: (String) type: string password: - description: Password for the database - access. This is a block with a single - field named raw which should contain - the password. + description: '(Block List, Max: 1) (see + below for nested schema)' items: properties: rawSecretRef: - description: A SecretKeySelector - is a reference to a secret key - in an arbitrary namespace. + description: (String, Sensitive) properties: key: description: The key to select. @@ -9364,65 +8649,51 @@ spec: type: object type: array user: - description: User for the database access. + description: (String) type: string type: object type: array type: object type: array connection: - description: Connection settings. + description: '(Block List, Max: 1) (see below for + nested schema)' items: properties: clusterId: - description: Identifier of the Managed Kafka - cluster. + description: (String) type: string onPremise: - description: Connection settings of the on-premise - PostgreSQL server. + description: '(Block List, Max: 1) (see below + for nested schema)' items: properties: brokerUrls: - description: List of Kafka broker URLs. + description: (List of String) items: type: string type: array subnetId: - description: '- Identifier of the Yandex - Cloud VPC subnetwork to user for accessing - the database. If omitted, the server - has to be accessible via Internet.' + description: (String) type: string tlsMode: - description: TLS settings for the server - connection. Empty implies plaintext - connection. The structure is documented - below. + description: '(Block List, Max: 1) (see + below for nested schema)' items: properties: disabled: - description: Empty block designating - that the connection is not secured, - i.e. plaintext connection. + description: '(Block List, Max: + 1) (see below for nested schema)' items: type: object type: array enabled: - description: If this attribute is - not an empty block, then TLS is - used for the server connection. - The structure is documented below. + description: '(Block List, Max: + 1) (see below for nested schema)' items: properties: caCertificate: - description: X.509 certificate - of the certificate authority - which issued the server's - certificate, in PEM format. - If empty, the server's certificate - must be signed by a well-known - CA. + description: (String) type: string type: object type: array @@ -9433,232 +8704,207 @@ spec: type: object type: array parser: - description: '- Data parsing rules.' + description: '(Block List, Max: 1) (see below for + nested schema)' items: properties: auditTrailsV1Parser: - description: Parse Audit Trails data. Empty - struct. + description: '(Block List, Max: 1) (see below + for nested schema)' items: type: object type: array cloudLoggingParser: - description: Parse Cloud Logging data. Empty - struct. + description: '(Block List, Max: 1) (see below + for nested schema)' items: type: object type: array jsonParser: - description: Parse data in json format. + description: '(Block List, Max: 1) (see below + for nested schema)' items: properties: addRestColumn: - description: Add fields, that are not - in the schema, into the _rest column. + description: (Boolean) type: boolean dataSchema: - description: Data parsing scheme.The structure - is documented below. + description: '(Block List, Max: 1) (see + below for nested schema)' items: properties: fields: - description: Description of the - data schema in the array of fields - structure (documented below). + description: '(Block List, Max: + 1) (see below for nested schema)' items: properties: fields: - description: Description of - the data schema in the array - of fields structure (documented - below). + description: '(Block List, + Max: 1) (see below for nested + schema)' items: properties: key: - description: Mark field - as Primary Key. + description: (Boolean) type: boolean name: - description: Field name. + description: (String) type: string path: - description: '- A path - where resulting tables - are stored.' + description: (String) type: string required: - description: Mark field - as required. + description: (Boolean) type: boolean type: - description: 'Field - type, one of: INT64, - INT32, INT16, INT8, - UINT64, UINT32, UINT16, - UINT8, DOUBLE, BOOLEAN, - STRING, UTF8, ANY, - DATETIME.' + description: (String) type: string type: object type: array type: object type: array jsonFields: - description: Description of the - data schema as JSON specification. + description: (String) type: string type: object type: array nullKeysAllowed: - description: Allow null keys. If false - - null keys will be putted to unparsed - data + description: (Boolean) type: boolean unescapeStringValues: - description: Allow unescape string values. + description: (Boolean) type: boolean type: object type: array tskvParser: - description: Parse data if tskv format. + description: '(Block List, Max: 1) (see below + for nested schema)' items: properties: addRestColumn: - description: Add fields, that are not - in the schema, into the _rest column. + description: (Boolean) type: boolean dataSchema: - description: Data parsing scheme.The structure - is documented below. + description: '(Block List, Max: 1) (see + below for nested schema)' items: properties: fields: - description: Description of the - data schema in the array of fields - structure (documented below). + description: '(Block List, Max: + 1) (see below for nested schema)' items: properties: fields: - description: Description of - the data schema in the array - of fields structure (documented - below). + description: '(Block List, + Max: 1) (see below for nested + schema)' items: properties: key: - description: Mark field - as Primary Key. + description: (Boolean) type: boolean name: - description: Field name. + description: (String) type: string path: - description: '- A path - where resulting tables - are stored.' + description: (String) type: string required: - description: Mark field - as required. + description: (Boolean) type: boolean type: - description: 'Field - type, one of: INT64, - INT32, INT16, INT8, - UINT64, UINT32, UINT16, - UINT8, DOUBLE, BOOLEAN, - STRING, UTF8, ANY, - DATETIME.' + description: (String) type: string type: object type: array type: object type: array jsonFields: - description: Description of the - data schema as JSON specification. + description: (String) type: string type: object type: array nullKeysAllowed: - description: Allow null keys. If false - - null keys will be putted to unparsed - data + description: (Boolean) type: boolean unescapeStringValues: - description: Allow unescape string values. + description: (Boolean) type: boolean type: object type: array type: object type: array securityGroups: - description: '- List of security groups that the - transfer associated with this endpoint should use.' + description: (List of String) items: type: string type: array topicName: - description: Full topic name + description: (String) type: string topicNames: - description: The list of full source topic names. + description: (List of String) items: type: string type: array transformer: - description: Transform data with a custom Cloud Function. + description: '(Block List, Max: 1) (see below for + nested schema)' items: properties: bufferFlushInterval: + description: (String) type: string bufferSize: + description: (String) type: string cloudFunction: + description: (String) type: string invocationTimeout: + description: (String) type: string numberOfRetries: + description: (Number) type: number serviceAccountId: - description: '- Service account ID for interaction - with database.' + description: (String) type: string type: object type: array type: object type: array kafkaTarget: - description: Settings specific to the Kafka target endpoint. + description: '(Block List, Max: 1) (see below for nested + schema)' items: properties: auth: - description: Authentication data. + description: '(Block List, Max: 1) (see below for + nested schema)' items: properties: noAuth: - description: Connection without authentication - data. + description: '(Block List, Max: 1) (see below + for nested schema)' items: type: object type: array sasl: - description: Authentication using sasl. + description: '(Block List, Max: 1) (see below + for nested schema)' items: properties: mechanism: + description: (String) type: string password: - description: Password for the database - access. This is a block with a single - field named raw which should contain - the password. + description: '(Block List, Max: 1) (see + below for nested schema)' items: properties: rawSecretRef: - description: A SecretKeySelector - is a reference to a secret key - in an arbitrary namespace. + description: (String, Sensitive) properties: key: description: The key to select. @@ -9678,65 +8924,51 @@ spec: type: object type: array user: - description: User for the database access. + description: (String) type: string type: object type: array type: object type: array connection: - description: Connection settings. + description: '(Block List, Max: 1) (see below for + nested schema)' items: properties: clusterId: - description: Identifier of the Managed Kafka - cluster. + description: (String) type: string onPremise: - description: Connection settings of the on-premise - PostgreSQL server. + description: '(Block List, Max: 1) (see below + for nested schema)' items: properties: brokerUrls: - description: List of Kafka broker URLs. + description: (List of String) items: type: string type: array subnetId: - description: '- Identifier of the Yandex - Cloud VPC subnetwork to user for accessing - the database. If omitted, the server - has to be accessible via Internet.' + description: (String) type: string tlsMode: - description: TLS settings for the server - connection. Empty implies plaintext - connection. The structure is documented - below. + description: '(Block List, Max: 1) (see + below for nested schema)' items: properties: disabled: - description: Empty block designating - that the connection is not secured, - i.e. plaintext connection. + description: '(Block List, Max: + 1) (see below for nested schema)' items: type: object type: array enabled: - description: If this attribute is - not an empty block, then TLS is - used for the server connection. - The structure is documented below. + description: '(Block List, Max: + 1) (see below for nested schema)' items: properties: caCertificate: - description: X.509 certificate - of the certificate authority - which issued the server's - certificate, in PEM format. - If empty, the server's certificate - must be signed by a well-known - CA. + description: (String) type: string type: object type: array @@ -9747,102 +8979,105 @@ spec: type: object type: array securityGroups: - description: '- List of security groups that the - transfer associated with this endpoint should use.' + description: (List of String) items: type: string type: array serializer: - description: '- Data serialization format.' + description: '(Block List, Max: 1) (see below for + nested schema)' items: properties: serializerAuto: - description: Empty block. Select data serialization - format automatically. + description: '(Block List, Max: 1) (see below + for nested schema)' items: type: object type: array serializerDebezium: - description: Serialize data in json format. - The structure is documented below. + description: '(Block List, Max: 1) (see below + for nested schema)' items: properties: serializerParameters: - description: A list of debezium parameters - set by the structure of the key and - value string fields. + description: (Block List) (see below for + nested schema) items: properties: key: - description: Mark field as Primary - Key. + description: (Boolean) type: string value: + description: (String) type: string type: object type: array type: object type: array serializerJson: - description: Empty block. Serialize data in - json format. + description: '(Block List, Max: 1) (see below + for nested schema)' items: type: object type: array type: object type: array topicSettings: - description: Target topic settings. + description: '(Block List, Max: 1) (see below for + nested schema)' items: properties: topic: - description: All messages will be sent to one - topic. The structure is documented below. + description: '(Block List, Max: 1) (see below + for nested schema)' items: properties: saveTxOrder: - description: '- Save transaction order' + description: (Boolean) type: boolean topicName: - description: Full topic name + description: (String) type: string type: object type: array topicPrefix: - description: Topic name prefix. Messages will - be sent to topic with name ... + description: (String) type: string type: object type: array type: object type: array metrikaSource: + description: '(Block List, Max: 1) (see below for nested + schema)' items: properties: counterIds: + description: (List of Number) items: type: number type: array streams: + description: (Block List) (see below for nested schema) items: properties: columns: + description: (List of String) items: type: string type: array type: - description: 'Field type, one of: INT64, INT32, - INT16, INT8, UINT64, UINT32, UINT16, UINT8, - DOUBLE, BOOLEAN, STRING, UTF8, ANY, DATETIME.' + description: (String) type: string type: object type: array token: + description: '(Block List, Max: 1) (see below for + nested schema)' items: properties: rawSecretRef: - description: A SecretKeySelector is a reference - to a secret key in an arbitrary namespace. + description: (String, Sensitive) properties: key: description: The key to select. @@ -9863,93 +9098,74 @@ spec: type: object type: array mongoSource: - description: Settings specific to the MongoDB source endpoint. + description: '(Block List, Max: 1) (see below for nested + schema)' items: properties: collections: - description: The list of the MongoDB collections that - should be transferred. If omitted, all available - collections will be transferred. The structure of - the list item is documented below. + description: (Block List) (see below for nested schema) items: properties: collectionName: - description: Collection name. + description: (String) type: string databaseName: - description: Database name. + description: (String) type: string type: object type: array connection: - description: Connection settings. + description: '(Block List, Max: 1) (see below for + nested schema)' items: properties: connectionOptions: - description: Connection options. The structure - is documented below. + description: '(Block List, Max: 1) (see below + for nested schema)' items: properties: authSource: - description: Name of the database associated - with the credentials. + description: (String) type: string mdbClusterId: - description: Identifier of the Managed - PostgreSQL cluster. + description: (String) type: string onPremise: - description: Connection settings of the - on-premise PostgreSQL server. + description: '(Block List, Max: 1) (see + below for nested schema)' items: properties: hosts: - description: List of host names - of the PostgreSQL server. Exactly - one host is expected currently. + description: (List of String) items: type: string type: array port: - description: Port for the database - connection. + description: (Number) type: number replicaSet: - description: Replica set name. + description: (String) type: string tlsMode: - description: TLS settings for the - server connection. Empty implies - plaintext connection. The structure - is documented below. + description: '(Block List, Max: + 1) (see below for nested schema)' items: properties: disabled: - description: Empty block designating - that the connection is not - secured, i.e. plaintext - connection. + description: '(Block List, + Max: 1) (see below for nested + schema)' items: type: object type: array enabled: - description: If this attribute - is not an empty block, then - TLS is used for the server - connection. The structure - is documented below. + description: '(Block List, + Max: 1) (see below for nested + schema)' items: properties: caCertificate: - description: X.509 certificate - of the certificate - authority which issued - the server's certificate, - in PEM format. If - empty, the server's - certificate must be - signed by a well-known - CA. + description: (String) type: string type: object type: array @@ -9958,16 +9174,12 @@ spec: type: object type: array password: - description: Password for the database - access. This is a block with a single - field named raw which should contain - the password. + description: '(Block List, Max: 1) (see + below for nested schema)' items: properties: rawSecretRef: - description: A SecretKeySelector - is a reference to a secret key - in an arbitrary namespace. + description: (String, Sensitive) properties: key: description: The key to select. @@ -9987,120 +9199,97 @@ spec: type: object type: array user: - description: User for the database access. + description: (String) type: string type: object type: array type: object type: array excludedCollections: - description: The list of the MongoDB collections that - should not be transferred. + description: (Block List) (see below for nested schema) items: properties: collectionName: - description: Collection name. + description: (String) type: string databaseName: - description: Database name. + description: (String) type: string type: object type: array secondaryPreferredMode: - description: whether the secondary server should be - preferred to the primary when copying data. + description: (Boolean) type: boolean securityGroups: - description: '- List of security groups that the - transfer associated with this endpoint should use.' + description: (List of String) items: type: string type: array subnetId: - description: '- Identifier of the Yandex Cloud VPC - subnetwork to user for accessing the database. If - omitted, the server has to be accessible via Internet.' + description: (String) type: string type: object type: array mongoTarget: - description: Settings specific to the MongoDB target endpoint. + description: '(Block List, Max: 1) (see below for nested + schema)' items: properties: cleanupPolicy: - description: '- How to clean collections when activating - the transfer. One of "YDB_CLEANUP_POLICY_DISABLED" - or "YDB_CLEANUP_POLICY_DROP".' + description: (String) type: string connection: - description: Connection settings. + description: '(Block List, Max: 1) (see below for + nested schema)' items: properties: connectionOptions: - description: Connection options. The structure - is documented below. + description: '(Block List, Max: 1) (see below + for nested schema)' items: properties: authSource: - description: Name of the database associated - with the credentials. + description: (String) type: string mdbClusterId: - description: Identifier of the Managed - PostgreSQL cluster. + description: (String) type: string onPremise: - description: Connection settings of the - on-premise PostgreSQL server. + description: '(Block List, Max: 1) (see + below for nested schema)' items: properties: hosts: - description: List of host names - of the PostgreSQL server. Exactly - one host is expected currently. + description: (List of String) items: type: string type: array port: - description: Port for the database - connection. + description: (Number) type: number replicaSet: - description: Replica set name. + description: (String) type: string tlsMode: - description: TLS settings for the - server connection. Empty implies - plaintext connection. The structure - is documented below. + description: '(Block List, Max: + 1) (see below for nested schema)' items: properties: disabled: - description: Empty block designating - that the connection is not - secured, i.e. plaintext - connection. + description: '(Block List, + Max: 1) (see below for nested + schema)' items: type: object type: array enabled: - description: If this attribute - is not an empty block, then - TLS is used for the server - connection. The structure - is documented below. + description: '(Block List, + Max: 1) (see below for nested + schema)' items: properties: caCertificate: - description: X.509 certificate - of the certificate - authority which issued - the server's certificate, - in PEM format. If - empty, the server's - certificate must be - signed by a well-known - CA. + description: (String) type: string type: object type: array @@ -10109,16 +9298,12 @@ spec: type: object type: array password: - description: Password for the database - access. This is a block with a single - field named raw which should contain - the password. + description: '(Block List, Max: 1) (see + below for nested schema)' items: properties: rawSecretRef: - description: A SecretKeySelector - is a reference to a secret key - in an arbitrary namespace. + description: (String, Sensitive) properties: key: description: The key to select. @@ -10138,90 +9323,72 @@ spec: type: object type: array user: - description: User for the database access. + description: (String) type: string type: object type: array type: object type: array database: - description: '- Database.' + description: (String) type: string securityGroups: - description: '- List of security groups that the - transfer associated with this endpoint should use.' + description: (List of String) items: type: string type: array subnetId: - description: '- Identifier of the Yandex Cloud VPC - subnetwork to user for accessing the database. If - omitted, the server has to be accessible via Internet.' + description: (String) type: string type: object type: array mysqlSource: - description: Settings specific to the MySQL source endpoint. + description: '(Block List, Max: 1) (see below for nested + schema)' items: properties: connection: - description: Connection settings. + description: '(Block List, Max: 1) (see below for + nested schema)' items: properties: mdbClusterId: - description: Identifier of the Managed PostgreSQL - cluster. + description: (String) type: string onPremise: - description: Connection settings of the on-premise - PostgreSQL server. + description: '(Block List, Max: 1) (see below + for nested schema)' items: properties: hosts: - description: List of host names of the - PostgreSQL server. Exactly one host - is expected currently. + description: (List of String) items: type: string type: array port: - description: Port for the database connection. + description: (Number) type: number subnetId: - description: '- Identifier of the Yandex - Cloud VPC subnetwork to user for accessing - the database. If omitted, the server - has to be accessible via Internet.' + description: (String) type: string tlsMode: - description: TLS settings for the server - connection. Empty implies plaintext - connection. The structure is documented - below. + description: '(Block List, Max: 1) (see + below for nested schema)' items: properties: disabled: - description: Empty block designating - that the connection is not secured, - i.e. plaintext connection. + description: '(Block List, Max: + 1) (see below for nested schema)' items: type: object type: array enabled: - description: If this attribute is - not an empty block, then TLS is - used for the server connection. - The structure is documented below. + description: '(Block List, Max: + 1) (see below for nested schema)' items: properties: caCertificate: - description: X.509 certificate - of the certificate authority - which issued the server's - certificate, in PEM format. - If empty, the server's certificate - must be signed by a well-known - CA. + description: (String) type: string type: object type: array @@ -10232,50 +9399,44 @@ spec: type: object type: array database: - description: '- Database.' + description: (String) type: string excludeTablesRegex: - description: Opposite of include_table_regex. The - tables matching the specified regular expressions - will not be transferred. + description: (List of String) items: type: string type: array includeTablesRegex: - description: List of regular expressions of table - names which should be transferred. A table name - is formatted as schemaname.tablename. For example, - a single regular expression may look like ^mydb.employees$. + description: (List of String) items: type: string type: array objectTransferSettings: - description: Defines which database schema objects - should be transferred, e.g. views, functions, etc. + description: '(Block List, Max: 1) (see below for + nested schema)' items: properties: routine: + description: (String) type: string tables: + description: (String) type: string trigger: - description: All of the attrubutes are optional - and should be either "BEFORE_DATA", "AFTER_DATA" - or "NEVER". + description: (String) type: string view: + description: (String) type: string type: object type: array password: - description: Password for the database access. This - is a block with a single field named raw which should - contain the password. + description: '(Block List, Max: 1) (see below for + nested schema)' items: properties: rawSecretRef: - description: A SecretKeySelector is a reference - to a secret key in an arbitrary namespace. + description: (String, Sensitive) properties: key: description: The key to select. @@ -10294,93 +9455,71 @@ spec: type: object type: array securityGroups: - description: '- List of security groups that the - transfer associated with this endpoint should use.' + description: (List of String) items: type: string type: array serviceDatabase: - description: The name of the database where technical - tables (__tm_keeper, __tm_gtid_keeper) will be created. - Default is the value of the attribute database. + description: (String) type: string timezone: - description: 'Timezone to use for parsing timestamps - for saving source timezones. Accepts values from - IANA timezone database. Default: local timezone.' + description: (String) type: string user: - description: User for the database access. + description: (String) type: string type: object type: array mysqlTarget: - description: Settings specific to the MySQL target endpoint. + description: '(Block List, Max: 1) (see below for nested + schema)' items: properties: cleanupPolicy: - description: '- How to clean collections when activating - the transfer. One of "YDB_CLEANUP_POLICY_DISABLED" - or "YDB_CLEANUP_POLICY_DROP".' + description: (String) type: string connection: - description: Connection settings. + description: '(Block List, Max: 1) (see below for + nested schema)' items: properties: mdbClusterId: - description: Identifier of the Managed PostgreSQL - cluster. + description: (String) type: string onPremise: - description: Connection settings of the on-premise - PostgreSQL server. + description: '(Block List, Max: 1) (see below + for nested schema)' items: properties: hosts: - description: List of host names of the - PostgreSQL server. Exactly one host - is expected currently. + description: (List of String) items: type: string type: array port: - description: Port for the database connection. + description: (Number) type: number subnetId: - description: '- Identifier of the Yandex - Cloud VPC subnetwork to user for accessing - the database. If omitted, the server - has to be accessible via Internet.' + description: (String) type: string tlsMode: - description: TLS settings for the server - connection. Empty implies plaintext - connection. The structure is documented - below. + description: '(Block List, Max: 1) (see + below for nested schema)' items: properties: disabled: - description: Empty block designating - that the connection is not secured, - i.e. plaintext connection. + description: '(Block List, Max: + 1) (see below for nested schema)' items: type: object type: array enabled: - description: If this attribute is - not an empty block, then TLS is - used for the server connection. - The structure is documented below. + description: '(Block List, Max: + 1) (see below for nested schema)' items: properties: caCertificate: - description: X.509 certificate - of the certificate authority - which issued the server's - certificate, in PEM format. - If empty, the server's certificate - must be signed by a well-known - CA. + description: (String) type: string type: object type: array @@ -10391,17 +9530,15 @@ spec: type: object type: array database: - description: '- Database.' + description: (String) type: string password: - description: Password for the database access. This - is a block with a single field named raw which should - contain the password. + description: '(Block List, Max: 1) (see below for + nested schema)' items: properties: rawSecretRef: - description: A SecretKeySelector is a reference - to a secret key in an arbitrary namespace. + description: (String, Sensitive) properties: key: description: The key to select. @@ -10420,98 +9557,74 @@ spec: type: object type: array securityGroups: - description: '- List of security groups that the - transfer associated with this endpoint should use.' + description: (List of String) items: type: string type: array serviceDatabase: - description: The name of the database where technical - tables (__tm_keeper, __tm_gtid_keeper) will be created. - Default is the value of the attribute database. + description: (String) type: string skipConstraintChecks: - description: When true, disables foreign key checks. - See foreign_key_checks. False by default. + description: (Boolean) type: boolean sqlMode: - description: sql_mode to use when interacting with - the server. Defaults to "NO_AUTO_VALUE_ON_ZERO,NO_DIR_IN_CREATE,NO_ENGINE_SUBSTITUTION". + description: (String) type: string timezone: - description: 'Timezone to use for parsing timestamps - for saving source timezones. Accepts values from - IANA timezone database. Default: local timezone.' + description: (String) type: string user: - description: User for the database access. + description: (String) type: string type: object type: array postgresSource: - description: Settings specific to the PostgreSQL source - endpoint. + description: '(Block List, Max: 1) (see below for nested + schema)' items: properties: connection: - description: Connection settings. The structure is - documented below. + description: '(Block List, Max: 1) (see below for + nested schema)' items: properties: mdbClusterId: - description: Identifier of the Managed PostgreSQL - cluster. + description: (String) type: string onPremise: - description: Connection settings of the on-premise - PostgreSQL server. + description: '(Block List, Max: 1) (see below + for nested schema)' items: properties: hosts: - description: List of host names of the - PostgreSQL server. Exactly one host - is expected currently. + description: (List of String) items: type: string type: array port: - description: Port for the database connection. + description: (Number) type: number subnetId: - description: '- Identifier of the Yandex - Cloud VPC subnetwork to user for accessing - the database. If omitted, the server - has to be accessible via Internet.' + description: (String) type: string tlsMode: - description: TLS settings for the server - connection. Empty implies plaintext - connection. The structure is documented - below. + description: '(Block List, Max: 1) (see + below for nested schema)' items: properties: disabled: - description: Empty block designating - that the connection is not secured, - i.e. plaintext connection. + description: '(Block List, Max: + 1) (see below for nested schema)' items: type: object type: array enabled: - description: If this attribute is - not an empty block, then TLS is - used for the server connection. - The structure is documented below. + description: '(Block List, Max: + 1) (see below for nested schema)' items: properties: caCertificate: - description: X.509 certificate - of the certificate authority - which issued the server's - certificate, in PEM format. - If empty, the server's certificate - must be signed by a well-known - CA. + description: (String) type: string type: object type: array @@ -10522,82 +9635,86 @@ spec: type: object type: array database: - description: Name of the database to transfer. + description: (String) type: string excludeTables: - description: List of tables which will not be transfered, - formatted as schemaname.tablename. + description: (List of String) items: type: string type: array includeTables: - description: List of tables to transfer, formatted - as schemaname.tablename. If omitted or an empty - list is specified, all tables will be transferred. + description: (List of String) items: type: string type: array objectTransferSettings: - description: Defines which database schema objects - should be transferred, e.g. views, functions, etc. + description: '(Block List, Max: 1) (see below for + nested schema)' items: properties: cast: - description: All of the attrubutes are optional - and should be either "BEFORE_DATA", "AFTER_DATA" - or "NEVER". + description: (String) type: string collation: + description: (String) type: string constraint: + description: (String) type: string defaultValues: + description: (String) type: string fkConstraint: + description: (String) type: string function: + description: (String) type: string index: + description: (String) type: string materializedView: + description: (String) type: string policy: + description: (String) type: string primaryKey: + description: (String) type: string rule: + description: (String) type: string sequence: + description: (String) type: string sequenceOwnedBy: + description: (String) type: string sequenceSet: + description: (String) type: string table: + description: (String) type: string trigger: - description: All of the attrubutes are optional - and should be either "BEFORE_DATA", "AFTER_DATA" - or "NEVER". + description: (String) type: string type: - description: 'Field type, one of: INT64, INT32, - INT16, INT8, UINT64, UINT32, UINT16, UINT8, - DOUBLE, BOOLEAN, STRING, UTF8, ANY, DATETIME.' + description: (String) type: string view: + description: (String) type: string type: object type: array password: - description: Password for the database access. This - is a block with a single field named raw which should - contain the password. + description: '(Block List, Max: 1) (see below for + nested schema)' items: properties: rawSecretRef: - description: A SecretKeySelector is a reference - to a secret key in an arbitrary namespace. + description: (String, Sensitive) properties: key: description: The key to select. @@ -10616,95 +9733,71 @@ spec: type: object type: array securityGroups: - description: List of security groups that the transfer - associated with this endpoint should use. + description: (List of String) items: type: string type: array serviceSchema: - description: Name of the database schema in which - auxiliary tables needed for the transfer will be - created. Empty service_schema implies schema "public". + description: (String) type: string slotGigabyteLagLimit: - description: Maximum WAL size held by the replication - slot, in gigabytes. Exceeding this limit will result - in a replication failure and deletion of the replication - slot. Unlimited by default. + description: (Number) type: number user: - description: User for the database access. + description: (String) type: string type: object type: array postgresTarget: - description: Settings specific to the PostgreSQL target - endpoint. + description: '(Block List, Max: 1) (see below for nested + schema)' items: properties: cleanupPolicy: - description: '- How to clean collections when activating - the transfer. One of "YDB_CLEANUP_POLICY_DISABLED" - or "YDB_CLEANUP_POLICY_DROP".' + description: (String) type: string connection: - description: Connection settings. + description: '(Block List, Max: 1) (see below for + nested schema)' items: properties: mdbClusterId: - description: Identifier of the Managed PostgreSQL - cluster. + description: (String) type: string onPremise: - description: Connection settings of the on-premise - PostgreSQL server. + description: '(Block List, Max: 1) (see below + for nested schema)' items: properties: hosts: - description: List of host names of the - PostgreSQL server. Exactly one host - is expected currently. + description: (List of String) items: type: string type: array port: - description: Port for the database connection. + description: (Number) type: number subnetId: - description: '- Identifier of the Yandex - Cloud VPC subnetwork to user for accessing - the database. If omitted, the server - has to be accessible via Internet.' + description: (String) type: string tlsMode: - description: TLS settings for the server - connection. Empty implies plaintext - connection. The structure is documented - below. + description: '(Block List, Max: 1) (see + below for nested schema)' items: properties: disabled: - description: Empty block designating - that the connection is not secured, - i.e. plaintext connection. + description: '(Block List, Max: + 1) (see below for nested schema)' items: type: object type: array enabled: - description: If this attribute is - not an empty block, then TLS is - used for the server connection. - The structure is documented below. + description: '(Block List, Max: + 1) (see below for nested schema)' items: properties: caCertificate: - description: X.509 certificate - of the certificate authority - which issued the server's - certificate, in PEM format. - If empty, the server's certificate - must be signed by a well-known - CA. + description: (String) type: string type: object type: array @@ -10715,17 +9808,15 @@ spec: type: object type: array database: - description: '- Database.' + description: (String) type: string password: - description: Password for the database access. This - is a block with a single field named raw which should - contain the password. + description: '(Block List, Max: 1) (see below for + nested schema)' items: properties: rawSecretRef: - description: A SecretKeySelector is a reference - to a secret key in an arbitrary namespace. + description: (String, Sensitive) properties: key: description: The key to select. @@ -10744,370 +9835,318 @@ spec: type: object type: array securityGroups: - description: '- List of security groups that the - transfer associated with this endpoint should use.' + description: (List of String) items: type: string type: array user: - description: User for the database access. + description: (String) type: string type: object type: array ydbSource: - description: Settings specific to the YDB source endpoint. + description: '(Block List, Max: 1) (see below for nested + schema)' items: properties: changefeedCustomName: - description: '- Custom name for changefeed.' + description: (String) type: string database: - description: '- Database.' + description: (String) type: string instance: - description: '- Instance of YDB. Example: "my-cute-ydb.cloud.yandex.ru:2135".' + description: (String) type: string paths: - description: '- A list of paths which should be uploaded. - When not specified, all available tables are uploaded.' + description: (List of String) items: type: string type: array securityGroups: - description: '- List of security groups that the - transfer associated with this endpoint should use.' + description: (List of String) items: type: string type: array serviceAccountId: - description: '- Service account ID for interaction - with database.' + description: (String) type: string subnetId: - description: '- Identifier of the Yandex Cloud VPC - subnetwork to user for accessing the database. If - omitted, the server has to be accessible via Internet.' + description: (String) type: string type: object type: array ydbTarget: - description: Settings specific to the YDB target endpoint. + description: '(Block List, Max: 1) (see below for nested + schema)' items: properties: cleanupPolicy: - description: '- How to clean collections when activating - the transfer. One of "YDB_CLEANUP_POLICY_DISABLED" - or "YDB_CLEANUP_POLICY_DROP".' + description: (String) type: string database: - description: '- Database.' + description: (String) type: string defaultCompression: - description: '- Compression that will be used for - default columns family on YDB table creation One - of "YDB_DEFAULT_COMPRESSION_UNSPECIFIED", "YDB_DEFAULT_COMPRESSION_DISABLED", - "YDB_DEFAULT_COMPRESSION_LZ4".' + description: (String) type: string instance: - description: '- Instance of YDB. Example: "my-cute-ydb.cloud.yandex.ru:2135".' + description: (String) type: string isTableColumnOriented: - description: '- Whether a column-oriented (i.e. OLAP) - tables should be created. Default is false (create - row-oriented OLTP tables).' + description: (Boolean) type: boolean path: - description: '- A path where resulting tables are - stored.' + description: (String) type: string securityGroups: - description: '- List of security groups that the - transfer associated with this endpoint should use.' + description: (List of String) items: type: string type: array serviceAccountId: - description: '- Service account ID for interaction - with database.' + description: (String) type: string subnetId: - description: '- Identifier of the Yandex Cloud VPC - subnetwork to user for accessing the database. If - omitted, the server has to be accessible via Internet.' + description: (String) type: string type: object type: array ydsSource: - description: Settings specific to the YDS source endpoint. + description: '(Block List, Max: 1) (see below for nested + schema)' items: properties: allowTtlRewind: - description: '- Should continue working, if consumer - read lag exceed TTL of topic.' + description: (Boolean) type: boolean consumer: - description: '- Consumer.' + description: (String) type: string database: - description: '- Database.' + description: (String) type: string endpoint: - description: '- YDS Endpoint.' + description: (String) type: string parser: - description: '- Data parsing rules.' + description: '(Block List, Max: 1) (see below for + nested schema)' items: properties: auditTrailsV1Parser: - description: Parse Audit Trails data. Empty - struct. + description: '(Block List, Max: 1) (see below + for nested schema)' items: type: object type: array cloudLoggingParser: - description: Parse Cloud Logging data. Empty - struct. + description: '(Block List, Max: 1) (see below + for nested schema)' items: type: object type: array jsonParser: - description: Parse data in json format. + description: '(Block List, Max: 1) (see below + for nested schema)' items: properties: addRestColumn: - description: Add fields, that are not - in the schema, into the _rest column. + description: (Boolean) type: boolean dataSchema: - description: Data parsing scheme.The structure - is documented below. + description: '(Block List, Max: 1) (see + below for nested schema)' items: properties: fields: - description: Description of the - data schema in the array of fields - structure (documented below). + description: '(Block List, Max: + 1) (see below for nested schema)' items: properties: fields: - description: Description of - the data schema in the array - of fields structure (documented - below). + description: '(Block List, + Max: 1) (see below for nested + schema)' items: properties: key: - description: Mark field - as Primary Key. + description: (Boolean) type: boolean name: - description: Field name. + description: (String) type: string path: - description: '- A path - where resulting tables - are stored.' + description: (String) type: string required: - description: Mark field - as required. + description: (Boolean) type: boolean type: - description: 'Field - type, one of: INT64, - INT32, INT16, INT8, - UINT64, UINT32, UINT16, - UINT8, DOUBLE, BOOLEAN, - STRING, UTF8, ANY, - DATETIME.' + description: (String) type: string type: object type: array type: object type: array jsonFields: - description: Description of the - data schema as JSON specification. + description: (String) type: string type: object type: array nullKeysAllowed: - description: Allow null keys. If false - - null keys will be putted to unparsed - data + description: (Boolean) type: boolean unescapeStringValues: - description: Allow unescape string values. + description: (Boolean) type: boolean type: object type: array tskvParser: - description: Parse data if tskv format. + description: '(Block List, Max: 1) (see below + for nested schema)' items: properties: addRestColumn: - description: Add fields, that are not - in the schema, into the _rest column. + description: (Boolean) type: boolean dataSchema: - description: Data parsing scheme.The structure - is documented below. + description: '(Block List, Max: 1) (see + below for nested schema)' items: properties: fields: - description: Description of the - data schema in the array of fields - structure (documented below). + description: '(Block List, Max: + 1) (see below for nested schema)' items: properties: fields: - description: Description of - the data schema in the array - of fields structure (documented - below). + description: '(Block List, + Max: 1) (see below for nested + schema)' items: properties: key: - description: Mark field - as Primary Key. + description: (Boolean) type: boolean name: - description: Field name. + description: (String) type: string path: - description: '- A path - where resulting tables - are stored.' + description: (String) type: string required: - description: Mark field - as required. + description: (Boolean) type: boolean type: - description: 'Field - type, one of: INT64, - INT32, INT16, INT8, - UINT64, UINT32, UINT16, - UINT8, DOUBLE, BOOLEAN, - STRING, UTF8, ANY, - DATETIME.' + description: (String) type: string type: object type: array type: object type: array jsonFields: - description: Description of the - data schema as JSON specification. + description: (String) type: string type: object type: array nullKeysAllowed: - description: Allow null keys. If false - - null keys will be putted to unparsed - data + description: (Boolean) type: boolean unescapeStringValues: - description: Allow unescape string values. + description: (Boolean) type: boolean type: object type: array type: object type: array securityGroups: - description: '- List of security groups that the - transfer associated with this endpoint should use.' + description: (List of String) items: type: string type: array serviceAccountId: - description: '- Service account ID for interaction - with database.' + description: (String) type: string stream: - description: '- Stream.' + description: (String) type: string subnetId: - description: '- Identifier of the Yandex Cloud VPC - subnetwork to user for accessing the database. If - omitted, the server has to be accessible via Internet.' + description: (String) type: string supportedCodecs: - description: '- List of supported compression codec.' + description: (List of String) items: type: string type: array type: object type: array ydsTarget: - description: Settings specific to the YDS target endpoint. + description: '(Block List, Max: 1) (see below for nested + schema)' items: properties: database: - description: '- Database.' + description: (String) type: string endpoint: - description: '- YDS Endpoint.' + description: (String) type: string saveTxOrder: - description: '- Save transaction order' + description: (Boolean) type: boolean securityGroups: - description: '- List of security groups that the - transfer associated with this endpoint should use.' + description: (List of String) items: type: string type: array serializer: - description: '- Data serialization format.' + description: '(Block List, Max: 1) (see below for + nested schema)' items: properties: serializerAuto: - description: Empty block. Select data serialization - format automatically. + description: '(Block List, Max: 1) (see below + for nested schema)' items: type: object type: array serializerDebezium: - description: Serialize data in json format. - The structure is documented below. + description: '(Block List, Max: 1) (see below + for nested schema)' items: properties: serializerParameters: - description: A list of debezium parameters - set by the structure of the key and - value string fields. + description: (Block List) (see below for + nested schema) items: properties: key: - description: Mark field as Primary - Key. + description: (Boolean) type: string value: + description: (String) type: string type: object type: array type: object type: array serializerJson: - description: Empty block. Serialize data in - json format. + description: '(Block List, Max: 1) (see below + for nested schema)' items: type: object type: array type: object type: array serviceAccountId: - description: '- Service account ID for interaction - with database.' + description: (String) type: string stream: - description: '- Stream.' + description: (String) type: string subnetId: - description: '- Identifier of the Yandex Cloud VPC - subnetwork to user for accessing the database. If - omitted, the server has to be accessible via Internet.' + description: (String) type: string type: object type: array diff --git a/package/crds/datatransfer.yandex-cloud.upjet.crossplane.io_transfers.yaml b/package/crds/datatransfer.yandex-cloud.upjet.crossplane.io_transfers.yaml index ac9f0f7..6a61d22 100644 --- a/package/crds/datatransfer.yandex-cloud.upjet.crossplane.io_transfers.yaml +++ b/package/crds/datatransfer.yandex-cloud.upjet.crossplane.io_transfers.yaml @@ -34,8 +34,7 @@ spec: name: v1alpha1 schema: openAPIV3Schema: - description: Transfer is the Schema for the Transfers API. Manages a Data - Transfer transfer within Yandex.Cloud. + description: Transfer is the Schema for the Transfers API. properties: apiVersion: description: |- @@ -74,11 +73,10 @@ spec: forProvider: properties: description: - description: Arbitrary description text for the transfer. + description: (String) type: string folderId: - description: ID of the folder to create the transfer in. If it - is not provided, the default provider folder is used. + description: (String) type: string folderIdRef: description: Reference to a Folder in resourcemanager to populate @@ -159,39 +157,37 @@ spec: labels: additionalProperties: type: string - description: A set of key/value label pairs to assign to the Data - Transfer transfer. + description: (Map of String) type: object x-kubernetes-map-type: granular name: - description: Name of the transfer. + description: (String) type: string onCreateActivateMode: - description: |- - Activation action on create a new incremental transfer. - It is not part of the transfer parameter and is used only on create. - One of "sync_activate", "async_activate", "dont_activate". The default is "sync_activate". + description: (String) type: string runtime: - description: Runtime parameters for the transfer. + description: '(Block List, Max: 1) (see below for nested schema)' items: properties: ycRuntime: - description: YC Runtime parameters for the transfer. + description: '(Block List, Max: 1) (see below for nested + schema)' items: properties: jobCount: - description: Number of workers in parallel replication. + description: (Number) type: number uploadShardParams: - description: Parallel snapshot parameters. + description: '(Block List, Max: 1) (see below for + nested schema)' items: properties: jobCount: - description: Number of workers. + description: (Number) type: number processCount: - description: Number of threads. + description: (Number) type: number type: object type: array @@ -200,7 +196,7 @@ spec: type: object type: array sourceId: - description: ID of the source endpoint for the transfer. + description: (String) type: string sourceIdRef: description: Reference to a Endpoint to populate sourceId. @@ -277,7 +273,7 @@ spec: type: object type: object targetId: - description: ID of the target endpoint for the transfer. + description: (String) type: string targetIdRef: description: Reference to a Endpoint to populate targetId. @@ -354,51 +350,47 @@ spec: type: object type: object transformation: - description: Transformation for the transfer. + description: '(Block List, Max: 1) (see below for nested schema)' items: properties: transformers: - description: A list of transformers. You can specify exactly - 1 transformer in each element of list. + description: (Block List) (see below for nested schema) items: properties: convertToString: - description: Convert column values to strings. + description: '(Block List, Max: 1) (see below for + nested schema)' items: properties: columns: - description: List of strings that specify the - name of the column for data masking (a regular - expression). + description: '(Block List, Max: 1) (see below + for nested schema)' items: properties: excludeColumns: - description: List of columns that will - be excluded to transfer. + description: (List of String) items: type: string type: array includeColumns: - description: List of columns that will - be included to transfer. + description: (List of String) items: type: string type: array type: object type: array tables: - description: Table filter. + description: '(Block List, Max: 1) (see below + for nested schema)' items: properties: excludeTables: - description: List of tables that will - be excluded to transfer. + description: (List of String) items: type: string type: array includeTables: - description: List of tables that will - be included to transfer. + description: (List of String) items: type: string type: array @@ -407,42 +399,39 @@ spec: type: object type: array filterColumns: - description: Set up a list of table columns to transfer. + description: '(Block List, Max: 1) (see below for + nested schema)' items: properties: columns: - description: List of strings that specify the - name of the column for data masking (a regular - expression). + description: '(Block List, Max: 1) (see below + for nested schema)' items: properties: excludeColumns: - description: List of columns that will - be excluded to transfer. + description: (List of String) items: type: string type: array includeColumns: - description: List of columns that will - be included to transfer. + description: (List of String) items: type: string type: array type: object type: array tables: - description: Table filter. + description: '(Block List, Max: 1) (see below + for nested schema)' items: properties: excludeTables: - description: List of tables that will - be excluded to transfer. + description: (List of String) items: type: string type: array includeTables: - description: List of tables that will - be included to transfer. + description: (List of String) items: type: string type: array @@ -451,32 +440,25 @@ spec: type: object type: array filterRows: - description: This filter only applies to transfers - with queues (Apache Kafka®) as a data source. When - running a transfer, only the strings meeting the - specified criteria remain in a changefeed. + description: '(Block List, Max: 1) (see below for + nested schema)' items: properties: filter: - description: 'Filtering criterion. This can - be comparison operators for numeric, string, - and Boolean values, comparison to NULL, and - checking whether a substring is part of a - string. Details here: https://cloud.yandex.com/en/docs/data-transfer/concepts/data-transformation#append-only-sources' + description: (String) type: string tables: - description: Table filter. + description: '(Block List, Max: 1) (see below + for nested schema)' items: properties: excludeTables: - description: List of tables that will - be excluded to transfer. + description: (List of String) items: type: string type: array includeTables: - description: List of tables that will - be included to transfer. + description: (List of String) items: type: string type: array @@ -485,48 +467,45 @@ spec: type: object type: array maskField: - description: Mask field transformer allows you to - hash data. + description: '(Block List, Max: 1) (see below for + nested schema)' items: properties: columns: - description: List of strings that specify the - name of the column for data masking (a regular - expression). + description: '(Block List, Max: 1) (see below + for nested schema)' items: type: string type: array function: - description: Mask function. + description: '(Block List, Max: 1) (see below + for nested schema)' items: properties: maskFunctionHash: - description: Hash mask function. + description: '(Block List, Max: 1) (see + below for nested schema)' items: properties: userDefinedSalt: - description: This string will be - used in the HMAC(sha256, salt) - function applied to the column - data. + description: (String) type: string type: object type: array type: object type: array tables: - description: Table filter. + description: '(Block List, Max: 1) (see below + for nested schema)' items: properties: excludeTables: - description: List of tables that will - be excluded to transfer. + description: (List of String) items: type: string type: array includeTables: - description: List of tables that will - be included to transfer. + description: (List of String) items: type: string type: array @@ -535,39 +514,38 @@ spec: type: object type: array renameTables: - description: Set rules for renaming tables by specifying - the current names of the tables in the source and - new names for these tables in the target. + description: '(Block List, Max: 1) (see below for + nested schema)' items: properties: renameTables: - description: Set rules for renaming tables by - specifying the current names of the tables - in the source and new names for these tables - in the target. + description: '(Block List, Max: 1) (see below + for nested schema)' items: properties: newName: - description: Specify the new names for - this table in the target. + description: '(Block List, Max: 1) (see + below for nested schema)' items: properties: name: - description: Name of the transfer. + description: (String) type: string nameSpace: + description: (String) type: string type: object type: array originalName: - description: Specify the current names - of the table in the source. + description: '(Block List, Max: 1) (see + below for nested schema)' items: properties: name: - description: Name of the transfer. + description: (String) type: string nameSpace: + description: (String) type: string type: object type: array @@ -576,28 +554,27 @@ spec: type: object type: array replacePrimaryKey: - description: Override primary keys. + description: '(Block List, Max: 1) (see below for + nested schema)' items: properties: keys: - description: List of columns to be used as primary - keys. + description: (List of String) items: type: string type: array tables: - description: Table filter. + description: '(Block List, Max: 1) (see below + for nested schema)' items: properties: excludeTables: - description: List of tables that will - be excluded to transfer. + description: (List of String) items: type: string type: array includeTables: - description: List of tables that will - be included to transfer. + description: (List of String) items: type: string type: array @@ -606,47 +583,42 @@ spec: type: object type: array sharderTransformer: - description: Set the number of shards for particular - tables and a list of columns whose values will be - used for calculating a hash to determine a shard. + description: '(Block List, Max: 1) (see below for + nested schema)' items: properties: columns: - description: List of strings that specify the - name of the column for data masking (a regular - expression). + description: '(Block List, Max: 1) (see below + for nested schema)' items: properties: excludeColumns: - description: List of columns that will - be excluded to transfer. + description: (List of String) items: type: string type: array includeColumns: - description: List of columns that will - be included to transfer. + description: (List of String) items: type: string type: array type: object type: array shardsCount: - description: Number of shards. + description: (Number) type: number tables: - description: Table filter. + description: '(Block List, Max: 1) (see below + for nested schema)' items: properties: excludeTables: - description: List of tables that will - be excluded to transfer. + description: (List of String) items: type: string type: array includeTables: - description: List of tables that will - be included to transfer. + description: (List of String) items: type: string type: array @@ -655,35 +627,31 @@ spec: type: object type: array tableSplitterTransformer: - description: Splits the X table into multiple tables - (X_1, X_2, ..., X_n) based on data. + description: '(Block List, Max: 1) (see below for + nested schema)' items: properties: columns: - description: List of strings that specify the - name of the column for data masking (a regular - expression). + description: '(Block List, Max: 1) (see below + for nested schema)' items: type: string type: array splitter: - description: Specify the split string to be - used for merging components in a new table - name. + description: (String) type: string tables: - description: Table filter. + description: '(Block List, Max: 1) (see below + for nested schema)' items: properties: excludeTables: - description: List of tables that will - be excluded to transfer. + description: (List of String) items: type: string type: array includeTables: - description: List of tables that will - be included to transfer. + description: (List of String) items: type: string type: array @@ -696,8 +664,7 @@ spec: type: object type: array type: - description: Type of the transfer. One of "SNAPSHOT_ONLY", "INCREMENT_ONLY", - "SNAPSHOT_AND_INCREMENT". + description: (String) type: string type: object initProvider: @@ -714,11 +681,10 @@ spec: autoscaler. properties: description: - description: Arbitrary description text for the transfer. + description: (String) type: string folderId: - description: ID of the folder to create the transfer in. If it - is not provided, the default provider folder is used. + description: (String) type: string folderIdRef: description: Reference to a Folder in resourcemanager to populate @@ -799,39 +765,37 @@ spec: labels: additionalProperties: type: string - description: A set of key/value label pairs to assign to the Data - Transfer transfer. + description: (Map of String) type: object x-kubernetes-map-type: granular name: - description: Name of the transfer. + description: (String) type: string onCreateActivateMode: - description: |- - Activation action on create a new incremental transfer. - It is not part of the transfer parameter and is used only on create. - One of "sync_activate", "async_activate", "dont_activate". The default is "sync_activate". + description: (String) type: string runtime: - description: Runtime parameters for the transfer. + description: '(Block List, Max: 1) (see below for nested schema)' items: properties: ycRuntime: - description: YC Runtime parameters for the transfer. + description: '(Block List, Max: 1) (see below for nested + schema)' items: properties: jobCount: - description: Number of workers in parallel replication. + description: (Number) type: number uploadShardParams: - description: Parallel snapshot parameters. + description: '(Block List, Max: 1) (see below for + nested schema)' items: properties: jobCount: - description: Number of workers. + description: (Number) type: number processCount: - description: Number of threads. + description: (Number) type: number type: object type: array @@ -840,7 +804,7 @@ spec: type: object type: array sourceId: - description: ID of the source endpoint for the transfer. + description: (String) type: string sourceIdRef: description: Reference to a Endpoint to populate sourceId. @@ -917,7 +881,7 @@ spec: type: object type: object targetId: - description: ID of the target endpoint for the transfer. + description: (String) type: string targetIdRef: description: Reference to a Endpoint to populate targetId. @@ -994,51 +958,47 @@ spec: type: object type: object transformation: - description: Transformation for the transfer. + description: '(Block List, Max: 1) (see below for nested schema)' items: properties: transformers: - description: A list of transformers. You can specify exactly - 1 transformer in each element of list. + description: (Block List) (see below for nested schema) items: properties: convertToString: - description: Convert column values to strings. + description: '(Block List, Max: 1) (see below for + nested schema)' items: properties: columns: - description: List of strings that specify the - name of the column for data masking (a regular - expression). + description: '(Block List, Max: 1) (see below + for nested schema)' items: properties: excludeColumns: - description: List of columns that will - be excluded to transfer. + description: (List of String) items: type: string type: array includeColumns: - description: List of columns that will - be included to transfer. + description: (List of String) items: type: string type: array type: object type: array tables: - description: Table filter. + description: '(Block List, Max: 1) (see below + for nested schema)' items: properties: excludeTables: - description: List of tables that will - be excluded to transfer. + description: (List of String) items: type: string type: array includeTables: - description: List of tables that will - be included to transfer. + description: (List of String) items: type: string type: array @@ -1047,42 +1007,39 @@ spec: type: object type: array filterColumns: - description: Set up a list of table columns to transfer. + description: '(Block List, Max: 1) (see below for + nested schema)' items: properties: columns: - description: List of strings that specify the - name of the column for data masking (a regular - expression). + description: '(Block List, Max: 1) (see below + for nested schema)' items: properties: excludeColumns: - description: List of columns that will - be excluded to transfer. + description: (List of String) items: type: string type: array includeColumns: - description: List of columns that will - be included to transfer. + description: (List of String) items: type: string type: array type: object type: array tables: - description: Table filter. + description: '(Block List, Max: 1) (see below + for nested schema)' items: properties: excludeTables: - description: List of tables that will - be excluded to transfer. + description: (List of String) items: type: string type: array includeTables: - description: List of tables that will - be included to transfer. + description: (List of String) items: type: string type: array @@ -1091,32 +1048,25 @@ spec: type: object type: array filterRows: - description: This filter only applies to transfers - with queues (Apache Kafka®) as a data source. When - running a transfer, only the strings meeting the - specified criteria remain in a changefeed. + description: '(Block List, Max: 1) (see below for + nested schema)' items: properties: filter: - description: 'Filtering criterion. This can - be comparison operators for numeric, string, - and Boolean values, comparison to NULL, and - checking whether a substring is part of a - string. Details here: https://cloud.yandex.com/en/docs/data-transfer/concepts/data-transformation#append-only-sources' + description: (String) type: string tables: - description: Table filter. + description: '(Block List, Max: 1) (see below + for nested schema)' items: properties: excludeTables: - description: List of tables that will - be excluded to transfer. + description: (List of String) items: type: string type: array includeTables: - description: List of tables that will - be included to transfer. + description: (List of String) items: type: string type: array @@ -1125,48 +1075,45 @@ spec: type: object type: array maskField: - description: Mask field transformer allows you to - hash data. + description: '(Block List, Max: 1) (see below for + nested schema)' items: properties: columns: - description: List of strings that specify the - name of the column for data masking (a regular - expression). + description: '(Block List, Max: 1) (see below + for nested schema)' items: type: string type: array function: - description: Mask function. + description: '(Block List, Max: 1) (see below + for nested schema)' items: properties: maskFunctionHash: - description: Hash mask function. + description: '(Block List, Max: 1) (see + below for nested schema)' items: properties: userDefinedSalt: - description: This string will be - used in the HMAC(sha256, salt) - function applied to the column - data. + description: (String) type: string type: object type: array type: object type: array tables: - description: Table filter. + description: '(Block List, Max: 1) (see below + for nested schema)' items: properties: excludeTables: - description: List of tables that will - be excluded to transfer. + description: (List of String) items: type: string type: array includeTables: - description: List of tables that will - be included to transfer. + description: (List of String) items: type: string type: array @@ -1175,39 +1122,38 @@ spec: type: object type: array renameTables: - description: Set rules for renaming tables by specifying - the current names of the tables in the source and - new names for these tables in the target. + description: '(Block List, Max: 1) (see below for + nested schema)' items: properties: renameTables: - description: Set rules for renaming tables by - specifying the current names of the tables - in the source and new names for these tables - in the target. + description: '(Block List, Max: 1) (see below + for nested schema)' items: properties: newName: - description: Specify the new names for - this table in the target. + description: '(Block List, Max: 1) (see + below for nested schema)' items: properties: name: - description: Name of the transfer. + description: (String) type: string nameSpace: + description: (String) type: string type: object type: array originalName: - description: Specify the current names - of the table in the source. + description: '(Block List, Max: 1) (see + below for nested schema)' items: properties: name: - description: Name of the transfer. + description: (String) type: string nameSpace: + description: (String) type: string type: object type: array @@ -1216,28 +1162,27 @@ spec: type: object type: array replacePrimaryKey: - description: Override primary keys. + description: '(Block List, Max: 1) (see below for + nested schema)' items: properties: keys: - description: List of columns to be used as primary - keys. + description: (List of String) items: type: string type: array tables: - description: Table filter. + description: '(Block List, Max: 1) (see below + for nested schema)' items: properties: excludeTables: - description: List of tables that will - be excluded to transfer. + description: (List of String) items: type: string type: array includeTables: - description: List of tables that will - be included to transfer. + description: (List of String) items: type: string type: array @@ -1246,47 +1191,42 @@ spec: type: object type: array sharderTransformer: - description: Set the number of shards for particular - tables and a list of columns whose values will be - used for calculating a hash to determine a shard. + description: '(Block List, Max: 1) (see below for + nested schema)' items: properties: columns: - description: List of strings that specify the - name of the column for data masking (a regular - expression). + description: '(Block List, Max: 1) (see below + for nested schema)' items: properties: excludeColumns: - description: List of columns that will - be excluded to transfer. + description: (List of String) items: type: string type: array includeColumns: - description: List of columns that will - be included to transfer. + description: (List of String) items: type: string type: array type: object type: array shardsCount: - description: Number of shards. + description: (Number) type: number tables: - description: Table filter. + description: '(Block List, Max: 1) (see below + for nested schema)' items: properties: excludeTables: - description: List of tables that will - be excluded to transfer. + description: (List of String) items: type: string type: array includeTables: - description: List of tables that will - be included to transfer. + description: (List of String) items: type: string type: array @@ -1295,35 +1235,31 @@ spec: type: object type: array tableSplitterTransformer: - description: Splits the X table into multiple tables - (X_1, X_2, ..., X_n) based on data. + description: '(Block List, Max: 1) (see below for + nested schema)' items: properties: columns: - description: List of strings that specify the - name of the column for data masking (a regular - expression). + description: '(Block List, Max: 1) (see below + for nested schema)' items: type: string type: array splitter: - description: Specify the split string to be - used for merging components in a new table - name. + description: (String) type: string tables: - description: Table filter. + description: '(Block List, Max: 1) (see below + for nested schema)' items: properties: excludeTables: - description: List of tables that will - be excluded to transfer. + description: (List of String) items: type: string type: array includeTables: - description: List of tables that will - be included to transfer. + description: (List of String) items: type: string type: array @@ -1336,8 +1272,7 @@ spec: type: object type: array type: - description: Type of the transfer. One of "SNAPSHOT_ONLY", "INCREMENT_ONLY", - "SNAPSHOT_AND_INCREMENT". + description: (String) type: string type: object managementPolicies: @@ -1513,51 +1448,48 @@ spec: atProvider: properties: description: - description: Arbitrary description text for the transfer. + description: (String) type: string folderId: - description: ID of the folder to create the transfer in. If it - is not provided, the default provider folder is used. + description: (String) type: string id: - description: (Computed) Identifier of a new Data Transfer transfer. + description: (String) The ID of this resource. type: string labels: additionalProperties: type: string - description: A set of key/value label pairs to assign to the Data - Transfer transfer. + description: (Map of String) type: object x-kubernetes-map-type: granular name: - description: Name of the transfer. + description: (String) type: string onCreateActivateMode: - description: |- - Activation action on create a new incremental transfer. - It is not part of the transfer parameter and is used only on create. - One of "sync_activate", "async_activate", "dont_activate". The default is "sync_activate". + description: (String) type: string runtime: - description: Runtime parameters for the transfer. + description: '(Block List, Max: 1) (see below for nested schema)' items: properties: ycRuntime: - description: YC Runtime parameters for the transfer. + description: '(Block List, Max: 1) (see below for nested + schema)' items: properties: jobCount: - description: Number of workers in parallel replication. + description: (Number) type: number uploadShardParams: - description: Parallel snapshot parameters. + description: '(Block List, Max: 1) (see below for + nested schema)' items: properties: jobCount: - description: Number of workers. + description: (Number) type: number processCount: - description: Number of threads. + description: (Number) type: number type: object type: array @@ -1566,57 +1498,53 @@ spec: type: object type: array sourceId: - description: ID of the source endpoint for the transfer. + description: (String) type: string targetId: - description: ID of the target endpoint for the transfer. + description: (String) type: string transformation: - description: Transformation for the transfer. + description: '(Block List, Max: 1) (see below for nested schema)' items: properties: transformers: - description: A list of transformers. You can specify exactly - 1 transformer in each element of list. + description: (Block List) (see below for nested schema) items: properties: convertToString: - description: Convert column values to strings. + description: '(Block List, Max: 1) (see below for + nested schema)' items: properties: columns: - description: List of strings that specify the - name of the column for data masking (a regular - expression). + description: '(Block List, Max: 1) (see below + for nested schema)' items: properties: excludeColumns: - description: List of columns that will - be excluded to transfer. + description: (List of String) items: type: string type: array includeColumns: - description: List of columns that will - be included to transfer. + description: (List of String) items: type: string type: array type: object type: array tables: - description: Table filter. + description: '(Block List, Max: 1) (see below + for nested schema)' items: properties: excludeTables: - description: List of tables that will - be excluded to transfer. + description: (List of String) items: type: string type: array includeTables: - description: List of tables that will - be included to transfer. + description: (List of String) items: type: string type: array @@ -1625,42 +1553,39 @@ spec: type: object type: array filterColumns: - description: Set up a list of table columns to transfer. + description: '(Block List, Max: 1) (see below for + nested schema)' items: properties: columns: - description: List of strings that specify the - name of the column for data masking (a regular - expression). + description: '(Block List, Max: 1) (see below + for nested schema)' items: properties: excludeColumns: - description: List of columns that will - be excluded to transfer. + description: (List of String) items: type: string type: array includeColumns: - description: List of columns that will - be included to transfer. + description: (List of String) items: type: string type: array type: object type: array tables: - description: Table filter. + description: '(Block List, Max: 1) (see below + for nested schema)' items: properties: excludeTables: - description: List of tables that will - be excluded to transfer. + description: (List of String) items: type: string type: array includeTables: - description: List of tables that will - be included to transfer. + description: (List of String) items: type: string type: array @@ -1669,32 +1594,25 @@ spec: type: object type: array filterRows: - description: This filter only applies to transfers - with queues (Apache Kafka®) as a data source. When - running a transfer, only the strings meeting the - specified criteria remain in a changefeed. + description: '(Block List, Max: 1) (see below for + nested schema)' items: properties: filter: - description: 'Filtering criterion. This can - be comparison operators for numeric, string, - and Boolean values, comparison to NULL, and - checking whether a substring is part of a - string. Details here: https://cloud.yandex.com/en/docs/data-transfer/concepts/data-transformation#append-only-sources' + description: (String) type: string tables: - description: Table filter. + description: '(Block List, Max: 1) (see below + for nested schema)' items: properties: excludeTables: - description: List of tables that will - be excluded to transfer. + description: (List of String) items: type: string type: array includeTables: - description: List of tables that will - be included to transfer. + description: (List of String) items: type: string type: array @@ -1703,48 +1621,45 @@ spec: type: object type: array maskField: - description: Mask field transformer allows you to - hash data. + description: '(Block List, Max: 1) (see below for + nested schema)' items: properties: columns: - description: List of strings that specify the - name of the column for data masking (a regular - expression). + description: '(Block List, Max: 1) (see below + for nested schema)' items: type: string type: array function: - description: Mask function. + description: '(Block List, Max: 1) (see below + for nested schema)' items: properties: maskFunctionHash: - description: Hash mask function. + description: '(Block List, Max: 1) (see + below for nested schema)' items: properties: userDefinedSalt: - description: This string will be - used in the HMAC(sha256, salt) - function applied to the column - data. + description: (String) type: string type: object type: array type: object type: array tables: - description: Table filter. + description: '(Block List, Max: 1) (see below + for nested schema)' items: properties: excludeTables: - description: List of tables that will - be excluded to transfer. + description: (List of String) items: type: string type: array includeTables: - description: List of tables that will - be included to transfer. + description: (List of String) items: type: string type: array @@ -1753,39 +1668,38 @@ spec: type: object type: array renameTables: - description: Set rules for renaming tables by specifying - the current names of the tables in the source and - new names for these tables in the target. + description: '(Block List, Max: 1) (see below for + nested schema)' items: properties: renameTables: - description: Set rules for renaming tables by - specifying the current names of the tables - in the source and new names for these tables - in the target. + description: '(Block List, Max: 1) (see below + for nested schema)' items: properties: newName: - description: Specify the new names for - this table in the target. + description: '(Block List, Max: 1) (see + below for nested schema)' items: properties: name: - description: Name of the transfer. + description: (String) type: string nameSpace: + description: (String) type: string type: object type: array originalName: - description: Specify the current names - of the table in the source. + description: '(Block List, Max: 1) (see + below for nested schema)' items: properties: name: - description: Name of the transfer. + description: (String) type: string nameSpace: + description: (String) type: string type: object type: array @@ -1794,28 +1708,27 @@ spec: type: object type: array replacePrimaryKey: - description: Override primary keys. + description: '(Block List, Max: 1) (see below for + nested schema)' items: properties: keys: - description: List of columns to be used as primary - keys. + description: (List of String) items: type: string type: array tables: - description: Table filter. + description: '(Block List, Max: 1) (see below + for nested schema)' items: properties: excludeTables: - description: List of tables that will - be excluded to transfer. + description: (List of String) items: type: string type: array includeTables: - description: List of tables that will - be included to transfer. + description: (List of String) items: type: string type: array @@ -1824,47 +1737,42 @@ spec: type: object type: array sharderTransformer: - description: Set the number of shards for particular - tables and a list of columns whose values will be - used for calculating a hash to determine a shard. + description: '(Block List, Max: 1) (see below for + nested schema)' items: properties: columns: - description: List of strings that specify the - name of the column for data masking (a regular - expression). + description: '(Block List, Max: 1) (see below + for nested schema)' items: properties: excludeColumns: - description: List of columns that will - be excluded to transfer. + description: (List of String) items: type: string type: array includeColumns: - description: List of columns that will - be included to transfer. + description: (List of String) items: type: string type: array type: object type: array shardsCount: - description: Number of shards. + description: (Number) type: number tables: - description: Table filter. + description: '(Block List, Max: 1) (see below + for nested schema)' items: properties: excludeTables: - description: List of tables that will - be excluded to transfer. + description: (List of String) items: type: string type: array includeTables: - description: List of tables that will - be included to transfer. + description: (List of String) items: type: string type: array @@ -1873,35 +1781,31 @@ spec: type: object type: array tableSplitterTransformer: - description: Splits the X table into multiple tables - (X_1, X_2, ..., X_n) based on data. + description: '(Block List, Max: 1) (see below for + nested schema)' items: properties: columns: - description: List of strings that specify the - name of the column for data masking (a regular - expression). + description: '(Block List, Max: 1) (see below + for nested schema)' items: type: string type: array splitter: - description: Specify the split string to be - used for merging components in a new table - name. + description: (String) type: string tables: - description: Table filter. + description: '(Block List, Max: 1) (see below + for nested schema)' items: properties: excludeTables: - description: List of tables that will - be excluded to transfer. + description: (List of String) items: type: string type: array includeTables: - description: List of tables that will - be included to transfer. + description: (List of String) items: type: string type: array @@ -1914,12 +1818,10 @@ spec: type: object type: array type: - description: Type of the transfer. One of "SNAPSHOT_ONLY", "INCREMENT_ONLY", - "SNAPSHOT_AND_INCREMENT". + description: (String) type: string warning: - description: (Computed) Error description if transfer has any - errors. + description: (String) type: string type: object conditions: diff --git a/package/crds/dns.yandex-cloud.upjet.crossplane.io_zoneiambindings.yaml b/package/crds/dns.yandex-cloud.upjet.crossplane.io_zoneiambindings.yaml index ff28c53..6c2fa68 100644 --- a/package/crds/dns.yandex-cloud.upjet.crossplane.io_zoneiambindings.yaml +++ b/package/crds/dns.yandex-cloud.upjet.crossplane.io_zoneiambindings.yaml @@ -151,9 +151,8 @@ spec: type: object type: object members: - description: |- - Identities that will be granted the privilege in role. - Each entry can have one of the following values: + description: 'Identities that will be granted the privilege in + role. Each entry can have one of the following values:' items: type: string type: array @@ -255,9 +254,8 @@ spec: type: object type: object members: - description: |- - Identities that will be granted the privilege in role. - Each entry can have one of the following values: + description: 'Identities that will be granted the privilege in + role. Each entry can have one of the following values:' items: type: string type: array @@ -455,9 +453,8 @@ spec: id: type: string members: - description: |- - Identities that will be granted the privilege in role. - Each entry can have one of the following values: + description: 'Identities that will be granted the privilege in + role. Each entry can have one of the following values:' items: type: string type: array diff --git a/package/crds/dns.yandex-cloud.upjet.crossplane.io_zones.yaml b/package/crds/dns.yandex-cloud.upjet.crossplane.io_zones.yaml index bfe0bf1..9d01bbf 100644 --- a/package/crds/dns.yandex-cloud.upjet.crossplane.io_zones.yaml +++ b/package/crds/dns.yandex-cloud.upjet.crossplane.io_zones.yaml @@ -74,14 +74,19 @@ spec: forProvider: properties: deletionProtection: - description: Flag that protects the dns zone from accidental deletion. + description: |- + (Boolean) Flag that protects the dns zone from accidental deletion. + Flag that protects the dns zone from accidental deletion. type: boolean description: - description: Description of the DNS zone. + description: |- + (String) Description of the DNS zone. + Description of the DNS zone. type: string folderId: - description: ID of the folder to create a zone in. If it is not - provided, the default provider folder is used. + description: |- + (String) ID of the folder to create a zone in. If it is not provided, the default provider folder is used. + ID of the folder to create a zone in. If it is not provided, the default provider folder is used. type: string folderIdRef: description: Reference to a Folder in resourcemanager to populate @@ -162,17 +167,20 @@ spec: labels: additionalProperties: type: string - description: A set of key/value label pairs to assign to the DNS - zone. + description: |- + (Map of String) A set of key/value label pairs to assign to the DNS zone. + A set of key/value label pairs to assign to the DNS zone. type: object x-kubernetes-map-type: granular name: - description: User assigned name of a specific resource. Must be - unique within the folder. + description: |- + (String) User assigned name of a specific resource. Must be unique within the folder. + User assigned name of a specific resource. Must be unique within the folder. type: string privateNetworks: - description: For privately visible zones, the set of Virtual Private - Cloud resources that the zone is visible from. + description: |- + (Set of String) For privately visible zones, the set of Virtual Private Cloud resources that the zone is visible from. + For privately visible zones, the set of Virtual Private Cloud resources that the zone is visible from. items: type: string type: array @@ -256,13 +264,14 @@ spec: type: object type: object public: - description: 'The zone''s visibility: public zones are exposed - to the Internet, while private zones are visible only to Virtual - Private Cloud resources.' + description: |- + (Boolean) The zone's visibility: public zones are exposed to the Internet, while private zones are visible only to Virtual Private Cloud resources. + The zone's visibility: public zones are exposed to the Internet, while private zones are visible only to Virtual Private Cloud resources. type: boolean zone: - description: The DNS name of this zone, e.g. "example.com.". Must - ends with dot. + description: |- + (String) The DNS name of this zone, e.g. "example.com.". Must ends with dot. + The DNS name of this zone, e.g. "example.com.". Must ends with dot. type: string type: object initProvider: @@ -279,14 +288,19 @@ spec: autoscaler. properties: deletionProtection: - description: Flag that protects the dns zone from accidental deletion. + description: |- + (Boolean) Flag that protects the dns zone from accidental deletion. + Flag that protects the dns zone from accidental deletion. type: boolean description: - description: Description of the DNS zone. + description: |- + (String) Description of the DNS zone. + Description of the DNS zone. type: string folderId: - description: ID of the folder to create a zone in. If it is not - provided, the default provider folder is used. + description: |- + (String) ID of the folder to create a zone in. If it is not provided, the default provider folder is used. + ID of the folder to create a zone in. If it is not provided, the default provider folder is used. type: string folderIdRef: description: Reference to a Folder in resourcemanager to populate @@ -367,17 +381,20 @@ spec: labels: additionalProperties: type: string - description: A set of key/value label pairs to assign to the DNS - zone. + description: |- + (Map of String) A set of key/value label pairs to assign to the DNS zone. + A set of key/value label pairs to assign to the DNS zone. type: object x-kubernetes-map-type: granular name: - description: User assigned name of a specific resource. Must be - unique within the folder. + description: |- + (String) User assigned name of a specific resource. Must be unique within the folder. + User assigned name of a specific resource. Must be unique within the folder. type: string privateNetworks: - description: For privately visible zones, the set of Virtual Private - Cloud resources that the zone is visible from. + description: |- + (Set of String) For privately visible zones, the set of Virtual Private Cloud resources that the zone is visible from. + For privately visible zones, the set of Virtual Private Cloud resources that the zone is visible from. items: type: string type: array @@ -461,13 +478,14 @@ spec: type: object type: object public: - description: 'The zone''s visibility: public zones are exposed - to the Internet, while private zones are visible only to Virtual - Private Cloud resources.' + description: |- + (Boolean) The zone's visibility: public zones are exposed to the Internet, while private zones are visible only to Virtual Private Cloud resources. + The zone's visibility: public zones are exposed to the Internet, while private zones are visible only to Virtual Private Cloud resources. type: boolean zone: - description: The DNS name of this zone, e.g. "example.com.". Must - ends with dot. + description: |- + (String) The DNS name of this zone, e.g. "example.com.". Must ends with dot. + The DNS name of this zone, e.g. "example.com.". Must ends with dot. type: string type: object managementPolicies: @@ -648,47 +666,58 @@ spec: atProvider: properties: createdAt: - description: (Computed) The DNS zone creation timestamp. + description: |- + (String) The DNS zone creation timestamp. + The DNS zone creation timestamp. type: string deletionProtection: - description: Flag that protects the dns zone from accidental deletion. + description: |- + (Boolean) Flag that protects the dns zone from accidental deletion. + Flag that protects the dns zone from accidental deletion. type: boolean description: - description: Description of the DNS zone. + description: |- + (String) Description of the DNS zone. + Description of the DNS zone. type: string folderId: - description: ID of the folder to create a zone in. If it is not - provided, the default provider folder is used. + description: |- + (String) ID of the folder to create a zone in. If it is not provided, the default provider folder is used. + ID of the folder to create a zone in. If it is not provided, the default provider folder is used. type: string id: - description: (Computed) ID of a new DNS zone. + description: (String) The ID of this resource. type: string labels: additionalProperties: type: string - description: A set of key/value label pairs to assign to the DNS - zone. + description: |- + (Map of String) A set of key/value label pairs to assign to the DNS zone. + A set of key/value label pairs to assign to the DNS zone. type: object x-kubernetes-map-type: granular name: - description: User assigned name of a specific resource. Must be - unique within the folder. + description: |- + (String) User assigned name of a specific resource. Must be unique within the folder. + User assigned name of a specific resource. Must be unique within the folder. type: string privateNetworks: - description: For privately visible zones, the set of Virtual Private - Cloud resources that the zone is visible from. + description: |- + (Set of String) For privately visible zones, the set of Virtual Private Cloud resources that the zone is visible from. + For privately visible zones, the set of Virtual Private Cloud resources that the zone is visible from. items: type: string type: array x-kubernetes-list-type: set public: - description: 'The zone''s visibility: public zones are exposed - to the Internet, while private zones are visible only to Virtual - Private Cloud resources.' + description: |- + (Boolean) The zone's visibility: public zones are exposed to the Internet, while private zones are visible only to Virtual Private Cloud resources. + The zone's visibility: public zones are exposed to the Internet, while private zones are visible only to Virtual Private Cloud resources. type: boolean zone: - description: The DNS name of this zone, e.g. "example.com.". Must - ends with dot. + description: |- + (String) The DNS name of this zone, e.g. "example.com.". Must ends with dot. + The DNS name of this zone, e.g. "example.com.". Must ends with dot. type: string type: object conditions: diff --git a/package/crds/function.yandex-cloud.upjet.crossplane.io_iambindings.yaml b/package/crds/function.yandex-cloud.upjet.crossplane.io_iambindings.yaml index 28a5c97..6bb5edd 100644 --- a/package/crds/function.yandex-cloud.upjet.crossplane.io_iambindings.yaml +++ b/package/crds/function.yandex-cloud.upjet.crossplane.io_iambindings.yaml @@ -77,9 +77,8 @@ spec: description: The Yandex Cloud Function ID to apply a binding to. type: string members: - description: |- - Identities that will be granted the privilege in role. - Each entry can have one of the following values: + description: 'Identities that will be granted the privilege in + role. Each entry can have one of the following values:' items: type: string type: array @@ -107,9 +106,8 @@ spec: description: The Yandex Cloud Function ID to apply a binding to. type: string members: - description: |- - Identities that will be granted the privilege in role. - Each entry can have one of the following values: + description: 'Identities that will be granted the privilege in + role. Each entry can have one of the following values:' items: type: string type: array @@ -311,9 +309,8 @@ spec: id: type: string members: - description: |- - Identities that will be granted the privilege in role. - Each entry can have one of the following values: + description: 'Identities that will be granted the privilege in + role. Each entry can have one of the following values:' items: type: string type: array diff --git a/package/crds/iam.yandex-cloud.upjet.crossplane.io_serviceaccountapikeys.yaml b/package/crds/iam.yandex-cloud.upjet.crossplane.io_serviceaccountapikeys.yaml index 4304b0f..da49d80 100644 --- a/package/crds/iam.yandex-cloud.upjet.crossplane.io_serviceaccountapikeys.yaml +++ b/package/crds/iam.yandex-cloud.upjet.crossplane.io_serviceaccountapikeys.yaml @@ -76,11 +76,35 @@ spec: description: description: The description of the key. type: string + expiresAt: + description: The key will be no longer valid after expiration + timestamp. + type: string + outputToLockbox: + description: option to create a Lockbox secret version from sensitive + outputs + items: + properties: + entryForSecretKey: + description: |- + Entry where to store the value of secret_key. + entry that will store the value of secret_key + type: string + secretId: + description: |- + ID of the Lockbox secret where to store the sensible values. + secret where to add the version with the sensitive values + type: string + type: object + type: array pgpKey: description: An optional PGP key to encrypt the resulting secret key material. May either be a base64-encoded public key or a keybase username in the form keybase:keybaseusername. type: string + scope: + description: The scope of the key. + type: string serviceAccountId: description: ID of the service account to an API key for. type: string @@ -175,11 +199,35 @@ spec: description: description: The description of the key. type: string + expiresAt: + description: The key will be no longer valid after expiration + timestamp. + type: string + outputToLockbox: + description: option to create a Lockbox secret version from sensitive + outputs + items: + properties: + entryForSecretKey: + description: |- + Entry where to store the value of secret_key. + entry that will store the value of secret_key + type: string + secretId: + description: |- + ID of the Lockbox secret where to store the sensible values. + secret where to add the version with the sensitive values + type: string + type: object + type: array pgpKey: description: An optional PGP key to encrypt the resulting secret key material. May either be a base64-encoded public key or a keybase username in the form keybase:keybaseusername. type: string + scope: + description: The scope of the key. + type: string serviceAccountId: description: ID of the service account to an API key for. type: string @@ -441,17 +489,46 @@ spec: description: The encrypted secret key, base64 encoded. This is only populated when pgp_key is supplied. type: string + expiresAt: + description: The key will be no longer valid after expiration + timestamp. + type: string id: type: string keyFingerprint: description: The fingerprint of the PGP key used to encrypt the secret key. This is only populated when pgp_key is supplied. type: string + outputToLockbox: + description: option to create a Lockbox secret version from sensitive + outputs + items: + properties: + entryForSecretKey: + description: |- + Entry where to store the value of secret_key. + entry that will store the value of secret_key + type: string + secretId: + description: |- + ID of the Lockbox secret where to store the sensible values. + secret where to add the version with the sensitive values + type: string + type: object + type: array + outputToLockboxVersionId: + description: |- + ID of the Lockbox secret version that contains the value of secret_key. This is only populated when output_to_lockbox is supplied. This version will be destroyed when the IAM key is destroyed, or when output_to_lockbox is removed. + version generated, that will contain the sensitive outputs + type: string pgpKey: description: An optional PGP key to encrypt the resulting secret key material. May either be a base64-encoded public key or a keybase username in the form keybase:keybaseusername. type: string + scope: + description: The scope of the key. + type: string serviceAccountId: description: ID of the service account to an API key for. type: string diff --git a/package/crds/iam.yandex-cloud.upjet.crossplane.io_serviceaccountiambindings.yaml b/package/crds/iam.yandex-cloud.upjet.crossplane.io_serviceaccountiambindings.yaml index 756bfec..b2290bc 100644 --- a/package/crds/iam.yandex-cloud.upjet.crossplane.io_serviceaccountiambindings.yaml +++ b/package/crds/iam.yandex-cloud.upjet.crossplane.io_serviceaccountiambindings.yaml @@ -76,17 +76,15 @@ spec: forProvider: properties: members: - description: |- - Identities that will be granted the privilege in role. - Each entry can have one of the following values: + description: 'Identities that will be granted the privilege in + role. Each entry can have one of the following values:' items: type: string type: array x-kubernetes-list-type: set role: - description: |- - The role that should be applied. Only one - yandex_iam_service_account_iam_binding can be used per role. + description: The role that should be applied. Only one yandex_iam_service_account_iam_binding + can be used per role. type: string serviceAccountId: description: The service account ID to apply a binding to. @@ -260,17 +258,15 @@ spec: autoscaler. properties: members: - description: |- - Identities that will be granted the privilege in role. - Each entry can have one of the following values: + description: 'Identities that will be granted the privilege in + role. Each entry can have one of the following values:' items: type: string type: array x-kubernetes-list-type: set role: - description: |- - The role that should be applied. Only one - yandex_iam_service_account_iam_binding can be used per role. + description: The role that should be applied. Only one yandex_iam_service_account_iam_binding + can be used per role. type: string serviceAccountId: description: The service account ID to apply a binding to. @@ -611,17 +607,15 @@ spec: id: type: string members: - description: |- - Identities that will be granted the privilege in role. - Each entry can have one of the following values: + description: 'Identities that will be granted the privilege in + role. Each entry can have one of the following values:' items: type: string type: array x-kubernetes-list-type: set role: - description: |- - The role that should be applied. Only one - yandex_iam_service_account_iam_binding can be used per role. + description: The role that should be applied. Only one yandex_iam_service_account_iam_binding + can be used per role. type: string serviceAccountId: description: The service account ID to apply a binding to. diff --git a/package/crds/iam.yandex-cloud.upjet.crossplane.io_serviceaccountiammembers.yaml b/package/crds/iam.yandex-cloud.upjet.crossplane.io_serviceaccountiammembers.yaml index 6dbbb4e..6850491 100644 --- a/package/crds/iam.yandex-cloud.upjet.crossplane.io_serviceaccountiammembers.yaml +++ b/package/crds/iam.yandex-cloud.upjet.crossplane.io_serviceaccountiammembers.yaml @@ -76,14 +76,12 @@ spec: forProvider: properties: member: - description: |- - Identity that will be granted the privilege in role. - Entry can have one of the following values: + description: 'Identity that will be granted the privilege in role. + Entry can have one of the following values:' type: string role: - description: |- - The role that should be applied. Only one - yandex_iam_service_account_iam_binding can be used per role. + description: The role that should be applied. Only one yandex_iam_service_account_iam_binding + can be used per role. type: string serviceAccountId: description: The service account ID to apply a policy to. @@ -253,14 +251,12 @@ spec: autoscaler. properties: member: - description: |- - Identity that will be granted the privilege in role. - Entry can have one of the following values: + description: 'Identity that will be granted the privilege in role. + Entry can have one of the following values:' type: string role: - description: |- - The role that should be applied. Only one - yandex_iam_service_account_iam_binding can be used per role. + description: The role that should be applied. Only one yandex_iam_service_account_iam_binding + can be used per role. type: string serviceAccountId: description: The service account ID to apply a policy to. @@ -597,14 +593,12 @@ spec: id: type: string member: - description: |- - Identity that will be granted the privilege in role. - Entry can have one of the following values: + description: 'Identity that will be granted the privilege in role. + Entry can have one of the following values:' type: string role: - description: |- - The role that should be applied. Only one - yandex_iam_service_account_iam_binding can be used per role. + description: The role that should be applied. Only one yandex_iam_service_account_iam_binding + can be used per role. type: string serviceAccountId: description: The service account ID to apply a policy to. diff --git a/package/crds/iam.yandex-cloud.upjet.crossplane.io_serviceaccountiampolicies.yaml b/package/crds/iam.yandex-cloud.upjet.crossplane.io_serviceaccountiampolicies.yaml index ef43647..d4ff240 100644 --- a/package/crds/iam.yandex-cloud.upjet.crossplane.io_serviceaccountiampolicies.yaml +++ b/package/crds/iam.yandex-cloud.upjet.crossplane.io_serviceaccountiampolicies.yaml @@ -75,9 +75,8 @@ spec: forProvider: properties: policyData: - description: |- - The policy data generated by - a yandex_iam_policy data source. + description: The policy data generated by a yandex_iam_policy + data source. type: string serviceAccountId: description: The service account ID to apply a policy to. @@ -171,9 +170,8 @@ spec: autoscaler. properties: policyData: - description: |- - The policy data generated by - a yandex_iam_policy data source. + description: The policy data generated by a yandex_iam_policy + data source. type: string serviceAccountId: description: The service account ID to apply a policy to. @@ -434,9 +432,8 @@ spec: id: type: string policyData: - description: |- - The policy data generated by - a yandex_iam_policy data source. + description: The policy data generated by a yandex_iam_policy + data source. type: string serviceAccountId: description: The service account ID to apply a policy to. diff --git a/package/crds/iam.yandex-cloud.upjet.crossplane.io_serviceaccountkeys.yaml b/package/crds/iam.yandex-cloud.upjet.crossplane.io_serviceaccountkeys.yaml index 236ff79..2ae76ff 100644 --- a/package/crds/iam.yandex-cloud.upjet.crossplane.io_serviceaccountkeys.yaml +++ b/package/crds/iam.yandex-cloud.upjet.crossplane.io_serviceaccountkeys.yaml @@ -81,10 +81,27 @@ spec: format. type: string keyAlgorithm: - description: |- - The algorithm used to generate the key. RSA_2048 is the default algorithm. - Valid values are listed in the API reference. + description: The algorithm used to generate the key. RSA_2048 + is the default algorithm. Valid values are listed in the API + reference. type: string + outputToLockbox: + description: option to create a Lockbox secret version from sensitive + outputs + items: + properties: + entryForPrivateKey: + description: |- + Entry where to store the value of private_key. + entry that will store the value of private_key + type: string + secretId: + description: |- + ID of the Lockbox secret where to store the sensible values. + secret where to add the version with the sensitive values + type: string + type: object + type: array pgpKey: description: An optional PGP key to encrypt the resulting private key material. May either be a base64-encoded public key or a @@ -189,10 +206,27 @@ spec: format. type: string keyAlgorithm: - description: |- - The algorithm used to generate the key. RSA_2048 is the default algorithm. - Valid values are listed in the API reference. + description: The algorithm used to generate the key. RSA_2048 + is the default algorithm. Valid values are listed in the API + reference. type: string + outputToLockbox: + description: option to create a Lockbox secret version from sensitive + outputs + items: + properties: + entryForPrivateKey: + description: |- + Entry where to store the value of private_key. + entry that will store the value of private_key + type: string + secretId: + description: |- + ID of the Lockbox secret where to store the sensible values. + secret where to add the version with the sensitive values + type: string + type: object + type: array pgpKey: description: An optional PGP key to encrypt the resulting private key material. May either be a base64-encoded public key or a @@ -465,14 +499,36 @@ spec: id: type: string keyAlgorithm: - description: |- - The algorithm used to generate the key. RSA_2048 is the default algorithm. - Valid values are listed in the API reference. + description: The algorithm used to generate the key. RSA_2048 + is the default algorithm. Valid values are listed in the API + reference. type: string keyFingerprint: description: The fingerprint of the PGP key used to encrypt the private key. This is only populated when pgp_key is supplied. type: string + outputToLockbox: + description: option to create a Lockbox secret version from sensitive + outputs + items: + properties: + entryForPrivateKey: + description: |- + Entry where to store the value of private_key. + entry that will store the value of private_key + type: string + secretId: + description: |- + ID of the Lockbox secret where to store the sensible values. + secret where to add the version with the sensitive values + type: string + type: object + type: array + outputToLockboxVersionId: + description: |- + ID of the Lockbox secret version that contains the value of private_key. This is only populated when output_to_lockbox is supplied. This version will be destroyed when the IAM key is destroyed, or when output_to_lockbox is removed. + version generated, that will contain the sensitive outputs + type: string pgpKey: description: An optional PGP key to encrypt the resulting private key material. May either be a base64-encoded public key or a diff --git a/package/crds/iam.yandex-cloud.upjet.crossplane.io_serviceaccounts.yaml b/package/crds/iam.yandex-cloud.upjet.crossplane.io_serviceaccounts.yaml index b3c3f77..857833a 100644 --- a/package/crds/iam.yandex-cloud.upjet.crossplane.io_serviceaccounts.yaml +++ b/package/crds/iam.yandex-cloud.upjet.crossplane.io_serviceaccounts.yaml @@ -77,9 +77,8 @@ spec: description: Description of the service account. type: string folderId: - description: |- - ID of the folder that the service account will be created in. - Defaults to the provider folder configuration. + description: ID of the folder that the service account will be + created in. Defaults to the provider folder configuration. type: string folderIdRef: description: Reference to a Folder in resourcemanager to populate @@ -175,9 +174,8 @@ spec: description: Description of the service account. type: string folderId: - description: |- - ID of the folder that the service account will be created in. - Defaults to the provider folder configuration. + description: ID of the folder that the service account will be + created in. Defaults to the provider folder configuration. type: string folderIdRef: description: Reference to a Folder in resourcemanager to populate @@ -434,9 +432,8 @@ spec: description: Description of the service account. type: string folderId: - description: |- - ID of the folder that the service account will be created in. - Defaults to the provider folder configuration. + description: ID of the folder that the service account will be + created in. Defaults to the provider folder configuration. type: string id: type: string diff --git a/package/crds/iam.yandex-cloud.upjet.crossplane.io_serviceaccountstaticaccesskeys.yaml b/package/crds/iam.yandex-cloud.upjet.crossplane.io_serviceaccountstaticaccesskeys.yaml index 9919a2f..4e57e35 100644 --- a/package/crds/iam.yandex-cloud.upjet.crossplane.io_serviceaccountstaticaccesskeys.yaml +++ b/package/crds/iam.yandex-cloud.upjet.crossplane.io_serviceaccountstaticaccesskeys.yaml @@ -78,6 +78,28 @@ spec: description: description: The description of the service account static key. type: string + outputToLockbox: + description: option to create a Lockbox secret version from sensitive + outputs + items: + properties: + entryForAccessKey: + description: |- + Entry where to store the value of access_key. + entry that will store the value of access_key + type: string + entryForSecretKey: + description: |- + Entry where to store the value of secret_key. + entry that will store the value of secret_key + type: string + secretId: + description: |- + ID of the Lockbox secret where to store the sensible values. + secret where to add the version with the sensitive values + type: string + type: object + type: array pgpKey: description: An optional PGP key to encrypt the resulting secret key material. May either be a base64-encoded public key or a @@ -178,6 +200,28 @@ spec: description: description: The description of the service account static key. type: string + outputToLockbox: + description: option to create a Lockbox secret version from sensitive + outputs + items: + properties: + entryForAccessKey: + description: |- + Entry where to store the value of access_key. + entry that will store the value of access_key + type: string + entryForSecretKey: + description: |- + Entry where to store the value of secret_key. + entry that will store the value of secret_key + type: string + secretId: + description: |- + ID of the Lockbox secret where to store the sensible values. + secret where to add the version with the sensitive values + type: string + type: object + type: array pgpKey: description: An optional PGP key to encrypt the resulting secret key material. May either be a base64-encoded public key or a @@ -436,7 +480,8 @@ spec: atProvider: properties: accessKey: - description: ID of the static access key. + description: ID of the static access key. This is only populated + when output_to_lockbox is not provided. type: string createdAt: description: Creation timestamp of the static access key. @@ -454,6 +499,33 @@ spec: description: The fingerprint of the PGP key used to encrypt the secret key. This is only populated when pgp_key is supplied. type: string + outputToLockbox: + description: option to create a Lockbox secret version from sensitive + outputs + items: + properties: + entryForAccessKey: + description: |- + Entry where to store the value of access_key. + entry that will store the value of access_key + type: string + entryForSecretKey: + description: |- + Entry where to store the value of secret_key. + entry that will store the value of secret_key + type: string + secretId: + description: |- + ID of the Lockbox secret where to store the sensible values. + secret where to add the version with the sensitive values + type: string + type: object + type: array + outputToLockboxVersionId: + description: |- + ID of the Lockbox secret version that contains the values of access_key and secret_key. This is only populated when output_to_lockbox is supplied. This version will be destroyed when the IAM key is destroyed, or when output_to_lockbox is removed. + version generated, that will contain the sensitive outputs + type: string pgpKey: description: An optional PGP key to encrypt the resulting secret key material. May either be a base64-encoded public key or a diff --git a/package/crds/kms.yandex-cloud.upjet.crossplane.io_asymmetricencryptionkeyiambindings.yaml b/package/crds/kms.yandex-cloud.upjet.crossplane.io_asymmetricencryptionkeyiambindings.yaml index ab78b4c..f34d0f9 100644 --- a/package/crds/kms.yandex-cloud.upjet.crossplane.io_asymmetricencryptionkeyiambindings.yaml +++ b/package/crds/kms.yandex-cloud.upjet.crossplane.io_asymmetricencryptionkeyiambindings.yaml @@ -155,9 +155,8 @@ spec: type: object type: object members: - description: |- - Identities that will be granted the privilege in role. - Each entry can have one of the following values: + description: 'Identities that will be granted the privilege in + role. Each entry can have one of the following values:' items: type: string type: array @@ -340,9 +339,8 @@ spec: type: object type: object members: - description: |- - Identities that will be granted the privilege in role. - Each entry can have one of the following values: + description: 'Identities that will be granted the privilege in + role. Each entry can have one of the following values:' items: type: string type: array @@ -616,9 +614,8 @@ spec: id: type: string members: - description: |- - Identities that will be granted the privilege in role. - Each entry can have one of the following values: + description: 'Identities that will be granted the privilege in + role. Each entry can have one of the following values:' items: type: string type: array diff --git a/package/crds/kms.yandex-cloud.upjet.crossplane.io_asymmetricencryptionkeys.yaml b/package/crds/kms.yandex-cloud.upjet.crossplane.io_asymmetricencryptionkeys.yaml index e0e1056..408fcf4 100644 --- a/package/crds/kms.yandex-cloud.upjet.crossplane.io_asymmetricencryptionkeys.yaml +++ b/package/crds/kms.yandex-cloud.upjet.crossplane.io_asymmetricencryptionkeys.yaml @@ -85,9 +85,8 @@ spec: default value is RSA_2048_ENC_OAEP_SHA_256. type: string folderId: - description: |- - The ID of the folder that the resource belongs to. If it - is not provided, the default provider folder is used. + description: The ID of the folder that the resource belongs to. + If it is not provided, the default provider folder is used. type: string folderIdRef: description: Reference to a Folder in resourcemanager to populate @@ -198,9 +197,8 @@ spec: default value is RSA_2048_ENC_OAEP_SHA_256. type: string folderId: - description: |- - The ID of the folder that the resource belongs to. If it - is not provided, the default provider folder is used. + description: The ID of the folder that the resource belongs to. + If it is not provided, the default provider folder is used. type: string folderIdRef: description: Reference to a Folder in resourcemanager to populate @@ -474,9 +472,8 @@ spec: default value is RSA_2048_ENC_OAEP_SHA_256. type: string folderId: - description: |- - The ID of the folder that the resource belongs to. If it - is not provided, the default provider folder is used. + description: The ID of the folder that the resource belongs to. + If it is not provided, the default provider folder is used. type: string id: type: string diff --git a/package/crds/kms.yandex-cloud.upjet.crossplane.io_asymmetricsignaturekeyiambindings.yaml b/package/crds/kms.yandex-cloud.upjet.crossplane.io_asymmetricsignaturekeyiambindings.yaml index 6201d47..30986b4 100644 --- a/package/crds/kms.yandex-cloud.upjet.crossplane.io_asymmetricsignaturekeyiambindings.yaml +++ b/package/crds/kms.yandex-cloud.upjet.crossplane.io_asymmetricsignaturekeyiambindings.yaml @@ -155,9 +155,8 @@ spec: type: object type: object members: - description: |- - Identities that will be granted the privilege in role. - Each entry can have one of the following values: + description: 'Identities that will be granted the privilege in + role. Each entry can have one of the following values:' items: type: string type: array @@ -340,9 +339,8 @@ spec: type: object type: object members: - description: |- - Identities that will be granted the privilege in role. - Each entry can have one of the following values: + description: 'Identities that will be granted the privilege in + role. Each entry can have one of the following values:' items: type: string type: array @@ -616,9 +614,8 @@ spec: id: type: string members: - description: |- - Identities that will be granted the privilege in role. - Each entry can have one of the following values: + description: 'Identities that will be granted the privilege in + role. Each entry can have one of the following values:' items: type: string type: array diff --git a/package/crds/kms.yandex-cloud.upjet.crossplane.io_asymmetricsignaturekeys.yaml b/package/crds/kms.yandex-cloud.upjet.crossplane.io_asymmetricsignaturekeys.yaml index 72e2ea7..19e3a6a 100644 --- a/package/crds/kms.yandex-cloud.upjet.crossplane.io_asymmetricsignaturekeys.yaml +++ b/package/crds/kms.yandex-cloud.upjet.crossplane.io_asymmetricsignaturekeys.yaml @@ -80,9 +80,8 @@ spec: description: An optional description of the key. type: string folderId: - description: |- - The ID of the folder that the resource belongs to. If it - is not provided, the default provider folder is used. + description: The ID of the folder that the resource belongs to. + If it is not provided, the default provider folder is used. type: string folderIdRef: description: Reference to a Folder in resourcemanager to populate @@ -193,9 +192,8 @@ spec: description: An optional description of the key. type: string folderId: - description: |- - The ID of the folder that the resource belongs to. If it - is not provided, the default provider folder is used. + description: The ID of the folder that the resource belongs to. + If it is not provided, the default provider folder is used. type: string folderIdRef: description: Reference to a Folder in resourcemanager to populate @@ -469,9 +467,8 @@ spec: description: An optional description of the key. type: string folderId: - description: |- - The ID of the folder that the resource belongs to. If it - is not provided, the default provider folder is used. + description: The ID of the folder that the resource belongs to. + If it is not provided, the default provider folder is used. type: string id: type: string diff --git a/package/crds/kms.yandex-cloud.upjet.crossplane.io_secretciphertexts.yaml b/package/crds/kms.yandex-cloud.upjet.crossplane.io_secretciphertexts.yaml index 3de2c15..f1e7d5a 100644 --- a/package/crds/kms.yandex-cloud.upjet.crossplane.io_secretciphertexts.yaml +++ b/package/crds/kms.yandex-cloud.upjet.crossplane.io_secretciphertexts.yaml @@ -475,7 +475,7 @@ spec: alphabet as defined in RFC 4648 section 4 type: string id: - description: an identifier for the resource with format {{key_id}}/{{ciphertext}} + description: an identifier for the resource with format {key_id}/{ciphertext} type: string keyId: description: ID of the symmetric KMS key to use for encryption. diff --git a/package/crds/kms.yandex-cloud.upjet.crossplane.io_symmetrickeyiambindings.yaml b/package/crds/kms.yandex-cloud.upjet.crossplane.io_symmetrickeyiambindings.yaml index ab94c5f..dff3a8c 100644 --- a/package/crds/kms.yandex-cloud.upjet.crossplane.io_symmetrickeyiambindings.yaml +++ b/package/crds/kms.yandex-cloud.upjet.crossplane.io_symmetrickeyiambindings.yaml @@ -74,9 +74,8 @@ spec: forProvider: properties: members: - description: |- - Identities that will be granted the privilege in role. - Each entry can have one of the following values: + description: 'Identities that will be granted the privilege in + role. Each entry can have one of the following values:' items: type: string type: array @@ -257,9 +256,8 @@ spec: autoscaler. properties: members: - description: |- - Identities that will be granted the privilege in role. - Each entry can have one of the following values: + description: 'Identities that will be granted the privilege in + role. Each entry can have one of the following values:' items: type: string type: array @@ -607,9 +605,8 @@ spec: id: type: string members: - description: |- - Identities that will be granted the privilege in role. - Each entry can have one of the following values: + description: 'Identities that will be granted the privilege in + role. Each entry can have one of the following values:' items: type: string type: array diff --git a/package/crds/kms.yandex-cloud.upjet.crossplane.io_symmetrickeys.yaml b/package/crds/kms.yandex-cloud.upjet.crossplane.io_symmetrickeys.yaml index c376616..309bdd8 100644 --- a/package/crds/kms.yandex-cloud.upjet.crossplane.io_symmetrickeys.yaml +++ b/package/crds/kms.yandex-cloud.upjet.crossplane.io_symmetrickeys.yaml @@ -74,8 +74,7 @@ spec: forProvider: properties: defaultAlgorithm: - description: |- - Encryption algorithm to be used with a new key version, + description: Encryption algorithm to be used with a new key version, generated with the next rotation. The default value is AES_128. type: string deletionProtection: @@ -84,9 +83,8 @@ spec: description: An optional description of the key. type: string folderId: - description: |- - The ID of the folder that the resource belongs to. If it - is not provided, the default provider folder is used. + description: The ID of the folder that the resource belongs to. + If it is not provided, the default provider folder is used. type: string folderIdRef: description: Reference to a Folder in resourcemanager to populate @@ -192,8 +190,7 @@ spec: autoscaler. properties: defaultAlgorithm: - description: |- - Encryption algorithm to be used with a new key version, + description: Encryption algorithm to be used with a new key version, generated with the next rotation. The default value is AES_128. type: string deletionProtection: @@ -202,9 +199,8 @@ spec: description: An optional description of the key. type: string folderId: - description: |- - The ID of the folder that the resource belongs to. If it - is not provided, the default provider folder is used. + description: The ID of the folder that the resource belongs to. + If it is not provided, the default provider folder is used. type: string folderIdRef: description: Reference to a Folder in resourcemanager to populate @@ -472,8 +468,7 @@ spec: description: Creation timestamp of the key. type: string defaultAlgorithm: - description: |- - Encryption algorithm to be used with a new key version, + description: Encryption algorithm to be used with a new key version, generated with the next rotation. The default value is AES_128. type: string deletionProtection: @@ -482,9 +477,8 @@ spec: description: An optional description of the key. type: string folderId: - description: |- - The ID of the folder that the resource belongs to. If it - is not provided, the default provider folder is used. + description: The ID of the folder that the resource belongs to. + If it is not provided, the default provider folder is used. type: string id: type: string diff --git a/package/crds/kubernetes.yandex-cloud.upjet.crossplane.io_clusters.yaml b/package/crds/kubernetes.yandex-cloud.upjet.crossplane.io_clusters.yaml index 1aa6e96..135931e 100644 --- a/package/crds/kubernetes.yandex-cloud.upjet.crossplane.io_clusters.yaml +++ b/package/crds/kubernetes.yandex-cloud.upjet.crossplane.io_clusters.yaml @@ -74,10 +74,10 @@ spec: forProvider: properties: clusterIpv4Range: - description: |- - CIDR block. IP range for allocating pod addresses. - It should not overlap with any subnet in the network the Kubernetes cluster located in. Static routes will be - set up for this CIDR blocks in node subnets. + description: CIDR block. IP range for allocating pod addresses. + It should not overlap with any subnet in the network the Kubernetes + cluster located in. Static routes will be set up for this CIDR + blocks in node subnets. type: string clusterIpv6Range: description: Identical to cluster_ipv4_range but for IPv6 protocol. @@ -86,9 +86,9 @@ spec: description: A description of the Kubernetes cluster. type: string folderId: - description: |- - The ID of the folder that the Kubernetes cluster belongs to. - If it is not provided, the default provider folder is used. + description: The ID of the folder that the Kubernetes cluster + belongs to. If it is not provided, the default provider folder + is used. type: string folderIdRef: description: Reference to a Folder in resourcemanager to populate @@ -268,11 +268,13 @@ spec: externalV6Address: type: string maintenancePolicy: - description: |- - (Computed) Maintenance policy for Kubernetes master. - If policy is omitted, automatic revision upgrades of the kubernetes master are enabled and could happen at any time. - Revision upgrades are performed only within the same minor version, e.g. 1.13. - Minor version upgrades (e.g. 1.13->1.14) should be performed manually. The structure is documented below. + description: (Computed) Maintenance policy for Kubernetes + master. If policy is omitted, automatic revision upgrades + of the kubernetes master are enabled and could happen + at any time. Revision upgrades are performed only within + the same minor version, e.g. 1.13. Minor version upgrades + (e.g. 1.13->1.14) should be performed manually. The structure + is documented below. items: properties: autoUpgrade: @@ -281,10 +283,13 @@ spec: value is TRUE. type: boolean maintenanceWindow: - description: |- - (Computed) This structure specifies maintenance window, when update for master is allowed. When omitted, it defaults to any time. - To specify time of day interval, for all days, one element should be provided, with two fields set, start_time and duration. - Please see zonal_cluster_resource_name config example. + description: (Computed) This structure specifies maintenance + window, when update for master is allowed. When + omitted, it defaults to any time. To specify time + of day interval, for all days, one element should + be provided, with two fields set, start_time and + duration. Please see zonal_cluster_resource_name + config example. items: properties: day: @@ -298,11 +303,13 @@ spec: type: object type: array masterLocation: - description: |- - Cluster master's instances locations array (zone and subnet). - Cannot be used together with zonal or regional. Currently, supports either one, for zonal master, or three instances of master_location. - Can be updated inplace. When creating regional cluster (three master instances), its region will be evaluated automatically by backend. - The structure is documented below. + description: Cluster master's instances locations array + (zone and subnet). Cannot be used together with zonal + or regional. Currently, supports either one, for zonal + master, or three instances of master_location. Can be + updated inplace. When creating regional cluster (three + master instances), its region will be evaluated automatically + by backend. The structure is documented below. items: properties: subnetId: @@ -425,6 +432,82 @@ spec: logGroupId: description: ID of the Yandex Cloud Logging Log group. type: string + logGroupIdRef: + description: Reference to a Group in logging to populate + logGroupId. + properties: + name: + description: Name of the referenced object. + type: string + policy: + description: Policies for referencing. + properties: + resolution: + default: Required + description: |- + Resolution specifies whether resolution of this reference is required. + The default is 'Required', which means the reconcile will fail if the + reference cannot be resolved. 'Optional' means this reference will be + a no-op if it cannot be resolved. + enum: + - Required + - Optional + type: string + resolve: + description: |- + Resolve specifies when this reference should be resolved. The default + is 'IfNotPresent', which will attempt to resolve the reference only when + the corresponding field is not present. Use 'Always' to resolve the + reference on every reconcile. + enum: + - Always + - IfNotPresent + type: string + type: object + required: + - name + type: object + logGroupIdSelector: + description: Selector for a Group in logging to populate + logGroupId. + properties: + matchControllerRef: + description: |- + MatchControllerRef ensures an object with the same controller reference + as the selecting object is selected. + type: boolean + matchLabels: + additionalProperties: + type: string + description: MatchLabels ensures an object with + matching labels is selected. + type: object + policy: + description: Policies for selection. + properties: + resolution: + default: Required + description: |- + Resolution specifies whether resolution of this reference is required. + The default is 'Required', which means the reconcile will fail if the + reference cannot be resolved. 'Optional' means this reference will be + a no-op if it cannot be resolved. + enum: + - Required + - Optional + type: string + resolve: + description: |- + Resolve specifies when this reference should be resolved. The default + is 'IfNotPresent', which will attempt to resolve the reference only when + the corresponding field is not present. Use 'Always' to resolve the + reference on every reconcile. + enum: + - Always + - IfNotPresent + type: string + type: object + type: object type: object type: array publicIp: @@ -525,6 +608,82 @@ spec: zone: description: ID of the availability zone. type: string + zoneRef: + description: Reference to a Subnet in vpc to + populate zone. + properties: + name: + description: Name of the referenced object. + type: string + policy: + description: Policies for referencing. + properties: + resolution: + default: Required + description: |- + Resolution specifies whether resolution of this reference is required. + The default is 'Required', which means the reconcile will fail if the + reference cannot be resolved. 'Optional' means this reference will be + a no-op if it cannot be resolved. + enum: + - Required + - Optional + type: string + resolve: + description: |- + Resolve specifies when this reference should be resolved. The default + is 'IfNotPresent', which will attempt to resolve the reference only when + the corresponding field is not present. Use 'Always' to resolve the + reference on every reconcile. + enum: + - Always + - IfNotPresent + type: string + type: object + required: + - name + type: object + zoneSelector: + description: Selector for a Subnet in vpc to + populate zone. + properties: + matchControllerRef: + description: |- + MatchControllerRef ensures an object with the same controller reference + as the selecting object is selected. + type: boolean + matchLabels: + additionalProperties: + type: string + description: MatchLabels ensures an object + with matching labels is selected. + type: object + policy: + description: Policies for selection. + properties: + resolution: + default: Required + description: |- + Resolution specifies whether resolution of this reference is required. + The default is 'Required', which means the reconcile will fail if the + reference cannot be resolved. 'Optional' means this reference will be + a no-op if it cannot be resolved. + enum: + - Required + - Optional + type: string + resolve: + description: |- + Resolve specifies when this reference should be resolved. The default + is 'IfNotPresent', which will attempt to resolve the reference only when + the corresponding field is not present. Use 'Always' to resolve the + reference on every reconcile. + enum: + - Always + - IfNotPresent + type: string + type: object + type: object type: object type: array region: @@ -712,6 +871,82 @@ spec: zone: description: ID of the availability zone. type: string + zoneRef: + description: Reference to a Subnet in vpc to populate + zone. + properties: + name: + description: Name of the referenced object. + type: string + policy: + description: Policies for referencing. + properties: + resolution: + default: Required + description: |- + Resolution specifies whether resolution of this reference is required. + The default is 'Required', which means the reconcile will fail if the + reference cannot be resolved. 'Optional' means this reference will be + a no-op if it cannot be resolved. + enum: + - Required + - Optional + type: string + resolve: + description: |- + Resolve specifies when this reference should be resolved. The default + is 'IfNotPresent', which will attempt to resolve the reference only when + the corresponding field is not present. Use 'Always' to resolve the + reference on every reconcile. + enum: + - Always + - IfNotPresent + type: string + type: object + required: + - name + type: object + zoneSelector: + description: Selector for a Subnet in vpc to populate + zone. + properties: + matchControllerRef: + description: |- + MatchControllerRef ensures an object with the same controller reference + as the selecting object is selected. + type: boolean + matchLabels: + additionalProperties: + type: string + description: MatchLabels ensures an object with + matching labels is selected. + type: object + policy: + description: Policies for selection. + properties: + resolution: + default: Required + description: |- + Resolution specifies whether resolution of this reference is required. + The default is 'Required', which means the reconcile will fail if the + reference cannot be resolved. 'Optional' means this reference will be + a no-op if it cannot be resolved. + enum: + - Required + - Optional + type: string + resolve: + description: |- + Resolve specifies when this reference should be resolved. The default + is 'IfNotPresent', which will attempt to resolve the reference only when + the corresponding field is not present. Use 'Always' to resolve the + reference on every reconcile. + enum: + - Always + - IfNotPresent + type: string + type: object + type: object type: object type: array type: object @@ -819,9 +1054,9 @@ spec: each node. type: number nodeServiceAccountId: - description: |- - Service account to be used by the worker nodes of the Kubernetes cluster - to access Container Registry or to push node logs and metrics. + description: Service account to be used by the worker nodes of + the Kubernetes cluster to access Container Registry or to push + node logs and metrics. type: string nodeServiceAccountIdRef: description: Reference to a SecurityGroup in vpc to populate nodeServiceAccountId. @@ -901,10 +1136,11 @@ spec: description: Cluster release channel. type: string serviceAccountId: - description: |- - Service account to be used for provisioning Compute Cloud and VPC resources - for Kubernetes cluster. Selected service account should have edit role on the folder where the Kubernetes - cluster will be located and on the folder where selected network resides. + description: Service account to be used for provisioning Compute + Cloud and VPC resources for Kubernetes cluster. Selected service + account should have edit role on the folder where the Kubernetes + cluster will be located and on the folder where selected network + resides. type: string serviceAccountIdRef: description: Reference to a SecurityGroup in vpc to populate serviceAccountId. @@ -981,10 +1217,10 @@ spec: type: object type: object serviceIpv4Range: - description: |- - CIDR block. IP range Kubernetes service Kubernetes cluster - IP addresses will be allocated from. It should not overlap with any subnet in the network - the Kubernetes cluster located in. + description: CIDR block. IP range Kubernetes service Kubernetes + cluster IP addresses will be allocated from. It should not overlap + with any subnet in the network the Kubernetes cluster located + in. type: string serviceIpv6Range: description: Identical to service_ipv4_range but for IPv6 protocol. @@ -1004,10 +1240,10 @@ spec: autoscaler. properties: clusterIpv4Range: - description: |- - CIDR block. IP range for allocating pod addresses. - It should not overlap with any subnet in the network the Kubernetes cluster located in. Static routes will be - set up for this CIDR blocks in node subnets. + description: CIDR block. IP range for allocating pod addresses. + It should not overlap with any subnet in the network the Kubernetes + cluster located in. Static routes will be set up for this CIDR + blocks in node subnets. type: string clusterIpv6Range: description: Identical to cluster_ipv4_range but for IPv6 protocol. @@ -1016,9 +1252,9 @@ spec: description: A description of the Kubernetes cluster. type: string folderId: - description: |- - The ID of the folder that the Kubernetes cluster belongs to. - If it is not provided, the default provider folder is used. + description: The ID of the folder that the Kubernetes cluster + belongs to. If it is not provided, the default provider folder + is used. type: string folderIdRef: description: Reference to a Folder in resourcemanager to populate @@ -1198,11 +1434,13 @@ spec: externalV6Address: type: string maintenancePolicy: - description: |- - (Computed) Maintenance policy for Kubernetes master. - If policy is omitted, automatic revision upgrades of the kubernetes master are enabled and could happen at any time. - Revision upgrades are performed only within the same minor version, e.g. 1.13. - Minor version upgrades (e.g. 1.13->1.14) should be performed manually. The structure is documented below. + description: (Computed) Maintenance policy for Kubernetes + master. If policy is omitted, automatic revision upgrades + of the kubernetes master are enabled and could happen + at any time. Revision upgrades are performed only within + the same minor version, e.g. 1.13. Minor version upgrades + (e.g. 1.13->1.14) should be performed manually. The structure + is documented below. items: properties: autoUpgrade: @@ -1211,10 +1449,13 @@ spec: value is TRUE. type: boolean maintenanceWindow: - description: |- - (Computed) This structure specifies maintenance window, when update for master is allowed. When omitted, it defaults to any time. - To specify time of day interval, for all days, one element should be provided, with two fields set, start_time and duration. - Please see zonal_cluster_resource_name config example. + description: (Computed) This structure specifies maintenance + window, when update for master is allowed. When + omitted, it defaults to any time. To specify time + of day interval, for all days, one element should + be provided, with two fields set, start_time and + duration. Please see zonal_cluster_resource_name + config example. items: properties: day: @@ -1228,11 +1469,13 @@ spec: type: object type: array masterLocation: - description: |- - Cluster master's instances locations array (zone and subnet). - Cannot be used together with zonal or regional. Currently, supports either one, for zonal master, or three instances of master_location. - Can be updated inplace. When creating regional cluster (three master instances), its region will be evaluated automatically by backend. - The structure is documented below. + description: Cluster master's instances locations array + (zone and subnet). Cannot be used together with zonal + or regional. Currently, supports either one, for zonal + master, or three instances of master_location. Can be + updated inplace. When creating regional cluster (three + master instances), its region will be evaluated automatically + by backend. The structure is documented below. items: properties: subnetId: @@ -1355,6 +1598,82 @@ spec: logGroupId: description: ID of the Yandex Cloud Logging Log group. type: string + logGroupIdRef: + description: Reference to a Group in logging to populate + logGroupId. + properties: + name: + description: Name of the referenced object. + type: string + policy: + description: Policies for referencing. + properties: + resolution: + default: Required + description: |- + Resolution specifies whether resolution of this reference is required. + The default is 'Required', which means the reconcile will fail if the + reference cannot be resolved. 'Optional' means this reference will be + a no-op if it cannot be resolved. + enum: + - Required + - Optional + type: string + resolve: + description: |- + Resolve specifies when this reference should be resolved. The default + is 'IfNotPresent', which will attempt to resolve the reference only when + the corresponding field is not present. Use 'Always' to resolve the + reference on every reconcile. + enum: + - Always + - IfNotPresent + type: string + type: object + required: + - name + type: object + logGroupIdSelector: + description: Selector for a Group in logging to populate + logGroupId. + properties: + matchControllerRef: + description: |- + MatchControllerRef ensures an object with the same controller reference + as the selecting object is selected. + type: boolean + matchLabels: + additionalProperties: + type: string + description: MatchLabels ensures an object with + matching labels is selected. + type: object + policy: + description: Policies for selection. + properties: + resolution: + default: Required + description: |- + Resolution specifies whether resolution of this reference is required. + The default is 'Required', which means the reconcile will fail if the + reference cannot be resolved. 'Optional' means this reference will be + a no-op if it cannot be resolved. + enum: + - Required + - Optional + type: string + resolve: + description: |- + Resolve specifies when this reference should be resolved. The default + is 'IfNotPresent', which will attempt to resolve the reference only when + the corresponding field is not present. Use 'Always' to resolve the + reference on every reconcile. + enum: + - Always + - IfNotPresent + type: string + type: object + type: object type: object type: array publicIp: @@ -1455,6 +1774,82 @@ spec: zone: description: ID of the availability zone. type: string + zoneRef: + description: Reference to a Subnet in vpc to + populate zone. + properties: + name: + description: Name of the referenced object. + type: string + policy: + description: Policies for referencing. + properties: + resolution: + default: Required + description: |- + Resolution specifies whether resolution of this reference is required. + The default is 'Required', which means the reconcile will fail if the + reference cannot be resolved. 'Optional' means this reference will be + a no-op if it cannot be resolved. + enum: + - Required + - Optional + type: string + resolve: + description: |- + Resolve specifies when this reference should be resolved. The default + is 'IfNotPresent', which will attempt to resolve the reference only when + the corresponding field is not present. Use 'Always' to resolve the + reference on every reconcile. + enum: + - Always + - IfNotPresent + type: string + type: object + required: + - name + type: object + zoneSelector: + description: Selector for a Subnet in vpc to + populate zone. + properties: + matchControllerRef: + description: |- + MatchControllerRef ensures an object with the same controller reference + as the selecting object is selected. + type: boolean + matchLabels: + additionalProperties: + type: string + description: MatchLabels ensures an object + with matching labels is selected. + type: object + policy: + description: Policies for selection. + properties: + resolution: + default: Required + description: |- + Resolution specifies whether resolution of this reference is required. + The default is 'Required', which means the reconcile will fail if the + reference cannot be resolved. 'Optional' means this reference will be + a no-op if it cannot be resolved. + enum: + - Required + - Optional + type: string + resolve: + description: |- + Resolve specifies when this reference should be resolved. The default + is 'IfNotPresent', which will attempt to resolve the reference only when + the corresponding field is not present. Use 'Always' to resolve the + reference on every reconcile. + enum: + - Always + - IfNotPresent + type: string + type: object + type: object type: object type: array region: @@ -1642,6 +2037,82 @@ spec: zone: description: ID of the availability zone. type: string + zoneRef: + description: Reference to a Subnet in vpc to populate + zone. + properties: + name: + description: Name of the referenced object. + type: string + policy: + description: Policies for referencing. + properties: + resolution: + default: Required + description: |- + Resolution specifies whether resolution of this reference is required. + The default is 'Required', which means the reconcile will fail if the + reference cannot be resolved. 'Optional' means this reference will be + a no-op if it cannot be resolved. + enum: + - Required + - Optional + type: string + resolve: + description: |- + Resolve specifies when this reference should be resolved. The default + is 'IfNotPresent', which will attempt to resolve the reference only when + the corresponding field is not present. Use 'Always' to resolve the + reference on every reconcile. + enum: + - Always + - IfNotPresent + type: string + type: object + required: + - name + type: object + zoneSelector: + description: Selector for a Subnet in vpc to populate + zone. + properties: + matchControllerRef: + description: |- + MatchControllerRef ensures an object with the same controller reference + as the selecting object is selected. + type: boolean + matchLabels: + additionalProperties: + type: string + description: MatchLabels ensures an object with + matching labels is selected. + type: object + policy: + description: Policies for selection. + properties: + resolution: + default: Required + description: |- + Resolution specifies whether resolution of this reference is required. + The default is 'Required', which means the reconcile will fail if the + reference cannot be resolved. 'Optional' means this reference will be + a no-op if it cannot be resolved. + enum: + - Required + - Optional + type: string + resolve: + description: |- + Resolve specifies when this reference should be resolved. The default + is 'IfNotPresent', which will attempt to resolve the reference only when + the corresponding field is not present. Use 'Always' to resolve the + reference on every reconcile. + enum: + - Always + - IfNotPresent + type: string + type: object + type: object type: object type: array type: object @@ -1749,9 +2220,9 @@ spec: each node. type: number nodeServiceAccountId: - description: |- - Service account to be used by the worker nodes of the Kubernetes cluster - to access Container Registry or to push node logs and metrics. + description: Service account to be used by the worker nodes of + the Kubernetes cluster to access Container Registry or to push + node logs and metrics. type: string nodeServiceAccountIdRef: description: Reference to a SecurityGroup in vpc to populate nodeServiceAccountId. @@ -1831,10 +2302,11 @@ spec: description: Cluster release channel. type: string serviceAccountId: - description: |- - Service account to be used for provisioning Compute Cloud and VPC resources - for Kubernetes cluster. Selected service account should have edit role on the folder where the Kubernetes - cluster will be located and on the folder where selected network resides. + description: Service account to be used for provisioning Compute + Cloud and VPC resources for Kubernetes cluster. Selected service + account should have edit role on the folder where the Kubernetes + cluster will be located and on the folder where selected network + resides. type: string serviceAccountIdRef: description: Reference to a SecurityGroup in vpc to populate serviceAccountId. @@ -1911,10 +2383,10 @@ spec: type: object type: object serviceIpv4Range: - description: |- - CIDR block. IP range Kubernetes service Kubernetes cluster - IP addresses will be allocated from. It should not overlap with any subnet in the network - the Kubernetes cluster located in. + description: CIDR block. IP range Kubernetes service Kubernetes + cluster IP addresses will be allocated from. It should not overlap + with any subnet in the network the Kubernetes cluster located + in. type: string serviceIpv6Range: description: Identical to service_ipv4_range but for IPv6 protocol. @@ -2098,10 +2570,10 @@ spec: atProvider: properties: clusterIpv4Range: - description: |- - CIDR block. IP range for allocating pod addresses. - It should not overlap with any subnet in the network the Kubernetes cluster located in. Static routes will be - set up for this CIDR blocks in node subnets. + description: CIDR block. IP range for allocating pod addresses. + It should not overlap with any subnet in the network the Kubernetes + cluster located in. Static routes will be set up for this CIDR + blocks in node subnets. type: string clusterIpv6Range: description: Identical to cluster_ipv4_range but for IPv6 protocol. @@ -2113,9 +2585,9 @@ spec: description: A description of the Kubernetes cluster. type: string folderId: - description: |- - The ID of the folder that the Kubernetes cluster belongs to. - If it is not provided, the default provider folder is used. + description: The ID of the folder that the Kubernetes cluster + belongs to. If it is not provided, the default provider folder + is used. type: string health: description: (Computed) Health of the Kubernetes cluster. @@ -2176,11 +2648,13 @@ spec: to connect to the master from cloud networks. type: string maintenancePolicy: - description: |- - (Computed) Maintenance policy for Kubernetes master. - If policy is omitted, automatic revision upgrades of the kubernetes master are enabled and could happen at any time. - Revision upgrades are performed only within the same minor version, e.g. 1.13. - Minor version upgrades (e.g. 1.13->1.14) should be performed manually. The structure is documented below. + description: (Computed) Maintenance policy for Kubernetes + master. If policy is omitted, automatic revision upgrades + of the kubernetes master are enabled and could happen + at any time. Revision upgrades are performed only within + the same minor version, e.g. 1.13. Minor version upgrades + (e.g. 1.13->1.14) should be performed manually. The structure + is documented below. items: properties: autoUpgrade: @@ -2189,10 +2663,13 @@ spec: value is TRUE. type: boolean maintenanceWindow: - description: |- - (Computed) This structure specifies maintenance window, when update for master is allowed. When omitted, it defaults to any time. - To specify time of day interval, for all days, one element should be provided, with two fields set, start_time and duration. - Please see zonal_cluster_resource_name config example. + description: (Computed) This structure specifies maintenance + window, when update for master is allowed. When + omitted, it defaults to any time. To specify time + of day interval, for all days, one element should + be provided, with two fields set, start_time and + duration. Please see zonal_cluster_resource_name + config example. items: properties: day: @@ -2206,11 +2683,13 @@ spec: type: object type: array masterLocation: - description: |- - Cluster master's instances locations array (zone and subnet). - Cannot be used together with zonal or regional. Currently, supports either one, for zonal master, or three instances of master_location. - Can be updated inplace. When creating regional cluster (three master instances), its region will be evaluated automatically by backend. - The structure is documented below. + description: Cluster master's instances locations array + (zone and subnet). Cannot be used together with zonal + or regional. Currently, supports either one, for zonal + master, or three instances of master_location. Can be + updated inplace. When creating regional cluster (three + master instances), its region will be evaluated automatically + by backend. The structure is documented below. items: properties: subnetId: @@ -2310,21 +2789,21 @@ spec: (e.g. 1.15). type: string newRevisionAvailable: - description: |- - Boolean flag. - Newer revisions may include Kubernetes patches (e.g 1.15.1 -> 1.15.2) as well - as some internal component updates - new features or bug fixes in yandex-specific - components either on the master or nodes. + description: Boolean flag. Newer revisions may include + Kubernetes patches (e.g 1.15.1 -> 1.15.2) as well + as some internal component updates - new features + or bug fixes in yandex-specific components either + on the master or nodes. type: boolean newRevisionSummary: - description: |- - Human readable description of the changes to be applied - when updating to the latest revision. Empty if new_revision_available is false. + description: Human readable description of the changes + to be applied when updating to the latest revision. + Empty if new_revision_available is false. type: string versionDeprecated: - description: |- - Boolean flag. The current version is on the deprecation schedule, - component (master or node group) should be upgraded. + description: Boolean flag. The current version is + on the deprecation schedule, component (master or + node group) should be upgraded. type: boolean type: object type: array @@ -2374,24 +2853,25 @@ spec: each node. type: number nodeServiceAccountId: - description: |- - Service account to be used by the worker nodes of the Kubernetes cluster - to access Container Registry or to push node logs and metrics. + description: Service account to be used by the worker nodes of + the Kubernetes cluster to access Container Registry or to push + node logs and metrics. type: string releaseChannel: description: Cluster release channel. type: string serviceAccountId: - description: |- - Service account to be used for provisioning Compute Cloud and VPC resources - for Kubernetes cluster. Selected service account should have edit role on the folder where the Kubernetes - cluster will be located and on the folder where selected network resides. + description: Service account to be used for provisioning Compute + Cloud and VPC resources for Kubernetes cluster. Selected service + account should have edit role on the folder where the Kubernetes + cluster will be located and on the folder where selected network + resides. type: string serviceIpv4Range: - description: |- - CIDR block. IP range Kubernetes service Kubernetes cluster - IP addresses will be allocated from. It should not overlap with any subnet in the network - the Kubernetes cluster located in. + description: CIDR block. IP range Kubernetes service Kubernetes + cluster IP addresses will be allocated from. It should not overlap + with any subnet in the network the Kubernetes cluster located + in. type: string serviceIpv6Range: description: Identical to service_ipv4_range but for IPv6 protocol. diff --git a/package/crds/kubernetes.yandex-cloud.upjet.crossplane.io_nodegroups.yaml b/package/crds/kubernetes.yandex-cloud.upjet.crossplane.io_nodegroups.yaml index 114370a..8ca1908 100644 --- a/package/crds/kubernetes.yandex-cloud.upjet.crossplane.io_nodegroups.yaml +++ b/package/crds/kubernetes.yandex-cloud.upjet.crossplane.io_nodegroups.yaml @@ -348,8 +348,7 @@ spec: x-kubernetes-map-type: granular name: description: |- - Name template of the instance. - In order to be unique it must contain at least one of instance unique placeholders: + Name template of the instance. In order to be unique it must contain at least one of instance unique placeholders: {instance.short_id} {instance.index} combination of {instance.zone_id} and {instance.index_in_zone} @@ -653,11 +652,12 @@ spec: type: object x-kubernetes-map-type: granular maintenancePolicy: - description: |- - (Computed) Maintenance policy for this Kubernetes node group. - If policy is omitted, automatic revision upgrades are enabled and could happen at any time. - Revision upgrades are performed only within the same minor version, e.g. 1.13. - Minor version upgrades (e.g. 1.13->1.14) should be performed manually. The structure is documented below. + description: (Computed) Maintenance policy for this Kubernetes + node group. If policy is omitted, automatic revision upgrades + are enabled and could happen at any time. Revision upgrades + are performed only within the same minor version, e.g. 1.13. + Minor version upgrades (e.g. 1.13->1.14) should be performed + manually. The structure is documented below. items: properties: autoRepair: @@ -1031,8 +1031,7 @@ spec: x-kubernetes-map-type: granular name: description: |- - Name template of the instance. - In order to be unique it must contain at least one of instance unique placeholders: + Name template of the instance. In order to be unique it must contain at least one of instance unique placeholders: {instance.short_id} {instance.index} combination of {instance.zone_id} and {instance.index_in_zone} @@ -1336,11 +1335,12 @@ spec: type: object x-kubernetes-map-type: granular maintenancePolicy: - description: |- - (Computed) Maintenance policy for this Kubernetes node group. - If policy is omitted, automatic revision upgrades are enabled and could happen at any time. - Revision upgrades are performed only within the same minor version, e.g. 1.13. - Minor version upgrades (e.g. 1.13->1.14) should be performed manually. The structure is documented below. + description: (Computed) Maintenance policy for this Kubernetes + node group. If policy is omitted, automatic revision upgrades + are enabled and could happen at any time. Revision upgrades + are performed only within the same minor version, e.g. 1.13. + Minor version upgrades (e.g. 1.13->1.14) should be performed + manually. The structure is documented below. items: properties: autoRepair: @@ -1741,8 +1741,7 @@ spec: x-kubernetes-map-type: granular name: description: |- - Name template of the instance. - In order to be unique it must contain at least one of instance unique placeholders: + Name template of the instance. In order to be unique it must contain at least one of instance unique placeholders: {instance.short_id} {instance.index} combination of {instance.zone_id} and {instance.index_in_zone} @@ -1888,11 +1887,12 @@ spec: type: object x-kubernetes-map-type: granular maintenancePolicy: - description: |- - (Computed) Maintenance policy for this Kubernetes node group. - If policy is omitted, automatic revision upgrades are enabled and could happen at any time. - Revision upgrades are performed only within the same minor version, e.g. 1.13. - Minor version upgrades (e.g. 1.13->1.14) should be performed manually. The structure is documented below. + description: (Computed) Maintenance policy for this Kubernetes + node group. If policy is omitted, automatic revision upgrades + are enabled and could happen at any time. Revision upgrades + are performed only within the same minor version, e.g. 1.13. + Minor version upgrades (e.g. 1.13->1.14) should be performed + manually. The structure is documented below. items: properties: autoRepair: @@ -1990,21 +1990,21 @@ spec: 1.15). type: string newRevisionAvailable: - description: |- - True/false flag. - Newer revisions may include Kubernetes patches (e.g 1.15.1 -> 1.15.2) as well - as some internal component updates - new features or bug fixes in yandex-specific - components either on the master or nodes. + description: True/false flag. Newer revisions may include + Kubernetes patches (e.g 1.15.1 -> 1.15.2) as well as some + internal component updates - new features or bug fixes + in yandex-specific components either on the master or + nodes. type: boolean newRevisionSummary: - description: |- - Human readable description of the changes to be applied - when updating to the latest revision. Empty if new_revision_available is false. + description: Human readable description of the changes to + be applied when updating to the latest revision. Empty + if new_revision_available is false. type: string versionDeprecated: - description: |- - True/false flag. The current version is on the deprecation schedule, - component (master or node group) should be upgraded. + description: True/false flag. The current version is on + the deprecation schedule, component (master or node group) + should be upgraded. type: boolean type: object type: array diff --git a/package/crds/lb.yandex-cloud.upjet.crossplane.io_networkloadbalancers.yaml b/package/crds/lb.yandex-cloud.upjet.crossplane.io_networkloadbalancers.yaml index 1a03cf0..3241459 100644 --- a/package/crds/lb.yandex-cloud.upjet.crossplane.io_networkloadbalancers.yaml +++ b/package/crds/lb.yandex-cloud.upjet.crossplane.io_networkloadbalancers.yaml @@ -217,13 +217,11 @@ spec: accidental deletion. type: boolean description: - description: |- - An optional description of the network load balancer. Provide this property when - you create the resource. + description: An optional description of the network load balancer. + Provide this property when you create the resource. type: string folderId: - description: |- - The ID of the folder to which the resource belongs. + description: The ID of the folder to which the resource belongs. If omitted, the provider folder is used. type: string folderIdRef: @@ -450,9 +448,8 @@ spec: client when the network load balancer is created. type: string regionId: - description: |- - ID of the availability zone where the network load balancer resides. - If omitted, default region is being used. + description: ID of the availability zone where the network load + balancer resides. If omitted, default region is being used. type: string type: description: Type of the network load balancer. Must be one of @@ -615,13 +612,11 @@ spec: accidental deletion. type: boolean description: - description: |- - An optional description of the network load balancer. Provide this property when - you create the resource. + description: An optional description of the network load balancer. + Provide this property when you create the resource. type: string folderId: - description: |- - The ID of the folder to which the resource belongs. + description: The ID of the folder to which the resource belongs. If omitted, the provider folder is used. type: string folderIdRef: @@ -848,9 +843,8 @@ spec: client when the network load balancer is created. type: string regionId: - description: |- - ID of the availability zone where the network load balancer resides. - If omitted, default region is being used. + description: ID of the availability zone where the network load + balancer resides. If omitted, default region is being used. type: string type: description: Type of the network load balancer. Must be one of @@ -1101,13 +1095,11 @@ spec: accidental deletion. type: boolean description: - description: |- - An optional description of the network load balancer. Provide this property when - you create the resource. + description: An optional description of the network load balancer. + Provide this property when you create the resource. type: string folderId: - description: |- - The ID of the folder to which the resource belongs. + description: The ID of the folder to which the resource belongs. If omitted, the provider folder is used. type: string id: @@ -1185,9 +1177,8 @@ spec: client when the network load balancer is created. type: string regionId: - description: |- - ID of the availability zone where the network load balancer resides. - If omitted, default region is being used. + description: ID of the availability zone where the network load + balancer resides. If omitted, default region is being used. type: string type: description: Type of the network load balancer. Must be one of diff --git a/package/crds/lb.yandex-cloud.upjet.crossplane.io_targetgroups.yaml b/package/crds/lb.yandex-cloud.upjet.crossplane.io_targetgroups.yaml index 8b25fd4..3c1e348 100644 --- a/package/crds/lb.yandex-cloud.upjet.crossplane.io_targetgroups.yaml +++ b/package/crds/lb.yandex-cloud.upjet.crossplane.io_targetgroups.yaml @@ -75,13 +75,11 @@ spec: forProvider: properties: description: - description: |- - An optional description of the target group. Provide this property when - you create the resource. + description: An optional description of the target group. Provide + this property when you create the resource. type: string folderId: - description: |- - The ID of the folder to which the resource belongs. + description: The ID of the folder to which the resource belongs. If omitted, the provider folder is used. type: string folderIdRef: @@ -172,9 +170,8 @@ spec: when the target group is created. type: string regionId: - description: |- - ID of the availability zone where the target group resides. - If omitted, default region is being used. + description: ID of the availability zone where the target group + resides. If omitted, default region is being used. type: string target: description: A Target resource. The structure is documented below. @@ -184,9 +181,9 @@ spec: description: IP address of the target. type: string subnetId: - description: |- - ID of the subnet that targets are connected to. - All targets in the target group must be connected to the same subnet within a single availability zone. + description: ID of the subnet that targets are connected + to. All targets in the target group must be connected + to the same subnet within a single availability zone. type: string subnetIdRef: description: Reference to a Subnet in vpc to populate subnetId. @@ -279,13 +276,11 @@ spec: autoscaler. properties: description: - description: |- - An optional description of the target group. Provide this property when - you create the resource. + description: An optional description of the target group. Provide + this property when you create the resource. type: string folderId: - description: |- - The ID of the folder to which the resource belongs. + description: The ID of the folder to which the resource belongs. If omitted, the provider folder is used. type: string folderIdRef: @@ -376,9 +371,8 @@ spec: when the target group is created. type: string regionId: - description: |- - ID of the availability zone where the target group resides. - If omitted, default region is being used. + description: ID of the availability zone where the target group + resides. If omitted, default region is being used. type: string target: description: A Target resource. The structure is documented below. @@ -388,9 +382,9 @@ spec: description: IP address of the target. type: string subnetId: - description: |- - ID of the subnet that targets are connected to. - All targets in the target group must be connected to the same subnet within a single availability zone. + description: ID of the subnet that targets are connected + to. All targets in the target group must be connected + to the same subnet within a single availability zone. type: string subnetIdRef: description: Reference to a Subnet in vpc to populate subnetId. @@ -645,13 +639,11 @@ spec: description: The target group creation timestamp. type: string description: - description: |- - An optional description of the target group. Provide this property when - you create the resource. + description: An optional description of the target group. Provide + this property when you create the resource. type: string folderId: - description: |- - The ID of the folder to which the resource belongs. + description: The ID of the folder to which the resource belongs. If omitted, the provider folder is used. type: string id: @@ -669,9 +661,8 @@ spec: when the target group is created. type: string regionId: - description: |- - ID of the availability zone where the target group resides. - If omitted, default region is being used. + description: ID of the availability zone where the target group + resides. If omitted, default region is being used. type: string target: description: A Target resource. The structure is documented below. @@ -681,9 +672,9 @@ spec: description: IP address of the target. type: string subnetId: - description: |- - ID of the subnet that targets are connected to. - All targets in the target group must be connected to the same subnet within a single availability zone. + description: ID of the subnet that targets are connected + to. All targets in the target group must be connected + to the same subnet within a single availability zone. type: string type: object type: array diff --git a/package/crds/loadtesting.yandex-cloud.upjet.crossplane.io_agents.yaml b/package/crds/loadtesting.yandex-cloud.upjet.crossplane.io_agents.yaml index 266fc50..5a32839 100644 --- a/package/crds/loadtesting.yandex-cloud.upjet.crossplane.io_agents.yaml +++ b/package/crds/loadtesting.yandex-cloud.upjet.crossplane.io_agents.yaml @@ -353,9 +353,9 @@ spec: type: object type: object zoneId: - description: |- - The availability zone where the virtual machine will be created. If it is not provided, - the default provider folder is used. + description: The availability zone where the virtual machine + will be created. If it is not provided, the default provider + folder is used. type: string type: object type: array @@ -745,9 +745,9 @@ spec: type: object type: object zoneId: - description: |- - The availability zone where the virtual machine will be created. If it is not provided, - the default provider folder is used. + description: The availability zone where the virtual machine + will be created. If it is not provided, the default provider + folder is used. type: string type: object type: array @@ -1073,6 +1073,14 @@ spec: type: array type: object type: array + computedLabels: + additionalProperties: + type: string + description: (Computed) The set of labels key:value pairs + assigned to this instance. This includes user custom labels + and predefined items created by Yandex Cloud Load Testing. + type: object + x-kubernetes-map-type: granular computedMetadata: additionalProperties: type: string @@ -1170,9 +1178,9 @@ spec: or loadtesting.externalAgent role in the folder. type: string zoneId: - description: |- - The availability zone where the virtual machine will be created. If it is not provided, - the default provider folder is used. + description: The availability zone where the virtual machine + will be created. If it is not provided, the default provider + folder is used. type: string type: object type: array diff --git a/package/crds/lockbox.yandex-cloud.upjet.crossplane.io_secretiambindings.yaml b/package/crds/lockbox.yandex-cloud.upjet.crossplane.io_secretiambindings.yaml index 64705c8..d9997cf 100644 --- a/package/crds/lockbox.yandex-cloud.upjet.crossplane.io_secretiambindings.yaml +++ b/package/crds/lockbox.yandex-cloud.upjet.crossplane.io_secretiambindings.yaml @@ -74,9 +74,8 @@ spec: forProvider: properties: members: - description: |- - Identities that will be granted the privilege in role. - Each entry can have one of the following values: + description: 'Identities that will be granted the privilege in + role. Each entry can have one of the following values:' items: type: string type: array @@ -257,9 +256,8 @@ spec: autoscaler. properties: members: - description: |- - Identities that will be granted the privilege in role. - Each entry can have one of the following values: + description: 'Identities that will be granted the privilege in + role. Each entry can have one of the following values:' items: type: string type: array @@ -606,9 +604,8 @@ spec: id: type: string members: - description: |- - Identities that will be granted the privilege in role. - Each entry can have one of the following values: + description: 'Identities that will be granted the privilege in + role. Each entry can have one of the following values:' items: type: string type: array diff --git a/package/crds/lockbox.yandex-cloud.upjet.crossplane.io_secrets.yaml b/package/crds/lockbox.yandex-cloud.upjet.crossplane.io_secrets.yaml index b0bbb29..3a50c4c 100644 --- a/package/crds/lockbox.yandex-cloud.upjet.crossplane.io_secrets.yaml +++ b/package/crds/lockbox.yandex-cloud.upjet.crossplane.io_secrets.yaml @@ -81,9 +81,9 @@ spec: description: A description for the Yandex Cloud Lockbox secret. type: string folderId: - description: |- - ID of the folder that the Yandex Cloud Lockbox secret belongs to. - It will be deduced from provider configuration if not set explicitly. + description: ID of the folder that the Yandex Cloud Lockbox secret + belongs to. It will be deduced from provider configuration if + not set explicitly. type: string folderIdRef: description: Reference to a Folder in resourcemanager to populate @@ -249,6 +249,44 @@ spec: name: description: Name for the Yandex Cloud Lockbox secret. type: string + passwordPayloadSpecification: + description: Payload specification for password generation. + items: + properties: + excludedPunctuation: + description: String of punctuation characters to exclude + from the default. Requires include_punctuation = true. + Default is empty. + type: string + includeDigits: + description: Use digits in the generated password. Default + is true. + type: boolean + includeLowercase: + description: Use lowercase letters in the generated password. + Default is true. + type: boolean + includePunctuation: + description: Use punctuations (!"#$%&'()*+,-./:;<=>?@[\]^_{|}~`) + in the generated password. Default is true. + type: boolean + includeUppercase: + description: Use capital letters in the generated password. + Default is true. + type: boolean + includedPunctuation: + description: String of specific punctuation characters to + use. Requires include_punctuation = true. Default is empty. + type: string + length: + description: Length of generated password. Default is 36. + type: number + passwordKey: + description: The key with which the generated password will + be placed in the secret version. + type: string + type: object + type: array type: object initProvider: description: |- @@ -271,9 +309,9 @@ spec: description: A description for the Yandex Cloud Lockbox secret. type: string folderId: - description: |- - ID of the folder that the Yandex Cloud Lockbox secret belongs to. - It will be deduced from provider configuration if not set explicitly. + description: ID of the folder that the Yandex Cloud Lockbox secret + belongs to. It will be deduced from provider configuration if + not set explicitly. type: string folderIdRef: description: Reference to a Folder in resourcemanager to populate @@ -439,6 +477,44 @@ spec: name: description: Name for the Yandex Cloud Lockbox secret. type: string + passwordPayloadSpecification: + description: Payload specification for password generation. + items: + properties: + excludedPunctuation: + description: String of punctuation characters to exclude + from the default. Requires include_punctuation = true. + Default is empty. + type: string + includeDigits: + description: Use digits in the generated password. Default + is true. + type: boolean + includeLowercase: + description: Use lowercase letters in the generated password. + Default is true. + type: boolean + includePunctuation: + description: Use punctuations (!"#$%&'()*+,-./:;<=>?@[\]^_{|}~`) + in the generated password. Default is true. + type: boolean + includeUppercase: + description: Use capital letters in the generated password. + Default is true. + type: boolean + includedPunctuation: + description: String of specific punctuation characters to + use. Requires include_punctuation = true. Default is empty. + type: string + length: + description: Length of generated password. Default is 36. + type: number + passwordKey: + description: The key with which the generated password will + be placed in the secret version. + type: string + type: object + type: array type: object managementPolicies: default: @@ -623,9 +699,9 @@ spec: description: A description for the Yandex Cloud Lockbox secret. type: string folderId: - description: |- - ID of the folder that the Yandex Cloud Lockbox secret belongs to. - It will be deduced from provider configuration if not set explicitly. + description: ID of the folder that the Yandex Cloud Lockbox secret + belongs to. It will be deduced from provider configuration if + not set explicitly. type: string id: type: string @@ -643,6 +719,44 @@ spec: name: description: Name for the Yandex Cloud Lockbox secret. type: string + passwordPayloadSpecification: + description: Payload specification for password generation. + items: + properties: + excludedPunctuation: + description: String of punctuation characters to exclude + from the default. Requires include_punctuation = true. + Default is empty. + type: string + includeDigits: + description: Use digits in the generated password. Default + is true. + type: boolean + includeLowercase: + description: Use lowercase letters in the generated password. + Default is true. + type: boolean + includePunctuation: + description: Use punctuations (!"#$%&'()*+,-./:;<=>?@[\]^_{|}~`) + in the generated password. Default is true. + type: boolean + includeUppercase: + description: Use capital letters in the generated password. + Default is true. + type: boolean + includedPunctuation: + description: String of specific punctuation characters to + use. Requires include_punctuation = true. Default is empty. + type: string + length: + description: Length of generated password. Default is 36. + type: number + passwordKey: + description: The key with which the generated password will + be placed in the secret version. + type: string + type: object + type: array status: description: The Yandex Cloud Lockbox secret status. type: string diff --git a/package/crds/lockbox.yandex-cloud.upjet.crossplane.io_secretversions.yaml b/package/crds/lockbox.yandex-cloud.upjet.crossplane.io_secretversions.yaml index 10320d6..c965501 100644 --- a/package/crds/lockbox.yandex-cloud.upjet.crossplane.io_secretversions.yaml +++ b/package/crds/lockbox.yandex-cloud.upjet.crossplane.io_secretversions.yaml @@ -78,7 +78,7 @@ spec: type: string entries: description: List of entries in the Yandex Cloud Lockbox secret - version. + version. Must be omitted for secrets with a payload specification. items: properties: command: @@ -224,7 +224,7 @@ spec: type: string entries: description: List of entries in the Yandex Cloud Lockbox secret - version. + version. Must be omitted for secrets with a payload specification. items: properties: command: @@ -519,11 +519,6 @@ spec: required: - forProvider type: object - x-kubernetes-validations: - - message: spec.forProvider.entries is a required parameter - rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies - || ''Update'' in self.managementPolicies) || has(self.forProvider.entries) - || (has(self.initProvider) && has(self.initProvider.entries))' status: description: SecretVersionStatus defines the observed state of SecretVersion. properties: @@ -534,7 +529,7 @@ spec: type: string entries: description: List of entries in the Yandex Cloud Lockbox secret - version. + version. Must be omitted for secrets with a payload specification. items: properties: command: diff --git a/package/crds/logging.yandex-cloud.upjet.crossplane.io_groups.yaml b/package/crds/logging.yandex-cloud.upjet.crossplane.io_groups.yaml index 7ca4dba..ac890b8 100644 --- a/package/crds/logging.yandex-cloud.upjet.crossplane.io_groups.yaml +++ b/package/crds/logging.yandex-cloud.upjet.crossplane.io_groups.yaml @@ -79,9 +79,9 @@ spec: description: A description for the Yandex Cloud Logging group. type: string folderId: - description: |- - ID of the folder that the Yandex Cloud Logging group belongs to. - It will be deduced from provider configuration if not set explicitly. + description: ID of the folder that the Yandex Cloud Logging group + belongs to. It will be deduced from provider configuration if + not set explicitly. type: string folderIdRef: description: Reference to a Folder in resourcemanager to populate @@ -193,9 +193,9 @@ spec: description: A description for the Yandex Cloud Logging group. type: string folderId: - description: |- - ID of the folder that the Yandex Cloud Logging group belongs to. - It will be deduced from provider configuration if not set explicitly. + description: ID of the folder that the Yandex Cloud Logging group + belongs to. It will be deduced from provider configuration if + not set explicitly. type: string folderIdRef: description: Reference to a Folder in resourcemanager to populate @@ -473,9 +473,9 @@ spec: description: A description for the Yandex Cloud Logging group. type: string folderId: - description: |- - ID of the folder that the Yandex Cloud Logging group belongs to. - It will be deduced from provider configuration if not set explicitly. + description: ID of the folder that the Yandex Cloud Logging group + belongs to. It will be deduced from provider configuration if + not set explicitly. type: string id: description: The Yandex Cloud Logging group ID. diff --git a/package/crds/mdb.yandex-cloud.upjet.crossplane.io_clickhouseclusters.yaml b/package/crds/mdb.yandex-cloud.upjet.crossplane.io_clickhouseclusters.yaml index b45d0ae..cfd0cf8 100644 --- a/package/crds/mdb.yandex-cloud.upjet.crossplane.io_clickhouseclusters.yaml +++ b/package/crds/mdb.yandex-cloud.upjet.crossplane.io_clickhouseclusters.yaml @@ -122,6 +122,9 @@ spec: - name - namespace type: object + backupRetainPeriodDays: + description: The period in days during which backups are stored. + type: number backupWindowStart: description: Time to start the daily backup, in the UTC timezone. The structure is documented below. @@ -144,12 +147,32 @@ spec: description: Main ClickHouse cluster configuration. items: properties: + asynchronousInsertLogEnabled: + type: boolean + asynchronousInsertLogRetentionSize: + type: number + asynchronousInsertLogRetentionTime: + type: number + asynchronousMetricLogEnabled: + type: boolean + asynchronousMetricLogRetentionSize: + type: number + asynchronousMetricLogRetentionTime: + type: number + backgroundBufferFlushSchedulePoolSize: + type: number + backgroundCommonPoolSize: + type: number + backgroundDistributedSchedulePoolSize: + type: number backgroundFetchesPoolSize: type: number backgroundMergesMutationsConcurrencyRatio: type: number backgroundMessageBrokerSchedulePoolSize: type: number + backgroundMovePoolSize: + type: number backgroundPoolSize: type: number backgroundSchedulePoolSize: @@ -186,6 +209,8 @@ spec: description: A database of the ClickHouse cluster. The structure is documented below. type: string + dictionariesLazyLoad: + type: boolean geobaseEnabled: type: boolean geobaseUri: @@ -198,6 +223,11 @@ spec: name: description: The name of the user. type: string + pathColumnName: + description: 'The name of the column storing + the metric name (Graphite sensor). Default + value: Path.' + type: string pattern: description: Set of thinning rules. items: @@ -225,6 +255,21 @@ spec: type: array type: object type: array + timeColumnName: + description: 'The name of the column storing + the time of measuring the metric. Default + value: Time.' + type: string + valueColumnName: + description: 'The name of the column storing + the value of the metric at the time set in + time_column_name. Default value: Value.' + type: string + versionColumnName: + description: 'The name of the column storing + the version of the metric. Default value: + Timestamp.' + type: string type: object type: array kafka: @@ -232,6 +277,21 @@ spec: is documented below. items: properties: + autoOffsetReset: + description: 'Action to take when there is no + initial offset in offset store or the desired + offset is out of range: ''smallest'',''earliest'' + - automatically reset the offset to the smallest + offset, ''largest'',''latest'' - automatically + reset the offset to the largest offset, ''error'' + - trigger an error (ERR__AUTO_OFFSET_RESET) + which is retrieved by consuming messages and + checking ''message->err''.' + type: string + debug: + description: A comma-separated list of debug + contexts to enable. + type: string enableSslCertificateVerification: description: enable verification of SSL certificates. type: boolean @@ -295,6 +355,22 @@ spec: is documented below. items: properties: + autoOffsetReset: + description: 'Action to take when there + is no initial offset in offset store + or the desired offset is out of range: + ''smallest'',''earliest'' - automatically + reset the offset to the smallest offset, + ''largest'',''latest'' - automatically + reset the offset to the largest offset, + ''error'' - trigger an error (ERR__AUTO_OFFSET_RESET) + which is retrieved by consuming messages + and checking ''message->err''.' + type: string + debug: + description: A comma-separated list of + debug contexts to enable. + type: string enableSslCertificateVerification: description: enable verification of SSL certificates. @@ -354,9 +430,8 @@ spec: keepAliveTimeout: type: number logLevel: - description: |- - ClickHouse server parameters. For more information, see - the official documentation. + description: ClickHouse server parameters. For more + information, see the official documentation. type: string markCacheSize: type: number @@ -373,10 +448,41 @@ spec: is documented below. items: properties: + allowRemoteFsZeroCopyReplication: + description: When this setting has a value greater + than zero only a single replica starts the + merge immediately if merged part on shared + storage and allow_remote_fs_zero_copy_replication + is enabled. + type: boolean + checkSampleColumnIsCorrect: + description: 'Enables the check at table creation, + that the data type of a column for sampling + or sampling expression is correct. The data + type must be one of unsigned integer types: + UInt8, UInt16, UInt32, UInt64. Default value: + true.' + type: boolean cleanupDelayPeriod: description: Minimum period to clean old queue logs, blocks hashes and parts. type: number + inactivePartsToDelayInsert: + description: If the number of inactive parts + in a single partition in the table at least + that many the inactive_parts_to_delay_insert + value, an INSERT artificially slows down. + It is useful when a server fails to clean + up parts quickly enough. + type: number + inactivePartsToThrowInsert: + description: If the number of inactive parts + in a single partition more than the inactive_parts_to_throw_insert + value, INSERT is interrupted with the "Too + many inactive parts (N). Parts cleaning are + processing significantly slower than inserts" + exception. + type: number maxAvgPartSizeForTooManyParts: description: The too many parts check according to parts_to_delay_insert and parts_to_throw_insert @@ -391,12 +497,33 @@ spec: does not affect the thresholds on inactive parts or total parts. type: number + maxBytesToMergeAtMaxSpaceInPool: + description: The maximum total parts size (in + bytes) to be merged into one part, if there + are enough resources available. max_bytes_to_merge_at_max_space_in_pool + -- roughly corresponds to the maximum possible + part size created by an automatic background + merge. + type: number maxBytesToMergeAtMinSpaceInPool: description: 'Max bytes to merge at min space in pool: Maximum total size of a data part to merge when the number of free threads in the background pool is minimum.' type: number + maxCleanupDelayPeriod: + description: 'Maximum period to clean old queue + logs, blocks hashes and parts. Default value: + 300 seconds.' + type: number + maxMergeSelectingSleepMs: + description: 'Maximum sleep time for merge selecting, + a lower setting will trigger selecting tasks + in background_schedule_pool frequently which + result in large amount of requests to zookeeper + in large-scale clusters. Default value: 60000 + milliseconds (60 seconds).' + type: number maxNumberOfMergesWithTtlInPool: description: When there is more than specified number of merges with TTL entries in pool, @@ -412,6 +539,11 @@ spec: in the ReplicatedMergeTree queue at the same time.' type: number + mergeMaxBlockSize: + description: 'The number of rows that are read + from the merged parts into memory. Default + value: 8192.' + type: number mergeSelectingSleepMs: description: Sleep time for merge selecting when no part is selected. A lower setting @@ -449,6 +581,13 @@ spec: part that can be stored in Wide format. You can set one, both or none of these settings. type: number + numberOfFreeEntriesInPoolToExecuteMutation: + description: 'When there is less than specified + number of free entries in pool, do not execute + part mutations. This is to leave free threads + for regular merges and avoid "Too many parts". + Default value: 20.' + type: number numberOfFreeEntriesInPoolToLowerMaxSizeOfMerge: description: 'Number of free entries in pool to lower max size of merge: Threshold value @@ -482,9 +621,8 @@ spec: the hash blocks (the old ones wil be deleted).' type: number ttlOnlyDropParts: - description: Enables or disables complete dropping - of data parts where all rows are expired in - MergeTree tables. + description: Enables zero-copy replication when + a replica is located on a remote filesystem. type: boolean type: object type: array @@ -494,20 +632,77 @@ spec: type: number metricLogRetentionTime: type: number + opentelemetrySpanLogEnabled: + type: boolean + opentelemetrySpanLogRetentionSize: + type: number + opentelemetrySpanLogRetentionTime: + type: number partLogRetentionSize: type: number partLogRetentionTime: type: number + queryCache: + description: Query cache configuration. The structure + is documented below. + items: + properties: + maxEntries: + description: 'The maximum number of SELECT query + results stored in the cache. Default value: + 1024.' + type: number + maxEntrySizeInBytes: + description: 'The maximum size in bytes SELECT + query results may have to be saved in the + cache. Default value: 1048576 (1 MiB).' + type: number + maxEntrySizeInRows: + description: 'The maximum number of rows SELECT + query results may have to be saved in the + cache. Default value: 30000000 (30 mil).' + type: number + maxSizeInBytes: + description: 'The maximum cache size in bytes. + 0 means the query cache is disabled. Default + value: 1073741824 (1 GiB).' + type: number + type: object + type: array queryLogRetentionSize: type: number queryLogRetentionTime: type: number + queryMaskingRules: + description: Query masking rules configuration. The + structure is documented below. + items: + properties: + name: + description: The name of the user. + type: string + regexp: + description: Regular expression that the metric + name must match. + type: string + replace: + description: 'Substitution string for sensitive + data. Default value: six asterisks.' + type: string + type: object + type: array queryThreadLogEnabled: type: boolean queryThreadLogRetentionSize: type: number queryThreadLogRetentionTime: type: number + queryViewsLogEnabled: + type: boolean + queryViewsLogRetentionSize: + type: number + queryViewsLogRetentionTime: + type: number rabbitmq: description: RabbitMQ connection configuration. The structure is documented below. @@ -538,6 +733,12 @@ spec: type: string type: object type: array + sessionLogEnabled: + type: boolean + sessionLogRetentionSize: + type: number + sessionLogRetentionTime: + type: number textLogEnabled: type: boolean textLogLevel: @@ -558,6 +759,12 @@ spec: type: number uncompressedCacheSize: type: number + zookeeperLogEnabled: + type: boolean + zookeeperLogRetentionSize: + type: number + zookeeperLogRetentionTime: + type: number type: object type: array resources: @@ -570,8 +777,7 @@ spec: ZooKeeper host, in gigabytes. type: number diskTypeId: - description: |- - Type of the storage of ZooKeeper hosts. + description: Type of the storage of ZooKeeper hosts. For more information see the official documentation. type: string resourcePresetId: @@ -625,8 +831,8 @@ spec: type: object type: array deletionProtection: - description: Inhibits deletion of the cluster. Can be either - true or false. + description: Inhibits deletion of the cluster. Can be either true + or false. type: boolean description: description: Description of the ClickHouse cluster. @@ -641,9 +847,8 @@ spec: Can be either PRESTABLE or PRODUCTION. type: string folderId: - description: |- - The ID of the folder that the resource belongs to. If it - is not provided, the default provider folder is used. + description: The ID of the folder that the resource belongs to. + If it is not provided, the default provider folder is used. type: string folderIdRef: description: Reference to a Folder in resourcemanager to populate @@ -834,9 +1039,9 @@ spec: either CLICKHOUSE or ZOOKEEPER. type: string zone: - description: |- - The availability zone where the ClickHouse host will be created. - For more information see the official documentation. + description: The availability zone where the ClickHouse + host will be created. For more information see the official + documentation. type: string type: object type: array @@ -1148,8 +1353,7 @@ spec: ZooKeeper host, in gigabytes. type: number diskTypeId: - description: |- - Type of the storage of ZooKeeper hosts. + description: Type of the storage of ZooKeeper hosts. For more information see the official documentation. type: string resourcePresetId: @@ -1273,6 +1477,10 @@ spec: TABLE statements. Enabling this may increase merge times and memory consumption. type: boolean + anyJoinDistinctRightTableKeys: + description: enables legacy ClickHouse server behaviour + in ANY INNER|LEFT JOIN operations. + type: boolean asyncInsert: description: Enables asynchronous inserts. Disabled by default. @@ -1303,9 +1511,9 @@ spec: Default value: 16.' type: number cancelHttpReadonlyQueriesOnClientClose: - description: |- - Cancels HTTP read-only queries (e.g. SELECT) when a client closes the connection without waiting for the response. - Default value: false. + description: 'Cancels HTTP read-only queries (e.g. + SELECT) when a client closes the connection without + waiting for the response. Default value: false.' type: boolean compile: description: Enable compilation of queries. @@ -1330,6 +1538,23 @@ spec: should be used to perform the COUNT(DISTINCT …) construction. type: string + dateTimeInputFormat: + description: 'Allows choosing a parser of the text + representation of date and time, one of: best_effort, + basic, best_effort_us. Default value: basic. Cloud + default value: best_effort.' + type: string + dateTimeOutputFormat: + description: 'Allows choosing different output formats + of the text representation of date and time, one + of: simple, iso, unix_timestamp. Default value: + simple.' + type: string + deduplicateBlocksInDependentMaterializedViews: + description: Enables or disables the deduplication + check for materialized views that receive data from + Replicated* tables. + type: boolean distinctOverflowMode: description: 'Sets behaviour on overflow when using DISTINCT. Possible values:' @@ -1367,6 +1592,12 @@ spec: description: Disables query execution if indexing by the primary key is not possible. type: boolean + formatRegexp: + description: Regular expression (for Regexp format). + type: string + formatRegexpSkipUnmatched: + description: Skip lines unmatched by regular expression. + type: boolean groupByOverflowMode: description: 'Sets behaviour on overflow while GROUP BY operation. Possible values:' @@ -1379,6 +1610,11 @@ spec: description: Sets the threshold of the number of bytes, after that the two-level aggregation should be used. type: number + hedgedConnectionTimeoutMs: + description: 'Connection timeout for establishing + connection with replica for Hedged requests. Default + value: 50 milliseconds.' + type: number httpConnectionTimeout: description: Timeout for HTTP connection in milliseconds. type: number @@ -1392,6 +1628,11 @@ spec: httpSendTimeout: description: Timeout for HTTP connection in milliseconds. type: number + idleConnectionTimeout: + description: 'Timeout to close idle TCP connections + after specified number of seconds. Default value: + 3600 seconds.' + type: number inputFormatDefaultsForOmittedFields: description: When performing INSERT queries, replace omitted input column values with default values @@ -1401,6 +1642,11 @@ spec: description: Enables or disables the insertion of JSON data with nested objects. type: boolean + inputFormatNullAsDefault: + description: Enables or disables the initialization + of NULL fields with default values, if data type + of these fields is not nullable. + type: boolean inputFormatParallelParsing: description: Enables or disables order-preserving parallel parsing of data formats. Supported only @@ -1410,6 +1656,10 @@ spec: description: Enables or disables the full SQL parser if the fast stream parser can’t parse the data. type: boolean + inputFormatWithNamesUseHeader: + description: Enables or disables checking the column + order when inserting data. + type: boolean insertKeeperMaxRetries: description: The setting sets the maximum number of retries for ClickHouse Keeper (or ZooKeeper) requests @@ -1426,9 +1676,19 @@ spec: insertQuorum: description: Enables the quorum writes. type: number + insertQuorumParallel: + description: Enables or disables parallelism for quorum + INSERT queries. + type: boolean insertQuorumTimeout: description: Write to a quorum timeout in milliseconds. type: number + joinAlgorithm: + description: 'Specifies which JOIN algorithm is used. + Possible values:' + items: + type: string + type: array joinOverflowMode: description: 'Sets behaviour on overflow in JOIN. Possible values:' @@ -1442,10 +1702,24 @@ spec: description: Require aliases for subselects and table functions in FROM that more than one table is present. type: boolean + loadBalancing: + description: 'Specifies the algorithm of replicas + selection that is used for distributed query processing, + one of: random, nearest_hostname, in_order, first_or_random, + round_robin. Default value: random.' + type: string localFilesystemReadMethod: description: 'Method of reading data from local filesystem. Possible values:' type: string + logQueryThreads: + description: 'Setting up query threads logging. Query + threads log into the system.query_thread_log table. + This setting has effect only when log_queries is + true. Queries’ threads run by ClickHouse with this + setup are logged according to the rules in the query_thread_log + server configuration parameter. Default value: true.' + type: boolean lowCardinalityAllowInNativeFormat: description: Allows or restricts using the LowCardinality data type with the Native format. @@ -1524,6 +1798,10 @@ spec: description: The size of blocks (in a count of rows) to form for insertion into a table. type: number + maxInsertThreads: + description: 'The maximum number of threads to execute + the INSERT SELECT query. Default value: 0.' + type: number maxMemoryUsage: description: Limits the maximum memory usage (in bytes) for processing queries on a single server. @@ -1637,7 +1915,7 @@ spec: values: from 0 to 1. Default: 0.' type: number memoryProfilerStep: - description: 'Memory profiler step (in bytes). If + description: 'Memory profiler step (in bytes). If the next query step requires more memory than this parameter specifies, the memory profiler collects the allocating stack trace. Values lower than a @@ -1712,6 +1990,11 @@ spec: description: Enables +nan, -nan, +inf, -inf outputs in JSON output format. type: boolean + preferLocalhostReplica: + description: 'Enables/disables preferable using the + localhost replica when processing distributed queries. + Default value: true.' + type: boolean priority: description: Query priority. type: number @@ -1768,9 +2051,10 @@ spec: Possible values:' type: string timeoutBeforeCheckingExecutionSpeed: - description: |- - Timeout (in seconds) between checks of execution speed. It is checked that execution speed is not less that specified in min_execution_speed parameter. - Must be at least 1000. + description: Timeout (in seconds) between checks of + execution speed. It is checked that execution speed + is not less that specified in min_execution_speed + parameter. Must be at least 1000. type: number timeoutOverflowMode: description: 'Sets behaviour on overflow. Possible @@ -1784,6 +2068,18 @@ spec: description: Enables equality of NULL values for IN operator. type: boolean + useHedgedRequests: + description: 'Enables hedged requests logic for remote + queries. It allows to establish many connections + with different replicas for query. New connection + is enabled in case existent connection(s) with replica(s) + were not established within hedged_connection_timeout + or no data was received within receive_data_timeout. + Query uses the first connection which send non empty + progress packet (or data packet, if allow_changing_replica_until_first_data_packet); + other connections are cancelled. Queries with max_parallel_replicas + > 1 are supported. Default value: true.' + type: boolean useUncompressedCache: description: Whether to use a cache of uncompressed blocks. @@ -1820,8 +2116,7 @@ spec: ZooKeeper host, in gigabytes. type: number diskTypeId: - description: |- - Type of the storage of ZooKeeper hosts. + description: Type of the storage of ZooKeeper hosts. For more information see the official documentation. type: string resourcePresetId: @@ -1893,6 +2188,9 @@ spec: - name - namespace type: object + backupRetainPeriodDays: + description: The period in days during which backups are stored. + type: number backupWindowStart: description: Time to start the daily backup, in the UTC timezone. The structure is documented below. @@ -1915,12 +2213,32 @@ spec: description: Main ClickHouse cluster configuration. items: properties: + asynchronousInsertLogEnabled: + type: boolean + asynchronousInsertLogRetentionSize: + type: number + asynchronousInsertLogRetentionTime: + type: number + asynchronousMetricLogEnabled: + type: boolean + asynchronousMetricLogRetentionSize: + type: number + asynchronousMetricLogRetentionTime: + type: number + backgroundBufferFlushSchedulePoolSize: + type: number + backgroundCommonPoolSize: + type: number + backgroundDistributedSchedulePoolSize: + type: number backgroundFetchesPoolSize: type: number backgroundMergesMutationsConcurrencyRatio: type: number backgroundMessageBrokerSchedulePoolSize: type: number + backgroundMovePoolSize: + type: number backgroundPoolSize: type: number backgroundSchedulePoolSize: @@ -1957,6 +2275,8 @@ spec: description: A database of the ClickHouse cluster. The structure is documented below. type: string + dictionariesLazyLoad: + type: boolean geobaseEnabled: type: boolean geobaseUri: @@ -1969,6 +2289,11 @@ spec: name: description: The name of the user. type: string + pathColumnName: + description: 'The name of the column storing + the metric name (Graphite sensor). Default + value: Path.' + type: string pattern: description: Set of thinning rules. items: @@ -1996,6 +2321,21 @@ spec: type: array type: object type: array + timeColumnName: + description: 'The name of the column storing + the time of measuring the metric. Default + value: Time.' + type: string + valueColumnName: + description: 'The name of the column storing + the value of the metric at the time set in + time_column_name. Default value: Value.' + type: string + versionColumnName: + description: 'The name of the column storing + the version of the metric. Default value: + Timestamp.' + type: string type: object type: array kafka: @@ -2003,6 +2343,21 @@ spec: is documented below. items: properties: + autoOffsetReset: + description: 'Action to take when there is no + initial offset in offset store or the desired + offset is out of range: ''smallest'',''earliest'' + - automatically reset the offset to the smallest + offset, ''largest'',''latest'' - automatically + reset the offset to the largest offset, ''error'' + - trigger an error (ERR__AUTO_OFFSET_RESET) + which is retrieved by consuming messages and + checking ''message->err''.' + type: string + debug: + description: A comma-separated list of debug + contexts to enable. + type: string enableSslCertificateVerification: description: enable verification of SSL certificates. type: boolean @@ -2066,6 +2421,22 @@ spec: is documented below. items: properties: + autoOffsetReset: + description: 'Action to take when there + is no initial offset in offset store + or the desired offset is out of range: + ''smallest'',''earliest'' - automatically + reset the offset to the smallest offset, + ''largest'',''latest'' - automatically + reset the offset to the largest offset, + ''error'' - trigger an error (ERR__AUTO_OFFSET_RESET) + which is retrieved by consuming messages + and checking ''message->err''.' + type: string + debug: + description: A comma-separated list of + debug contexts to enable. + type: string enableSslCertificateVerification: description: enable verification of SSL certificates. @@ -2125,9 +2496,8 @@ spec: keepAliveTimeout: type: number logLevel: - description: |- - ClickHouse server parameters. For more information, see - the official documentation. + description: ClickHouse server parameters. For more + information, see the official documentation. type: string markCacheSize: type: number @@ -2144,10 +2514,41 @@ spec: is documented below. items: properties: + allowRemoteFsZeroCopyReplication: + description: When this setting has a value greater + than zero only a single replica starts the + merge immediately if merged part on shared + storage and allow_remote_fs_zero_copy_replication + is enabled. + type: boolean + checkSampleColumnIsCorrect: + description: 'Enables the check at table creation, + that the data type of a column for sampling + or sampling expression is correct. The data + type must be one of unsigned integer types: + UInt8, UInt16, UInt32, UInt64. Default value: + true.' + type: boolean cleanupDelayPeriod: description: Minimum period to clean old queue logs, blocks hashes and parts. type: number + inactivePartsToDelayInsert: + description: If the number of inactive parts + in a single partition in the table at least + that many the inactive_parts_to_delay_insert + value, an INSERT artificially slows down. + It is useful when a server fails to clean + up parts quickly enough. + type: number + inactivePartsToThrowInsert: + description: If the number of inactive parts + in a single partition more than the inactive_parts_to_throw_insert + value, INSERT is interrupted with the "Too + many inactive parts (N). Parts cleaning are + processing significantly slower than inserts" + exception. + type: number maxAvgPartSizeForTooManyParts: description: The too many parts check according to parts_to_delay_insert and parts_to_throw_insert @@ -2162,12 +2563,33 @@ spec: does not affect the thresholds on inactive parts or total parts. type: number + maxBytesToMergeAtMaxSpaceInPool: + description: The maximum total parts size (in + bytes) to be merged into one part, if there + are enough resources available. max_bytes_to_merge_at_max_space_in_pool + -- roughly corresponds to the maximum possible + part size created by an automatic background + merge. + type: number maxBytesToMergeAtMinSpaceInPool: description: 'Max bytes to merge at min space in pool: Maximum total size of a data part to merge when the number of free threads in the background pool is minimum.' type: number + maxCleanupDelayPeriod: + description: 'Maximum period to clean old queue + logs, blocks hashes and parts. Default value: + 300 seconds.' + type: number + maxMergeSelectingSleepMs: + description: 'Maximum sleep time for merge selecting, + a lower setting will trigger selecting tasks + in background_schedule_pool frequently which + result in large amount of requests to zookeeper + in large-scale clusters. Default value: 60000 + milliseconds (60 seconds).' + type: number maxNumberOfMergesWithTtlInPool: description: When there is more than specified number of merges with TTL entries in pool, @@ -2183,6 +2605,11 @@ spec: in the ReplicatedMergeTree queue at the same time.' type: number + mergeMaxBlockSize: + description: 'The number of rows that are read + from the merged parts into memory. Default + value: 8192.' + type: number mergeSelectingSleepMs: description: Sleep time for merge selecting when no part is selected. A lower setting @@ -2220,6 +2647,13 @@ spec: part that can be stored in Wide format. You can set one, both or none of these settings. type: number + numberOfFreeEntriesInPoolToExecuteMutation: + description: 'When there is less than specified + number of free entries in pool, do not execute + part mutations. This is to leave free threads + for regular merges and avoid "Too many parts". + Default value: 20.' + type: number numberOfFreeEntriesInPoolToLowerMaxSizeOfMerge: description: 'Number of free entries in pool to lower max size of merge: Threshold value @@ -2253,9 +2687,8 @@ spec: the hash blocks (the old ones wil be deleted).' type: number ttlOnlyDropParts: - description: Enables or disables complete dropping - of data parts where all rows are expired in - MergeTree tables. + description: Enables zero-copy replication when + a replica is located on a remote filesystem. type: boolean type: object type: array @@ -2265,20 +2698,77 @@ spec: type: number metricLogRetentionTime: type: number + opentelemetrySpanLogEnabled: + type: boolean + opentelemetrySpanLogRetentionSize: + type: number + opentelemetrySpanLogRetentionTime: + type: number partLogRetentionSize: type: number partLogRetentionTime: type: number + queryCache: + description: Query cache configuration. The structure + is documented below. + items: + properties: + maxEntries: + description: 'The maximum number of SELECT query + results stored in the cache. Default value: + 1024.' + type: number + maxEntrySizeInBytes: + description: 'The maximum size in bytes SELECT + query results may have to be saved in the + cache. Default value: 1048576 (1 MiB).' + type: number + maxEntrySizeInRows: + description: 'The maximum number of rows SELECT + query results may have to be saved in the + cache. Default value: 30000000 (30 mil).' + type: number + maxSizeInBytes: + description: 'The maximum cache size in bytes. + 0 means the query cache is disabled. Default + value: 1073741824 (1 GiB).' + type: number + type: object + type: array queryLogRetentionSize: type: number queryLogRetentionTime: type: number + queryMaskingRules: + description: Query masking rules configuration. The + structure is documented below. + items: + properties: + name: + description: The name of the user. + type: string + regexp: + description: Regular expression that the metric + name must match. + type: string + replace: + description: 'Substitution string for sensitive + data. Default value: six asterisks.' + type: string + type: object + type: array queryThreadLogEnabled: type: boolean queryThreadLogRetentionSize: type: number queryThreadLogRetentionTime: type: number + queryViewsLogEnabled: + type: boolean + queryViewsLogRetentionSize: + type: number + queryViewsLogRetentionTime: + type: number rabbitmq: description: RabbitMQ connection configuration. The structure is documented below. @@ -2309,6 +2799,12 @@ spec: type: string type: object type: array + sessionLogEnabled: + type: boolean + sessionLogRetentionSize: + type: number + sessionLogRetentionTime: + type: number textLogEnabled: type: boolean textLogLevel: @@ -2329,6 +2825,12 @@ spec: type: number uncompressedCacheSize: type: number + zookeeperLogEnabled: + type: boolean + zookeeperLogRetentionSize: + type: number + zookeeperLogRetentionTime: + type: number type: object type: array resources: @@ -2341,8 +2843,7 @@ spec: ZooKeeper host, in gigabytes. type: number diskTypeId: - description: |- - Type of the storage of ZooKeeper hosts. + description: Type of the storage of ZooKeeper hosts. For more information see the official documentation. type: string resourcePresetId: @@ -2396,8 +2897,8 @@ spec: type: object type: array deletionProtection: - description: Inhibits deletion of the cluster. Can be either - true or false. + description: Inhibits deletion of the cluster. Can be either true + or false. type: boolean description: description: Description of the ClickHouse cluster. @@ -2412,9 +2913,8 @@ spec: Can be either PRESTABLE or PRODUCTION. type: string folderId: - description: |- - The ID of the folder that the resource belongs to. If it - is not provided, the default provider folder is used. + description: The ID of the folder that the resource belongs to. + If it is not provided, the default provider folder is used. type: string folderIdRef: description: Reference to a Folder in resourcemanager to populate @@ -2605,9 +3105,9 @@ spec: either CLICKHOUSE or ZOOKEEPER. type: string zone: - description: |- - The availability zone where the ClickHouse host will be created. - For more information see the official documentation. + description: The availability zone where the ClickHouse + host will be created. For more information see the official + documentation. type: string type: object type: array @@ -2919,8 +3419,7 @@ spec: ZooKeeper host, in gigabytes. type: number diskTypeId: - description: |- - Type of the storage of ZooKeeper hosts. + description: Type of the storage of ZooKeeper hosts. For more information see the official documentation. type: string resourcePresetId: @@ -3044,6 +3543,10 @@ spec: TABLE statements. Enabling this may increase merge times and memory consumption. type: boolean + anyJoinDistinctRightTableKeys: + description: enables legacy ClickHouse server behaviour + in ANY INNER|LEFT JOIN operations. + type: boolean asyncInsert: description: Enables asynchronous inserts. Disabled by default. @@ -3074,9 +3577,9 @@ spec: Default value: 16.' type: number cancelHttpReadonlyQueriesOnClientClose: - description: |- - Cancels HTTP read-only queries (e.g. SELECT) when a client closes the connection without waiting for the response. - Default value: false. + description: 'Cancels HTTP read-only queries (e.g. + SELECT) when a client closes the connection without + waiting for the response. Default value: false.' type: boolean compile: description: Enable compilation of queries. @@ -3101,6 +3604,23 @@ spec: should be used to perform the COUNT(DISTINCT …) construction. type: string + dateTimeInputFormat: + description: 'Allows choosing a parser of the text + representation of date and time, one of: best_effort, + basic, best_effort_us. Default value: basic. Cloud + default value: best_effort.' + type: string + dateTimeOutputFormat: + description: 'Allows choosing different output formats + of the text representation of date and time, one + of: simple, iso, unix_timestamp. Default value: + simple.' + type: string + deduplicateBlocksInDependentMaterializedViews: + description: Enables or disables the deduplication + check for materialized views that receive data from + Replicated* tables. + type: boolean distinctOverflowMode: description: 'Sets behaviour on overflow when using DISTINCT. Possible values:' @@ -3138,6 +3658,12 @@ spec: description: Disables query execution if indexing by the primary key is not possible. type: boolean + formatRegexp: + description: Regular expression (for Regexp format). + type: string + formatRegexpSkipUnmatched: + description: Skip lines unmatched by regular expression. + type: boolean groupByOverflowMode: description: 'Sets behaviour on overflow while GROUP BY operation. Possible values:' @@ -3150,6 +3676,11 @@ spec: description: Sets the threshold of the number of bytes, after that the two-level aggregation should be used. type: number + hedgedConnectionTimeoutMs: + description: 'Connection timeout for establishing + connection with replica for Hedged requests. Default + value: 50 milliseconds.' + type: number httpConnectionTimeout: description: Timeout for HTTP connection in milliseconds. type: number @@ -3163,6 +3694,11 @@ spec: httpSendTimeout: description: Timeout for HTTP connection in milliseconds. type: number + idleConnectionTimeout: + description: 'Timeout to close idle TCP connections + after specified number of seconds. Default value: + 3600 seconds.' + type: number inputFormatDefaultsForOmittedFields: description: When performing INSERT queries, replace omitted input column values with default values @@ -3172,6 +3708,11 @@ spec: description: Enables or disables the insertion of JSON data with nested objects. type: boolean + inputFormatNullAsDefault: + description: Enables or disables the initialization + of NULL fields with default values, if data type + of these fields is not nullable. + type: boolean inputFormatParallelParsing: description: Enables or disables order-preserving parallel parsing of data formats. Supported only @@ -3181,6 +3722,10 @@ spec: description: Enables or disables the full SQL parser if the fast stream parser can’t parse the data. type: boolean + inputFormatWithNamesUseHeader: + description: Enables or disables checking the column + order when inserting data. + type: boolean insertKeeperMaxRetries: description: The setting sets the maximum number of retries for ClickHouse Keeper (or ZooKeeper) requests @@ -3197,9 +3742,19 @@ spec: insertQuorum: description: Enables the quorum writes. type: number + insertQuorumParallel: + description: Enables or disables parallelism for quorum + INSERT queries. + type: boolean insertQuorumTimeout: description: Write to a quorum timeout in milliseconds. type: number + joinAlgorithm: + description: 'Specifies which JOIN algorithm is used. + Possible values:' + items: + type: string + type: array joinOverflowMode: description: 'Sets behaviour on overflow in JOIN. Possible values:' @@ -3213,10 +3768,24 @@ spec: description: Require aliases for subselects and table functions in FROM that more than one table is present. type: boolean + loadBalancing: + description: 'Specifies the algorithm of replicas + selection that is used for distributed query processing, + one of: random, nearest_hostname, in_order, first_or_random, + round_robin. Default value: random.' + type: string localFilesystemReadMethod: description: 'Method of reading data from local filesystem. Possible values:' type: string + logQueryThreads: + description: 'Setting up query threads logging. Query + threads log into the system.query_thread_log table. + This setting has effect only when log_queries is + true. Queries’ threads run by ClickHouse with this + setup are logged according to the rules in the query_thread_log + server configuration parameter. Default value: true.' + type: boolean lowCardinalityAllowInNativeFormat: description: Allows or restricts using the LowCardinality data type with the Native format. @@ -3295,6 +3864,10 @@ spec: description: The size of blocks (in a count of rows) to form for insertion into a table. type: number + maxInsertThreads: + description: 'The maximum number of threads to execute + the INSERT SELECT query. Default value: 0.' + type: number maxMemoryUsage: description: Limits the maximum memory usage (in bytes) for processing queries on a single server. @@ -3408,7 +3981,7 @@ spec: values: from 0 to 1. Default: 0.' type: number memoryProfilerStep: - description: 'Memory profiler step (in bytes). If + description: 'Memory profiler step (in bytes). If the next query step requires more memory than this parameter specifies, the memory profiler collects the allocating stack trace. Values lower than a @@ -3483,6 +4056,11 @@ spec: description: Enables +nan, -nan, +inf, -inf outputs in JSON output format. type: boolean + preferLocalhostReplica: + description: 'Enables/disables preferable using the + localhost replica when processing distributed queries. + Default value: true.' + type: boolean priority: description: Query priority. type: number @@ -3539,9 +4117,10 @@ spec: Possible values:' type: string timeoutBeforeCheckingExecutionSpeed: - description: |- - Timeout (in seconds) between checks of execution speed. It is checked that execution speed is not less that specified in min_execution_speed parameter. - Must be at least 1000. + description: Timeout (in seconds) between checks of + execution speed. It is checked that execution speed + is not less that specified in min_execution_speed + parameter. Must be at least 1000. type: number timeoutOverflowMode: description: 'Sets behaviour on overflow. Possible @@ -3555,6 +4134,18 @@ spec: description: Enables equality of NULL values for IN operator. type: boolean + useHedgedRequests: + description: 'Enables hedged requests logic for remote + queries. It allows to establish many connections + with different replicas for query. New connection + is enabled in case existent connection(s) with replica(s) + were not established within hedged_connection_timeout + or no data was received within receive_data_timeout. + Query uses the first connection which send non empty + progress packet (or data packet, if allow_changing_replica_until_first_data_packet); + other connections are cancelled. Queries with max_parallel_replicas + > 1 are supported. Default value: true.' + type: boolean useUncompressedCache: description: Whether to use a cache of uncompressed blocks. @@ -3593,8 +4184,7 @@ spec: ZooKeeper host, in gigabytes. type: number diskTypeId: - description: |- - Type of the storage of ZooKeeper hosts. + description: Type of the storage of ZooKeeper hosts. For more information see the official documentation. type: string resourcePresetId: @@ -3820,6 +4410,9 @@ spec: type: boolean type: object type: array + backupRetainPeriodDays: + description: The period in days during which backups are stored. + type: number backupWindowStart: description: Time to start the daily backup, in the UTC timezone. The structure is documented below. @@ -3842,12 +4435,32 @@ spec: description: Main ClickHouse cluster configuration. items: properties: + asynchronousInsertLogEnabled: + type: boolean + asynchronousInsertLogRetentionSize: + type: number + asynchronousInsertLogRetentionTime: + type: number + asynchronousMetricLogEnabled: + type: boolean + asynchronousMetricLogRetentionSize: + type: number + asynchronousMetricLogRetentionTime: + type: number + backgroundBufferFlushSchedulePoolSize: + type: number + backgroundCommonPoolSize: + type: number + backgroundDistributedSchedulePoolSize: + type: number backgroundFetchesPoolSize: type: number backgroundMergesMutationsConcurrencyRatio: type: number backgroundMessageBrokerSchedulePoolSize: type: number + backgroundMovePoolSize: + type: number backgroundPoolSize: type: number backgroundSchedulePoolSize: @@ -3884,6 +4497,8 @@ spec: description: A database of the ClickHouse cluster. The structure is documented below. type: string + dictionariesLazyLoad: + type: boolean geobaseEnabled: type: boolean geobaseUri: @@ -3896,6 +4511,11 @@ spec: name: description: The name of the user. type: string + pathColumnName: + description: 'The name of the column storing + the metric name (Graphite sensor). Default + value: Path.' + type: string pattern: description: Set of thinning rules. items: @@ -3923,6 +4543,21 @@ spec: type: array type: object type: array + timeColumnName: + description: 'The name of the column storing + the time of measuring the metric. Default + value: Time.' + type: string + valueColumnName: + description: 'The name of the column storing + the value of the metric at the time set in + time_column_name. Default value: Value.' + type: string + versionColumnName: + description: 'The name of the column storing + the version of the metric. Default value: + Timestamp.' + type: string type: object type: array kafka: @@ -3930,6 +4565,21 @@ spec: is documented below. items: properties: + autoOffsetReset: + description: 'Action to take when there is no + initial offset in offset store or the desired + offset is out of range: ''smallest'',''earliest'' + - automatically reset the offset to the smallest + offset, ''largest'',''latest'' - automatically + reset the offset to the largest offset, ''error'' + - trigger an error (ERR__AUTO_OFFSET_RESET) + which is retrieved by consuming messages and + checking ''message->err''.' + type: string + debug: + description: A comma-separated list of debug + contexts to enable. + type: string enableSslCertificateVerification: description: enable verification of SSL certificates. type: boolean @@ -3976,6 +4626,22 @@ spec: is documented below. items: properties: + autoOffsetReset: + description: 'Action to take when there + is no initial offset in offset store + or the desired offset is out of range: + ''smallest'',''earliest'' - automatically + reset the offset to the smallest offset, + ''largest'',''latest'' - automatically + reset the offset to the largest offset, + ''error'' - trigger an error (ERR__AUTO_OFFSET_RESET) + which is retrieved by consuming messages + and checking ''message->err''.' + type: string + debug: + description: A comma-separated list of + debug contexts to enable. + type: string enableSslCertificateVerification: description: enable verification of SSL certificates. @@ -4018,9 +4684,8 @@ spec: keepAliveTimeout: type: number logLevel: - description: |- - ClickHouse server parameters. For more information, see - the official documentation. + description: ClickHouse server parameters. For more + information, see the official documentation. type: string markCacheSize: type: number @@ -4037,10 +4702,41 @@ spec: is documented below. items: properties: + allowRemoteFsZeroCopyReplication: + description: When this setting has a value greater + than zero only a single replica starts the + merge immediately if merged part on shared + storage and allow_remote_fs_zero_copy_replication + is enabled. + type: boolean + checkSampleColumnIsCorrect: + description: 'Enables the check at table creation, + that the data type of a column for sampling + or sampling expression is correct. The data + type must be one of unsigned integer types: + UInt8, UInt16, UInt32, UInt64. Default value: + true.' + type: boolean cleanupDelayPeriod: description: Minimum period to clean old queue logs, blocks hashes and parts. type: number + inactivePartsToDelayInsert: + description: If the number of inactive parts + in a single partition in the table at least + that many the inactive_parts_to_delay_insert + value, an INSERT artificially slows down. + It is useful when a server fails to clean + up parts quickly enough. + type: number + inactivePartsToThrowInsert: + description: If the number of inactive parts + in a single partition more than the inactive_parts_to_throw_insert + value, INSERT is interrupted with the "Too + many inactive parts (N). Parts cleaning are + processing significantly slower than inserts" + exception. + type: number maxAvgPartSizeForTooManyParts: description: The too many parts check according to parts_to_delay_insert and parts_to_throw_insert @@ -4055,12 +4751,33 @@ spec: does not affect the thresholds on inactive parts or total parts. type: number + maxBytesToMergeAtMaxSpaceInPool: + description: The maximum total parts size (in + bytes) to be merged into one part, if there + are enough resources available. max_bytes_to_merge_at_max_space_in_pool + -- roughly corresponds to the maximum possible + part size created by an automatic background + merge. + type: number maxBytesToMergeAtMinSpaceInPool: description: 'Max bytes to merge at min space in pool: Maximum total size of a data part to merge when the number of free threads in the background pool is minimum.' type: number + maxCleanupDelayPeriod: + description: 'Maximum period to clean old queue + logs, blocks hashes and parts. Default value: + 300 seconds.' + type: number + maxMergeSelectingSleepMs: + description: 'Maximum sleep time for merge selecting, + a lower setting will trigger selecting tasks + in background_schedule_pool frequently which + result in large amount of requests to zookeeper + in large-scale clusters. Default value: 60000 + milliseconds (60 seconds).' + type: number maxNumberOfMergesWithTtlInPool: description: When there is more than specified number of merges with TTL entries in pool, @@ -4076,6 +4793,11 @@ spec: in the ReplicatedMergeTree queue at the same time.' type: number + mergeMaxBlockSize: + description: 'The number of rows that are read + from the merged parts into memory. Default + value: 8192.' + type: number mergeSelectingSleepMs: description: Sleep time for merge selecting when no part is selected. A lower setting @@ -4113,6 +4835,13 @@ spec: part that can be stored in Wide format. You can set one, both or none of these settings. type: number + numberOfFreeEntriesInPoolToExecuteMutation: + description: 'When there is less than specified + number of free entries in pool, do not execute + part mutations. This is to leave free threads + for regular merges and avoid "Too many parts". + Default value: 20.' + type: number numberOfFreeEntriesInPoolToLowerMaxSizeOfMerge: description: 'Number of free entries in pool to lower max size of merge: Threshold value @@ -4146,9 +4875,8 @@ spec: the hash blocks (the old ones wil be deleted).' type: number ttlOnlyDropParts: - description: Enables or disables complete dropping - of data parts where all rows are expired in - MergeTree tables. + description: Enables zero-copy replication when + a replica is located on a remote filesystem. type: boolean type: object type: array @@ -4158,20 +4886,77 @@ spec: type: number metricLogRetentionTime: type: number + opentelemetrySpanLogEnabled: + type: boolean + opentelemetrySpanLogRetentionSize: + type: number + opentelemetrySpanLogRetentionTime: + type: number partLogRetentionSize: type: number partLogRetentionTime: type: number + queryCache: + description: Query cache configuration. The structure + is documented below. + items: + properties: + maxEntries: + description: 'The maximum number of SELECT query + results stored in the cache. Default value: + 1024.' + type: number + maxEntrySizeInBytes: + description: 'The maximum size in bytes SELECT + query results may have to be saved in the + cache. Default value: 1048576 (1 MiB).' + type: number + maxEntrySizeInRows: + description: 'The maximum number of rows SELECT + query results may have to be saved in the + cache. Default value: 30000000 (30 mil).' + type: number + maxSizeInBytes: + description: 'The maximum cache size in bytes. + 0 means the query cache is disabled. Default + value: 1073741824 (1 GiB).' + type: number + type: object + type: array queryLogRetentionSize: type: number queryLogRetentionTime: type: number + queryMaskingRules: + description: Query masking rules configuration. The + structure is documented below. + items: + properties: + name: + description: The name of the user. + type: string + regexp: + description: Regular expression that the metric + name must match. + type: string + replace: + description: 'Substitution string for sensitive + data. Default value: six asterisks.' + type: string + type: object + type: array queryThreadLogEnabled: type: boolean queryThreadLogRetentionSize: type: number queryThreadLogRetentionTime: type: number + queryViewsLogEnabled: + type: boolean + queryViewsLogRetentionSize: + type: number + queryViewsLogRetentionTime: + type: number rabbitmq: description: RabbitMQ connection configuration. The structure is documented below. @@ -4185,6 +4970,12 @@ spec: type: string type: object type: array + sessionLogEnabled: + type: boolean + sessionLogRetentionSize: + type: number + sessionLogRetentionTime: + type: number textLogEnabled: type: boolean textLogLevel: @@ -4205,6 +4996,12 @@ spec: type: number uncompressedCacheSize: type: number + zookeeperLogEnabled: + type: boolean + zookeeperLogRetentionSize: + type: number + zookeeperLogRetentionTime: + type: number type: object type: array resources: @@ -4217,8 +5014,7 @@ spec: ZooKeeper host, in gigabytes. type: number diskTypeId: - description: |- - Type of the storage of ZooKeeper hosts. + description: Type of the storage of ZooKeeper hosts. For more information see the official documentation. type: string resourcePresetId: @@ -4275,8 +5071,8 @@ spec: type: object type: array deletionProtection: - description: Inhibits deletion of the cluster. Can be either - true or false. + description: Inhibits deletion of the cluster. Can be either true + or false. type: boolean description: description: Description of the ClickHouse cluster. @@ -4291,9 +5087,8 @@ spec: Can be either PRESTABLE or PRODUCTION. type: string folderId: - description: |- - The ID of the folder that the resource belongs to. If it - is not provided, the default provider folder is used. + description: The ID of the folder that the resource belongs to. + If it is not provided, the default provider folder is used. type: string formatSchema: description: A set of protobuf or capnproto format schemas. The @@ -4313,9 +5108,9 @@ spec: type: object type: array health: - description: |- - Aggregated health of the cluster. Can be ALIVE, DEGRADED, DEAD or HEALTH_UNKNOWN. - For more information see health field of JSON representation in the official documentation. + description: Aggregated health of the cluster. Can be ALIVE, DEGRADED, + DEAD or HEALTH_UNKNOWN. For more information see health field + of JSON representation in the official documentation. type: string host: description: A host of the ClickHouse cluster. The structure is @@ -4343,9 +5138,9 @@ spec: either CLICKHOUSE or ZOOKEEPER. type: string zone: - description: |- - The availability zone where the ClickHouse host will be created. - For more information see the official documentation. + description: The availability zone where the ClickHouse + host will be created. For more information see the official + documentation. type: string type: object type: array @@ -4431,8 +5226,7 @@ spec: ZooKeeper host, in gigabytes. type: number diskTypeId: - description: |- - Type of the storage of ZooKeeper hosts. + description: Type of the storage of ZooKeeper hosts. For more information see the official documentation. type: string resourcePresetId: @@ -4471,9 +5265,10 @@ spec: description: Enables admin user with user management permission. type: boolean status: - description: |- - Status of the cluster. Can be CREATING, STARTING, RUNNING, UPDATING, STOPPING, STOPPED, ERROR or STATUS_UNKNOWN. - For more information see status field of JSON representation in the official documentation. + description: Status of the cluster. Can be CREATING, STARTING, + RUNNING, UPDATING, STOPPING, STOPPED, ERROR or STATUS_UNKNOWN. + For more information see status field of JSON representation + in the official documentation. type: string user: description: A user of the ClickHouse cluster. The structure is @@ -4544,6 +5339,10 @@ spec: TABLE statements. Enabling this may increase merge times and memory consumption. type: boolean + anyJoinDistinctRightTableKeys: + description: enables legacy ClickHouse server behaviour + in ANY INNER|LEFT JOIN operations. + type: boolean asyncInsert: description: Enables asynchronous inserts. Disabled by default. @@ -4574,9 +5373,9 @@ spec: Default value: 16.' type: number cancelHttpReadonlyQueriesOnClientClose: - description: |- - Cancels HTTP read-only queries (e.g. SELECT) when a client closes the connection without waiting for the response. - Default value: false. + description: 'Cancels HTTP read-only queries (e.g. + SELECT) when a client closes the connection without + waiting for the response. Default value: false.' type: boolean compile: description: Enable compilation of queries. @@ -4601,6 +5400,23 @@ spec: should be used to perform the COUNT(DISTINCT …) construction. type: string + dateTimeInputFormat: + description: 'Allows choosing a parser of the text + representation of date and time, one of: best_effort, + basic, best_effort_us. Default value: basic. Cloud + default value: best_effort.' + type: string + dateTimeOutputFormat: + description: 'Allows choosing different output formats + of the text representation of date and time, one + of: simple, iso, unix_timestamp. Default value: + simple.' + type: string + deduplicateBlocksInDependentMaterializedViews: + description: Enables or disables the deduplication + check for materialized views that receive data from + Replicated* tables. + type: boolean distinctOverflowMode: description: 'Sets behaviour on overflow when using DISTINCT. Possible values:' @@ -4638,6 +5454,12 @@ spec: description: Disables query execution if indexing by the primary key is not possible. type: boolean + formatRegexp: + description: Regular expression (for Regexp format). + type: string + formatRegexpSkipUnmatched: + description: Skip lines unmatched by regular expression. + type: boolean groupByOverflowMode: description: 'Sets behaviour on overflow while GROUP BY operation. Possible values:' @@ -4650,6 +5472,11 @@ spec: description: Sets the threshold of the number of bytes, after that the two-level aggregation should be used. type: number + hedgedConnectionTimeoutMs: + description: 'Connection timeout for establishing + connection with replica for Hedged requests. Default + value: 50 milliseconds.' + type: number httpConnectionTimeout: description: Timeout for HTTP connection in milliseconds. type: number @@ -4663,6 +5490,11 @@ spec: httpSendTimeout: description: Timeout for HTTP connection in milliseconds. type: number + idleConnectionTimeout: + description: 'Timeout to close idle TCP connections + after specified number of seconds. Default value: + 3600 seconds.' + type: number inputFormatDefaultsForOmittedFields: description: When performing INSERT queries, replace omitted input column values with default values @@ -4672,6 +5504,11 @@ spec: description: Enables or disables the insertion of JSON data with nested objects. type: boolean + inputFormatNullAsDefault: + description: Enables or disables the initialization + of NULL fields with default values, if data type + of these fields is not nullable. + type: boolean inputFormatParallelParsing: description: Enables or disables order-preserving parallel parsing of data formats. Supported only @@ -4681,6 +5518,10 @@ spec: description: Enables or disables the full SQL parser if the fast stream parser can’t parse the data. type: boolean + inputFormatWithNamesUseHeader: + description: Enables or disables checking the column + order when inserting data. + type: boolean insertKeeperMaxRetries: description: The setting sets the maximum number of retries for ClickHouse Keeper (or ZooKeeper) requests @@ -4697,9 +5538,19 @@ spec: insertQuorum: description: Enables the quorum writes. type: number + insertQuorumParallel: + description: Enables or disables parallelism for quorum + INSERT queries. + type: boolean insertQuorumTimeout: description: Write to a quorum timeout in milliseconds. type: number + joinAlgorithm: + description: 'Specifies which JOIN algorithm is used. + Possible values:' + items: + type: string + type: array joinOverflowMode: description: 'Sets behaviour on overflow in JOIN. Possible values:' @@ -4713,10 +5564,24 @@ spec: description: Require aliases for subselects and table functions in FROM that more than one table is present. type: boolean + loadBalancing: + description: 'Specifies the algorithm of replicas + selection that is used for distributed query processing, + one of: random, nearest_hostname, in_order, first_or_random, + round_robin. Default value: random.' + type: string localFilesystemReadMethod: description: 'Method of reading data from local filesystem. Possible values:' type: string + logQueryThreads: + description: 'Setting up query threads logging. Query + threads log into the system.query_thread_log table. + This setting has effect only when log_queries is + true. Queries’ threads run by ClickHouse with this + setup are logged according to the rules in the query_thread_log + server configuration parameter. Default value: true.' + type: boolean lowCardinalityAllowInNativeFormat: description: Allows or restricts using the LowCardinality data type with the Native format. @@ -4795,6 +5660,10 @@ spec: description: The size of blocks (in a count of rows) to form for insertion into a table. type: number + maxInsertThreads: + description: 'The maximum number of threads to execute + the INSERT SELECT query. Default value: 0.' + type: number maxMemoryUsage: description: Limits the maximum memory usage (in bytes) for processing queries on a single server. @@ -4908,7 +5777,7 @@ spec: values: from 0 to 1. Default: 0.' type: number memoryProfilerStep: - description: 'Memory profiler step (in bytes). If + description: 'Memory profiler step (in bytes). If the next query step requires more memory than this parameter specifies, the memory profiler collects the allocating stack trace. Values lower than a @@ -4983,6 +5852,11 @@ spec: description: Enables +nan, -nan, +inf, -inf outputs in JSON output format. type: boolean + preferLocalhostReplica: + description: 'Enables/disables preferable using the + localhost replica when processing distributed queries. + Default value: true.' + type: boolean priority: description: Query priority. type: number @@ -5039,9 +5913,10 @@ spec: Possible values:' type: string timeoutBeforeCheckingExecutionSpeed: - description: |- - Timeout (in seconds) between checks of execution speed. It is checked that execution speed is not less that specified in min_execution_speed parameter. - Must be at least 1000. + description: Timeout (in seconds) between checks of + execution speed. It is checked that execution speed + is not less that specified in min_execution_speed + parameter. Must be at least 1000. type: number timeoutOverflowMode: description: 'Sets behaviour on overflow. Possible @@ -5055,6 +5930,18 @@ spec: description: Enables equality of NULL values for IN operator. type: boolean + useHedgedRequests: + description: 'Enables hedged requests logic for remote + queries. It allows to establish many connections + with different replicas for query. New connection + is enabled in case existent connection(s) with replica(s) + were not established within hedged_connection_timeout + or no data was received within receive_data_timeout. + Query uses the first connection which send non empty + progress packet (or data packet, if allow_changing_replica_until_first_data_packet); + other connections are cancelled. Queries with max_parallel_replicas + > 1 are supported. Default value: true.' + type: boolean useUncompressedCache: description: Whether to use a cache of uncompressed blocks. @@ -5091,8 +5978,7 @@ spec: ZooKeeper host, in gigabytes. type: number diskTypeId: - description: |- - Type of the storage of ZooKeeper hosts. + description: Type of the storage of ZooKeeper hosts. For more information see the official documentation. type: string resourcePresetId: diff --git a/package/crds/mdb.yandex-cloud.upjet.crossplane.io_elasticsearchclusters.yaml b/package/crds/mdb.yandex-cloud.upjet.crossplane.io_elasticsearchclusters.yaml index 5ad0617..5f2b4e0 100644 --- a/package/crds/mdb.yandex-cloud.upjet.crossplane.io_elasticsearchclusters.yaml +++ b/package/crds/mdb.yandex-cloud.upjet.crossplane.io_elasticsearchclusters.yaml @@ -161,8 +161,8 @@ spec: type: object type: array deletionProtection: - description: Inhibits deletion of the cluster. Can be either - true or false. + description: Inhibits deletion of the cluster. Can be either true + or false. type: boolean description: description: Description of the Elasticsearch cluster. @@ -264,9 +264,9 @@ spec: description: User defined host name. type: string subnetId: - description: |- - The ID of the subnet, to which the host belongs. The subnet must - be a part of the network to which the cluster belongs. + description: The ID of the subnet, to which the host belongs. + The subnet must be a part of the network to which the + cluster belongs. type: string subnetIdRef: description: Reference to a Subnet in vpc to populate subnetId. @@ -347,9 +347,9 @@ spec: either DATA_NODE or MASTER_NODE. type: string zone: - description: |- - The availability zone where the Elasticsearch host will be created. - For more information see the official documentation. + description: The availability zone where the Elasticsearch + host will be created. For more information see the official + documentation. type: string type: object type: array @@ -729,8 +729,8 @@ spec: type: object type: array deletionProtection: - description: Inhibits deletion of the cluster. Can be either - true or false. + description: Inhibits deletion of the cluster. Can be either true + or false. type: boolean description: description: Description of the Elasticsearch cluster. @@ -832,9 +832,9 @@ spec: description: User defined host name. type: string subnetId: - description: |- - The ID of the subnet, to which the host belongs. The subnet must - be a part of the network to which the cluster belongs. + description: The ID of the subnet, to which the host belongs. + The subnet must be a part of the network to which the + cluster belongs. type: string subnetIdRef: description: Reference to a Subnet in vpc to populate subnetId. @@ -915,9 +915,9 @@ spec: either DATA_NODE or MASTER_NODE. type: string zone: - description: |- - The availability zone where the Elasticsearch host will be created. - For more information see the official documentation. + description: The availability zone where the Elasticsearch + host will be created. For more information see the official + documentation. type: string type: object type: array @@ -1454,8 +1454,8 @@ spec: description: Creation timestamp of the key. type: string deletionProtection: - description: Inhibits deletion of the cluster. Can be either - true or false. + description: Inhibits deletion of the cluster. Can be either true + or false. type: boolean description: description: Description of the Elasticsearch cluster. @@ -1469,9 +1469,9 @@ spec: If it is not provided, the default provider folder is used. type: string health: - description: |- - Aggregated health of the cluster. Can be either ALIVE, DEGRADED, DEAD or HEALTH_UNKNOWN. - For more information see health field of JSON representation in the official documentation. + description: Aggregated health of the cluster. Can be either ALIVE, + DEGRADED, DEAD or HEALTH_UNKNOWN. For more information see health + field of JSON representation in the official documentation. type: string host: description: A host of the Elasticsearch cluster. The structure @@ -1489,18 +1489,18 @@ spec: description: User defined host name. type: string subnetId: - description: |- - The ID of the subnet, to which the host belongs. The subnet must - be a part of the network to which the cluster belongs. + description: The ID of the subnet, to which the host belongs. + The subnet must be a part of the network to which the + cluster belongs. type: string type: description: The type of the host to be deployed. Can be either DATA_NODE or MASTER_NODE. type: string zone: - description: |- - The availability zone where the Elasticsearch host will be created. - For more information see the official documentation. + description: The availability zone where the Elasticsearch + host will be created. For more information see the official + documentation. type: string type: object type: array @@ -1551,9 +1551,10 @@ spec: description: ID of the service account authorized for this cluster. type: string status: - description: |- - Status of the cluster. Can be either CREATING, STARTING, RUNNING, UPDATING, STOPPING, STOPPED, ERROR or STATUS_UNKNOWN. - For more information see status field of JSON representation in the official documentation. + description: Status of the cluster. Can be either CREATING, STARTING, + RUNNING, UPDATING, STOPPING, STOPPED, ERROR or STATUS_UNKNOWN. + For more information see status field of JSON representation + in the official documentation. type: string type: object conditions: diff --git a/package/crds/mdb.yandex-cloud.upjet.crossplane.io_greenplumclusters.yaml b/package/crds/mdb.yandex-cloud.upjet.crossplane.io_greenplumclusters.yaml index 60e66ca..82f57bc 100644 --- a/package/crds/mdb.yandex-cloud.upjet.crossplane.io_greenplumclusters.yaml +++ b/package/crds/mdb.yandex-cloud.upjet.crossplane.io_greenplumclusters.yaml @@ -88,6 +88,9 @@ spec: description: Allows access for SQL queries in the management console. type: boolean + yandexQuery: + description: Allow access for Yandex Query + type: boolean type: object type: array assignPublicIp: @@ -95,6 +98,97 @@ spec: IP address on creation. Changing this parameter for an existing host is not supported at the moment. type: boolean + backgroundActivities: + items: + properties: + analyzeAndVacuum: + description: Block to configure 'ANALYZE' and 'VACUUM' daily + operations. + items: + properties: + analyzeTimeout: + description: Maximum duration of the ANALYZE operation, + in seconds. The default value is 36000. As soon + as this period expires, the ANALYZE operation will + be forced to terminate. + type: number + startTime: + description: Time of day in 'HH:MM' format when scripts + should run. + type: string + vacuumTimeout: + description: Maximum duration of the VACUUM operation, + in seconds. The default value is 36000. As soon + as this period expires, the VACUUM operation will + be forced to terminate. + type: number + type: object + type: array + queryKillerIdle: + description: Block to configure script that kills long running + queries that are in idle state. + items: + properties: + enable: + description: Flag that indicates whether script is + enabled. + type: boolean + ignoreUsers: + description: List of users to ignore when considering + queries to terminate. + items: + type: string + type: array + maxAge: + description: Maximum duration for this type of queries + (in seconds). + type: number + type: object + type: array + queryKillerIdleInTransaction: + description: block to configure script that kills long running + queries that are in idle in transaction state. + items: + properties: + enable: + description: Flag that indicates whether script is + enabled. + type: boolean + ignoreUsers: + description: List of users to ignore when considering + queries to terminate. + items: + type: string + type: array + maxAge: + description: Maximum duration for this type of queries + (in seconds). + type: number + type: object + type: array + queryKillerLongRunning: + description: block to configure script that kills long running + queries (in any state). + items: + properties: + enable: + description: Flag that indicates whether script is + enabled. + type: boolean + ignoreUsers: + description: List of users to ignore when considering + queries to terminate. + items: + type: string + type: array + maxAge: + description: Maximum duration for this type of queries + (in seconds). + type: number + type: object + type: array + type: object + type: array backupWindowStart: description: Time to start the daily backup, in the UTC timezone. The structure is documented below. @@ -120,8 +214,8 @@ spec: type: object type: array deletionProtection: - description: Inhibits deletion of the cluster. Can be either - true or false. + description: Inhibits deletion of the cluster. Can be either true + or false. type: boolean description: description: Description of the Greenplum cluster. @@ -131,9 +225,8 @@ spec: (PRODUCTION, PRESTABLE) type: string folderId: - description: |- - The ID of the folder that the resource belongs to. If it - is not provided, the default provider folder is used. + description: The ID of the folder that the resource belongs to. + If it is not provided, the default provider folder is used. type: string folderIdRef: description: Reference to a Folder in resourcemanager to populate @@ -248,6 +341,13 @@ spec: masterHostCount: description: Number of hosts in master subcluster (1 or 2). type: number + masterHostGroupIds: + description: A list of IDs of the host groups to place master + subclusters' VMs of the cluster on. + items: + type: string + type: array + x-kubernetes-list-type: set masterSubcluster: description: Settings for master subcluster. The structure is documented below. @@ -502,6 +602,13 @@ spec: description: Number of hosts in segment subcluster (from 1 to 32). type: number + segmentHostGroupIds: + description: A list of IDs of the host groups to place segment + subclusters' VMs of the cluster on. + items: + type: string + type: array + x-kubernetes-list-type: set segmentInHost: description: Number of segments on segment host (not more then 1 + RAM/8). @@ -662,6 +769,9 @@ spec: description: Allows access for SQL queries in the management console. type: boolean + yandexQuery: + description: Allow access for Yandex Query + type: boolean type: object type: array assignPublicIp: @@ -669,6 +779,97 @@ spec: IP address on creation. Changing this parameter for an existing host is not supported at the moment. type: boolean + backgroundActivities: + items: + properties: + analyzeAndVacuum: + description: Block to configure 'ANALYZE' and 'VACUUM' daily + operations. + items: + properties: + analyzeTimeout: + description: Maximum duration of the ANALYZE operation, + in seconds. The default value is 36000. As soon + as this period expires, the ANALYZE operation will + be forced to terminate. + type: number + startTime: + description: Time of day in 'HH:MM' format when scripts + should run. + type: string + vacuumTimeout: + description: Maximum duration of the VACUUM operation, + in seconds. The default value is 36000. As soon + as this period expires, the VACUUM operation will + be forced to terminate. + type: number + type: object + type: array + queryKillerIdle: + description: Block to configure script that kills long running + queries that are in idle state. + items: + properties: + enable: + description: Flag that indicates whether script is + enabled. + type: boolean + ignoreUsers: + description: List of users to ignore when considering + queries to terminate. + items: + type: string + type: array + maxAge: + description: Maximum duration for this type of queries + (in seconds). + type: number + type: object + type: array + queryKillerIdleInTransaction: + description: block to configure script that kills long running + queries that are in idle in transaction state. + items: + properties: + enable: + description: Flag that indicates whether script is + enabled. + type: boolean + ignoreUsers: + description: List of users to ignore when considering + queries to terminate. + items: + type: string + type: array + maxAge: + description: Maximum duration for this type of queries + (in seconds). + type: number + type: object + type: array + queryKillerLongRunning: + description: block to configure script that kills long running + queries (in any state). + items: + properties: + enable: + description: Flag that indicates whether script is + enabled. + type: boolean + ignoreUsers: + description: List of users to ignore when considering + queries to terminate. + items: + type: string + type: array + maxAge: + description: Maximum duration for this type of queries + (in seconds). + type: number + type: object + type: array + type: object + type: array backupWindowStart: description: Time to start the daily backup, in the UTC timezone. The structure is documented below. @@ -694,8 +895,8 @@ spec: type: object type: array deletionProtection: - description: Inhibits deletion of the cluster. Can be either - true or false. + description: Inhibits deletion of the cluster. Can be either true + or false. type: boolean description: description: Description of the Greenplum cluster. @@ -705,9 +906,8 @@ spec: (PRODUCTION, PRESTABLE) type: string folderId: - description: |- - The ID of the folder that the resource belongs to. If it - is not provided, the default provider folder is used. + description: The ID of the folder that the resource belongs to. + If it is not provided, the default provider folder is used. type: string folderIdRef: description: Reference to a Folder in resourcemanager to populate @@ -822,6 +1022,13 @@ spec: masterHostCount: description: Number of hosts in master subcluster (1 or 2). type: number + masterHostGroupIds: + description: A list of IDs of the host groups to place master + subclusters' VMs of the cluster on. + items: + type: string + type: array + x-kubernetes-list-type: set masterSubcluster: description: Settings for master subcluster. The structure is documented below. @@ -1076,6 +1283,13 @@ spec: description: Number of hosts in segment subcluster (from 1 to 32). type: number + segmentHostGroupIds: + description: A list of IDs of the host groups to place segment + subclusters' VMs of the cluster on. + items: + type: string + type: array + x-kubernetes-list-type: set segmentInHost: description: Number of segments on segment host (not more then 1 + RAM/8). @@ -1445,6 +1659,9 @@ spec: description: Allows access for SQL queries in the management console. type: boolean + yandexQuery: + description: Allow access for Yandex Query + type: boolean type: object type: array assignPublicIp: @@ -1452,6 +1669,97 @@ spec: IP address on creation. Changing this parameter for an existing host is not supported at the moment. type: boolean + backgroundActivities: + items: + properties: + analyzeAndVacuum: + description: Block to configure 'ANALYZE' and 'VACUUM' daily + operations. + items: + properties: + analyzeTimeout: + description: Maximum duration of the ANALYZE operation, + in seconds. The default value is 36000. As soon + as this period expires, the ANALYZE operation will + be forced to terminate. + type: number + startTime: + description: Time of day in 'HH:MM' format when scripts + should run. + type: string + vacuumTimeout: + description: Maximum duration of the VACUUM operation, + in seconds. The default value is 36000. As soon + as this period expires, the VACUUM operation will + be forced to terminate. + type: number + type: object + type: array + queryKillerIdle: + description: Block to configure script that kills long running + queries that are in idle state. + items: + properties: + enable: + description: Flag that indicates whether script is + enabled. + type: boolean + ignoreUsers: + description: List of users to ignore when considering + queries to terminate. + items: + type: string + type: array + maxAge: + description: Maximum duration for this type of queries + (in seconds). + type: number + type: object + type: array + queryKillerIdleInTransaction: + description: block to configure script that kills long running + queries that are in idle in transaction state. + items: + properties: + enable: + description: Flag that indicates whether script is + enabled. + type: boolean + ignoreUsers: + description: List of users to ignore when considering + queries to terminate. + items: + type: string + type: array + maxAge: + description: Maximum duration for this type of queries + (in seconds). + type: number + type: object + type: array + queryKillerLongRunning: + description: block to configure script that kills long running + queries (in any state). + items: + properties: + enable: + description: Flag that indicates whether script is + enabled. + type: boolean + ignoreUsers: + description: List of users to ignore when considering + queries to terminate. + items: + type: string + type: array + maxAge: + description: Maximum duration for this type of queries + (in seconds). + type: number + type: object + type: array + type: object + type: array backupWindowStart: description: Time to start the daily backup, in the UTC timezone. The structure is documented below. @@ -1480,8 +1788,8 @@ spec: description: Creation timestamp of the cluster. type: string deletionProtection: - description: Inhibits deletion of the cluster. Can be either - true or false. + description: Inhibits deletion of the cluster. Can be either true + or false. type: boolean description: description: Description of the Greenplum cluster. @@ -1491,9 +1799,8 @@ spec: (PRODUCTION, PRESTABLE) type: string folderId: - description: |- - The ID of the folder that the resource belongs to. If it - is not provided, the default provider folder is used. + description: The ID of the folder that the resource belongs to. + If it is not provided, the default provider folder is used. type: string greenplumConfig: additionalProperties: @@ -1537,6 +1844,13 @@ spec: masterHostCount: description: Number of hosts in master subcluster (1 or 2). type: number + masterHostGroupIds: + description: A list of IDs of the host groups to place master + subclusters' VMs of the cluster on. + items: + type: string + type: array + x-kubernetes-list-type: set masterHosts: description: (Computed) Info about hosts in master subcluster. The structure is documented below. @@ -1654,6 +1968,13 @@ spec: description: Number of hosts in segment subcluster (from 1 to 32). type: number + segmentHostGroupIds: + description: A list of IDs of the host groups to place segment + subclusters' VMs of the cluster on. + items: + type: string + type: array + x-kubernetes-list-type: set segmentHosts: description: (Computed) Info about hosts in segment subcluster. The structure is documented below. diff --git a/package/crds/mdb.yandex-cloud.upjet.crossplane.io_kafkaclusters.yaml b/package/crds/mdb.yandex-cloud.upjet.crossplane.io_kafkaclusters.yaml index b6eb98f..e6e4831 100644 --- a/package/crds/mdb.yandex-cloud.upjet.crossplane.io_kafkaclusters.yaml +++ b/package/crds/mdb.yandex-cloud.upjet.crossplane.io_kafkaclusters.yaml @@ -96,6 +96,29 @@ spec: description: Count of brokers per availability zone. The default is 1. type: number + diskSizeAutoscaling: + description: Disk autoscaling settings of the Kafka cluster. + The structure is documented below. + items: + properties: + diskSizeLimit: + description: Maximum possible size of disk in bytes. + type: number + emergencyUsageThreshold: + description: Percent of disk utilization. Disk will + autoscale immediately, if this threshold reached. + Value is between 0 and 100. Default value is 0 (autoscaling + disabled). Must be not less then 'planned_usage_threshold' + value. + type: number + plannedUsageThreshold: + description: Percent of disk utilization. During maintenance + disk will autoscale, if this threshold reached. + Value is between 0 and 100. Default value is 0 (autoscaling + disabled). + type: number + type: object + type: array kafka: description: Configuration of the Kafka subcluster. The structure is documented below. @@ -109,9 +132,8 @@ spec: autoCreateTopicsEnable: type: boolean compressionType: - description: |- - Kafka topic settings. For more information, see - the official documentation + description: Kafka topic settings. For more + information, see the official documentation and the Kafka documentation. type: string defaultReplicationFactor: @@ -168,9 +190,9 @@ spec: to a ZooKeeper host, in gigabytes. type: number diskTypeId: - description: |- - Type of the storage of ZooKeeper hosts. - For more information see the official documentation. + description: Type of the storage of ZooKeeper + hosts. For more information see the official + documentation. type: string resourcePresetId: type: string @@ -207,9 +229,9 @@ spec: to a ZooKeeper host, in gigabytes. type: number diskTypeId: - description: |- - Type of the storage of ZooKeeper hosts. - For more information see the official documentation. + description: Type of the storage of ZooKeeper + hosts. For more information see the official + documentation. type: string resourcePresetId: type: string @@ -220,16 +242,15 @@ spec: type: object type: array deletionProtection: - description: Inhibits deletion of the cluster. Can be either - true or false. + description: Inhibits deletion of the cluster. Can be either true + or false. type: boolean description: description: Description of the Kafka cluster. type: string environment: - description: |- - Deployment environment of the Kafka cluster. Can be either PRESTABLE or PRODUCTION. - The default is PRODUCTION. + description: Deployment environment of the Kafka cluster. Can + be either PRESTABLE or PRODUCTION. The default is PRODUCTION. type: string folderId: description: The ID of the folder that the resource belongs to. @@ -616,10 +637,8 @@ spec: cleanupPolicy: type: string compressionType: - description: |- - Kafka topic settings. For more information, see - the official documentation - and the Kafka documentation. + description: Kafka topic settings. For more information, + see the official documentation and the Kafka documentation. type: string deleteRetentionMs: type: string @@ -732,6 +751,29 @@ spec: description: Count of brokers per availability zone. The default is 1. type: number + diskSizeAutoscaling: + description: Disk autoscaling settings of the Kafka cluster. + The structure is documented below. + items: + properties: + diskSizeLimit: + description: Maximum possible size of disk in bytes. + type: number + emergencyUsageThreshold: + description: Percent of disk utilization. Disk will + autoscale immediately, if this threshold reached. + Value is between 0 and 100. Default value is 0 (autoscaling + disabled). Must be not less then 'planned_usage_threshold' + value. + type: number + plannedUsageThreshold: + description: Percent of disk utilization. During maintenance + disk will autoscale, if this threshold reached. + Value is between 0 and 100. Default value is 0 (autoscaling + disabled). + type: number + type: object + type: array kafka: description: Configuration of the Kafka subcluster. The structure is documented below. @@ -745,9 +787,8 @@ spec: autoCreateTopicsEnable: type: boolean compressionType: - description: |- - Kafka topic settings. For more information, see - the official documentation + description: Kafka topic settings. For more + information, see the official documentation and the Kafka documentation. type: string defaultReplicationFactor: @@ -804,9 +845,9 @@ spec: to a ZooKeeper host, in gigabytes. type: number diskTypeId: - description: |- - Type of the storage of ZooKeeper hosts. - For more information see the official documentation. + description: Type of the storage of ZooKeeper + hosts. For more information see the official + documentation. type: string resourcePresetId: type: string @@ -843,9 +884,9 @@ spec: to a ZooKeeper host, in gigabytes. type: number diskTypeId: - description: |- - Type of the storage of ZooKeeper hosts. - For more information see the official documentation. + description: Type of the storage of ZooKeeper + hosts. For more information see the official + documentation. type: string resourcePresetId: type: string @@ -856,16 +897,15 @@ spec: type: object type: array deletionProtection: - description: Inhibits deletion of the cluster. Can be either - true or false. + description: Inhibits deletion of the cluster. Can be either true + or false. type: boolean description: description: Description of the Kafka cluster. type: string environment: - description: |- - Deployment environment of the Kafka cluster. Can be either PRESTABLE or PRODUCTION. - The default is PRODUCTION. + description: Deployment environment of the Kafka cluster. Can + be either PRESTABLE or PRODUCTION. The default is PRODUCTION. type: string folderId: description: The ID of the folder that the resource belongs to. @@ -1252,10 +1292,8 @@ spec: cleanupPolicy: type: string compressionType: - description: |- - Kafka topic settings. For more information, see - the official documentation - and the Kafka documentation. + description: Kafka topic settings. For more information, + see the official documentation and the Kafka documentation. type: string deleteRetentionMs: type: string @@ -1538,6 +1576,29 @@ spec: description: Count of brokers per availability zone. The default is 1. type: number + diskSizeAutoscaling: + description: Disk autoscaling settings of the Kafka cluster. + The structure is documented below. + items: + properties: + diskSizeLimit: + description: Maximum possible size of disk in bytes. + type: number + emergencyUsageThreshold: + description: Percent of disk utilization. Disk will + autoscale immediately, if this threshold reached. + Value is between 0 and 100. Default value is 0 (autoscaling + disabled). Must be not less then 'planned_usage_threshold' + value. + type: number + plannedUsageThreshold: + description: Percent of disk utilization. During maintenance + disk will autoscale, if this threshold reached. + Value is between 0 and 100. Default value is 0 (autoscaling + disabled). + type: number + type: object + type: array kafka: description: Configuration of the Kafka subcluster. The structure is documented below. @@ -1551,9 +1612,8 @@ spec: autoCreateTopicsEnable: type: boolean compressionType: - description: |- - Kafka topic settings. For more information, see - the official documentation + description: Kafka topic settings. For more + information, see the official documentation and the Kafka documentation. type: string defaultReplicationFactor: @@ -1610,9 +1670,9 @@ spec: to a ZooKeeper host, in gigabytes. type: number diskTypeId: - description: |- - Type of the storage of ZooKeeper hosts. - For more information see the official documentation. + description: Type of the storage of ZooKeeper + hosts. For more information see the official + documentation. type: string resourcePresetId: type: string @@ -1649,9 +1709,9 @@ spec: to a ZooKeeper host, in gigabytes. type: number diskTypeId: - description: |- - Type of the storage of ZooKeeper hosts. - For more information see the official documentation. + description: Type of the storage of ZooKeeper + hosts. For more information see the official + documentation. type: string resourcePresetId: type: string @@ -1665,25 +1725,24 @@ spec: description: Timestamp of cluster creation. type: string deletionProtection: - description: Inhibits deletion of the cluster. Can be either - true or false. + description: Inhibits deletion of the cluster. Can be either true + or false. type: boolean description: description: Description of the Kafka cluster. type: string environment: - description: |- - Deployment environment of the Kafka cluster. Can be either PRESTABLE or PRODUCTION. - The default is PRODUCTION. + description: Deployment environment of the Kafka cluster. Can + be either PRESTABLE or PRODUCTION. The default is PRODUCTION. type: string folderId: description: The ID of the folder that the resource belongs to. If it is not provided, the default provider folder is used. type: string health: - description: |- - Aggregated health of the cluster. Can be either ALIVE, DEGRADED, DEAD or HEALTH_UNKNOWN. - For more information see health field of JSON representation in the official documentation. + description: Aggregated health of the cluster. Can be either ALIVE, + DEGRADED, DEAD or HEALTH_UNKNOWN. For more information see health + field of JSON representation in the official documentation. type: string host: description: A host of the Kafka cluster. The structure is documented @@ -1762,9 +1821,10 @@ spec: type: array x-kubernetes-list-type: set status: - description: |- - Status of the cluster. Can be either CREATING, STARTING, RUNNING, UPDATING, STOPPING, STOPPED, ERROR or STATUS_UNKNOWN. - For more information see status field of JSON representation in the official documentation. + description: Status of the cluster. Can be either CREATING, STARTING, + RUNNING, UPDATING, STOPPING, STOPPED, ERROR or STATUS_UNKNOWN. + For more information see status field of JSON representation + in the official documentation. type: string subnetIds: description: IDs of the subnets, to which the Kafka cluster belongs. @@ -1794,10 +1854,8 @@ spec: cleanupPolicy: type: string compressionType: - description: |- - Kafka topic settings. For more information, see - the official documentation - and the Kafka documentation. + description: Kafka topic settings. For more information, + see the official documentation and the Kafka documentation. type: string deleteRetentionMs: type: string diff --git a/package/crds/mdb.yandex-cloud.upjet.crossplane.io_kafkatopics.yaml b/package/crds/mdb.yandex-cloud.upjet.crossplane.io_kafkatopics.yaml index 1fee9c0..e2a561f 100644 --- a/package/crds/mdb.yandex-cloud.upjet.crossplane.io_kafkatopics.yaml +++ b/package/crds/mdb.yandex-cloud.upjet.crossplane.io_kafkatopics.yaml @@ -165,10 +165,8 @@ spec: items: properties: cleanupPolicy: - description: |- - Kafka topic settings. For more information, see - the official documentation - and the Kafka documentation. + description: Kafka topic settings. For more information, + see the official documentation and the Kafka documentation. type: string compressionType: type: string @@ -302,10 +300,8 @@ spec: items: properties: cleanupPolicy: - description: |- - Kafka topic settings. For more information, see - the official documentation - and the Kafka documentation. + description: Kafka topic settings. For more information, + see the official documentation and the Kafka documentation. type: string compressionType: type: string @@ -539,10 +535,8 @@ spec: items: properties: cleanupPolicy: - description: |- - Kafka topic settings. For more information, see - the official documentation - and the Kafka documentation. + description: Kafka topic settings. For more information, + see the official documentation and the Kafka documentation. type: string compressionType: type: string diff --git a/package/crds/mdb.yandex-cloud.upjet.crossplane.io_mongodbclusters.yaml b/package/crds/mdb.yandex-cloud.upjet.crossplane.io_mongodbclusters.yaml index 09a51a6..c9aebe1 100644 --- a/package/crds/mdb.yandex-cloud.upjet.crossplane.io_mongodbclusters.yaml +++ b/package/crds/mdb.yandex-cloud.upjet.crossplane.io_mongodbclusters.yaml @@ -119,59 +119,57 @@ spec: items: properties: net: - description: |- - A set of network settings - (see the net option). - The structure is documented below. + description: A set of network settings (see the net + option). The structure is documented below. items: properties: maxIncomingConnections: - description: |- - The maximum number of simultaneous connections that host will accept. - For more information, see the net.maxIncomingConnections + description: The maximum number of simultaneous + connections that host will accept. For more + information, see the net.maxIncomingConnections description in the official documentation. type: number type: object type: array operationProfiling: - description: |- - A set of profiling settings - (see the operationProfiling option). - The structure is documented below. + description: A set of profiling settings (see the + operationProfiling option). The structure is documented + below. items: properties: mode: - description: |- - Specifies which operations should be profiled. The following profiler levels are available: off, slow_op, all. - For more information, see the operationProfiling.mode - description in the official documentation. + description: 'Specifies which operations should + be profiled. The following profiler levels + are available: off, slow_op, all. For more + information, see the operationProfiling.mode + description in the official documentation.' type: string slowOpThreshold: - description: |- - The slow operation time threshold, in milliseconds. Operations that run for longer than this threshold are considered slow. - For more information, see the operationProfiling.slowOpThresholdMs + description: The slow operation time threshold, + in milliseconds. Operations that run for longer + than this threshold are considered slow. For + more information, see the operationProfiling.slowOpThresholdMs description in the official documentation. type: number type: object type: array storage: - description: |- - A set of storage settings - (see the storage option). - The structure is documented below. + description: A set of storage settings (see the storage + option). The structure is documented below. items: properties: wiredTiger: - description: |- - The WiredTiger engine settings. - (see the storage.wiredTiger option). - These settings available only on mongod hosts. The structure is documented below. + description: The WiredTiger engine settings. + (see the storage.wiredTiger option). These + settings available only on mongod hosts. The + structure is documented below. items: properties: cacheSizeGb: - description: |- - Defines the maximum size of the internal cache that WiredTiger will use for all data. - For more information, see the storage.wiredTiger.engineConfig.cacheSizeGB + description: Defines the maximum size + of the internal cache that WiredTiger + will use for all data. For more information, + see the storage.wiredTiger.engineConfig.cacheSizeGB description in the official documentation. type: number type: object @@ -186,125 +184,133 @@ spec: items: properties: auditLog: - description: |- - A set of audit log settings - (see the auditLog option). - The structure is documented below. Available only in enterprise edition. + description: A set of audit log settings (see the + auditLog option). The structure is documented below. + Available only in enterprise edition. items: properties: filter: - description: |- - Configuration of the audit log filter in JSON format. - For more information see auditLog.filter - description in the official documentation. Available only in enterprise edition. + description: Configuration of the audit log + filter in JSON format. For more information + see auditLog.filter description in the official + documentation. Available only in enterprise + edition. type: string runtimeConfiguration: - description: |- - Specifies if a node allows runtime configuration of audit filters and the auditAuthorizationSuccess variable. - For more information see auditLog.runtimeConfiguration - description in the official documentation. Available only in enterprise edition. + description: Specifies if a node allows runtime + configuration of audit filters and the auditAuthorizationSuccess + variable. For more information see auditLog.runtimeConfiguration + description in the official documentation. + Available only in enterprise edition. type: boolean type: object type: array net: - description: |- - A set of network settings - (see the net option). - The structure is documented below. + description: A set of network settings (see the net + option). The structure is documented below. items: properties: compressors: - description: |- - Specifies the default compressor(s) to use for communication between this mongod or mongos. - Accepts array of compressors. Order matters. Available compressors: snappy, zlib, zstd, disabled. To disable network compression, make "disabled" the only value. - For more information, see the net.Compression.Compressors - description in the official documentation. + description: 'Specifies the default compressor(s) + to use for communication between this mongod + or mongos. Accepts array of compressors. Order + matters. Available compressors: snappy, zlib, + zstd, disabled. To disable network compression, + make "disabled" the only value. For more information, + see the net.Compression.Compressors description + in the official documentation.' items: type: string type: array maxIncomingConnections: - description: |- - The maximum number of simultaneous connections that host will accept. - For more information, see the net.maxIncomingConnections + description: The maximum number of simultaneous + connections that host will accept. For more + information, see the net.maxIncomingConnections description in the official documentation. type: number type: object type: array operationProfiling: - description: |- - A set of profiling settings - (see the operationProfiling option). - The structure is documented below. + description: A set of profiling settings (see the + operationProfiling option). The structure is documented + below. items: properties: mode: - description: |- - Specifies which operations should be profiled. The following profiler levels are available: off, slow_op, all. - For more information, see the operationProfiling.mode - description in the official documentation. + description: 'Specifies which operations should + be profiled. The following profiler levels + are available: off, slow_op, all. For more + information, see the operationProfiling.mode + description in the official documentation.' type: string slowOpSampleRate: - description: |- - The fraction of slow operations that should be profiled or logged. Accepts values between 0 and 1, inclusive. - For more information, see the operationProfiling.slowOpSampleRate + description: The fraction of slow operations + that should be profiled or logged. Accepts + values between 0 and 1, inclusive. For more + information, see the operationProfiling.slowOpSampleRate description in the official documentation. type: number slowOpThreshold: - description: |- - The slow operation time threshold, in milliseconds. Operations that run for longer than this threshold are considered slow. - For more information, see the operationProfiling.slowOpThresholdMs + description: The slow operation time threshold, + in milliseconds. Operations that run for longer + than this threshold are considered slow. For + more information, see the operationProfiling.slowOpThresholdMs description in the official documentation. type: number type: object type: array security: - description: |- - A set of MongoDB Security settings - (see the security option). - The structure is documented below. Available only in enterprise edition. + description: A set of MongoDB Security settings (see + the security option). The structure is documented + below. Available only in enterprise edition. items: properties: enableEncryption: - description: |- - Enables the encryption for the WiredTiger storage engine. Can be either true or false. - For more information see security.enableEncryption - description in the official documentation. Available only in enterprise edition. + description: Enables the encryption for the + WiredTiger storage engine. Can be either true + or false. For more information see security.enableEncryption + description in the official documentation. + Available only in enterprise edition. type: boolean kmip: - description: |- - Configuration of the third party key management appliance via the Key Management Interoperability Protocol (KMIP) - (see Encryption tutorial ). Requires enable_encryption to be true. - The structure is documented below. Available only in enterprise edition. + description: Configuration of the third party + key management appliance via the Key Management + Interoperability Protocol (KMIP) (see Encryption + tutorial ). Requires enable_encryption to + be true. The structure is documented below. + Available only in enterprise edition. items: properties: clientCertificate: - description: |- - String containing the client certificate used for authenticating MongoDB to the KMIP server. - For more information see security.kmip.clientCertificateFile + description: String containing the client + certificate used for authenticating + MongoDB to the KMIP server. For more + information see security.kmip.clientCertificateFile description in the official documentation. type: string keyIdentifier: - description: |- - Unique KMIP identifier for an existing key within the KMIP server. + description: Unique KMIP identifier for + an existing key within the KMIP server. For more information see security.kmip.keyIdentifier description in the official documentation. type: string port: - description: |- - Port number to use to communicate with the KMIP server. Default: 5696 + description: 'Port number to use to communicate + with the KMIP server. Default: 5696 For more information see security.kmip.port - description in the official documentation. + description in the official documentation.' type: number serverCa: - description: |- - Path to CA File. Used for validating secure client connection to KMIP server. - For more information see security.kmip.serverCAFile - description in the official documentation. + description: Path to CA File. Used for + validating secure client connection + to KMIP server. For more information + see security.kmip.serverCAFile description + in the official documentation. type: string serverName: - description: |- - Hostname or IP address of the KMIP server to connect to. - For more information see security.kmip.serverName + description: Hostname or IP address of + the KMIP server to connect to. For more + information see security.kmip.serverName description in the official documentation. type: string type: object @@ -312,77 +318,81 @@ spec: type: object type: array setParameter: - description: |- - A set of MongoDB Server Parameters - (see the setParameter option). - The structure is documented below. + description: A set of MongoDB Server Parameters (see + the setParameter option). The structure is documented + below. items: properties: auditAuthorizationSuccess: - description: |- - Enables the auditing of authorization successes. Can be either true or false. - For more information, see the auditAuthorizationSuccess - description in the official documentation. Available only in enterprise edition. + description: Enables the auditing of authorization + successes. Can be either true or false. For + more information, see the auditAuthorizationSuccess + description in the official documentation. + Available only in enterprise edition. type: boolean enableFlowControl: - description: |- - Enables the flow control. Can be either true or false. - For more information, see the enableFlowControl - description in the official documentation. + description: Enables the flow control. Can be + either true or false. For more information, + see the enableFlowControl description in the + official documentation. type: boolean minSnapshotHistoryWindowInSeconds: - description: |- - The minimum time window in seconds for which the storage engine keeps the snapshot history. - For more information, see the minSnapshotHistoryWindowInSeconds + description: The minimum time window in seconds + for which the storage engine keeps the snapshot + history. For more information, see the minSnapshotHistoryWindowInSeconds description in the official documentation. type: number type: object type: array storage: - description: |- - A set of storage settings - (see the storage option). - The structure is documented below. + description: A set of storage settings (see the storage + option). The structure is documented below. items: properties: journal: - description: |- - The durability journal to ensure data files remain valid and recoverable. - The structure is documented below. + description: The durability journal to ensure + data files remain valid and recoverable. The + structure is documented below. items: properties: commitInterval: - description: |- - The maximum amount of time in milliseconds that the mongod process allows between journal operations. - For more information, see the storage.journal.commitIntervalMs + description: The maximum amount of time + in milliseconds that the mongod process + allows between journal operations. For + more information, see the storage.journal.commitIntervalMs description in the official documentation. type: number type: object type: array wiredTiger: - description: |- - The WiredTiger engine settings. - (see the storage.wiredTiger option). - These settings available only on mongod hosts. The structure is documented below. + description: The WiredTiger engine settings. + (see the storage.wiredTiger option). These + settings available only on mongod hosts. The + structure is documented below. items: properties: blockCompressor: - description: |- - Specifies the default compression for collection data. You can override this on a per-collection basis when creating collections. - Available compressors are: none, snappy, zlib, zstd. This setting available only on mongod hosts. + description: 'Specifies the default compression + for collection data. You can override + this on a per-collection basis when + creating collections. Available compressors + are: none, snappy, zlib, zstd. This + setting available only on mongod hosts. For more information, see the storage.wiredTiger.collectionConfig.blockCompressor - description in the official documentation. + description in the official documentation.' type: string cacheSizeGb: - description: |- - Defines the maximum size of the internal cache that WiredTiger will use for all data. - For more information, see the storage.wiredTiger.engineConfig.cacheSizeGB + description: Defines the maximum size + of the internal cache that WiredTiger + will use for all data. For more information, + see the storage.wiredTiger.engineConfig.cacheSizeGB description in the official documentation. type: number prefixCompression: - description: |- - Enables or disables prefix compression for index data. Đ¡an be either true or false. - For more information, see the storage.wiredTiger.indexConfig.prefixCompression + description: Enables or disables prefix + compression for index data. Đ¡an be either + true or false. For more information, + see the storage.wiredTiger.indexConfig.prefixCompression description in the official documentation. type: boolean type: object @@ -397,25 +407,26 @@ spec: items: properties: net: - description: |- - A set of network settings - (see the net option). - The structure is documented below. + description: A set of network settings (see the net + option). The structure is documented below. items: properties: compressors: - description: |- - Specifies the default compressor(s) to use for communication between this mongod or mongos. - Accepts array of compressors. Order matters. Available compressors: snappy, zlib, zstd, disabled. To disable network compression, make "disabled" the only value. - For more information, see the net.Compression.Compressors - description in the official documentation. + description: 'Specifies the default compressor(s) + to use for communication between this mongod + or mongos. Accepts array of compressors. Order + matters. Available compressors: snappy, zlib, + zstd, disabled. To disable network compression, + make "disabled" the only value. For more information, + see the net.Compression.Compressors description + in the official documentation.' items: type: string type: array maxIncomingConnections: - description: |- - The maximum number of simultaneous connections that host will accept. - For more information, see the net.maxIncomingConnections + description: The maximum number of simultaneous + connections that host will accept. For more + information, see the net.maxIncomingConnections description in the official documentation. type: number type: object @@ -453,20 +464,75 @@ spec: type: object type: array deletionProtection: - description: Inhibits deletion of the cluster. Can be either - true or false. + description: Inhibits deletion of the cluster. Can be either true + or false. type: boolean description: description: Description of the MongoDB cluster. type: string + diskSizeAutoscalingMongocfg: + items: + properties: + diskSizeLimit: + description: Limit of disk size after autoscaling (GiB). + type: number + emergencyUsageThreshold: + description: Immediate autoscaling disk usage (percent). + type: number + plannedUsageThreshold: + description: Maintenance window autoscaling disk usage (percent). + type: number + type: object + type: array + diskSizeAutoscalingMongod: + items: + properties: + diskSizeLimit: + description: Limit of disk size after autoscaling (GiB). + type: number + emergencyUsageThreshold: + description: Immediate autoscaling disk usage (percent). + type: number + plannedUsageThreshold: + description: Maintenance window autoscaling disk usage (percent). + type: number + type: object + type: array + diskSizeAutoscalingMongoinfra: + items: + properties: + diskSizeLimit: + description: Limit of disk size after autoscaling (GiB). + type: number + emergencyUsageThreshold: + description: Immediate autoscaling disk usage (percent). + type: number + plannedUsageThreshold: + description: Maintenance window autoscaling disk usage (percent). + type: number + type: object + type: array + diskSizeAutoscalingMongos: + items: + properties: + diskSizeLimit: + description: Limit of disk size after autoscaling (GiB). + type: number + emergencyUsageThreshold: + description: Immediate autoscaling disk usage (percent). + type: number + plannedUsageThreshold: + description: Maintenance window autoscaling disk usage (percent). + type: number + type: object + type: array environment: description: Deployment environment of the MongoDB cluster. Can be either PRESTABLE or PRODUCTION. type: string folderId: - description: |- - The ID of the folder that the resource belongs to. If it - is not provided, the default provider folder is used. + description: The ID of the folder that the resource belongs to. + If it is not provided, the default provider folder is used. type: string folderIdRef: description: Reference to a Folder in resourcemanager to populate @@ -592,9 +658,9 @@ spec: Only for sharded cluster. type: string subnetId: - description: |- - The ID of the subnet, to which the host belongs. The subnet must - be a part of the network to which the cluster belongs. + description: The ID of the subnet, to which the host belongs. + The subnet must be a part of the network to which the + cluster belongs. type: string subnetIdRef: description: Reference to a Subnet in vpc to populate subnetId. @@ -675,9 +741,9 @@ spec: (mongod, mongos, mongocfg, mongoinfra). Defaults to mongod. type: string zoneId: - description: |- - The availability zone where the MongoDB host will be created. - For more information see the official documentation. + description: The availability zone where the MongoDB host + will be created. For more information see the official + documentation. type: string type: object type: array @@ -801,9 +867,8 @@ spec: host, in gigabytes. type: number diskTypeId: - description: |- - Type of the storage of MongoDB hosts. - For more information see the official documentation. + description: Type of the storage of MongoDB hosts. For more + information see the official documentation. type: string resourcePresetId: type: string @@ -819,9 +884,8 @@ spec: host, in gigabytes. type: number diskTypeId: - description: |- - Type of the storage of MongoDB hosts. - For more information see the official documentation. + description: Type of the storage of MongoDB hosts. For more + information see the official documentation. type: string resourcePresetId: type: string @@ -837,9 +901,8 @@ spec: host, in gigabytes. type: number diskTypeId: - description: |- - Type of the storage of MongoDB hosts. - For more information see the official documentation. + description: Type of the storage of MongoDB hosts. For more + information see the official documentation. type: string resourcePresetId: type: string @@ -855,9 +918,8 @@ spec: host, in gigabytes. type: number diskTypeId: - description: |- - Type of the storage of MongoDB hosts. - For more information see the official documentation. + description: Type of the storage of MongoDB hosts. For more + information see the official documentation. type: string resourcePresetId: type: string @@ -873,9 +935,8 @@ spec: host, in gigabytes. type: number diskTypeId: - description: |- - Type of the storage of MongoDB hosts. - For more information see the official documentation. + description: Type of the storage of MongoDB hosts. For more + information see the official documentation. type: string resourcePresetId: type: string @@ -1087,59 +1148,57 @@ spec: items: properties: net: - description: |- - A set of network settings - (see the net option). - The structure is documented below. + description: A set of network settings (see the net + option). The structure is documented below. items: properties: maxIncomingConnections: - description: |- - The maximum number of simultaneous connections that host will accept. - For more information, see the net.maxIncomingConnections + description: The maximum number of simultaneous + connections that host will accept. For more + information, see the net.maxIncomingConnections description in the official documentation. type: number type: object type: array operationProfiling: - description: |- - A set of profiling settings - (see the operationProfiling option). - The structure is documented below. + description: A set of profiling settings (see the + operationProfiling option). The structure is documented + below. items: properties: mode: - description: |- - Specifies which operations should be profiled. The following profiler levels are available: off, slow_op, all. - For more information, see the operationProfiling.mode - description in the official documentation. + description: 'Specifies which operations should + be profiled. The following profiler levels + are available: off, slow_op, all. For more + information, see the operationProfiling.mode + description in the official documentation.' type: string slowOpThreshold: - description: |- - The slow operation time threshold, in milliseconds. Operations that run for longer than this threshold are considered slow. - For more information, see the operationProfiling.slowOpThresholdMs + description: The slow operation time threshold, + in milliseconds. Operations that run for longer + than this threshold are considered slow. For + more information, see the operationProfiling.slowOpThresholdMs description in the official documentation. type: number type: object type: array storage: - description: |- - A set of storage settings - (see the storage option). - The structure is documented below. + description: A set of storage settings (see the storage + option). The structure is documented below. items: properties: wiredTiger: - description: |- - The WiredTiger engine settings. - (see the storage.wiredTiger option). - These settings available only on mongod hosts. The structure is documented below. + description: The WiredTiger engine settings. + (see the storage.wiredTiger option). These + settings available only on mongod hosts. The + structure is documented below. items: properties: cacheSizeGb: - description: |- - Defines the maximum size of the internal cache that WiredTiger will use for all data. - For more information, see the storage.wiredTiger.engineConfig.cacheSizeGB + description: Defines the maximum size + of the internal cache that WiredTiger + will use for all data. For more information, + see the storage.wiredTiger.engineConfig.cacheSizeGB description in the official documentation. type: number type: object @@ -1154,125 +1213,133 @@ spec: items: properties: auditLog: - description: |- - A set of audit log settings - (see the auditLog option). - The structure is documented below. Available only in enterprise edition. + description: A set of audit log settings (see the + auditLog option). The structure is documented below. + Available only in enterprise edition. items: properties: filter: - description: |- - Configuration of the audit log filter in JSON format. - For more information see auditLog.filter - description in the official documentation. Available only in enterprise edition. + description: Configuration of the audit log + filter in JSON format. For more information + see auditLog.filter description in the official + documentation. Available only in enterprise + edition. type: string runtimeConfiguration: - description: |- - Specifies if a node allows runtime configuration of audit filters and the auditAuthorizationSuccess variable. - For more information see auditLog.runtimeConfiguration - description in the official documentation. Available only in enterprise edition. + description: Specifies if a node allows runtime + configuration of audit filters and the auditAuthorizationSuccess + variable. For more information see auditLog.runtimeConfiguration + description in the official documentation. + Available only in enterprise edition. type: boolean type: object type: array net: - description: |- - A set of network settings - (see the net option). - The structure is documented below. + description: A set of network settings (see the net + option). The structure is documented below. items: properties: compressors: - description: |- - Specifies the default compressor(s) to use for communication between this mongod or mongos. - Accepts array of compressors. Order matters. Available compressors: snappy, zlib, zstd, disabled. To disable network compression, make "disabled" the only value. - For more information, see the net.Compression.Compressors - description in the official documentation. + description: 'Specifies the default compressor(s) + to use for communication between this mongod + or mongos. Accepts array of compressors. Order + matters. Available compressors: snappy, zlib, + zstd, disabled. To disable network compression, + make "disabled" the only value. For more information, + see the net.Compression.Compressors description + in the official documentation.' items: type: string type: array maxIncomingConnections: - description: |- - The maximum number of simultaneous connections that host will accept. - For more information, see the net.maxIncomingConnections + description: The maximum number of simultaneous + connections that host will accept. For more + information, see the net.maxIncomingConnections description in the official documentation. type: number type: object type: array operationProfiling: - description: |- - A set of profiling settings - (see the operationProfiling option). - The structure is documented below. + description: A set of profiling settings (see the + operationProfiling option). The structure is documented + below. items: properties: mode: - description: |- - Specifies which operations should be profiled. The following profiler levels are available: off, slow_op, all. - For more information, see the operationProfiling.mode - description in the official documentation. + description: 'Specifies which operations should + be profiled. The following profiler levels + are available: off, slow_op, all. For more + information, see the operationProfiling.mode + description in the official documentation.' type: string slowOpSampleRate: - description: |- - The fraction of slow operations that should be profiled or logged. Accepts values between 0 and 1, inclusive. - For more information, see the operationProfiling.slowOpSampleRate + description: The fraction of slow operations + that should be profiled or logged. Accepts + values between 0 and 1, inclusive. For more + information, see the operationProfiling.slowOpSampleRate description in the official documentation. type: number slowOpThreshold: - description: |- - The slow operation time threshold, in milliseconds. Operations that run for longer than this threshold are considered slow. - For more information, see the operationProfiling.slowOpThresholdMs + description: The slow operation time threshold, + in milliseconds. Operations that run for longer + than this threshold are considered slow. For + more information, see the operationProfiling.slowOpThresholdMs description in the official documentation. type: number type: object type: array security: - description: |- - A set of MongoDB Security settings - (see the security option). - The structure is documented below. Available only in enterprise edition. + description: A set of MongoDB Security settings (see + the security option). The structure is documented + below. Available only in enterprise edition. items: properties: enableEncryption: - description: |- - Enables the encryption for the WiredTiger storage engine. Can be either true or false. - For more information see security.enableEncryption - description in the official documentation. Available only in enterprise edition. + description: Enables the encryption for the + WiredTiger storage engine. Can be either true + or false. For more information see security.enableEncryption + description in the official documentation. + Available only in enterprise edition. type: boolean kmip: - description: |- - Configuration of the third party key management appliance via the Key Management Interoperability Protocol (KMIP) - (see Encryption tutorial ). Requires enable_encryption to be true. - The structure is documented below. Available only in enterprise edition. + description: Configuration of the third party + key management appliance via the Key Management + Interoperability Protocol (KMIP) (see Encryption + tutorial ). Requires enable_encryption to + be true. The structure is documented below. + Available only in enterprise edition. items: properties: clientCertificate: - description: |- - String containing the client certificate used for authenticating MongoDB to the KMIP server. - For more information see security.kmip.clientCertificateFile + description: String containing the client + certificate used for authenticating + MongoDB to the KMIP server. For more + information see security.kmip.clientCertificateFile description in the official documentation. type: string keyIdentifier: - description: |- - Unique KMIP identifier for an existing key within the KMIP server. + description: Unique KMIP identifier for + an existing key within the KMIP server. For more information see security.kmip.keyIdentifier description in the official documentation. type: string port: - description: |- - Port number to use to communicate with the KMIP server. Default: 5696 + description: 'Port number to use to communicate + with the KMIP server. Default: 5696 For more information see security.kmip.port - description in the official documentation. + description in the official documentation.' type: number serverCa: - description: |- - Path to CA File. Used for validating secure client connection to KMIP server. - For more information see security.kmip.serverCAFile - description in the official documentation. + description: Path to CA File. Used for + validating secure client connection + to KMIP server. For more information + see security.kmip.serverCAFile description + in the official documentation. type: string serverName: - description: |- - Hostname or IP address of the KMIP server to connect to. - For more information see security.kmip.serverName + description: Hostname or IP address of + the KMIP server to connect to. For more + information see security.kmip.serverName description in the official documentation. type: string type: object @@ -1280,77 +1347,81 @@ spec: type: object type: array setParameter: - description: |- - A set of MongoDB Server Parameters - (see the setParameter option). - The structure is documented below. + description: A set of MongoDB Server Parameters (see + the setParameter option). The structure is documented + below. items: properties: auditAuthorizationSuccess: - description: |- - Enables the auditing of authorization successes. Can be either true or false. - For more information, see the auditAuthorizationSuccess - description in the official documentation. Available only in enterprise edition. + description: Enables the auditing of authorization + successes. Can be either true or false. For + more information, see the auditAuthorizationSuccess + description in the official documentation. + Available only in enterprise edition. type: boolean enableFlowControl: - description: |- - Enables the flow control. Can be either true or false. - For more information, see the enableFlowControl - description in the official documentation. + description: Enables the flow control. Can be + either true or false. For more information, + see the enableFlowControl description in the + official documentation. type: boolean minSnapshotHistoryWindowInSeconds: - description: |- - The minimum time window in seconds for which the storage engine keeps the snapshot history. - For more information, see the minSnapshotHistoryWindowInSeconds + description: The minimum time window in seconds + for which the storage engine keeps the snapshot + history. For more information, see the minSnapshotHistoryWindowInSeconds description in the official documentation. type: number type: object type: array storage: - description: |- - A set of storage settings - (see the storage option). - The structure is documented below. + description: A set of storage settings (see the storage + option). The structure is documented below. items: properties: journal: - description: |- - The durability journal to ensure data files remain valid and recoverable. - The structure is documented below. + description: The durability journal to ensure + data files remain valid and recoverable. The + structure is documented below. items: properties: commitInterval: - description: |- - The maximum amount of time in milliseconds that the mongod process allows between journal operations. - For more information, see the storage.journal.commitIntervalMs + description: The maximum amount of time + in milliseconds that the mongod process + allows between journal operations. For + more information, see the storage.journal.commitIntervalMs description in the official documentation. type: number type: object type: array wiredTiger: - description: |- - The WiredTiger engine settings. - (see the storage.wiredTiger option). - These settings available only on mongod hosts. The structure is documented below. + description: The WiredTiger engine settings. + (see the storage.wiredTiger option). These + settings available only on mongod hosts. The + structure is documented below. items: properties: blockCompressor: - description: |- - Specifies the default compression for collection data. You can override this on a per-collection basis when creating collections. - Available compressors are: none, snappy, zlib, zstd. This setting available only on mongod hosts. + description: 'Specifies the default compression + for collection data. You can override + this on a per-collection basis when + creating collections. Available compressors + are: none, snappy, zlib, zstd. This + setting available only on mongod hosts. For more information, see the storage.wiredTiger.collectionConfig.blockCompressor - description in the official documentation. + description in the official documentation.' type: string cacheSizeGb: - description: |- - Defines the maximum size of the internal cache that WiredTiger will use for all data. - For more information, see the storage.wiredTiger.engineConfig.cacheSizeGB + description: Defines the maximum size + of the internal cache that WiredTiger + will use for all data. For more information, + see the storage.wiredTiger.engineConfig.cacheSizeGB description in the official documentation. type: number prefixCompression: - description: |- - Enables or disables prefix compression for index data. Đ¡an be either true or false. - For more information, see the storage.wiredTiger.indexConfig.prefixCompression + description: Enables or disables prefix + compression for index data. Đ¡an be either + true or false. For more information, + see the storage.wiredTiger.indexConfig.prefixCompression description in the official documentation. type: boolean type: object @@ -1365,25 +1436,26 @@ spec: items: properties: net: - description: |- - A set of network settings - (see the net option). - The structure is documented below. + description: A set of network settings (see the net + option). The structure is documented below. items: properties: compressors: - description: |- - Specifies the default compressor(s) to use for communication between this mongod or mongos. - Accepts array of compressors. Order matters. Available compressors: snappy, zlib, zstd, disabled. To disable network compression, make "disabled" the only value. - For more information, see the net.Compression.Compressors - description in the official documentation. + description: 'Specifies the default compressor(s) + to use for communication between this mongod + or mongos. Accepts array of compressors. Order + matters. Available compressors: snappy, zlib, + zstd, disabled. To disable network compression, + make "disabled" the only value. For more information, + see the net.Compression.Compressors description + in the official documentation.' items: type: string type: array maxIncomingConnections: - description: |- - The maximum number of simultaneous connections that host will accept. - For more information, see the net.maxIncomingConnections + description: The maximum number of simultaneous + connections that host will accept. For more + information, see the net.maxIncomingConnections description in the official documentation. type: number type: object @@ -1421,20 +1493,75 @@ spec: type: object type: array deletionProtection: - description: Inhibits deletion of the cluster. Can be either - true or false. + description: Inhibits deletion of the cluster. Can be either true + or false. type: boolean description: description: Description of the MongoDB cluster. type: string + diskSizeAutoscalingMongocfg: + items: + properties: + diskSizeLimit: + description: Limit of disk size after autoscaling (GiB). + type: number + emergencyUsageThreshold: + description: Immediate autoscaling disk usage (percent). + type: number + plannedUsageThreshold: + description: Maintenance window autoscaling disk usage (percent). + type: number + type: object + type: array + diskSizeAutoscalingMongod: + items: + properties: + diskSizeLimit: + description: Limit of disk size after autoscaling (GiB). + type: number + emergencyUsageThreshold: + description: Immediate autoscaling disk usage (percent). + type: number + plannedUsageThreshold: + description: Maintenance window autoscaling disk usage (percent). + type: number + type: object + type: array + diskSizeAutoscalingMongoinfra: + items: + properties: + diskSizeLimit: + description: Limit of disk size after autoscaling (GiB). + type: number + emergencyUsageThreshold: + description: Immediate autoscaling disk usage (percent). + type: number + plannedUsageThreshold: + description: Maintenance window autoscaling disk usage (percent). + type: number + type: object + type: array + diskSizeAutoscalingMongos: + items: + properties: + diskSizeLimit: + description: Limit of disk size after autoscaling (GiB). + type: number + emergencyUsageThreshold: + description: Immediate autoscaling disk usage (percent). + type: number + plannedUsageThreshold: + description: Maintenance window autoscaling disk usage (percent). + type: number + type: object + type: array environment: description: Deployment environment of the MongoDB cluster. Can be either PRESTABLE or PRODUCTION. type: string folderId: - description: |- - The ID of the folder that the resource belongs to. If it - is not provided, the default provider folder is used. + description: The ID of the folder that the resource belongs to. + If it is not provided, the default provider folder is used. type: string folderIdRef: description: Reference to a Folder in resourcemanager to populate @@ -1560,9 +1687,9 @@ spec: Only for sharded cluster. type: string subnetId: - description: |- - The ID of the subnet, to which the host belongs. The subnet must - be a part of the network to which the cluster belongs. + description: The ID of the subnet, to which the host belongs. + The subnet must be a part of the network to which the + cluster belongs. type: string subnetIdRef: description: Reference to a Subnet in vpc to populate subnetId. @@ -1643,9 +1770,9 @@ spec: (mongod, mongos, mongocfg, mongoinfra). Defaults to mongod. type: string zoneId: - description: |- - The availability zone where the MongoDB host will be created. - For more information see the official documentation. + description: The availability zone where the MongoDB host + will be created. For more information see the official + documentation. type: string type: object type: array @@ -1769,9 +1896,8 @@ spec: host, in gigabytes. type: number diskTypeId: - description: |- - Type of the storage of MongoDB hosts. - For more information see the official documentation. + description: Type of the storage of MongoDB hosts. For more + information see the official documentation. type: string resourcePresetId: type: string @@ -1787,9 +1913,8 @@ spec: host, in gigabytes. type: number diskTypeId: - description: |- - Type of the storage of MongoDB hosts. - For more information see the official documentation. + description: Type of the storage of MongoDB hosts. For more + information see the official documentation. type: string resourcePresetId: type: string @@ -1805,9 +1930,8 @@ spec: host, in gigabytes. type: number diskTypeId: - description: |- - Type of the storage of MongoDB hosts. - For more information see the official documentation. + description: Type of the storage of MongoDB hosts. For more + information see the official documentation. type: string resourcePresetId: type: string @@ -1823,9 +1947,8 @@ spec: host, in gigabytes. type: number diskTypeId: - description: |- - Type of the storage of MongoDB hosts. - For more information see the official documentation. + description: Type of the storage of MongoDB hosts. For more + information see the official documentation. type: string resourcePresetId: type: string @@ -1841,9 +1964,8 @@ spec: host, in gigabytes. type: number diskTypeId: - description: |- - Type of the storage of MongoDB hosts. - For more information see the official documentation. + description: Type of the storage of MongoDB hosts. For more + information see the official documentation. type: string resourcePresetId: type: string @@ -2233,59 +2355,57 @@ spec: items: properties: net: - description: |- - A set of network settings - (see the net option). - The structure is documented below. + description: A set of network settings (see the net + option). The structure is documented below. items: properties: maxIncomingConnections: - description: |- - The maximum number of simultaneous connections that host will accept. - For more information, see the net.maxIncomingConnections + description: The maximum number of simultaneous + connections that host will accept. For more + information, see the net.maxIncomingConnections description in the official documentation. type: number type: object type: array operationProfiling: - description: |- - A set of profiling settings - (see the operationProfiling option). - The structure is documented below. + description: A set of profiling settings (see the + operationProfiling option). The structure is documented + below. items: properties: mode: - description: |- - Specifies which operations should be profiled. The following profiler levels are available: off, slow_op, all. - For more information, see the operationProfiling.mode - description in the official documentation. + description: 'Specifies which operations should + be profiled. The following profiler levels + are available: off, slow_op, all. For more + information, see the operationProfiling.mode + description in the official documentation.' type: string slowOpThreshold: - description: |- - The slow operation time threshold, in milliseconds. Operations that run for longer than this threshold are considered slow. - For more information, see the operationProfiling.slowOpThresholdMs + description: The slow operation time threshold, + in milliseconds. Operations that run for longer + than this threshold are considered slow. For + more information, see the operationProfiling.slowOpThresholdMs description in the official documentation. type: number type: object type: array storage: - description: |- - A set of storage settings - (see the storage option). - The structure is documented below. + description: A set of storage settings (see the storage + option). The structure is documented below. items: properties: wiredTiger: - description: |- - The WiredTiger engine settings. - (see the storage.wiredTiger option). - These settings available only on mongod hosts. The structure is documented below. + description: The WiredTiger engine settings. + (see the storage.wiredTiger option). These + settings available only on mongod hosts. The + structure is documented below. items: properties: cacheSizeGb: - description: |- - Defines the maximum size of the internal cache that WiredTiger will use for all data. - For more information, see the storage.wiredTiger.engineConfig.cacheSizeGB + description: Defines the maximum size + of the internal cache that WiredTiger + will use for all data. For more information, + see the storage.wiredTiger.engineConfig.cacheSizeGB description in the official documentation. type: number type: object @@ -2300,125 +2420,133 @@ spec: items: properties: auditLog: - description: |- - A set of audit log settings - (see the auditLog option). - The structure is documented below. Available only in enterprise edition. + description: A set of audit log settings (see the + auditLog option). The structure is documented below. + Available only in enterprise edition. items: properties: filter: - description: |- - Configuration of the audit log filter in JSON format. - For more information see auditLog.filter - description in the official documentation. Available only in enterprise edition. + description: Configuration of the audit log + filter in JSON format. For more information + see auditLog.filter description in the official + documentation. Available only in enterprise + edition. type: string runtimeConfiguration: - description: |- - Specifies if a node allows runtime configuration of audit filters and the auditAuthorizationSuccess variable. - For more information see auditLog.runtimeConfiguration - description in the official documentation. Available only in enterprise edition. + description: Specifies if a node allows runtime + configuration of audit filters and the auditAuthorizationSuccess + variable. For more information see auditLog.runtimeConfiguration + description in the official documentation. + Available only in enterprise edition. type: boolean type: object type: array net: - description: |- - A set of network settings - (see the net option). - The structure is documented below. + description: A set of network settings (see the net + option). The structure is documented below. items: properties: compressors: - description: |- - Specifies the default compressor(s) to use for communication between this mongod or mongos. - Accepts array of compressors. Order matters. Available compressors: snappy, zlib, zstd, disabled. To disable network compression, make "disabled" the only value. - For more information, see the net.Compression.Compressors - description in the official documentation. + description: 'Specifies the default compressor(s) + to use for communication between this mongod + or mongos. Accepts array of compressors. Order + matters. Available compressors: snappy, zlib, + zstd, disabled. To disable network compression, + make "disabled" the only value. For more information, + see the net.Compression.Compressors description + in the official documentation.' items: type: string type: array maxIncomingConnections: - description: |- - The maximum number of simultaneous connections that host will accept. - For more information, see the net.maxIncomingConnections + description: The maximum number of simultaneous + connections that host will accept. For more + information, see the net.maxIncomingConnections description in the official documentation. type: number type: object type: array operationProfiling: - description: |- - A set of profiling settings - (see the operationProfiling option). - The structure is documented below. + description: A set of profiling settings (see the + operationProfiling option). The structure is documented + below. items: properties: mode: - description: |- - Specifies which operations should be profiled. The following profiler levels are available: off, slow_op, all. - For more information, see the operationProfiling.mode - description in the official documentation. + description: 'Specifies which operations should + be profiled. The following profiler levels + are available: off, slow_op, all. For more + information, see the operationProfiling.mode + description in the official documentation.' type: string slowOpSampleRate: - description: |- - The fraction of slow operations that should be profiled or logged. Accepts values between 0 and 1, inclusive. - For more information, see the operationProfiling.slowOpSampleRate + description: The fraction of slow operations + that should be profiled or logged. Accepts + values between 0 and 1, inclusive. For more + information, see the operationProfiling.slowOpSampleRate description in the official documentation. type: number slowOpThreshold: - description: |- - The slow operation time threshold, in milliseconds. Operations that run for longer than this threshold are considered slow. - For more information, see the operationProfiling.slowOpThresholdMs + description: The slow operation time threshold, + in milliseconds. Operations that run for longer + than this threshold are considered slow. For + more information, see the operationProfiling.slowOpThresholdMs description in the official documentation. type: number type: object type: array security: - description: |- - A set of MongoDB Security settings - (see the security option). - The structure is documented below. Available only in enterprise edition. + description: A set of MongoDB Security settings (see + the security option). The structure is documented + below. Available only in enterprise edition. items: properties: enableEncryption: - description: |- - Enables the encryption for the WiredTiger storage engine. Can be either true or false. - For more information see security.enableEncryption - description in the official documentation. Available only in enterprise edition. + description: Enables the encryption for the + WiredTiger storage engine. Can be either true + or false. For more information see security.enableEncryption + description in the official documentation. + Available only in enterprise edition. type: boolean kmip: - description: |- - Configuration of the third party key management appliance via the Key Management Interoperability Protocol (KMIP) - (see Encryption tutorial ). Requires enable_encryption to be true. - The structure is documented below. Available only in enterprise edition. + description: Configuration of the third party + key management appliance via the Key Management + Interoperability Protocol (KMIP) (see Encryption + tutorial ). Requires enable_encryption to + be true. The structure is documented below. + Available only in enterprise edition. items: properties: clientCertificate: - description: |- - String containing the client certificate used for authenticating MongoDB to the KMIP server. - For more information see security.kmip.clientCertificateFile + description: String containing the client + certificate used for authenticating + MongoDB to the KMIP server. For more + information see security.kmip.clientCertificateFile description in the official documentation. type: string keyIdentifier: - description: |- - Unique KMIP identifier for an existing key within the KMIP server. + description: Unique KMIP identifier for + an existing key within the KMIP server. For more information see security.kmip.keyIdentifier description in the official documentation. type: string port: - description: |- - Port number to use to communicate with the KMIP server. Default: 5696 + description: 'Port number to use to communicate + with the KMIP server. Default: 5696 For more information see security.kmip.port - description in the official documentation. + description in the official documentation.' type: number serverCa: - description: |- - Path to CA File. Used for validating secure client connection to KMIP server. - For more information see security.kmip.serverCAFile - description in the official documentation. + description: Path to CA File. Used for + validating secure client connection + to KMIP server. For more information + see security.kmip.serverCAFile description + in the official documentation. type: string serverName: - description: |- - Hostname or IP address of the KMIP server to connect to. - For more information see security.kmip.serverName + description: Hostname or IP address of + the KMIP server to connect to. For more + information see security.kmip.serverName description in the official documentation. type: string type: object @@ -2426,77 +2554,81 @@ spec: type: object type: array setParameter: - description: |- - A set of MongoDB Server Parameters - (see the setParameter option). - The structure is documented below. + description: A set of MongoDB Server Parameters (see + the setParameter option). The structure is documented + below. items: properties: auditAuthorizationSuccess: - description: |- - Enables the auditing of authorization successes. Can be either true or false. - For more information, see the auditAuthorizationSuccess - description in the official documentation. Available only in enterprise edition. + description: Enables the auditing of authorization + successes. Can be either true or false. For + more information, see the auditAuthorizationSuccess + description in the official documentation. + Available only in enterprise edition. type: boolean enableFlowControl: - description: |- - Enables the flow control. Can be either true or false. - For more information, see the enableFlowControl - description in the official documentation. + description: Enables the flow control. Can be + either true or false. For more information, + see the enableFlowControl description in the + official documentation. type: boolean minSnapshotHistoryWindowInSeconds: - description: |- - The minimum time window in seconds for which the storage engine keeps the snapshot history. - For more information, see the minSnapshotHistoryWindowInSeconds + description: The minimum time window in seconds + for which the storage engine keeps the snapshot + history. For more information, see the minSnapshotHistoryWindowInSeconds description in the official documentation. type: number type: object type: array storage: - description: |- - A set of storage settings - (see the storage option). - The structure is documented below. + description: A set of storage settings (see the storage + option). The structure is documented below. items: properties: journal: - description: |- - The durability journal to ensure data files remain valid and recoverable. - The structure is documented below. + description: The durability journal to ensure + data files remain valid and recoverable. The + structure is documented below. items: properties: commitInterval: - description: |- - The maximum amount of time in milliseconds that the mongod process allows between journal operations. - For more information, see the storage.journal.commitIntervalMs + description: The maximum amount of time + in milliseconds that the mongod process + allows between journal operations. For + more information, see the storage.journal.commitIntervalMs description in the official documentation. type: number type: object type: array wiredTiger: - description: |- - The WiredTiger engine settings. - (see the storage.wiredTiger option). - These settings available only on mongod hosts. The structure is documented below. + description: The WiredTiger engine settings. + (see the storage.wiredTiger option). These + settings available only on mongod hosts. The + structure is documented below. items: properties: blockCompressor: - description: |- - Specifies the default compression for collection data. You can override this on a per-collection basis when creating collections. - Available compressors are: none, snappy, zlib, zstd. This setting available only on mongod hosts. + description: 'Specifies the default compression + for collection data. You can override + this on a per-collection basis when + creating collections. Available compressors + are: none, snappy, zlib, zstd. This + setting available only on mongod hosts. For more information, see the storage.wiredTiger.collectionConfig.blockCompressor - description in the official documentation. + description in the official documentation.' type: string cacheSizeGb: - description: |- - Defines the maximum size of the internal cache that WiredTiger will use for all data. - For more information, see the storage.wiredTiger.engineConfig.cacheSizeGB + description: Defines the maximum size + of the internal cache that WiredTiger + will use for all data. For more information, + see the storage.wiredTiger.engineConfig.cacheSizeGB description in the official documentation. type: number prefixCompression: - description: |- - Enables or disables prefix compression for index data. Đ¡an be either true or false. - For more information, see the storage.wiredTiger.indexConfig.prefixCompression + description: Enables or disables prefix + compression for index data. Đ¡an be either + true or false. For more information, + see the storage.wiredTiger.indexConfig.prefixCompression description in the official documentation. type: boolean type: object @@ -2511,25 +2643,26 @@ spec: items: properties: net: - description: |- - A set of network settings - (see the net option). - The structure is documented below. + description: A set of network settings (see the net + option). The structure is documented below. items: properties: compressors: - description: |- - Specifies the default compressor(s) to use for communication between this mongod or mongos. - Accepts array of compressors. Order matters. Available compressors: snappy, zlib, zstd, disabled. To disable network compression, make "disabled" the only value. - For more information, see the net.Compression.Compressors - description in the official documentation. + description: 'Specifies the default compressor(s) + to use for communication between this mongod + or mongos. Accepts array of compressors. Order + matters. Available compressors: snappy, zlib, + zstd, disabled. To disable network compression, + make "disabled" the only value. For more information, + see the net.Compression.Compressors description + in the official documentation.' items: type: string type: array maxIncomingConnections: - description: |- - The maximum number of simultaneous connections that host will accept. - For more information, see the net.maxIncomingConnections + description: The maximum number of simultaneous + connections that host will accept. For more + information, see the net.maxIncomingConnections description in the official documentation. type: number type: object @@ -2570,25 +2703,80 @@ spec: type: object type: array deletionProtection: - description: Inhibits deletion of the cluster. Can be either - true or false. + description: Inhibits deletion of the cluster. Can be either true + or false. type: boolean description: description: Description of the MongoDB cluster. type: string + diskSizeAutoscalingMongocfg: + items: + properties: + diskSizeLimit: + description: Limit of disk size after autoscaling (GiB). + type: number + emergencyUsageThreshold: + description: Immediate autoscaling disk usage (percent). + type: number + plannedUsageThreshold: + description: Maintenance window autoscaling disk usage (percent). + type: number + type: object + type: array + diskSizeAutoscalingMongod: + items: + properties: + diskSizeLimit: + description: Limit of disk size after autoscaling (GiB). + type: number + emergencyUsageThreshold: + description: Immediate autoscaling disk usage (percent). + type: number + plannedUsageThreshold: + description: Maintenance window autoscaling disk usage (percent). + type: number + type: object + type: array + diskSizeAutoscalingMongoinfra: + items: + properties: + diskSizeLimit: + description: Limit of disk size after autoscaling (GiB). + type: number + emergencyUsageThreshold: + description: Immediate autoscaling disk usage (percent). + type: number + plannedUsageThreshold: + description: Maintenance window autoscaling disk usage (percent). + type: number + type: object + type: array + diskSizeAutoscalingMongos: + items: + properties: + diskSizeLimit: + description: Limit of disk size after autoscaling (GiB). + type: number + emergencyUsageThreshold: + description: Immediate autoscaling disk usage (percent). + type: number + plannedUsageThreshold: + description: Maintenance window autoscaling disk usage (percent). + type: number + type: object + type: array environment: description: Deployment environment of the MongoDB cluster. Can be either PRESTABLE or PRODUCTION. type: string folderId: - description: |- - The ID of the folder that the resource belongs to. If it - is not provided, the default provider folder is used. + description: The ID of the folder that the resource belongs to. + If it is not provided, the default provider folder is used. type: string health: - description: |- - Aggregated health of the cluster. Can be either ALIVE, DEGRADED, DEAD or HEALTH_UNKNOWN. - For more information see health field of JSON representation in the official documentation. + description: Aggregated health of the cluster. Can be either ALIVE, + DEGRADED, DEAD or HEALTH_UNKNOWN. For more information see health + field of JSON representation in the official documentation. type: string host: description: A host of the MongoDB cluster. The structure is documented @@ -2645,18 +2833,18 @@ spec: Only for sharded cluster. type: string subnetId: - description: |- - The ID of the subnet, to which the host belongs. The subnet must - be a part of the network to which the cluster belongs. + description: The ID of the subnet, to which the host belongs. + The subnet must be a part of the network to which the + cluster belongs. type: string type: description: type of mongo daemon which runs on this host (mongod, mongos, mongocfg, mongoinfra). Defaults to mongod. type: string zoneId: - description: |- - The availability zone where the MongoDB host will be created. - For more information see the official documentation. + description: The availability zone where the MongoDB host + will be created. For more information see the official + documentation. type: string type: object type: array @@ -2708,9 +2896,8 @@ spec: host, in gigabytes. type: number diskTypeId: - description: |- - Type of the storage of MongoDB hosts. - For more information see the official documentation. + description: Type of the storage of MongoDB hosts. For more + information see the official documentation. type: string resourcePresetId: type: string @@ -2726,9 +2913,8 @@ spec: host, in gigabytes. type: number diskTypeId: - description: |- - Type of the storage of MongoDB hosts. - For more information see the official documentation. + description: Type of the storage of MongoDB hosts. For more + information see the official documentation. type: string resourcePresetId: type: string @@ -2744,9 +2930,8 @@ spec: host, in gigabytes. type: number diskTypeId: - description: |- - Type of the storage of MongoDB hosts. - For more information see the official documentation. + description: Type of the storage of MongoDB hosts. For more + information see the official documentation. type: string resourcePresetId: type: string @@ -2762,9 +2947,8 @@ spec: host, in gigabytes. type: number diskTypeId: - description: |- - Type of the storage of MongoDB hosts. - For more information see the official documentation. + description: Type of the storage of MongoDB hosts. For more + information see the official documentation. type: string resourcePresetId: type: string @@ -2780,9 +2964,8 @@ spec: host, in gigabytes. type: number diskTypeId: - description: |- - Type of the storage of MongoDB hosts. - For more information see the official documentation. + description: Type of the storage of MongoDB hosts. For more + information see the official documentation. type: string resourcePresetId: type: string @@ -2816,9 +2999,10 @@ spec: description: MongoDB Cluster mode enabled/disabled. type: boolean status: - description: |- - Status of the cluster. Can be either CREATING, STARTING, RUNNING, UPDATING, STOPPING, STOPPED, ERROR or STATUS_UNKNOWN. - For more information see status field of JSON representation in the official documentation. + description: Status of the cluster. Can be either CREATING, STARTING, + RUNNING, UPDATING, STOPPING, STOPPED, ERROR or STATUS_UNKNOWN. + For more information see status field of JSON representation + in the official documentation. type: string user: description: A user of the MongoDB cluster. The structure is documented diff --git a/package/crds/mdb.yandex-cloud.upjet.crossplane.io_mysqlclusters.yaml b/package/crds/mdb.yandex-cloud.upjet.crossplane.io_mysqlclusters.yaml index 2d283c7..20d0867 100644 --- a/package/crds/mdb.yandex-cloud.upjet.crossplane.io_mysqlclusters.yaml +++ b/package/crds/mdb.yandex-cloud.upjet.crossplane.io_mysqlclusters.yaml @@ -121,8 +121,8 @@ spec: type: object type: array deletionProtection: - description: Inhibits deletion of the cluster. Can be either - true or false. + description: Inhibits deletion of the cluster. Can be either true + or false. type: boolean description: description: Description of the MySQL cluster. @@ -131,9 +131,8 @@ spec: description: Deployment environment of the MySQL cluster. type: string folderId: - description: |- - The ID of the folder that the resource belongs to. If it - is not provided, the default provider folder is used. + description: The ID of the folder that the resource belongs to. + If it is not provided, the default provider folder is used. type: string folderIdRef: description: Reference to a Folder in resourcemanager to populate @@ -591,9 +590,9 @@ spec: MYSQL_NATIVE_PASSWORD, SHA256_PASSWORD)' type: string connectionLimits: - description: |- - User's connection limits. The structure is documented below. - If the attribute is not specified there will be no changes. + description: User's connection limits. The structure is + documented below. If the attribute is not specified there + will be no changes. items: properties: maxConnectionsPerHour: @@ -613,8 +612,7 @@ spec: globalPermissions: description: |- List user's global permissions - Allowed permissions: REPLICATION_CLIENT, REPLICATION_SLAVE, PROCESS for clear list use empty list. - If the attribute is not specified there will be no changes. + Allowed permissions: REPLICATION_CLIENT, REPLICATION_SLAVE, PROCESS for clear list use empty list. If the attribute is not specified there will be no changes. items: type: string type: array @@ -649,10 +647,9 @@ spec: grants access to. type: string roles: - description: |- - List user's roles in the database. + description: 'List user''s roles in the database. Allowed roles: ALL,ALTER,ALTER_ROUTINE,CREATE,CREATE_ROUTINE,CREATE_TEMPORARY_TABLES, - CREATE_VIEW,DELETE,DROP,EVENT,EXECUTE,INDEX,INSERT,LOCK_TABLES,SELECT,SHOW_VIEW,TRIGGER,UPDATE. + CREATE_VIEW,DELETE,DROP,EVENT,EXECUTE,INDEX,INSERT,LOCK_TABLES,SELECT,SHOW_VIEW,TRIGGER,UPDATE.' items: type: string type: array @@ -726,8 +723,8 @@ spec: type: object type: array deletionProtection: - description: Inhibits deletion of the cluster. Can be either - true or false. + description: Inhibits deletion of the cluster. Can be either true + or false. type: boolean description: description: Description of the MySQL cluster. @@ -736,9 +733,8 @@ spec: description: Deployment environment of the MySQL cluster. type: string folderId: - description: |- - The ID of the folder that the resource belongs to. If it - is not provided, the default provider folder is used. + description: The ID of the folder that the resource belongs to. + If it is not provided, the default provider folder is used. type: string folderIdRef: description: Reference to a Folder in resourcemanager to populate @@ -1196,9 +1192,9 @@ spec: MYSQL_NATIVE_PASSWORD, SHA256_PASSWORD)' type: string connectionLimits: - description: |- - User's connection limits. The structure is documented below. - If the attribute is not specified there will be no changes. + description: User's connection limits. The structure is + documented below. If the attribute is not specified there + will be no changes. items: properties: maxConnectionsPerHour: @@ -1218,8 +1214,7 @@ spec: globalPermissions: description: |- List user's global permissions - Allowed permissions: REPLICATION_CLIENT, REPLICATION_SLAVE, PROCESS for clear list use empty list. - If the attribute is not specified there will be no changes. + Allowed permissions: REPLICATION_CLIENT, REPLICATION_SLAVE, PROCESS for clear list use empty list. If the attribute is not specified there will be no changes. items: type: string type: array @@ -1254,10 +1249,9 @@ spec: grants access to. type: string roles: - description: |- - List user's roles in the database. + description: 'List user''s roles in the database. Allowed roles: ALL,ALTER,ALTER_ROUTINE,CREATE,CREATE_ROUTINE,CREATE_TEMPORARY_TABLES, - CREATE_VIEW,DELETE,DROP,EVENT,EXECUTE,INDEX,INSERT,LOCK_TABLES,SELECT,SHOW_VIEW,TRIGGER,UPDATE. + CREATE_VIEW,DELETE,DROP,EVENT,EXECUTE,INDEX,INSERT,LOCK_TABLES,SELECT,SHOW_VIEW,TRIGGER,UPDATE.' items: type: string type: array @@ -1516,8 +1510,8 @@ spec: type: object type: array deletionProtection: - description: Inhibits deletion of the cluster. Can be either - true or false. + description: Inhibits deletion of the cluster. Can be either true + or false. type: boolean description: description: Description of the MySQL cluster. @@ -1526,9 +1520,8 @@ spec: description: Deployment environment of the MySQL cluster. type: string folderId: - description: |- - The ID of the folder that the resource belongs to. If it - is not provided, the default provider folder is used. + description: The ID of the folder that the resource belongs to. + If it is not provided, the default provider folder is used. type: string health: description: Aggregated health of the cluster. @@ -1700,9 +1693,9 @@ spec: MYSQL_NATIVE_PASSWORD, SHA256_PASSWORD)' type: string connectionLimits: - description: |- - User's connection limits. The structure is documented below. - If the attribute is not specified there will be no changes. + description: User's connection limits. The structure is + documented below. If the attribute is not specified there + will be no changes. items: properties: maxConnectionsPerHour: @@ -1722,8 +1715,7 @@ spec: globalPermissions: description: |- List user's global permissions - Allowed permissions: REPLICATION_CLIENT, REPLICATION_SLAVE, PROCESS for clear list use empty list. - If the attribute is not specified there will be no changes. + Allowed permissions: REPLICATION_CLIENT, REPLICATION_SLAVE, PROCESS for clear list use empty list. If the attribute is not specified there will be no changes. items: type: string type: array @@ -1741,10 +1733,9 @@ spec: grants access to. type: string roles: - description: |- - List user's roles in the database. + description: 'List user''s roles in the database. Allowed roles: ALL,ALTER,ALTER_ROUTINE,CREATE,CREATE_ROUTINE,CREATE_TEMPORARY_TABLES, - CREATE_VIEW,DELETE,DROP,EVENT,EXECUTE,INDEX,INSERT,LOCK_TABLES,SELECT,SHOW_VIEW,TRIGGER,UPDATE. + CREATE_VIEW,DELETE,DROP,EVENT,EXECUTE,INDEX,INSERT,LOCK_TABLES,SELECT,SHOW_VIEW,TRIGGER,UPDATE.' items: type: string type: array diff --git a/package/crds/mdb.yandex-cloud.upjet.crossplane.io_mysqlusers.yaml b/package/crds/mdb.yandex-cloud.upjet.crossplane.io_mysqlusers.yaml index c704a86..22fc86c 100644 --- a/package/crds/mdb.yandex-cloud.upjet.crossplane.io_mysqlusers.yaml +++ b/package/crds/mdb.yandex-cloud.upjet.crossplane.io_mysqlusers.yaml @@ -155,9 +155,8 @@ spec: type: object type: object connectionLimits: - description: |- - User's connection limits. The structure is documented below. - If the attribute is not specified there will be no changes. + description: User's connection limits. The structure is documented + below. If the attribute is not specified there will be no changes. items: properties: maxConnectionsPerHour: @@ -177,8 +176,7 @@ spec: globalPermissions: description: |- List user's global permissions - Allowed permissions: REPLICATION_CLIENT, REPLICATION_SLAVE, PROCESS for clear list use empty list. - If the attribute is not specified there will be no changes. + Allowed permissions: REPLICATION_CLIENT, REPLICATION_SLAVE, PROCESS for clear list use empty list. If the attribute is not specified there will be no changes. items: type: string type: array @@ -289,10 +287,9 @@ spec: type: object type: object roles: - description: |- - List user's roles in the database. - Allowed roles: ALL,ALTER,ALTER_ROUTINE,CREATE,CREATE_ROUTINE,CREATE_TEMPORARY_TABLES, - CREATE_VIEW,DELETE,DROP,EVENT,EXECUTE,INDEX,INSERT,LOCK_TABLES,SELECT,SHOW_VIEW,TRIGGER,UPDATE. + description: 'List user''s roles in the database. Allowed + roles: ALL,ALTER,ALTER_ROUTINE,CREATE,CREATE_ROUTINE,CREATE_TEMPORARY_TABLES, + CREATE_VIEW,DELETE,DROP,EVENT,EXECUTE,INDEX,INSERT,LOCK_TABLES,SELECT,SHOW_VIEW,TRIGGER,UPDATE.' items: type: string type: array @@ -394,9 +391,8 @@ spec: type: object type: object connectionLimits: - description: |- - User's connection limits. The structure is documented below. - If the attribute is not specified there will be no changes. + description: User's connection limits. The structure is documented + below. If the attribute is not specified there will be no changes. items: properties: maxConnectionsPerHour: @@ -416,8 +412,7 @@ spec: globalPermissions: description: |- List user's global permissions - Allowed permissions: REPLICATION_CLIENT, REPLICATION_SLAVE, PROCESS for clear list use empty list. - If the attribute is not specified there will be no changes. + Allowed permissions: REPLICATION_CLIENT, REPLICATION_SLAVE, PROCESS for clear list use empty list. If the attribute is not specified there will be no changes. items: type: string type: array @@ -528,10 +523,9 @@ spec: type: object type: object roles: - description: |- - List user's roles in the database. - Allowed roles: ALL,ALTER,ALTER_ROUTINE,CREATE,CREATE_ROUTINE,CREATE_TEMPORARY_TABLES, - CREATE_VIEW,DELETE,DROP,EVENT,EXECUTE,INDEX,INSERT,LOCK_TABLES,SELECT,SHOW_VIEW,TRIGGER,UPDATE. + description: 'List user''s roles in the database. Allowed + roles: ALL,ALTER,ALTER_ROUTINE,CREATE,CREATE_ROUTINE,CREATE_TEMPORARY_TABLES, + CREATE_VIEW,DELETE,DROP,EVENT,EXECUTE,INDEX,INSERT,LOCK_TABLES,SELECT,SHOW_VIEW,TRIGGER,UPDATE.' items: type: string type: array @@ -728,9 +722,8 @@ spec: clusterId: type: string connectionLimits: - description: |- - User's connection limits. The structure is documented below. - If the attribute is not specified there will be no changes. + description: User's connection limits. The structure is documented + below. If the attribute is not specified there will be no changes. items: properties: maxConnectionsPerHour: @@ -750,8 +743,7 @@ spec: globalPermissions: description: |- List user's global permissions - Allowed permissions: REPLICATION_CLIENT, REPLICATION_SLAVE, PROCESS for clear list use empty list. - If the attribute is not specified there will be no changes. + Allowed permissions: REPLICATION_CLIENT, REPLICATION_SLAVE, PROCESS for clear list use empty list. If the attribute is not specified there will be no changes. items: type: string type: array @@ -771,10 +763,9 @@ spec: grants access to. type: string roles: - description: |- - List user's roles in the database. - Allowed roles: ALL,ALTER,ALTER_ROUTINE,CREATE,CREATE_ROUTINE,CREATE_TEMPORARY_TABLES, - CREATE_VIEW,DELETE,DROP,EVENT,EXECUTE,INDEX,INSERT,LOCK_TABLES,SELECT,SHOW_VIEW,TRIGGER,UPDATE. + description: 'List user''s roles in the database. Allowed + roles: ALL,ALTER,ALTER_ROUTINE,CREATE,CREATE_ROUTINE,CREATE_TEMPORARY_TABLES, + CREATE_VIEW,DELETE,DROP,EVENT,EXECUTE,INDEX,INSERT,LOCK_TABLES,SELECT,SHOW_VIEW,TRIGGER,UPDATE.' items: type: string type: array diff --git a/package/crds/mdb.yandex-cloud.upjet.crossplane.io_opensearchclusters.yaml b/package/crds/mdb.yandex-cloud.upjet.crossplane.io_opensearchclusters.yaml deleted file mode 100644 index d18b945..0000000 --- a/package/crds/mdb.yandex-cloud.upjet.crossplane.io_opensearchclusters.yaml +++ /dev/null @@ -1,1767 +0,0 @@ ---- -apiVersion: apiextensions.k8s.io/v1 -kind: CustomResourceDefinition -metadata: - annotations: - controller-gen.kubebuilder.io/version: v0.14.0 - name: opensearchclusters.mdb.yandex-cloud.upjet.crossplane.io -spec: - group: mdb.yandex-cloud.upjet.crossplane.io - names: - categories: - - crossplane - - managed - - yandex-cloud - kind: OpensearchCluster - listKind: OpensearchClusterList - plural: opensearchclusters - singular: opensearchcluster - scope: Cluster - versions: - - additionalPrinterColumns: - - jsonPath: .status.conditions[?(@.type=='Synced')].status - name: SYNCED - type: string - - jsonPath: .status.conditions[?(@.type=='Ready')].status - name: READY - type: string - - jsonPath: .metadata.annotations.crossplane\.io/external-name - name: EXTERNAL-NAME - type: string - - jsonPath: .metadata.creationTimestamp - name: AGE - type: date - name: v1alpha1 - schema: - openAPIV3Schema: - description: OpensearchCluster is the Schema for the OpensearchClusters API. - Manages a OpenSearch cluster within Yandex.Cloud. - properties: - apiVersion: - description: |- - APIVersion defines the versioned schema of this representation of an object. - Servers should convert recognized schemas to the latest internal value, and - may reject unrecognized values. - More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources - type: string - kind: - description: |- - Kind is a string value representing the REST resource this object represents. - Servers may infer this from the endpoint the client submits requests to. - Cannot be updated. - In CamelCase. - More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds - type: string - metadata: - type: object - spec: - description: OpensearchClusterSpec defines the desired state of OpensearchCluster - properties: - deletionPolicy: - default: Delete - description: |- - DeletionPolicy specifies what will happen to the underlying external - when this managed resource is deleted - either "Delete" or "Orphan" the - external resource. - This field is planned to be deprecated in favor of the ManagementPolicies - field in a future release. Currently, both could be set independently and - non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 - enum: - - Orphan - - Delete - type: string - forProvider: - properties: - config: - description: Configuration of the OpenSearch cluster. The structure - is documented below. - items: - properties: - adminPasswordSecretRef: - description: Password for admin user of OpenSearch. - properties: - key: - description: The key to select. - type: string - name: - description: Name of the secret. - type: string - namespace: - description: Namespace of the secret. - type: string - required: - - key - - name - - namespace - type: object - dashboards: - description: Configuration for Dashboards node groups. The - structure is documented below. - items: - properties: - nodeGroups: - description: A set of named OpenSearch node group - configurations. The structure is documented below. - items: - properties: - assignPublicIp: - description: Sets whether the hosts should get - a public IP address on creation. - type: boolean - hostsCount: - type: number - name: - description: Name of OpenSearch node group. - type: string - resources: - description: Resources allocated to hosts of - this OpenSearch node group. The structure - is documented below. - items: - properties: - diskSize: - description: Volume of the storage available - to a host, in bytes. - type: number - diskTypeId: - description: Type of the storage of OpenSearch - hosts. - type: string - resourcePresetId: - type: string - type: object - type: array - subnetIds: - description: A set of the subnets, to which - the hosts belongs. The subnets must be a part - of the network to which the cluster belongs. - No other parameters should be changed simultaneously - with this one, except zones_ids. - items: - type: string - type: array - x-kubernetes-list-type: set - zoneIds: - items: - type: string - type: array - x-kubernetes-list-type: set - type: object - type: array - type: object - type: array - opensearch: - description: Configuration for OpenSearch node groups. The - structure is documented below. - items: - properties: - nodeGroups: - description: A set of named OpenSearch node group - configurations. The structure is documented below. - items: - properties: - assignPublicIp: - description: Sets whether the hosts should get - a public IP address on creation. - type: boolean - hostsCount: - type: number - name: - description: Name of OpenSearch node group. - type: string - resources: - description: Resources allocated to hosts of - this OpenSearch node group. The structure - is documented below. - items: - properties: - diskSize: - description: Volume of the storage available - to a host, in bytes. - type: number - diskTypeId: - description: Type of the storage of OpenSearch - hosts. - type: string - resourcePresetId: - type: string - type: object - type: array - roles: - description: 'A set of OpenSearch roles assigned - to hosts. Available roles are: DATA, MANAGER. - Default: [DATA, MANAGER]' - items: - type: string - type: array - x-kubernetes-list-type: set - subnetIds: - description: A set of the subnets, to which - the hosts belongs. The subnets must be a part - of the network to which the cluster belongs. - No other parameters should be changed simultaneously - with this one, except zones_ids. - items: - type: string - type: array - x-kubernetes-list-type: set - subnetIdsRefs: - description: References to Subnet in vpc to - populate subnetIds. - items: - description: A Reference to a named object. - properties: - name: - description: Name of the referenced object. - type: string - policy: - description: Policies for referencing. - properties: - resolution: - default: Required - description: |- - Resolution specifies whether resolution of this reference is required. - The default is 'Required', which means the reconcile will fail if the - reference cannot be resolved. 'Optional' means this reference will be - a no-op if it cannot be resolved. - enum: - - Required - - Optional - type: string - resolve: - description: |- - Resolve specifies when this reference should be resolved. The default - is 'IfNotPresent', which will attempt to resolve the reference only when - the corresponding field is not present. Use 'Always' to resolve the - reference on every reconcile. - enum: - - Always - - IfNotPresent - type: string - type: object - required: - - name - type: object - type: array - subnetIdsSelector: - description: Selector for a list of Subnet in - vpc to populate subnetIds. - properties: - matchControllerRef: - description: |- - MatchControllerRef ensures an object with the same controller reference - as the selecting object is selected. - type: boolean - matchLabels: - additionalProperties: - type: string - description: MatchLabels ensures an object - with matching labels is selected. - type: object - policy: - description: Policies for selection. - properties: - resolution: - default: Required - description: |- - Resolution specifies whether resolution of this reference is required. - The default is 'Required', which means the reconcile will fail if the - reference cannot be resolved. 'Optional' means this reference will be - a no-op if it cannot be resolved. - enum: - - Required - - Optional - type: string - resolve: - description: |- - Resolve specifies when this reference should be resolved. The default - is 'IfNotPresent', which will attempt to resolve the reference only when - the corresponding field is not present. Use 'Always' to resolve the - reference on every reconcile. - enum: - - Always - - IfNotPresent - type: string - type: object - type: object - zoneIds: - items: - type: string - type: array - x-kubernetes-list-type: set - type: object - type: array - plugins: - description: A set of requested OpenSearch plugins. - items: - type: string - type: array - x-kubernetes-list-type: set - type: object - type: array - version: - description: Version of OpenSearch. - type: string - type: object - type: array - deletionProtection: - description: Inhibits deletion of the cluster. Can be either - true or false. - type: boolean - description: - description: Description of the OpenSearch cluster. - type: string - environment: - description: 'Deployment environment of the OpenSearch cluster. - Can be either PRESTABLE or PRODUCTION. Default: PRODUCTION' - type: string - folderId: - description: The ID of the folder that the resource belongs to. - If it is not provided, the default provider folder is used. - type: string - folderIdRef: - description: Reference to a Folder in resourcemanager to populate - folderId. - properties: - name: - description: Name of the referenced object. - type: string - policy: - description: Policies for referencing. - properties: - resolution: - default: Required - description: |- - Resolution specifies whether resolution of this reference is required. - The default is 'Required', which means the reconcile will fail if the - reference cannot be resolved. 'Optional' means this reference will be - a no-op if it cannot be resolved. - enum: - - Required - - Optional - type: string - resolve: - description: |- - Resolve specifies when this reference should be resolved. The default - is 'IfNotPresent', which will attempt to resolve the reference only when - the corresponding field is not present. Use 'Always' to resolve the - reference on every reconcile. - enum: - - Always - - IfNotPresent - type: string - type: object - required: - - name - type: object - folderIdSelector: - description: Selector for a Folder in resourcemanager to populate - folderId. - properties: - matchControllerRef: - description: |- - MatchControllerRef ensures an object with the same controller reference - as the selecting object is selected. - type: boolean - matchLabels: - additionalProperties: - type: string - description: MatchLabels ensures an object with matching labels - is selected. - type: object - policy: - description: Policies for selection. - properties: - resolution: - default: Required - description: |- - Resolution specifies whether resolution of this reference is required. - The default is 'Required', which means the reconcile will fail if the - reference cannot be resolved. 'Optional' means this reference will be - a no-op if it cannot be resolved. - enum: - - Required - - Optional - type: string - resolve: - description: |- - Resolve specifies when this reference should be resolved. The default - is 'IfNotPresent', which will attempt to resolve the reference only when - the corresponding field is not present. Use 'Always' to resolve the - reference on every reconcile. - enum: - - Always - - IfNotPresent - type: string - type: object - type: object - labels: - additionalProperties: - type: string - description: A set of key/value label pairs to assign to the OpenSearch - cluster. - type: object - x-kubernetes-map-type: granular - maintenanceWindow: - items: - properties: - day: - description: 'Day of week for maintenance window if window - type is weekly. Possible values: MON, TUE, WED, THU, FRI, - SAT, SUN.' - type: string - hour: - description: Hour of day in UTC time zone (1-24) for maintenance - window if window type is weekly. - type: number - type: - description: Type of maintenance window. Can be either ANYTIME - or WEEKLY. A day and hour of window need to be specified - with weekly window. - type: string - type: object - type: array - name: - description: Name of the OpenSearch cluster. Provided by the client - when the cluster is created. - type: string - networkId: - description: ID of the network, to which the OpenSearch cluster - belongs. - type: string - networkIdRef: - description: Reference to a Network in vpc to populate networkId. - properties: - name: - description: Name of the referenced object. - type: string - policy: - description: Policies for referencing. - properties: - resolution: - default: Required - description: |- - Resolution specifies whether resolution of this reference is required. - The default is 'Required', which means the reconcile will fail if the - reference cannot be resolved. 'Optional' means this reference will be - a no-op if it cannot be resolved. - enum: - - Required - - Optional - type: string - resolve: - description: |- - Resolve specifies when this reference should be resolved. The default - is 'IfNotPresent', which will attempt to resolve the reference only when - the corresponding field is not present. Use 'Always' to resolve the - reference on every reconcile. - enum: - - Always - - IfNotPresent - type: string - type: object - required: - - name - type: object - networkIdSelector: - description: Selector for a Network in vpc to populate networkId. - properties: - matchControllerRef: - description: |- - MatchControllerRef ensures an object with the same controller reference - as the selecting object is selected. - type: boolean - matchLabels: - additionalProperties: - type: string - description: MatchLabels ensures an object with matching labels - is selected. - type: object - policy: - description: Policies for selection. - properties: - resolution: - default: Required - description: |- - Resolution specifies whether resolution of this reference is required. - The default is 'Required', which means the reconcile will fail if the - reference cannot be resolved. 'Optional' means this reference will be - a no-op if it cannot be resolved. - enum: - - Required - - Optional - type: string - resolve: - description: |- - Resolve specifies when this reference should be resolved. The default - is 'IfNotPresent', which will attempt to resolve the reference only when - the corresponding field is not present. Use 'Always' to resolve the - reference on every reconcile. - enum: - - Always - - IfNotPresent - type: string - type: object - type: object - securityGroupIds: - description: A set of ids of security groups assigned to hosts - of the cluster. - items: - type: string - type: array - x-kubernetes-list-type: set - securityGroupIdsRefs: - description: References to SecurityGroup in vpc to populate securityGroupIds. - items: - description: A Reference to a named object. - properties: - name: - description: Name of the referenced object. - type: string - policy: - description: Policies for referencing. - properties: - resolution: - default: Required - description: |- - Resolution specifies whether resolution of this reference is required. - The default is 'Required', which means the reconcile will fail if the - reference cannot be resolved. 'Optional' means this reference will be - a no-op if it cannot be resolved. - enum: - - Required - - Optional - type: string - resolve: - description: |- - Resolve specifies when this reference should be resolved. The default - is 'IfNotPresent', which will attempt to resolve the reference only when - the corresponding field is not present. Use 'Always' to resolve the - reference on every reconcile. - enum: - - Always - - IfNotPresent - type: string - type: object - required: - - name - type: object - type: array - securityGroupIdsSelector: - description: Selector for a list of SecurityGroup in vpc to populate - securityGroupIds. - properties: - matchControllerRef: - description: |- - MatchControllerRef ensures an object with the same controller reference - as the selecting object is selected. - type: boolean - matchLabels: - additionalProperties: - type: string - description: MatchLabels ensures an object with matching labels - is selected. - type: object - policy: - description: Policies for selection. - properties: - resolution: - default: Required - description: |- - Resolution specifies whether resolution of this reference is required. - The default is 'Required', which means the reconcile will fail if the - reference cannot be resolved. 'Optional' means this reference will be - a no-op if it cannot be resolved. - enum: - - Required - - Optional - type: string - resolve: - description: |- - Resolve specifies when this reference should be resolved. The default - is 'IfNotPresent', which will attempt to resolve the reference only when - the corresponding field is not present. Use 'Always' to resolve the - reference on every reconcile. - enum: - - Always - - IfNotPresent - type: string - type: object - type: object - serviceAccountId: - description: ID of the service account authorized for this cluster. - type: string - serviceAccountIdRef: - description: Reference to a ServiceAccount in iam to populate - serviceAccountId. - properties: - name: - description: Name of the referenced object. - type: string - policy: - description: Policies for referencing. - properties: - resolution: - default: Required - description: |- - Resolution specifies whether resolution of this reference is required. - The default is 'Required', which means the reconcile will fail if the - reference cannot be resolved. 'Optional' means this reference will be - a no-op if it cannot be resolved. - enum: - - Required - - Optional - type: string - resolve: - description: |- - Resolve specifies when this reference should be resolved. The default - is 'IfNotPresent', which will attempt to resolve the reference only when - the corresponding field is not present. Use 'Always' to resolve the - reference on every reconcile. - enum: - - Always - - IfNotPresent - type: string - type: object - required: - - name - type: object - serviceAccountIdSelector: - description: Selector for a ServiceAccount in iam to populate - serviceAccountId. - properties: - matchControllerRef: - description: |- - MatchControllerRef ensures an object with the same controller reference - as the selecting object is selected. - type: boolean - matchLabels: - additionalProperties: - type: string - description: MatchLabels ensures an object with matching labels - is selected. - type: object - policy: - description: Policies for selection. - properties: - resolution: - default: Required - description: |- - Resolution specifies whether resolution of this reference is required. - The default is 'Required', which means the reconcile will fail if the - reference cannot be resolved. 'Optional' means this reference will be - a no-op if it cannot be resolved. - enum: - - Required - - Optional - type: string - resolve: - description: |- - Resolve specifies when this reference should be resolved. The default - is 'IfNotPresent', which will attempt to resolve the reference only when - the corresponding field is not present. Use 'Always' to resolve the - reference on every reconcile. - enum: - - Always - - IfNotPresent - type: string - type: object - type: object - type: object - initProvider: - description: |- - THIS IS A BETA FIELD. It will be honored - unless the Management Policies feature flag is disabled. - InitProvider holds the same fields as ForProvider, with the exception - of Identifier and other resource reference fields. The fields that are - in InitProvider are merged into ForProvider when the resource is created. - The same fields are also added to the terraform ignore_changes hook, to - avoid updating them after creation. This is useful for fields that are - required on creation, but we do not desire to update them after creation, - for example because of an external controller is managing them, like an - autoscaler. - properties: - config: - description: Configuration of the OpenSearch cluster. The structure - is documented below. - items: - properties: - adminPasswordSecretRef: - description: Password for admin user of OpenSearch. - properties: - key: - description: The key to select. - type: string - name: - description: Name of the secret. - type: string - namespace: - description: Namespace of the secret. - type: string - required: - - key - - name - - namespace - type: object - dashboards: - description: Configuration for Dashboards node groups. The - structure is documented below. - items: - properties: - nodeGroups: - description: A set of named OpenSearch node group - configurations. The structure is documented below. - items: - properties: - assignPublicIp: - description: Sets whether the hosts should get - a public IP address on creation. - type: boolean - hostsCount: - type: number - name: - description: Name of OpenSearch node group. - type: string - resources: - description: Resources allocated to hosts of - this OpenSearch node group. The structure - is documented below. - items: - properties: - diskSize: - description: Volume of the storage available - to a host, in bytes. - type: number - diskTypeId: - description: Type of the storage of OpenSearch - hosts. - type: string - resourcePresetId: - type: string - type: object - type: array - subnetIds: - description: A set of the subnets, to which - the hosts belongs. The subnets must be a part - of the network to which the cluster belongs. - No other parameters should be changed simultaneously - with this one, except zones_ids. - items: - type: string - type: array - x-kubernetes-list-type: set - zoneIds: - items: - type: string - type: array - x-kubernetes-list-type: set - type: object - type: array - type: object - type: array - opensearch: - description: Configuration for OpenSearch node groups. The - structure is documented below. - items: - properties: - nodeGroups: - description: A set of named OpenSearch node group - configurations. The structure is documented below. - items: - properties: - assignPublicIp: - description: Sets whether the hosts should get - a public IP address on creation. - type: boolean - hostsCount: - type: number - name: - description: Name of OpenSearch node group. - type: string - resources: - description: Resources allocated to hosts of - this OpenSearch node group. The structure - is documented below. - items: - properties: - diskSize: - description: Volume of the storage available - to a host, in bytes. - type: number - diskTypeId: - description: Type of the storage of OpenSearch - hosts. - type: string - resourcePresetId: - type: string - type: object - type: array - roles: - description: 'A set of OpenSearch roles assigned - to hosts. Available roles are: DATA, MANAGER. - Default: [DATA, MANAGER]' - items: - type: string - type: array - x-kubernetes-list-type: set - subnetIds: - description: A set of the subnets, to which - the hosts belongs. The subnets must be a part - of the network to which the cluster belongs. - No other parameters should be changed simultaneously - with this one, except zones_ids. - items: - type: string - type: array - x-kubernetes-list-type: set - subnetIdsRefs: - description: References to Subnet in vpc to - populate subnetIds. - items: - description: A Reference to a named object. - properties: - name: - description: Name of the referenced object. - type: string - policy: - description: Policies for referencing. - properties: - resolution: - default: Required - description: |- - Resolution specifies whether resolution of this reference is required. - The default is 'Required', which means the reconcile will fail if the - reference cannot be resolved. 'Optional' means this reference will be - a no-op if it cannot be resolved. - enum: - - Required - - Optional - type: string - resolve: - description: |- - Resolve specifies when this reference should be resolved. The default - is 'IfNotPresent', which will attempt to resolve the reference only when - the corresponding field is not present. Use 'Always' to resolve the - reference on every reconcile. - enum: - - Always - - IfNotPresent - type: string - type: object - required: - - name - type: object - type: array - subnetIdsSelector: - description: Selector for a list of Subnet in - vpc to populate subnetIds. - properties: - matchControllerRef: - description: |- - MatchControllerRef ensures an object with the same controller reference - as the selecting object is selected. - type: boolean - matchLabels: - additionalProperties: - type: string - description: MatchLabels ensures an object - with matching labels is selected. - type: object - policy: - description: Policies for selection. - properties: - resolution: - default: Required - description: |- - Resolution specifies whether resolution of this reference is required. - The default is 'Required', which means the reconcile will fail if the - reference cannot be resolved. 'Optional' means this reference will be - a no-op if it cannot be resolved. - enum: - - Required - - Optional - type: string - resolve: - description: |- - Resolve specifies when this reference should be resolved. The default - is 'IfNotPresent', which will attempt to resolve the reference only when - the corresponding field is not present. Use 'Always' to resolve the - reference on every reconcile. - enum: - - Always - - IfNotPresent - type: string - type: object - type: object - zoneIds: - items: - type: string - type: array - x-kubernetes-list-type: set - type: object - type: array - plugins: - description: A set of requested OpenSearch plugins. - items: - type: string - type: array - x-kubernetes-list-type: set - type: object - type: array - version: - description: Version of OpenSearch. - type: string - required: - - adminPasswordSecretRef - type: object - type: array - deletionProtection: - description: Inhibits deletion of the cluster. Can be either - true or false. - type: boolean - description: - description: Description of the OpenSearch cluster. - type: string - environment: - description: 'Deployment environment of the OpenSearch cluster. - Can be either PRESTABLE or PRODUCTION. Default: PRODUCTION' - type: string - folderId: - description: The ID of the folder that the resource belongs to. - If it is not provided, the default provider folder is used. - type: string - folderIdRef: - description: Reference to a Folder in resourcemanager to populate - folderId. - properties: - name: - description: Name of the referenced object. - type: string - policy: - description: Policies for referencing. - properties: - resolution: - default: Required - description: |- - Resolution specifies whether resolution of this reference is required. - The default is 'Required', which means the reconcile will fail if the - reference cannot be resolved. 'Optional' means this reference will be - a no-op if it cannot be resolved. - enum: - - Required - - Optional - type: string - resolve: - description: |- - Resolve specifies when this reference should be resolved. The default - is 'IfNotPresent', which will attempt to resolve the reference only when - the corresponding field is not present. Use 'Always' to resolve the - reference on every reconcile. - enum: - - Always - - IfNotPresent - type: string - type: object - required: - - name - type: object - folderIdSelector: - description: Selector for a Folder in resourcemanager to populate - folderId. - properties: - matchControllerRef: - description: |- - MatchControllerRef ensures an object with the same controller reference - as the selecting object is selected. - type: boolean - matchLabels: - additionalProperties: - type: string - description: MatchLabels ensures an object with matching labels - is selected. - type: object - policy: - description: Policies for selection. - properties: - resolution: - default: Required - description: |- - Resolution specifies whether resolution of this reference is required. - The default is 'Required', which means the reconcile will fail if the - reference cannot be resolved. 'Optional' means this reference will be - a no-op if it cannot be resolved. - enum: - - Required - - Optional - type: string - resolve: - description: |- - Resolve specifies when this reference should be resolved. The default - is 'IfNotPresent', which will attempt to resolve the reference only when - the corresponding field is not present. Use 'Always' to resolve the - reference on every reconcile. - enum: - - Always - - IfNotPresent - type: string - type: object - type: object - labels: - additionalProperties: - type: string - description: A set of key/value label pairs to assign to the OpenSearch - cluster. - type: object - x-kubernetes-map-type: granular - maintenanceWindow: - items: - properties: - day: - description: 'Day of week for maintenance window if window - type is weekly. Possible values: MON, TUE, WED, THU, FRI, - SAT, SUN.' - type: string - hour: - description: Hour of day in UTC time zone (1-24) for maintenance - window if window type is weekly. - type: number - type: - description: Type of maintenance window. Can be either ANYTIME - or WEEKLY. A day and hour of window need to be specified - with weekly window. - type: string - type: object - type: array - name: - description: Name of the OpenSearch cluster. Provided by the client - when the cluster is created. - type: string - networkId: - description: ID of the network, to which the OpenSearch cluster - belongs. - type: string - networkIdRef: - description: Reference to a Network in vpc to populate networkId. - properties: - name: - description: Name of the referenced object. - type: string - policy: - description: Policies for referencing. - properties: - resolution: - default: Required - description: |- - Resolution specifies whether resolution of this reference is required. - The default is 'Required', which means the reconcile will fail if the - reference cannot be resolved. 'Optional' means this reference will be - a no-op if it cannot be resolved. - enum: - - Required - - Optional - type: string - resolve: - description: |- - Resolve specifies when this reference should be resolved. The default - is 'IfNotPresent', which will attempt to resolve the reference only when - the corresponding field is not present. Use 'Always' to resolve the - reference on every reconcile. - enum: - - Always - - IfNotPresent - type: string - type: object - required: - - name - type: object - networkIdSelector: - description: Selector for a Network in vpc to populate networkId. - properties: - matchControllerRef: - description: |- - MatchControllerRef ensures an object with the same controller reference - as the selecting object is selected. - type: boolean - matchLabels: - additionalProperties: - type: string - description: MatchLabels ensures an object with matching labels - is selected. - type: object - policy: - description: Policies for selection. - properties: - resolution: - default: Required - description: |- - Resolution specifies whether resolution of this reference is required. - The default is 'Required', which means the reconcile will fail if the - reference cannot be resolved. 'Optional' means this reference will be - a no-op if it cannot be resolved. - enum: - - Required - - Optional - type: string - resolve: - description: |- - Resolve specifies when this reference should be resolved. The default - is 'IfNotPresent', which will attempt to resolve the reference only when - the corresponding field is not present. Use 'Always' to resolve the - reference on every reconcile. - enum: - - Always - - IfNotPresent - type: string - type: object - type: object - securityGroupIds: - description: A set of ids of security groups assigned to hosts - of the cluster. - items: - type: string - type: array - x-kubernetes-list-type: set - securityGroupIdsRefs: - description: References to SecurityGroup in vpc to populate securityGroupIds. - items: - description: A Reference to a named object. - properties: - name: - description: Name of the referenced object. - type: string - policy: - description: Policies for referencing. - properties: - resolution: - default: Required - description: |- - Resolution specifies whether resolution of this reference is required. - The default is 'Required', which means the reconcile will fail if the - reference cannot be resolved. 'Optional' means this reference will be - a no-op if it cannot be resolved. - enum: - - Required - - Optional - type: string - resolve: - description: |- - Resolve specifies when this reference should be resolved. The default - is 'IfNotPresent', which will attempt to resolve the reference only when - the corresponding field is not present. Use 'Always' to resolve the - reference on every reconcile. - enum: - - Always - - IfNotPresent - type: string - type: object - required: - - name - type: object - type: array - securityGroupIdsSelector: - description: Selector for a list of SecurityGroup in vpc to populate - securityGroupIds. - properties: - matchControllerRef: - description: |- - MatchControllerRef ensures an object with the same controller reference - as the selecting object is selected. - type: boolean - matchLabels: - additionalProperties: - type: string - description: MatchLabels ensures an object with matching labels - is selected. - type: object - policy: - description: Policies for selection. - properties: - resolution: - default: Required - description: |- - Resolution specifies whether resolution of this reference is required. - The default is 'Required', which means the reconcile will fail if the - reference cannot be resolved. 'Optional' means this reference will be - a no-op if it cannot be resolved. - enum: - - Required - - Optional - type: string - resolve: - description: |- - Resolve specifies when this reference should be resolved. The default - is 'IfNotPresent', which will attempt to resolve the reference only when - the corresponding field is not present. Use 'Always' to resolve the - reference on every reconcile. - enum: - - Always - - IfNotPresent - type: string - type: object - type: object - serviceAccountId: - description: ID of the service account authorized for this cluster. - type: string - serviceAccountIdRef: - description: Reference to a ServiceAccount in iam to populate - serviceAccountId. - properties: - name: - description: Name of the referenced object. - type: string - policy: - description: Policies for referencing. - properties: - resolution: - default: Required - description: |- - Resolution specifies whether resolution of this reference is required. - The default is 'Required', which means the reconcile will fail if the - reference cannot be resolved. 'Optional' means this reference will be - a no-op if it cannot be resolved. - enum: - - Required - - Optional - type: string - resolve: - description: |- - Resolve specifies when this reference should be resolved. The default - is 'IfNotPresent', which will attempt to resolve the reference only when - the corresponding field is not present. Use 'Always' to resolve the - reference on every reconcile. - enum: - - Always - - IfNotPresent - type: string - type: object - required: - - name - type: object - serviceAccountIdSelector: - description: Selector for a ServiceAccount in iam to populate - serviceAccountId. - properties: - matchControllerRef: - description: |- - MatchControllerRef ensures an object with the same controller reference - as the selecting object is selected. - type: boolean - matchLabels: - additionalProperties: - type: string - description: MatchLabels ensures an object with matching labels - is selected. - type: object - policy: - description: Policies for selection. - properties: - resolution: - default: Required - description: |- - Resolution specifies whether resolution of this reference is required. - The default is 'Required', which means the reconcile will fail if the - reference cannot be resolved. 'Optional' means this reference will be - a no-op if it cannot be resolved. - enum: - - Required - - Optional - type: string - resolve: - description: |- - Resolve specifies when this reference should be resolved. The default - is 'IfNotPresent', which will attempt to resolve the reference only when - the corresponding field is not present. Use 'Always' to resolve the - reference on every reconcile. - enum: - - Always - - IfNotPresent - type: string - type: object - type: object - type: object - managementPolicies: - default: - - '*' - description: |- - THIS IS A BETA FIELD. It is on by default but can be opted out - through a Crossplane feature flag. - ManagementPolicies specify the array of actions Crossplane is allowed to - take on the managed and external resources. - This field is planned to replace the DeletionPolicy field in a future - release. Currently, both could be set independently and non-default - values would be honored if the feature flag is enabled. If both are - custom, the DeletionPolicy field will be ignored. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 - and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md - items: - description: |- - A ManagementAction represents an action that the Crossplane controllers - can take on an external resource. - enum: - - Observe - - Create - - Update - - Delete - - LateInitialize - - '*' - type: string - type: array - providerConfigRef: - default: - name: default - description: |- - ProviderConfigReference specifies how the provider that will be used to - create, observe, update, and delete this managed resource should be - configured. - properties: - name: - description: Name of the referenced object. - type: string - policy: - description: Policies for referencing. - properties: - resolution: - default: Required - description: |- - Resolution specifies whether resolution of this reference is required. - The default is 'Required', which means the reconcile will fail if the - reference cannot be resolved. 'Optional' means this reference will be - a no-op if it cannot be resolved. - enum: - - Required - - Optional - type: string - resolve: - description: |- - Resolve specifies when this reference should be resolved. The default - is 'IfNotPresent', which will attempt to resolve the reference only when - the corresponding field is not present. Use 'Always' to resolve the - reference on every reconcile. - enum: - - Always - - IfNotPresent - type: string - type: object - required: - - name - type: object - publishConnectionDetailsTo: - description: |- - PublishConnectionDetailsTo specifies the connection secret config which - contains a name, metadata and a reference to secret store config to - which any connection details for this managed resource should be written. - Connection details frequently include the endpoint, username, - and password required to connect to the managed resource. - properties: - configRef: - default: - name: default - description: |- - SecretStoreConfigRef specifies which secret store config should be used - for this ConnectionSecret. - properties: - name: - description: Name of the referenced object. - type: string - policy: - description: Policies for referencing. - properties: - resolution: - default: Required - description: |- - Resolution specifies whether resolution of this reference is required. - The default is 'Required', which means the reconcile will fail if the - reference cannot be resolved. 'Optional' means this reference will be - a no-op if it cannot be resolved. - enum: - - Required - - Optional - type: string - resolve: - description: |- - Resolve specifies when this reference should be resolved. The default - is 'IfNotPresent', which will attempt to resolve the reference only when - the corresponding field is not present. Use 'Always' to resolve the - reference on every reconcile. - enum: - - Always - - IfNotPresent - type: string - type: object - required: - - name - type: object - metadata: - description: Metadata is the metadata for connection secret. - properties: - annotations: - additionalProperties: - type: string - description: |- - Annotations are the annotations to be added to connection secret. - - For Kubernetes secrets, this will be used as "metadata.annotations". - - It is up to Secret Store implementation for others store types. - type: object - labels: - additionalProperties: - type: string - description: |- - Labels are the labels/tags to be added to connection secret. - - For Kubernetes secrets, this will be used as "metadata.labels". - - It is up to Secret Store implementation for others store types. - type: object - type: - description: |- - Type is the SecretType for the connection secret. - - Only valid for Kubernetes Secret Stores. - type: string - type: object - name: - description: Name is the name of the connection secret. - type: string - required: - - name - type: object - writeConnectionSecretToRef: - description: |- - WriteConnectionSecretToReference specifies the namespace and name of a - Secret to which any connection details for this managed resource should - be written. Connection details frequently include the endpoint, username, - and password required to connect to the managed resource. - This field is planned to be replaced in a future release in favor of - PublishConnectionDetailsTo. Currently, both could be set independently - and connection details would be published to both without affecting - each other. - properties: - name: - description: Name of the secret. - type: string - namespace: - description: Namespace of the secret. - type: string - required: - - name - - namespace - type: object - required: - - forProvider - type: object - x-kubernetes-validations: - - message: spec.forProvider.name is a required parameter - rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies - || ''Update'' in self.managementPolicies) || has(self.forProvider.name) - || (has(self.initProvider) && has(self.initProvider.name))' - status: - description: OpensearchClusterStatus defines the observed state of OpensearchCluster. - properties: - atProvider: - properties: - config: - description: Configuration of the OpenSearch cluster. The structure - is documented below. - items: - properties: - dashboards: - description: Configuration for Dashboards node groups. The - structure is documented below. - items: - properties: - nodeGroups: - description: A set of named OpenSearch node group - configurations. The structure is documented below. - items: - properties: - assignPublicIp: - description: Sets whether the hosts should get - a public IP address on creation. - type: boolean - hostsCount: - type: number - name: - description: Name of OpenSearch node group. - type: string - resources: - description: Resources allocated to hosts of - this OpenSearch node group. The structure - is documented below. - items: - properties: - diskSize: - description: Volume of the storage available - to a host, in bytes. - type: number - diskTypeId: - description: Type of the storage of OpenSearch - hosts. - type: string - resourcePresetId: - type: string - type: object - type: array - subnetIds: - description: A set of the subnets, to which - the hosts belongs. The subnets must be a part - of the network to which the cluster belongs. - No other parameters should be changed simultaneously - with this one, except zones_ids. - items: - type: string - type: array - x-kubernetes-list-type: set - zoneIds: - items: - type: string - type: array - x-kubernetes-list-type: set - type: object - type: array - type: object - type: array - opensearch: - description: Configuration for OpenSearch node groups. The - structure is documented below. - items: - properties: - nodeGroups: - description: A set of named OpenSearch node group - configurations. The structure is documented below. - items: - properties: - assignPublicIp: - description: Sets whether the hosts should get - a public IP address on creation. - type: boolean - hostsCount: - type: number - name: - description: Name of OpenSearch node group. - type: string - resources: - description: Resources allocated to hosts of - this OpenSearch node group. The structure - is documented below. - items: - properties: - diskSize: - description: Volume of the storage available - to a host, in bytes. - type: number - diskTypeId: - description: Type of the storage of OpenSearch - hosts. - type: string - resourcePresetId: - type: string - type: object - type: array - roles: - description: 'A set of OpenSearch roles assigned - to hosts. Available roles are: DATA, MANAGER. - Default: [DATA, MANAGER]' - items: - type: string - type: array - x-kubernetes-list-type: set - subnetIds: - description: A set of the subnets, to which - the hosts belongs. The subnets must be a part - of the network to which the cluster belongs. - No other parameters should be changed simultaneously - with this one, except zones_ids. - items: - type: string - type: array - x-kubernetes-list-type: set - zoneIds: - items: - type: string - type: array - x-kubernetes-list-type: set - type: object - type: array - plugins: - description: A set of requested OpenSearch plugins. - items: - type: string - type: array - x-kubernetes-list-type: set - type: object - type: array - version: - description: Version of OpenSearch. - type: string - type: object - type: array - createdAt: - description: Creation timestamp of the key. - type: string - deletionProtection: - description: Inhibits deletion of the cluster. Can be either - true or false. - type: boolean - description: - description: Description of the OpenSearch cluster. - type: string - environment: - description: 'Deployment environment of the OpenSearch cluster. - Can be either PRESTABLE or PRODUCTION. Default: PRODUCTION' - type: string - folderId: - description: The ID of the folder that the resource belongs to. - If it is not provided, the default provider folder is used. - type: string - health: - description: |- - Aggregated health of the cluster. Can be either ALIVE, DEGRADED, DEAD or HEALTH_UNKNOWN. - For more information see health field of JSON representation in the official documentation. - type: string - hosts: - description: A hosts of the OpenSearch cluster. The structure - is documented below. - items: - properties: - assignPublicIp: - description: Sets whether the host should get a public IP - address. Can be either true or false. - type: boolean - fqdn: - description: The fully qualified domain name of the host. - type: string - roles: - description: The roles of the deployed host. Can contain - DATA and/or MANAGER roles. Will be empty for DASHBOARDS - type. - items: - type: string - type: array - x-kubernetes-list-type: set - subnetId: - description: |- - The ID of the subnet, to which the host belongs. The subnet must - be a part of the network to which the cluster belongs. - type: string - type: - description: The type of the deployed host. Can be either - OPENSEARCH or DASHBOARDS. - type: string - zone: - description: |- - The availability zone where the OpenSearch host will be created. - For more information see the official documentation. - type: string - type: object - type: array - id: - type: string - labels: - additionalProperties: - type: string - description: A set of key/value label pairs to assign to the OpenSearch - cluster. - type: object - x-kubernetes-map-type: granular - maintenanceWindow: - items: - properties: - day: - description: 'Day of week for maintenance window if window - type is weekly. Possible values: MON, TUE, WED, THU, FRI, - SAT, SUN.' - type: string - hour: - description: Hour of day in UTC time zone (1-24) for maintenance - window if window type is weekly. - type: number - type: - description: Type of maintenance window. Can be either ANYTIME - or WEEKLY. A day and hour of window need to be specified - with weekly window. - type: string - type: object - type: array - name: - description: Name of the OpenSearch cluster. Provided by the client - when the cluster is created. - type: string - networkId: - description: ID of the network, to which the OpenSearch cluster - belongs. - type: string - securityGroupIds: - description: A set of ids of security groups assigned to hosts - of the cluster. - items: - type: string - type: array - x-kubernetes-list-type: set - serviceAccountId: - description: ID of the service account authorized for this cluster. - type: string - status: - description: |- - Status of the cluster. Can be either CREATING, STARTING, RUNNING, UPDATING, STOPPING, STOPPED, ERROR or STATUS_UNKNOWN. - For more information see status field of JSON representation in the official documentation. - type: string - type: object - conditions: - description: Conditions of the resource. - items: - description: A Condition that may apply to a resource. - properties: - lastTransitionTime: - description: |- - LastTransitionTime is the last time this condition transitioned from one - status to another. - format: date-time - type: string - message: - description: |- - A Message containing details about this condition's last transition from - one status to another, if any. - type: string - observedGeneration: - description: |- - ObservedGeneration represents the .metadata.generation that the condition was set based upon. - For instance, if .metadata.generation is currently 12, but the .status.conditions[x].observedGeneration is 9, the condition is out of date - with respect to the current state of the instance. - format: int64 - type: integer - reason: - description: A Reason for this condition's last transition from - one status to another. - type: string - status: - description: Status of this condition; is it currently True, - False, or Unknown? - type: string - type: - description: |- - Type of this condition. At most one of each condition type may apply to - a resource at any point in time. - type: string - required: - - lastTransitionTime - - reason - - status - - type - type: object - type: array - x-kubernetes-list-map-keys: - - type - x-kubernetes-list-type: map - observedGeneration: - description: |- - ObservedGeneration is the latest metadata.generation - which resulted in either a ready state, or stalled due to error - it can not recover from without human intervention. - format: int64 - type: integer - type: object - required: - - spec - type: object - served: true - storage: true - subresources: - status: {} diff --git a/package/crds/mdb.yandex-cloud.upjet.crossplane.io_postgresqlclusters.yaml b/package/crds/mdb.yandex-cloud.upjet.crossplane.io_postgresqlclusters.yaml index d0ec674..08c0b4a 100644 --- a/package/crds/mdb.yandex-cloud.upjet.crossplane.io_postgresqlclusters.yaml +++ b/package/crds/mdb.yandex-cloud.upjet.crossplane.io_postgresqlclusters.yaml @@ -237,8 +237,8 @@ spec: type: object type: array deletionProtection: - description: Inhibits deletion of the cluster. Can be either - true or false. + description: Inhibits deletion of the cluster. Can be either true + or false. type: boolean description: description: Description of the PostgreSQL cluster. @@ -337,9 +337,12 @@ spec: when name is set. type: boolean name: - description: |- - Host state name. It should be set for all hosts or unset for all hosts. This field can be used by another host, to select which host will be its replication source. Please see replication_source_name parameter. - Also, this field is used to select which host will be selected as a master host. Please see host_master_name parameter. + description: Host state name. It should be set for all hosts + or unset for all hosts. This field can be used by another + host, to select which host will be its replication source. + Please see replication_source_name parameter. Also, this + field is used to select which host will be selected as + a master host. Please see host_master_name parameter. type: string priority: description: Host priority in HA group. It works only when @@ -889,8 +892,8 @@ spec: type: object type: array deletionProtection: - description: Inhibits deletion of the cluster. Can be either - true or false. + description: Inhibits deletion of the cluster. Can be either true + or false. type: boolean description: description: Description of the PostgreSQL cluster. @@ -989,9 +992,12 @@ spec: when name is set. type: boolean name: - description: |- - Host state name. It should be set for all hosts or unset for all hosts. This field can be used by another host, to select which host will be its replication source. Please see replication_source_name parameter. - Also, this field is used to select which host will be selected as a master host. Please see host_master_name parameter. + description: Host state name. It should be set for all hosts + or unset for all hosts. This field can be used by another + host, to select which host will be its replication source. + Please see replication_source_name parameter. Also, this + field is used to select which host will be selected as + a master host. Please see host_master_name parameter. type: string priority: description: Host priority in HA group. It works only when @@ -1722,8 +1728,8 @@ spec: type: object type: array deletionProtection: - description: Inhibits deletion of the cluster. Can be either - true or false. + description: Inhibits deletion of the cluster. Can be either true + or false. type: boolean description: description: Description of the PostgreSQL cluster. @@ -1753,9 +1759,12 @@ spec: of the host. type: string name: - description: |- - Host state name. It should be set for all hosts or unset for all hosts. This field can be used by another host, to select which host will be its replication source. Please see replication_source_name parameter. - Also, this field is used to select which host will be selected as a master host. Please see host_master_name parameter. + description: Host state name. It should be set for all hosts + or unset for all hosts. This field can be used by another + host, to select which host will be its replication source. + Please see replication_source_name parameter. Also, this + field is used to select which host will be selected as + a master host. Please see host_master_name parameter. type: string priority: description: Host priority in HA group. It works only when diff --git a/package/crds/mdb.yandex-cloud.upjet.crossplane.io_redisclusters.yaml b/package/crds/mdb.yandex-cloud.upjet.crossplane.io_redisclusters.yaml index 298ecd5..a980709 100644 --- a/package/crds/mdb.yandex-cloud.upjet.crossplane.io_redisclusters.yaml +++ b/package/crds/mdb.yandex-cloud.upjet.crossplane.io_redisclusters.yaml @@ -73,6 +73,21 @@ spec: type: string forProvider: properties: + access: + description: Access policy to the Redis cluster. The structure + is documented below. + items: + properties: + dataLens: + description: Allow access for DataLens. Can be either true + or false. + type: boolean + webSql: + description: Allow access for Web SQL. Can be either true + or false. + type: boolean + type: object + type: array announceHostnames: description: Announce fqdn instead of ip address. type: boolean @@ -82,14 +97,12 @@ spec: items: properties: clientOutputBufferLimitNormal: - description: |- - Normal clients output buffer limits. - See redis config file. + description: Normal clients output buffer limits. See redis + config file. type: string clientOutputBufferLimitPubsub: - description: |- - Pubsub clients output buffer limits. - See redis config file. + description: Pubsub clients output buffer limits. See redis + config file. type: string databases: description: Number of databases (changing requires redis-server @@ -99,9 +112,9 @@ spec: description: Redis maxmemory usage in percent type: number maxmemoryPolicy: - description: |- - Redis key eviction policy for a dataset that reaches maximum memory. - Can be any of the listed in the official RedisDB documentation. + description: Redis key eviction policy for a dataset that + reaches maximum memory. Can be any of the listed in the + official RedisDB documentation. type: string notifyKeyspaceEvents: description: Select the events that Redis will notify among @@ -140,20 +153,33 @@ spec: type: object type: array deletionProtection: - description: Inhibits deletion of the cluster. Can be either - true or false. + description: Inhibits deletion of the cluster. Can be either true + or false. type: boolean description: description: Description of the Redis cluster. type: string + diskSizeAutoscaling: + items: + properties: + diskSizeLimit: + description: Limit of disk size after autoscaling (GiB). + type: number + emergencyUsageThreshold: + description: Immediate autoscaling disk usage (percent). + type: number + plannedUsageThreshold: + description: Maintenance window autoscaling disk usage (percent). + type: number + type: object + type: array environment: description: Deployment environment of the Redis cluster. Can be either PRESTABLE or PRODUCTION. type: string folderId: - description: |- - The ID of the folder that the resource belongs to. If it - is not provided, the default provider folder is used. + description: The ID of the folder that the resource belongs to. + If it is not provided, the default provider folder is used. type: string folderIdRef: description: Reference to a Folder in resourcemanager to populate @@ -248,9 +274,9 @@ spec: description: The name of the shard to which the host belongs. type: string subnetId: - description: |- - The ID of the subnet, to which the host belongs. The subnet must - be a part of the network to which the cluster belongs. + description: The ID of the subnet, to which the host belongs. + The subnet must be a part of the network to which the + cluster belongs. type: string subnetIdRef: description: Reference to a Subnet in vpc to populate subnetId. @@ -327,9 +353,9 @@ spec: type: object type: object zone: - description: |- - The availability zone where the Redis host will be created. - For more information see the official documentation. + description: The availability zone where the Redis host + will be created. For more information see the official + documentation. type: string type: object type: array @@ -546,9 +572,9 @@ spec: type: object type: object sharded: - description: |- - Redis Cluster mode enabled/disabled. Enables sharding when cluster non-sharded. - If cluster is sharded - disabling is not allowed. + description: Redis Cluster mode enabled/disabled. Enables sharding + when cluster non-sharded. If cluster is sharded - disabling + is not allowed. type: boolean tlsEnabled: description: TLS support mode enabled/disabled. @@ -567,6 +593,21 @@ spec: for example because of an external controller is managing them, like an autoscaler. properties: + access: + description: Access policy to the Redis cluster. The structure + is documented below. + items: + properties: + dataLens: + description: Allow access for DataLens. Can be either true + or false. + type: boolean + webSql: + description: Allow access for Web SQL. Can be either true + or false. + type: boolean + type: object + type: array announceHostnames: description: Announce fqdn instead of ip address. type: boolean @@ -576,14 +617,12 @@ spec: items: properties: clientOutputBufferLimitNormal: - description: |- - Normal clients output buffer limits. - See redis config file. + description: Normal clients output buffer limits. See redis + config file. type: string clientOutputBufferLimitPubsub: - description: |- - Pubsub clients output buffer limits. - See redis config file. + description: Pubsub clients output buffer limits. See redis + config file. type: string databases: description: Number of databases (changing requires redis-server @@ -593,9 +632,9 @@ spec: description: Redis maxmemory usage in percent type: number maxmemoryPolicy: - description: |- - Redis key eviction policy for a dataset that reaches maximum memory. - Can be any of the listed in the official RedisDB documentation. + description: Redis key eviction policy for a dataset that + reaches maximum memory. Can be any of the listed in the + official RedisDB documentation. type: string notifyKeyspaceEvents: description: Select the events that Redis will notify among @@ -636,20 +675,33 @@ spec: type: object type: array deletionProtection: - description: Inhibits deletion of the cluster. Can be either - true or false. + description: Inhibits deletion of the cluster. Can be either true + or false. type: boolean description: description: Description of the Redis cluster. type: string + diskSizeAutoscaling: + items: + properties: + diskSizeLimit: + description: Limit of disk size after autoscaling (GiB). + type: number + emergencyUsageThreshold: + description: Immediate autoscaling disk usage (percent). + type: number + plannedUsageThreshold: + description: Maintenance window autoscaling disk usage (percent). + type: number + type: object + type: array environment: description: Deployment environment of the Redis cluster. Can be either PRESTABLE or PRODUCTION. type: string folderId: - description: |- - The ID of the folder that the resource belongs to. If it - is not provided, the default provider folder is used. + description: The ID of the folder that the resource belongs to. + If it is not provided, the default provider folder is used. type: string folderIdRef: description: Reference to a Folder in resourcemanager to populate @@ -744,9 +796,9 @@ spec: description: The name of the shard to which the host belongs. type: string subnetId: - description: |- - The ID of the subnet, to which the host belongs. The subnet must - be a part of the network to which the cluster belongs. + description: The ID of the subnet, to which the host belongs. + The subnet must be a part of the network to which the + cluster belongs. type: string subnetIdRef: description: Reference to a Subnet in vpc to populate subnetId. @@ -823,9 +875,9 @@ spec: type: object type: object zone: - description: |- - The availability zone where the Redis host will be created. - For more information see the official documentation. + description: The availability zone where the Redis host + will be created. For more information see the official + documentation. type: string type: object type: array @@ -1042,9 +1094,9 @@ spec: type: object type: object sharded: - description: |- - Redis Cluster mode enabled/disabled. Enables sharding when cluster non-sharded. - If cluster is sharded - disabling is not allowed. + description: Redis Cluster mode enabled/disabled. Enables sharding + when cluster non-sharded. If cluster is sharded - disabling + is not allowed. type: boolean tlsEnabled: description: TLS support mode enabled/disabled. @@ -1243,6 +1295,21 @@ spec: properties: atProvider: properties: + access: + description: Access policy to the Redis cluster. The structure + is documented below. + items: + properties: + dataLens: + description: Allow access for DataLens. Can be either true + or false. + type: boolean + webSql: + description: Allow access for Web SQL. Can be either true + or false. + type: boolean + type: object + type: array announceHostnames: description: Announce fqdn instead of ip address. type: boolean @@ -1252,14 +1319,12 @@ spec: items: properties: clientOutputBufferLimitNormal: - description: |- - Normal clients output buffer limits. - See redis config file. + description: Normal clients output buffer limits. See redis + config file. type: string clientOutputBufferLimitPubsub: - description: |- - Pubsub clients output buffer limits. - See redis config file. + description: Pubsub clients output buffer limits. See redis + config file. type: string databases: description: Number of databases (changing requires redis-server @@ -1269,9 +1334,9 @@ spec: description: Redis maxmemory usage in percent type: number maxmemoryPolicy: - description: |- - Redis key eviction policy for a dataset that reaches maximum memory. - Can be any of the listed in the official RedisDB documentation. + description: Redis key eviction policy for a dataset that + reaches maximum memory. Can be any of the listed in the + official RedisDB documentation. type: string notifyKeyspaceEvents: description: Select the events that Redis will notify among @@ -1296,25 +1361,38 @@ spec: description: Creation timestamp of the key. type: string deletionProtection: - description: Inhibits deletion of the cluster. Can be either - true or false. + description: Inhibits deletion of the cluster. Can be either true + or false. type: boolean description: description: Description of the Redis cluster. type: string + diskSizeAutoscaling: + items: + properties: + diskSizeLimit: + description: Limit of disk size after autoscaling (GiB). + type: number + emergencyUsageThreshold: + description: Immediate autoscaling disk usage (percent). + type: number + plannedUsageThreshold: + description: Maintenance window autoscaling disk usage (percent). + type: number + type: object + type: array environment: description: Deployment environment of the Redis cluster. Can be either PRESTABLE or PRODUCTION. type: string folderId: - description: |- - The ID of the folder that the resource belongs to. If it - is not provided, the default provider folder is used. + description: The ID of the folder that the resource belongs to. + If it is not provided, the default provider folder is used. type: string health: - description: |- - Aggregated health of the cluster. Can be either ALIVE, DEGRADED, DEAD or HEALTH_UNKNOWN. - For more information see health field of JSON representation in the official documentation. + description: Aggregated health of the cluster. Can be either ALIVE, + DEGRADED, DEAD or HEALTH_UNKNOWN. For more information see health + field of JSON representation in the official documentation. type: string host: description: A host of the Redis cluster. The structure is documented @@ -1336,14 +1414,14 @@ spec: description: The name of the shard to which the host belongs. type: string subnetId: - description: |- - The ID of the subnet, to which the host belongs. The subnet must - be a part of the network to which the cluster belongs. + description: The ID of the subnet, to which the host belongs. + The subnet must be a part of the network to which the + cluster belongs. type: string zone: - description: |- - The availability zone where the Redis host will be created. - For more information see the official documentation. + description: The availability zone where the Redis host + will be created. For more information see the official + documentation. type: string type: object type: array @@ -1410,14 +1488,15 @@ spec: type: array x-kubernetes-list-type: set sharded: - description: |- - Redis Cluster mode enabled/disabled. Enables sharding when cluster non-sharded. - If cluster is sharded - disabling is not allowed. + description: Redis Cluster mode enabled/disabled. Enables sharding + when cluster non-sharded. If cluster is sharded - disabling + is not allowed. type: boolean status: - description: |- - Status of the cluster. Can be either CREATING, STARTING, RUNNING, UPDATING, STOPPING, STOPPED, ERROR or STATUS_UNKNOWN. - For more information see status field of JSON representation in the official documentation. + description: Status of the cluster. Can be either CREATING, STARTING, + RUNNING, UPDATING, STOPPING, STOPPED, ERROR or STATUS_UNKNOWN. + For more information see status field of JSON representation + in the official documentation. type: string tlsEnabled: description: TLS support mode enabled/disabled. diff --git a/package/crds/mdb.yandex-cloud.upjet.crossplane.io_sqlserverclusters.yaml b/package/crds/mdb.yandex-cloud.upjet.crossplane.io_sqlserverclusters.yaml index e255a1a..877c44e 100644 --- a/package/crds/mdb.yandex-cloud.upjet.crossplane.io_sqlserverclusters.yaml +++ b/package/crds/mdb.yandex-cloud.upjet.crossplane.io_sqlserverclusters.yaml @@ -97,8 +97,8 @@ spec: type: object type: array deletionProtection: - description: Inhibits deletion of the cluster. Can be either - true or false. + description: Inhibits deletion of the cluster. Can be either true + or false. type: boolean description: description: Description of the SQLServer cluster. @@ -108,9 +108,8 @@ spec: (PRODUCTION, PRESTABLE) type: string folderId: - description: |- - The ID of the folder that the resource belongs to. If it - is not provided, the default provider folder is used. + description: The ID of the folder that the resource belongs to. + If it is not provided, the default provider folder is used. type: string folderIdRef: description: Reference to a Folder in resourcemanager to populate @@ -526,9 +525,10 @@ spec: grants access to. type: string roles: - description: |- - List user's roles in the database. - Allowed roles: OWNER, SECURITYADMIN, ACCESSADMIN, BACKUPOPERATOR, DDLADMIN, DATAWRITER, DATAREADER, DENYDATAWRITER, DENYDATAREADER. + description: 'List user''s roles in the database. + Allowed roles: OWNER, SECURITYADMIN, ACCESSADMIN, + BACKUPOPERATOR, DDLADMIN, DATAWRITER, DATAREADER, + DENYDATAWRITER, DENYDATAREADER.' items: type: string type: array @@ -578,8 +578,8 @@ spec: type: object type: array deletionProtection: - description: Inhibits deletion of the cluster. Can be either - true or false. + description: Inhibits deletion of the cluster. Can be either true + or false. type: boolean description: description: Description of the SQLServer cluster. @@ -589,9 +589,8 @@ spec: (PRODUCTION, PRESTABLE) type: string folderId: - description: |- - The ID of the folder that the resource belongs to. If it - is not provided, the default provider folder is used. + description: The ID of the folder that the resource belongs to. + If it is not provided, the default provider folder is used. type: string folderIdRef: description: Reference to a Folder in resourcemanager to populate @@ -1007,9 +1006,10 @@ spec: grants access to. type: string roles: - description: |- - List user's roles in the database. - Allowed roles: OWNER, SECURITYADMIN, ACCESSADMIN, BACKUPOPERATOR, DDLADMIN, DATAWRITER, DATAREADER, DENYDATAWRITER, DENYDATAREADER. + description: 'List user''s roles in the database. + Allowed roles: OWNER, SECURITYADMIN, ACCESSADMIN, + BACKUPOPERATOR, DDLADMIN, DATAWRITER, DATAREADER, + DENYDATAWRITER, DENYDATAREADER.' items: type: string type: array @@ -1252,8 +1252,8 @@ spec: type: object type: array deletionProtection: - description: Inhibits deletion of the cluster. Can be either - true or false. + description: Inhibits deletion of the cluster. Can be either true + or false. type: boolean description: description: Description of the SQLServer cluster. @@ -1263,9 +1263,8 @@ spec: (PRODUCTION, PRESTABLE) type: string folderId: - description: |- - The ID of the folder that the resource belongs to. If it - is not provided, the default provider folder is used. + description: The ID of the folder that the resource belongs to. + If it is not provided, the default provider folder is used. type: string health: description: Aggregated health of the cluster. @@ -1374,9 +1373,10 @@ spec: grants access to. type: string roles: - description: |- - List user's roles in the database. - Allowed roles: OWNER, SECURITYADMIN, ACCESSADMIN, BACKUPOPERATOR, DDLADMIN, DATAWRITER, DATAREADER, DENYDATAWRITER, DENYDATAREADER. + description: 'List user''s roles in the database. + Allowed roles: OWNER, SECURITYADMIN, ACCESSADMIN, + BACKUPOPERATOR, DDLADMIN, DATAWRITER, DATAREADER, + DENYDATAWRITER, DENYDATAREADER.' items: type: string type: array diff --git a/package/crds/message.yandex-cloud.upjet.crossplane.io_queues.yaml b/package/crds/message.yandex-cloud.upjet.crossplane.io_queues.yaml index 9b5fc9c..e01ac8f 100644 --- a/package/crds/message.yandex-cloud.upjet.crossplane.io_queues.yaml +++ b/package/crds/message.yandex-cloud.upjet.crossplane.io_queues.yaml @@ -203,9 +203,8 @@ spec: this page.' type: string regionId: - description: |- - ID of the region where the message queue is located at. - The default is 'ru-central1'. + description: ID of the region where the message queue is located + at. The default is 'ru-central1'. type: string secretKeySecretRef: description: The secret key to use when applying changes. If omitted, @@ -375,9 +374,8 @@ spec: this page.' type: string regionId: - description: |- - ID of the region where the message queue is located at. - The default is 'ru-central1'. + description: ID of the region where the message queue is located + at. The default is 'ru-central1'. type: string secretKeySecretRef: description: The secret key to use when applying changes. If omitted, @@ -637,9 +635,8 @@ spec: this page.' type: string regionId: - description: |- - ID of the region where the message queue is located at. - The default is 'ru-central1'. + description: ID of the region where the message queue is located + at. The default is 'ru-central1'. type: string visibilityTimeoutSeconds: description: 'Visibility timeout for messages in a queue, specified diff --git a/package/crds/organizationmanager.yandex-cloud.upjet.crossplane.io_groupiammembers.yaml b/package/crds/organizationmanager.yandex-cloud.upjet.crossplane.io_groupiammembers.yaml index 9489296..d65f3fb 100644 --- a/package/crds/organizationmanager.yandex-cloud.upjet.crossplane.io_groupiammembers.yaml +++ b/package/crds/organizationmanager.yandex-cloud.upjet.crossplane.io_groupiammembers.yaml @@ -152,9 +152,9 @@ spec: type: object type: object member: - description: |- - The identity that will be granted the privilege that is specified in the role field. - This field can have one of the following values: + description: 'The identity that will be granted the privilege + that is specified in the role field. This field can have one + of the following values:' type: string role: description: The role that should be assigned. @@ -253,9 +253,9 @@ spec: type: object type: object member: - description: |- - The identity that will be granted the privilege that is specified in the role field. - This field can have one of the following values: + description: 'The identity that will be granted the privilege + that is specified in the role field. This field can have one + of the following values:' type: string role: description: The role that should be assigned. @@ -450,9 +450,9 @@ spec: id: type: string member: - description: |- - The identity that will be granted the privilege that is specified in the role field. - This field can have one of the following values: + description: 'The identity that will be granted the privilege + that is specified in the role field. This field can have one + of the following values:' type: string role: description: The role that should be assigned. diff --git a/package/crds/organizationmanager.yandex-cloud.upjet.crossplane.io_organizationiambindings.yaml b/package/crds/organizationmanager.yandex-cloud.upjet.crossplane.io_organizationiambindings.yaml index 28d20e3..a35d6bc 100644 --- a/package/crds/organizationmanager.yandex-cloud.upjet.crossplane.io_organizationiambindings.yaml +++ b/package/crds/organizationmanager.yandex-cloud.upjet.crossplane.io_organizationiambindings.yaml @@ -75,9 +75,9 @@ spec: forProvider: properties: members: - description: |- - An array of identities that will be granted the privilege in the role. - Each entry can have one of the following values: + description: 'An array of identities that will be granted the + privilege in the role. Each entry can have one of the following + values:' items: type: string type: array @@ -86,9 +86,8 @@ spec: description: ID of the organization to attach the policy to. type: string role: - description: |- - The role that should be assigned. Only one - yandex_organizationmanager_organization_iam_binding can be used per role. + description: The role that should be assigned. Only one yandex_organizationmanager_organization_iam_binding + can be used per role. type: string sleepAfter: type: number @@ -107,9 +106,9 @@ spec: autoscaler. properties: members: - description: |- - An array of identities that will be granted the privilege in the role. - Each entry can have one of the following values: + description: 'An array of identities that will be granted the + privilege in the role. Each entry can have one of the following + values:' items: type: string type: array @@ -118,9 +117,8 @@ spec: description: ID of the organization to attach the policy to. type: string role: - description: |- - The role that should be assigned. Only one - yandex_organizationmanager_organization_iam_binding can be used per role. + description: The role that should be assigned. Only one yandex_organizationmanager_organization_iam_binding + can be used per role. type: string sleepAfter: type: number @@ -314,9 +312,9 @@ spec: id: type: string members: - description: |- - An array of identities that will be granted the privilege in the role. - Each entry can have one of the following values: + description: 'An array of identities that will be granted the + privilege in the role. Each entry can have one of the following + values:' items: type: string type: array @@ -325,9 +323,8 @@ spec: description: ID of the organization to attach the policy to. type: string role: - description: |- - The role that should be assigned. Only one - yandex_organizationmanager_organization_iam_binding can be used per role. + description: The role that should be assigned. Only one yandex_organizationmanager_organization_iam_binding + can be used per role. type: string sleepAfter: type: number diff --git a/package/crds/organizationmanager.yandex-cloud.upjet.crossplane.io_organizationiammembers.yaml b/package/crds/organizationmanager.yandex-cloud.upjet.crossplane.io_organizationiammembers.yaml index 7308f2f..8c21fca 100644 --- a/package/crds/organizationmanager.yandex-cloud.upjet.crossplane.io_organizationiammembers.yaml +++ b/package/crds/organizationmanager.yandex-cloud.upjet.crossplane.io_organizationiammembers.yaml @@ -75,9 +75,9 @@ spec: forProvider: properties: member: - description: |- - The identity that will be granted the privilege that is specified in the role field. - This field can have one of the following values: + description: 'The identity that will be granted the privilege + that is specified in the role field. This field can have one + of the following values:' type: string organizationId: description: ID of the organization to attach a policy to. @@ -102,9 +102,9 @@ spec: autoscaler. properties: member: - description: |- - The identity that will be granted the privilege that is specified in the role field. - This field can have one of the following values: + description: 'The identity that will be granted the privilege + that is specified in the role field. This field can have one + of the following values:' type: string organizationId: description: ID of the organization to attach a policy to. @@ -304,9 +304,9 @@ spec: id: type: string member: - description: |- - The identity that will be granted the privilege that is specified in the role field. - This field can have one of the following values: + description: 'The identity that will be granted the privilege + that is specified in the role field. This field can have one + of the following values:' type: string organizationId: description: ID of the organization to attach a policy to. diff --git a/package/crds/resourcemanager.yandex-cloud.upjet.crossplane.io_cloudiambindings.yaml b/package/crds/resourcemanager.yandex-cloud.upjet.crossplane.io_cloudiambindings.yaml index 6ac41d3..12327ed 100644 --- a/package/crds/resourcemanager.yandex-cloud.upjet.crossplane.io_cloudiambindings.yaml +++ b/package/crds/resourcemanager.yandex-cloud.upjet.crossplane.io_cloudiambindings.yaml @@ -151,17 +151,16 @@ spec: type: object type: object members: - description: |- - An array of identities that will be granted the privilege in the role. - Each entry can have one of the following values: + description: 'An array of identities that will be granted the + privilege in the role. Each entry can have one of the following + values:' items: type: string type: array x-kubernetes-list-type: set role: - description: |- - The role that should be assigned. Only one - yandex_resourcemanager_cloud_iam_binding can be used per role. + description: The role that should be assigned. Only one yandex_resourcemanager_cloud_iam_binding + can be used per role. type: string sleepAfter: type: number @@ -257,17 +256,16 @@ spec: type: object type: object members: - description: |- - An array of identities that will be granted the privilege in the role. - Each entry can have one of the following values: + description: 'An array of identities that will be granted the + privilege in the role. Each entry can have one of the following + values:' items: type: string type: array x-kubernetes-list-type: set role: - description: |- - The role that should be assigned. Only one - yandex_resourcemanager_cloud_iam_binding can be used per role. + description: The role that should be assigned. Only one yandex_resourcemanager_cloud_iam_binding + can be used per role. type: string sleepAfter: type: number @@ -459,17 +457,16 @@ spec: id: type: string members: - description: |- - An array of identities that will be granted the privilege in the role. - Each entry can have one of the following values: + description: 'An array of identities that will be granted the + privilege in the role. Each entry can have one of the following + values:' items: type: string type: array x-kubernetes-list-type: set role: - description: |- - The role that should be assigned. Only one - yandex_resourcemanager_cloud_iam_binding can be used per role. + description: The role that should be assigned. Only one yandex_resourcemanager_cloud_iam_binding + can be used per role. type: string sleepAfter: type: number diff --git a/package/crds/resourcemanager.yandex-cloud.upjet.crossplane.io_cloudiammembers.yaml b/package/crds/resourcemanager.yandex-cloud.upjet.crossplane.io_cloudiammembers.yaml index 30cc397..2a7fec9 100644 --- a/package/crds/resourcemanager.yandex-cloud.upjet.crossplane.io_cloudiammembers.yaml +++ b/package/crds/resourcemanager.yandex-cloud.upjet.crossplane.io_cloudiammembers.yaml @@ -152,9 +152,9 @@ spec: type: object type: object member: - description: |- - The identity that will be granted the privilege that is specified in the role field. - This field can have one of the following values: + description: 'The identity that will be granted the privilege + that is specified in the role field. This field can have one + of the following values:' type: string role: description: The role that should be assigned. @@ -253,9 +253,9 @@ spec: type: object type: object member: - description: |- - The identity that will be granted the privilege that is specified in the role field. - This field can have one of the following values: + description: 'The identity that will be granted the privilege + that is specified in the role field. This field can have one + of the following values:' type: string role: description: The role that should be assigned. @@ -450,9 +450,9 @@ spec: id: type: string member: - description: |- - The identity that will be granted the privilege that is specified in the role field. - This field can have one of the following values: + description: 'The identity that will be granted the privilege + that is specified in the role field. This field can have one + of the following values:' type: string role: description: The role that should be assigned. diff --git a/package/crds/resourcemanager.yandex-cloud.upjet.crossplane.io_folderiambindings.yaml b/package/crds/resourcemanager.yandex-cloud.upjet.crossplane.io_folderiambindings.yaml index 04540f2..5e9751d 100644 --- a/package/crds/resourcemanager.yandex-cloud.upjet.crossplane.io_folderiambindings.yaml +++ b/package/crds/resourcemanager.yandex-cloud.upjet.crossplane.io_folderiambindings.yaml @@ -152,17 +152,16 @@ spec: type: object type: object members: - description: |- - An array of identities that will be granted the privilege that is specified in the role field. - Each entry can have one of the following values: + description: 'An array of identities that will be granted the + privilege that is specified in the role field. Each entry can + have one of the following values:' items: type: string type: array x-kubernetes-list-type: set role: - description: |- - The role that should be assigned. Only one - yandex_resourcemanager_folder_iam_binding can be used per role. + description: The role that should be assigned. Only one yandex_resourcemanager_folder_iam_binding + can be used per role. type: string sleepAfter: type: number @@ -258,17 +257,16 @@ spec: type: object type: object members: - description: |- - An array of identities that will be granted the privilege that is specified in the role field. - Each entry can have one of the following values: + description: 'An array of identities that will be granted the + privilege that is specified in the role field. Each entry can + have one of the following values:' items: type: string type: array x-kubernetes-list-type: set role: - description: |- - The role that should be assigned. Only one - yandex_resourcemanager_folder_iam_binding can be used per role. + description: The role that should be assigned. Only one yandex_resourcemanager_folder_iam_binding + can be used per role. type: string sleepAfter: type: number @@ -460,17 +458,16 @@ spec: id: type: string members: - description: |- - An array of identities that will be granted the privilege that is specified in the role field. - Each entry can have one of the following values: + description: 'An array of identities that will be granted the + privilege that is specified in the role field. Each entry can + have one of the following values:' items: type: string type: array x-kubernetes-list-type: set role: - description: |- - The role that should be assigned. Only one - yandex_resourcemanager_folder_iam_binding can be used per role. + description: The role that should be assigned. Only one yandex_resourcemanager_folder_iam_binding + can be used per role. type: string sleepAfter: type: number diff --git a/package/crds/resourcemanager.yandex-cloud.upjet.crossplane.io_folderiammembers.yaml b/package/crds/resourcemanager.yandex-cloud.upjet.crossplane.io_folderiammembers.yaml index 7cbc908..a4a67fe 100644 --- a/package/crds/resourcemanager.yandex-cloud.upjet.crossplane.io_folderiammembers.yaml +++ b/package/crds/resourcemanager.yandex-cloud.upjet.crossplane.io_folderiammembers.yaml @@ -152,9 +152,9 @@ spec: type: object type: object member: - description: |- - The identity that will be granted the privilege that is specified in the role field. - This field can have one of the following values: + description: 'The identity that will be granted the privilege + that is specified in the role field. This field can have one + of the following values:' type: string role: description: The role that should be assigned. @@ -253,9 +253,9 @@ spec: type: object type: object member: - description: |- - The identity that will be granted the privilege that is specified in the role field. - This field can have one of the following values: + description: 'The identity that will be granted the privilege + that is specified in the role field. This field can have one + of the following values:' type: string role: description: The role that should be assigned. @@ -450,9 +450,9 @@ spec: id: type: string member: - description: |- - The identity that will be granted the privilege that is specified in the role field. - This field can have one of the following values: + description: 'The identity that will be granted the privilege + that is specified in the role field. This field can have one + of the following values:' type: string role: description: The role that should be assigned. diff --git a/package/crds/resourcemanager.yandex-cloud.upjet.crossplane.io_folderiampolicies.yaml b/package/crds/resourcemanager.yandex-cloud.upjet.crossplane.io_folderiampolicies.yaml index 11078b6..43eb3da 100644 --- a/package/crds/resourcemanager.yandex-cloud.upjet.crossplane.io_folderiampolicies.yaml +++ b/package/crds/resourcemanager.yandex-cloud.upjet.crossplane.io_folderiampolicies.yaml @@ -151,9 +151,9 @@ spec: type: object type: object policyData: - description: |- - The yandex_iam_policy data source that represents - the IAM policy that will be applied to the folder. This policy overrides any existing policy applied to the folder. + description: The yandex_iam_policy data source that represents + the IAM policy that will be applied to the folder. This policy + overrides any existing policy applied to the folder. type: string type: object initProvider: @@ -247,9 +247,9 @@ spec: type: object type: object policyData: - description: |- - The yandex_iam_policy data source that represents - the IAM policy that will be applied to the folder. This policy overrides any existing policy applied to the folder. + description: The yandex_iam_policy data source that represents + the IAM policy that will be applied to the folder. This policy + overrides any existing policy applied to the folder. type: string type: object managementPolicies: @@ -435,9 +435,9 @@ spec: id: type: string policyData: - description: |- - The yandex_iam_policy data source that represents - the IAM policy that will be applied to the folder. This policy overrides any existing policy applied to the folder. + description: The yandex_iam_policy data source that represents + the IAM policy that will be applied to the folder. This policy + overrides any existing policy applied to the folder. type: string type: object conditions: diff --git a/package/crds/serverless.yandex-cloud.upjet.crossplane.io_containeriambindings.yaml b/package/crds/serverless.yandex-cloud.upjet.crossplane.io_containeriambindings.yaml index a177100..1c764c9 100644 --- a/package/crds/serverless.yandex-cloud.upjet.crossplane.io_containeriambindings.yaml +++ b/package/crds/serverless.yandex-cloud.upjet.crossplane.io_containeriambindings.yaml @@ -78,9 +78,8 @@ spec: to. type: string members: - description: |- - Identities that will be granted the privilege in role. - Each entry can have one of the following values: + description: 'Identities that will be granted the privilege in + role. Each entry can have one of the following values:' items: type: string type: array @@ -109,9 +108,8 @@ spec: to. type: string members: - description: |- - Identities that will be granted the privilege in role. - Each entry can have one of the following values: + description: 'Identities that will be granted the privilege in + role. Each entry can have one of the following values:' items: type: string type: array @@ -314,9 +312,8 @@ spec: id: type: string members: - description: |- - Identities that will be granted the privilege in role. - Each entry can have one of the following values: + description: 'Identities that will be granted the privilege in + role. Each entry can have one of the following values:' items: type: string type: array diff --git a/package/crds/serverless.yandex-cloud.upjet.crossplane.io_containers.yaml b/package/crds/serverless.yandex-cloud.upjet.crossplane.io_containers.yaml index 6e024cd..b785f37 100644 --- a/package/crds/serverless.yandex-cloud.upjet.crossplane.io_containers.yaml +++ b/package/crds/serverless.yandex-cloud.upjet.crossplane.io_containers.yaml @@ -196,11 +196,12 @@ spec: type: string type: array digest: - description: |- - Digest of image that will be deployed as Yandex Cloud Serverless Container. - If presented, should be equal to digest that will be resolved at server side by URL. - Container will be updated on digest change even if image.0.url stays the same. - If field not specified then its value will be computed. + description: Digest of image that will be deployed as Yandex + Cloud Serverless Container. If presented, should be equal + to digest that will be resolved at server side by URL. + Container will be updated on digest change even if image.0.url + stays the same. If field not specified then its value + will be computed. type: string environment: additionalProperties: @@ -251,49 +252,407 @@ spec: Memory in megabytes (aligned to 128MB) for Yandex Cloud Serverless Container Container memory in megabytes, should be aligned to 128 type: number + mounts: + description: Mounts for Yandex Cloud Serverless Container + items: + properties: + ephemeralDisk: + description: One of the available mount types. Disk available + during the function execution time + items: + properties: + blockSizeKb: + description: Optional block size of the ephemeral + disk in KB + type: number + sizeGb: + description: Size of the ephemeral disk in GB + type: number + type: object + type: array + mode: + description: Mount’s accessibility mode. Valid values are + ro and rw + type: string + mountPointPath: + description: Path inside the container to access the directory + in which the bucket is mounted + type: string + objectStorage: + description: One of the available mount types. Object storage + as a mount + items: + properties: + bucket: + description: Name of the mounting bucket + type: string + bucketRef: + description: Reference to a Bucket in storage to populate + bucket. + properties: + name: + description: Name of the referenced object. + type: string + policy: + description: Policies for referencing. + properties: + resolution: + default: Required + description: |- + Resolution specifies whether resolution of this reference is required. + The default is 'Required', which means the reconcile will fail if the + reference cannot be resolved. 'Optional' means this reference will be + a no-op if it cannot be resolved. + enum: + - Required + - Optional + type: string + resolve: + description: |- + Resolve specifies when this reference should be resolved. The default + is 'IfNotPresent', which will attempt to resolve the reference only when + the corresponding field is not present. Use 'Always' to resolve the + reference on every reconcile. + enum: + - Always + - IfNotPresent + type: string + type: object + required: + - name + type: object + bucketSelector: + description: Selector for a Bucket in storage to populate + bucket. + properties: + matchControllerRef: + description: |- + MatchControllerRef ensures an object with the same controller reference + as the selecting object is selected. + type: boolean + matchLabels: + additionalProperties: + type: string + description: MatchLabels ensures an object with + matching labels is selected. + type: object + policy: + description: Policies for selection. + properties: + resolution: + default: Required + description: |- + Resolution specifies whether resolution of this reference is required. + The default is 'Required', which means the reconcile will fail if the + reference cannot be resolved. 'Optional' means this reference will be + a no-op if it cannot be resolved. + enum: + - Required + - Optional + type: string + resolve: + description: |- + Resolve specifies when this reference should be resolved. The default + is 'IfNotPresent', which will attempt to resolve the reference only when + the corresponding field is not present. Use 'Always' to resolve the + reference on every reconcile. + enum: + - Always + - IfNotPresent + type: string + type: object + type: object + prefix: + description: Prefix within the bucket. If you leave + this field empty, the entire bucket will be mounted + type: string + type: object + type: array + type: object + type: array name: description: Yandex Cloud Serverless Container name type: string + provisionPolicy: + description: Provision policy. If specified the revision will + have prepared instances + items: + properties: + minInstances: + description: Minimum number of prepared instances that are + always ready to serve requests + type: number + type: object + type: array secrets: description: Secrets for Yandex Cloud Serverless Container items: properties: environmentVariable: description: Container's environment variable in which secret's - value will be stored. + value will be stored type: string id: - description: Secret's id. + description: Secret's id type: string + idRef: + description: Reference to a Secret in lockbox to populate + id. + properties: + name: + description: Name of the referenced object. + type: string + policy: + description: Policies for referencing. + properties: + resolution: + default: Required + description: |- + Resolution specifies whether resolution of this reference is required. + The default is 'Required', which means the reconcile will fail if the + reference cannot be resolved. 'Optional' means this reference will be + a no-op if it cannot be resolved. + enum: + - Required + - Optional + type: string + resolve: + description: |- + Resolve specifies when this reference should be resolved. The default + is 'IfNotPresent', which will attempt to resolve the reference only when + the corresponding field is not present. Use 'Always' to resolve the + reference on every reconcile. + enum: + - Always + - IfNotPresent + type: string + type: object + required: + - name + type: object + idSelector: + description: Selector for a Secret in lockbox to populate + id. + properties: + matchControllerRef: + description: |- + MatchControllerRef ensures an object with the same controller reference + as the selecting object is selected. + type: boolean + matchLabels: + additionalProperties: + type: string + description: MatchLabels ensures an object with matching + labels is selected. + type: object + policy: + description: Policies for selection. + properties: + resolution: + default: Required + description: |- + Resolution specifies whether resolution of this reference is required. + The default is 'Required', which means the reconcile will fail if the + reference cannot be resolved. 'Optional' means this reference will be + a no-op if it cannot be resolved. + enum: + - Required + - Optional + type: string + resolve: + description: |- + Resolve specifies when this reference should be resolved. The default + is 'IfNotPresent', which will attempt to resolve the reference only when + the corresponding field is not present. Use 'Always' to resolve the + reference on every reconcile. + enum: + - Always + - IfNotPresent + type: string + type: object + type: object key: description: Secret's entries key which value will be stored - in environment variable. + in environment variable type: string versionId: - description: Secret's version id. + description: Secret's version id type: string + versionIdRef: + description: Reference to a SecretVersion in lockbox to + populate versionId. + properties: + name: + description: Name of the referenced object. + type: string + policy: + description: Policies for referencing. + properties: + resolution: + default: Required + description: |- + Resolution specifies whether resolution of this reference is required. + The default is 'Required', which means the reconcile will fail if the + reference cannot be resolved. 'Optional' means this reference will be + a no-op if it cannot be resolved. + enum: + - Required + - Optional + type: string + resolve: + description: |- + Resolve specifies when this reference should be resolved. The default + is 'IfNotPresent', which will attempt to resolve the reference only when + the corresponding field is not present. Use 'Always' to resolve the + reference on every reconcile. + enum: + - Always + - IfNotPresent + type: string + type: object + required: + - name + type: object + versionIdSelector: + description: Selector for a SecretVersion in lockbox to + populate versionId. + properties: + matchControllerRef: + description: |- + MatchControllerRef ensures an object with the same controller reference + as the selecting object is selected. + type: boolean + matchLabels: + additionalProperties: + type: string + description: MatchLabels ensures an object with matching + labels is selected. + type: object + policy: + description: Policies for selection. + properties: + resolution: + default: Required + description: |- + Resolution specifies whether resolution of this reference is required. + The default is 'Required', which means the reconcile will fail if the + reference cannot be resolved. 'Optional' means this reference will be + a no-op if it cannot be resolved. + enum: + - Required + - Optional + type: string + resolve: + description: |- + Resolve specifies when this reference should be resolved. The default + is 'IfNotPresent', which will attempt to resolve the reference only when + the corresponding field is not present. Use 'Always' to resolve the + reference on every reconcile. + enum: + - Always + - IfNotPresent + type: string + type: object + type: object type: object type: array serviceAccountId: description: Service account ID for Yandex Cloud Serverless Container type: string + serviceAccountIdRef: + description: Reference to a ServiceAccount in iam to populate + serviceAccountId. + properties: + name: + description: Name of the referenced object. + type: string + policy: + description: Policies for referencing. + properties: + resolution: + default: Required + description: |- + Resolution specifies whether resolution of this reference is required. + The default is 'Required', which means the reconcile will fail if the + reference cannot be resolved. 'Optional' means this reference will be + a no-op if it cannot be resolved. + enum: + - Required + - Optional + type: string + resolve: + description: |- + Resolve specifies when this reference should be resolved. The default + is 'IfNotPresent', which will attempt to resolve the reference only when + the corresponding field is not present. Use 'Always' to resolve the + reference on every reconcile. + enum: + - Always + - IfNotPresent + type: string + type: object + required: + - name + type: object + serviceAccountIdSelector: + description: Selector for a ServiceAccount in iam to populate + serviceAccountId. + properties: + matchControllerRef: + description: |- + MatchControllerRef ensures an object with the same controller reference + as the selecting object is selected. + type: boolean + matchLabels: + additionalProperties: + type: string + description: MatchLabels ensures an object with matching labels + is selected. + type: object + policy: + description: Policies for selection. + properties: + resolution: + default: Required + description: |- + Resolution specifies whether resolution of this reference is required. + The default is 'Required', which means the reconcile will fail if the + reference cannot be resolved. 'Optional' means this reference will be + a no-op if it cannot be resolved. + enum: + - Required + - Optional + type: string + resolve: + description: |- + Resolve specifies when this reference should be resolved. The default + is 'IfNotPresent', which will attempt to resolve the reference only when + the corresponding field is not present. Use 'Always' to resolve the + reference on every reconcile. + enum: + - Always + - IfNotPresent + type: string + type: object + type: object storageMounts: - description: Storage mounts for Yandex Cloud Serverless Container + description: (DEPRECATED, use mounts.0.object_storage instead) + Storage mounts for Yandex Cloud Serverless Container items: properties: bucket: - description: Name of the mounting bucket. + description: Name of the mounting bucket type: string mountPointPath: description: Path inside the container to access the directory - in which the bucket is mounted. + in which the bucket is mounted type: string prefix: description: Prefix within the bucket. If you leave this - field empty, the entire bucket will be mounted. + field empty, the entire bucket will be mounted type: string readOnly: - description: Mount the bucket in read-only mode. + description: Mount the bucket in read-only mode type: boolean type: object type: array @@ -434,11 +793,12 @@ spec: type: string type: array digest: - description: |- - Digest of image that will be deployed as Yandex Cloud Serverless Container. - If presented, should be equal to digest that will be resolved at server side by URL. - Container will be updated on digest change even if image.0.url stays the same. - If field not specified then its value will be computed. + description: Digest of image that will be deployed as Yandex + Cloud Serverless Container. If presented, should be equal + to digest that will be resolved at server side by URL. + Container will be updated on digest change even if image.0.url + stays the same. If field not specified then its value + will be computed. type: string environment: additionalProperties: @@ -489,49 +849,407 @@ spec: Memory in megabytes (aligned to 128MB) for Yandex Cloud Serverless Container Container memory in megabytes, should be aligned to 128 type: number + mounts: + description: Mounts for Yandex Cloud Serverless Container + items: + properties: + ephemeralDisk: + description: One of the available mount types. Disk available + during the function execution time + items: + properties: + blockSizeKb: + description: Optional block size of the ephemeral + disk in KB + type: number + sizeGb: + description: Size of the ephemeral disk in GB + type: number + type: object + type: array + mode: + description: Mount’s accessibility mode. Valid values are + ro and rw + type: string + mountPointPath: + description: Path inside the container to access the directory + in which the bucket is mounted + type: string + objectStorage: + description: One of the available mount types. Object storage + as a mount + items: + properties: + bucket: + description: Name of the mounting bucket + type: string + bucketRef: + description: Reference to a Bucket in storage to populate + bucket. + properties: + name: + description: Name of the referenced object. + type: string + policy: + description: Policies for referencing. + properties: + resolution: + default: Required + description: |- + Resolution specifies whether resolution of this reference is required. + The default is 'Required', which means the reconcile will fail if the + reference cannot be resolved. 'Optional' means this reference will be + a no-op if it cannot be resolved. + enum: + - Required + - Optional + type: string + resolve: + description: |- + Resolve specifies when this reference should be resolved. The default + is 'IfNotPresent', which will attempt to resolve the reference only when + the corresponding field is not present. Use 'Always' to resolve the + reference on every reconcile. + enum: + - Always + - IfNotPresent + type: string + type: object + required: + - name + type: object + bucketSelector: + description: Selector for a Bucket in storage to populate + bucket. + properties: + matchControllerRef: + description: |- + MatchControllerRef ensures an object with the same controller reference + as the selecting object is selected. + type: boolean + matchLabels: + additionalProperties: + type: string + description: MatchLabels ensures an object with + matching labels is selected. + type: object + policy: + description: Policies for selection. + properties: + resolution: + default: Required + description: |- + Resolution specifies whether resolution of this reference is required. + The default is 'Required', which means the reconcile will fail if the + reference cannot be resolved. 'Optional' means this reference will be + a no-op if it cannot be resolved. + enum: + - Required + - Optional + type: string + resolve: + description: |- + Resolve specifies when this reference should be resolved. The default + is 'IfNotPresent', which will attempt to resolve the reference only when + the corresponding field is not present. Use 'Always' to resolve the + reference on every reconcile. + enum: + - Always + - IfNotPresent + type: string + type: object + type: object + prefix: + description: Prefix within the bucket. If you leave + this field empty, the entire bucket will be mounted + type: string + type: object + type: array + type: object + type: array name: description: Yandex Cloud Serverless Container name type: string + provisionPolicy: + description: Provision policy. If specified the revision will + have prepared instances + items: + properties: + minInstances: + description: Minimum number of prepared instances that are + always ready to serve requests + type: number + type: object + type: array secrets: description: Secrets for Yandex Cloud Serverless Container items: properties: environmentVariable: description: Container's environment variable in which secret's - value will be stored. + value will be stored type: string id: - description: Secret's id. + description: Secret's id type: string + idRef: + description: Reference to a Secret in lockbox to populate + id. + properties: + name: + description: Name of the referenced object. + type: string + policy: + description: Policies for referencing. + properties: + resolution: + default: Required + description: |- + Resolution specifies whether resolution of this reference is required. + The default is 'Required', which means the reconcile will fail if the + reference cannot be resolved. 'Optional' means this reference will be + a no-op if it cannot be resolved. + enum: + - Required + - Optional + type: string + resolve: + description: |- + Resolve specifies when this reference should be resolved. The default + is 'IfNotPresent', which will attempt to resolve the reference only when + the corresponding field is not present. Use 'Always' to resolve the + reference on every reconcile. + enum: + - Always + - IfNotPresent + type: string + type: object + required: + - name + type: object + idSelector: + description: Selector for a Secret in lockbox to populate + id. + properties: + matchControllerRef: + description: |- + MatchControllerRef ensures an object with the same controller reference + as the selecting object is selected. + type: boolean + matchLabels: + additionalProperties: + type: string + description: MatchLabels ensures an object with matching + labels is selected. + type: object + policy: + description: Policies for selection. + properties: + resolution: + default: Required + description: |- + Resolution specifies whether resolution of this reference is required. + The default is 'Required', which means the reconcile will fail if the + reference cannot be resolved. 'Optional' means this reference will be + a no-op if it cannot be resolved. + enum: + - Required + - Optional + type: string + resolve: + description: |- + Resolve specifies when this reference should be resolved. The default + is 'IfNotPresent', which will attempt to resolve the reference only when + the corresponding field is not present. Use 'Always' to resolve the + reference on every reconcile. + enum: + - Always + - IfNotPresent + type: string + type: object + type: object key: description: Secret's entries key which value will be stored - in environment variable. + in environment variable type: string versionId: - description: Secret's version id. + description: Secret's version id type: string + versionIdRef: + description: Reference to a SecretVersion in lockbox to + populate versionId. + properties: + name: + description: Name of the referenced object. + type: string + policy: + description: Policies for referencing. + properties: + resolution: + default: Required + description: |- + Resolution specifies whether resolution of this reference is required. + The default is 'Required', which means the reconcile will fail if the + reference cannot be resolved. 'Optional' means this reference will be + a no-op if it cannot be resolved. + enum: + - Required + - Optional + type: string + resolve: + description: |- + Resolve specifies when this reference should be resolved. The default + is 'IfNotPresent', which will attempt to resolve the reference only when + the corresponding field is not present. Use 'Always' to resolve the + reference on every reconcile. + enum: + - Always + - IfNotPresent + type: string + type: object + required: + - name + type: object + versionIdSelector: + description: Selector for a SecretVersion in lockbox to + populate versionId. + properties: + matchControllerRef: + description: |- + MatchControllerRef ensures an object with the same controller reference + as the selecting object is selected. + type: boolean + matchLabels: + additionalProperties: + type: string + description: MatchLabels ensures an object with matching + labels is selected. + type: object + policy: + description: Policies for selection. + properties: + resolution: + default: Required + description: |- + Resolution specifies whether resolution of this reference is required. + The default is 'Required', which means the reconcile will fail if the + reference cannot be resolved. 'Optional' means this reference will be + a no-op if it cannot be resolved. + enum: + - Required + - Optional + type: string + resolve: + description: |- + Resolve specifies when this reference should be resolved. The default + is 'IfNotPresent', which will attempt to resolve the reference only when + the corresponding field is not present. Use 'Always' to resolve the + reference on every reconcile. + enum: + - Always + - IfNotPresent + type: string + type: object + type: object type: object type: array serviceAccountId: description: Service account ID for Yandex Cloud Serverless Container type: string + serviceAccountIdRef: + description: Reference to a ServiceAccount in iam to populate + serviceAccountId. + properties: + name: + description: Name of the referenced object. + type: string + policy: + description: Policies for referencing. + properties: + resolution: + default: Required + description: |- + Resolution specifies whether resolution of this reference is required. + The default is 'Required', which means the reconcile will fail if the + reference cannot be resolved. 'Optional' means this reference will be + a no-op if it cannot be resolved. + enum: + - Required + - Optional + type: string + resolve: + description: |- + Resolve specifies when this reference should be resolved. The default + is 'IfNotPresent', which will attempt to resolve the reference only when + the corresponding field is not present. Use 'Always' to resolve the + reference on every reconcile. + enum: + - Always + - IfNotPresent + type: string + type: object + required: + - name + type: object + serviceAccountIdSelector: + description: Selector for a ServiceAccount in iam to populate + serviceAccountId. + properties: + matchControllerRef: + description: |- + MatchControllerRef ensures an object with the same controller reference + as the selecting object is selected. + type: boolean + matchLabels: + additionalProperties: + type: string + description: MatchLabels ensures an object with matching labels + is selected. + type: object + policy: + description: Policies for selection. + properties: + resolution: + default: Required + description: |- + Resolution specifies whether resolution of this reference is required. + The default is 'Required', which means the reconcile will fail if the + reference cannot be resolved. 'Optional' means this reference will be + a no-op if it cannot be resolved. + enum: + - Required + - Optional + type: string + resolve: + description: |- + Resolve specifies when this reference should be resolved. The default + is 'IfNotPresent', which will attempt to resolve the reference only when + the corresponding field is not present. Use 'Always' to resolve the + reference on every reconcile. + enum: + - Always + - IfNotPresent + type: string + type: object + type: object storageMounts: - description: Storage mounts for Yandex Cloud Serverless Container + description: (DEPRECATED, use mounts.0.object_storage instead) + Storage mounts for Yandex Cloud Serverless Container items: properties: bucket: - description: Name of the mounting bucket. + description: Name of the mounting bucket type: string mountPointPath: description: Path inside the container to access the directory - in which the bucket is mounted. + in which the bucket is mounted type: string prefix: description: Prefix within the bucket. If you leave this - field empty, the entire bucket will be mounted. + field empty, the entire bucket will be mounted type: string readOnly: - description: Mount the bucket in read-only mode. + description: Mount the bucket in read-only mode type: boolean type: object type: array @@ -755,7 +1473,7 @@ spec: description: Folder ID for the Yandex Cloud Serverless Container type: string id: - description: Secret's id. + description: Secret's id type: string image: description: Revision deployment image for Yandex Cloud Serverless @@ -775,11 +1493,12 @@ spec: type: string type: array digest: - description: |- - Digest of image that will be deployed as Yandex Cloud Serverless Container. - If presented, should be equal to digest that will be resolved at server side by URL. - Container will be updated on digest change even if image.0.url stays the same. - If field not specified then its value will be computed. + description: Digest of image that will be deployed as Yandex + Cloud Serverless Container. If presented, should be equal + to digest that will be resolved at server side by URL. + Container will be updated on digest change even if image.0.url + stays the same. If field not specified then its value + will be computed. type: string environment: additionalProperties: @@ -830,9 +1549,62 @@ spec: Memory in megabytes (aligned to 128MB) for Yandex Cloud Serverless Container Container memory in megabytes, should be aligned to 128 type: number + mounts: + description: Mounts for Yandex Cloud Serverless Container + items: + properties: + ephemeralDisk: + description: One of the available mount types. Disk available + during the function execution time + items: + properties: + blockSizeKb: + description: Optional block size of the ephemeral + disk in KB + type: number + sizeGb: + description: Size of the ephemeral disk in GB + type: number + type: object + type: array + mode: + description: Mount’s accessibility mode. Valid values are + ro and rw + type: string + mountPointPath: + description: Path inside the container to access the directory + in which the bucket is mounted + type: string + objectStorage: + description: One of the available mount types. Object storage + as a mount + items: + properties: + bucket: + description: Name of the mounting bucket + type: string + prefix: + description: Prefix within the bucket. If you leave + this field empty, the entire bucket will be mounted + type: string + type: object + type: array + type: object + type: array name: description: Yandex Cloud Serverless Container name type: string + provisionPolicy: + description: Provision policy. If specified the revision will + have prepared instances + items: + properties: + minInstances: + description: Minimum number of prepared instances that are + always ready to serve requests + type: number + type: object + type: array revisionId: description: Last revision ID of the Yandex Cloud Serverless Container type: string @@ -842,17 +1614,17 @@ spec: properties: environmentVariable: description: Container's environment variable in which secret's - value will be stored. + value will be stored type: string id: - description: Secret's id. + description: Secret's id type: string key: description: Secret's entries key which value will be stored - in environment variable. + in environment variable type: string versionId: - description: Secret's version id. + description: Secret's version id type: string type: object type: array @@ -860,22 +1632,23 @@ spec: description: Service account ID for Yandex Cloud Serverless Container type: string storageMounts: - description: Storage mounts for Yandex Cloud Serverless Container + description: (DEPRECATED, use mounts.0.object_storage instead) + Storage mounts for Yandex Cloud Serverless Container items: properties: bucket: - description: Name of the mounting bucket. + description: Name of the mounting bucket type: string mountPointPath: description: Path inside the container to access the directory - in which the bucket is mounted. + in which the bucket is mounted type: string prefix: description: Prefix within the bucket. If you leave this - field empty, the entire bucket will be mounted. + field empty, the entire bucket will be mounted type: string readOnly: - description: Mount the bucket in read-only mode. + description: Mount the bucket in read-only mode type: boolean type: object type: array diff --git a/package/crds/smartcaptcha.yandex-cloud.upjet.crossplane.io_captchas.yaml b/package/crds/smartcaptcha.yandex-cloud.upjet.crossplane.io_captchas.yaml index 15beda7..bffd09e 100644 --- a/package/crds/smartcaptcha.yandex-cloud.upjet.crossplane.io_captchas.yaml +++ b/package/crds/smartcaptcha.yandex-cloud.upjet.crossplane.io_captchas.yaml @@ -34,7 +34,7 @@ spec: name: v1alpha1 schema: openAPIV3Schema: - description: Captcha is the Schema for the Captchas API. + description: Captcha is the Schema for the Captchas API. properties: apiVersion: description: |- @@ -73,18 +73,24 @@ spec: forProvider: properties: allowedSites: + description: (List of String) items: type: string type: array challengeType: + description: (String) type: string cloudId: + description: (String) type: string complexity: + description: (String) type: string deletionProtection: + description: (Boolean) type: boolean folderId: + description: (String) type: string folderIdRef: description: Reference to a Folder in resourcemanager to populate @@ -163,110 +169,155 @@ spec: type: object type: object name: + description: (String) type: string overrideVariant: + description: (Block List) (see below for nested schema) items: properties: challengeType: + description: (String) type: string complexity: + description: (String) type: string description: + description: (String) type: string preCheckType: + description: (String) type: string uuid: + description: (String) type: string type: object type: array preCheckType: + description: (String) type: string securityRule: + description: (Block List) (see below for nested schema) items: properties: condition: + description: '(Block List, Max: 1) (see below for nested + schema)' items: properties: headers: + description: (Block List) (see below for nested schema) items: properties: name: + description: (String) type: string value: + description: '(Block List, Min: 1, Max: 1) (see + below for nested schema)' items: properties: exactMatch: + description: (String) type: string exactNotMatch: + description: (String) type: string pireRegexMatch: + description: (String) type: string pireRegexNotMatch: + description: (String) type: string prefixMatch: + description: (String) type: string prefixNotMatch: + description: (String) type: string type: object type: array type: object type: array host: + description: '(Block List, Max: 1) (see below for + nested schema)' items: properties: hosts: + description: (Block List) (see below for nested + schema) items: properties: exactMatch: + description: (String) type: string exactNotMatch: + description: (String) type: string pireRegexMatch: + description: (String) type: string pireRegexNotMatch: + description: (String) type: string prefixMatch: + description: (String) type: string prefixNotMatch: + description: (String) type: string type: object type: array type: object type: array sourceIp: + description: '(Block List, Max: 1) (see below for + nested schema)' items: properties: geoIpMatch: + description: '(Block List, Max: 1) (see below + for nested schema)' items: properties: locations: + description: (List of String) items: type: string type: array type: object type: array geoIpNotMatch: + description: '(Block List, Max: 1) (see below + for nested schema)' items: properties: locations: + description: (List of String) items: type: string type: array type: object type: array ipRangesMatch: + description: '(Block List, Max: 1) (see below + for nested schema)' items: properties: ipRanges: + description: (List of String) items: type: string type: array type: object type: array ipRangesNotMatch: + description: '(Block List, Max: 1) (see below + for nested schema)' items: properties: ipRanges: + description: (List of String) items: type: string type: array @@ -275,44 +326,65 @@ spec: type: object type: array uri: + description: '(Block List, Max: 1) (see below for + nested schema)' items: properties: path: + description: '(Block List, Max: 1) (see below + for nested schema)' items: properties: exactMatch: + description: (String) type: string exactNotMatch: + description: (String) type: string pireRegexMatch: + description: (String) type: string pireRegexNotMatch: + description: (String) type: string prefixMatch: + description: (String) type: string prefixNotMatch: + description: (String) type: string type: object type: array queries: + description: (Block List) (see below for nested + schema) items: properties: key: + description: (String) type: string value: + description: '(Block List, Min: 1, Max: + 1) (see below for nested schema)' items: properties: exactMatch: + description: (String) type: string exactNotMatch: + description: (String) type: string pireRegexMatch: + description: (String) type: string pireRegexNotMatch: + description: (String) type: string prefixMatch: + description: (String) type: string prefixNotMatch: + description: (String) type: string type: object type: array @@ -323,18 +395,24 @@ spec: type: object type: array description: + description: (String) type: string name: + description: (String) type: string overrideVariantUuid: + description: (String) type: string priority: + description: (Number) type: number type: object type: array styleJson: + description: (String) type: string turnOffHostnameCheck: + description: (Boolean) type: boolean type: object initProvider: @@ -351,18 +429,24 @@ spec: autoscaler. properties: allowedSites: + description: (List of String) items: type: string type: array challengeType: + description: (String) type: string cloudId: + description: (String) type: string complexity: + description: (String) type: string deletionProtection: + description: (Boolean) type: boolean folderId: + description: (String) type: string folderIdRef: description: Reference to a Folder in resourcemanager to populate @@ -441,110 +525,155 @@ spec: type: object type: object name: + description: (String) type: string overrideVariant: + description: (Block List) (see below for nested schema) items: properties: challengeType: + description: (String) type: string complexity: + description: (String) type: string description: + description: (String) type: string preCheckType: + description: (String) type: string uuid: + description: (String) type: string type: object type: array preCheckType: + description: (String) type: string securityRule: + description: (Block List) (see below for nested schema) items: properties: condition: + description: '(Block List, Max: 1) (see below for nested + schema)' items: properties: headers: + description: (Block List) (see below for nested schema) items: properties: name: + description: (String) type: string value: + description: '(Block List, Min: 1, Max: 1) (see + below for nested schema)' items: properties: exactMatch: + description: (String) type: string exactNotMatch: + description: (String) type: string pireRegexMatch: + description: (String) type: string pireRegexNotMatch: + description: (String) type: string prefixMatch: + description: (String) type: string prefixNotMatch: + description: (String) type: string type: object type: array type: object type: array host: + description: '(Block List, Max: 1) (see below for + nested schema)' items: properties: hosts: + description: (Block List) (see below for nested + schema) items: properties: exactMatch: + description: (String) type: string exactNotMatch: + description: (String) type: string pireRegexMatch: + description: (String) type: string pireRegexNotMatch: + description: (String) type: string prefixMatch: + description: (String) type: string prefixNotMatch: + description: (String) type: string type: object type: array type: object type: array sourceIp: + description: '(Block List, Max: 1) (see below for + nested schema)' items: properties: geoIpMatch: + description: '(Block List, Max: 1) (see below + for nested schema)' items: properties: locations: + description: (List of String) items: type: string type: array type: object type: array geoIpNotMatch: + description: '(Block List, Max: 1) (see below + for nested schema)' items: properties: locations: + description: (List of String) items: type: string type: array type: object type: array ipRangesMatch: + description: '(Block List, Max: 1) (see below + for nested schema)' items: properties: ipRanges: + description: (List of String) items: type: string type: array type: object type: array ipRangesNotMatch: + description: '(Block List, Max: 1) (see below + for nested schema)' items: properties: ipRanges: + description: (List of String) items: type: string type: array @@ -553,44 +682,65 @@ spec: type: object type: array uri: + description: '(Block List, Max: 1) (see below for + nested schema)' items: properties: path: + description: '(Block List, Max: 1) (see below + for nested schema)' items: properties: exactMatch: + description: (String) type: string exactNotMatch: + description: (String) type: string pireRegexMatch: + description: (String) type: string pireRegexNotMatch: + description: (String) type: string prefixMatch: + description: (String) type: string prefixNotMatch: + description: (String) type: string type: object type: array queries: + description: (Block List) (see below for nested + schema) items: properties: key: + description: (String) type: string value: + description: '(Block List, Min: 1, Max: + 1) (see below for nested schema)' items: properties: exactMatch: + description: (String) type: string exactNotMatch: + description: (String) type: string pireRegexMatch: + description: (String) type: string pireRegexNotMatch: + description: (String) type: string prefixMatch: + description: (String) type: string prefixNotMatch: + description: (String) type: string type: object type: array @@ -601,18 +751,24 @@ spec: type: object type: array description: + description: (String) type: string name: + description: (String) type: string overrideVariantUuid: + description: (String) type: string priority: + description: (Number) type: number type: object type: array styleJson: + description: (String) type: string turnOffHostnameCheck: + description: (Boolean) type: boolean type: object managementPolicies: @@ -788,130 +944,184 @@ spec: atProvider: properties: allowedSites: + description: (List of String) items: type: string type: array challengeType: + description: (String) type: string clientKey: + description: (String) type: string cloudId: + description: (String) type: string complexity: + description: (String) type: string createdAt: + description: (String) type: string deletionProtection: + description: (Boolean) type: boolean folderId: + description: (String) type: string id: + description: (String) The ID of this resource. type: string name: + description: (String) type: string overrideVariant: + description: (Block List) (see below for nested schema) items: properties: challengeType: + description: (String) type: string complexity: + description: (String) type: string description: + description: (String) type: string preCheckType: + description: (String) type: string uuid: + description: (String) type: string type: object type: array preCheckType: + description: (String) type: string securityRule: + description: (Block List) (see below for nested schema) items: properties: condition: + description: '(Block List, Max: 1) (see below for nested + schema)' items: properties: headers: + description: (Block List) (see below for nested schema) items: properties: name: + description: (String) type: string value: + description: '(Block List, Min: 1, Max: 1) (see + below for nested schema)' items: properties: exactMatch: + description: (String) type: string exactNotMatch: + description: (String) type: string pireRegexMatch: + description: (String) type: string pireRegexNotMatch: + description: (String) type: string prefixMatch: + description: (String) type: string prefixNotMatch: + description: (String) type: string type: object type: array type: object type: array host: + description: '(Block List, Max: 1) (see below for + nested schema)' items: properties: hosts: + description: (Block List) (see below for nested + schema) items: properties: exactMatch: + description: (String) type: string exactNotMatch: + description: (String) type: string pireRegexMatch: + description: (String) type: string pireRegexNotMatch: + description: (String) type: string prefixMatch: + description: (String) type: string prefixNotMatch: + description: (String) type: string type: object type: array type: object type: array sourceIp: + description: '(Block List, Max: 1) (see below for + nested schema)' items: properties: geoIpMatch: + description: '(Block List, Max: 1) (see below + for nested schema)' items: properties: locations: + description: (List of String) items: type: string type: array type: object type: array geoIpNotMatch: + description: '(Block List, Max: 1) (see below + for nested schema)' items: properties: locations: + description: (List of String) items: type: string type: array type: object type: array ipRangesMatch: + description: '(Block List, Max: 1) (see below + for nested schema)' items: properties: ipRanges: + description: (List of String) items: type: string type: array type: object type: array ipRangesNotMatch: + description: '(Block List, Max: 1) (see below + for nested schema)' items: properties: ipRanges: + description: (List of String) items: type: string type: array @@ -920,44 +1130,65 @@ spec: type: object type: array uri: + description: '(Block List, Max: 1) (see below for + nested schema)' items: properties: path: + description: '(Block List, Max: 1) (see below + for nested schema)' items: properties: exactMatch: + description: (String) type: string exactNotMatch: + description: (String) type: string pireRegexMatch: + description: (String) type: string pireRegexNotMatch: + description: (String) type: string prefixMatch: + description: (String) type: string prefixNotMatch: + description: (String) type: string type: object type: array queries: + description: (Block List) (see below for nested + schema) items: properties: key: + description: (String) type: string value: + description: '(Block List, Min: 1, Max: + 1) (see below for nested schema)' items: properties: exactMatch: + description: (String) type: string exactNotMatch: + description: (String) type: string pireRegexMatch: + description: (String) type: string pireRegexNotMatch: + description: (String) type: string prefixMatch: + description: (String) type: string prefixNotMatch: + description: (String) type: string type: object type: array @@ -968,20 +1199,27 @@ spec: type: object type: array description: + description: (String) type: string name: + description: (String) type: string overrideVariantUuid: + description: (String) type: string priority: + description: (Number) type: number type: object type: array styleJson: + description: (String) type: string suspend: + description: (Boolean) type: boolean turnOffHostnameCheck: + description: (Boolean) type: boolean type: object conditions: diff --git a/package/crds/storage.yandex-cloud.upjet.crossplane.io_buckets.yaml b/package/crds/storage.yandex-cloud.upjet.crossplane.io_buckets.yaml index 06bc8e1..5d6f947 100644 --- a/package/crds/storage.yandex-cloud.upjet.crossplane.io_buckets.yaml +++ b/package/crds/storage.yandex-cloud.upjet.crossplane.io_buckets.yaml @@ -74,9 +74,10 @@ spec: forProvider: properties: accessKey: - description: |- - The access key to use when applying changes. If omitted, storage_access_key specified in - provider config (explicitly or within shared_credentials_file) is used. + description: The access key to use when applying changes. This + value can also be provided as storage_access_key specified in + provider config (explicitly or within shared_credentials_file) + is used. type: string accessKeyRef: description: Reference to a ServiceAccountStaticAccessKey in iam @@ -155,14 +156,11 @@ spec: type: object type: object acl: - description: |- - The predefined ACL to apply. - Defaults to private. Conflicts with grant. + description: The predefined ACL to apply. Defaults to private. + Conflicts with grant. type: string anonymousAccessFlags: - description: |- - Provides various access to objects. - See bucket availability + description: Provides various access to objects. See bucket availability for more infomation. items: properties: @@ -181,9 +179,8 @@ spec: description: The name of the bucket. type: string bucketPrefix: - description: |- - Creates a unique bucket name beginning with the specified prefix. - Conflicts with bucket. + description: Creates a unique bucket name beginning with the specified + prefix. Conflicts with bucket. type: string corsRule: description: A rule of Cross-Origin Resource Sharing (documented @@ -218,10 +215,9 @@ spec: type: object type: array defaultStorageClass: - description: |- - Storage class which is used for storing objects by default. - Available values are: "STANDARD", "COLD", "ICE". Default is "STANDARD". - See storage class for more inforamtion. + description: 'Storage class which is used for storing objects + by default. Available values are: "STANDARD", "COLD", "ICE". + Default is "STANDARD". See storage class for more inforamtion.' type: string folderId: description: Allow to create bucket in different folder. @@ -389,8 +385,9 @@ spec: properties: and: description: 'operator applied to one or more filter - parameters. It should be used when both prefix and - tags are used. It supports the following parameters:' + parameters. It should be used when two or more of + the above parameters are used. It supports the following + parameters:' items: properties: objectSizeGreaterThan: @@ -625,9 +622,10 @@ spec: policy: type: string secretKeySecretRef: - description: |- - The secret key to use when applying changes. If omitted, storage_secret_key specified in - provider config (explicitly or within shared_credentials_file) is used. + description: The secret key to use when applying changes. This + value can also be provided as storage_secret_key specified in + provider config (explicitly or within shared_credentials_file) + is used. properties: key: description: The key to select. @@ -813,9 +811,10 @@ spec: autoscaler. properties: accessKey: - description: |- - The access key to use when applying changes. If omitted, storage_access_key specified in - provider config (explicitly or within shared_credentials_file) is used. + description: The access key to use when applying changes. This + value can also be provided as storage_access_key specified in + provider config (explicitly or within shared_credentials_file) + is used. type: string accessKeyRef: description: Reference to a ServiceAccountStaticAccessKey in iam @@ -894,14 +893,11 @@ spec: type: object type: object acl: - description: |- - The predefined ACL to apply. - Defaults to private. Conflicts with grant. + description: The predefined ACL to apply. Defaults to private. + Conflicts with grant. type: string anonymousAccessFlags: - description: |- - Provides various access to objects. - See bucket availability + description: Provides various access to objects. See bucket availability for more infomation. items: properties: @@ -920,9 +916,8 @@ spec: description: The name of the bucket. type: string bucketPrefix: - description: |- - Creates a unique bucket name beginning with the specified prefix. - Conflicts with bucket. + description: Creates a unique bucket name beginning with the specified + prefix. Conflicts with bucket. type: string corsRule: description: A rule of Cross-Origin Resource Sharing (documented @@ -957,10 +952,9 @@ spec: type: object type: array defaultStorageClass: - description: |- - Storage class which is used for storing objects by default. - Available values are: "STANDARD", "COLD", "ICE". Default is "STANDARD". - See storage class for more inforamtion. + description: 'Storage class which is used for storing objects + by default. Available values are: "STANDARD", "COLD", "ICE". + Default is "STANDARD". See storage class for more inforamtion.' type: string folderId: description: Allow to create bucket in different folder. @@ -1128,8 +1122,9 @@ spec: properties: and: description: 'operator applied to one or more filter - parameters. It should be used when both prefix and - tags are used. It supports the following parameters:' + parameters. It should be used when two or more of + the above parameters are used. It supports the following + parameters:' items: properties: objectSizeGreaterThan: @@ -1364,9 +1359,10 @@ spec: policy: type: string secretKeySecretRef: - description: |- - The secret key to use when applying changes. If omitted, storage_secret_key specified in - provider config (explicitly or within shared_credentials_file) is used. + description: The secret key to use when applying changes. This + value can also be provided as storage_secret_key specified in + provider config (explicitly or within shared_credentials_file) + is used. properties: key: description: The key to select. @@ -1711,19 +1707,17 @@ spec: atProvider: properties: accessKey: - description: |- - The access key to use when applying changes. If omitted, storage_access_key specified in - provider config (explicitly or within shared_credentials_file) is used. + description: The access key to use when applying changes. This + value can also be provided as storage_access_key specified in + provider config (explicitly or within shared_credentials_file) + is used. type: string acl: - description: |- - The predefined ACL to apply. - Defaults to private. Conflicts with grant. + description: The predefined ACL to apply. Defaults to private. + Conflicts with grant. type: string anonymousAccessFlags: - description: |- - Provides various access to objects. - See bucket availability + description: Provides various access to objects. See bucket availability for more infomation. items: properties: @@ -1745,9 +1739,8 @@ spec: description: The bucket domain name. type: string bucketPrefix: - description: |- - Creates a unique bucket name beginning with the specified prefix. - Conflicts with bucket. + description: Creates a unique bucket name beginning with the specified + prefix. Conflicts with bucket. type: string corsRule: description: A rule of Cross-Origin Resource Sharing (documented @@ -1782,10 +1775,9 @@ spec: type: object type: array defaultStorageClass: - description: |- - Storage class which is used for storing objects by default. - Available values are: "STANDARD", "COLD", "ICE". Default is "STANDARD". - See storage class for more inforamtion. + description: 'Storage class which is used for storing objects + by default. Available values are: "STANDARD", "COLD", "ICE". + Default is "STANDARD". See storage class for more inforamtion.' type: string folderId: description: Allow to create bucket in different folder. @@ -1881,8 +1873,9 @@ spec: properties: and: description: 'operator applied to one or more filter - parameters. It should be used when both prefix and - tags are used. It supports the following parameters:' + parameters. It should be used when two or more of + the above parameters are used. It supports the following + parameters:' items: properties: objectSizeGreaterThan: diff --git a/package/crds/storage.yandex-cloud.upjet.crossplane.io_objects.yaml b/package/crds/storage.yandex-cloud.upjet.crossplane.io_objects.yaml index c77adfc..b65706d 100644 --- a/package/crds/storage.yandex-cloud.upjet.crossplane.io_objects.yaml +++ b/package/crds/storage.yandex-cloud.upjet.crossplane.io_objects.yaml @@ -74,8 +74,10 @@ spec: forProvider: properties: accessKey: - description: The access key to use when applying changes. If omitted, - storage_access_key specified in config is used. + description: The access key to use when applying changes. This + value can also be provided as storage_access_key specified in + provider config (explicitly or within shared_credentials_file) + is used. type: string accessKeyRef: description: Reference to a ServiceAccountStaticAccessKey in iam @@ -269,8 +271,10 @@ spec: on a bucket. type: string secretKeySecretRef: - description: The secret key to use when applying changes. If omitted, - storage_secret_key specified in config is used. + description: The secret key to use when applying changes. This + value can also be provided as storage_secret_key specified in + provider config (explicitly or within shared_credentials_file) + is used. properties: key: description: The key to select. @@ -316,8 +320,10 @@ spec: autoscaler. properties: accessKey: - description: The access key to use when applying changes. If omitted, - storage_access_key specified in config is used. + description: The access key to use when applying changes. This + value can also be provided as storage_access_key specified in + provider config (explicitly or within shared_credentials_file) + is used. type: string accessKeyRef: description: Reference to a ServiceAccountStaticAccessKey in iam @@ -511,8 +517,10 @@ spec: on a bucket. type: string secretKeySecretRef: - description: The secret key to use when applying changes. If omitted, - storage_secret_key specified in config is used. + description: The secret key to use when applying changes. This + value can also be provided as storage_secret_key specified in + provider config (explicitly or within shared_credentials_file) + is used. properties: key: description: The key to select. @@ -722,8 +730,10 @@ spec: atProvider: properties: accessKey: - description: The access key to use when applying changes. If omitted, - storage_access_key specified in config is used. + description: The access key to use when applying changes. This + value can also be provided as storage_access_key specified in + provider config (explicitly or within shared_credentials_file) + is used. type: string acl: description: The predefined ACL to apply. Defaults to private. diff --git a/package/crds/sws.yandex-cloud.upjet.crossplane.io_securityprofiles.yaml b/package/crds/sws.yandex-cloud.upjet.crossplane.io_securityprofiles.yaml index 2bd4ea0..14a6cce 100644 --- a/package/crds/sws.yandex-cloud.upjet.crossplane.io_securityprofiles.yaml +++ b/package/crds/sws.yandex-cloud.upjet.crossplane.io_securityprofiles.yaml @@ -34,8 +34,9 @@ spec: name: v1alpha1 schema: openAPIV3Schema: - description: SecurityProfile is the Schema for the SecurityProfiles API. + description: SecurityProfile is the Schema for the SecurityProfiles API. With + security profiles you can protect your infrastructure from DDoS attacks + at the application level (L7). properties: apiVersion: description: |- @@ -73,15 +74,27 @@ spec: type: string forProvider: properties: + advancedRateLimiterProfileId: + description: Advanced rate limiter profile ID to use with this + security profile. Set empty to use default. + type: string captchaId: + description: Captcha ID to use with this security profile. Set + empty to use default. type: string cloudId: + description: ID of the security profile. type: string defaultAction: + description: 'Action to perform if none of rules matched. Possible + values: ALLOW or DENY.' type: string description: + description: Optional description of the security profile. type: string folderId: + description: ID of the folder to create a profile in. If omitted, + the provider folder is used. type: string folderIdRef: description: Reference to a Folder in resourcemanager to populate @@ -162,27 +175,47 @@ spec: labels: additionalProperties: type: string + description: Labels as key:value pairs. Maximum of 64 per resource. type: object x-kubernetes-map-type: granular name: + description: Name of the security profile. The name is unique + within the folder. 1-50 characters long. type: string securityRule: + description: List of security rules. The structure is documented + below. items: properties: description: + description: Optional description of the rule. 0-512 characters + long. type: string dryRun: + description: This mode allows you to test your security + profile or a single rule. type: boolean name: + description: Name of the rule. The name is unique within + the security profile. 1-50 characters long. type: string priority: + description: Determines the priority for checking the incoming + traffic. type: number ruleCondition: + description: Rule actions, see Rule actions. The structure + is documented below. items: properties: action: + description: 'Action to perform if this rule matched. + Possible values: ALLOW or DENY.' type: string condition: + description: The condition for matching the rule. + You can find all possibilities of condition in gRPC + specs. items: properties: authority: @@ -211,6 +244,9 @@ spec: items: properties: name: + description: Name of the rule. The name + is unique within the security profile. + 1-50 characters long. type: string value: items: @@ -345,9 +381,197 @@ spec: type: object type: array smartProtection: + description: Smart Protection rule, see Smart Protection + rules. The structure is documented below. + items: + properties: + condition: + description: The condition for matching the rule. + You can find all possibilities of condition in gRPC + specs. + items: + properties: + authority: + items: + properties: + authorities: + items: + properties: + exactMatch: + type: string + exactNotMatch: + type: string + pireRegexMatch: + type: string + pireRegexNotMatch: + type: string + prefixMatch: + type: string + prefixNotMatch: + type: string + type: object + type: array + type: object + type: array + headers: + items: + properties: + name: + description: Name of the rule. The name + is unique within the security profile. + 1-50 characters long. + type: string + value: + items: + properties: + exactMatch: + type: string + exactNotMatch: + type: string + pireRegexMatch: + type: string + pireRegexNotMatch: + type: string + prefixMatch: + type: string + prefixNotMatch: + type: string + type: object + type: array + type: object + type: array + httpMethod: + items: + properties: + httpMethods: + items: + properties: + exactMatch: + type: string + exactNotMatch: + type: string + pireRegexMatch: + type: string + pireRegexNotMatch: + type: string + prefixMatch: + type: string + prefixNotMatch: + type: string + type: object + type: array + type: object + type: array + requestUri: + items: + properties: + path: + items: + properties: + exactMatch: + type: string + exactNotMatch: + type: string + pireRegexMatch: + type: string + pireRegexNotMatch: + type: string + prefixMatch: + type: string + prefixNotMatch: + type: string + type: object + type: array + queries: + items: + properties: + key: + type: string + value: + items: + properties: + exactMatch: + type: string + exactNotMatch: + type: string + pireRegexMatch: + type: string + pireRegexNotMatch: + type: string + prefixMatch: + type: string + prefixNotMatch: + type: string + type: object + type: array + type: object + type: array + type: object + type: array + sourceIp: + items: + properties: + geoIpMatch: + items: + properties: + locations: + items: + type: string + type: array + type: object + type: array + geoIpNotMatch: + items: + properties: + locations: + items: + type: string + type: array + type: object + type: array + ipRangesMatch: + items: + properties: + ipRanges: + items: + type: string + type: array + type: object + type: array + ipRangesNotMatch: + items: + properties: + ipRanges: + items: + type: string + type: array + type: object + type: array + type: object + type: array + type: object + type: array + mode: + description: 'Mode of protection. Possible values: + FULL (full protection means that the traffic will + be checked based on ML models and behavioral analysis, + with suspicious requests being sent to SmartCaptcha) + or API (API protection means checking the traffic + based on ML models and behavioral analysis without + sending suspicious requests to SmartCaptcha. The + suspicious requests will be blocked).' + type: string + type: object + type: array + waf: + description: Web Application Firewall (WAF) rule, see WAF + rules. The structure is documented below. items: properties: condition: + description: The condition for matching the rule. + You can find all possibilities of condition in gRPC + specs. items: properties: authority: @@ -376,6 +600,9 @@ spec: items: properties: name: + description: Name of the rule. The name + is unique within the security profile. + 1-50 characters long. type: string value: items: @@ -508,6 +735,17 @@ spec: type: object type: array mode: + description: 'Mode of protection. Possible values: + FULL (full protection means that the traffic will + be checked based on ML models and behavioral analysis, + with suspicious requests being sent to SmartCaptcha) + or API (API protection means checking the traffic + based on ML models and behavioral analysis without + sending suspicious requests to SmartCaptcha. The + suspicious requests will be blocked).' + type: string + wafProfileId: + description: ID of WAF profile to use in this rule. type: string type: object type: array @@ -527,15 +765,27 @@ spec: for example because of an external controller is managing them, like an autoscaler. properties: + advancedRateLimiterProfileId: + description: Advanced rate limiter profile ID to use with this + security profile. Set empty to use default. + type: string captchaId: + description: Captcha ID to use with this security profile. Set + empty to use default. type: string cloudId: + description: ID of the security profile. type: string defaultAction: + description: 'Action to perform if none of rules matched. Possible + values: ALLOW or DENY.' type: string description: + description: Optional description of the security profile. type: string folderId: + description: ID of the folder to create a profile in. If omitted, + the provider folder is used. type: string folderIdRef: description: Reference to a Folder in resourcemanager to populate @@ -616,27 +866,47 @@ spec: labels: additionalProperties: type: string + description: Labels as key:value pairs. Maximum of 64 per resource. type: object x-kubernetes-map-type: granular name: + description: Name of the security profile. The name is unique + within the folder. 1-50 characters long. type: string securityRule: + description: List of security rules. The structure is documented + below. items: properties: description: + description: Optional description of the rule. 0-512 characters + long. type: string dryRun: + description: This mode allows you to test your security + profile or a single rule. type: boolean name: + description: Name of the rule. The name is unique within + the security profile. 1-50 characters long. type: string priority: + description: Determines the priority for checking the incoming + traffic. type: number ruleCondition: + description: Rule actions, see Rule actions. The structure + is documented below. items: properties: action: + description: 'Action to perform if this rule matched. + Possible values: ALLOW or DENY.' type: string condition: + description: The condition for matching the rule. + You can find all possibilities of condition in gRPC + specs. items: properties: authority: @@ -665,6 +935,9 @@ spec: items: properties: name: + description: Name of the rule. The name + is unique within the security profile. + 1-50 characters long. type: string value: items: @@ -799,9 +1072,197 @@ spec: type: object type: array smartProtection: + description: Smart Protection rule, see Smart Protection + rules. The structure is documented below. + items: + properties: + condition: + description: The condition for matching the rule. + You can find all possibilities of condition in gRPC + specs. + items: + properties: + authority: + items: + properties: + authorities: + items: + properties: + exactMatch: + type: string + exactNotMatch: + type: string + pireRegexMatch: + type: string + pireRegexNotMatch: + type: string + prefixMatch: + type: string + prefixNotMatch: + type: string + type: object + type: array + type: object + type: array + headers: + items: + properties: + name: + description: Name of the rule. The name + is unique within the security profile. + 1-50 characters long. + type: string + value: + items: + properties: + exactMatch: + type: string + exactNotMatch: + type: string + pireRegexMatch: + type: string + pireRegexNotMatch: + type: string + prefixMatch: + type: string + prefixNotMatch: + type: string + type: object + type: array + type: object + type: array + httpMethod: + items: + properties: + httpMethods: + items: + properties: + exactMatch: + type: string + exactNotMatch: + type: string + pireRegexMatch: + type: string + pireRegexNotMatch: + type: string + prefixMatch: + type: string + prefixNotMatch: + type: string + type: object + type: array + type: object + type: array + requestUri: + items: + properties: + path: + items: + properties: + exactMatch: + type: string + exactNotMatch: + type: string + pireRegexMatch: + type: string + pireRegexNotMatch: + type: string + prefixMatch: + type: string + prefixNotMatch: + type: string + type: object + type: array + queries: + items: + properties: + key: + type: string + value: + items: + properties: + exactMatch: + type: string + exactNotMatch: + type: string + pireRegexMatch: + type: string + pireRegexNotMatch: + type: string + prefixMatch: + type: string + prefixNotMatch: + type: string + type: object + type: array + type: object + type: array + type: object + type: array + sourceIp: + items: + properties: + geoIpMatch: + items: + properties: + locations: + items: + type: string + type: array + type: object + type: array + geoIpNotMatch: + items: + properties: + locations: + items: + type: string + type: array + type: object + type: array + ipRangesMatch: + items: + properties: + ipRanges: + items: + type: string + type: array + type: object + type: array + ipRangesNotMatch: + items: + properties: + ipRanges: + items: + type: string + type: array + type: object + type: array + type: object + type: array + type: object + type: array + mode: + description: 'Mode of protection. Possible values: + FULL (full protection means that the traffic will + be checked based on ML models and behavioral analysis, + with suspicious requests being sent to SmartCaptcha) + or API (API protection means checking the traffic + based on ML models and behavioral analysis without + sending suspicious requests to SmartCaptcha. The + suspicious requests will be blocked).' + type: string + type: object + type: array + waf: + description: Web Application Firewall (WAF) rule, see WAF + rules. The structure is documented below. items: properties: condition: + description: The condition for matching the rule. + You can find all possibilities of condition in gRPC + specs. items: properties: authority: @@ -830,6 +1291,9 @@ spec: items: properties: name: + description: Name of the rule. The name + is unique within the security profile. + 1-50 characters long. type: string value: items: @@ -962,6 +1426,17 @@ spec: type: object type: array mode: + description: 'Mode of protection. Possible values: + FULL (full protection means that the traffic will + be checked based on ML models and behavioral analysis, + with suspicious requests being sent to SmartCaptcha) + or API (API protection means checking the traffic + based on ML models and behavioral analysis without + sending suspicious requests to SmartCaptcha. The + suspicious requests will be blocked).' + type: string + wafProfileId: + description: ID of WAF profile to use in this rule. type: string type: object type: array @@ -1140,44 +1615,78 @@ spec: properties: atProvider: properties: + advancedRateLimiterProfileId: + description: Advanced rate limiter profile ID to use with this + security profile. Set empty to use default. + type: string captchaId: + description: Captcha ID to use with this security profile. Set + empty to use default. type: string cloudId: + description: ID of the security profile. type: string createdAt: + description: The Security Profile creation timestamp. type: string defaultAction: + description: 'Action to perform if none of rules matched. Possible + values: ALLOW or DENY.' type: string description: + description: Optional description of the security profile. type: string folderId: + description: ID of the folder to create a profile in. If omitted, + the provider folder is used. type: string id: + description: ID of the security profile. type: string labels: additionalProperties: type: string + description: Labels as key:value pairs. Maximum of 64 per resource. type: object x-kubernetes-map-type: granular name: + description: Name of the security profile. The name is unique + within the folder. 1-50 characters long. type: string securityRule: + description: List of security rules. The structure is documented + below. items: properties: description: + description: Optional description of the rule. 0-512 characters + long. type: string dryRun: + description: This mode allows you to test your security + profile or a single rule. type: boolean name: + description: Name of the rule. The name is unique within + the security profile. 1-50 characters long. type: string priority: + description: Determines the priority for checking the incoming + traffic. type: number ruleCondition: + description: Rule actions, see Rule actions. The structure + is documented below. items: properties: action: + description: 'Action to perform if this rule matched. + Possible values: ALLOW or DENY.' type: string condition: + description: The condition for matching the rule. + You can find all possibilities of condition in gRPC + specs. items: properties: authority: @@ -1206,6 +1715,9 @@ spec: items: properties: name: + description: Name of the rule. The name + is unique within the security profile. + 1-50 characters long. type: string value: items: @@ -1340,9 +1852,197 @@ spec: type: object type: array smartProtection: + description: Smart Protection rule, see Smart Protection + rules. The structure is documented below. + items: + properties: + condition: + description: The condition for matching the rule. + You can find all possibilities of condition in gRPC + specs. + items: + properties: + authority: + items: + properties: + authorities: + items: + properties: + exactMatch: + type: string + exactNotMatch: + type: string + pireRegexMatch: + type: string + pireRegexNotMatch: + type: string + prefixMatch: + type: string + prefixNotMatch: + type: string + type: object + type: array + type: object + type: array + headers: + items: + properties: + name: + description: Name of the rule. The name + is unique within the security profile. + 1-50 characters long. + type: string + value: + items: + properties: + exactMatch: + type: string + exactNotMatch: + type: string + pireRegexMatch: + type: string + pireRegexNotMatch: + type: string + prefixMatch: + type: string + prefixNotMatch: + type: string + type: object + type: array + type: object + type: array + httpMethod: + items: + properties: + httpMethods: + items: + properties: + exactMatch: + type: string + exactNotMatch: + type: string + pireRegexMatch: + type: string + pireRegexNotMatch: + type: string + prefixMatch: + type: string + prefixNotMatch: + type: string + type: object + type: array + type: object + type: array + requestUri: + items: + properties: + path: + items: + properties: + exactMatch: + type: string + exactNotMatch: + type: string + pireRegexMatch: + type: string + pireRegexNotMatch: + type: string + prefixMatch: + type: string + prefixNotMatch: + type: string + type: object + type: array + queries: + items: + properties: + key: + type: string + value: + items: + properties: + exactMatch: + type: string + exactNotMatch: + type: string + pireRegexMatch: + type: string + pireRegexNotMatch: + type: string + prefixMatch: + type: string + prefixNotMatch: + type: string + type: object + type: array + type: object + type: array + type: object + type: array + sourceIp: + items: + properties: + geoIpMatch: + items: + properties: + locations: + items: + type: string + type: array + type: object + type: array + geoIpNotMatch: + items: + properties: + locations: + items: + type: string + type: array + type: object + type: array + ipRangesMatch: + items: + properties: + ipRanges: + items: + type: string + type: array + type: object + type: array + ipRangesNotMatch: + items: + properties: + ipRanges: + items: + type: string + type: array + type: object + type: array + type: object + type: array + type: object + type: array + mode: + description: 'Mode of protection. Possible values: + FULL (full protection means that the traffic will + be checked based on ML models and behavioral analysis, + with suspicious requests being sent to SmartCaptcha) + or API (API protection means checking the traffic + based on ML models and behavioral analysis without + sending suspicious requests to SmartCaptcha. The + suspicious requests will be blocked).' + type: string + type: object + type: array + waf: + description: Web Application Firewall (WAF) rule, see WAF + rules. The structure is documented below. items: properties: condition: + description: The condition for matching the rule. + You can find all possibilities of condition in gRPC + specs. items: properties: authority: @@ -1371,6 +2071,9 @@ spec: items: properties: name: + description: Name of the rule. The name + is unique within the security profile. + 1-50 characters long. type: string value: items: @@ -1503,6 +2206,17 @@ spec: type: object type: array mode: + description: 'Mode of protection. Possible values: + FULL (full protection means that the traffic will + be checked based on ML models and behavioral analysis, + with suspicious requests being sent to SmartCaptcha) + or API (API protection means checking the traffic + based on ML models and behavioral analysis without + sending suspicious requests to SmartCaptcha. The + suspicious requests will be blocked).' + type: string + wafProfileId: + description: ID of WAF profile to use in this rule. type: string type: object type: array diff --git a/package/crds/vpc.yandex-cloud.upjet.crossplane.io_addresses.yaml b/package/crds/vpc.yandex-cloud.upjet.crossplane.io_addresses.yaml index b2da3d8..db50587 100644 --- a/package/crds/vpc.yandex-cloud.upjet.crossplane.io_addresses.yaml +++ b/package/crds/vpc.yandex-cloud.upjet.crossplane.io_addresses.yaml @@ -77,9 +77,8 @@ spec: description: Flag that protects the address from accidental deletion. type: boolean description: - description: |- - An optional description of this resource. Provide this property when - you create the resource. + description: An optional description of this resource. Provide + this property when you create the resource. type: string dnsRecord: description: DNS record specification of address @@ -116,9 +115,8 @@ spec: type: object type: array folderId: - description: |- - ID of the folder that the resource belongs to. If it - is not provided, the default provider folder is used. + description: ID of the folder that the resource belongs to. If + it is not provided, the default provider folder is used. type: string folderIdRef: description: Reference to a Folder in resourcemanager to populate @@ -225,9 +223,8 @@ spec: description: Flag that protects the address from accidental deletion. type: boolean description: - description: |- - An optional description of this resource. Provide this property when - you create the resource. + description: An optional description of this resource. Provide + this property when you create the resource. type: string dnsRecord: description: DNS record specification of address @@ -264,9 +261,8 @@ spec: type: object type: array folderId: - description: |- - ID of the folder that the resource belongs to. If it - is not provided, the default provider folder is used. + description: ID of the folder that the resource belongs to. If + it is not provided, the default provider folder is used. type: string folderIdRef: description: Reference to a Folder in resourcemanager to populate @@ -535,9 +531,8 @@ spec: description: Flag that protects the address from accidental deletion. type: boolean description: - description: |- - An optional description of this resource. Provide this property when - you create the resource. + description: An optional description of this resource. Provide + this property when you create the resource. type: string dnsRecord: description: DNS record specification of address @@ -577,9 +572,8 @@ spec: type: object type: array folderId: - description: |- - ID of the folder that the resource belongs to. If it - is not provided, the default provider folder is used. + description: ID of the folder that the resource belongs to. If + it is not provided, the default provider folder is used. type: string id: type: string diff --git a/package/crds/vpc.yandex-cloud.upjet.crossplane.io_gateways.yaml b/package/crds/vpc.yandex-cloud.upjet.crossplane.io_gateways.yaml index 17746e1..258c686 100644 --- a/package/crds/vpc.yandex-cloud.upjet.crossplane.io_gateways.yaml +++ b/package/crds/vpc.yandex-cloud.upjet.crossplane.io_gateways.yaml @@ -74,14 +74,12 @@ spec: forProvider: properties: description: - description: |- - An optional description of this resource. Provide this property when - you create the resource. + description: An optional description of this resource. Provide + this property when you create the resource. type: string folderId: - description: |- - ID of the folder that the resource belongs to. If it - is not provided, the default provider folder is used. + description: ID of the folder that the resource belongs to. If + it is not provided, the default provider folder is used. type: string folderIdRef: description: Reference to a Folder in resourcemanager to populate @@ -190,14 +188,12 @@ spec: autoscaler. properties: description: - description: |- - An optional description of this resource. Provide this property when - you create the resource. + description: An optional description of this resource. Provide + this property when you create the resource. type: string folderId: - description: |- - ID of the folder that the resource belongs to. If it - is not provided, the default provider folder is used. + description: ID of the folder that the resource belongs to. If + it is not provided, the default provider folder is used. type: string folderIdRef: description: Reference to a Folder in resourcemanager to populate @@ -468,14 +464,12 @@ spec: description: Creation timestamp of the key. type: string description: - description: |- - An optional description of this resource. Provide this property when - you create the resource. + description: An optional description of this resource. Provide + this property when you create the resource. type: string folderId: - description: |- - ID of the folder that the resource belongs to. If it - is not provided, the default provider folder is used. + description: ID of the folder that the resource belongs to. If + it is not provided, the default provider folder is used. type: string id: type: string diff --git a/package/crds/vpc.yandex-cloud.upjet.crossplane.io_networks.yaml b/package/crds/vpc.yandex-cloud.upjet.crossplane.io_networks.yaml index 2650c5c..11e1ccd 100644 --- a/package/crds/vpc.yandex-cloud.upjet.crossplane.io_networks.yaml +++ b/package/crds/vpc.yandex-cloud.upjet.crossplane.io_networks.yaml @@ -74,14 +74,12 @@ spec: forProvider: properties: description: - description: |- - An optional description of this resource. Provide this property when - you create the resource. + description: An optional description of this resource. Provide + this property when you create the resource. type: string folderId: - description: |- - ID of the folder that the resource belongs to. If it - is not provided, the default provider folder is used. + description: ID of the folder that the resource belongs to. If + it is not provided, the default provider folder is used. type: string folderIdRef: description: Reference to a Folder in resourcemanager to populate @@ -185,14 +183,12 @@ spec: autoscaler. properties: description: - description: |- - An optional description of this resource. Provide this property when - you create the resource. + description: An optional description of this resource. Provide + this property when you create the resource. type: string folderId: - description: |- - ID of the folder that the resource belongs to. If it - is not provided, the default provider folder is used. + description: ID of the folder that the resource belongs to. If + it is not provided, the default provider folder is used. type: string folderIdRef: description: Reference to a Folder in resourcemanager to populate @@ -461,14 +457,12 @@ spec: description: ID of default Security Group of this network. type: string description: - description: |- - An optional description of this resource. Provide this property when - you create the resource. + description: An optional description of this resource. Provide + this property when you create the resource. type: string folderId: - description: |- - ID of the folder that the resource belongs to. If it - is not provided, the default provider folder is used. + description: ID of the folder that the resource belongs to. If + it is not provided, the default provider folder is used. type: string id: type: string diff --git a/package/crds/vpc.yandex-cloud.upjet.crossplane.io_privateendpoints.yaml b/package/crds/vpc.yandex-cloud.upjet.crossplane.io_privateendpoints.yaml new file mode 100644 index 0000000..20c4139 --- /dev/null +++ b/package/crds/vpc.yandex-cloud.upjet.crossplane.io_privateendpoints.yaml @@ -0,0 +1,941 @@ +--- +apiVersion: apiextensions.k8s.io/v1 +kind: CustomResourceDefinition +metadata: + annotations: + controller-gen.kubebuilder.io/version: v0.14.0 + name: privateendpoints.vpc.yandex-cloud.upjet.crossplane.io +spec: + group: vpc.yandex-cloud.upjet.crossplane.io + names: + categories: + - crossplane + - managed + - yandex-cloud + kind: PrivateEndpoint + listKind: PrivateEndpointList + plural: privateendpoints + singular: privateendpoint + scope: Cluster + versions: + - additionalPrinterColumns: + - jsonPath: .status.conditions[?(@.type=='Synced')].status + name: SYNCED + type: string + - jsonPath: .status.conditions[?(@.type=='Ready')].status + name: READY + type: string + - jsonPath: .metadata.annotations.crossplane\.io/external-name + name: EXTERNAL-NAME + type: string + - jsonPath: .metadata.creationTimestamp + name: AGE + type: date + name: v1alpha1 + schema: + openAPIV3Schema: + description: PrivateEndpoint is the Schema for the PrivateEndpoints API. Manages + a VPC Private Endpoint within Yandex.Cloud. + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: PrivateEndpointSpec defines the desired state of PrivateEndpoint + properties: + deletionPolicy: + default: Delete + description: |- + DeletionPolicy specifies what will happen to the underlying external + when this managed resource is deleted - either "Delete" or "Orphan" the + external resource. + This field is planned to be deprecated in favor of the ManagementPolicies + field in a future release. Currently, both could be set independently and + non-default values would be honored if the feature flag is enabled. + See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + enum: + - Orphan + - Delete + type: string + forProvider: + properties: + description: + description: An optional description of this resource. Provide + this property when you create the resource. + type: string + dnsOptions: + description: Private endpoint DNS options block. + items: + properties: + privateDnsRecordsEnabled: + description: If enabled - additional service dns will be + created. + type: boolean + type: object + type: array + endpointAddress: + description: Private endpoint address specification block. + items: + properties: + address: + description: Specifies IP address within subnet_id. + type: string + addressId: + description: ID of the address. + type: string + subnetId: + description: Subnet of the IP address. + type: string + subnetIdRef: + description: Reference to a Subnet in vpc to populate subnetId. + properties: + name: + description: Name of the referenced object. + type: string + policy: + description: Policies for referencing. + properties: + resolution: + default: Required + description: |- + Resolution specifies whether resolution of this reference is required. + The default is 'Required', which means the reconcile will fail if the + reference cannot be resolved. 'Optional' means this reference will be + a no-op if it cannot be resolved. + enum: + - Required + - Optional + type: string + resolve: + description: |- + Resolve specifies when this reference should be resolved. The default + is 'IfNotPresent', which will attempt to resolve the reference only when + the corresponding field is not present. Use 'Always' to resolve the + reference on every reconcile. + enum: + - Always + - IfNotPresent + type: string + type: object + required: + - name + type: object + subnetIdSelector: + description: Selector for a Subnet in vpc to populate subnetId. + properties: + matchControllerRef: + description: |- + MatchControllerRef ensures an object with the same controller reference + as the selecting object is selected. + type: boolean + matchLabels: + additionalProperties: + type: string + description: MatchLabels ensures an object with matching + labels is selected. + type: object + policy: + description: Policies for selection. + properties: + resolution: + default: Required + description: |- + Resolution specifies whether resolution of this reference is required. + The default is 'Required', which means the reconcile will fail if the + reference cannot be resolved. 'Optional' means this reference will be + a no-op if it cannot be resolved. + enum: + - Required + - Optional + type: string + resolve: + description: |- + Resolve specifies when this reference should be resolved. The default + is 'IfNotPresent', which will attempt to resolve the reference only when + the corresponding field is not present. Use 'Always' to resolve the + reference on every reconcile. + enum: + - Always + - IfNotPresent + type: string + type: object + type: object + type: object + type: array + folderId: + description: ID of the folder that the resource belongs to. If + it is not provided, the default provider folder is used. + type: string + folderIdRef: + description: Reference to a Folder in resourcemanager to populate + folderId. + properties: + name: + description: Name of the referenced object. + type: string + policy: + description: Policies for referencing. + properties: + resolution: + default: Required + description: |- + Resolution specifies whether resolution of this reference is required. + The default is 'Required', which means the reconcile will fail if the + reference cannot be resolved. 'Optional' means this reference will be + a no-op if it cannot be resolved. + enum: + - Required + - Optional + type: string + resolve: + description: |- + Resolve specifies when this reference should be resolved. The default + is 'IfNotPresent', which will attempt to resolve the reference only when + the corresponding field is not present. Use 'Always' to resolve the + reference on every reconcile. + enum: + - Always + - IfNotPresent + type: string + type: object + required: + - name + type: object + folderIdSelector: + description: Selector for a Folder in resourcemanager to populate + folderId. + properties: + matchControllerRef: + description: |- + MatchControllerRef ensures an object with the same controller reference + as the selecting object is selected. + type: boolean + matchLabels: + additionalProperties: + type: string + description: MatchLabels ensures an object with matching labels + is selected. + type: object + policy: + description: Policies for selection. + properties: + resolution: + default: Required + description: |- + Resolution specifies whether resolution of this reference is required. + The default is 'Required', which means the reconcile will fail if the + reference cannot be resolved. 'Optional' means this reference will be + a no-op if it cannot be resolved. + enum: + - Required + - Optional + type: string + resolve: + description: |- + Resolve specifies when this reference should be resolved. The default + is 'IfNotPresent', which will attempt to resolve the reference only when + the corresponding field is not present. Use 'Always' to resolve the + reference on every reconcile. + enum: + - Always + - IfNotPresent + type: string + type: object + type: object + labels: + additionalProperties: + type: string + description: Labels to apply to this resource. A list of key/value + pairs. + type: object + x-kubernetes-map-type: granular + name: + description: Name of the private endpoint. Provided by the client + when the private endpoint is created. + type: string + networkId: + description: ID of the network which private endpoint belongs + to. + type: string + networkIdRef: + description: Reference to a Network in vpc to populate networkId. + properties: + name: + description: Name of the referenced object. + type: string + policy: + description: Policies for referencing. + properties: + resolution: + default: Required + description: |- + Resolution specifies whether resolution of this reference is required. + The default is 'Required', which means the reconcile will fail if the + reference cannot be resolved. 'Optional' means this reference will be + a no-op if it cannot be resolved. + enum: + - Required + - Optional + type: string + resolve: + description: |- + Resolve specifies when this reference should be resolved. The default + is 'IfNotPresent', which will attempt to resolve the reference only when + the corresponding field is not present. Use 'Always' to resolve the + reference on every reconcile. + enum: + - Always + - IfNotPresent + type: string + type: object + required: + - name + type: object + networkIdSelector: + description: Selector for a Network in vpc to populate networkId. + properties: + matchControllerRef: + description: |- + MatchControllerRef ensures an object with the same controller reference + as the selecting object is selected. + type: boolean + matchLabels: + additionalProperties: + type: string + description: MatchLabels ensures an object with matching labels + is selected. + type: object + policy: + description: Policies for selection. + properties: + resolution: + default: Required + description: |- + Resolution specifies whether resolution of this reference is required. + The default is 'Required', which means the reconcile will fail if the + reference cannot be resolved. 'Optional' means this reference will be + a no-op if it cannot be resolved. + enum: + - Required + - Optional + type: string + resolve: + description: |- + Resolve specifies when this reference should be resolved. The default + is 'IfNotPresent', which will attempt to resolve the reference only when + the corresponding field is not present. Use 'Always' to resolve the + reference on every reconcile. + enum: + - Always + - IfNotPresent + type: string + type: object + type: object + objectStorage: + items: + type: object + type: array + type: object + initProvider: + description: |- + THIS IS A BETA FIELD. It will be honored + unless the Management Policies feature flag is disabled. + InitProvider holds the same fields as ForProvider, with the exception + of Identifier and other resource reference fields. The fields that are + in InitProvider are merged into ForProvider when the resource is created. + The same fields are also added to the terraform ignore_changes hook, to + avoid updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after creation, + for example because of an external controller is managing them, like an + autoscaler. + properties: + description: + description: An optional description of this resource. Provide + this property when you create the resource. + type: string + dnsOptions: + description: Private endpoint DNS options block. + items: + properties: + privateDnsRecordsEnabled: + description: If enabled - additional service dns will be + created. + type: boolean + type: object + type: array + endpointAddress: + description: Private endpoint address specification block. + items: + properties: + address: + description: Specifies IP address within subnet_id. + type: string + addressId: + description: ID of the address. + type: string + subnetId: + description: Subnet of the IP address. + type: string + subnetIdRef: + description: Reference to a Subnet in vpc to populate subnetId. + properties: + name: + description: Name of the referenced object. + type: string + policy: + description: Policies for referencing. + properties: + resolution: + default: Required + description: |- + Resolution specifies whether resolution of this reference is required. + The default is 'Required', which means the reconcile will fail if the + reference cannot be resolved. 'Optional' means this reference will be + a no-op if it cannot be resolved. + enum: + - Required + - Optional + type: string + resolve: + description: |- + Resolve specifies when this reference should be resolved. The default + is 'IfNotPresent', which will attempt to resolve the reference only when + the corresponding field is not present. Use 'Always' to resolve the + reference on every reconcile. + enum: + - Always + - IfNotPresent + type: string + type: object + required: + - name + type: object + subnetIdSelector: + description: Selector for a Subnet in vpc to populate subnetId. + properties: + matchControllerRef: + description: |- + MatchControllerRef ensures an object with the same controller reference + as the selecting object is selected. + type: boolean + matchLabels: + additionalProperties: + type: string + description: MatchLabels ensures an object with matching + labels is selected. + type: object + policy: + description: Policies for selection. + properties: + resolution: + default: Required + description: |- + Resolution specifies whether resolution of this reference is required. + The default is 'Required', which means the reconcile will fail if the + reference cannot be resolved. 'Optional' means this reference will be + a no-op if it cannot be resolved. + enum: + - Required + - Optional + type: string + resolve: + description: |- + Resolve specifies when this reference should be resolved. The default + is 'IfNotPresent', which will attempt to resolve the reference only when + the corresponding field is not present. Use 'Always' to resolve the + reference on every reconcile. + enum: + - Always + - IfNotPresent + type: string + type: object + type: object + type: object + type: array + folderId: + description: ID of the folder that the resource belongs to. If + it is not provided, the default provider folder is used. + type: string + folderIdRef: + description: Reference to a Folder in resourcemanager to populate + folderId. + properties: + name: + description: Name of the referenced object. + type: string + policy: + description: Policies for referencing. + properties: + resolution: + default: Required + description: |- + Resolution specifies whether resolution of this reference is required. + The default is 'Required', which means the reconcile will fail if the + reference cannot be resolved. 'Optional' means this reference will be + a no-op if it cannot be resolved. + enum: + - Required + - Optional + type: string + resolve: + description: |- + Resolve specifies when this reference should be resolved. The default + is 'IfNotPresent', which will attempt to resolve the reference only when + the corresponding field is not present. Use 'Always' to resolve the + reference on every reconcile. + enum: + - Always + - IfNotPresent + type: string + type: object + required: + - name + type: object + folderIdSelector: + description: Selector for a Folder in resourcemanager to populate + folderId. + properties: + matchControllerRef: + description: |- + MatchControllerRef ensures an object with the same controller reference + as the selecting object is selected. + type: boolean + matchLabels: + additionalProperties: + type: string + description: MatchLabels ensures an object with matching labels + is selected. + type: object + policy: + description: Policies for selection. + properties: + resolution: + default: Required + description: |- + Resolution specifies whether resolution of this reference is required. + The default is 'Required', which means the reconcile will fail if the + reference cannot be resolved. 'Optional' means this reference will be + a no-op if it cannot be resolved. + enum: + - Required + - Optional + type: string + resolve: + description: |- + Resolve specifies when this reference should be resolved. The default + is 'IfNotPresent', which will attempt to resolve the reference only when + the corresponding field is not present. Use 'Always' to resolve the + reference on every reconcile. + enum: + - Always + - IfNotPresent + type: string + type: object + type: object + labels: + additionalProperties: + type: string + description: Labels to apply to this resource. A list of key/value + pairs. + type: object + x-kubernetes-map-type: granular + name: + description: Name of the private endpoint. Provided by the client + when the private endpoint is created. + type: string + networkId: + description: ID of the network which private endpoint belongs + to. + type: string + networkIdRef: + description: Reference to a Network in vpc to populate networkId. + properties: + name: + description: Name of the referenced object. + type: string + policy: + description: Policies for referencing. + properties: + resolution: + default: Required + description: |- + Resolution specifies whether resolution of this reference is required. + The default is 'Required', which means the reconcile will fail if the + reference cannot be resolved. 'Optional' means this reference will be + a no-op if it cannot be resolved. + enum: + - Required + - Optional + type: string + resolve: + description: |- + Resolve specifies when this reference should be resolved. The default + is 'IfNotPresent', which will attempt to resolve the reference only when + the corresponding field is not present. Use 'Always' to resolve the + reference on every reconcile. + enum: + - Always + - IfNotPresent + type: string + type: object + required: + - name + type: object + networkIdSelector: + description: Selector for a Network in vpc to populate networkId. + properties: + matchControllerRef: + description: |- + MatchControllerRef ensures an object with the same controller reference + as the selecting object is selected. + type: boolean + matchLabels: + additionalProperties: + type: string + description: MatchLabels ensures an object with matching labels + is selected. + type: object + policy: + description: Policies for selection. + properties: + resolution: + default: Required + description: |- + Resolution specifies whether resolution of this reference is required. + The default is 'Required', which means the reconcile will fail if the + reference cannot be resolved. 'Optional' means this reference will be + a no-op if it cannot be resolved. + enum: + - Required + - Optional + type: string + resolve: + description: |- + Resolve specifies when this reference should be resolved. The default + is 'IfNotPresent', which will attempt to resolve the reference only when + the corresponding field is not present. Use 'Always' to resolve the + reference on every reconcile. + enum: + - Always + - IfNotPresent + type: string + type: object + type: object + objectStorage: + items: + type: object + type: array + type: object + managementPolicies: + default: + - '*' + description: |- + THIS IS A BETA FIELD. It is on by default but can be opted out + through a Crossplane feature flag. + ManagementPolicies specify the array of actions Crossplane is allowed to + take on the managed and external resources. + This field is planned to replace the DeletionPolicy field in a future + release. Currently, both could be set independently and non-default + values would be honored if the feature flag is enabled. If both are + custom, the DeletionPolicy field will be ignored. + See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md + items: + description: |- + A ManagementAction represents an action that the Crossplane controllers + can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array + providerConfigRef: + default: + name: default + description: |- + ProviderConfigReference specifies how the provider that will be used to + create, observe, update, and delete this managed resource should be + configured. + properties: + name: + description: Name of the referenced object. + type: string + policy: + description: Policies for referencing. + properties: + resolution: + default: Required + description: |- + Resolution specifies whether resolution of this reference is required. + The default is 'Required', which means the reconcile will fail if the + reference cannot be resolved. 'Optional' means this reference will be + a no-op if it cannot be resolved. + enum: + - Required + - Optional + type: string + resolve: + description: |- + Resolve specifies when this reference should be resolved. The default + is 'IfNotPresent', which will attempt to resolve the reference only when + the corresponding field is not present. Use 'Always' to resolve the + reference on every reconcile. + enum: + - Always + - IfNotPresent + type: string + type: object + required: + - name + type: object + publishConnectionDetailsTo: + description: |- + PublishConnectionDetailsTo specifies the connection secret config which + contains a name, metadata and a reference to secret store config to + which any connection details for this managed resource should be written. + Connection details frequently include the endpoint, username, + and password required to connect to the managed resource. + properties: + configRef: + default: + name: default + description: |- + SecretStoreConfigRef specifies which secret store config should be used + for this ConnectionSecret. + properties: + name: + description: Name of the referenced object. + type: string + policy: + description: Policies for referencing. + properties: + resolution: + default: Required + description: |- + Resolution specifies whether resolution of this reference is required. + The default is 'Required', which means the reconcile will fail if the + reference cannot be resolved. 'Optional' means this reference will be + a no-op if it cannot be resolved. + enum: + - Required + - Optional + type: string + resolve: + description: |- + Resolve specifies when this reference should be resolved. The default + is 'IfNotPresent', which will attempt to resolve the reference only when + the corresponding field is not present. Use 'Always' to resolve the + reference on every reconcile. + enum: + - Always + - IfNotPresent + type: string + type: object + required: + - name + type: object + metadata: + description: Metadata is the metadata for connection secret. + properties: + annotations: + additionalProperties: + type: string + description: |- + Annotations are the annotations to be added to connection secret. + - For Kubernetes secrets, this will be used as "metadata.annotations". + - It is up to Secret Store implementation for others store types. + type: object + labels: + additionalProperties: + type: string + description: |- + Labels are the labels/tags to be added to connection secret. + - For Kubernetes secrets, this will be used as "metadata.labels". + - It is up to Secret Store implementation for others store types. + type: object + type: + description: |- + Type is the SecretType for the connection secret. + - Only valid for Kubernetes Secret Stores. + type: string + type: object + name: + description: Name is the name of the connection secret. + type: string + required: + - name + type: object + writeConnectionSecretToRef: + description: |- + WriteConnectionSecretToReference specifies the namespace and name of a + Secret to which any connection details for this managed resource should + be written. Connection details frequently include the endpoint, username, + and password required to connect to the managed resource. + This field is planned to be replaced in a future release in favor of + PublishConnectionDetailsTo. Currently, both could be set independently + and connection details would be published to both without affecting + each other. + properties: + name: + description: Name of the secret. + type: string + namespace: + description: Namespace of the secret. + type: string + required: + - name + - namespace + type: object + required: + - forProvider + type: object + x-kubernetes-validations: + - message: spec.forProvider.objectStorage is a required parameter + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.objectStorage) + || (has(self.initProvider) && has(self.initProvider.objectStorage))' + status: + description: PrivateEndpointStatus defines the observed state of PrivateEndpoint. + properties: + atProvider: + properties: + createdAt: + description: Creation timestamp of the key. + type: string + description: + description: An optional description of this resource. Provide + this property when you create the resource. + type: string + dnsOptions: + description: Private endpoint DNS options block. + items: + properties: + privateDnsRecordsEnabled: + description: If enabled - additional service dns will be + created. + type: boolean + type: object + type: array + endpointAddress: + description: Private endpoint address specification block. + items: + properties: + address: + description: Specifies IP address within subnet_id. + type: string + addressId: + description: ID of the address. + type: string + subnetId: + description: Subnet of the IP address. + type: string + type: object + type: array + folderId: + description: ID of the folder that the resource belongs to. If + it is not provided, the default provider folder is used. + type: string + id: + type: string + labels: + additionalProperties: + type: string + description: Labels to apply to this resource. A list of key/value + pairs. + type: object + x-kubernetes-map-type: granular + name: + description: Name of the private endpoint. Provided by the client + when the private endpoint is created. + type: string + networkId: + description: ID of the network which private endpoint belongs + to. + type: string + objectStorage: + items: + type: object + type: array + status: + description: Status of the private endpoint. + type: string + type: object + conditions: + description: Conditions of the resource. + items: + description: A Condition that may apply to a resource. + properties: + lastTransitionTime: + description: |- + LastTransitionTime is the last time this condition transitioned from one + status to another. + format: date-time + type: string + message: + description: |- + A Message containing details about this condition's last transition from + one status to another, if any. + type: string + observedGeneration: + description: |- + ObservedGeneration represents the .metadata.generation that the condition was set based upon. + For instance, if .metadata.generation is currently 12, but the .status.conditions[x].observedGeneration is 9, the condition is out of date + with respect to the current state of the instance. + format: int64 + type: integer + reason: + description: A Reason for this condition's last transition from + one status to another. + type: string + status: + description: Status of this condition; is it currently True, + False, or Unknown? + type: string + type: + description: |- + Type of this condition. At most one of each condition type may apply to + a resource at any point in time. + type: string + required: + - lastTransitionTime + - reason + - status + - type + type: object + type: array + x-kubernetes-list-map-keys: + - type + x-kubernetes-list-type: map + observedGeneration: + description: |- + ObservedGeneration is the latest metadata.generation + which resulted in either a ready state, or stalled due to error + it can not recover from without human intervention. + format: int64 + type: integer + type: object + required: + - spec + type: object + served: true + storage: true + subresources: + status: {} diff --git a/package/crds/vpc.yandex-cloud.upjet.crossplane.io_routetables.yaml b/package/crds/vpc.yandex-cloud.upjet.crossplane.io_routetables.yaml index 93a4097..a2d4893 100644 --- a/package/crds/vpc.yandex-cloud.upjet.crossplane.io_routetables.yaml +++ b/package/crds/vpc.yandex-cloud.upjet.crossplane.io_routetables.yaml @@ -74,13 +74,11 @@ spec: forProvider: properties: description: - description: |- - An optional description of the route table. Provide this property when - you create the resource. + description: An optional description of the route table. Provide + this property when you create the resource. type: string folderId: - description: |- - The ID of the folder to which the resource belongs. + description: The ID of the folder to which the resource belongs. If omitted, the provider folder is used. type: string folderIdRef: @@ -352,13 +350,11 @@ spec: autoscaler. properties: description: - description: |- - An optional description of the route table. Provide this property when - you create the resource. + description: An optional description of the route table. Provide + this property when you create the resource. type: string folderId: - description: |- - The ID of the folder to which the resource belongs. + description: The ID of the folder to which the resource belongs. If omitted, the provider folder is used. type: string folderIdRef: @@ -792,13 +788,11 @@ spec: description: Creation timestamp of the route table. type: string description: - description: |- - An optional description of the route table. Provide this property when - you create the resource. + description: An optional description of the route table. Provide + this property when you create the resource. type: string folderId: - description: |- - The ID of the folder to which the resource belongs. + description: The ID of the folder to which the resource belongs. If omitted, the provider folder is used. type: string id: diff --git a/package/crds/vpc.yandex-cloud.upjet.crossplane.io_subnets.yaml b/package/crds/vpc.yandex-cloud.upjet.crossplane.io_subnets.yaml index bd61136..fe3d456 100644 --- a/package/crds/vpc.yandex-cloud.upjet.crossplane.io_subnets.yaml +++ b/package/crds/vpc.yandex-cloud.upjet.crossplane.io_subnets.yaml @@ -75,9 +75,8 @@ spec: forProvider: properties: description: - description: |- - An optional description of the subnet. Provide this property when - you create the resource. + description: An optional description of the subnet. Provide this + property when you create the resource. type: string dhcpOptions: description: Options for DHCP client. The structure is documented @@ -100,8 +99,7 @@ spec: type: object type: array folderId: - description: |- - The ID of the folder to which the resource belongs. + description: The ID of the folder to which the resource belongs. If omitted, the provider folder is used. type: string folderIdRef: @@ -192,9 +190,8 @@ spec: subnet is created. type: string networkId: - description: |- - ID of the network this subnet belongs to. - Only networks that are in the distributed mode can have subnets. + description: ID of the network this subnet belongs to. Only networks + that are in the distributed mode can have subnets. type: string networkIdRef: description: Reference to a Network to populate networkId. @@ -271,16 +268,17 @@ spec: type: object type: object routeTableId: - description: |- - The ID of the route table to assign to this subnet. Assigned route table should - belong to the same network as this subnet. + description: The ID of the route table to assign to this subnet. + Assigned route table should belong to the same network as this + subnet. type: string v4CidrBlocks: - description: |- - A list of blocks of internal IPv4 addresses that are owned by this subnet. - Provide this property when you create the subnet. For example, 10.0.0.0/22 or 192.168.0.0/16. - Blocks of addresses must be unique and non-overlapping within a network. - Minimum subnet size is /28, and maximum subnet size is /16. Only IPv4 is supported. + description: A list of blocks of internal IPv4 addresses that + are owned by this subnet. Provide this property when you create + the subnet. For example, 10.0.0.0/22 or 192.168.0.0/16. Blocks + of addresses must be unique and non-overlapping within a network. + Minimum subnet size is /28, and maximum subnet size is /16. + Only IPv4 is supported. items: type: string type: array @@ -302,9 +300,8 @@ spec: autoscaler. properties: description: - description: |- - An optional description of the subnet. Provide this property when - you create the resource. + description: An optional description of the subnet. Provide this + property when you create the resource. type: string dhcpOptions: description: Options for DHCP client. The structure is documented @@ -327,8 +324,7 @@ spec: type: object type: array folderId: - description: |- - The ID of the folder to which the resource belongs. + description: The ID of the folder to which the resource belongs. If omitted, the provider folder is used. type: string folderIdRef: @@ -419,9 +415,8 @@ spec: subnet is created. type: string networkId: - description: |- - ID of the network this subnet belongs to. - Only networks that are in the distributed mode can have subnets. + description: ID of the network this subnet belongs to. Only networks + that are in the distributed mode can have subnets. type: string networkIdRef: description: Reference to a Network to populate networkId. @@ -498,16 +493,17 @@ spec: type: object type: object routeTableId: - description: |- - The ID of the route table to assign to this subnet. Assigned route table should - belong to the same network as this subnet. + description: The ID of the route table to assign to this subnet. + Assigned route table should belong to the same network as this + subnet. type: string v4CidrBlocks: - description: |- - A list of blocks of internal IPv4 addresses that are owned by this subnet. - Provide this property when you create the subnet. For example, 10.0.0.0/22 or 192.168.0.0/16. - Blocks of addresses must be unique and non-overlapping within a network. - Minimum subnet size is /28, and maximum subnet size is /16. Only IPv4 is supported. + description: A list of blocks of internal IPv4 addresses that + are owned by this subnet. Provide this property when you create + the subnet. For example, 10.0.0.0/22 or 192.168.0.0/16. Blocks + of addresses must be unique and non-overlapping within a network. + Minimum subnet size is /28, and maximum subnet size is /16. + Only IPv4 is supported. items: type: string type: array @@ -695,9 +691,8 @@ spec: createdAt: type: string description: - description: |- - An optional description of the subnet. Provide this property when - you create the resource. + description: An optional description of the subnet. Provide this + property when you create the resource. type: string dhcpOptions: description: Options for DHCP client. The structure is documented @@ -720,8 +715,7 @@ spec: type: object type: array folderId: - description: |- - The ID of the folder to which the resource belongs. + description: The ID of the folder to which the resource belongs. If omitted, the provider folder is used. type: string id: @@ -738,21 +732,21 @@ spec: subnet is created. type: string networkId: - description: |- - ID of the network this subnet belongs to. - Only networks that are in the distributed mode can have subnets. + description: ID of the network this subnet belongs to. Only networks + that are in the distributed mode can have subnets. type: string routeTableId: - description: |- - The ID of the route table to assign to this subnet. Assigned route table should - belong to the same network as this subnet. + description: The ID of the route table to assign to this subnet. + Assigned route table should belong to the same network as this + subnet. type: string v4CidrBlocks: - description: |- - A list of blocks of internal IPv4 addresses that are owned by this subnet. - Provide this property when you create the subnet. For example, 10.0.0.0/22 or 192.168.0.0/16. - Blocks of addresses must be unique and non-overlapping within a network. - Minimum subnet size is /28, and maximum subnet size is /16. Only IPv4 is supported. + description: A list of blocks of internal IPv4 addresses that + are owned by this subnet. Provide this property when you create + the subnet. For example, 10.0.0.0/22 or 192.168.0.0/16. Blocks + of addresses must be unique and non-overlapping within a network. + Minimum subnet size is /28, and maximum subnet size is /16. + Only IPv4 is supported. items: type: string type: array diff --git a/package/crds/yandex.yandex-cloud.upjet.crossplane.io_functions.yaml b/package/crds/yandex.yandex-cloud.upjet.crossplane.io_functions.yaml index d0d27c1..b7595d5 100644 --- a/package/crds/yandex.yandex-cloud.upjet.crossplane.io_functions.yaml +++ b/package/crds/yandex.yandex-cloud.upjet.crossplane.io_functions.yaml @@ -75,7 +75,7 @@ spec: properties: asyncInvocation: description: Config for asynchronous invocations of Yandex Cloud - Function. + Function items: properties: retriesCount: @@ -113,28 +113,28 @@ spec: type: array concurrency: description: The maximum number of requests processed by a function - instance at the same time. + instance at the same time type: number connectivity: description: Function version connectivity. If specified the version - will be attached to specified network. + will be attached to specified network items: properties: networkId: description: Network the version will have access to. It's essential to specify network with subnets in all availability - zones. + zones type: string type: object type: array content: description: Version deployment content for Yandex Cloud Function code. Can be only one package or content section. Either package - or content section must be specified. + or content section must be specified items: properties: zipFilename: - description: Filename to zip archive for the version. + description: Filename to zip archive for the version type: string type: object type: array @@ -241,14 +241,15 @@ spec: type: object x-kubernetes-map-type: granular logOptions: - description: Options for logging from Yandex Cloud Function. + description: Options for logging from Yandex Cloud Function items: properties: disabled: description: Is logging from function disabled type: boolean folderId: - description: Folder ID for the Yandex Cloud Function + description: Log entries are written to default log group + for specified folder type: string logGroupId: description: Log entries are written to specified log group @@ -262,25 +263,142 @@ spec: description: Memory in megabytes (aligned to 128MB) for Yandex Cloud Function type: number + mounts: + description: Mounts for Yandex Cloud Function. + items: + properties: + ephemeralDisk: + description: One of the available mount types. Disk available + during the function execution time + items: + properties: + blockSizeKb: + description: Optional block size of the ephemeral + disk in KB + type: number + sizeGb: + description: Size of the ephemeral disk in GB + type: number + type: object + type: array + mode: + description: Mount’s accessibility mode. Valid values are + ro and rw + type: string + name: + description: Yandex Cloud Function name used to define trigger + type: string + objectStorage: + description: One of the available mount types. Object storage + as a mount + items: + properties: + bucket: + description: Name of the mounting bucket + type: string + bucketRef: + description: Reference to a Bucket in storage to populate + bucket. + properties: + name: + description: Name of the referenced object. + type: string + policy: + description: Policies for referencing. + properties: + resolution: + default: Required + description: |- + Resolution specifies whether resolution of this reference is required. + The default is 'Required', which means the reconcile will fail if the + reference cannot be resolved. 'Optional' means this reference will be + a no-op if it cannot be resolved. + enum: + - Required + - Optional + type: string + resolve: + description: |- + Resolve specifies when this reference should be resolved. The default + is 'IfNotPresent', which will attempt to resolve the reference only when + the corresponding field is not present. Use 'Always' to resolve the + reference on every reconcile. + enum: + - Always + - IfNotPresent + type: string + type: object + required: + - name + type: object + bucketSelector: + description: Selector for a Bucket in storage to populate + bucket. + properties: + matchControllerRef: + description: |- + MatchControllerRef ensures an object with the same controller reference + as the selecting object is selected. + type: boolean + matchLabels: + additionalProperties: + type: string + description: MatchLabels ensures an object with + matching labels is selected. + type: object + policy: + description: Policies for selection. + properties: + resolution: + default: Required + description: |- + Resolution specifies whether resolution of this reference is required. + The default is 'Required', which means the reconcile will fail if the + reference cannot be resolved. 'Optional' means this reference will be + a no-op if it cannot be resolved. + enum: + - Required + - Optional + type: string + resolve: + description: |- + Resolve specifies when this reference should be resolved. The default + is 'IfNotPresent', which will attempt to resolve the reference only when + the corresponding field is not present. Use 'Always' to resolve the + reference on every reconcile. + enum: + - Always + - IfNotPresent + type: string + type: object + type: object + prefix: + description: Prefix within the bucket. If you leave + this field empty, the entire bucket will be mounted + type: string + type: object + type: array + type: object + type: array name: description: Yandex Cloud Function name used to define trigger type: string package: description: Version deployment package for Yandex Cloud Function code. Can be only one package or content section. Either package - or content section must be specified. + or content section must be specified items: properties: bucketName: description: Name of the bucket that stores the code for - the version. + the version type: string objectName: description: Name of the object in the bucket that stores - the code for the version. + the code for the version type: string sha256: - description: SHA256 hash of the version deployment package. + description: SHA256 hash of the version deployment package type: string type: object type: array @@ -293,53 +411,206 @@ spec: properties: environmentVariable: description: Function's environment variable in which secret's - value will be stored. + value will be stored type: string id: - description: Secret's id. + description: Secret's id type: string + idRef: + description: Reference to a Secret in lockbox to populate + id. + properties: + name: + description: Name of the referenced object. + type: string + policy: + description: Policies for referencing. + properties: + resolution: + default: Required + description: |- + Resolution specifies whether resolution of this reference is required. + The default is 'Required', which means the reconcile will fail if the + reference cannot be resolved. 'Optional' means this reference will be + a no-op if it cannot be resolved. + enum: + - Required + - Optional + type: string + resolve: + description: |- + Resolve specifies when this reference should be resolved. The default + is 'IfNotPresent', which will attempt to resolve the reference only when + the corresponding field is not present. Use 'Always' to resolve the + reference on every reconcile. + enum: + - Always + - IfNotPresent + type: string + type: object + required: + - name + type: object + idSelector: + description: Selector for a Secret in lockbox to populate + id. + properties: + matchControllerRef: + description: |- + MatchControllerRef ensures an object with the same controller reference + as the selecting object is selected. + type: boolean + matchLabels: + additionalProperties: + type: string + description: MatchLabels ensures an object with matching + labels is selected. + type: object + policy: + description: Policies for selection. + properties: + resolution: + default: Required + description: |- + Resolution specifies whether resolution of this reference is required. + The default is 'Required', which means the reconcile will fail if the + reference cannot be resolved. 'Optional' means this reference will be + a no-op if it cannot be resolved. + enum: + - Required + - Optional + type: string + resolve: + description: |- + Resolve specifies when this reference should be resolved. The default + is 'IfNotPresent', which will attempt to resolve the reference only when + the corresponding field is not present. Use 'Always' to resolve the + reference on every reconcile. + enum: + - Always + - IfNotPresent + type: string + type: object + type: object key: description: Secret's entries key which value will be stored - in environment variable. + in environment variable type: string versionId: - description: Secret's version id. + description: Secret's version id type: string + versionIdRef: + description: Reference to a SecretVersion in lockbox to + populate versionId. + properties: + name: + description: Name of the referenced object. + type: string + policy: + description: Policies for referencing. + properties: + resolution: + default: Required + description: |- + Resolution specifies whether resolution of this reference is required. + The default is 'Required', which means the reconcile will fail if the + reference cannot be resolved. 'Optional' means this reference will be + a no-op if it cannot be resolved. + enum: + - Required + - Optional + type: string + resolve: + description: |- + Resolve specifies when this reference should be resolved. The default + is 'IfNotPresent', which will attempt to resolve the reference only when + the corresponding field is not present. Use 'Always' to resolve the + reference on every reconcile. + enum: + - Always + - IfNotPresent + type: string + type: object + required: + - name + type: object + versionIdSelector: + description: Selector for a SecretVersion in lockbox to + populate versionId. + properties: + matchControllerRef: + description: |- + MatchControllerRef ensures an object with the same controller reference + as the selecting object is selected. + type: boolean + matchLabels: + additionalProperties: + type: string + description: MatchLabels ensures an object with matching + labels is selected. + type: object + policy: + description: Policies for selection. + properties: + resolution: + default: Required + description: |- + Resolution specifies whether resolution of this reference is required. + The default is 'Required', which means the reconcile will fail if the + reference cannot be resolved. 'Optional' means this reference will be + a no-op if it cannot be resolved. + enum: + - Required + - Optional + type: string + resolve: + description: |- + Resolve specifies when this reference should be resolved. The default + is 'IfNotPresent', which will attempt to resolve the reference only when + the corresponding field is not present. Use 'Always' to resolve the + reference on every reconcile. + enum: + - Always + - IfNotPresent + type: string + type: object + type: object type: object type: array serviceAccountId: description: Service account ID for Yandex Cloud Function type: string storageMounts: - description: Storage mounts for Yandex Cloud Function. + description: (DEPRECATED, use mounts.0.object_storage instead) + Storage mounts for Yandex Cloud Function items: properties: bucket: - description: Name of the mounting bucket. + description: Name of the mounting bucket type: string mountPointName: description: Name of the mount point. The directory where the bucket is mounted will be accessible at the /function/storage/ - path. + path type: string prefix: description: Prefix within the bucket. If you leave this - field empty, the entire bucket will be mounted. + field empty, the entire bucket will be mounted type: string readOnly: - description: Mount the bucket in read-only mode. + description: Mount the bucket in read-only mode type: boolean type: object type: array tags: description: Tags for Yandex Cloud Function. Tag "$latest" isn't - returned. + returned items: type: string type: array x-kubernetes-list-type: set tmpfsSize: - description: Tmpfs size for Yandex Cloud Function. + description: Tmpfs size for Yandex Cloud Function type: number userHash: description: User-defined string for current function version. @@ -362,7 +633,7 @@ spec: properties: asyncInvocation: description: Config for asynchronous invocations of Yandex Cloud - Function. + Function items: properties: retriesCount: @@ -400,28 +671,28 @@ spec: type: array concurrency: description: The maximum number of requests processed by a function - instance at the same time. + instance at the same time type: number connectivity: description: Function version connectivity. If specified the version - will be attached to specified network. + will be attached to specified network items: properties: networkId: description: Network the version will have access to. It's essential to specify network with subnets in all availability - zones. + zones type: string type: object type: array content: description: Version deployment content for Yandex Cloud Function code. Can be only one package or content section. Either package - or content section must be specified. + or content section must be specified items: properties: zipFilename: - description: Filename to zip archive for the version. + description: Filename to zip archive for the version type: string type: object type: array @@ -528,14 +799,15 @@ spec: type: object x-kubernetes-map-type: granular logOptions: - description: Options for logging from Yandex Cloud Function. + description: Options for logging from Yandex Cloud Function items: properties: disabled: description: Is logging from function disabled type: boolean folderId: - description: Folder ID for the Yandex Cloud Function + description: Log entries are written to default log group + for specified folder type: string logGroupId: description: Log entries are written to specified log group @@ -549,25 +821,142 @@ spec: description: Memory in megabytes (aligned to 128MB) for Yandex Cloud Function type: number + mounts: + description: Mounts for Yandex Cloud Function. + items: + properties: + ephemeralDisk: + description: One of the available mount types. Disk available + during the function execution time + items: + properties: + blockSizeKb: + description: Optional block size of the ephemeral + disk in KB + type: number + sizeGb: + description: Size of the ephemeral disk in GB + type: number + type: object + type: array + mode: + description: Mount’s accessibility mode. Valid values are + ro and rw + type: string + name: + description: Yandex Cloud Function name used to define trigger + type: string + objectStorage: + description: One of the available mount types. Object storage + as a mount + items: + properties: + bucket: + description: Name of the mounting bucket + type: string + bucketRef: + description: Reference to a Bucket in storage to populate + bucket. + properties: + name: + description: Name of the referenced object. + type: string + policy: + description: Policies for referencing. + properties: + resolution: + default: Required + description: |- + Resolution specifies whether resolution of this reference is required. + The default is 'Required', which means the reconcile will fail if the + reference cannot be resolved. 'Optional' means this reference will be + a no-op if it cannot be resolved. + enum: + - Required + - Optional + type: string + resolve: + description: |- + Resolve specifies when this reference should be resolved. The default + is 'IfNotPresent', which will attempt to resolve the reference only when + the corresponding field is not present. Use 'Always' to resolve the + reference on every reconcile. + enum: + - Always + - IfNotPresent + type: string + type: object + required: + - name + type: object + bucketSelector: + description: Selector for a Bucket in storage to populate + bucket. + properties: + matchControllerRef: + description: |- + MatchControllerRef ensures an object with the same controller reference + as the selecting object is selected. + type: boolean + matchLabels: + additionalProperties: + type: string + description: MatchLabels ensures an object with + matching labels is selected. + type: object + policy: + description: Policies for selection. + properties: + resolution: + default: Required + description: |- + Resolution specifies whether resolution of this reference is required. + The default is 'Required', which means the reconcile will fail if the + reference cannot be resolved. 'Optional' means this reference will be + a no-op if it cannot be resolved. + enum: + - Required + - Optional + type: string + resolve: + description: |- + Resolve specifies when this reference should be resolved. The default + is 'IfNotPresent', which will attempt to resolve the reference only when + the corresponding field is not present. Use 'Always' to resolve the + reference on every reconcile. + enum: + - Always + - IfNotPresent + type: string + type: object + type: object + prefix: + description: Prefix within the bucket. If you leave + this field empty, the entire bucket will be mounted + type: string + type: object + type: array + type: object + type: array name: description: Yandex Cloud Function name used to define trigger type: string package: description: Version deployment package for Yandex Cloud Function code. Can be only one package or content section. Either package - or content section must be specified. + or content section must be specified items: properties: bucketName: description: Name of the bucket that stores the code for - the version. + the version type: string objectName: description: Name of the object in the bucket that stores - the code for the version. + the code for the version type: string sha256: - description: SHA256 hash of the version deployment package. + description: SHA256 hash of the version deployment package type: string type: object type: array @@ -580,53 +969,206 @@ spec: properties: environmentVariable: description: Function's environment variable in which secret's - value will be stored. + value will be stored type: string id: - description: Secret's id. + description: Secret's id type: string + idRef: + description: Reference to a Secret in lockbox to populate + id. + properties: + name: + description: Name of the referenced object. + type: string + policy: + description: Policies for referencing. + properties: + resolution: + default: Required + description: |- + Resolution specifies whether resolution of this reference is required. + The default is 'Required', which means the reconcile will fail if the + reference cannot be resolved. 'Optional' means this reference will be + a no-op if it cannot be resolved. + enum: + - Required + - Optional + type: string + resolve: + description: |- + Resolve specifies when this reference should be resolved. The default + is 'IfNotPresent', which will attempt to resolve the reference only when + the corresponding field is not present. Use 'Always' to resolve the + reference on every reconcile. + enum: + - Always + - IfNotPresent + type: string + type: object + required: + - name + type: object + idSelector: + description: Selector for a Secret in lockbox to populate + id. + properties: + matchControllerRef: + description: |- + MatchControllerRef ensures an object with the same controller reference + as the selecting object is selected. + type: boolean + matchLabels: + additionalProperties: + type: string + description: MatchLabels ensures an object with matching + labels is selected. + type: object + policy: + description: Policies for selection. + properties: + resolution: + default: Required + description: |- + Resolution specifies whether resolution of this reference is required. + The default is 'Required', which means the reconcile will fail if the + reference cannot be resolved. 'Optional' means this reference will be + a no-op if it cannot be resolved. + enum: + - Required + - Optional + type: string + resolve: + description: |- + Resolve specifies when this reference should be resolved. The default + is 'IfNotPresent', which will attempt to resolve the reference only when + the corresponding field is not present. Use 'Always' to resolve the + reference on every reconcile. + enum: + - Always + - IfNotPresent + type: string + type: object + type: object key: description: Secret's entries key which value will be stored - in environment variable. + in environment variable type: string versionId: - description: Secret's version id. + description: Secret's version id type: string + versionIdRef: + description: Reference to a SecretVersion in lockbox to + populate versionId. + properties: + name: + description: Name of the referenced object. + type: string + policy: + description: Policies for referencing. + properties: + resolution: + default: Required + description: |- + Resolution specifies whether resolution of this reference is required. + The default is 'Required', which means the reconcile will fail if the + reference cannot be resolved. 'Optional' means this reference will be + a no-op if it cannot be resolved. + enum: + - Required + - Optional + type: string + resolve: + description: |- + Resolve specifies when this reference should be resolved. The default + is 'IfNotPresent', which will attempt to resolve the reference only when + the corresponding field is not present. Use 'Always' to resolve the + reference on every reconcile. + enum: + - Always + - IfNotPresent + type: string + type: object + required: + - name + type: object + versionIdSelector: + description: Selector for a SecretVersion in lockbox to + populate versionId. + properties: + matchControllerRef: + description: |- + MatchControllerRef ensures an object with the same controller reference + as the selecting object is selected. + type: boolean + matchLabels: + additionalProperties: + type: string + description: MatchLabels ensures an object with matching + labels is selected. + type: object + policy: + description: Policies for selection. + properties: + resolution: + default: Required + description: |- + Resolution specifies whether resolution of this reference is required. + The default is 'Required', which means the reconcile will fail if the + reference cannot be resolved. 'Optional' means this reference will be + a no-op if it cannot be resolved. + enum: + - Required + - Optional + type: string + resolve: + description: |- + Resolve specifies when this reference should be resolved. The default + is 'IfNotPresent', which will attempt to resolve the reference only when + the corresponding field is not present. Use 'Always' to resolve the + reference on every reconcile. + enum: + - Always + - IfNotPresent + type: string + type: object + type: object type: object type: array serviceAccountId: description: Service account ID for Yandex Cloud Function type: string storageMounts: - description: Storage mounts for Yandex Cloud Function. + description: (DEPRECATED, use mounts.0.object_storage instead) + Storage mounts for Yandex Cloud Function items: properties: bucket: - description: Name of the mounting bucket. + description: Name of the mounting bucket type: string mountPointName: description: Name of the mount point. The directory where the bucket is mounted will be accessible at the /function/storage/ - path. + path type: string prefix: description: Prefix within the bucket. If you leave this - field empty, the entire bucket will be mounted. + field empty, the entire bucket will be mounted type: string readOnly: - description: Mount the bucket in read-only mode. + description: Mount the bucket in read-only mode type: boolean type: object type: array tags: description: Tags for Yandex Cloud Function. Tag "$latest" isn't - returned. + returned items: type: string type: array x-kubernetes-list-type: set tmpfsSize: - description: Tmpfs size for Yandex Cloud Function. + description: Tmpfs size for Yandex Cloud Function type: number userHash: description: User-defined string for current function version. @@ -829,7 +1371,7 @@ spec: properties: asyncInvocation: description: Config for asynchronous invocations of Yandex Cloud - Function. + Function items: properties: retriesCount: @@ -867,33 +1409,33 @@ spec: type: array concurrency: description: The maximum number of requests processed by a function - instance at the same time. + instance at the same time type: number connectivity: description: Function version connectivity. If specified the version - will be attached to specified network. + will be attached to specified network items: properties: networkId: description: Network the version will have access to. It's essential to specify network with subnets in all availability - zones. + zones type: string type: object type: array content: description: Version deployment content for Yandex Cloud Function code. Can be only one package or content section. Either package - or content section must be specified. + or content section must be specified items: properties: zipFilename: - description: Filename to zip archive for the version. + description: Filename to zip archive for the version type: string type: object type: array createdAt: - description: Creation timestamp of the Yandex Cloud Function. + description: Creation timestamp of the Yandex Cloud Function type: string description: description: Description of the Yandex Cloud Function @@ -915,10 +1457,10 @@ spec: description: Folder ID for the Yandex Cloud Function type: string id: - description: Secret's id. + description: Secret's id type: string imageSize: - description: Image size for Yandex Cloud Function. + description: Image size for Yandex Cloud Function type: number labels: additionalProperties: @@ -928,14 +1470,15 @@ spec: type: object x-kubernetes-map-type: granular logOptions: - description: Options for logging from Yandex Cloud Function. + description: Options for logging from Yandex Cloud Function items: properties: disabled: description: Is logging from function disabled type: boolean folderId: - description: Folder ID for the Yandex Cloud Function + description: Log entries are written to default log group + for specified folder type: string logGroupId: description: Log entries are written to specified log group @@ -945,32 +1488,70 @@ spec: type: string type: object type: array - loggroupId: - description: Loggroup ID size for Yandex Cloud Function. - type: string memory: description: Memory in megabytes (aligned to 128MB) for Yandex Cloud Function type: number + mounts: + description: Mounts for Yandex Cloud Function. + items: + properties: + ephemeralDisk: + description: One of the available mount types. Disk available + during the function execution time + items: + properties: + blockSizeKb: + description: Optional block size of the ephemeral + disk in KB + type: number + sizeGb: + description: Size of the ephemeral disk in GB + type: number + type: object + type: array + mode: + description: Mount’s accessibility mode. Valid values are + ro and rw + type: string + name: + description: Yandex Cloud Function name used to define trigger + type: string + objectStorage: + description: One of the available mount types. Object storage + as a mount + items: + properties: + bucket: + description: Name of the mounting bucket + type: string + prefix: + description: Prefix within the bucket. If you leave + this field empty, the entire bucket will be mounted + type: string + type: object + type: array + type: object + type: array name: description: Yandex Cloud Function name used to define trigger type: string package: description: Version deployment package for Yandex Cloud Function code. Can be only one package or content section. Either package - or content section must be specified. + or content section must be specified items: properties: bucketName: description: Name of the bucket that stores the code for - the version. + the version type: string objectName: description: Name of the object in the bucket that stores - the code for the version. + the code for the version type: string sha256: - description: SHA256 hash of the version deployment package. + description: SHA256 hash of the version deployment package type: string type: object type: array @@ -983,17 +1564,17 @@ spec: properties: environmentVariable: description: Function's environment variable in which secret's - value will be stored. + value will be stored type: string id: - description: Secret's id. + description: Secret's id type: string key: description: Secret's entries key which value will be stored - in environment variable. + in environment variable type: string versionId: - description: Secret's version id. + description: Secret's version id type: string type: object type: array @@ -1001,35 +1582,36 @@ spec: description: Service account ID for Yandex Cloud Function type: string storageMounts: - description: Storage mounts for Yandex Cloud Function. + description: (DEPRECATED, use mounts.0.object_storage instead) + Storage mounts for Yandex Cloud Function items: properties: bucket: - description: Name of the mounting bucket. + description: Name of the mounting bucket type: string mountPointName: description: Name of the mount point. The directory where the bucket is mounted will be accessible at the /function/storage/ - path. + path type: string prefix: description: Prefix within the bucket. If you leave this - field empty, the entire bucket will be mounted. + field empty, the entire bucket will be mounted type: string readOnly: - description: Mount the bucket in read-only mode. + description: Mount the bucket in read-only mode type: boolean type: object type: array tags: description: Tags for Yandex Cloud Function. Tag "$latest" isn't - returned. + returned items: type: string type: array x-kubernetes-list-type: set tmpfsSize: - description: Tmpfs size for Yandex Cloud Function. + description: Tmpfs size for Yandex Cloud Function type: number userHash: description: User-defined string for current function version. @@ -1037,7 +1619,7 @@ spec: Function will be updated when hash is changed. type: string version: - description: Version for Yandex Cloud Function. + description: Version for Yandex Cloud Function type: string type: object conditions: diff --git a/package/crds/ydb.yandex-cloud.upjet.crossplane.io_databasededicateds.yaml b/package/crds/ydb.yandex-cloud.upjet.crossplane.io_databasededicateds.yaml index 0a4ab66..313749d 100644 --- a/package/crds/ydb.yandex-cloud.upjet.crossplane.io_databasededicateds.yaml +++ b/package/crds/ydb.yandex-cloud.upjet.crossplane.io_databasededicateds.yaml @@ -85,9 +85,9 @@ spec: description: A description for the Yandex Database cluster. type: string folderId: - description: |- - ID of the folder that the Yandex Database cluster belongs to. - It will be deduced from provider configuration if not set explicitly. + description: ID of the folder that the Yandex Database cluster + belongs to. It will be deduced from provider configuration if + not set explicitly. type: string folderIdRef: description: Reference to a Folder in resourcemanager to populate @@ -173,15 +173,13 @@ spec: type: object x-kubernetes-map-type: granular location: - description: |- - Location for the Yandex Database cluster. - The structure is documented below. + description: Location for the Yandex Database cluster. The structure + is documented below. items: properties: region: - description: |- - Region for the Yandex Database cluster. - The structure is documented below. + description: Region for the Yandex Database cluster. The + structure is documented below. items: properties: id: @@ -276,20 +274,17 @@ spec: type: object type: object resourcePresetId: - description: |- - The Yandex Database cluster preset. - Available presets can be obtained via yc ydb resource-preset list command. + description: The Yandex Database cluster preset. Available presets + can be obtained via yc ydb resource-preset list command. type: string scalePolicy: - description: |- - Scaling policy for the Yandex Database cluster. - The structure is documented below. + description: Scaling policy for the Yandex Database cluster. The + structure is documented below. items: properties: fixedScale: - description: |- - Fixed scaling policy for the Yandex Database cluster. - The structure is documented below. + description: Fixed scaling policy for the Yandex Database + cluster. The structure is documented below. items: properties: size: @@ -303,9 +298,8 @@ spec: sleepAfter: type: number storageConfig: - description: |- - A list of storage configuration options for the Yandex Database cluster. - The structure is documented below. + description: A list of storage configuration options for the Yandex + Database cluster. The structure is documented below. items: properties: groupCount: @@ -313,9 +307,9 @@ spec: the Yandex Database cluster. type: number storageTypeId: - description: |- - Storage type ID for the Yandex Database cluster. - Available presets can be obtained via yc ydb storage-type list command. + description: Storage type ID for the Yandex Database cluster. + Available presets can be obtained via yc ydb storage-type + list command. type: string type: object type: array @@ -430,9 +424,9 @@ spec: description: A description for the Yandex Database cluster. type: string folderId: - description: |- - ID of the folder that the Yandex Database cluster belongs to. - It will be deduced from provider configuration if not set explicitly. + description: ID of the folder that the Yandex Database cluster + belongs to. It will be deduced from provider configuration if + not set explicitly. type: string folderIdRef: description: Reference to a Folder in resourcemanager to populate @@ -518,15 +512,13 @@ spec: type: object x-kubernetes-map-type: granular location: - description: |- - Location for the Yandex Database cluster. - The structure is documented below. + description: Location for the Yandex Database cluster. The structure + is documented below. items: properties: region: - description: |- - Region for the Yandex Database cluster. - The structure is documented below. + description: Region for the Yandex Database cluster. The + structure is documented below. items: properties: id: @@ -621,20 +613,17 @@ spec: type: object type: object resourcePresetId: - description: |- - The Yandex Database cluster preset. - Available presets can be obtained via yc ydb resource-preset list command. + description: The Yandex Database cluster preset. Available presets + can be obtained via yc ydb resource-preset list command. type: string scalePolicy: - description: |- - Scaling policy for the Yandex Database cluster. - The structure is documented below. + description: Scaling policy for the Yandex Database cluster. The + structure is documented below. items: properties: fixedScale: - description: |- - Fixed scaling policy for the Yandex Database cluster. - The structure is documented below. + description: Fixed scaling policy for the Yandex Database + cluster. The structure is documented below. items: properties: size: @@ -648,9 +637,8 @@ spec: sleepAfter: type: number storageConfig: - description: |- - A list of storage configuration options for the Yandex Database cluster. - The structure is documented below. + description: A list of storage configuration options for the Yandex + Database cluster. The structure is documented below. items: properties: groupCount: @@ -658,9 +646,9 @@ spec: the Yandex Database cluster. type: number storageTypeId: - description: |- - Storage type ID for the Yandex Database cluster. - Available presets can be obtained via yc ydb storage-type list command. + description: Storage type ID for the Yandex Database cluster. + Available presets can be obtained via yc ydb storage-type + list command. type: string type: object type: array @@ -947,8 +935,7 @@ spec: description: The Yandex Database cluster creation timestamp. type: string databasePath: - description: |- - Full database path of the Yandex Database cluster. + description: Full database path of the Yandex Database cluster. Useful for SDK configuration. type: string deletionProtection: @@ -959,9 +946,9 @@ spec: description: A description for the Yandex Database cluster. type: string folderId: - description: |- - ID of the folder that the Yandex Database cluster belongs to. - It will be deduced from provider configuration if not set explicitly. + description: ID of the folder that the Yandex Database cluster + belongs to. It will be deduced from provider configuration if + not set explicitly. type: string id: description: ID of the Yandex Database cluster. @@ -974,15 +961,13 @@ spec: type: object x-kubernetes-map-type: granular location: - description: |- - Location for the Yandex Database cluster. - The structure is documented below. + description: Location for the Yandex Database cluster. The structure + is documented below. items: properties: region: - description: |- - Region for the Yandex Database cluster. - The structure is documented below. + description: Region for the Yandex Database cluster. The + structure is documented below. items: properties: id: @@ -1003,20 +988,17 @@ spec: to. type: string resourcePresetId: - description: |- - The Yandex Database cluster preset. - Available presets can be obtained via yc ydb resource-preset list command. + description: The Yandex Database cluster preset. Available presets + can be obtained via yc ydb resource-preset list command. type: string scalePolicy: - description: |- - Scaling policy for the Yandex Database cluster. - The structure is documented below. + description: Scaling policy for the Yandex Database cluster. The + structure is documented below. items: properties: fixedScale: - description: |- - Fixed scaling policy for the Yandex Database cluster. - The structure is documented below. + description: Fixed scaling policy for the Yandex Database + cluster. The structure is documented below. items: properties: size: @@ -1033,9 +1015,8 @@ spec: description: Status of the Yandex Database cluster. type: string storageConfig: - description: |- - A list of storage configuration options for the Yandex Database cluster. - The structure is documented below. + description: A list of storage configuration options for the Yandex + Database cluster. The structure is documented below. items: properties: groupCount: @@ -1043,9 +1024,9 @@ spec: the Yandex Database cluster. type: number storageTypeId: - description: |- - Storage type ID for the Yandex Database cluster. - Available presets can be obtained via yc ydb storage-type list command. + description: Storage type ID for the Yandex Database cluster. + Available presets can be obtained via yc ydb storage-type + list command. type: string type: object type: array @@ -1057,14 +1038,12 @@ spec: type: array x-kubernetes-list-type: set tlsEnabled: - description: |- - Whether TLS is enabled for the Yandex Database cluster. + description: Whether TLS is enabled for the Yandex Database cluster. Useful for SDK configuration. type: boolean ydbApiEndpoint: - description: |- - API endpoint of the Yandex Database cluster. - Useful for SDK configuration. + description: API endpoint of the Yandex Database cluster. Useful + for SDK configuration. type: string ydbFullEndpoint: description: Full endpoint of the Yandex Database cluster. diff --git a/package/crds/ydb.yandex-cloud.upjet.crossplane.io_databaseiambindings.yaml b/package/crds/ydb.yandex-cloud.upjet.crossplane.io_databaseiambindings.yaml index af9b622..265b599 100644 --- a/package/crds/ydb.yandex-cloud.upjet.crossplane.io_databaseiambindings.yaml +++ b/package/crds/ydb.yandex-cloud.upjet.crossplane.io_databaseiambindings.yaml @@ -152,9 +152,8 @@ spec: type: object type: object members: - description: |- - Identities that will be granted the privilege in role. - Each entry can have one of the following values: + description: 'Identities that will be granted the privilege in + role. Each entry can have one of the following values:' items: type: string type: array @@ -335,9 +334,8 @@ spec: type: object type: object members: - description: |- - Identities that will be granted the privilege in role. - Each entry can have one of the following values: + description: 'Identities that will be granted the privilege in + role. Each entry can have one of the following values:' items: type: string type: array @@ -610,9 +608,8 @@ spec: id: type: string members: - description: |- - Identities that will be granted the privilege in role. - Each entry can have one of the following values: + description: 'Identities that will be granted the privilege in + role. Each entry can have one of the following values:' items: type: string type: array diff --git a/package/crds/ydb.yandex-cloud.upjet.crossplane.io_databaseserverlesses.yaml b/package/crds/ydb.yandex-cloud.upjet.crossplane.io_databaseserverlesses.yaml index 109c8e0..beeec91 100644 --- a/package/crds/ydb.yandex-cloud.upjet.crossplane.io_databaseserverlesses.yaml +++ b/package/crds/ydb.yandex-cloud.upjet.crossplane.io_databaseserverlesses.yaml @@ -82,9 +82,9 @@ spec: cluster. type: string folderId: - description: |- - ID of the folder that the Yandex Database serverless cluster belongs to. - It will be deduced from provider configuration if not set explicitly. + description: ID of the folder that the Yandex Database serverless + cluster belongs to. It will be deduced from provider configuration + if not set explicitly. type: string folderIdRef: description: Reference to a Folder in resourcemanager to populate @@ -213,9 +213,9 @@ spec: cluster. type: string folderId: - description: |- - ID of the folder that the Yandex Database serverless cluster belongs to. - It will be deduced from provider configuration if not set explicitly. + description: ID of the folder that the Yandex Database serverless + cluster belongs to. It will be deduced from provider configuration + if not set explicitly. type: string folderIdRef: description: Reference to a Folder in resourcemanager to populate @@ -503,9 +503,8 @@ spec: description: The Yandex Database serverless cluster creation timestamp. type: string databasePath: - description: |- - Full database path of the Yandex Database serverless cluster. - Useful for SDK configuration. + description: Full database path of the Yandex Database serverless + cluster. Useful for SDK configuration. type: string deletionProtection: description: Inhibits deletion of the database. Can be either @@ -520,9 +519,9 @@ spec: cluster. type: string folderId: - description: |- - ID of the folder that the Yandex Database serverless cluster belongs to. - It will be deduced from provider configuration if not set explicitly. + description: ID of the folder that the Yandex Database serverless + cluster belongs to. It will be deduced from provider configuration + if not set explicitly. type: string id: description: ID of the Yandex Database serverless cluster. @@ -559,13 +558,11 @@ spec: description: Status of the Yandex Database serverless cluster. type: string tlsEnabled: - description: |- - Whether TLS is enabled for the Yandex Database serverless cluster. - Useful for SDK configuration. + description: Whether TLS is enabled for the Yandex Database serverless + cluster. Useful for SDK configuration. type: boolean ydbApiEndpoint: - description: |- - API endpoint of the Yandex Database serverless cluster. + description: API endpoint of the Yandex Database serverless cluster. Useful for SDK configuration. type: string ydbFullEndpoint: diff --git a/package/crds/ydb.yandex-cloud.upjet.crossplane.io_tablechangefeeds.yaml b/package/crds/ydb.yandex-cloud.upjet.crossplane.io_tablechangefeeds.yaml index 0471ee0..4c3f2b1 100644 --- a/package/crds/ydb.yandex-cloud.upjet.crossplane.io_tablechangefeeds.yaml +++ b/package/crds/ydb.yandex-cloud.upjet.crossplane.io_tablechangefeeds.yaml @@ -81,6 +81,8 @@ spec: data from the topic. items: properties: + important: + type: boolean name: description: ': Changefeed name.' type: string @@ -140,6 +142,8 @@ spec: data from the topic. items: properties: + important: + type: boolean name: description: ': Changefeed name.' type: string @@ -371,6 +375,8 @@ spec: data from the topic. items: properties: + important: + type: boolean name: description: ': Changefeed name.' type: string diff --git a/package/crds/ydb.yandex-cloud.upjet.crossplane.io_tableindices.yaml b/package/crds/ydb.yandex-cloud.upjet.crossplane.io_tableindices.yaml index eda819d..651449e 100644 --- a/package/crds/ydb.yandex-cloud.upjet.crossplane.io_tableindices.yaml +++ b/package/crds/ydb.yandex-cloud.upjet.crossplane.io_tableindices.yaml @@ -34,7 +34,7 @@ spec: name: v1alpha1 schema: openAPIV3Schema: - description: TableIndex is the Schema for the TableIndexs API. + description: TableIndex is the Schema for the TableIndexs API. properties: apiVersion: description: |- @@ -73,22 +73,29 @@ spec: forProvider: properties: columns: + description: (List of String) items: type: string type: array connectionString: + description: (String) type: string cover: + description: (List of String) items: type: string type: array name: + description: (String) type: string tableId: + description: (String) type: string tablePath: + description: (String) type: string type: + description: (String) type: string type: object initProvider: @@ -105,22 +112,29 @@ spec: autoscaler. properties: columns: + description: (List of String) items: type: string type: array connectionString: + description: (String) type: string cover: + description: (List of String) items: type: string type: array name: + description: (String) type: string tableId: + description: (String) type: string tablePath: + description: (String) type: string type: + description: (String) type: string type: object managementPolicies: @@ -309,24 +323,32 @@ spec: atProvider: properties: columns: + description: (List of String) items: type: string type: array connectionString: + description: (String) type: string cover: + description: (List of String) items: type: string type: array id: + description: (String) The ID of this resource. type: string name: + description: (String) type: string tableId: + description: (String) type: string tablePath: + description: (String) type: string type: + description: (String) type: string type: object conditions: diff --git a/package/crds/ydb.yandex-cloud.upjet.crossplane.io_tables.yaml b/package/crds/ydb.yandex-cloud.upjet.crossplane.io_tables.yaml index 4e01215..0506b16 100644 --- a/package/crds/ydb.yandex-cloud.upjet.crossplane.io_tables.yaml +++ b/package/crds/ydb.yandex-cloud.upjet.crossplane.io_tables.yaml @@ -80,9 +80,8 @@ spec: type: object x-kubernetes-map-type: granular column: - description: |- - A list of column configuration options. - The structure is documented below. + description: A list of column configuration options. The structure + is documented below. items: properties: family: @@ -92,8 +91,8 @@ spec: description: Column name type: string notNull: - description: "A column cannot have the NULL data type. (\tDefault: - false\t)" + description: 'A column cannot have the NULL data type. ( + Default: false )' type: boolean type: description: Column data type. YQL data types are used. @@ -180,9 +179,8 @@ spec: type: object type: object family: - description: |- - A list of column group configuration options. - The structure is documented below. + description: A list of column group configuration options. The + structure is documented below. items: properties: compression: @@ -202,9 +200,8 @@ spec: description: Use the Bloom filter for the primary key type: boolean partitioningSettings: - description: |- - Table partiotioning settings - The structure is documented below. + description: Table partiotioning settings The structure is documented + below. items: properties: autoPartitioningByLoad: @@ -242,8 +239,7 @@ spec: description: Read replication settings type: string ttl: - description: "ttl\t\tTTL settings\nThe structure is documented - below." + description: ttl TTL settings The structure is documented below. items: properties: columnName: @@ -277,9 +273,8 @@ spec: type: object x-kubernetes-map-type: granular column: - description: |- - A list of column configuration options. - The structure is documented below. + description: A list of column configuration options. The structure + is documented below. items: properties: family: @@ -289,8 +284,8 @@ spec: description: Column name type: string notNull: - description: "A column cannot have the NULL data type. (\tDefault: - false\t)" + description: 'A column cannot have the NULL data type. ( + Default: false )' type: boolean type: description: Column data type. YQL data types are used. @@ -377,9 +372,8 @@ spec: type: object type: object family: - description: |- - A list of column group configuration options. - The structure is documented below. + description: A list of column group configuration options. The + structure is documented below. items: properties: compression: @@ -399,9 +393,8 @@ spec: description: Use the Bloom filter for the primary key type: boolean partitioningSettings: - description: |- - Table partiotioning settings - The structure is documented below. + description: Table partiotioning settings The structure is documented + below. items: properties: autoPartitioningByLoad: @@ -439,8 +432,7 @@ spec: description: Read replication settings type: string ttl: - description: "ttl\t\tTTL settings\nThe structure is documented - below." + description: ttl TTL settings The structure is documented below. items: properties: columnName: @@ -646,9 +638,8 @@ spec: type: object x-kubernetes-map-type: granular column: - description: |- - A list of column configuration options. - The structure is documented below. + description: A list of column configuration options. The structure + is documented below. items: properties: family: @@ -658,8 +649,8 @@ spec: description: Column name type: string notNull: - description: "A column cannot have the NULL data type. (\tDefault: - false\t)" + description: 'A column cannot have the NULL data type. ( + Default: false )' type: boolean type: description: Column data type. YQL data types are used. @@ -670,9 +661,8 @@ spec: description: Connection string for database. type: string family: - description: |- - A list of column group configuration options. - The structure is documented below. + description: A list of column group configuration options. The + structure is documented below. items: properties: compression: @@ -694,9 +684,8 @@ spec: description: Use the Bloom filter for the primary key type: boolean partitioningSettings: - description: |- - Table partiotioning settings - The structure is documented below. + description: Table partiotioning settings The structure is documented + below. items: properties: autoPartitioningByLoad: @@ -734,8 +723,7 @@ spec: description: Read replication settings type: string ttl: - description: "ttl\t\tTTL settings\nThe structure is documented - below." + description: ttl TTL settings The structure is documented below. items: properties: columnName: diff --git a/package/crds/ydb.yandex-cloud.upjet.crossplane.io_topics.yaml b/package/crds/ydb.yandex-cloud.upjet.crossplane.io_topics.yaml index db687f3..3ea1eef 100644 --- a/package/crds/ydb.yandex-cloud.upjet.crossplane.io_topics.yaml +++ b/package/crds/ydb.yandex-cloud.upjet.crossplane.io_topics.yaml @@ -79,6 +79,9 @@ spec: items: properties: important: + description: 'Defines an important consumer. No data will + be deleted from the topic until all the important consumers + read them. Value type: boolean, default value: false.' type: boolean name: description: 'Topic name. Type: string, required. Default @@ -102,15 +105,99 @@ spec: description: 'YDB database endpoint. Types: string, required. Default value: "".' type: string + databaseEndpointRef: + description: Reference to a DatabaseServerless in ydb to populate + databaseEndpoint. + properties: + name: + description: Name of the referenced object. + type: string + policy: + description: Policies for referencing. + properties: + resolution: + default: Required + description: |- + Resolution specifies whether resolution of this reference is required. + The default is 'Required', which means the reconcile will fail if the + reference cannot be resolved. 'Optional' means this reference will be + a no-op if it cannot be resolved. + enum: + - Required + - Optional + type: string + resolve: + description: |- + Resolve specifies when this reference should be resolved. The default + is 'IfNotPresent', which will attempt to resolve the reference only when + the corresponding field is not present. Use 'Always' to resolve the + reference on every reconcile. + enum: + - Always + - IfNotPresent + type: string + type: object + required: + - name + type: object + databaseEndpointSelector: + description: Selector for a DatabaseServerless in ydb to populate + databaseEndpoint. + properties: + matchControllerRef: + description: |- + MatchControllerRef ensures an object with the same controller reference + as the selecting object is selected. + type: boolean + matchLabels: + additionalProperties: + type: string + description: MatchLabels ensures an object with matching labels + is selected. + type: object + policy: + description: Policies for selection. + properties: + resolution: + default: Required + description: |- + Resolution specifies whether resolution of this reference is required. + The default is 'Required', which means the reconcile will fail if the + reference cannot be resolved. 'Optional' means this reference will be + a no-op if it cannot be resolved. + enum: + - Required + - Optional + type: string + resolve: + description: |- + Resolve specifies when this reference should be resolved. The default + is 'IfNotPresent', which will attempt to resolve the reference only when + the corresponding field is not present. Use 'Always' to resolve the + reference on every reconcile. + enum: + - Always + - IfNotPresent + type: string + type: object + type: object description: type: string meteringMode: + description: 'Resource metering mode (reserved_capacity - based + on the allocated resources or request_units - based on actual + usage). This option applies to topics in serverless databases. + Value type: String.' type: string name: description: 'Topic name. Type: string, required. Default value: "".' type: string partitionWriteSpeedKbps: + description: 'Maximum allowed write speed per partition. If a + write speed for a given partition exceeds this value, the write + speed will be capped. Value type: integer, default value: 1024 + (1MB).' type: number partitionsCount: description: 'Number of partitions. Types: integer, optional. @@ -147,6 +234,9 @@ spec: items: properties: important: + description: 'Defines an important consumer. No data will + be deleted from the topic until all the important consumers + read them. Value type: boolean, default value: false.' type: boolean name: description: 'Topic name. Type: string, required. Default @@ -170,15 +260,99 @@ spec: description: 'YDB database endpoint. Types: string, required. Default value: "".' type: string + databaseEndpointRef: + description: Reference to a DatabaseServerless in ydb to populate + databaseEndpoint. + properties: + name: + description: Name of the referenced object. + type: string + policy: + description: Policies for referencing. + properties: + resolution: + default: Required + description: |- + Resolution specifies whether resolution of this reference is required. + The default is 'Required', which means the reconcile will fail if the + reference cannot be resolved. 'Optional' means this reference will be + a no-op if it cannot be resolved. + enum: + - Required + - Optional + type: string + resolve: + description: |- + Resolve specifies when this reference should be resolved. The default + is 'IfNotPresent', which will attempt to resolve the reference only when + the corresponding field is not present. Use 'Always' to resolve the + reference on every reconcile. + enum: + - Always + - IfNotPresent + type: string + type: object + required: + - name + type: object + databaseEndpointSelector: + description: Selector for a DatabaseServerless in ydb to populate + databaseEndpoint. + properties: + matchControllerRef: + description: |- + MatchControllerRef ensures an object with the same controller reference + as the selecting object is selected. + type: boolean + matchLabels: + additionalProperties: + type: string + description: MatchLabels ensures an object with matching labels + is selected. + type: object + policy: + description: Policies for selection. + properties: + resolution: + default: Required + description: |- + Resolution specifies whether resolution of this reference is required. + The default is 'Required', which means the reconcile will fail if the + reference cannot be resolved. 'Optional' means this reference will be + a no-op if it cannot be resolved. + enum: + - Required + - Optional + type: string + resolve: + description: |- + Resolve specifies when this reference should be resolved. The default + is 'IfNotPresent', which will attempt to resolve the reference only when + the corresponding field is not present. Use 'Always' to resolve the + reference on every reconcile. + enum: + - Always + - IfNotPresent + type: string + type: object + type: object description: type: string meteringMode: + description: 'Resource metering mode (reserved_capacity - based + on the allocated resources or request_units - based on actual + usage). This option applies to topics in serverless databases. + Value type: String.' type: string name: description: 'Topic name. Type: string, required. Default value: "".' type: string partitionWriteSpeedKbps: + description: 'Maximum allowed write speed per partition. If a + write speed for a given partition exceeds this value, the write + speed will be capped. Value type: integer, default value: 1024 + (1MB).' type: number partitionsCount: description: 'Number of partitions. Types: integer, optional. @@ -364,10 +538,6 @@ spec: - forProvider type: object x-kubernetes-validations: - - message: spec.forProvider.databaseEndpoint is a required parameter - rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies - || ''Update'' in self.managementPolicies) || has(self.forProvider.databaseEndpoint) - || (has(self.initProvider) && has(self.initProvider.databaseEndpoint))' - message: spec.forProvider.name is a required parameter rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies || ''Update'' in self.managementPolicies) || has(self.forProvider.name) @@ -383,6 +553,9 @@ spec: items: properties: important: + description: 'Defines an important consumer. No data will + be deleted from the topic until all the important consumers + read them. Value type: boolean, default value: false.' type: boolean name: description: 'Topic name. Type: string, required. Default @@ -411,12 +584,20 @@ spec: id: type: string meteringMode: + description: 'Resource metering mode (reserved_capacity - based + on the allocated resources or request_units - based on actual + usage). This option applies to topics in serverless databases. + Value type: String.' type: string name: description: 'Topic name. Type: string, required. Default value: "".' type: string partitionWriteSpeedKbps: + description: 'Maximum allowed write speed per partition. If a + write speed for a given partition exceeds this value, the write + speed will be capped. Value type: integer, default value: 1024 + (1MB).' type: number partitionsCount: description: 'Number of partitions. Types: integer, optional.