servicemesh_cisco_com_v1alpha1

package
v0.0.0-...-0c7cfb0 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Nov 23, 2024 License: 0BSD Imports: 13 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func NewServicemeshCiscoComIstioControlPlaneV1Alpha1Manifest

func NewServicemeshCiscoComIstioControlPlaneV1Alpha1Manifest() datasource.DataSource

func NewServicemeshCiscoComIstioMeshGatewayV1Alpha1Manifest

func NewServicemeshCiscoComIstioMeshGatewayV1Alpha1Manifest() datasource.DataSource

func NewServicemeshCiscoComIstioMeshV1Alpha1Manifest

func NewServicemeshCiscoComIstioMeshV1Alpha1Manifest() datasource.DataSource

func NewServicemeshCiscoComPeerIstioControlPlaneV1Alpha1Manifest

func NewServicemeshCiscoComPeerIstioControlPlaneV1Alpha1Manifest() datasource.DataSource

Types

type ServicemeshCiscoComIstioControlPlaneV1Alpha1Manifest

type ServicemeshCiscoComIstioControlPlaneV1Alpha1Manifest struct{}

func (*ServicemeshCiscoComIstioControlPlaneV1Alpha1Manifest) Metadata

func (*ServicemeshCiscoComIstioControlPlaneV1Alpha1Manifest) Read

func (*ServicemeshCiscoComIstioControlPlaneV1Alpha1Manifest) Schema

type ServicemeshCiscoComIstioControlPlaneV1Alpha1ManifestData

type ServicemeshCiscoComIstioControlPlaneV1Alpha1ManifestData struct {
	YAML types.String `tfsdk:"yaml" json:"-"`

	ApiVersion *string `tfsdk:"-" json:"apiVersion"`
	Kind       *string `tfsdk:"-" json:"kind"`

	Metadata struct {
		Name        string            `tfsdk:"name" json:"name"`
		Namespace   string            `tfsdk:"namespace" json:"namespace"`
		Labels      map[string]string `tfsdk:"labels" json:"labels,omitempty"`
		Annotations map[string]string `tfsdk:"annotations" json:"annotations,omitempty"`
	} `tfsdk:"metadata" json:"metadata"`

	Spec *struct {
		CaAddress                   *string `tfsdk:"ca_address" json:"caAddress,omitempty"`
		CaProvider                  *string `tfsdk:"ca_provider" json:"caProvider,omitempty"`
		ClusterID                   *string `tfsdk:"cluster_id" json:"clusterID,omitempty"`
		ContainerImageConfiguration *struct {
			Hub              *string `tfsdk:"hub" json:"hub,omitempty"`
			ImagePullPolicy  *string `tfsdk:"image_pull_policy" json:"imagePullPolicy,omitempty"`
			ImagePullSecrets *[]struct {
				Name *string `tfsdk:"name" json:"name,omitempty"`
			} `tfsdk:"image_pull_secrets" json:"imagePullSecrets,omitempty"`
			Tag *string `tfsdk:"tag" json:"tag,omitempty"`
		} `tfsdk:"container_image_configuration" json:"containerImageConfiguration,omitempty"`
		Distribution  *string `tfsdk:"distribution" json:"distribution,omitempty"`
		HttpProxyEnvs *struct {
			HttpProxy  *string `tfsdk:"http_proxy" json:"httpProxy,omitempty"`
			HttpsProxy *string `tfsdk:"https_proxy" json:"httpsProxy,omitempty"`
			NoProxy    *string `tfsdk:"no_proxy" json:"noProxy,omitempty"`
		} `tfsdk:"http_proxy_envs" json:"httpProxyEnvs,omitempty"`
		Istiod *struct {
			CertProvider *string `tfsdk:"cert_provider" json:"certProvider,omitempty"`
			Deployment   *struct {
				Affinity *struct {
					NodeAffinity *struct {
						PreferredDuringSchedulingIgnoredDuringExecution *[]struct {
							Preference *struct {
								MatchExpressions *[]struct {
									Key      *string   `tfsdk:"key" json:"key,omitempty"`
									Operator *string   `tfsdk:"operator" json:"operator,omitempty"`
									Values   *[]string `tfsdk:"values" json:"values,omitempty"`
								} `tfsdk:"match_expressions" json:"matchExpressions,omitempty"`
								MatchFields *[]struct {
									Key      *string   `tfsdk:"key" json:"key,omitempty"`
									Operator *string   `tfsdk:"operator" json:"operator,omitempty"`
									Values   *[]string `tfsdk:"values" json:"values,omitempty"`
								} `tfsdk:"match_fields" json:"matchFields,omitempty"`
							} `tfsdk:"preference" json:"preference,omitempty"`
							Weight *int64 `tfsdk:"weight" json:"weight,omitempty"`
						} `tfsdk:"preferred_during_scheduling_ignored_during_execution" json:"preferredDuringSchedulingIgnoredDuringExecution,omitempty"`
						RequiredDuringSchedulingIgnoredDuringExecution *struct {
							NodeSelectorTerms *[]struct {
								MatchExpressions *[]struct {
									Key      *string   `tfsdk:"key" json:"key,omitempty"`
									Operator *string   `tfsdk:"operator" json:"operator,omitempty"`
									Values   *[]string `tfsdk:"values" json:"values,omitempty"`
								} `tfsdk:"match_expressions" json:"matchExpressions,omitempty"`
								MatchFields *[]struct {
									Key      *string   `tfsdk:"key" json:"key,omitempty"`
									Operator *string   `tfsdk:"operator" json:"operator,omitempty"`
									Values   *[]string `tfsdk:"values" json:"values,omitempty"`
								} `tfsdk:"match_fields" json:"matchFields,omitempty"`
							} `tfsdk:"node_selector_terms" json:"nodeSelectorTerms,omitempty"`
						} `tfsdk:"required_during_scheduling_ignored_during_execution" json:"requiredDuringSchedulingIgnoredDuringExecution,omitempty"`
					} `tfsdk:"node_affinity" json:"nodeAffinity,omitempty"`
					PodAffinity *struct {
						PreferredDuringSchedulingIgnoredDuringExecution *[]struct {
							PodAffinityTerm *struct {
								LabelSelector *struct {
									MatchExpressions *[]struct {
										Key      *string   `tfsdk:"key" json:"key,omitempty"`
										Operator *string   `tfsdk:"operator" json:"operator,omitempty"`
										Values   *[]string `tfsdk:"values" json:"values,omitempty"`
									} `tfsdk:"match_expressions" json:"matchExpressions,omitempty"`
									MatchLabels *map[string]string `tfsdk:"match_labels" json:"matchLabels,omitempty"`
								} `tfsdk:"label_selector" json:"labelSelector,omitempty"`
								NamespaceSelector *struct {
									MatchExpressions *[]struct {
										Key      *string   `tfsdk:"key" json:"key,omitempty"`
										Operator *string   `tfsdk:"operator" json:"operator,omitempty"`
										Values   *[]string `tfsdk:"values" json:"values,omitempty"`
									} `tfsdk:"match_expressions" json:"matchExpressions,omitempty"`
									MatchLabels *map[string]string `tfsdk:"match_labels" json:"matchLabels,omitempty"`
								} `tfsdk:"namespace_selector" json:"namespaceSelector,omitempty"`
								Namespaces  *[]string `tfsdk:"namespaces" json:"namespaces,omitempty"`
								TopologyKey *string   `tfsdk:"topology_key" json:"topologyKey,omitempty"`
							} `tfsdk:"pod_affinity_term" json:"podAffinityTerm,omitempty"`
							Weight *int64 `tfsdk:"weight" json:"weight,omitempty"`
						} `tfsdk:"preferred_during_scheduling_ignored_during_execution" json:"preferredDuringSchedulingIgnoredDuringExecution,omitempty"`
						RequiredDuringSchedulingIgnoredDuringExecution *[]struct {
							LabelSelector *struct {
								MatchExpressions *[]struct {
									Key      *string   `tfsdk:"key" json:"key,omitempty"`
									Operator *string   `tfsdk:"operator" json:"operator,omitempty"`
									Values   *[]string `tfsdk:"values" json:"values,omitempty"`
								} `tfsdk:"match_expressions" json:"matchExpressions,omitempty"`
								MatchLabels *map[string]string `tfsdk:"match_labels" json:"matchLabels,omitempty"`
							} `tfsdk:"label_selector" json:"labelSelector,omitempty"`
							NamespaceSelector *struct {
								MatchExpressions *[]struct {
									Key      *string   `tfsdk:"key" json:"key,omitempty"`
									Operator *string   `tfsdk:"operator" json:"operator,omitempty"`
									Values   *[]string `tfsdk:"values" json:"values,omitempty"`
								} `tfsdk:"match_expressions" json:"matchExpressions,omitempty"`
								MatchLabels *map[string]string `tfsdk:"match_labels" json:"matchLabels,omitempty"`
							} `tfsdk:"namespace_selector" json:"namespaceSelector,omitempty"`
							Namespaces  *[]string `tfsdk:"namespaces" json:"namespaces,omitempty"`
							TopologyKey *string   `tfsdk:"topology_key" json:"topologyKey,omitempty"`
						} `tfsdk:"required_during_scheduling_ignored_during_execution" json:"requiredDuringSchedulingIgnoredDuringExecution,omitempty"`
					} `tfsdk:"pod_affinity" json:"podAffinity,omitempty"`
					PodAntiAffinity *struct {
						PreferredDuringSchedulingIgnoredDuringExecution *[]struct {
							PodAffinityTerm *struct {
								LabelSelector *struct {
									MatchExpressions *[]struct {
										Key      *string   `tfsdk:"key" json:"key,omitempty"`
										Operator *string   `tfsdk:"operator" json:"operator,omitempty"`
										Values   *[]string `tfsdk:"values" json:"values,omitempty"`
									} `tfsdk:"match_expressions" json:"matchExpressions,omitempty"`
									MatchLabels *map[string]string `tfsdk:"match_labels" json:"matchLabels,omitempty"`
								} `tfsdk:"label_selector" json:"labelSelector,omitempty"`
								NamespaceSelector *struct {
									MatchExpressions *[]struct {
										Key      *string   `tfsdk:"key" json:"key,omitempty"`
										Operator *string   `tfsdk:"operator" json:"operator,omitempty"`
										Values   *[]string `tfsdk:"values" json:"values,omitempty"`
									} `tfsdk:"match_expressions" json:"matchExpressions,omitempty"`
									MatchLabels *map[string]string `tfsdk:"match_labels" json:"matchLabels,omitempty"`
								} `tfsdk:"namespace_selector" json:"namespaceSelector,omitempty"`
								Namespaces  *[]string `tfsdk:"namespaces" json:"namespaces,omitempty"`
								TopologyKey *string   `tfsdk:"topology_key" json:"topologyKey,omitempty"`
							} `tfsdk:"pod_affinity_term" json:"podAffinityTerm,omitempty"`
							Weight *int64 `tfsdk:"weight" json:"weight,omitempty"`
						} `tfsdk:"preferred_during_scheduling_ignored_during_execution" json:"preferredDuringSchedulingIgnoredDuringExecution,omitempty"`
						RequiredDuringSchedulingIgnoredDuringExecution *[]struct {
							LabelSelector *struct {
								MatchExpressions *[]struct {
									Key      *string   `tfsdk:"key" json:"key,omitempty"`
									Operator *string   `tfsdk:"operator" json:"operator,omitempty"`
									Values   *[]string `tfsdk:"values" json:"values,omitempty"`
								} `tfsdk:"match_expressions" json:"matchExpressions,omitempty"`
								MatchLabels *map[string]string `tfsdk:"match_labels" json:"matchLabels,omitempty"`
							} `tfsdk:"label_selector" json:"labelSelector,omitempty"`
							NamespaceSelector *struct {
								MatchExpressions *[]struct {
									Key      *string   `tfsdk:"key" json:"key,omitempty"`
									Operator *string   `tfsdk:"operator" json:"operator,omitempty"`
									Values   *[]string `tfsdk:"values" json:"values,omitempty"`
								} `tfsdk:"match_expressions" json:"matchExpressions,omitempty"`
								MatchLabels *map[string]string `tfsdk:"match_labels" json:"matchLabels,omitempty"`
							} `tfsdk:"namespace_selector" json:"namespaceSelector,omitempty"`
							Namespaces  *[]string `tfsdk:"namespaces" json:"namespaces,omitempty"`
							TopologyKey *string   `tfsdk:"topology_key" json:"topologyKey,omitempty"`
						} `tfsdk:"required_during_scheduling_ignored_during_execution" json:"requiredDuringSchedulingIgnoredDuringExecution,omitempty"`
					} `tfsdk:"pod_anti_affinity" json:"podAntiAffinity,omitempty"`
				} `tfsdk:"affinity" json:"affinity,omitempty"`
				DeploymentStrategy *struct {
					RollingUpdate *struct {
						MaxSurge       *string `tfsdk:"max_surge" json:"maxSurge,omitempty"`
						MaxUnavailable *string `tfsdk:"max_unavailable" json:"maxUnavailable,omitempty"`
					} `tfsdk:"rolling_update" json:"rollingUpdate,omitempty"`
					Type *string `tfsdk:"type" json:"type,omitempty"`
				} `tfsdk:"deployment_strategy" json:"deploymentStrategy,omitempty"`
				Env *[]struct {
					Name      *string `tfsdk:"name" json:"name,omitempty"`
					Value     *string `tfsdk:"value" json:"value,omitempty"`
					ValueFrom *struct {
						ConfigMapKeyRef *struct {
							Key                  *string `tfsdk:"key" json:"key,omitempty"`
							LocalObjectReference *struct {
								Name *string `tfsdk:"name" json:"name,omitempty"`
							} `tfsdk:"local_object_reference" json:"localObjectReference,omitempty"`
							Optional *bool `tfsdk:"optional" json:"optional,omitempty"`
						} `tfsdk:"config_map_key_ref" json:"configMapKeyRef,omitempty"`
						FieldRef *struct {
							ApiVersion *string `tfsdk:"api_version" json:"apiVersion,omitempty"`
							FieldPath  *string `tfsdk:"field_path" json:"fieldPath,omitempty"`
						} `tfsdk:"field_ref" json:"fieldRef,omitempty"`
						ResourceFieldRef *struct {
							ContainerName *string `tfsdk:"container_name" json:"containerName,omitempty"`
							Divisor       *string `tfsdk:"divisor" json:"divisor,omitempty"`
							Resource      *string `tfsdk:"resource" json:"resource,omitempty"`
						} `tfsdk:"resource_field_ref" json:"resourceFieldRef,omitempty"`
						SecretKeyRef *struct {
							Key                  *string `tfsdk:"key" json:"key,omitempty"`
							LocalObjectReference *struct {
								Name *string `tfsdk:"name" json:"name,omitempty"`
							} `tfsdk:"local_object_reference" json:"localObjectReference,omitempty"`
							Optional *bool `tfsdk:"optional" json:"optional,omitempty"`
						} `tfsdk:"secret_key_ref" json:"secretKeyRef,omitempty"`
					} `tfsdk:"value_from" json:"valueFrom,omitempty"`
				} `tfsdk:"env" json:"env,omitempty"`
				Image            *string `tfsdk:"image" json:"image,omitempty"`
				ImagePullPolicy  *string `tfsdk:"image_pull_policy" json:"imagePullPolicy,omitempty"`
				ImagePullSecrets *[]struct {
					Name *string `tfsdk:"name" json:"name,omitempty"`
				} `tfsdk:"image_pull_secrets" json:"imagePullSecrets,omitempty"`
				LivenessProbe *struct {
					Exec *struct {
						Command *[]string `tfsdk:"command" json:"command,omitempty"`
					} `tfsdk:"exec" json:"exec,omitempty"`
					FailureThreshold *int64 `tfsdk:"failure_threshold" json:"failureThreshold,omitempty"`
					Grpc             *struct {
						Port    *int64  `tfsdk:"port" json:"port,omitempty"`
						Service *string `tfsdk:"service" json:"service,omitempty"`
					} `tfsdk:"grpc" json:"grpc,omitempty"`
					HttpGet *struct {
						Host        *string `tfsdk:"host" json:"host,omitempty"`
						HttpHeaders *[]struct {
							Name  *string `tfsdk:"name" json:"name,omitempty"`
							Value *string `tfsdk:"value" json:"value,omitempty"`
						} `tfsdk:"http_headers" json:"httpHeaders,omitempty"`
						Path   *string `tfsdk:"path" json:"path,omitempty"`
						Port   *string `tfsdk:"port" json:"port,omitempty"`
						Scheme *string `tfsdk:"scheme" json:"scheme,omitempty"`
					} `tfsdk:"http_get" json:"httpGet,omitempty"`
					InitialDelaySeconds *int64 `tfsdk:"initial_delay_seconds" json:"initialDelaySeconds,omitempty"`
					PeriodSeconds       *int64 `tfsdk:"period_seconds" json:"periodSeconds,omitempty"`
					SuccessThreshold    *int64 `tfsdk:"success_threshold" json:"successThreshold,omitempty"`
					TcpSocket           *struct {
						Host *string `tfsdk:"host" json:"host,omitempty"`
						Port *string `tfsdk:"port" json:"port,omitempty"`
					} `tfsdk:"tcp_socket" json:"tcpSocket,omitempty"`
					TerminationGracePeriodSeconds *int64 `tfsdk:"termination_grace_period_seconds" json:"terminationGracePeriodSeconds,omitempty"`
					TimeoutSeconds                *int64 `tfsdk:"timeout_seconds" json:"timeoutSeconds,omitempty"`
				} `tfsdk:"liveness_probe" json:"livenessProbe,omitempty"`
				Metadata *struct {
					Annotations *map[string]string `tfsdk:"annotations" json:"annotations,omitempty"`
					Labels      *map[string]string `tfsdk:"labels" json:"labels,omitempty"`
				} `tfsdk:"metadata" json:"metadata,omitempty"`
				NodeSelector        *map[string]string `tfsdk:"node_selector" json:"nodeSelector,omitempty"`
				PodDisruptionBudget *struct {
					MaxUnavailable *string `tfsdk:"max_unavailable" json:"maxUnavailable,omitempty"`
					MinAvailable   *string `tfsdk:"min_available" json:"minAvailable,omitempty"`
				} `tfsdk:"pod_disruption_budget" json:"podDisruptionBudget,omitempty"`
				PodMetadata *struct {
					Annotations *map[string]string `tfsdk:"annotations" json:"annotations,omitempty"`
					Labels      *map[string]string `tfsdk:"labels" json:"labels,omitempty"`
				} `tfsdk:"pod_metadata" json:"podMetadata,omitempty"`
				PodSecurityContext *struct {
					FsGroup             *int64  `tfsdk:"fs_group" json:"fsGroup,omitempty"`
					FsGroupChangePolicy *string `tfsdk:"fs_group_change_policy" json:"fsGroupChangePolicy,omitempty"`
					RunAsGroup          *int64  `tfsdk:"run_as_group" json:"runAsGroup,omitempty"`
					RunAsNonRoot        *bool   `tfsdk:"run_as_non_root" json:"runAsNonRoot,omitempty"`
					RunAsUser           *int64  `tfsdk:"run_as_user" json:"runAsUser,omitempty"`
					SeLinuxOptions      *struct {
						Level *string `tfsdk:"level" json:"level,omitempty"`
						Role  *string `tfsdk:"role" json:"role,omitempty"`
						Type  *string `tfsdk:"type" json:"type,omitempty"`
						User  *string `tfsdk:"user" json:"user,omitempty"`
					} `tfsdk:"se_linux_options" json:"seLinuxOptions,omitempty"`
					SeccompProfile *struct {
						LocalhostProfile *string `tfsdk:"localhost_profile" json:"localhostProfile,omitempty"`
						Type             *string `tfsdk:"type" json:"type,omitempty"`
					} `tfsdk:"seccomp_profile" json:"seccompProfile,omitempty"`
					SupplementalGroups *[]string `tfsdk:"supplemental_groups" json:"supplementalGroups,omitempty"`
					Sysctls            *[]struct {
						Name  *string `tfsdk:"name" json:"name,omitempty"`
						Value *string `tfsdk:"value" json:"value,omitempty"`
					} `tfsdk:"sysctls" json:"sysctls,omitempty"`
					WindowsOptions *struct {
						GmsaCredentialSpec     *string `tfsdk:"gmsa_credential_spec" json:"gmsaCredentialSpec,omitempty"`
						GmsaCredentialSpecName *string `tfsdk:"gmsa_credential_spec_name" json:"gmsaCredentialSpecName,omitempty"`
						HostProcess            *bool   `tfsdk:"host_process" json:"hostProcess,omitempty"`
						RunAsUserName          *string `tfsdk:"run_as_user_name" json:"runAsUserName,omitempty"`
					} `tfsdk:"windows_options" json:"windowsOptions,omitempty"`
				} `tfsdk:"pod_security_context" json:"podSecurityContext,omitempty"`
				PriorityClassName *string `tfsdk:"priority_class_name" json:"priorityClassName,omitempty"`
				ReadinessProbe    *struct {
					Exec *struct {
						Command *[]string `tfsdk:"command" json:"command,omitempty"`
					} `tfsdk:"exec" json:"exec,omitempty"`
					FailureThreshold *int64 `tfsdk:"failure_threshold" json:"failureThreshold,omitempty"`
					Grpc             *struct {
						Port    *int64  `tfsdk:"port" json:"port,omitempty"`
						Service *string `tfsdk:"service" json:"service,omitempty"`
					} `tfsdk:"grpc" json:"grpc,omitempty"`
					HttpGet *struct {
						Host        *string `tfsdk:"host" json:"host,omitempty"`
						HttpHeaders *[]struct {
							Name  *string `tfsdk:"name" json:"name,omitempty"`
							Value *string `tfsdk:"value" json:"value,omitempty"`
						} `tfsdk:"http_headers" json:"httpHeaders,omitempty"`
						Path   *string `tfsdk:"path" json:"path,omitempty"`
						Port   *string `tfsdk:"port" json:"port,omitempty"`
						Scheme *string `tfsdk:"scheme" json:"scheme,omitempty"`
					} `tfsdk:"http_get" json:"httpGet,omitempty"`
					InitialDelaySeconds *int64 `tfsdk:"initial_delay_seconds" json:"initialDelaySeconds,omitempty"`
					PeriodSeconds       *int64 `tfsdk:"period_seconds" json:"periodSeconds,omitempty"`
					SuccessThreshold    *int64 `tfsdk:"success_threshold" json:"successThreshold,omitempty"`
					TcpSocket           *struct {
						Host *string `tfsdk:"host" json:"host,omitempty"`
						Port *string `tfsdk:"port" json:"port,omitempty"`
					} `tfsdk:"tcp_socket" json:"tcpSocket,omitempty"`
					TerminationGracePeriodSeconds *int64 `tfsdk:"termination_grace_period_seconds" json:"terminationGracePeriodSeconds,omitempty"`
					TimeoutSeconds                *int64 `tfsdk:"timeout_seconds" json:"timeoutSeconds,omitempty"`
				} `tfsdk:"readiness_probe" json:"readinessProbe,omitempty"`
				Replicas *struct {
					Count                          *int64 `tfsdk:"count" json:"count,omitempty"`
					Max                            *int64 `tfsdk:"max" json:"max,omitempty"`
					Min                            *int64 `tfsdk:"min" json:"min,omitempty"`
					TargetCPUUtilizationPercentage *int64 `tfsdk:"target_cpu_utilization_percentage" json:"targetCPUUtilizationPercentage,omitempty"`
				} `tfsdk:"replicas" json:"replicas,omitempty"`
				Resources *struct {
					Limits   *map[string]string `tfsdk:"limits" json:"limits,omitempty"`
					Requests *map[string]string `tfsdk:"requests" json:"requests,omitempty"`
				} `tfsdk:"resources" json:"resources,omitempty"`
				SecurityContext *struct {
					AllowPrivilegeEscalation *bool `tfsdk:"allow_privilege_escalation" json:"allowPrivilegeEscalation,omitempty"`
					Capabilities             *struct {
						Add  *[]string `tfsdk:"add" json:"add,omitempty"`
						Drop *[]string `tfsdk:"drop" json:"drop,omitempty"`
					} `tfsdk:"capabilities" json:"capabilities,omitempty"`
					Privileged             *bool   `tfsdk:"privileged" json:"privileged,omitempty"`
					ProcMount              *string `tfsdk:"proc_mount" json:"procMount,omitempty"`
					ReadOnlyRootFilesystem *bool   `tfsdk:"read_only_root_filesystem" json:"readOnlyRootFilesystem,omitempty"`
					RunAsGroup             *int64  `tfsdk:"run_as_group" json:"runAsGroup,omitempty"`
					RunAsNonRoot           *bool   `tfsdk:"run_as_non_root" json:"runAsNonRoot,omitempty"`
					RunAsUser              *int64  `tfsdk:"run_as_user" json:"runAsUser,omitempty"`
					SeLinuxOptions         *struct {
						Level *string `tfsdk:"level" json:"level,omitempty"`
						Role  *string `tfsdk:"role" json:"role,omitempty"`
						Type  *string `tfsdk:"type" json:"type,omitempty"`
						User  *string `tfsdk:"user" json:"user,omitempty"`
					} `tfsdk:"se_linux_options" json:"seLinuxOptions,omitempty"`
					SeccompProfile *struct {
						LocalhostProfile *string `tfsdk:"localhost_profile" json:"localhostProfile,omitempty"`
						Type             *string `tfsdk:"type" json:"type,omitempty"`
					} `tfsdk:"seccomp_profile" json:"seccompProfile,omitempty"`
					WindowsOptions *struct {
						GmsaCredentialSpec     *string `tfsdk:"gmsa_credential_spec" json:"gmsaCredentialSpec,omitempty"`
						GmsaCredentialSpecName *string `tfsdk:"gmsa_credential_spec_name" json:"gmsaCredentialSpecName,omitempty"`
						HostProcess            *bool   `tfsdk:"host_process" json:"hostProcess,omitempty"`
						RunAsUserName          *string `tfsdk:"run_as_user_name" json:"runAsUserName,omitempty"`
					} `tfsdk:"windows_options" json:"windowsOptions,omitempty"`
				} `tfsdk:"security_context" json:"securityContext,omitempty"`
				Tolerations *[]struct {
					Effect            *string `tfsdk:"effect" json:"effect,omitempty"`
					Key               *string `tfsdk:"key" json:"key,omitempty"`
					Operator          *string `tfsdk:"operator" json:"operator,omitempty"`
					TolerationSeconds *int64  `tfsdk:"toleration_seconds" json:"tolerationSeconds,omitempty"`
					Value             *string `tfsdk:"value" json:"value,omitempty"`
				} `tfsdk:"tolerations" json:"tolerations,omitempty"`
				TopologySpreadConstraints *[]struct {
					LabelSelector *struct {
						MatchExpressions *[]struct {
							Key      *string   `tfsdk:"key" json:"key,omitempty"`
							Operator *string   `tfsdk:"operator" json:"operator,omitempty"`
							Values   *[]string `tfsdk:"values" json:"values,omitempty"`
						} `tfsdk:"match_expressions" json:"matchExpressions,omitempty"`
						MatchLabels *map[string]string `tfsdk:"match_labels" json:"matchLabels,omitempty"`
					} `tfsdk:"label_selector" json:"labelSelector,omitempty"`
					MaxSkew           *int64  `tfsdk:"max_skew" json:"maxSkew,omitempty"`
					TopologyKey       *string `tfsdk:"topology_key" json:"topologyKey,omitempty"`
					WhenUnsatisfiable *string `tfsdk:"when_unsatisfiable" json:"whenUnsatisfiable,omitempty"`
				} `tfsdk:"topology_spread_constraints" json:"topologySpreadConstraints,omitempty"`
				VolumeMounts *[]struct {
					MountPath        *string `tfsdk:"mount_path" json:"mountPath,omitempty"`
					MountPropagation *string `tfsdk:"mount_propagation" json:"mountPropagation,omitempty"`
					Name             *string `tfsdk:"name" json:"name,omitempty"`
					ReadOnly         *bool   `tfsdk:"read_only" json:"readOnly,omitempty"`
					SubPath          *string `tfsdk:"sub_path" json:"subPath,omitempty"`
					SubPathExpr      *string `tfsdk:"sub_path_expr" json:"subPathExpr,omitempty"`
				} `tfsdk:"volume_mounts" json:"volumeMounts,omitempty"`
				Volumes *[]struct {
					Name         *string `tfsdk:"name" json:"name,omitempty"`
					VolumeSource *struct {
						AwsElasticBlockStore *struct {
							FsType    *string `tfsdk:"fs_type" json:"fsType,omitempty"`
							Partition *int64  `tfsdk:"partition" json:"partition,omitempty"`
							ReadOnly  *bool   `tfsdk:"read_only" json:"readOnly,omitempty"`
							VolumeID  *string `tfsdk:"volume_id" json:"volumeID,omitempty"`
						} `tfsdk:"aws_elastic_block_store" json:"awsElasticBlockStore,omitempty"`
						AzureDisk *struct {
							CachingMode *string `tfsdk:"caching_mode" json:"cachingMode,omitempty"`
							DiskName    *string `tfsdk:"disk_name" json:"diskName,omitempty"`
							DiskURI     *string `tfsdk:"disk_uri" json:"diskURI,omitempty"`
							FsType      *string `tfsdk:"fs_type" json:"fsType,omitempty"`
							Kind        *string `tfsdk:"kind" json:"kind,omitempty"`
							ReadOnly    *bool   `tfsdk:"read_only" json:"readOnly,omitempty"`
						} `tfsdk:"azure_disk" json:"azureDisk,omitempty"`
						AzureFile *struct {
							ReadOnly   *bool   `tfsdk:"read_only" json:"readOnly,omitempty"`
							SecretName *string `tfsdk:"secret_name" json:"secretName,omitempty"`
							ShareName  *string `tfsdk:"share_name" json:"shareName,omitempty"`
						} `tfsdk:"azure_file" json:"azureFile,omitempty"`
						Cephfs *struct {
							Monitors   *[]string `tfsdk:"monitors" json:"monitors,omitempty"`
							Path       *string   `tfsdk:"path" json:"path,omitempty"`
							ReadOnly   *bool     `tfsdk:"read_only" json:"readOnly,omitempty"`
							SecretFile *string   `tfsdk:"secret_file" json:"secretFile,omitempty"`
							SecretRef  *struct {
								Name *string `tfsdk:"name" json:"name,omitempty"`
							} `tfsdk:"secret_ref" json:"secretRef,omitempty"`
							User *string `tfsdk:"user" json:"user,omitempty"`
						} `tfsdk:"cephfs" json:"cephfs,omitempty"`
						Cinder *struct {
							FsType    *string `tfsdk:"fs_type" json:"fsType,omitempty"`
							ReadOnly  *bool   `tfsdk:"read_only" json:"readOnly,omitempty"`
							SecretRef *struct {
								Name *string `tfsdk:"name" json:"name,omitempty"`
							} `tfsdk:"secret_ref" json:"secretRef,omitempty"`
							VolumeID *string `tfsdk:"volume_id" json:"volumeID,omitempty"`
						} `tfsdk:"cinder" json:"cinder,omitempty"`
						ConfigMap *struct {
							DefaultMode *int64 `tfsdk:"default_mode" json:"defaultMode,omitempty"`
							Items       *[]struct {
								Key  *string `tfsdk:"key" json:"key,omitempty"`
								Mode *int64  `tfsdk:"mode" json:"mode,omitempty"`
								Path *string `tfsdk:"path" json:"path,omitempty"`
							} `tfsdk:"items" json:"items,omitempty"`
							LocalObjectReference *struct {
								Name *string `tfsdk:"name" json:"name,omitempty"`
							} `tfsdk:"local_object_reference" json:"localObjectReference,omitempty"`
							Optional *bool `tfsdk:"optional" json:"optional,omitempty"`
						} `tfsdk:"config_map" json:"configMap,omitempty"`
						Csi *struct {
							Driver               *string `tfsdk:"driver" json:"driver,omitempty"`
							FsType               *string `tfsdk:"fs_type" json:"fsType,omitempty"`
							NodePublishSecretRef *struct {
								Name *string `tfsdk:"name" json:"name,omitempty"`
							} `tfsdk:"node_publish_secret_ref" json:"nodePublishSecretRef,omitempty"`
							ReadOnly         *bool              `tfsdk:"read_only" json:"readOnly,omitempty"`
							VolumeAttributes *map[string]string `tfsdk:"volume_attributes" json:"volumeAttributes,omitempty"`
						} `tfsdk:"csi" json:"csi,omitempty"`
						DownwardAPI *struct {
							DefaultMode *int64 `tfsdk:"default_mode" json:"defaultMode,omitempty"`
							Items       *[]struct {
								FieldRef *struct {
									ApiVersion *string `tfsdk:"api_version" json:"apiVersion,omitempty"`
									FieldPath  *string `tfsdk:"field_path" json:"fieldPath,omitempty"`
								} `tfsdk:"field_ref" json:"fieldRef,omitempty"`
								Mode             *int64  `tfsdk:"mode" json:"mode,omitempty"`
								Path             *string `tfsdk:"path" json:"path,omitempty"`
								ResourceFieldRef *struct {
									ContainerName *string `tfsdk:"container_name" json:"containerName,omitempty"`
									Divisor       *string `tfsdk:"divisor" json:"divisor,omitempty"`
									Resource      *string `tfsdk:"resource" json:"resource,omitempty"`
								} `tfsdk:"resource_field_ref" json:"resourceFieldRef,omitempty"`
							} `tfsdk:"items" json:"items,omitempty"`
						} `tfsdk:"downward_api" json:"downwardAPI,omitempty"`
						EmptyDir *struct {
							Medium    *string `tfsdk:"medium" json:"medium,omitempty"`
							SizeLimit *string `tfsdk:"size_limit" json:"sizeLimit,omitempty"`
						} `tfsdk:"empty_dir" json:"emptyDir,omitempty"`
						Ephemeral *struct {
							VolumeClaimTemplate *struct {
								Metadata *struct {
									Annotations       *map[string]string `tfsdk:"annotations" json:"annotations,omitempty"`
									ClusterName       *string            `tfsdk:"cluster_name" json:"clusterName,omitempty"`
									CreationTimestamp *struct {
										Nanos   *int64 `tfsdk:"nanos" json:"nanos,omitempty"`
										Seconds *int64 `tfsdk:"seconds" json:"seconds,omitempty"`
									} `tfsdk:"creation_timestamp" json:"creationTimestamp,omitempty"`
									DeletionGracePeriodSeconds *int64 `tfsdk:"deletion_grace_period_seconds" json:"deletionGracePeriodSeconds,omitempty"`
									DeletionTimestamp          *struct {
										Nanos   *int64 `tfsdk:"nanos" json:"nanos,omitempty"`
										Seconds *int64 `tfsdk:"seconds" json:"seconds,omitempty"`
									} `tfsdk:"deletion_timestamp" json:"deletionTimestamp,omitempty"`
									Finalizers    *[]string          `tfsdk:"finalizers" json:"finalizers,omitempty"`
									GenerateName  *string            `tfsdk:"generate_name" json:"generateName,omitempty"`
									Generation    *int64             `tfsdk:"generation" json:"generation,omitempty"`
									Labels        *map[string]string `tfsdk:"labels" json:"labels,omitempty"`
									ManagedFields *[]struct {
										ApiVersion *string `tfsdk:"api_version" json:"apiVersion,omitempty"`
										FieldsType *string `tfsdk:"fields_type" json:"fieldsType,omitempty"`
										FieldsV1   *struct {
											Raw *string `tfsdk:"raw" json:"Raw,omitempty"`
										} `tfsdk:"fields_v1" json:"fieldsV1,omitempty"`
										Manager     *string `tfsdk:"manager" json:"manager,omitempty"`
										Operation   *string `tfsdk:"operation" json:"operation,omitempty"`
										Subresource *string `tfsdk:"subresource" json:"subresource,omitempty"`
										Time        *struct {
											Nanos   *int64 `tfsdk:"nanos" json:"nanos,omitempty"`
											Seconds *int64 `tfsdk:"seconds" json:"seconds,omitempty"`
										} `tfsdk:"time" json:"time,omitempty"`
									} `tfsdk:"managed_fields" json:"managedFields,omitempty"`
									Name            *string `tfsdk:"name" json:"name,omitempty"`
									Namespace       *string `tfsdk:"namespace" json:"namespace,omitempty"`
									OwnerReferences *[]struct {
										ApiVersion         *string `tfsdk:"api_version" json:"apiVersion,omitempty"`
										BlockOwnerDeletion *bool   `tfsdk:"block_owner_deletion" json:"blockOwnerDeletion,omitempty"`
										Controller         *bool   `tfsdk:"controller" json:"controller,omitempty"`
										Kind               *string `tfsdk:"kind" json:"kind,omitempty"`
										Name               *string `tfsdk:"name" json:"name,omitempty"`
										Uid                *string `tfsdk:"uid" json:"uid,omitempty"`
									} `tfsdk:"owner_references" json:"ownerReferences,omitempty"`
									ResourceVersion *string `tfsdk:"resource_version" json:"resourceVersion,omitempty"`
									SelfLink        *string `tfsdk:"self_link" json:"selfLink,omitempty"`
									Uid             *string `tfsdk:"uid" json:"uid,omitempty"`
								} `tfsdk:"metadata" json:"metadata,omitempty"`
								Spec *struct {
									AccessModes *[]string `tfsdk:"access_modes" json:"accessModes,omitempty"`
									DataSource  *struct {
										ApiGroup *string `tfsdk:"api_group" json:"apiGroup,omitempty"`
										Kind     *string `tfsdk:"kind" json:"kind,omitempty"`
										Name     *string `tfsdk:"name" json:"name,omitempty"`
									} `tfsdk:"data_source" json:"dataSource,omitempty"`
									DataSourceRef *struct {
										ApiGroup *string `tfsdk:"api_group" json:"apiGroup,omitempty"`
										Kind     *string `tfsdk:"kind" json:"kind,omitempty"`
										Name     *string `tfsdk:"name" json:"name,omitempty"`
									} `tfsdk:"data_source_ref" json:"dataSourceRef,omitempty"`
									Resources *struct {
										Limits *struct {
											String *string `tfsdk:"string" json:"string,omitempty"`
										} `tfsdk:"limits" json:"limits,omitempty"`
										Requests *struct {
											String *string `tfsdk:"string" json:"string,omitempty"`
										} `tfsdk:"requests" json:"requests,omitempty"`
									} `tfsdk:"resources" json:"resources,omitempty"`
									Selector *struct {
										MatchExpressions *[]struct {
											Key      *string   `tfsdk:"key" json:"key,omitempty"`
											Operator *string   `tfsdk:"operator" json:"operator,omitempty"`
											Values   *[]string `tfsdk:"values" json:"values,omitempty"`
										} `tfsdk:"match_expressions" json:"matchExpressions,omitempty"`
										MatchLabels *map[string]string `tfsdk:"match_labels" json:"matchLabels,omitempty"`
									} `tfsdk:"selector" json:"selector,omitempty"`
									StorageClassName *string `tfsdk:"storage_class_name" json:"storageClassName,omitempty"`
									VolumeMode       *string `tfsdk:"volume_mode" json:"volumeMode,omitempty"`
									VolumeName       *string `tfsdk:"volume_name" json:"volumeName,omitempty"`
								} `tfsdk:"spec" json:"spec,omitempty"`
							} `tfsdk:"volume_claim_template" json:"volumeClaimTemplate,omitempty"`
						} `tfsdk:"ephemeral" json:"ephemeral,omitempty"`
						Fc *struct {
							FsType     *string   `tfsdk:"fs_type" json:"fsType,omitempty"`
							Lun        *int64    `tfsdk:"lun" json:"lun,omitempty"`
							ReadOnly   *bool     `tfsdk:"read_only" json:"readOnly,omitempty"`
							TargetWWNs *[]string `tfsdk:"target_ww_ns" json:"targetWWNs,omitempty"`
							Wwids      *[]string `tfsdk:"wwids" json:"wwids,omitempty"`
						} `tfsdk:"fc" json:"fc,omitempty"`
						FlexVolume *struct {
							Driver    *string            `tfsdk:"driver" json:"driver,omitempty"`
							FsType    *string            `tfsdk:"fs_type" json:"fsType,omitempty"`
							Options   *map[string]string `tfsdk:"options" json:"options,omitempty"`
							ReadOnly  *bool              `tfsdk:"read_only" json:"readOnly,omitempty"`
							SecretRef *struct {
								Name *string `tfsdk:"name" json:"name,omitempty"`
							} `tfsdk:"secret_ref" json:"secretRef,omitempty"`
						} `tfsdk:"flex_volume" json:"flexVolume,omitempty"`
						Flocker *struct {
							DatasetName *string `tfsdk:"dataset_name" json:"datasetName,omitempty"`
							DatasetUUID *string `tfsdk:"dataset_uuid" json:"datasetUUID,omitempty"`
						} `tfsdk:"flocker" json:"flocker,omitempty"`
						GcePersistentDisk *struct {
							FsType    *string `tfsdk:"fs_type" json:"fsType,omitempty"`
							Partition *int64  `tfsdk:"partition" json:"partition,omitempty"`
							PdName    *string `tfsdk:"pd_name" json:"pdName,omitempty"`
							ReadOnly  *bool   `tfsdk:"read_only" json:"readOnly,omitempty"`
						} `tfsdk:"gce_persistent_disk" json:"gcePersistentDisk,omitempty"`
						GitRepo *struct {
							Directory  *string `tfsdk:"directory" json:"directory,omitempty"`
							Repository *string `tfsdk:"repository" json:"repository,omitempty"`
							Revision   *string `tfsdk:"revision" json:"revision,omitempty"`
						} `tfsdk:"git_repo" json:"gitRepo,omitempty"`
						Glusterfs *struct {
							Endpoints *string `tfsdk:"endpoints" json:"endpoints,omitempty"`
							Path      *string `tfsdk:"path" json:"path,omitempty"`
							ReadOnly  *bool   `tfsdk:"read_only" json:"readOnly,omitempty"`
						} `tfsdk:"glusterfs" json:"glusterfs,omitempty"`
						HostPath *struct {
							Path *string `tfsdk:"path" json:"path,omitempty"`
							Type *string `tfsdk:"type" json:"type,omitempty"`
						} `tfsdk:"host_path" json:"hostPath,omitempty"`
						Iscsi *struct {
							ChapAuthDiscovery *bool     `tfsdk:"chap_auth_discovery" json:"chapAuthDiscovery,omitempty"`
							ChapAuthSession   *bool     `tfsdk:"chap_auth_session" json:"chapAuthSession,omitempty"`
							FsType            *string   `tfsdk:"fs_type" json:"fsType,omitempty"`
							InitiatorName     *string   `tfsdk:"initiator_name" json:"initiatorName,omitempty"`
							Iqn               *string   `tfsdk:"iqn" json:"iqn,omitempty"`
							IscsiInterface    *string   `tfsdk:"iscsi_interface" json:"iscsiInterface,omitempty"`
							Lun               *int64    `tfsdk:"lun" json:"lun,omitempty"`
							Portals           *[]string `tfsdk:"portals" json:"portals,omitempty"`
							ReadOnly          *bool     `tfsdk:"read_only" json:"readOnly,omitempty"`
							SecretRef         *struct {
								Name *string `tfsdk:"name" json:"name,omitempty"`
							} `tfsdk:"secret_ref" json:"secretRef,omitempty"`
							TargetPortal *string `tfsdk:"target_portal" json:"targetPortal,omitempty"`
						} `tfsdk:"iscsi" json:"iscsi,omitempty"`
						Nfs *struct {
							Path     *string `tfsdk:"path" json:"path,omitempty"`
							ReadOnly *bool   `tfsdk:"read_only" json:"readOnly,omitempty"`
							Server   *string `tfsdk:"server" json:"server,omitempty"`
						} `tfsdk:"nfs" json:"nfs,omitempty"`
						PersistentVolumeClaim *struct {
							ClaimName *string `tfsdk:"claim_name" json:"claimName,omitempty"`
							ReadOnly  *bool   `tfsdk:"read_only" json:"readOnly,omitempty"`
						} `tfsdk:"persistent_volume_claim" json:"persistentVolumeClaim,omitempty"`
						PhotonPersistentDisk *struct {
							FsType *string `tfsdk:"fs_type" json:"fsType,omitempty"`
							PdID   *string `tfsdk:"pd_id" json:"pdID,omitempty"`
						} `tfsdk:"photon_persistent_disk" json:"photonPersistentDisk,omitempty"`
						PortworxVolume *struct {
							FsType   *string `tfsdk:"fs_type" json:"fsType,omitempty"`
							ReadOnly *bool   `tfsdk:"read_only" json:"readOnly,omitempty"`
							VolumeID *string `tfsdk:"volume_id" json:"volumeID,omitempty"`
						} `tfsdk:"portworx_volume" json:"portworxVolume,omitempty"`
						Projected *struct {
							DefaultMode *int64 `tfsdk:"default_mode" json:"defaultMode,omitempty"`
							Sources     *[]struct {
								ConfigMap *struct {
									Items *[]struct {
										Key  *string `tfsdk:"key" json:"key,omitempty"`
										Mode *int64  `tfsdk:"mode" json:"mode,omitempty"`
										Path *string `tfsdk:"path" json:"path,omitempty"`
									} `tfsdk:"items" json:"items,omitempty"`
									LocalObjectReference *struct {
										Name *string `tfsdk:"name" json:"name,omitempty"`
									} `tfsdk:"local_object_reference" json:"localObjectReference,omitempty"`
									Optional *bool `tfsdk:"optional" json:"optional,omitempty"`
								} `tfsdk:"config_map" json:"configMap,omitempty"`
								DownwardAPI *struct {
									Items *[]struct {
										FieldRef *struct {
											ApiVersion *string `tfsdk:"api_version" json:"apiVersion,omitempty"`
											FieldPath  *string `tfsdk:"field_path" json:"fieldPath,omitempty"`
										} `tfsdk:"field_ref" json:"fieldRef,omitempty"`
										Mode             *int64  `tfsdk:"mode" json:"mode,omitempty"`
										Path             *string `tfsdk:"path" json:"path,omitempty"`
										ResourceFieldRef *struct {
											ContainerName *string `tfsdk:"container_name" json:"containerName,omitempty"`
											Divisor       *string `tfsdk:"divisor" json:"divisor,omitempty"`
											Resource      *string `tfsdk:"resource" json:"resource,omitempty"`
										} `tfsdk:"resource_field_ref" json:"resourceFieldRef,omitempty"`
									} `tfsdk:"items" json:"items,omitempty"`
								} `tfsdk:"downward_api" json:"downwardAPI,omitempty"`
								Secret *struct {
									Items *[]struct {
										Key  *string `tfsdk:"key" json:"key,omitempty"`
										Mode *int64  `tfsdk:"mode" json:"mode,omitempty"`
										Path *string `tfsdk:"path" json:"path,omitempty"`
									} `tfsdk:"items" json:"items,omitempty"`
									LocalObjectReference *struct {
										Name *string `tfsdk:"name" json:"name,omitempty"`
									} `tfsdk:"local_object_reference" json:"localObjectReference,omitempty"`
									Optional *bool `tfsdk:"optional" json:"optional,omitempty"`
								} `tfsdk:"secret" json:"secret,omitempty"`
								ServiceAccountToken *struct {
									Audience          *string `tfsdk:"audience" json:"audience,omitempty"`
									ExpirationSeconds *int64  `tfsdk:"expiration_seconds" json:"expirationSeconds,omitempty"`
									Path              *string `tfsdk:"path" json:"path,omitempty"`
								} `tfsdk:"service_account_token" json:"serviceAccountToken,omitempty"`
							} `tfsdk:"sources" json:"sources,omitempty"`
						} `tfsdk:"projected" json:"projected,omitempty"`
						Quobyte *struct {
							Group    *string `tfsdk:"group" json:"group,omitempty"`
							ReadOnly *bool   `tfsdk:"read_only" json:"readOnly,omitempty"`
							Registry *string `tfsdk:"registry" json:"registry,omitempty"`
							Tenant   *string `tfsdk:"tenant" json:"tenant,omitempty"`
							User     *string `tfsdk:"user" json:"user,omitempty"`
							Volume   *string `tfsdk:"volume" json:"volume,omitempty"`
						} `tfsdk:"quobyte" json:"quobyte,omitempty"`
						Rbd *struct {
							FsType    *string   `tfsdk:"fs_type" json:"fsType,omitempty"`
							Image     *string   `tfsdk:"image" json:"image,omitempty"`
							Keyring   *string   `tfsdk:"keyring" json:"keyring,omitempty"`
							Monitors  *[]string `tfsdk:"monitors" json:"monitors,omitempty"`
							Pool      *string   `tfsdk:"pool" json:"pool,omitempty"`
							ReadOnly  *bool     `tfsdk:"read_only" json:"readOnly,omitempty"`
							SecretRef *struct {
								Name *string `tfsdk:"name" json:"name,omitempty"`
							} `tfsdk:"secret_ref" json:"secretRef,omitempty"`
							User *string `tfsdk:"user" json:"user,omitempty"`
						} `tfsdk:"rbd" json:"rbd,omitempty"`
						ScaleIO *struct {
							FsType           *string `tfsdk:"fs_type" json:"fsType,omitempty"`
							Gateway          *string `tfsdk:"gateway" json:"gateway,omitempty"`
							ProtectionDomain *string `tfsdk:"protection_domain" json:"protectionDomain,omitempty"`
							ReadOnly         *bool   `tfsdk:"read_only" json:"readOnly,omitempty"`
							SecretRef        *struct {
								Name *string `tfsdk:"name" json:"name,omitempty"`
							} `tfsdk:"secret_ref" json:"secretRef,omitempty"`
							SslEnabled  *bool   `tfsdk:"ssl_enabled" json:"sslEnabled,omitempty"`
							StorageMode *string `tfsdk:"storage_mode" json:"storageMode,omitempty"`
							StoragePool *string `tfsdk:"storage_pool" json:"storagePool,omitempty"`
							System      *string `tfsdk:"system" json:"system,omitempty"`
							VolumeName  *string `tfsdk:"volume_name" json:"volumeName,omitempty"`
						} `tfsdk:"scale_io" json:"scaleIO,omitempty"`
						Secret *struct {
							DefaultMode *int64 `tfsdk:"default_mode" json:"defaultMode,omitempty"`
							Items       *[]struct {
								Key  *string `tfsdk:"key" json:"key,omitempty"`
								Mode *int64  `tfsdk:"mode" json:"mode,omitempty"`
								Path *string `tfsdk:"path" json:"path,omitempty"`
							} `tfsdk:"items" json:"items,omitempty"`
							Optional   *bool   `tfsdk:"optional" json:"optional,omitempty"`
							SecretName *string `tfsdk:"secret_name" json:"secretName,omitempty"`
						} `tfsdk:"secret" json:"secret,omitempty"`
						Storageos *struct {
							FsType    *string `tfsdk:"fs_type" json:"fsType,omitempty"`
							ReadOnly  *bool   `tfsdk:"read_only" json:"readOnly,omitempty"`
							SecretRef *struct {
								Name *string `tfsdk:"name" json:"name,omitempty"`
							} `tfsdk:"secret_ref" json:"secretRef,omitempty"`
							VolumeName      *string `tfsdk:"volume_name" json:"volumeName,omitempty"`
							VolumeNamespace *string `tfsdk:"volume_namespace" json:"volumeNamespace,omitempty"`
						} `tfsdk:"storageos" json:"storageos,omitempty"`
						VsphereVolume *struct {
							FsType            *string `tfsdk:"fs_type" json:"fsType,omitempty"`
							StoragePolicyID   *string `tfsdk:"storage_policy_id" json:"storagePolicyID,omitempty"`
							StoragePolicyName *string `tfsdk:"storage_policy_name" json:"storagePolicyName,omitempty"`
							VolumePath        *string `tfsdk:"volume_path" json:"volumePath,omitempty"`
						} `tfsdk:"vsphere_volume" json:"vsphereVolume,omitempty"`
					} `tfsdk:"volume_source" json:"volumeSource,omitempty"`
				} `tfsdk:"volumes" json:"volumes,omitempty"`
			} `tfsdk:"deployment" json:"deployment,omitempty"`
			EnableAnalysis                 *bool `tfsdk:"enable_analysis" json:"enableAnalysis,omitempty"`
			EnableProtocolSniffingInbound  *bool `tfsdk:"enable_protocol_sniffing_inbound" json:"enableProtocolSniffingInbound,omitempty"`
			EnableProtocolSniffingOutbound *bool `tfsdk:"enable_protocol_sniffing_outbound" json:"enableProtocolSniffingOutbound,omitempty"`
			EnableStatus                   *bool `tfsdk:"enable_status" json:"enableStatus,omitempty"`
			ExternalIstiod                 *struct {
				Enabled *bool `tfsdk:"enabled" json:"enabled,omitempty"`
			} `tfsdk:"external_istiod" json:"externalIstiod,omitempty"`
			Spiffe *struct {
				OperatorEndpoints *struct {
					Enabled *bool `tfsdk:"enabled" json:"enabled,omitempty"`
				} `tfsdk:"operator_endpoints" json:"operatorEndpoints,omitempty"`
			} `tfsdk:"spiffe" json:"spiffe,omitempty"`
			TraceSampling *float64 `tfsdk:"trace_sampling" json:"traceSampling,omitempty"`
		} `tfsdk:"istiod" json:"istiod,omitempty"`
		JwtPolicy           *string `tfsdk:"jwt_policy" json:"jwtPolicy,omitempty"`
		K8sResourceOverlays *[]struct {
			GroupVersionKind *struct {
				Group   *string `tfsdk:"group" json:"group,omitempty"`
				Kind    *string `tfsdk:"kind" json:"kind,omitempty"`
				Version *string `tfsdk:"version" json:"version,omitempty"`
			} `tfsdk:"group_version_kind" json:"groupVersionKind,omitempty"`
			ObjectKey *struct {
				Name      *string `tfsdk:"name" json:"name,omitempty"`
				Namespace *string `tfsdk:"namespace" json:"namespace,omitempty"`
			} `tfsdk:"object_key" json:"objectKey,omitempty"`
			Patches *[]struct {
				ParseValue *bool   `tfsdk:"parse_value" json:"parseValue,omitempty"`
				Path       *string `tfsdk:"path" json:"path,omitempty"`
				Type       *string `tfsdk:"type" json:"type,omitempty"`
				Value      *string `tfsdk:"value" json:"value,omitempty"`
			} `tfsdk:"patches" json:"patches,omitempty"`
		} `tfsdk:"k8s_resource_overlays" json:"k8sResourceOverlays,omitempty"`
		Logging *struct {
			Level *string `tfsdk:"level" json:"level,omitempty"`
		} `tfsdk:"logging" json:"logging,omitempty"`
		MeshConfig *struct {
			AccessLogEncoding *string `tfsdk:"access_log_encoding" json:"accessLogEncoding,omitempty"`
			AccessLogFile     *string `tfsdk:"access_log_file" json:"accessLogFile,omitempty"`
			AccessLogFormat   *string `tfsdk:"access_log_format" json:"accessLogFormat,omitempty"`
			Ca                *struct {
				Address        *string `tfsdk:"address" json:"address,omitempty"`
				IstiodSide     *bool   `tfsdk:"istiod_side" json:"istiodSide,omitempty"`
				RequestTimeout *string `tfsdk:"request_timeout" json:"requestTimeout,omitempty"`
				TlsSettings    *struct {
					CaCertificates     *string   `tfsdk:"ca_certificates" json:"caCertificates,omitempty"`
					ClientCertificate  *string   `tfsdk:"client_certificate" json:"clientCertificate,omitempty"`
					CredentialName     *string   `tfsdk:"credential_name" json:"credentialName,omitempty"`
					InsecureSkipVerify *bool     `tfsdk:"insecure_skip_verify" json:"insecureSkipVerify,omitempty"`
					Mode               *string   `tfsdk:"mode" json:"mode,omitempty"`
					PrivateKey         *string   `tfsdk:"private_key" json:"privateKey,omitempty"`
					Sni                *string   `tfsdk:"sni" json:"sni,omitempty"`
					SubjectAltNames    *[]string `tfsdk:"subject_alt_names" json:"subjectAltNames,omitempty"`
				} `tfsdk:"tls_settings" json:"tlsSettings,omitempty"`
			} `tfsdk:"ca" json:"ca,omitempty"`
			CaCertificates *[]struct {
				CertSigners     *[]string `tfsdk:"cert_signers" json:"certSigners,omitempty"`
				Pem             *string   `tfsdk:"pem" json:"pem,omitempty"`
				SpiffeBundleUrl *string   `tfsdk:"spiffe_bundle_url" json:"spiffeBundleUrl,omitempty"`
				TrustDomains    *[]string `tfsdk:"trust_domains" json:"trustDomains,omitempty"`
			} `tfsdk:"ca_certificates" json:"caCertificates,omitempty"`
			Certificates *[]struct {
				DnsNames   *[]string `tfsdk:"dns_names" json:"dnsNames,omitempty"`
				SecretName *string   `tfsdk:"secret_name" json:"secretName,omitempty"`
			} `tfsdk:"certificates" json:"certificates,omitempty"`
			ConfigSources *[]struct {
				Address             *string   `tfsdk:"address" json:"address,omitempty"`
				SubscribedResources *[]string `tfsdk:"subscribed_resources" json:"subscribedResources,omitempty"`
				TlsSettings         *struct {
					CaCertificates     *string   `tfsdk:"ca_certificates" json:"caCertificates,omitempty"`
					ClientCertificate  *string   `tfsdk:"client_certificate" json:"clientCertificate,omitempty"`
					CredentialName     *string   `tfsdk:"credential_name" json:"credentialName,omitempty"`
					InsecureSkipVerify *bool     `tfsdk:"insecure_skip_verify" json:"insecureSkipVerify,omitempty"`
					Mode               *string   `tfsdk:"mode" json:"mode,omitempty"`
					PrivateKey         *string   `tfsdk:"private_key" json:"privateKey,omitempty"`
					Sni                *string   `tfsdk:"sni" json:"sni,omitempty"`
					SubjectAltNames    *[]string `tfsdk:"subject_alt_names" json:"subjectAltNames,omitempty"`
				} `tfsdk:"tls_settings" json:"tlsSettings,omitempty"`
			} `tfsdk:"config_sources" json:"configSources,omitempty"`
			ConnectTimeout *string `tfsdk:"connect_timeout" json:"connectTimeout,omitempty"`
			DefaultConfig  *struct {
				AvailabilityZone       *string   `tfsdk:"availability_zone" json:"availabilityZone,omitempty"`
				BinaryPath             *string   `tfsdk:"binary_path" json:"binaryPath,omitempty"`
				CaCertificatesPem      *[]string `tfsdk:"ca_certificates_pem" json:"caCertificatesPem,omitempty"`
				Concurrency            *int64    `tfsdk:"concurrency" json:"concurrency,omitempty"`
				ConfigPath             *string   `tfsdk:"config_path" json:"configPath,omitempty"`
				ControlPlaneAuthPolicy *string   `tfsdk:"control_plane_auth_policy" json:"controlPlaneAuthPolicy,omitempty"`
				CustomConfigFile       *string   `tfsdk:"custom_config_file" json:"customConfigFile,omitempty"`
				DiscoveryAddress       *string   `tfsdk:"discovery_address" json:"discoveryAddress,omitempty"`
				DiscoveryRefreshDelay  *string   `tfsdk:"discovery_refresh_delay" json:"discoveryRefreshDelay,omitempty"`
				DrainDuration          *string   `tfsdk:"drain_duration" json:"drainDuration,omitempty"`
				EnvoyAccessLogService  *struct {
					Address      *string `tfsdk:"address" json:"address,omitempty"`
					TcpKeepalive *struct {
						Interval *string `tfsdk:"interval" json:"interval,omitempty"`
						Probes   *int64  `tfsdk:"probes" json:"probes,omitempty"`
						Time     *string `tfsdk:"time" json:"time,omitempty"`
					} `tfsdk:"tcp_keepalive" json:"tcpKeepalive,omitempty"`
					TlsSettings *struct {
						CaCertificates     *string   `tfsdk:"ca_certificates" json:"caCertificates,omitempty"`
						ClientCertificate  *string   `tfsdk:"client_certificate" json:"clientCertificate,omitempty"`
						CredentialName     *string   `tfsdk:"credential_name" json:"credentialName,omitempty"`
						InsecureSkipVerify *bool     `tfsdk:"insecure_skip_verify" json:"insecureSkipVerify,omitempty"`
						Mode               *string   `tfsdk:"mode" json:"mode,omitempty"`
						PrivateKey         *string   `tfsdk:"private_key" json:"privateKey,omitempty"`
						Sni                *string   `tfsdk:"sni" json:"sni,omitempty"`
						SubjectAltNames    *[]string `tfsdk:"subject_alt_names" json:"subjectAltNames,omitempty"`
					} `tfsdk:"tls_settings" json:"tlsSettings,omitempty"`
				} `tfsdk:"envoy_access_log_service" json:"envoyAccessLogService,omitempty"`
				EnvoyMetricsService *struct {
					Address      *string `tfsdk:"address" json:"address,omitempty"`
					TcpKeepalive *struct {
						Interval *string `tfsdk:"interval" json:"interval,omitempty"`
						Probes   *int64  `tfsdk:"probes" json:"probes,omitempty"`
						Time     *string `tfsdk:"time" json:"time,omitempty"`
					} `tfsdk:"tcp_keepalive" json:"tcpKeepalive,omitempty"`
					TlsSettings *struct {
						CaCertificates     *string   `tfsdk:"ca_certificates" json:"caCertificates,omitempty"`
						ClientCertificate  *string   `tfsdk:"client_certificate" json:"clientCertificate,omitempty"`
						CredentialName     *string   `tfsdk:"credential_name" json:"credentialName,omitempty"`
						InsecureSkipVerify *bool     `tfsdk:"insecure_skip_verify" json:"insecureSkipVerify,omitempty"`
						Mode               *string   `tfsdk:"mode" json:"mode,omitempty"`
						PrivateKey         *string   `tfsdk:"private_key" json:"privateKey,omitempty"`
						Sni                *string   `tfsdk:"sni" json:"sni,omitempty"`
						SubjectAltNames    *[]string `tfsdk:"subject_alt_names" json:"subjectAltNames,omitempty"`
					} `tfsdk:"tls_settings" json:"tlsSettings,omitempty"`
				} `tfsdk:"envoy_metrics_service" json:"envoyMetricsService,omitempty"`
				EnvoyMetricsServiceAddress *string   `tfsdk:"envoy_metrics_service_address" json:"envoyMetricsServiceAddress,omitempty"`
				ExtraStatTags              *[]string `tfsdk:"extra_stat_tags" json:"extraStatTags,omitempty"`
				GatewayTopology            *struct {
					ForwardClientCertDetails *string `tfsdk:"forward_client_cert_details" json:"forwardClientCertDetails,omitempty"`
					NumTrustedProxies        *int64  `tfsdk:"num_trusted_proxies" json:"numTrustedProxies,omitempty"`
				} `tfsdk:"gateway_topology" json:"gatewayTopology,omitempty"`
				HoldApplicationUntilProxyStarts *bool `tfsdk:"hold_application_until_proxy_starts" json:"holdApplicationUntilProxyStarts,omitempty"`
				Image                           *struct {
					ImageType *string `tfsdk:"image_type" json:"imageType,omitempty"`
				} `tfsdk:"image" json:"image,omitempty"`
				InterceptionMode   *string `tfsdk:"interception_mode" json:"interceptionMode,omitempty"`
				MeshId             *string `tfsdk:"mesh_id" json:"meshId,omitempty"`
				PrivateKeyProvider *struct {
					Cryptomb *struct {
						PollDelay *string `tfsdk:"poll_delay" json:"pollDelay,omitempty"`
					} `tfsdk:"cryptomb" json:"cryptomb,omitempty"`
					Qat *struct {
						PollDelay *string `tfsdk:"poll_delay" json:"pollDelay,omitempty"`
					} `tfsdk:"qat" json:"qat,omitempty"`
				} `tfsdk:"private_key_provider" json:"privateKeyProvider,omitempty"`
				ProxyAdminPort             *int64             `tfsdk:"proxy_admin_port" json:"proxyAdminPort,omitempty"`
				ProxyBootstrapTemplatePath *string            `tfsdk:"proxy_bootstrap_template_path" json:"proxyBootstrapTemplatePath,omitempty"`
				ProxyMetadata              *map[string]string `tfsdk:"proxy_metadata" json:"proxyMetadata,omitempty"`
				ProxyStatsMatcher          *struct {
					InclusionPrefixes *[]string `tfsdk:"inclusion_prefixes" json:"inclusionPrefixes,omitempty"`
					InclusionRegexps  *[]string `tfsdk:"inclusion_regexps" json:"inclusionRegexps,omitempty"`
					InclusionSuffixes *[]string `tfsdk:"inclusion_suffixes" json:"inclusionSuffixes,omitempty"`
				} `tfsdk:"proxy_stats_matcher" json:"proxyStatsMatcher,omitempty"`
				ReadinessProbe *struct {
					Exec *struct {
						Command *[]string `tfsdk:"command" json:"command,omitempty"`
					} `tfsdk:"exec" json:"exec,omitempty"`
					FailureThreshold *int64 `tfsdk:"failure_threshold" json:"failureThreshold,omitempty"`
					HttpGet          *struct {
						Host        *string `tfsdk:"host" json:"host,omitempty"`
						HttpHeaders *[]struct {
							Name  *string `tfsdk:"name" json:"name,omitempty"`
							Value *string `tfsdk:"value" json:"value,omitempty"`
						} `tfsdk:"http_headers" json:"httpHeaders,omitempty"`
						Path   *string `tfsdk:"path" json:"path,omitempty"`
						Port   *int64  `tfsdk:"port" json:"port,omitempty"`
						Scheme *string `tfsdk:"scheme" json:"scheme,omitempty"`
					} `tfsdk:"http_get" json:"httpGet,omitempty"`
					InitialDelaySeconds *int64 `tfsdk:"initial_delay_seconds" json:"initialDelaySeconds,omitempty"`
					PeriodSeconds       *int64 `tfsdk:"period_seconds" json:"periodSeconds,omitempty"`
					SuccessThreshold    *int64 `tfsdk:"success_threshold" json:"successThreshold,omitempty"`
					TcpSocket           *struct {
						Host *string `tfsdk:"host" json:"host,omitempty"`
						Port *int64  `tfsdk:"port" json:"port,omitempty"`
					} `tfsdk:"tcp_socket" json:"tcpSocket,omitempty"`
					TimeoutSeconds *int64 `tfsdk:"timeout_seconds" json:"timeoutSeconds,omitempty"`
				} `tfsdk:"readiness_probe" json:"readinessProbe,omitempty"`
				RuntimeValues *map[string]string `tfsdk:"runtime_values" json:"runtimeValues,omitempty"`
				Sds           *struct {
					Enabled      *bool   `tfsdk:"enabled" json:"enabled,omitempty"`
					K8sSaJwtPath *string `tfsdk:"k8s_sa_jwt_path" json:"k8sSaJwtPath,omitempty"`
				} `tfsdk:"sds" json:"sds,omitempty"`
				ServiceCluster           *string `tfsdk:"service_cluster" json:"serviceCluster,omitempty"`
				StatNameLength           *int64  `tfsdk:"stat_name_length" json:"statNameLength,omitempty"`
				StatsdUdpAddress         *string `tfsdk:"statsd_udp_address" json:"statsdUdpAddress,omitempty"`
				StatusPort               *int64  `tfsdk:"status_port" json:"statusPort,omitempty"`
				TerminationDrainDuration *string `tfsdk:"termination_drain_duration" json:"terminationDrainDuration,omitempty"`
				Tracing                  *struct {
					CustomTags *struct {
						Environment *struct {
							DefaultValue *string `tfsdk:"default_value" json:"defaultValue,omitempty"`
							Name         *string `tfsdk:"name" json:"name,omitempty"`
						} `tfsdk:"environment" json:"environment,omitempty"`
						Header *struct {
							DefaultValue *string `tfsdk:"default_value" json:"defaultValue,omitempty"`
							Name         *string `tfsdk:"name" json:"name,omitempty"`
						} `tfsdk:"header" json:"header,omitempty"`
						Literal *struct {
							Value *string `tfsdk:"value" json:"value,omitempty"`
						} `tfsdk:"literal" json:"literal,omitempty"`
					} `tfsdk:"custom_tags" json:"customTags,omitempty"`
					Datadog *struct {
						Address *string `tfsdk:"address" json:"address,omitempty"`
					} `tfsdk:"datadog" json:"datadog,omitempty"`
					Lightstep *struct {
						AccessToken *string `tfsdk:"access_token" json:"accessToken,omitempty"`
						Address     *string `tfsdk:"address" json:"address,omitempty"`
					} `tfsdk:"lightstep" json:"lightstep,omitempty"`
					MaxPathTagLength *int64 `tfsdk:"max_path_tag_length" json:"maxPathTagLength,omitempty"`
					OpenCensusAgent  *struct {
						Address *string   `tfsdk:"address" json:"address,omitempty"`
						Context *[]string `tfsdk:"context" json:"context,omitempty"`
					} `tfsdk:"open_census_agent" json:"openCensusAgent,omitempty"`
					Sampling    *float64 `tfsdk:"sampling" json:"sampling,omitempty"`
					Stackdriver *struct {
						Debug                    *bool  `tfsdk:"debug" json:"debug,omitempty"`
						MaxNumberOfAnnotations   *int64 `tfsdk:"max_number_of_annotations" json:"maxNumberOfAnnotations,omitempty"`
						MaxNumberOfAttributes    *int64 `tfsdk:"max_number_of_attributes" json:"maxNumberOfAttributes,omitempty"`
						MaxNumberOfMessageEvents *int64 `tfsdk:"max_number_of_message_events" json:"maxNumberOfMessageEvents,omitempty"`
					} `tfsdk:"stackdriver" json:"stackdriver,omitempty"`
					TlsSettings *struct {
						CaCertificates     *string   `tfsdk:"ca_certificates" json:"caCertificates,omitempty"`
						ClientCertificate  *string   `tfsdk:"client_certificate" json:"clientCertificate,omitempty"`
						CredentialName     *string   `tfsdk:"credential_name" json:"credentialName,omitempty"`
						InsecureSkipVerify *bool     `tfsdk:"insecure_skip_verify" json:"insecureSkipVerify,omitempty"`
						Mode               *string   `tfsdk:"mode" json:"mode,omitempty"`
						PrivateKey         *string   `tfsdk:"private_key" json:"privateKey,omitempty"`
						Sni                *string   `tfsdk:"sni" json:"sni,omitempty"`
						SubjectAltNames    *[]string `tfsdk:"subject_alt_names" json:"subjectAltNames,omitempty"`
					} `tfsdk:"tls_settings" json:"tlsSettings,omitempty"`
					Zipkin *struct {
						Address *string `tfsdk:"address" json:"address,omitempty"`
					} `tfsdk:"zipkin" json:"zipkin,omitempty"`
				} `tfsdk:"tracing" json:"tracing,omitempty"`
				TracingServiceName *string `tfsdk:"tracing_service_name" json:"tracingServiceName,omitempty"`
				ZipkinAddress      *string `tfsdk:"zipkin_address" json:"zipkinAddress,omitempty"`
			} `tfsdk:"default_config" json:"defaultConfig,omitempty"`
			DefaultDestinationRuleExportTo *[]string `tfsdk:"default_destination_rule_export_to" json:"defaultDestinationRuleExportTo,omitempty"`
			DefaultHttpRetryPolicy         *struct {
				Attempts              *int64  `tfsdk:"attempts" json:"attempts,omitempty"`
				PerTryTimeout         *string `tfsdk:"per_try_timeout" json:"perTryTimeout,omitempty"`
				RetryOn               *string `tfsdk:"retry_on" json:"retryOn,omitempty"`
				RetryRemoteLocalities *bool   `tfsdk:"retry_remote_localities" json:"retryRemoteLocalities,omitempty"`
			} `tfsdk:"default_http_retry_policy" json:"defaultHttpRetryPolicy,omitempty"`
			DefaultProviders *struct {
				AccessLogging *[]string `tfsdk:"access_logging" json:"accessLogging,omitempty"`
				Metrics       *[]string `tfsdk:"metrics" json:"metrics,omitempty"`
				Tracing       *[]string `tfsdk:"tracing" json:"tracing,omitempty"`
			} `tfsdk:"default_providers" json:"defaultProviders,omitempty"`
			DefaultServiceExportTo        *[]string `tfsdk:"default_service_export_to" json:"defaultServiceExportTo,omitempty"`
			DefaultVirtualServiceExportTo *[]string `tfsdk:"default_virtual_service_export_to" json:"defaultVirtualServiceExportTo,omitempty"`
			DisableEnvoyListenerLog       *bool     `tfsdk:"disable_envoy_listener_log" json:"disableEnvoyListenerLog,omitempty"`
			DiscoverySelectors            *[]struct {
				MatchExpressions *[]struct {
					Key      *string   `tfsdk:"key" json:"key,omitempty"`
					Operator *string   `tfsdk:"operator" json:"operator,omitempty"`
					Values   *[]string `tfsdk:"values" json:"values,omitempty"`
				} `tfsdk:"match_expressions" json:"matchExpressions,omitempty"`
				MatchLabels *map[string]string `tfsdk:"match_labels" json:"matchLabels,omitempty"`
			} `tfsdk:"discovery_selectors" json:"discoverySelectors,omitempty"`
			DnsRefreshRate              *string `tfsdk:"dns_refresh_rate" json:"dnsRefreshRate,omitempty"`
			EnableAutoMtls              *bool   `tfsdk:"enable_auto_mtls" json:"enableAutoMtls,omitempty"`
			EnableEnvoyAccessLogService *bool   `tfsdk:"enable_envoy_access_log_service" json:"enableEnvoyAccessLogService,omitempty"`
			EnablePrometheusMerge       *bool   `tfsdk:"enable_prometheus_merge" json:"enablePrometheusMerge,omitempty"`
			EnableTracing               *bool   `tfsdk:"enable_tracing" json:"enableTracing,omitempty"`
			ExtensionProviders          *[]struct {
				Datadog *struct {
					MaxTagLength *int64  `tfsdk:"max_tag_length" json:"maxTagLength,omitempty"`
					Port         *int64  `tfsdk:"port" json:"port,omitempty"`
					Service      *string `tfsdk:"service" json:"service,omitempty"`
				} `tfsdk:"datadog" json:"datadog,omitempty"`
				EnvoyExtAuthzGrpc *struct {
					FailOpen                  *bool `tfsdk:"fail_open" json:"failOpen,omitempty"`
					IncludeRequestBodyInCheck *struct {
						AllowPartialMessage *bool  `tfsdk:"allow_partial_message" json:"allowPartialMessage,omitempty"`
						MaxRequestBytes     *int64 `tfsdk:"max_request_bytes" json:"maxRequestBytes,omitempty"`
						PackAsBytes         *bool  `tfsdk:"pack_as_bytes" json:"packAsBytes,omitempty"`
					} `tfsdk:"include_request_body_in_check" json:"includeRequestBodyInCheck,omitempty"`
					Port          *int64  `tfsdk:"port" json:"port,omitempty"`
					Service       *string `tfsdk:"service" json:"service,omitempty"`
					StatusOnError *string `tfsdk:"status_on_error" json:"statusOnError,omitempty"`
					Timeout       *string `tfsdk:"timeout" json:"timeout,omitempty"`
				} `tfsdk:"envoy_ext_authz_grpc" json:"envoyExtAuthzGrpc,omitempty"`
				EnvoyExtAuthzHttp *struct {
					FailOpen                        *bool              `tfsdk:"fail_open" json:"failOpen,omitempty"`
					HeadersToDownstreamOnAllow      *[]string          `tfsdk:"headers_to_downstream_on_allow" json:"headersToDownstreamOnAllow,omitempty"`
					HeadersToDownstreamOnDeny       *[]string          `tfsdk:"headers_to_downstream_on_deny" json:"headersToDownstreamOnDeny,omitempty"`
					HeadersToUpstreamOnAllow        *[]string          `tfsdk:"headers_to_upstream_on_allow" json:"headersToUpstreamOnAllow,omitempty"`
					IncludeAdditionalHeadersInCheck *map[string]string `tfsdk:"include_additional_headers_in_check" json:"includeAdditionalHeadersInCheck,omitempty"`
					IncludeHeadersInCheck           *[]string          `tfsdk:"include_headers_in_check" json:"includeHeadersInCheck,omitempty"`
					IncludeRequestBodyInCheck       *struct {
						AllowPartialMessage *bool  `tfsdk:"allow_partial_message" json:"allowPartialMessage,omitempty"`
						MaxRequestBytes     *int64 `tfsdk:"max_request_bytes" json:"maxRequestBytes,omitempty"`
						PackAsBytes         *bool  `tfsdk:"pack_as_bytes" json:"packAsBytes,omitempty"`
					} `tfsdk:"include_request_body_in_check" json:"includeRequestBodyInCheck,omitempty"`
					IncludeRequestHeadersInCheck *[]string `tfsdk:"include_request_headers_in_check" json:"includeRequestHeadersInCheck,omitempty"`
					PathPrefix                   *string   `tfsdk:"path_prefix" json:"pathPrefix,omitempty"`
					Port                         *int64    `tfsdk:"port" json:"port,omitempty"`
					Service                      *string   `tfsdk:"service" json:"service,omitempty"`
					StatusOnError                *string   `tfsdk:"status_on_error" json:"statusOnError,omitempty"`
					Timeout                      *string   `tfsdk:"timeout" json:"timeout,omitempty"`
				} `tfsdk:"envoy_ext_authz_http" json:"envoyExtAuthzHttp,omitempty"`
				EnvoyFileAccessLog *struct {
					LogFormat *struct {
						Labels *map[string]string `tfsdk:"labels" json:"labels,omitempty"`
						Text   *string            `tfsdk:"text" json:"text,omitempty"`
					} `tfsdk:"log_format" json:"logFormat,omitempty"`
					Path *string `tfsdk:"path" json:"path,omitempty"`
				} `tfsdk:"envoy_file_access_log" json:"envoyFileAccessLog,omitempty"`
				EnvoyHttpAls *struct {
					AdditionalRequestHeadersToLog   *[]string `tfsdk:"additional_request_headers_to_log" json:"additionalRequestHeadersToLog,omitempty"`
					AdditionalResponseHeadersToLog  *[]string `tfsdk:"additional_response_headers_to_log" json:"additionalResponseHeadersToLog,omitempty"`
					AdditionalResponseTrailersToLog *[]string `tfsdk:"additional_response_trailers_to_log" json:"additionalResponseTrailersToLog,omitempty"`
					FilterStateObjectsToLog         *[]string `tfsdk:"filter_state_objects_to_log" json:"filterStateObjectsToLog,omitempty"`
					LogName                         *string   `tfsdk:"log_name" json:"logName,omitempty"`
					Port                            *int64    `tfsdk:"port" json:"port,omitempty"`
					Service                         *string   `tfsdk:"service" json:"service,omitempty"`
				} `tfsdk:"envoy_http_als" json:"envoyHttpAls,omitempty"`
				EnvoyOtelAls *struct {
					LogFormat *struct {
						Labels *map[string]string `tfsdk:"labels" json:"labels,omitempty"`
						Text   *string            `tfsdk:"text" json:"text,omitempty"`
					} `tfsdk:"log_format" json:"logFormat,omitempty"`
					LogName *string `tfsdk:"log_name" json:"logName,omitempty"`
					Port    *int64  `tfsdk:"port" json:"port,omitempty"`
					Service *string `tfsdk:"service" json:"service,omitempty"`
				} `tfsdk:"envoy_otel_als" json:"envoyOtelAls,omitempty"`
				EnvoyTcpAls *struct {
					FilterStateObjectsToLog *[]string `tfsdk:"filter_state_objects_to_log" json:"filterStateObjectsToLog,omitempty"`
					LogName                 *string   `tfsdk:"log_name" json:"logName,omitempty"`
					Port                    *int64    `tfsdk:"port" json:"port,omitempty"`
					Service                 *string   `tfsdk:"service" json:"service,omitempty"`
				} `tfsdk:"envoy_tcp_als" json:"envoyTcpAls,omitempty"`
				Lightstep *struct {
					AccessToken  *string `tfsdk:"access_token" json:"accessToken,omitempty"`
					MaxTagLength *int64  `tfsdk:"max_tag_length" json:"maxTagLength,omitempty"`
					Port         *int64  `tfsdk:"port" json:"port,omitempty"`
					Service      *string `tfsdk:"service" json:"service,omitempty"`
				} `tfsdk:"lightstep" json:"lightstep,omitempty"`
				Name       *string `tfsdk:"name" json:"name,omitempty"`
				Opencensus *struct {
					Context      *[]string `tfsdk:"context" json:"context,omitempty"`
					MaxTagLength *int64    `tfsdk:"max_tag_length" json:"maxTagLength,omitempty"`
					Port         *int64    `tfsdk:"port" json:"port,omitempty"`
					Service      *string   `tfsdk:"service" json:"service,omitempty"`
				} `tfsdk:"opencensus" json:"opencensus,omitempty"`
				Opentelemetry *struct {
					MaxTagLength *int64  `tfsdk:"max_tag_length" json:"maxTagLength,omitempty"`
					Port         *int64  `tfsdk:"port" json:"port,omitempty"`
					Service      *string `tfsdk:"service" json:"service,omitempty"`
				} `tfsdk:"opentelemetry" json:"opentelemetry,omitempty"`
				Prometheus *map[string]string `tfsdk:"prometheus" json:"prometheus,omitempty"`
				Skywalking *struct {
					AccessToken *string `tfsdk:"access_token" json:"accessToken,omitempty"`
					Port        *int64  `tfsdk:"port" json:"port,omitempty"`
					Service     *string `tfsdk:"service" json:"service,omitempty"`
				} `tfsdk:"skywalking" json:"skywalking,omitempty"`
				Stackdriver *struct {
					Debug   *bool `tfsdk:"debug" json:"debug,omitempty"`
					Logging *struct {
						Labels *map[string]string `tfsdk:"labels" json:"labels,omitempty"`
					} `tfsdk:"logging" json:"logging,omitempty"`
					MaxNumberOfAnnotations   *int64 `tfsdk:"max_number_of_annotations" json:"maxNumberOfAnnotations,omitempty"`
					MaxNumberOfAttributes    *int64 `tfsdk:"max_number_of_attributes" json:"maxNumberOfAttributes,omitempty"`
					MaxNumberOfMessageEvents *int64 `tfsdk:"max_number_of_message_events" json:"maxNumberOfMessageEvents,omitempty"`
					MaxTagLength             *int64 `tfsdk:"max_tag_length" json:"maxTagLength,omitempty"`
				} `tfsdk:"stackdriver" json:"stackdriver,omitempty"`
				Zipkin *struct {
					MaxTagLength *int64  `tfsdk:"max_tag_length" json:"maxTagLength,omitempty"`
					Port         *int64  `tfsdk:"port" json:"port,omitempty"`
					Service      *string `tfsdk:"service" json:"service,omitempty"`
				} `tfsdk:"zipkin" json:"zipkin,omitempty"`
			} `tfsdk:"extension_providers" json:"extensionProviders,omitempty"`
			H2UpgradePolicy        *string `tfsdk:"h2_upgrade_policy" json:"h2UpgradePolicy,omitempty"`
			InboundClusterStatName *string `tfsdk:"inbound_cluster_stat_name" json:"inboundClusterStatName,omitempty"`
			IngressClass           *string `tfsdk:"ingress_class" json:"ingressClass,omitempty"`
			IngressControllerMode  *string `tfsdk:"ingress_controller_mode" json:"ingressControllerMode,omitempty"`
			IngressSelector        *string `tfsdk:"ingress_selector" json:"ingressSelector,omitempty"`
			IngressService         *string `tfsdk:"ingress_service" json:"ingressService,omitempty"`
			LocalityLbSetting      *struct {
				Distribute *[]struct {
					From *string            `tfsdk:"from" json:"from,omitempty"`
					To   *map[string]string `tfsdk:"to" json:"to,omitempty"`
				} `tfsdk:"distribute" json:"distribute,omitempty"`
				Enabled  *bool `tfsdk:"enabled" json:"enabled,omitempty"`
				Failover *[]struct {
					From *string `tfsdk:"from" json:"from,omitempty"`
					To   *string `tfsdk:"to" json:"to,omitempty"`
				} `tfsdk:"failover" json:"failover,omitempty"`
				FailoverPriority *[]string `tfsdk:"failover_priority" json:"failoverPriority,omitempty"`
			} `tfsdk:"locality_lb_setting" json:"localityLbSetting,omitempty"`
			MeshMTLS *struct {
				MinProtocolVersion *string `tfsdk:"min_protocol_version" json:"minProtocolVersion,omitempty"`
			} `tfsdk:"mesh_mtls" json:"meshMTLS,omitempty"`
			OutboundClusterStatName *string `tfsdk:"outbound_cluster_stat_name" json:"outboundClusterStatName,omitempty"`
			OutboundTrafficPolicy   *struct {
				Mode *string `tfsdk:"mode" json:"mode,omitempty"`
			} `tfsdk:"outbound_traffic_policy" json:"outboundTrafficPolicy,omitempty"`
			PathNormalization *struct {
				Normalization *string `tfsdk:"normalization" json:"normalization,omitempty"`
			} `tfsdk:"path_normalization" json:"pathNormalization,omitempty"`
			ProtocolDetectionTimeout *string `tfsdk:"protocol_detection_timeout" json:"protocolDetectionTimeout,omitempty"`
			ProxyHttpPort            *int64  `tfsdk:"proxy_http_port" json:"proxyHttpPort,omitempty"`
			ProxyListenPort          *int64  `tfsdk:"proxy_listen_port" json:"proxyListenPort,omitempty"`
			RootNamespace            *string `tfsdk:"root_namespace" json:"rootNamespace,omitempty"`
			ServiceSettings          *[]struct {
				Hosts    *[]string `tfsdk:"hosts" json:"hosts,omitempty"`
				Settings *struct {
					ClusterLocal *bool `tfsdk:"cluster_local" json:"clusterLocal,omitempty"`
				} `tfsdk:"settings" json:"settings,omitempty"`
			} `tfsdk:"service_settings" json:"serviceSettings,omitempty"`
			TcpKeepalive *struct {
				Interval *string `tfsdk:"interval" json:"interval,omitempty"`
				Probes   *int64  `tfsdk:"probes" json:"probes,omitempty"`
				Time     *string `tfsdk:"time" json:"time,omitempty"`
			} `tfsdk:"tcp_keepalive" json:"tcpKeepalive,omitempty"`
			TrustDomain               *string   `tfsdk:"trust_domain" json:"trustDomain,omitempty"`
			TrustDomainAliases        *[]string `tfsdk:"trust_domain_aliases" json:"trustDomainAliases,omitempty"`
			VerifyCertificateAtClient *bool     `tfsdk:"verify_certificate_at_client" json:"verifyCertificateAtClient,omitempty"`
		} `tfsdk:"mesh_config" json:"meshConfig,omitempty"`
		MeshExpansion *struct {
			ClusterServices *struct {
				Expose *bool `tfsdk:"expose" json:"expose,omitempty"`
			} `tfsdk:"cluster_services" json:"clusterServices,omitempty"`
			Enabled *bool `tfsdk:"enabled" json:"enabled,omitempty"`
			Gateway *struct {
				Deployment *struct {
					Affinity *struct {
						NodeAffinity *struct {
							PreferredDuringSchedulingIgnoredDuringExecution *[]struct {
								Preference *struct {
									MatchExpressions *[]struct {
										Key      *string   `tfsdk:"key" json:"key,omitempty"`
										Operator *string   `tfsdk:"operator" json:"operator,omitempty"`
										Values   *[]string `tfsdk:"values" json:"values,omitempty"`
									} `tfsdk:"match_expressions" json:"matchExpressions,omitempty"`
									MatchFields *[]struct {
										Key      *string   `tfsdk:"key" json:"key,omitempty"`
										Operator *string   `tfsdk:"operator" json:"operator,omitempty"`
										Values   *[]string `tfsdk:"values" json:"values,omitempty"`
									} `tfsdk:"match_fields" json:"matchFields,omitempty"`
								} `tfsdk:"preference" json:"preference,omitempty"`
								Weight *int64 `tfsdk:"weight" json:"weight,omitempty"`
							} `tfsdk:"preferred_during_scheduling_ignored_during_execution" json:"preferredDuringSchedulingIgnoredDuringExecution,omitempty"`
							RequiredDuringSchedulingIgnoredDuringExecution *struct {
								NodeSelectorTerms *[]struct {
									MatchExpressions *[]struct {
										Key      *string   `tfsdk:"key" json:"key,omitempty"`
										Operator *string   `tfsdk:"operator" json:"operator,omitempty"`
										Values   *[]string `tfsdk:"values" json:"values,omitempty"`
									} `tfsdk:"match_expressions" json:"matchExpressions,omitempty"`
									MatchFields *[]struct {
										Key      *string   `tfsdk:"key" json:"key,omitempty"`
										Operator *string   `tfsdk:"operator" json:"operator,omitempty"`
										Values   *[]string `tfsdk:"values" json:"values,omitempty"`
									} `tfsdk:"match_fields" json:"matchFields,omitempty"`
								} `tfsdk:"node_selector_terms" json:"nodeSelectorTerms,omitempty"`
							} `tfsdk:"required_during_scheduling_ignored_during_execution" json:"requiredDuringSchedulingIgnoredDuringExecution,omitempty"`
						} `tfsdk:"node_affinity" json:"nodeAffinity,omitempty"`
						PodAffinity *struct {
							PreferredDuringSchedulingIgnoredDuringExecution *[]struct {
								PodAffinityTerm *struct {
									LabelSelector *struct {
										MatchExpressions *[]struct {
											Key      *string   `tfsdk:"key" json:"key,omitempty"`
											Operator *string   `tfsdk:"operator" json:"operator,omitempty"`
											Values   *[]string `tfsdk:"values" json:"values,omitempty"`
										} `tfsdk:"match_expressions" json:"matchExpressions,omitempty"`
										MatchLabels *map[string]string `tfsdk:"match_labels" json:"matchLabels,omitempty"`
									} `tfsdk:"label_selector" json:"labelSelector,omitempty"`
									NamespaceSelector *struct {
										MatchExpressions *[]struct {
											Key      *string   `tfsdk:"key" json:"key,omitempty"`
											Operator *string   `tfsdk:"operator" json:"operator,omitempty"`
											Values   *[]string `tfsdk:"values" json:"values,omitempty"`
										} `tfsdk:"match_expressions" json:"matchExpressions,omitempty"`
										MatchLabels *map[string]string `tfsdk:"match_labels" json:"matchLabels,omitempty"`
									} `tfsdk:"namespace_selector" json:"namespaceSelector,omitempty"`
									Namespaces  *[]string `tfsdk:"namespaces" json:"namespaces,omitempty"`
									TopologyKey *string   `tfsdk:"topology_key" json:"topologyKey,omitempty"`
								} `tfsdk:"pod_affinity_term" json:"podAffinityTerm,omitempty"`
								Weight *int64 `tfsdk:"weight" json:"weight,omitempty"`
							} `tfsdk:"preferred_during_scheduling_ignored_during_execution" json:"preferredDuringSchedulingIgnoredDuringExecution,omitempty"`
							RequiredDuringSchedulingIgnoredDuringExecution *[]struct {
								LabelSelector *struct {
									MatchExpressions *[]struct {
										Key      *string   `tfsdk:"key" json:"key,omitempty"`
										Operator *string   `tfsdk:"operator" json:"operator,omitempty"`
										Values   *[]string `tfsdk:"values" json:"values,omitempty"`
									} `tfsdk:"match_expressions" json:"matchExpressions,omitempty"`
									MatchLabels *map[string]string `tfsdk:"match_labels" json:"matchLabels,omitempty"`
								} `tfsdk:"label_selector" json:"labelSelector,omitempty"`
								NamespaceSelector *struct {
									MatchExpressions *[]struct {
										Key      *string   `tfsdk:"key" json:"key,omitempty"`
										Operator *string   `tfsdk:"operator" json:"operator,omitempty"`
										Values   *[]string `tfsdk:"values" json:"values,omitempty"`
									} `tfsdk:"match_expressions" json:"matchExpressions,omitempty"`
									MatchLabels *map[string]string `tfsdk:"match_labels" json:"matchLabels,omitempty"`
								} `tfsdk:"namespace_selector" json:"namespaceSelector,omitempty"`
								Namespaces  *[]string `tfsdk:"namespaces" json:"namespaces,omitempty"`
								TopologyKey *string   `tfsdk:"topology_key" json:"topologyKey,omitempty"`
							} `tfsdk:"required_during_scheduling_ignored_during_execution" json:"requiredDuringSchedulingIgnoredDuringExecution,omitempty"`
						} `tfsdk:"pod_affinity" json:"podAffinity,omitempty"`
						PodAntiAffinity *struct {
							PreferredDuringSchedulingIgnoredDuringExecution *[]struct {
								PodAffinityTerm *struct {
									LabelSelector *struct {
										MatchExpressions *[]struct {
											Key      *string   `tfsdk:"key" json:"key,omitempty"`
											Operator *string   `tfsdk:"operator" json:"operator,omitempty"`
											Values   *[]string `tfsdk:"values" json:"values,omitempty"`
										} `tfsdk:"match_expressions" json:"matchExpressions,omitempty"`
										MatchLabels *map[string]string `tfsdk:"match_labels" json:"matchLabels,omitempty"`
									} `tfsdk:"label_selector" json:"labelSelector,omitempty"`
									NamespaceSelector *struct {
										MatchExpressions *[]struct {
											Key      *string   `tfsdk:"key" json:"key,omitempty"`
											Operator *string   `tfsdk:"operator" json:"operator,omitempty"`
											Values   *[]string `tfsdk:"values" json:"values,omitempty"`
										} `tfsdk:"match_expressions" json:"matchExpressions,omitempty"`
										MatchLabels *map[string]string `tfsdk:"match_labels" json:"matchLabels,omitempty"`
									} `tfsdk:"namespace_selector" json:"namespaceSelector,omitempty"`
									Namespaces  *[]string `tfsdk:"namespaces" json:"namespaces,omitempty"`
									TopologyKey *string   `tfsdk:"topology_key" json:"topologyKey,omitempty"`
								} `tfsdk:"pod_affinity_term" json:"podAffinityTerm,omitempty"`
								Weight *int64 `tfsdk:"weight" json:"weight,omitempty"`
							} `tfsdk:"preferred_during_scheduling_ignored_during_execution" json:"preferredDuringSchedulingIgnoredDuringExecution,omitempty"`
							RequiredDuringSchedulingIgnoredDuringExecution *[]struct {
								LabelSelector *struct {
									MatchExpressions *[]struct {
										Key      *string   `tfsdk:"key" json:"key,omitempty"`
										Operator *string   `tfsdk:"operator" json:"operator,omitempty"`
										Values   *[]string `tfsdk:"values" json:"values,omitempty"`
									} `tfsdk:"match_expressions" json:"matchExpressions,omitempty"`
									MatchLabels *map[string]string `tfsdk:"match_labels" json:"matchLabels,omitempty"`
								} `tfsdk:"label_selector" json:"labelSelector,omitempty"`
								NamespaceSelector *struct {
									MatchExpressions *[]struct {
										Key      *string   `tfsdk:"key" json:"key,omitempty"`
										Operator *string   `tfsdk:"operator" json:"operator,omitempty"`
										Values   *[]string `tfsdk:"values" json:"values,omitempty"`
									} `tfsdk:"match_expressions" json:"matchExpressions,omitempty"`
									MatchLabels *map[string]string `tfsdk:"match_labels" json:"matchLabels,omitempty"`
								} `tfsdk:"namespace_selector" json:"namespaceSelector,omitempty"`
								Namespaces  *[]string `tfsdk:"namespaces" json:"namespaces,omitempty"`
								TopologyKey *string   `tfsdk:"topology_key" json:"topologyKey,omitempty"`
							} `tfsdk:"required_during_scheduling_ignored_during_execution" json:"requiredDuringSchedulingIgnoredDuringExecution,omitempty"`
						} `tfsdk:"pod_anti_affinity" json:"podAntiAffinity,omitempty"`
					} `tfsdk:"affinity" json:"affinity,omitempty"`
					DeploymentStrategy *struct {
						RollingUpdate *struct {
							MaxSurge       *string `tfsdk:"max_surge" json:"maxSurge,omitempty"`
							MaxUnavailable *string `tfsdk:"max_unavailable" json:"maxUnavailable,omitempty"`
						} `tfsdk:"rolling_update" json:"rollingUpdate,omitempty"`
						Type *string `tfsdk:"type" json:"type,omitempty"`
					} `tfsdk:"deployment_strategy" json:"deploymentStrategy,omitempty"`
					Env *[]struct {
						Name      *string `tfsdk:"name" json:"name,omitempty"`
						Value     *string `tfsdk:"value" json:"value,omitempty"`
						ValueFrom *struct {
							ConfigMapKeyRef *struct {
								Key                  *string `tfsdk:"key" json:"key,omitempty"`
								LocalObjectReference *struct {
									Name *string `tfsdk:"name" json:"name,omitempty"`
								} `tfsdk:"local_object_reference" json:"localObjectReference,omitempty"`
								Optional *bool `tfsdk:"optional" json:"optional,omitempty"`
							} `tfsdk:"config_map_key_ref" json:"configMapKeyRef,omitempty"`
							FieldRef *struct {
								ApiVersion *string `tfsdk:"api_version" json:"apiVersion,omitempty"`
								FieldPath  *string `tfsdk:"field_path" json:"fieldPath,omitempty"`
							} `tfsdk:"field_ref" json:"fieldRef,omitempty"`
							ResourceFieldRef *struct {
								ContainerName *string `tfsdk:"container_name" json:"containerName,omitempty"`
								Divisor       *string `tfsdk:"divisor" json:"divisor,omitempty"`
								Resource      *string `tfsdk:"resource" json:"resource,omitempty"`
							} `tfsdk:"resource_field_ref" json:"resourceFieldRef,omitempty"`
							SecretKeyRef *struct {
								Key                  *string `tfsdk:"key" json:"key,omitempty"`
								LocalObjectReference *struct {
									Name *string `tfsdk:"name" json:"name,omitempty"`
								} `tfsdk:"local_object_reference" json:"localObjectReference,omitempty"`
								Optional *bool `tfsdk:"optional" json:"optional,omitempty"`
							} `tfsdk:"secret_key_ref" json:"secretKeyRef,omitempty"`
						} `tfsdk:"value_from" json:"valueFrom,omitempty"`
					} `tfsdk:"env" json:"env,omitempty"`
					Image            *string `tfsdk:"image" json:"image,omitempty"`
					ImagePullPolicy  *string `tfsdk:"image_pull_policy" json:"imagePullPolicy,omitempty"`
					ImagePullSecrets *[]struct {
						Name *string `tfsdk:"name" json:"name,omitempty"`
					} `tfsdk:"image_pull_secrets" json:"imagePullSecrets,omitempty"`
					LivenessProbe *struct {
						Exec *struct {
							Command *[]string `tfsdk:"command" json:"command,omitempty"`
						} `tfsdk:"exec" json:"exec,omitempty"`
						FailureThreshold *int64 `tfsdk:"failure_threshold" json:"failureThreshold,omitempty"`
						Grpc             *struct {
							Port    *int64  `tfsdk:"port" json:"port,omitempty"`
							Service *string `tfsdk:"service" json:"service,omitempty"`
						} `tfsdk:"grpc" json:"grpc,omitempty"`
						HttpGet *struct {
							Host        *string `tfsdk:"host" json:"host,omitempty"`
							HttpHeaders *[]struct {
								Name  *string `tfsdk:"name" json:"name,omitempty"`
								Value *string `tfsdk:"value" json:"value,omitempty"`
							} `tfsdk:"http_headers" json:"httpHeaders,omitempty"`
							Path   *string `tfsdk:"path" json:"path,omitempty"`
							Port   *string `tfsdk:"port" json:"port,omitempty"`
							Scheme *string `tfsdk:"scheme" json:"scheme,omitempty"`
						} `tfsdk:"http_get" json:"httpGet,omitempty"`
						InitialDelaySeconds *int64 `tfsdk:"initial_delay_seconds" json:"initialDelaySeconds,omitempty"`
						PeriodSeconds       *int64 `tfsdk:"period_seconds" json:"periodSeconds,omitempty"`
						SuccessThreshold    *int64 `tfsdk:"success_threshold" json:"successThreshold,omitempty"`
						TcpSocket           *struct {
							Host *string `tfsdk:"host" json:"host,omitempty"`
							Port *string `tfsdk:"port" json:"port,omitempty"`
						} `tfsdk:"tcp_socket" json:"tcpSocket,omitempty"`
						TerminationGracePeriodSeconds *int64 `tfsdk:"termination_grace_period_seconds" json:"terminationGracePeriodSeconds,omitempty"`
						TimeoutSeconds                *int64 `tfsdk:"timeout_seconds" json:"timeoutSeconds,omitempty"`
					} `tfsdk:"liveness_probe" json:"livenessProbe,omitempty"`
					Metadata *struct {
						Annotations *map[string]string `tfsdk:"annotations" json:"annotations,omitempty"`
						Labels      *map[string]string `tfsdk:"labels" json:"labels,omitempty"`
					} `tfsdk:"metadata" json:"metadata,omitempty"`
					NodeSelector        *map[string]string `tfsdk:"node_selector" json:"nodeSelector,omitempty"`
					PodDisruptionBudget *struct {
						MaxUnavailable *string `tfsdk:"max_unavailable" json:"maxUnavailable,omitempty"`
						MinAvailable   *string `tfsdk:"min_available" json:"minAvailable,omitempty"`
					} `tfsdk:"pod_disruption_budget" json:"podDisruptionBudget,omitempty"`
					PodMetadata *struct {
						Annotations *map[string]string `tfsdk:"annotations" json:"annotations,omitempty"`
						Labels      *map[string]string `tfsdk:"labels" json:"labels,omitempty"`
					} `tfsdk:"pod_metadata" json:"podMetadata,omitempty"`
					PodSecurityContext *struct {
						FsGroup             *int64  `tfsdk:"fs_group" json:"fsGroup,omitempty"`
						FsGroupChangePolicy *string `tfsdk:"fs_group_change_policy" json:"fsGroupChangePolicy,omitempty"`
						RunAsGroup          *int64  `tfsdk:"run_as_group" json:"runAsGroup,omitempty"`
						RunAsNonRoot        *bool   `tfsdk:"run_as_non_root" json:"runAsNonRoot,omitempty"`
						RunAsUser           *int64  `tfsdk:"run_as_user" json:"runAsUser,omitempty"`
						SeLinuxOptions      *struct {
							Level *string `tfsdk:"level" json:"level,omitempty"`
							Role  *string `tfsdk:"role" json:"role,omitempty"`
							Type  *string `tfsdk:"type" json:"type,omitempty"`
							User  *string `tfsdk:"user" json:"user,omitempty"`
						} `tfsdk:"se_linux_options" json:"seLinuxOptions,omitempty"`
						SeccompProfile *struct {
							LocalhostProfile *string `tfsdk:"localhost_profile" json:"localhostProfile,omitempty"`
							Type             *string `tfsdk:"type" json:"type,omitempty"`
						} `tfsdk:"seccomp_profile" json:"seccompProfile,omitempty"`
						SupplementalGroups *[]string `tfsdk:"supplemental_groups" json:"supplementalGroups,omitempty"`
						Sysctls            *[]struct {
							Name  *string `tfsdk:"name" json:"name,omitempty"`
							Value *string `tfsdk:"value" json:"value,omitempty"`
						} `tfsdk:"sysctls" json:"sysctls,omitempty"`
						WindowsOptions *struct {
							GmsaCredentialSpec     *string `tfsdk:"gmsa_credential_spec" json:"gmsaCredentialSpec,omitempty"`
							GmsaCredentialSpecName *string `tfsdk:"gmsa_credential_spec_name" json:"gmsaCredentialSpecName,omitempty"`
							HostProcess            *bool   `tfsdk:"host_process" json:"hostProcess,omitempty"`
							RunAsUserName          *string `tfsdk:"run_as_user_name" json:"runAsUserName,omitempty"`
						} `tfsdk:"windows_options" json:"windowsOptions,omitempty"`
					} `tfsdk:"pod_security_context" json:"podSecurityContext,omitempty"`
					PriorityClassName *string `tfsdk:"priority_class_name" json:"priorityClassName,omitempty"`
					ReadinessProbe    *struct {
						Exec *struct {
							Command *[]string `tfsdk:"command" json:"command,omitempty"`
						} `tfsdk:"exec" json:"exec,omitempty"`
						FailureThreshold *int64 `tfsdk:"failure_threshold" json:"failureThreshold,omitempty"`
						Grpc             *struct {
							Port    *int64  `tfsdk:"port" json:"port,omitempty"`
							Service *string `tfsdk:"service" json:"service,omitempty"`
						} `tfsdk:"grpc" json:"grpc,omitempty"`
						HttpGet *struct {
							Host        *string `tfsdk:"host" json:"host,omitempty"`
							HttpHeaders *[]struct {
								Name  *string `tfsdk:"name" json:"name,omitempty"`
								Value *string `tfsdk:"value" json:"value,omitempty"`
							} `tfsdk:"http_headers" json:"httpHeaders,omitempty"`
							Path   *string `tfsdk:"path" json:"path,omitempty"`
							Port   *string `tfsdk:"port" json:"port,omitempty"`
							Scheme *string `tfsdk:"scheme" json:"scheme,omitempty"`
						} `tfsdk:"http_get" json:"httpGet,omitempty"`
						InitialDelaySeconds *int64 `tfsdk:"initial_delay_seconds" json:"initialDelaySeconds,omitempty"`
						PeriodSeconds       *int64 `tfsdk:"period_seconds" json:"periodSeconds,omitempty"`
						SuccessThreshold    *int64 `tfsdk:"success_threshold" json:"successThreshold,omitempty"`
						TcpSocket           *struct {
							Host *string `tfsdk:"host" json:"host,omitempty"`
							Port *string `tfsdk:"port" json:"port,omitempty"`
						} `tfsdk:"tcp_socket" json:"tcpSocket,omitempty"`
						TerminationGracePeriodSeconds *int64 `tfsdk:"termination_grace_period_seconds" json:"terminationGracePeriodSeconds,omitempty"`
						TimeoutSeconds                *int64 `tfsdk:"timeout_seconds" json:"timeoutSeconds,omitempty"`
					} `tfsdk:"readiness_probe" json:"readinessProbe,omitempty"`
					Replicas *struct {
						Count                          *int64 `tfsdk:"count" json:"count,omitempty"`
						Max                            *int64 `tfsdk:"max" json:"max,omitempty"`
						Min                            *int64 `tfsdk:"min" json:"min,omitempty"`
						TargetCPUUtilizationPercentage *int64 `tfsdk:"target_cpu_utilization_percentage" json:"targetCPUUtilizationPercentage,omitempty"`
					} `tfsdk:"replicas" json:"replicas,omitempty"`
					Resources *struct {
						Limits   *map[string]string `tfsdk:"limits" json:"limits,omitempty"`
						Requests *map[string]string `tfsdk:"requests" json:"requests,omitempty"`
					} `tfsdk:"resources" json:"resources,omitempty"`
					SecurityContext *struct {
						AllowPrivilegeEscalation *bool `tfsdk:"allow_privilege_escalation" json:"allowPrivilegeEscalation,omitempty"`
						Capabilities             *struct {
							Add  *[]string `tfsdk:"add" json:"add,omitempty"`
							Drop *[]string `tfsdk:"drop" json:"drop,omitempty"`
						} `tfsdk:"capabilities" json:"capabilities,omitempty"`
						Privileged             *bool   `tfsdk:"privileged" json:"privileged,omitempty"`
						ProcMount              *string `tfsdk:"proc_mount" json:"procMount,omitempty"`
						ReadOnlyRootFilesystem *bool   `tfsdk:"read_only_root_filesystem" json:"readOnlyRootFilesystem,omitempty"`
						RunAsGroup             *int64  `tfsdk:"run_as_group" json:"runAsGroup,omitempty"`
						RunAsNonRoot           *bool   `tfsdk:"run_as_non_root" json:"runAsNonRoot,omitempty"`
						RunAsUser              *int64  `tfsdk:"run_as_user" json:"runAsUser,omitempty"`
						SeLinuxOptions         *struct {
							Level *string `tfsdk:"level" json:"level,omitempty"`
							Role  *string `tfsdk:"role" json:"role,omitempty"`
							Type  *string `tfsdk:"type" json:"type,omitempty"`
							User  *string `tfsdk:"user" json:"user,omitempty"`
						} `tfsdk:"se_linux_options" json:"seLinuxOptions,omitempty"`
						SeccompProfile *struct {
							LocalhostProfile *string `tfsdk:"localhost_profile" json:"localhostProfile,omitempty"`
							Type             *string `tfsdk:"type" json:"type,omitempty"`
						} `tfsdk:"seccomp_profile" json:"seccompProfile,omitempty"`
						WindowsOptions *struct {
							GmsaCredentialSpec     *string `tfsdk:"gmsa_credential_spec" json:"gmsaCredentialSpec,omitempty"`
							GmsaCredentialSpecName *string `tfsdk:"gmsa_credential_spec_name" json:"gmsaCredentialSpecName,omitempty"`
							HostProcess            *bool   `tfsdk:"host_process" json:"hostProcess,omitempty"`
							RunAsUserName          *string `tfsdk:"run_as_user_name" json:"runAsUserName,omitempty"`
						} `tfsdk:"windows_options" json:"windowsOptions,omitempty"`
					} `tfsdk:"security_context" json:"securityContext,omitempty"`
					Tolerations *[]struct {
						Effect            *string `tfsdk:"effect" json:"effect,omitempty"`
						Key               *string `tfsdk:"key" json:"key,omitempty"`
						Operator          *string `tfsdk:"operator" json:"operator,omitempty"`
						TolerationSeconds *int64  `tfsdk:"toleration_seconds" json:"tolerationSeconds,omitempty"`
						Value             *string `tfsdk:"value" json:"value,omitempty"`
					} `tfsdk:"tolerations" json:"tolerations,omitempty"`
					TopologySpreadConstraints *[]struct {
						LabelSelector *struct {
							MatchExpressions *[]struct {
								Key      *string   `tfsdk:"key" json:"key,omitempty"`
								Operator *string   `tfsdk:"operator" json:"operator,omitempty"`
								Values   *[]string `tfsdk:"values" json:"values,omitempty"`
							} `tfsdk:"match_expressions" json:"matchExpressions,omitempty"`
							MatchLabels *map[string]string `tfsdk:"match_labels" json:"matchLabels,omitempty"`
						} `tfsdk:"label_selector" json:"labelSelector,omitempty"`
						MaxSkew           *int64  `tfsdk:"max_skew" json:"maxSkew,omitempty"`
						TopologyKey       *string `tfsdk:"topology_key" json:"topologyKey,omitempty"`
						WhenUnsatisfiable *string `tfsdk:"when_unsatisfiable" json:"whenUnsatisfiable,omitempty"`
					} `tfsdk:"topology_spread_constraints" json:"topologySpreadConstraints,omitempty"`
					VolumeMounts *[]struct {
						MountPath        *string `tfsdk:"mount_path" json:"mountPath,omitempty"`
						MountPropagation *string `tfsdk:"mount_propagation" json:"mountPropagation,omitempty"`
						Name             *string `tfsdk:"name" json:"name,omitempty"`
						ReadOnly         *bool   `tfsdk:"read_only" json:"readOnly,omitempty"`
						SubPath          *string `tfsdk:"sub_path" json:"subPath,omitempty"`
						SubPathExpr      *string `tfsdk:"sub_path_expr" json:"subPathExpr,omitempty"`
					} `tfsdk:"volume_mounts" json:"volumeMounts,omitempty"`
					Volumes *[]struct {
						Name         *string `tfsdk:"name" json:"name,omitempty"`
						VolumeSource *struct {
							AwsElasticBlockStore *struct {
								FsType    *string `tfsdk:"fs_type" json:"fsType,omitempty"`
								Partition *int64  `tfsdk:"partition" json:"partition,omitempty"`
								ReadOnly  *bool   `tfsdk:"read_only" json:"readOnly,omitempty"`
								VolumeID  *string `tfsdk:"volume_id" json:"volumeID,omitempty"`
							} `tfsdk:"aws_elastic_block_store" json:"awsElasticBlockStore,omitempty"`
							AzureDisk *struct {
								CachingMode *string `tfsdk:"caching_mode" json:"cachingMode,omitempty"`
								DiskName    *string `tfsdk:"disk_name" json:"diskName,omitempty"`
								DiskURI     *string `tfsdk:"disk_uri" json:"diskURI,omitempty"`
								FsType      *string `tfsdk:"fs_type" json:"fsType,omitempty"`
								Kind        *string `tfsdk:"kind" json:"kind,omitempty"`
								ReadOnly    *bool   `tfsdk:"read_only" json:"readOnly,omitempty"`
							} `tfsdk:"azure_disk" json:"azureDisk,omitempty"`
							AzureFile *struct {
								ReadOnly   *bool   `tfsdk:"read_only" json:"readOnly,omitempty"`
								SecretName *string `tfsdk:"secret_name" json:"secretName,omitempty"`
								ShareName  *string `tfsdk:"share_name" json:"shareName,omitempty"`
							} `tfsdk:"azure_file" json:"azureFile,omitempty"`
							Cephfs *struct {
								Monitors   *[]string `tfsdk:"monitors" json:"monitors,omitempty"`
								Path       *string   `tfsdk:"path" json:"path,omitempty"`
								ReadOnly   *bool     `tfsdk:"read_only" json:"readOnly,omitempty"`
								SecretFile *string   `tfsdk:"secret_file" json:"secretFile,omitempty"`
								SecretRef  *struct {
									Name *string `tfsdk:"name" json:"name,omitempty"`
								} `tfsdk:"secret_ref" json:"secretRef,omitempty"`
								User *string `tfsdk:"user" json:"user,omitempty"`
							} `tfsdk:"cephfs" json:"cephfs,omitempty"`
							Cinder *struct {
								FsType    *string `tfsdk:"fs_type" json:"fsType,omitempty"`
								ReadOnly  *bool   `tfsdk:"read_only" json:"readOnly,omitempty"`
								SecretRef *struct {
									Name *string `tfsdk:"name" json:"name,omitempty"`
								} `tfsdk:"secret_ref" json:"secretRef,omitempty"`
								VolumeID *string `tfsdk:"volume_id" json:"volumeID,omitempty"`
							} `tfsdk:"cinder" json:"cinder,omitempty"`
							ConfigMap *struct {
								DefaultMode *int64 `tfsdk:"default_mode" json:"defaultMode,omitempty"`
								Items       *[]struct {
									Key  *string `tfsdk:"key" json:"key,omitempty"`
									Mode *int64  `tfsdk:"mode" json:"mode,omitempty"`
									Path *string `tfsdk:"path" json:"path,omitempty"`
								} `tfsdk:"items" json:"items,omitempty"`
								LocalObjectReference *struct {
									Name *string `tfsdk:"name" json:"name,omitempty"`
								} `tfsdk:"local_object_reference" json:"localObjectReference,omitempty"`
								Optional *bool `tfsdk:"optional" json:"optional,omitempty"`
							} `tfsdk:"config_map" json:"configMap,omitempty"`
							Csi *struct {
								Driver               *string `tfsdk:"driver" json:"driver,omitempty"`
								FsType               *string `tfsdk:"fs_type" json:"fsType,omitempty"`
								NodePublishSecretRef *struct {
									Name *string `tfsdk:"name" json:"name,omitempty"`
								} `tfsdk:"node_publish_secret_ref" json:"nodePublishSecretRef,omitempty"`
								ReadOnly         *bool              `tfsdk:"read_only" json:"readOnly,omitempty"`
								VolumeAttributes *map[string]string `tfsdk:"volume_attributes" json:"volumeAttributes,omitempty"`
							} `tfsdk:"csi" json:"csi,omitempty"`
							DownwardAPI *struct {
								DefaultMode *int64 `tfsdk:"default_mode" json:"defaultMode,omitempty"`
								Items       *[]struct {
									FieldRef *struct {
										ApiVersion *string `tfsdk:"api_version" json:"apiVersion,omitempty"`
										FieldPath  *string `tfsdk:"field_path" json:"fieldPath,omitempty"`
									} `tfsdk:"field_ref" json:"fieldRef,omitempty"`
									Mode             *int64  `tfsdk:"mode" json:"mode,omitempty"`
									Path             *string `tfsdk:"path" json:"path,omitempty"`
									ResourceFieldRef *struct {
										ContainerName *string `tfsdk:"container_name" json:"containerName,omitempty"`
										Divisor       *string `tfsdk:"divisor" json:"divisor,omitempty"`
										Resource      *string `tfsdk:"resource" json:"resource,omitempty"`
									} `tfsdk:"resource_field_ref" json:"resourceFieldRef,omitempty"`
								} `tfsdk:"items" json:"items,omitempty"`
							} `tfsdk:"downward_api" json:"downwardAPI,omitempty"`
							EmptyDir *struct {
								Medium    *string `tfsdk:"medium" json:"medium,omitempty"`
								SizeLimit *string `tfsdk:"size_limit" json:"sizeLimit,omitempty"`
							} `tfsdk:"empty_dir" json:"emptyDir,omitempty"`
							Ephemeral *struct {
								VolumeClaimTemplate *struct {
									Metadata *struct {
										Annotations       *map[string]string `tfsdk:"annotations" json:"annotations,omitempty"`
										ClusterName       *string            `tfsdk:"cluster_name" json:"clusterName,omitempty"`
										CreationTimestamp *struct {
											Nanos   *int64 `tfsdk:"nanos" json:"nanos,omitempty"`
											Seconds *int64 `tfsdk:"seconds" json:"seconds,omitempty"`
										} `tfsdk:"creation_timestamp" json:"creationTimestamp,omitempty"`
										DeletionGracePeriodSeconds *int64 `tfsdk:"deletion_grace_period_seconds" json:"deletionGracePeriodSeconds,omitempty"`
										DeletionTimestamp          *struct {
											Nanos   *int64 `tfsdk:"nanos" json:"nanos,omitempty"`
											Seconds *int64 `tfsdk:"seconds" json:"seconds,omitempty"`
										} `tfsdk:"deletion_timestamp" json:"deletionTimestamp,omitempty"`
										Finalizers    *[]string          `tfsdk:"finalizers" json:"finalizers,omitempty"`
										GenerateName  *string            `tfsdk:"generate_name" json:"generateName,omitempty"`
										Generation    *int64             `tfsdk:"generation" json:"generation,omitempty"`
										Labels        *map[string]string `tfsdk:"labels" json:"labels,omitempty"`
										ManagedFields *[]struct {
											ApiVersion *string `tfsdk:"api_version" json:"apiVersion,omitempty"`
											FieldsType *string `tfsdk:"fields_type" json:"fieldsType,omitempty"`
											FieldsV1   *struct {
												Raw *string `tfsdk:"raw" json:"Raw,omitempty"`
											} `tfsdk:"fields_v1" json:"fieldsV1,omitempty"`
											Manager     *string `tfsdk:"manager" json:"manager,omitempty"`
											Operation   *string `tfsdk:"operation" json:"operation,omitempty"`
											Subresource *string `tfsdk:"subresource" json:"subresource,omitempty"`
											Time        *struct {
												Nanos   *int64 `tfsdk:"nanos" json:"nanos,omitempty"`
												Seconds *int64 `tfsdk:"seconds" json:"seconds,omitempty"`
											} `tfsdk:"time" json:"time,omitempty"`
										} `tfsdk:"managed_fields" json:"managedFields,omitempty"`
										Name            *string `tfsdk:"name" json:"name,omitempty"`
										Namespace       *string `tfsdk:"namespace" json:"namespace,omitempty"`
										OwnerReferences *[]struct {
											ApiVersion         *string `tfsdk:"api_version" json:"apiVersion,omitempty"`
											BlockOwnerDeletion *bool   `tfsdk:"block_owner_deletion" json:"blockOwnerDeletion,omitempty"`
											Controller         *bool   `tfsdk:"controller" json:"controller,omitempty"`
											Kind               *string `tfsdk:"kind" json:"kind,omitempty"`
											Name               *string `tfsdk:"name" json:"name,omitempty"`
											Uid                *string `tfsdk:"uid" json:"uid,omitempty"`
										} `tfsdk:"owner_references" json:"ownerReferences,omitempty"`
										ResourceVersion *string `tfsdk:"resource_version" json:"resourceVersion,omitempty"`
										SelfLink        *string `tfsdk:"self_link" json:"selfLink,omitempty"`
										Uid             *string `tfsdk:"uid" json:"uid,omitempty"`
									} `tfsdk:"metadata" json:"metadata,omitempty"`
									Spec *struct {
										AccessModes *[]string `tfsdk:"access_modes" json:"accessModes,omitempty"`
										DataSource  *struct {
											ApiGroup *string `tfsdk:"api_group" json:"apiGroup,omitempty"`
											Kind     *string `tfsdk:"kind" json:"kind,omitempty"`
											Name     *string `tfsdk:"name" json:"name,omitempty"`
										} `tfsdk:"data_source" json:"dataSource,omitempty"`
										DataSourceRef *struct {
											ApiGroup *string `tfsdk:"api_group" json:"apiGroup,omitempty"`
											Kind     *string `tfsdk:"kind" json:"kind,omitempty"`
											Name     *string `tfsdk:"name" json:"name,omitempty"`
										} `tfsdk:"data_source_ref" json:"dataSourceRef,omitempty"`
										Resources *struct {
											Limits *struct {
												String *string `tfsdk:"string" json:"string,omitempty"`
											} `tfsdk:"limits" json:"limits,omitempty"`
											Requests *struct {
												String *string `tfsdk:"string" json:"string,omitempty"`
											} `tfsdk:"requests" json:"requests,omitempty"`
										} `tfsdk:"resources" json:"resources,omitempty"`
										Selector *struct {
											MatchExpressions *[]struct {
												Key      *string   `tfsdk:"key" json:"key,omitempty"`
												Operator *string   `tfsdk:"operator" json:"operator,omitempty"`
												Values   *[]string `tfsdk:"values" json:"values,omitempty"`
											} `tfsdk:"match_expressions" json:"matchExpressions,omitempty"`
											MatchLabels *map[string]string `tfsdk:"match_labels" json:"matchLabels,omitempty"`
										} `tfsdk:"selector" json:"selector,omitempty"`
										StorageClassName *string `tfsdk:"storage_class_name" json:"storageClassName,omitempty"`
										VolumeMode       *string `tfsdk:"volume_mode" json:"volumeMode,omitempty"`
										VolumeName       *string `tfsdk:"volume_name" json:"volumeName,omitempty"`
									} `tfsdk:"spec" json:"spec,omitempty"`
								} `tfsdk:"volume_claim_template" json:"volumeClaimTemplate,omitempty"`
							} `tfsdk:"ephemeral" json:"ephemeral,omitempty"`
							Fc *struct {
								FsType     *string   `tfsdk:"fs_type" json:"fsType,omitempty"`
								Lun        *int64    `tfsdk:"lun" json:"lun,omitempty"`
								ReadOnly   *bool     `tfsdk:"read_only" json:"readOnly,omitempty"`
								TargetWWNs *[]string `tfsdk:"target_ww_ns" json:"targetWWNs,omitempty"`
								Wwids      *[]string `tfsdk:"wwids" json:"wwids,omitempty"`
							} `tfsdk:"fc" json:"fc,omitempty"`
							FlexVolume *struct {
								Driver    *string            `tfsdk:"driver" json:"driver,omitempty"`
								FsType    *string            `tfsdk:"fs_type" json:"fsType,omitempty"`
								Options   *map[string]string `tfsdk:"options" json:"options,omitempty"`
								ReadOnly  *bool              `tfsdk:"read_only" json:"readOnly,omitempty"`
								SecretRef *struct {
									Name *string `tfsdk:"name" json:"name,omitempty"`
								} `tfsdk:"secret_ref" json:"secretRef,omitempty"`
							} `tfsdk:"flex_volume" json:"flexVolume,omitempty"`
							Flocker *struct {
								DatasetName *string `tfsdk:"dataset_name" json:"datasetName,omitempty"`
								DatasetUUID *string `tfsdk:"dataset_uuid" json:"datasetUUID,omitempty"`
							} `tfsdk:"flocker" json:"flocker,omitempty"`
							GcePersistentDisk *struct {
								FsType    *string `tfsdk:"fs_type" json:"fsType,omitempty"`
								Partition *int64  `tfsdk:"partition" json:"partition,omitempty"`
								PdName    *string `tfsdk:"pd_name" json:"pdName,omitempty"`
								ReadOnly  *bool   `tfsdk:"read_only" json:"readOnly,omitempty"`
							} `tfsdk:"gce_persistent_disk" json:"gcePersistentDisk,omitempty"`
							GitRepo *struct {
								Directory  *string `tfsdk:"directory" json:"directory,omitempty"`
								Repository *string `tfsdk:"repository" json:"repository,omitempty"`
								Revision   *string `tfsdk:"revision" json:"revision,omitempty"`
							} `tfsdk:"git_repo" json:"gitRepo,omitempty"`
							Glusterfs *struct {
								Endpoints *string `tfsdk:"endpoints" json:"endpoints,omitempty"`
								Path      *string `tfsdk:"path" json:"path,omitempty"`
								ReadOnly  *bool   `tfsdk:"read_only" json:"readOnly,omitempty"`
							} `tfsdk:"glusterfs" json:"glusterfs,omitempty"`
							HostPath *struct {
								Path *string `tfsdk:"path" json:"path,omitempty"`
								Type *string `tfsdk:"type" json:"type,omitempty"`
							} `tfsdk:"host_path" json:"hostPath,omitempty"`
							Iscsi *struct {
								ChapAuthDiscovery *bool     `tfsdk:"chap_auth_discovery" json:"chapAuthDiscovery,omitempty"`
								ChapAuthSession   *bool     `tfsdk:"chap_auth_session" json:"chapAuthSession,omitempty"`
								FsType            *string   `tfsdk:"fs_type" json:"fsType,omitempty"`
								InitiatorName     *string   `tfsdk:"initiator_name" json:"initiatorName,omitempty"`
								Iqn               *string   `tfsdk:"iqn" json:"iqn,omitempty"`
								IscsiInterface    *string   `tfsdk:"iscsi_interface" json:"iscsiInterface,omitempty"`
								Lun               *int64    `tfsdk:"lun" json:"lun,omitempty"`
								Portals           *[]string `tfsdk:"portals" json:"portals,omitempty"`
								ReadOnly          *bool     `tfsdk:"read_only" json:"readOnly,omitempty"`
								SecretRef         *struct {
									Name *string `tfsdk:"name" json:"name,omitempty"`
								} `tfsdk:"secret_ref" json:"secretRef,omitempty"`
								TargetPortal *string `tfsdk:"target_portal" json:"targetPortal,omitempty"`
							} `tfsdk:"iscsi" json:"iscsi,omitempty"`
							Nfs *struct {
								Path     *string `tfsdk:"path" json:"path,omitempty"`
								ReadOnly *bool   `tfsdk:"read_only" json:"readOnly,omitempty"`
								Server   *string `tfsdk:"server" json:"server,omitempty"`
							} `tfsdk:"nfs" json:"nfs,omitempty"`
							PersistentVolumeClaim *struct {
								ClaimName *string `tfsdk:"claim_name" json:"claimName,omitempty"`
								ReadOnly  *bool   `tfsdk:"read_only" json:"readOnly,omitempty"`
							} `tfsdk:"persistent_volume_claim" json:"persistentVolumeClaim,omitempty"`
							PhotonPersistentDisk *struct {
								FsType *string `tfsdk:"fs_type" json:"fsType,omitempty"`
								PdID   *string `tfsdk:"pd_id" json:"pdID,omitempty"`
							} `tfsdk:"photon_persistent_disk" json:"photonPersistentDisk,omitempty"`
							PortworxVolume *struct {
								FsType   *string `tfsdk:"fs_type" json:"fsType,omitempty"`
								ReadOnly *bool   `tfsdk:"read_only" json:"readOnly,omitempty"`
								VolumeID *string `tfsdk:"volume_id" json:"volumeID,omitempty"`
							} `tfsdk:"portworx_volume" json:"portworxVolume,omitempty"`
							Projected *struct {
								DefaultMode *int64 `tfsdk:"default_mode" json:"defaultMode,omitempty"`
								Sources     *[]struct {
									ConfigMap *struct {
										Items *[]struct {
											Key  *string `tfsdk:"key" json:"key,omitempty"`
											Mode *int64  `tfsdk:"mode" json:"mode,omitempty"`
											Path *string `tfsdk:"path" json:"path,omitempty"`
										} `tfsdk:"items" json:"items,omitempty"`
										LocalObjectReference *struct {
											Name *string `tfsdk:"name" json:"name,omitempty"`
										} `tfsdk:"local_object_reference" json:"localObjectReference,omitempty"`
										Optional *bool `tfsdk:"optional" json:"optional,omitempty"`
									} `tfsdk:"config_map" json:"configMap,omitempty"`
									DownwardAPI *struct {
										Items *[]struct {
											FieldRef *struct {
												ApiVersion *string `tfsdk:"api_version" json:"apiVersion,omitempty"`
												FieldPath  *string `tfsdk:"field_path" json:"fieldPath,omitempty"`
											} `tfsdk:"field_ref" json:"fieldRef,omitempty"`
											Mode             *int64  `tfsdk:"mode" json:"mode,omitempty"`
											Path             *string `tfsdk:"path" json:"path,omitempty"`
											ResourceFieldRef *struct {
												ContainerName *string `tfsdk:"container_name" json:"containerName,omitempty"`
												Divisor       *string `tfsdk:"divisor" json:"divisor,omitempty"`
												Resource      *string `tfsdk:"resource" json:"resource,omitempty"`
											} `tfsdk:"resource_field_ref" json:"resourceFieldRef,omitempty"`
										} `tfsdk:"items" json:"items,omitempty"`
									} `tfsdk:"downward_api" json:"downwardAPI,omitempty"`
									Secret *struct {
										Items *[]struct {
											Key  *string `tfsdk:"key" json:"key,omitempty"`
											Mode *int64  `tfsdk:"mode" json:"mode,omitempty"`
											Path *string `tfsdk:"path" json:"path,omitempty"`
										} `tfsdk:"items" json:"items,omitempty"`
										LocalObjectReference *struct {
											Name *string `tfsdk:"name" json:"name,omitempty"`
										} `tfsdk:"local_object_reference" json:"localObjectReference,omitempty"`
										Optional *bool `tfsdk:"optional" json:"optional,omitempty"`
									} `tfsdk:"secret" json:"secret,omitempty"`
									ServiceAccountToken *struct {
										Audience          *string `tfsdk:"audience" json:"audience,omitempty"`
										ExpirationSeconds *int64  `tfsdk:"expiration_seconds" json:"expirationSeconds,omitempty"`
										Path              *string `tfsdk:"path" json:"path,omitempty"`
									} `tfsdk:"service_account_token" json:"serviceAccountToken,omitempty"`
								} `tfsdk:"sources" json:"sources,omitempty"`
							} `tfsdk:"projected" json:"projected,omitempty"`
							Quobyte *struct {
								Group    *string `tfsdk:"group" json:"group,omitempty"`
								ReadOnly *bool   `tfsdk:"read_only" json:"readOnly,omitempty"`
								Registry *string `tfsdk:"registry" json:"registry,omitempty"`
								Tenant   *string `tfsdk:"tenant" json:"tenant,omitempty"`
								User     *string `tfsdk:"user" json:"user,omitempty"`
								Volume   *string `tfsdk:"volume" json:"volume,omitempty"`
							} `tfsdk:"quobyte" json:"quobyte,omitempty"`
							Rbd *struct {
								FsType    *string   `tfsdk:"fs_type" json:"fsType,omitempty"`
								Image     *string   `tfsdk:"image" json:"image,omitempty"`
								Keyring   *string   `tfsdk:"keyring" json:"keyring,omitempty"`
								Monitors  *[]string `tfsdk:"monitors" json:"monitors,omitempty"`
								Pool      *string   `tfsdk:"pool" json:"pool,omitempty"`
								ReadOnly  *bool     `tfsdk:"read_only" json:"readOnly,omitempty"`
								SecretRef *struct {
									Name *string `tfsdk:"name" json:"name,omitempty"`
								} `tfsdk:"secret_ref" json:"secretRef,omitempty"`
								User *string `tfsdk:"user" json:"user,omitempty"`
							} `tfsdk:"rbd" json:"rbd,omitempty"`
							ScaleIO *struct {
								FsType           *string `tfsdk:"fs_type" json:"fsType,omitempty"`
								Gateway          *string `tfsdk:"gateway" json:"gateway,omitempty"`
								ProtectionDomain *string `tfsdk:"protection_domain" json:"protectionDomain,omitempty"`
								ReadOnly         *bool   `tfsdk:"read_only" json:"readOnly,omitempty"`
								SecretRef        *struct {
									Name *string `tfsdk:"name" json:"name,omitempty"`
								} `tfsdk:"secret_ref" json:"secretRef,omitempty"`
								SslEnabled  *bool   `tfsdk:"ssl_enabled" json:"sslEnabled,omitempty"`
								StorageMode *string `tfsdk:"storage_mode" json:"storageMode,omitempty"`
								StoragePool *string `tfsdk:"storage_pool" json:"storagePool,omitempty"`
								System      *string `tfsdk:"system" json:"system,omitempty"`
								VolumeName  *string `tfsdk:"volume_name" json:"volumeName,omitempty"`
							} `tfsdk:"scale_io" json:"scaleIO,omitempty"`
							Secret *struct {
								DefaultMode *int64 `tfsdk:"default_mode" json:"defaultMode,omitempty"`
								Items       *[]struct {
									Key  *string `tfsdk:"key" json:"key,omitempty"`
									Mode *int64  `tfsdk:"mode" json:"mode,omitempty"`
									Path *string `tfsdk:"path" json:"path,omitempty"`
								} `tfsdk:"items" json:"items,omitempty"`
								Optional   *bool   `tfsdk:"optional" json:"optional,omitempty"`
								SecretName *string `tfsdk:"secret_name" json:"secretName,omitempty"`
							} `tfsdk:"secret" json:"secret,omitempty"`
							Storageos *struct {
								FsType    *string `tfsdk:"fs_type" json:"fsType,omitempty"`
								ReadOnly  *bool   `tfsdk:"read_only" json:"readOnly,omitempty"`
								SecretRef *struct {
									Name *string `tfsdk:"name" json:"name,omitempty"`
								} `tfsdk:"secret_ref" json:"secretRef,omitempty"`
								VolumeName      *string `tfsdk:"volume_name" json:"volumeName,omitempty"`
								VolumeNamespace *string `tfsdk:"volume_namespace" json:"volumeNamespace,omitempty"`
							} `tfsdk:"storageos" json:"storageos,omitempty"`
							VsphereVolume *struct {
								FsType            *string `tfsdk:"fs_type" json:"fsType,omitempty"`
								StoragePolicyID   *string `tfsdk:"storage_policy_id" json:"storagePolicyID,omitempty"`
								StoragePolicyName *string `tfsdk:"storage_policy_name" json:"storagePolicyName,omitempty"`
								VolumePath        *string `tfsdk:"volume_path" json:"volumePath,omitempty"`
							} `tfsdk:"vsphere_volume" json:"vsphereVolume,omitempty"`
						} `tfsdk:"volume_source" json:"volumeSource,omitempty"`
					} `tfsdk:"volumes" json:"volumes,omitempty"`
				} `tfsdk:"deployment" json:"deployment,omitempty"`
				K8sResourceOverlays *[]struct {
					GroupVersionKind *struct {
						Group   *string `tfsdk:"group" json:"group,omitempty"`
						Kind    *string `tfsdk:"kind" json:"kind,omitempty"`
						Version *string `tfsdk:"version" json:"version,omitempty"`
					} `tfsdk:"group_version_kind" json:"groupVersionKind,omitempty"`
					ObjectKey *struct {
						Name      *string `tfsdk:"name" json:"name,omitempty"`
						Namespace *string `tfsdk:"namespace" json:"namespace,omitempty"`
					} `tfsdk:"object_key" json:"objectKey,omitempty"`
					Patches *[]struct {
						ParseValue *bool   `tfsdk:"parse_value" json:"parseValue,omitempty"`
						Path       *string `tfsdk:"path" json:"path,omitempty"`
						Type       *string `tfsdk:"type" json:"type,omitempty"`
						Value      *string `tfsdk:"value" json:"value,omitempty"`
					} `tfsdk:"patches" json:"patches,omitempty"`
				} `tfsdk:"k8s_resource_overlays" json:"k8sResourceOverlays,omitempty"`
				Metadata *struct {
					Annotations *map[string]string `tfsdk:"annotations" json:"annotations,omitempty"`
					Labels      *map[string]string `tfsdk:"labels" json:"labels,omitempty"`
				} `tfsdk:"metadata" json:"metadata,omitempty"`
				RunAsRoot *bool `tfsdk:"run_as_root" json:"runAsRoot,omitempty"`
				Service   *struct {
					ClusterIP                *string   `tfsdk:"cluster_ip" json:"clusterIP,omitempty"`
					ExternalIPs              *[]string `tfsdk:"external_i_ps" json:"externalIPs,omitempty"`
					ExternalName             *string   `tfsdk:"external_name" json:"externalName,omitempty"`
					ExternalTrafficPolicy    *string   `tfsdk:"external_traffic_policy" json:"externalTrafficPolicy,omitempty"`
					HealthCheckNodePort      *int64    `tfsdk:"health_check_node_port" json:"healthCheckNodePort,omitempty"`
					IpFamily                 *string   `tfsdk:"ip_family" json:"ipFamily,omitempty"`
					LoadBalancerIP           *string   `tfsdk:"load_balancer_ip" json:"loadBalancerIP,omitempty"`
					LoadBalancerSourceRanges *[]string `tfsdk:"load_balancer_source_ranges" json:"loadBalancerSourceRanges,omitempty"`
					Metadata                 *struct {
						Annotations *map[string]string `tfsdk:"annotations" json:"annotations,omitempty"`
						Labels      *map[string]string `tfsdk:"labels" json:"labels,omitempty"`
					} `tfsdk:"metadata" json:"metadata,omitempty"`
					Ports *[]struct {
						Name       *string `tfsdk:"name" json:"name,omitempty"`
						NodePort   *int64  `tfsdk:"node_port" json:"nodePort,omitempty"`
						Port       *int64  `tfsdk:"port" json:"port,omitempty"`
						Protocol   *string `tfsdk:"protocol" json:"protocol,omitempty"`
						TargetPort *string `tfsdk:"target_port" json:"targetPort,omitempty"`
					} `tfsdk:"ports" json:"ports,omitempty"`
					PublishNotReadyAddresses *bool              `tfsdk:"publish_not_ready_addresses" json:"publishNotReadyAddresses,omitempty"`
					Selector                 *map[string]string `tfsdk:"selector" json:"selector,omitempty"`
					SessionAffinity          *string            `tfsdk:"session_affinity" json:"sessionAffinity,omitempty"`
					SessionAffinityConfig    *struct {
						ClientIP *struct {
							TimeoutSeconds *int64 `tfsdk:"timeout_seconds" json:"timeoutSeconds,omitempty"`
						} `tfsdk:"client_ip" json:"clientIP,omitempty"`
					} `tfsdk:"session_affinity_config" json:"sessionAffinityConfig,omitempty"`
					Type *string `tfsdk:"type" json:"type,omitempty"`
				} `tfsdk:"service" json:"service,omitempty"`
			} `tfsdk:"gateway" json:"gateway,omitempty"`
			Istiod *struct {
				Expose *bool `tfsdk:"expose" json:"expose,omitempty"`
			} `tfsdk:"istiod" json:"istiod,omitempty"`
			Webhook *struct {
				Expose *bool `tfsdk:"expose" json:"expose,omitempty"`
			} `tfsdk:"webhook" json:"webhook,omitempty"`
		} `tfsdk:"mesh_expansion" json:"meshExpansion,omitempty"`
		MeshID         *string `tfsdk:"mesh_id" json:"meshID,omitempty"`
		Mode           *string `tfsdk:"mode" json:"mode,omitempty"`
		MountMtlsCerts *bool   `tfsdk:"mount_mtls_certs" json:"mountMtlsCerts,omitempty"`
		NetworkName    *string `tfsdk:"network_name" json:"networkName,omitempty"`
		Proxy          *struct {
			ClusterDomain                   *string `tfsdk:"cluster_domain" json:"clusterDomain,omitempty"`
			ComponentLogLevel               *string `tfsdk:"component_log_level" json:"componentLogLevel,omitempty"`
			EnableCoreDump                  *bool   `tfsdk:"enable_core_dump" json:"enableCoreDump,omitempty"`
			ExcludeIPRanges                 *string `tfsdk:"exclude_ip_ranges" json:"excludeIPRanges,omitempty"`
			ExcludeInboundPorts             *string `tfsdk:"exclude_inbound_ports" json:"excludeInboundPorts,omitempty"`
			ExcludeOutboundPorts            *string `tfsdk:"exclude_outbound_ports" json:"excludeOutboundPorts,omitempty"`
			HoldApplicationUntilProxyStarts *bool   `tfsdk:"hold_application_until_proxy_starts" json:"holdApplicationUntilProxyStarts,omitempty"`
			Image                           *string `tfsdk:"image" json:"image,omitempty"`
			IncludeIPRanges                 *string `tfsdk:"include_ip_ranges" json:"includeIPRanges,omitempty"`
			Lifecycle                       *struct {
				PostStart *struct {
					Exec *struct {
						Command *[]string `tfsdk:"command" json:"command,omitempty"`
					} `tfsdk:"exec" json:"exec,omitempty"`
					HttpGet *struct {
						Host        *string `tfsdk:"host" json:"host,omitempty"`
						HttpHeaders *[]struct {
							Name  *string `tfsdk:"name" json:"name,omitempty"`
							Value *string `tfsdk:"value" json:"value,omitempty"`
						} `tfsdk:"http_headers" json:"httpHeaders,omitempty"`
						Path   *string `tfsdk:"path" json:"path,omitempty"`
						Port   *string `tfsdk:"port" json:"port,omitempty"`
						Scheme *string `tfsdk:"scheme" json:"scheme,omitempty"`
					} `tfsdk:"http_get" json:"httpGet,omitempty"`
					TcpSocket *struct {
						Host *string `tfsdk:"host" json:"host,omitempty"`
						Port *string `tfsdk:"port" json:"port,omitempty"`
					} `tfsdk:"tcp_socket" json:"tcpSocket,omitempty"`
				} `tfsdk:"post_start" json:"postStart,omitempty"`
				PreStop *struct {
					Exec *struct {
						Command *[]string `tfsdk:"command" json:"command,omitempty"`
					} `tfsdk:"exec" json:"exec,omitempty"`
					HttpGet *struct {
						Host        *string `tfsdk:"host" json:"host,omitempty"`
						HttpHeaders *[]struct {
							Name  *string `tfsdk:"name" json:"name,omitempty"`
							Value *string `tfsdk:"value" json:"value,omitempty"`
						} `tfsdk:"http_headers" json:"httpHeaders,omitempty"`
						Path   *string `tfsdk:"path" json:"path,omitempty"`
						Port   *string `tfsdk:"port" json:"port,omitempty"`
						Scheme *string `tfsdk:"scheme" json:"scheme,omitempty"`
					} `tfsdk:"http_get" json:"httpGet,omitempty"`
					TcpSocket *struct {
						Host *string `tfsdk:"host" json:"host,omitempty"`
						Port *string `tfsdk:"port" json:"port,omitempty"`
					} `tfsdk:"tcp_socket" json:"tcpSocket,omitempty"`
				} `tfsdk:"pre_stop" json:"preStop,omitempty"`
			} `tfsdk:"lifecycle" json:"lifecycle,omitempty"`
			LogLevel   *string `tfsdk:"log_level" json:"logLevel,omitempty"`
			Privileged *bool   `tfsdk:"privileged" json:"privileged,omitempty"`
			Resources  *struct {
				Limits   *map[string]string `tfsdk:"limits" json:"limits,omitempty"`
				Requests *map[string]string `tfsdk:"requests" json:"requests,omitempty"`
			} `tfsdk:"resources" json:"resources,omitempty"`
			Tracer *string `tfsdk:"tracer" json:"tracer,omitempty"`
		} `tfsdk:"proxy" json:"proxy,omitempty"`
		ProxyInit *struct {
			Cni *struct {
				BinDir       *string `tfsdk:"bin_dir" json:"binDir,omitempty"`
				Chained      *bool   `tfsdk:"chained" json:"chained,omitempty"`
				ConfDir      *string `tfsdk:"conf_dir" json:"confDir,omitempty"`
				ConfFileName *string `tfsdk:"conf_file_name" json:"confFileName,omitempty"`
				Daemonset    *struct {
					Affinity *struct {
						NodeAffinity *struct {
							PreferredDuringSchedulingIgnoredDuringExecution *[]struct {
								Preference *struct {
									MatchExpressions *[]struct {
										Key      *string   `tfsdk:"key" json:"key,omitempty"`
										Operator *string   `tfsdk:"operator" json:"operator,omitempty"`
										Values   *[]string `tfsdk:"values" json:"values,omitempty"`
									} `tfsdk:"match_expressions" json:"matchExpressions,omitempty"`
									MatchFields *[]struct {
										Key      *string   `tfsdk:"key" json:"key,omitempty"`
										Operator *string   `tfsdk:"operator" json:"operator,omitempty"`
										Values   *[]string `tfsdk:"values" json:"values,omitempty"`
									} `tfsdk:"match_fields" json:"matchFields,omitempty"`
								} `tfsdk:"preference" json:"preference,omitempty"`
								Weight *int64 `tfsdk:"weight" json:"weight,omitempty"`
							} `tfsdk:"preferred_during_scheduling_ignored_during_execution" json:"preferredDuringSchedulingIgnoredDuringExecution,omitempty"`
							RequiredDuringSchedulingIgnoredDuringExecution *struct {
								NodeSelectorTerms *[]struct {
									MatchExpressions *[]struct {
										Key      *string   `tfsdk:"key" json:"key,omitempty"`
										Operator *string   `tfsdk:"operator" json:"operator,omitempty"`
										Values   *[]string `tfsdk:"values" json:"values,omitempty"`
									} `tfsdk:"match_expressions" json:"matchExpressions,omitempty"`
									MatchFields *[]struct {
										Key      *string   `tfsdk:"key" json:"key,omitempty"`
										Operator *string   `tfsdk:"operator" json:"operator,omitempty"`
										Values   *[]string `tfsdk:"values" json:"values,omitempty"`
									} `tfsdk:"match_fields" json:"matchFields,omitempty"`
								} `tfsdk:"node_selector_terms" json:"nodeSelectorTerms,omitempty"`
							} `tfsdk:"required_during_scheduling_ignored_during_execution" json:"requiredDuringSchedulingIgnoredDuringExecution,omitempty"`
						} `tfsdk:"node_affinity" json:"nodeAffinity,omitempty"`
						PodAffinity *struct {
							PreferredDuringSchedulingIgnoredDuringExecution *[]struct {
								PodAffinityTerm *struct {
									LabelSelector *struct {
										MatchExpressions *[]struct {
											Key      *string   `tfsdk:"key" json:"key,omitempty"`
											Operator *string   `tfsdk:"operator" json:"operator,omitempty"`
											Values   *[]string `tfsdk:"values" json:"values,omitempty"`
										} `tfsdk:"match_expressions" json:"matchExpressions,omitempty"`
										MatchLabels *map[string]string `tfsdk:"match_labels" json:"matchLabels,omitempty"`
									} `tfsdk:"label_selector" json:"labelSelector,omitempty"`
									NamespaceSelector *struct {
										MatchExpressions *[]struct {
											Key      *string   `tfsdk:"key" json:"key,omitempty"`
											Operator *string   `tfsdk:"operator" json:"operator,omitempty"`
											Values   *[]string `tfsdk:"values" json:"values,omitempty"`
										} `tfsdk:"match_expressions" json:"matchExpressions,omitempty"`
										MatchLabels *map[string]string `tfsdk:"match_labels" json:"matchLabels,omitempty"`
									} `tfsdk:"namespace_selector" json:"namespaceSelector,omitempty"`
									Namespaces  *[]string `tfsdk:"namespaces" json:"namespaces,omitempty"`
									TopologyKey *string   `tfsdk:"topology_key" json:"topologyKey,omitempty"`
								} `tfsdk:"pod_affinity_term" json:"podAffinityTerm,omitempty"`
								Weight *int64 `tfsdk:"weight" json:"weight,omitempty"`
							} `tfsdk:"preferred_during_scheduling_ignored_during_execution" json:"preferredDuringSchedulingIgnoredDuringExecution,omitempty"`
							RequiredDuringSchedulingIgnoredDuringExecution *[]struct {
								LabelSelector *struct {
									MatchExpressions *[]struct {
										Key      *string   `tfsdk:"key" json:"key,omitempty"`
										Operator *string   `tfsdk:"operator" json:"operator,omitempty"`
										Values   *[]string `tfsdk:"values" json:"values,omitempty"`
									} `tfsdk:"match_expressions" json:"matchExpressions,omitempty"`
									MatchLabels *map[string]string `tfsdk:"match_labels" json:"matchLabels,omitempty"`
								} `tfsdk:"label_selector" json:"labelSelector,omitempty"`
								NamespaceSelector *struct {
									MatchExpressions *[]struct {
										Key      *string   `tfsdk:"key" json:"key,omitempty"`
										Operator *string   `tfsdk:"operator" json:"operator,omitempty"`
										Values   *[]string `tfsdk:"values" json:"values,omitempty"`
									} `tfsdk:"match_expressions" json:"matchExpressions,omitempty"`
									MatchLabels *map[string]string `tfsdk:"match_labels" json:"matchLabels,omitempty"`
								} `tfsdk:"namespace_selector" json:"namespaceSelector,omitempty"`
								Namespaces  *[]string `tfsdk:"namespaces" json:"namespaces,omitempty"`
								TopologyKey *string   `tfsdk:"topology_key" json:"topologyKey,omitempty"`
							} `tfsdk:"required_during_scheduling_ignored_during_execution" json:"requiredDuringSchedulingIgnoredDuringExecution,omitempty"`
						} `tfsdk:"pod_affinity" json:"podAffinity,omitempty"`
						PodAntiAffinity *struct {
							PreferredDuringSchedulingIgnoredDuringExecution *[]struct {
								PodAffinityTerm *struct {
									LabelSelector *struct {
										MatchExpressions *[]struct {
											Key      *string   `tfsdk:"key" json:"key,omitempty"`
											Operator *string   `tfsdk:"operator" json:"operator,omitempty"`
											Values   *[]string `tfsdk:"values" json:"values,omitempty"`
										} `tfsdk:"match_expressions" json:"matchExpressions,omitempty"`
										MatchLabels *map[string]string `tfsdk:"match_labels" json:"matchLabels,omitempty"`
									} `tfsdk:"label_selector" json:"labelSelector,omitempty"`
									NamespaceSelector *struct {
										MatchExpressions *[]struct {
											Key      *string   `tfsdk:"key" json:"key,omitempty"`
											Operator *string   `tfsdk:"operator" json:"operator,omitempty"`
											Values   *[]string `tfsdk:"values" json:"values,omitempty"`
										} `tfsdk:"match_expressions" json:"matchExpressions,omitempty"`
										MatchLabels *map[string]string `tfsdk:"match_labels" json:"matchLabels,omitempty"`
									} `tfsdk:"namespace_selector" json:"namespaceSelector,omitempty"`
									Namespaces  *[]string `tfsdk:"namespaces" json:"namespaces,omitempty"`
									TopologyKey *string   `tfsdk:"topology_key" json:"topologyKey,omitempty"`
								} `tfsdk:"pod_affinity_term" json:"podAffinityTerm,omitempty"`
								Weight *int64 `tfsdk:"weight" json:"weight,omitempty"`
							} `tfsdk:"preferred_during_scheduling_ignored_during_execution" json:"preferredDuringSchedulingIgnoredDuringExecution,omitempty"`
							RequiredDuringSchedulingIgnoredDuringExecution *[]struct {
								LabelSelector *struct {
									MatchExpressions *[]struct {
										Key      *string   `tfsdk:"key" json:"key,omitempty"`
										Operator *string   `tfsdk:"operator" json:"operator,omitempty"`
										Values   *[]string `tfsdk:"values" json:"values,omitempty"`
									} `tfsdk:"match_expressions" json:"matchExpressions,omitempty"`
									MatchLabels *map[string]string `tfsdk:"match_labels" json:"matchLabels,omitempty"`
								} `tfsdk:"label_selector" json:"labelSelector,omitempty"`
								NamespaceSelector *struct {
									MatchExpressions *[]struct {
										Key      *string   `tfsdk:"key" json:"key,omitempty"`
										Operator *string   `tfsdk:"operator" json:"operator,omitempty"`
										Values   *[]string `tfsdk:"values" json:"values,omitempty"`
									} `tfsdk:"match_expressions" json:"matchExpressions,omitempty"`
									MatchLabels *map[string]string `tfsdk:"match_labels" json:"matchLabels,omitempty"`
								} `tfsdk:"namespace_selector" json:"namespaceSelector,omitempty"`
								Namespaces  *[]string `tfsdk:"namespaces" json:"namespaces,omitempty"`
								TopologyKey *string   `tfsdk:"topology_key" json:"topologyKey,omitempty"`
							} `tfsdk:"required_during_scheduling_ignored_during_execution" json:"requiredDuringSchedulingIgnoredDuringExecution,omitempty"`
						} `tfsdk:"pod_anti_affinity" json:"podAntiAffinity,omitempty"`
					} `tfsdk:"affinity" json:"affinity,omitempty"`
					DeploymentStrategy *struct {
						RollingUpdate *struct {
							MaxSurge       *string `tfsdk:"max_surge" json:"maxSurge,omitempty"`
							MaxUnavailable *string `tfsdk:"max_unavailable" json:"maxUnavailable,omitempty"`
						} `tfsdk:"rolling_update" json:"rollingUpdate,omitempty"`
						Type *string `tfsdk:"type" json:"type,omitempty"`
					} `tfsdk:"deployment_strategy" json:"deploymentStrategy,omitempty"`
					Env *[]struct {
						Name      *string `tfsdk:"name" json:"name,omitempty"`
						Value     *string `tfsdk:"value" json:"value,omitempty"`
						ValueFrom *struct {
							ConfigMapKeyRef *struct {
								Key                  *string `tfsdk:"key" json:"key,omitempty"`
								LocalObjectReference *struct {
									Name *string `tfsdk:"name" json:"name,omitempty"`
								} `tfsdk:"local_object_reference" json:"localObjectReference,omitempty"`
								Optional *bool `tfsdk:"optional" json:"optional,omitempty"`
							} `tfsdk:"config_map_key_ref" json:"configMapKeyRef,omitempty"`
							FieldRef *struct {
								ApiVersion *string `tfsdk:"api_version" json:"apiVersion,omitempty"`
								FieldPath  *string `tfsdk:"field_path" json:"fieldPath,omitempty"`
							} `tfsdk:"field_ref" json:"fieldRef,omitempty"`
							ResourceFieldRef *struct {
								ContainerName *string `tfsdk:"container_name" json:"containerName,omitempty"`
								Divisor       *string `tfsdk:"divisor" json:"divisor,omitempty"`
								Resource      *string `tfsdk:"resource" json:"resource,omitempty"`
							} `tfsdk:"resource_field_ref" json:"resourceFieldRef,omitempty"`
							SecretKeyRef *struct {
								Key                  *string `tfsdk:"key" json:"key,omitempty"`
								LocalObjectReference *struct {
									Name *string `tfsdk:"name" json:"name,omitempty"`
								} `tfsdk:"local_object_reference" json:"localObjectReference,omitempty"`
								Optional *bool `tfsdk:"optional" json:"optional,omitempty"`
							} `tfsdk:"secret_key_ref" json:"secretKeyRef,omitempty"`
						} `tfsdk:"value_from" json:"valueFrom,omitempty"`
					} `tfsdk:"env" json:"env,omitempty"`
					Image            *string `tfsdk:"image" json:"image,omitempty"`
					ImagePullPolicy  *string `tfsdk:"image_pull_policy" json:"imagePullPolicy,omitempty"`
					ImagePullSecrets *[]struct {
						Name *string `tfsdk:"name" json:"name,omitempty"`
					} `tfsdk:"image_pull_secrets" json:"imagePullSecrets,omitempty"`
					LivenessProbe *struct {
						Exec *struct {
							Command *[]string `tfsdk:"command" json:"command,omitempty"`
						} `tfsdk:"exec" json:"exec,omitempty"`
						FailureThreshold *int64 `tfsdk:"failure_threshold" json:"failureThreshold,omitempty"`
						Grpc             *struct {
							Port    *int64  `tfsdk:"port" json:"port,omitempty"`
							Service *string `tfsdk:"service" json:"service,omitempty"`
						} `tfsdk:"grpc" json:"grpc,omitempty"`
						HttpGet *struct {
							Host        *string `tfsdk:"host" json:"host,omitempty"`
							HttpHeaders *[]struct {
								Name  *string `tfsdk:"name" json:"name,omitempty"`
								Value *string `tfsdk:"value" json:"value,omitempty"`
							} `tfsdk:"http_headers" json:"httpHeaders,omitempty"`
							Path   *string `tfsdk:"path" json:"path,omitempty"`
							Port   *string `tfsdk:"port" json:"port,omitempty"`
							Scheme *string `tfsdk:"scheme" json:"scheme,omitempty"`
						} `tfsdk:"http_get" json:"httpGet,omitempty"`
						InitialDelaySeconds *int64 `tfsdk:"initial_delay_seconds" json:"initialDelaySeconds,omitempty"`
						PeriodSeconds       *int64 `tfsdk:"period_seconds" json:"periodSeconds,omitempty"`
						SuccessThreshold    *int64 `tfsdk:"success_threshold" json:"successThreshold,omitempty"`
						TcpSocket           *struct {
							Host *string `tfsdk:"host" json:"host,omitempty"`
							Port *string `tfsdk:"port" json:"port,omitempty"`
						} `tfsdk:"tcp_socket" json:"tcpSocket,omitempty"`
						TerminationGracePeriodSeconds *int64 `tfsdk:"termination_grace_period_seconds" json:"terminationGracePeriodSeconds,omitempty"`
						TimeoutSeconds                *int64 `tfsdk:"timeout_seconds" json:"timeoutSeconds,omitempty"`
					} `tfsdk:"liveness_probe" json:"livenessProbe,omitempty"`
					Metadata *struct {
						Annotations *map[string]string `tfsdk:"annotations" json:"annotations,omitempty"`
						Labels      *map[string]string `tfsdk:"labels" json:"labels,omitempty"`
					} `tfsdk:"metadata" json:"metadata,omitempty"`
					NodeSelector        *map[string]string `tfsdk:"node_selector" json:"nodeSelector,omitempty"`
					PodDisruptionBudget *struct {
						MaxUnavailable *string `tfsdk:"max_unavailable" json:"maxUnavailable,omitempty"`
						MinAvailable   *string `tfsdk:"min_available" json:"minAvailable,omitempty"`
					} `tfsdk:"pod_disruption_budget" json:"podDisruptionBudget,omitempty"`
					PodMetadata *struct {
						Annotations *map[string]string `tfsdk:"annotations" json:"annotations,omitempty"`
						Labels      *map[string]string `tfsdk:"labels" json:"labels,omitempty"`
					} `tfsdk:"pod_metadata" json:"podMetadata,omitempty"`
					PodSecurityContext *struct {
						FsGroup             *int64  `tfsdk:"fs_group" json:"fsGroup,omitempty"`
						FsGroupChangePolicy *string `tfsdk:"fs_group_change_policy" json:"fsGroupChangePolicy,omitempty"`
						RunAsGroup          *int64  `tfsdk:"run_as_group" json:"runAsGroup,omitempty"`
						RunAsNonRoot        *bool   `tfsdk:"run_as_non_root" json:"runAsNonRoot,omitempty"`
						RunAsUser           *int64  `tfsdk:"run_as_user" json:"runAsUser,omitempty"`
						SeLinuxOptions      *struct {
							Level *string `tfsdk:"level" json:"level,omitempty"`
							Role  *string `tfsdk:"role" json:"role,omitempty"`
							Type  *string `tfsdk:"type" json:"type,omitempty"`
							User  *string `tfsdk:"user" json:"user,omitempty"`
						} `tfsdk:"se_linux_options" json:"seLinuxOptions,omitempty"`
						SeccompProfile *struct {
							LocalhostProfile *string `tfsdk:"localhost_profile" json:"localhostProfile,omitempty"`
							Type             *string `tfsdk:"type" json:"type,omitempty"`
						} `tfsdk:"seccomp_profile" json:"seccompProfile,omitempty"`
						SupplementalGroups *[]string `tfsdk:"supplemental_groups" json:"supplementalGroups,omitempty"`
						Sysctls            *[]struct {
							Name  *string `tfsdk:"name" json:"name,omitempty"`
							Value *string `tfsdk:"value" json:"value,omitempty"`
						} `tfsdk:"sysctls" json:"sysctls,omitempty"`
						WindowsOptions *struct {
							GmsaCredentialSpec     *string `tfsdk:"gmsa_credential_spec" json:"gmsaCredentialSpec,omitempty"`
							GmsaCredentialSpecName *string `tfsdk:"gmsa_credential_spec_name" json:"gmsaCredentialSpecName,omitempty"`
							HostProcess            *bool   `tfsdk:"host_process" json:"hostProcess,omitempty"`
							RunAsUserName          *string `tfsdk:"run_as_user_name" json:"runAsUserName,omitempty"`
						} `tfsdk:"windows_options" json:"windowsOptions,omitempty"`
					} `tfsdk:"pod_security_context" json:"podSecurityContext,omitempty"`
					PriorityClassName *string `tfsdk:"priority_class_name" json:"priorityClassName,omitempty"`
					ReadinessProbe    *struct {
						Exec *struct {
							Command *[]string `tfsdk:"command" json:"command,omitempty"`
						} `tfsdk:"exec" json:"exec,omitempty"`
						FailureThreshold *int64 `tfsdk:"failure_threshold" json:"failureThreshold,omitempty"`
						Grpc             *struct {
							Port    *int64  `tfsdk:"port" json:"port,omitempty"`
							Service *string `tfsdk:"service" json:"service,omitempty"`
						} `tfsdk:"grpc" json:"grpc,omitempty"`
						HttpGet *struct {
							Host        *string `tfsdk:"host" json:"host,omitempty"`
							HttpHeaders *[]struct {
								Name  *string `tfsdk:"name" json:"name,omitempty"`
								Value *string `tfsdk:"value" json:"value,omitempty"`
							} `tfsdk:"http_headers" json:"httpHeaders,omitempty"`
							Path   *string `tfsdk:"path" json:"path,omitempty"`
							Port   *string `tfsdk:"port" json:"port,omitempty"`
							Scheme *string `tfsdk:"scheme" json:"scheme,omitempty"`
						} `tfsdk:"http_get" json:"httpGet,omitempty"`
						InitialDelaySeconds *int64 `tfsdk:"initial_delay_seconds" json:"initialDelaySeconds,omitempty"`
						PeriodSeconds       *int64 `tfsdk:"period_seconds" json:"periodSeconds,omitempty"`
						SuccessThreshold    *int64 `tfsdk:"success_threshold" json:"successThreshold,omitempty"`
						TcpSocket           *struct {
							Host *string `tfsdk:"host" json:"host,omitempty"`
							Port *string `tfsdk:"port" json:"port,omitempty"`
						} `tfsdk:"tcp_socket" json:"tcpSocket,omitempty"`
						TerminationGracePeriodSeconds *int64 `tfsdk:"termination_grace_period_seconds" json:"terminationGracePeriodSeconds,omitempty"`
						TimeoutSeconds                *int64 `tfsdk:"timeout_seconds" json:"timeoutSeconds,omitempty"`
					} `tfsdk:"readiness_probe" json:"readinessProbe,omitempty"`
					Replicas *struct {
						Count                          *int64 `tfsdk:"count" json:"count,omitempty"`
						Max                            *int64 `tfsdk:"max" json:"max,omitempty"`
						Min                            *int64 `tfsdk:"min" json:"min,omitempty"`
						TargetCPUUtilizationPercentage *int64 `tfsdk:"target_cpu_utilization_percentage" json:"targetCPUUtilizationPercentage,omitempty"`
					} `tfsdk:"replicas" json:"replicas,omitempty"`
					Resources *struct {
						Limits   *map[string]string `tfsdk:"limits" json:"limits,omitempty"`
						Requests *map[string]string `tfsdk:"requests" json:"requests,omitempty"`
					} `tfsdk:"resources" json:"resources,omitempty"`
					SecurityContext *struct {
						AllowPrivilegeEscalation *bool `tfsdk:"allow_privilege_escalation" json:"allowPrivilegeEscalation,omitempty"`
						Capabilities             *struct {
							Add  *[]string `tfsdk:"add" json:"add,omitempty"`
							Drop *[]string `tfsdk:"drop" json:"drop,omitempty"`
						} `tfsdk:"capabilities" json:"capabilities,omitempty"`
						Privileged             *bool   `tfsdk:"privileged" json:"privileged,omitempty"`
						ProcMount              *string `tfsdk:"proc_mount" json:"procMount,omitempty"`
						ReadOnlyRootFilesystem *bool   `tfsdk:"read_only_root_filesystem" json:"readOnlyRootFilesystem,omitempty"`
						RunAsGroup             *int64  `tfsdk:"run_as_group" json:"runAsGroup,omitempty"`
						RunAsNonRoot           *bool   `tfsdk:"run_as_non_root" json:"runAsNonRoot,omitempty"`
						RunAsUser              *int64  `tfsdk:"run_as_user" json:"runAsUser,omitempty"`
						SeLinuxOptions         *struct {
							Level *string `tfsdk:"level" json:"level,omitempty"`
							Role  *string `tfsdk:"role" json:"role,omitempty"`
							Type  *string `tfsdk:"type" json:"type,omitempty"`
							User  *string `tfsdk:"user" json:"user,omitempty"`
						} `tfsdk:"se_linux_options" json:"seLinuxOptions,omitempty"`
						SeccompProfile *struct {
							LocalhostProfile *string `tfsdk:"localhost_profile" json:"localhostProfile,omitempty"`
							Type             *string `tfsdk:"type" json:"type,omitempty"`
						} `tfsdk:"seccomp_profile" json:"seccompProfile,omitempty"`
						WindowsOptions *struct {
							GmsaCredentialSpec     *string `tfsdk:"gmsa_credential_spec" json:"gmsaCredentialSpec,omitempty"`
							GmsaCredentialSpecName *string `tfsdk:"gmsa_credential_spec_name" json:"gmsaCredentialSpecName,omitempty"`
							HostProcess            *bool   `tfsdk:"host_process" json:"hostProcess,omitempty"`
							RunAsUserName          *string `tfsdk:"run_as_user_name" json:"runAsUserName,omitempty"`
						} `tfsdk:"windows_options" json:"windowsOptions,omitempty"`
					} `tfsdk:"security_context" json:"securityContext,omitempty"`
					Tolerations *[]struct {
						Effect            *string `tfsdk:"effect" json:"effect,omitempty"`
						Key               *string `tfsdk:"key" json:"key,omitempty"`
						Operator          *string `tfsdk:"operator" json:"operator,omitempty"`
						TolerationSeconds *int64  `tfsdk:"toleration_seconds" json:"tolerationSeconds,omitempty"`
						Value             *string `tfsdk:"value" json:"value,omitempty"`
					} `tfsdk:"tolerations" json:"tolerations,omitempty"`
					TopologySpreadConstraints *[]struct {
						LabelSelector *struct {
							MatchExpressions *[]struct {
								Key      *string   `tfsdk:"key" json:"key,omitempty"`
								Operator *string   `tfsdk:"operator" json:"operator,omitempty"`
								Values   *[]string `tfsdk:"values" json:"values,omitempty"`
							} `tfsdk:"match_expressions" json:"matchExpressions,omitempty"`
							MatchLabels *map[string]string `tfsdk:"match_labels" json:"matchLabels,omitempty"`
						} `tfsdk:"label_selector" json:"labelSelector,omitempty"`
						MaxSkew           *int64  `tfsdk:"max_skew" json:"maxSkew,omitempty"`
						TopologyKey       *string `tfsdk:"topology_key" json:"topologyKey,omitempty"`
						WhenUnsatisfiable *string `tfsdk:"when_unsatisfiable" json:"whenUnsatisfiable,omitempty"`
					} `tfsdk:"topology_spread_constraints" json:"topologySpreadConstraints,omitempty"`
					VolumeMounts *[]struct {
						MountPath        *string `tfsdk:"mount_path" json:"mountPath,omitempty"`
						MountPropagation *string `tfsdk:"mount_propagation" json:"mountPropagation,omitempty"`
						Name             *string `tfsdk:"name" json:"name,omitempty"`
						ReadOnly         *bool   `tfsdk:"read_only" json:"readOnly,omitempty"`
						SubPath          *string `tfsdk:"sub_path" json:"subPath,omitempty"`
						SubPathExpr      *string `tfsdk:"sub_path_expr" json:"subPathExpr,omitempty"`
					} `tfsdk:"volume_mounts" json:"volumeMounts,omitempty"`
					Volumes *[]struct {
						Name         *string `tfsdk:"name" json:"name,omitempty"`
						VolumeSource *struct {
							AwsElasticBlockStore *struct {
								FsType    *string `tfsdk:"fs_type" json:"fsType,omitempty"`
								Partition *int64  `tfsdk:"partition" json:"partition,omitempty"`
								ReadOnly  *bool   `tfsdk:"read_only" json:"readOnly,omitempty"`
								VolumeID  *string `tfsdk:"volume_id" json:"volumeID,omitempty"`
							} `tfsdk:"aws_elastic_block_store" json:"awsElasticBlockStore,omitempty"`
							AzureDisk *struct {
								CachingMode *string `tfsdk:"caching_mode" json:"cachingMode,omitempty"`
								DiskName    *string `tfsdk:"disk_name" json:"diskName,omitempty"`
								DiskURI     *string `tfsdk:"disk_uri" json:"diskURI,omitempty"`
								FsType      *string `tfsdk:"fs_type" json:"fsType,omitempty"`
								Kind        *string `tfsdk:"kind" json:"kind,omitempty"`
								ReadOnly    *bool   `tfsdk:"read_only" json:"readOnly,omitempty"`
							} `tfsdk:"azure_disk" json:"azureDisk,omitempty"`
							AzureFile *struct {
								ReadOnly   *bool   `tfsdk:"read_only" json:"readOnly,omitempty"`
								SecretName *string `tfsdk:"secret_name" json:"secretName,omitempty"`
								ShareName  *string `tfsdk:"share_name" json:"shareName,omitempty"`
							} `tfsdk:"azure_file" json:"azureFile,omitempty"`
							Cephfs *struct {
								Monitors   *[]string `tfsdk:"monitors" json:"monitors,omitempty"`
								Path       *string   `tfsdk:"path" json:"path,omitempty"`
								ReadOnly   *bool     `tfsdk:"read_only" json:"readOnly,omitempty"`
								SecretFile *string   `tfsdk:"secret_file" json:"secretFile,omitempty"`
								SecretRef  *struct {
									Name *string `tfsdk:"name" json:"name,omitempty"`
								} `tfsdk:"secret_ref" json:"secretRef,omitempty"`
								User *string `tfsdk:"user" json:"user,omitempty"`
							} `tfsdk:"cephfs" json:"cephfs,omitempty"`
							Cinder *struct {
								FsType    *string `tfsdk:"fs_type" json:"fsType,omitempty"`
								ReadOnly  *bool   `tfsdk:"read_only" json:"readOnly,omitempty"`
								SecretRef *struct {
									Name *string `tfsdk:"name" json:"name,omitempty"`
								} `tfsdk:"secret_ref" json:"secretRef,omitempty"`
								VolumeID *string `tfsdk:"volume_id" json:"volumeID,omitempty"`
							} `tfsdk:"cinder" json:"cinder,omitempty"`
							ConfigMap *struct {
								DefaultMode *int64 `tfsdk:"default_mode" json:"defaultMode,omitempty"`
								Items       *[]struct {
									Key  *string `tfsdk:"key" json:"key,omitempty"`
									Mode *int64  `tfsdk:"mode" json:"mode,omitempty"`
									Path *string `tfsdk:"path" json:"path,omitempty"`
								} `tfsdk:"items" json:"items,omitempty"`
								LocalObjectReference *struct {
									Name *string `tfsdk:"name" json:"name,omitempty"`
								} `tfsdk:"local_object_reference" json:"localObjectReference,omitempty"`
								Optional *bool `tfsdk:"optional" json:"optional,omitempty"`
							} `tfsdk:"config_map" json:"configMap,omitempty"`
							Csi *struct {
								Driver               *string `tfsdk:"driver" json:"driver,omitempty"`
								FsType               *string `tfsdk:"fs_type" json:"fsType,omitempty"`
								NodePublishSecretRef *struct {
									Name *string `tfsdk:"name" json:"name,omitempty"`
								} `tfsdk:"node_publish_secret_ref" json:"nodePublishSecretRef,omitempty"`
								ReadOnly         *bool              `tfsdk:"read_only" json:"readOnly,omitempty"`
								VolumeAttributes *map[string]string `tfsdk:"volume_attributes" json:"volumeAttributes,omitempty"`
							} `tfsdk:"csi" json:"csi,omitempty"`
							DownwardAPI *struct {
								DefaultMode *int64 `tfsdk:"default_mode" json:"defaultMode,omitempty"`
								Items       *[]struct {
									FieldRef *struct {
										ApiVersion *string `tfsdk:"api_version" json:"apiVersion,omitempty"`
										FieldPath  *string `tfsdk:"field_path" json:"fieldPath,omitempty"`
									} `tfsdk:"field_ref" json:"fieldRef,omitempty"`
									Mode             *int64  `tfsdk:"mode" json:"mode,omitempty"`
									Path             *string `tfsdk:"path" json:"path,omitempty"`
									ResourceFieldRef *struct {
										ContainerName *string `tfsdk:"container_name" json:"containerName,omitempty"`
										Divisor       *string `tfsdk:"divisor" json:"divisor,omitempty"`
										Resource      *string `tfsdk:"resource" json:"resource,omitempty"`
									} `tfsdk:"resource_field_ref" json:"resourceFieldRef,omitempty"`
								} `tfsdk:"items" json:"items,omitempty"`
							} `tfsdk:"downward_api" json:"downwardAPI,omitempty"`
							EmptyDir *struct {
								Medium    *string `tfsdk:"medium" json:"medium,omitempty"`
								SizeLimit *string `tfsdk:"size_limit" json:"sizeLimit,omitempty"`
							} `tfsdk:"empty_dir" json:"emptyDir,omitempty"`
							Ephemeral *struct {
								VolumeClaimTemplate *struct {
									Metadata *struct {
										Annotations       *map[string]string `tfsdk:"annotations" json:"annotations,omitempty"`
										ClusterName       *string            `tfsdk:"cluster_name" json:"clusterName,omitempty"`
										CreationTimestamp *struct {
											Nanos   *int64 `tfsdk:"nanos" json:"nanos,omitempty"`
											Seconds *int64 `tfsdk:"seconds" json:"seconds,omitempty"`
										} `tfsdk:"creation_timestamp" json:"creationTimestamp,omitempty"`
										DeletionGracePeriodSeconds *int64 `tfsdk:"deletion_grace_period_seconds" json:"deletionGracePeriodSeconds,omitempty"`
										DeletionTimestamp          *struct {
											Nanos   *int64 `tfsdk:"nanos" json:"nanos,omitempty"`
											Seconds *int64 `tfsdk:"seconds" json:"seconds,omitempty"`
										} `tfsdk:"deletion_timestamp" json:"deletionTimestamp,omitempty"`
										Finalizers    *[]string          `tfsdk:"finalizers" json:"finalizers,omitempty"`
										GenerateName  *string            `tfsdk:"generate_name" json:"generateName,omitempty"`
										Generation    *int64             `tfsdk:"generation" json:"generation,omitempty"`
										Labels        *map[string]string `tfsdk:"labels" json:"labels,omitempty"`
										ManagedFields *[]struct {
											ApiVersion *string `tfsdk:"api_version" json:"apiVersion,omitempty"`
											FieldsType *string `tfsdk:"fields_type" json:"fieldsType,omitempty"`
											FieldsV1   *struct {
												Raw *string `tfsdk:"raw" json:"Raw,omitempty"`
											} `tfsdk:"fields_v1" json:"fieldsV1,omitempty"`
											Manager     *string `tfsdk:"manager" json:"manager,omitempty"`
											Operation   *string `tfsdk:"operation" json:"operation,omitempty"`
											Subresource *string `tfsdk:"subresource" json:"subresource,omitempty"`
											Time        *struct {
												Nanos   *int64 `tfsdk:"nanos" json:"nanos,omitempty"`
												Seconds *int64 `tfsdk:"seconds" json:"seconds,omitempty"`
											} `tfsdk:"time" json:"time,omitempty"`
										} `tfsdk:"managed_fields" json:"managedFields,omitempty"`
										Name            *string `tfsdk:"name" json:"name,omitempty"`
										Namespace       *string `tfsdk:"namespace" json:"namespace,omitempty"`
										OwnerReferences *[]struct {
											ApiVersion         *string `tfsdk:"api_version" json:"apiVersion,omitempty"`
											BlockOwnerDeletion *bool   `tfsdk:"block_owner_deletion" json:"blockOwnerDeletion,omitempty"`
											Controller         *bool   `tfsdk:"controller" json:"controller,omitempty"`
											Kind               *string `tfsdk:"kind" json:"kind,omitempty"`
											Name               *string `tfsdk:"name" json:"name,omitempty"`
											Uid                *string `tfsdk:"uid" json:"uid,omitempty"`
										} `tfsdk:"owner_references" json:"ownerReferences,omitempty"`
										ResourceVersion *string `tfsdk:"resource_version" json:"resourceVersion,omitempty"`
										SelfLink        *string `tfsdk:"self_link" json:"selfLink,omitempty"`
										Uid             *string `tfsdk:"uid" json:"uid,omitempty"`
									} `tfsdk:"metadata" json:"metadata,omitempty"`
									Spec *struct {
										AccessModes *[]string `tfsdk:"access_modes" json:"accessModes,omitempty"`
										DataSource  *struct {
											ApiGroup *string `tfsdk:"api_group" json:"apiGroup,omitempty"`
											Kind     *string `tfsdk:"kind" json:"kind,omitempty"`
											Name     *string `tfsdk:"name" json:"name,omitempty"`
										} `tfsdk:"data_source" json:"dataSource,omitempty"`
										DataSourceRef *struct {
											ApiGroup *string `tfsdk:"api_group" json:"apiGroup,omitempty"`
											Kind     *string `tfsdk:"kind" json:"kind,omitempty"`
											Name     *string `tfsdk:"name" json:"name,omitempty"`
										} `tfsdk:"data_source_ref" json:"dataSourceRef,omitempty"`
										Resources *struct {
											Limits *struct {
												String *string `tfsdk:"string" json:"string,omitempty"`
											} `tfsdk:"limits" json:"limits,omitempty"`
											Requests *struct {
												String *string `tfsdk:"string" json:"string,omitempty"`
											} `tfsdk:"requests" json:"requests,omitempty"`
										} `tfsdk:"resources" json:"resources,omitempty"`
										Selector *struct {
											MatchExpressions *[]struct {
												Key      *string   `tfsdk:"key" json:"key,omitempty"`
												Operator *string   `tfsdk:"operator" json:"operator,omitempty"`
												Values   *[]string `tfsdk:"values" json:"values,omitempty"`
											} `tfsdk:"match_expressions" json:"matchExpressions,omitempty"`
											MatchLabels *map[string]string `tfsdk:"match_labels" json:"matchLabels,omitempty"`
										} `tfsdk:"selector" json:"selector,omitempty"`
										StorageClassName *string `tfsdk:"storage_class_name" json:"storageClassName,omitempty"`
										VolumeMode       *string `tfsdk:"volume_mode" json:"volumeMode,omitempty"`
										VolumeName       *string `tfsdk:"volume_name" json:"volumeName,omitempty"`
									} `tfsdk:"spec" json:"spec,omitempty"`
								} `tfsdk:"volume_claim_template" json:"volumeClaimTemplate,omitempty"`
							} `tfsdk:"ephemeral" json:"ephemeral,omitempty"`
							Fc *struct {
								FsType     *string   `tfsdk:"fs_type" json:"fsType,omitempty"`
								Lun        *int64    `tfsdk:"lun" json:"lun,omitempty"`
								ReadOnly   *bool     `tfsdk:"read_only" json:"readOnly,omitempty"`
								TargetWWNs *[]string `tfsdk:"target_ww_ns" json:"targetWWNs,omitempty"`
								Wwids      *[]string `tfsdk:"wwids" json:"wwids,omitempty"`
							} `tfsdk:"fc" json:"fc,omitempty"`
							FlexVolume *struct {
								Driver    *string            `tfsdk:"driver" json:"driver,omitempty"`
								FsType    *string            `tfsdk:"fs_type" json:"fsType,omitempty"`
								Options   *map[string]string `tfsdk:"options" json:"options,omitempty"`
								ReadOnly  *bool              `tfsdk:"read_only" json:"readOnly,omitempty"`
								SecretRef *struct {
									Name *string `tfsdk:"name" json:"name,omitempty"`
								} `tfsdk:"secret_ref" json:"secretRef,omitempty"`
							} `tfsdk:"flex_volume" json:"flexVolume,omitempty"`
							Flocker *struct {
								DatasetName *string `tfsdk:"dataset_name" json:"datasetName,omitempty"`
								DatasetUUID *string `tfsdk:"dataset_uuid" json:"datasetUUID,omitempty"`
							} `tfsdk:"flocker" json:"flocker,omitempty"`
							GcePersistentDisk *struct {
								FsType    *string `tfsdk:"fs_type" json:"fsType,omitempty"`
								Partition *int64  `tfsdk:"partition" json:"partition,omitempty"`
								PdName    *string `tfsdk:"pd_name" json:"pdName,omitempty"`
								ReadOnly  *bool   `tfsdk:"read_only" json:"readOnly,omitempty"`
							} `tfsdk:"gce_persistent_disk" json:"gcePersistentDisk,omitempty"`
							GitRepo *struct {
								Directory  *string `tfsdk:"directory" json:"directory,omitempty"`
								Repository *string `tfsdk:"repository" json:"repository,omitempty"`
								Revision   *string `tfsdk:"revision" json:"revision,omitempty"`
							} `tfsdk:"git_repo" json:"gitRepo,omitempty"`
							Glusterfs *struct {
								Endpoints *string `tfsdk:"endpoints" json:"endpoints,omitempty"`
								Path      *string `tfsdk:"path" json:"path,omitempty"`
								ReadOnly  *bool   `tfsdk:"read_only" json:"readOnly,omitempty"`
							} `tfsdk:"glusterfs" json:"glusterfs,omitempty"`
							HostPath *struct {
								Path *string `tfsdk:"path" json:"path,omitempty"`
								Type *string `tfsdk:"type" json:"type,omitempty"`
							} `tfsdk:"host_path" json:"hostPath,omitempty"`
							Iscsi *struct {
								ChapAuthDiscovery *bool     `tfsdk:"chap_auth_discovery" json:"chapAuthDiscovery,omitempty"`
								ChapAuthSession   *bool     `tfsdk:"chap_auth_session" json:"chapAuthSession,omitempty"`
								FsType            *string   `tfsdk:"fs_type" json:"fsType,omitempty"`
								InitiatorName     *string   `tfsdk:"initiator_name" json:"initiatorName,omitempty"`
								Iqn               *string   `tfsdk:"iqn" json:"iqn,omitempty"`
								IscsiInterface    *string   `tfsdk:"iscsi_interface" json:"iscsiInterface,omitempty"`
								Lun               *int64    `tfsdk:"lun" json:"lun,omitempty"`
								Portals           *[]string `tfsdk:"portals" json:"portals,omitempty"`
								ReadOnly          *bool     `tfsdk:"read_only" json:"readOnly,omitempty"`
								SecretRef         *struct {
									Name *string `tfsdk:"name" json:"name,omitempty"`
								} `tfsdk:"secret_ref" json:"secretRef,omitempty"`
								TargetPortal *string `tfsdk:"target_portal" json:"targetPortal,omitempty"`
							} `tfsdk:"iscsi" json:"iscsi,omitempty"`
							Nfs *struct {
								Path     *string `tfsdk:"path" json:"path,omitempty"`
								ReadOnly *bool   `tfsdk:"read_only" json:"readOnly,omitempty"`
								Server   *string `tfsdk:"server" json:"server,omitempty"`
							} `tfsdk:"nfs" json:"nfs,omitempty"`
							PersistentVolumeClaim *struct {
								ClaimName *string `tfsdk:"claim_name" json:"claimName,omitempty"`
								ReadOnly  *bool   `tfsdk:"read_only" json:"readOnly,omitempty"`
							} `tfsdk:"persistent_volume_claim" json:"persistentVolumeClaim,omitempty"`
							PhotonPersistentDisk *struct {
								FsType *string `tfsdk:"fs_type" json:"fsType,omitempty"`
								PdID   *string `tfsdk:"pd_id" json:"pdID,omitempty"`
							} `tfsdk:"photon_persistent_disk" json:"photonPersistentDisk,omitempty"`
							PortworxVolume *struct {
								FsType   *string `tfsdk:"fs_type" json:"fsType,omitempty"`
								ReadOnly *bool   `tfsdk:"read_only" json:"readOnly,omitempty"`
								VolumeID *string `tfsdk:"volume_id" json:"volumeID,omitempty"`
							} `tfsdk:"portworx_volume" json:"portworxVolume,omitempty"`
							Projected *struct {
								DefaultMode *int64 `tfsdk:"default_mode" json:"defaultMode,omitempty"`
								Sources     *[]struct {
									ConfigMap *struct {
										Items *[]struct {
											Key  *string `tfsdk:"key" json:"key,omitempty"`
											Mode *int64  `tfsdk:"mode" json:"mode,omitempty"`
											Path *string `tfsdk:"path" json:"path,omitempty"`
										} `tfsdk:"items" json:"items,omitempty"`
										LocalObjectReference *struct {
											Name *string `tfsdk:"name" json:"name,omitempty"`
										} `tfsdk:"local_object_reference" json:"localObjectReference,omitempty"`
										Optional *bool `tfsdk:"optional" json:"optional,omitempty"`
									} `tfsdk:"config_map" json:"configMap,omitempty"`
									DownwardAPI *struct {
										Items *[]struct {
											FieldRef *struct {
												ApiVersion *string `tfsdk:"api_version" json:"apiVersion,omitempty"`
												FieldPath  *string `tfsdk:"field_path" json:"fieldPath,omitempty"`
											} `tfsdk:"field_ref" json:"fieldRef,omitempty"`
											Mode             *int64  `tfsdk:"mode" json:"mode,omitempty"`
											Path             *string `tfsdk:"path" json:"path,omitempty"`
											ResourceFieldRef *struct {
												ContainerName *string `tfsdk:"container_name" json:"containerName,omitempty"`
												Divisor       *string `tfsdk:"divisor" json:"divisor,omitempty"`
												Resource      *string `tfsdk:"resource" json:"resource,omitempty"`
											} `tfsdk:"resource_field_ref" json:"resourceFieldRef,omitempty"`
										} `tfsdk:"items" json:"items,omitempty"`
									} `tfsdk:"downward_api" json:"downwardAPI,omitempty"`
									Secret *struct {
										Items *[]struct {
											Key  *string `tfsdk:"key" json:"key,omitempty"`
											Mode *int64  `tfsdk:"mode" json:"mode,omitempty"`
											Path *string `tfsdk:"path" json:"path,omitempty"`
										} `tfsdk:"items" json:"items,omitempty"`
										LocalObjectReference *struct {
											Name *string `tfsdk:"name" json:"name,omitempty"`
										} `tfsdk:"local_object_reference" json:"localObjectReference,omitempty"`
										Optional *bool `tfsdk:"optional" json:"optional,omitempty"`
									} `tfsdk:"secret" json:"secret,omitempty"`
									ServiceAccountToken *struct {
										Audience          *string `tfsdk:"audience" json:"audience,omitempty"`
										ExpirationSeconds *int64  `tfsdk:"expiration_seconds" json:"expirationSeconds,omitempty"`
										Path              *string `tfsdk:"path" json:"path,omitempty"`
									} `tfsdk:"service_account_token" json:"serviceAccountToken,omitempty"`
								} `tfsdk:"sources" json:"sources,omitempty"`
							} `tfsdk:"projected" json:"projected,omitempty"`
							Quobyte *struct {
								Group    *string `tfsdk:"group" json:"group,omitempty"`
								ReadOnly *bool   `tfsdk:"read_only" json:"readOnly,omitempty"`
								Registry *string `tfsdk:"registry" json:"registry,omitempty"`
								Tenant   *string `tfsdk:"tenant" json:"tenant,omitempty"`
								User     *string `tfsdk:"user" json:"user,omitempty"`
								Volume   *string `tfsdk:"volume" json:"volume,omitempty"`
							} `tfsdk:"quobyte" json:"quobyte,omitempty"`
							Rbd *struct {
								FsType    *string   `tfsdk:"fs_type" json:"fsType,omitempty"`
								Image     *string   `tfsdk:"image" json:"image,omitempty"`
								Keyring   *string   `tfsdk:"keyring" json:"keyring,omitempty"`
								Monitors  *[]string `tfsdk:"monitors" json:"monitors,omitempty"`
								Pool      *string   `tfsdk:"pool" json:"pool,omitempty"`
								ReadOnly  *bool     `tfsdk:"read_only" json:"readOnly,omitempty"`
								SecretRef *struct {
									Name *string `tfsdk:"name" json:"name,omitempty"`
								} `tfsdk:"secret_ref" json:"secretRef,omitempty"`
								User *string `tfsdk:"user" json:"user,omitempty"`
							} `tfsdk:"rbd" json:"rbd,omitempty"`
							ScaleIO *struct {
								FsType           *string `tfsdk:"fs_type" json:"fsType,omitempty"`
								Gateway          *string `tfsdk:"gateway" json:"gateway,omitempty"`
								ProtectionDomain *string `tfsdk:"protection_domain" json:"protectionDomain,omitempty"`
								ReadOnly         *bool   `tfsdk:"read_only" json:"readOnly,omitempty"`
								SecretRef        *struct {
									Name *string `tfsdk:"name" json:"name,omitempty"`
								} `tfsdk:"secret_ref" json:"secretRef,omitempty"`
								SslEnabled  *bool   `tfsdk:"ssl_enabled" json:"sslEnabled,omitempty"`
								StorageMode *string `tfsdk:"storage_mode" json:"storageMode,omitempty"`
								StoragePool *string `tfsdk:"storage_pool" json:"storagePool,omitempty"`
								System      *string `tfsdk:"system" json:"system,omitempty"`
								VolumeName  *string `tfsdk:"volume_name" json:"volumeName,omitempty"`
							} `tfsdk:"scale_io" json:"scaleIO,omitempty"`
							Secret *struct {
								DefaultMode *int64 `tfsdk:"default_mode" json:"defaultMode,omitempty"`
								Items       *[]struct {
									Key  *string `tfsdk:"key" json:"key,omitempty"`
									Mode *int64  `tfsdk:"mode" json:"mode,omitempty"`
									Path *string `tfsdk:"path" json:"path,omitempty"`
								} `tfsdk:"items" json:"items,omitempty"`
								Optional   *bool   `tfsdk:"optional" json:"optional,omitempty"`
								SecretName *string `tfsdk:"secret_name" json:"secretName,omitempty"`
							} `tfsdk:"secret" json:"secret,omitempty"`
							Storageos *struct {
								FsType    *string `tfsdk:"fs_type" json:"fsType,omitempty"`
								ReadOnly  *bool   `tfsdk:"read_only" json:"readOnly,omitempty"`
								SecretRef *struct {
									Name *string `tfsdk:"name" json:"name,omitempty"`
								} `tfsdk:"secret_ref" json:"secretRef,omitempty"`
								VolumeName      *string `tfsdk:"volume_name" json:"volumeName,omitempty"`
								VolumeNamespace *string `tfsdk:"volume_namespace" json:"volumeNamespace,omitempty"`
							} `tfsdk:"storageos" json:"storageos,omitempty"`
							VsphereVolume *struct {
								FsType            *string `tfsdk:"fs_type" json:"fsType,omitempty"`
								StoragePolicyID   *string `tfsdk:"storage_policy_id" json:"storagePolicyID,omitempty"`
								StoragePolicyName *string `tfsdk:"storage_policy_name" json:"storagePolicyName,omitempty"`
								VolumePath        *string `tfsdk:"volume_path" json:"volumePath,omitempty"`
							} `tfsdk:"vsphere_volume" json:"vsphereVolume,omitempty"`
						} `tfsdk:"volume_source" json:"volumeSource,omitempty"`
					} `tfsdk:"volumes" json:"volumes,omitempty"`
				} `tfsdk:"daemonset" json:"daemonset,omitempty"`
				Enabled            *bool     `tfsdk:"enabled" json:"enabled,omitempty"`
				ExcludeNamespaces  *[]string `tfsdk:"exclude_namespaces" json:"excludeNamespaces,omitempty"`
				IncludeNamespaces  *[]string `tfsdk:"include_namespaces" json:"includeNamespaces,omitempty"`
				LogLevel           *string   `tfsdk:"log_level" json:"logLevel,omitempty"`
				PspClusterRoleName *string   `tfsdk:"psp_cluster_role_name" json:"pspClusterRoleName,omitempty"`
				Repair             *struct {
					BrokenPodLabelKey   *string `tfsdk:"broken_pod_label_key" json:"brokenPodLabelKey,omitempty"`
					BrokenPodLabelValue *string `tfsdk:"broken_pod_label_value" json:"brokenPodLabelValue,omitempty"`
					DeletePods          *bool   `tfsdk:"delete_pods" json:"deletePods,omitempty"`
					Enabled             *bool   `tfsdk:"enabled" json:"enabled,omitempty"`
					InitContainerName   *string `tfsdk:"init_container_name" json:"initContainerName,omitempty"`
					LabelPods           *bool   `tfsdk:"label_pods" json:"labelPods,omitempty"`
				} `tfsdk:"repair" json:"repair,omitempty"`
				ResourceQuotas *struct {
					Enabled         *bool     `tfsdk:"enabled" json:"enabled,omitempty"`
					Pods            *string   `tfsdk:"pods" json:"pods,omitempty"`
					PriorityClasses *[]string `tfsdk:"priority_classes" json:"priorityClasses,omitempty"`
				} `tfsdk:"resource_quotas" json:"resourceQuotas,omitempty"`
				Taint *struct {
					Container *struct {
						Env *[]struct {
							Name      *string `tfsdk:"name" json:"name,omitempty"`
							Value     *string `tfsdk:"value" json:"value,omitempty"`
							ValueFrom *struct {
								ConfigMapKeyRef *struct {
									Key                  *string `tfsdk:"key" json:"key,omitempty"`
									LocalObjectReference *struct {
										Name *string `tfsdk:"name" json:"name,omitempty"`
									} `tfsdk:"local_object_reference" json:"localObjectReference,omitempty"`
									Optional *bool `tfsdk:"optional" json:"optional,omitempty"`
								} `tfsdk:"config_map_key_ref" json:"configMapKeyRef,omitempty"`
								FieldRef *struct {
									ApiVersion *string `tfsdk:"api_version" json:"apiVersion,omitempty"`
									FieldPath  *string `tfsdk:"field_path" json:"fieldPath,omitempty"`
								} `tfsdk:"field_ref" json:"fieldRef,omitempty"`
								ResourceFieldRef *struct {
									ContainerName *string `tfsdk:"container_name" json:"containerName,omitempty"`
									Divisor       *string `tfsdk:"divisor" json:"divisor,omitempty"`
									Resource      *string `tfsdk:"resource" json:"resource,omitempty"`
								} `tfsdk:"resource_field_ref" json:"resourceFieldRef,omitempty"`
								SecretKeyRef *struct {
									Key                  *string `tfsdk:"key" json:"key,omitempty"`
									LocalObjectReference *struct {
										Name *string `tfsdk:"name" json:"name,omitempty"`
									} `tfsdk:"local_object_reference" json:"localObjectReference,omitempty"`
									Optional *bool `tfsdk:"optional" json:"optional,omitempty"`
								} `tfsdk:"secret_key_ref" json:"secretKeyRef,omitempty"`
							} `tfsdk:"value_from" json:"valueFrom,omitempty"`
						} `tfsdk:"env" json:"env,omitempty"`
						Image     *string `tfsdk:"image" json:"image,omitempty"`
						Resources *struct {
							Limits   *map[string]string `tfsdk:"limits" json:"limits,omitempty"`
							Requests *map[string]string `tfsdk:"requests" json:"requests,omitempty"`
						} `tfsdk:"resources" json:"resources,omitempty"`
						SecurityContext *struct {
							AllowPrivilegeEscalation *bool `tfsdk:"allow_privilege_escalation" json:"allowPrivilegeEscalation,omitempty"`
							Capabilities             *struct {
								Add  *[]string `tfsdk:"add" json:"add,omitempty"`
								Drop *[]string `tfsdk:"drop" json:"drop,omitempty"`
							} `tfsdk:"capabilities" json:"capabilities,omitempty"`
							Privileged             *bool   `tfsdk:"privileged" json:"privileged,omitempty"`
							ProcMount              *string `tfsdk:"proc_mount" json:"procMount,omitempty"`
							ReadOnlyRootFilesystem *bool   `tfsdk:"read_only_root_filesystem" json:"readOnlyRootFilesystem,omitempty"`
							RunAsGroup             *int64  `tfsdk:"run_as_group" json:"runAsGroup,omitempty"`
							RunAsNonRoot           *bool   `tfsdk:"run_as_non_root" json:"runAsNonRoot,omitempty"`
							RunAsUser              *int64  `tfsdk:"run_as_user" json:"runAsUser,omitempty"`
							SeLinuxOptions         *struct {
								Level *string `tfsdk:"level" json:"level,omitempty"`
								Role  *string `tfsdk:"role" json:"role,omitempty"`
								Type  *string `tfsdk:"type" json:"type,omitempty"`
								User  *string `tfsdk:"user" json:"user,omitempty"`
							} `tfsdk:"se_linux_options" json:"seLinuxOptions,omitempty"`
							SeccompProfile *struct {
								LocalhostProfile *string `tfsdk:"localhost_profile" json:"localhostProfile,omitempty"`
								Type             *string `tfsdk:"type" json:"type,omitempty"`
							} `tfsdk:"seccomp_profile" json:"seccompProfile,omitempty"`
							WindowsOptions *struct {
								GmsaCredentialSpec     *string `tfsdk:"gmsa_credential_spec" json:"gmsaCredentialSpec,omitempty"`
								GmsaCredentialSpecName *string `tfsdk:"gmsa_credential_spec_name" json:"gmsaCredentialSpecName,omitempty"`
								HostProcess            *bool   `tfsdk:"host_process" json:"hostProcess,omitempty"`
								RunAsUserName          *string `tfsdk:"run_as_user_name" json:"runAsUserName,omitempty"`
							} `tfsdk:"windows_options" json:"windowsOptions,omitempty"`
						} `tfsdk:"security_context" json:"securityContext,omitempty"`
						VolumeMounts *[]struct {
							MountPath        *string `tfsdk:"mount_path" json:"mountPath,omitempty"`
							MountPropagation *string `tfsdk:"mount_propagation" json:"mountPropagation,omitempty"`
							Name             *string `tfsdk:"name" json:"name,omitempty"`
							ReadOnly         *bool   `tfsdk:"read_only" json:"readOnly,omitempty"`
							SubPath          *string `tfsdk:"sub_path" json:"subPath,omitempty"`
							SubPathExpr      *string `tfsdk:"sub_path_expr" json:"subPathExpr,omitempty"`
						} `tfsdk:"volume_mounts" json:"volumeMounts,omitempty"`
					} `tfsdk:"container" json:"container,omitempty"`
					Enabled *bool `tfsdk:"enabled" json:"enabled,omitempty"`
				} `tfsdk:"taint" json:"taint,omitempty"`
			} `tfsdk:"cni" json:"cni,omitempty"`
			Image     *string `tfsdk:"image" json:"image,omitempty"`
			Resources *struct {
				Limits   *map[string]string `tfsdk:"limits" json:"limits,omitempty"`
				Requests *map[string]string `tfsdk:"requests" json:"requests,omitempty"`
			} `tfsdk:"resources" json:"resources,omitempty"`
		} `tfsdk:"proxy_init" json:"proxyInit,omitempty"`
		ProxyWasm *struct {
			Enabled *bool `tfsdk:"enabled" json:"enabled,omitempty"`
		} `tfsdk:"proxy_wasm" json:"proxyWasm,omitempty"`
		Sds *struct {
			TokenAudience *string `tfsdk:"token_audience" json:"tokenAudience,omitempty"`
		} `tfsdk:"sds" json:"sds,omitempty"`
		SidecarInjector *struct {
			Deployment *struct {
				Affinity *struct {
					NodeAffinity *struct {
						PreferredDuringSchedulingIgnoredDuringExecution *[]struct {
							Preference *struct {
								MatchExpressions *[]struct {
									Key      *string   `tfsdk:"key" json:"key,omitempty"`
									Operator *string   `tfsdk:"operator" json:"operator,omitempty"`
									Values   *[]string `tfsdk:"values" json:"values,omitempty"`
								} `tfsdk:"match_expressions" json:"matchExpressions,omitempty"`
								MatchFields *[]struct {
									Key      *string   `tfsdk:"key" json:"key,omitempty"`
									Operator *string   `tfsdk:"operator" json:"operator,omitempty"`
									Values   *[]string `tfsdk:"values" json:"values,omitempty"`
								} `tfsdk:"match_fields" json:"matchFields,omitempty"`
							} `tfsdk:"preference" json:"preference,omitempty"`
							Weight *int64 `tfsdk:"weight" json:"weight,omitempty"`
						} `tfsdk:"preferred_during_scheduling_ignored_during_execution" json:"preferredDuringSchedulingIgnoredDuringExecution,omitempty"`
						RequiredDuringSchedulingIgnoredDuringExecution *struct {
							NodeSelectorTerms *[]struct {
								MatchExpressions *[]struct {
									Key      *string   `tfsdk:"key" json:"key,omitempty"`
									Operator *string   `tfsdk:"operator" json:"operator,omitempty"`
									Values   *[]string `tfsdk:"values" json:"values,omitempty"`
								} `tfsdk:"match_expressions" json:"matchExpressions,omitempty"`
								MatchFields *[]struct {
									Key      *string   `tfsdk:"key" json:"key,omitempty"`
									Operator *string   `tfsdk:"operator" json:"operator,omitempty"`
									Values   *[]string `tfsdk:"values" json:"values,omitempty"`
								} `tfsdk:"match_fields" json:"matchFields,omitempty"`
							} `tfsdk:"node_selector_terms" json:"nodeSelectorTerms,omitempty"`
						} `tfsdk:"required_during_scheduling_ignored_during_execution" json:"requiredDuringSchedulingIgnoredDuringExecution,omitempty"`
					} `tfsdk:"node_affinity" json:"nodeAffinity,omitempty"`
					PodAffinity *struct {
						PreferredDuringSchedulingIgnoredDuringExecution *[]struct {
							PodAffinityTerm *struct {
								LabelSelector *struct {
									MatchExpressions *[]struct {
										Key      *string   `tfsdk:"key" json:"key,omitempty"`
										Operator *string   `tfsdk:"operator" json:"operator,omitempty"`
										Values   *[]string `tfsdk:"values" json:"values,omitempty"`
									} `tfsdk:"match_expressions" json:"matchExpressions,omitempty"`
									MatchLabels *map[string]string `tfsdk:"match_labels" json:"matchLabels,omitempty"`
								} `tfsdk:"label_selector" json:"labelSelector,omitempty"`
								NamespaceSelector *struct {
									MatchExpressions *[]struct {
										Key      *string   `tfsdk:"key" json:"key,omitempty"`
										Operator *string   `tfsdk:"operator" json:"operator,omitempty"`
										Values   *[]string `tfsdk:"values" json:"values,omitempty"`
									} `tfsdk:"match_expressions" json:"matchExpressions,omitempty"`
									MatchLabels *map[string]string `tfsdk:"match_labels" json:"matchLabels,omitempty"`
								} `tfsdk:"namespace_selector" json:"namespaceSelector,omitempty"`
								Namespaces  *[]string `tfsdk:"namespaces" json:"namespaces,omitempty"`
								TopologyKey *string   `tfsdk:"topology_key" json:"topologyKey,omitempty"`
							} `tfsdk:"pod_affinity_term" json:"podAffinityTerm,omitempty"`
							Weight *int64 `tfsdk:"weight" json:"weight,omitempty"`
						} `tfsdk:"preferred_during_scheduling_ignored_during_execution" json:"preferredDuringSchedulingIgnoredDuringExecution,omitempty"`
						RequiredDuringSchedulingIgnoredDuringExecution *[]struct {
							LabelSelector *struct {
								MatchExpressions *[]struct {
									Key      *string   `tfsdk:"key" json:"key,omitempty"`
									Operator *string   `tfsdk:"operator" json:"operator,omitempty"`
									Values   *[]string `tfsdk:"values" json:"values,omitempty"`
								} `tfsdk:"match_expressions" json:"matchExpressions,omitempty"`
								MatchLabels *map[string]string `tfsdk:"match_labels" json:"matchLabels,omitempty"`
							} `tfsdk:"label_selector" json:"labelSelector,omitempty"`
							NamespaceSelector *struct {
								MatchExpressions *[]struct {
									Key      *string   `tfsdk:"key" json:"key,omitempty"`
									Operator *string   `tfsdk:"operator" json:"operator,omitempty"`
									Values   *[]string `tfsdk:"values" json:"values,omitempty"`
								} `tfsdk:"match_expressions" json:"matchExpressions,omitempty"`
								MatchLabels *map[string]string `tfsdk:"match_labels" json:"matchLabels,omitempty"`
							} `tfsdk:"namespace_selector" json:"namespaceSelector,omitempty"`
							Namespaces  *[]string `tfsdk:"namespaces" json:"namespaces,omitempty"`
							TopologyKey *string   `tfsdk:"topology_key" json:"topologyKey,omitempty"`
						} `tfsdk:"required_during_scheduling_ignored_during_execution" json:"requiredDuringSchedulingIgnoredDuringExecution,omitempty"`
					} `tfsdk:"pod_affinity" json:"podAffinity,omitempty"`
					PodAntiAffinity *struct {
						PreferredDuringSchedulingIgnoredDuringExecution *[]struct {
							PodAffinityTerm *struct {
								LabelSelector *struct {
									MatchExpressions *[]struct {
										Key      *string   `tfsdk:"key" json:"key,omitempty"`
										Operator *string   `tfsdk:"operator" json:"operator,omitempty"`
										Values   *[]string `tfsdk:"values" json:"values,omitempty"`
									} `tfsdk:"match_expressions" json:"matchExpressions,omitempty"`
									MatchLabels *map[string]string `tfsdk:"match_labels" json:"matchLabels,omitempty"`
								} `tfsdk:"label_selector" json:"labelSelector,omitempty"`
								NamespaceSelector *struct {
									MatchExpressions *[]struct {
										Key      *string   `tfsdk:"key" json:"key,omitempty"`
										Operator *string   `tfsdk:"operator" json:"operator,omitempty"`
										Values   *[]string `tfsdk:"values" json:"values,omitempty"`
									} `tfsdk:"match_expressions" json:"matchExpressions,omitempty"`
									MatchLabels *map[string]string `tfsdk:"match_labels" json:"matchLabels,omitempty"`
								} `tfsdk:"namespace_selector" json:"namespaceSelector,omitempty"`
								Namespaces  *[]string `tfsdk:"namespaces" json:"namespaces,omitempty"`
								TopologyKey *string   `tfsdk:"topology_key" json:"topologyKey,omitempty"`
							} `tfsdk:"pod_affinity_term" json:"podAffinityTerm,omitempty"`
							Weight *int64 `tfsdk:"weight" json:"weight,omitempty"`
						} `tfsdk:"preferred_during_scheduling_ignored_during_execution" json:"preferredDuringSchedulingIgnoredDuringExecution,omitempty"`
						RequiredDuringSchedulingIgnoredDuringExecution *[]struct {
							LabelSelector *struct {
								MatchExpressions *[]struct {
									Key      *string   `tfsdk:"key" json:"key,omitempty"`
									Operator *string   `tfsdk:"operator" json:"operator,omitempty"`
									Values   *[]string `tfsdk:"values" json:"values,omitempty"`
								} `tfsdk:"match_expressions" json:"matchExpressions,omitempty"`
								MatchLabels *map[string]string `tfsdk:"match_labels" json:"matchLabels,omitempty"`
							} `tfsdk:"label_selector" json:"labelSelector,omitempty"`
							NamespaceSelector *struct {
								MatchExpressions *[]struct {
									Key      *string   `tfsdk:"key" json:"key,omitempty"`
									Operator *string   `tfsdk:"operator" json:"operator,omitempty"`
									Values   *[]string `tfsdk:"values" json:"values,omitempty"`
								} `tfsdk:"match_expressions" json:"matchExpressions,omitempty"`
								MatchLabels *map[string]string `tfsdk:"match_labels" json:"matchLabels,omitempty"`
							} `tfsdk:"namespace_selector" json:"namespaceSelector,omitempty"`
							Namespaces  *[]string `tfsdk:"namespaces" json:"namespaces,omitempty"`
							TopologyKey *string   `tfsdk:"topology_key" json:"topologyKey,omitempty"`
						} `tfsdk:"required_during_scheduling_ignored_during_execution" json:"requiredDuringSchedulingIgnoredDuringExecution,omitempty"`
					} `tfsdk:"pod_anti_affinity" json:"podAntiAffinity,omitempty"`
				} `tfsdk:"affinity" json:"affinity,omitempty"`
				DeploymentStrategy *struct {
					RollingUpdate *struct {
						MaxSurge       *string `tfsdk:"max_surge" json:"maxSurge,omitempty"`
						MaxUnavailable *string `tfsdk:"max_unavailable" json:"maxUnavailable,omitempty"`
					} `tfsdk:"rolling_update" json:"rollingUpdate,omitempty"`
					Type *string `tfsdk:"type" json:"type,omitempty"`
				} `tfsdk:"deployment_strategy" json:"deploymentStrategy,omitempty"`
				Env *[]struct {
					Name      *string `tfsdk:"name" json:"name,omitempty"`
					Value     *string `tfsdk:"value" json:"value,omitempty"`
					ValueFrom *struct {
						ConfigMapKeyRef *struct {
							Key                  *string `tfsdk:"key" json:"key,omitempty"`
							LocalObjectReference *struct {
								Name *string `tfsdk:"name" json:"name,omitempty"`
							} `tfsdk:"local_object_reference" json:"localObjectReference,omitempty"`
							Optional *bool `tfsdk:"optional" json:"optional,omitempty"`
						} `tfsdk:"config_map_key_ref" json:"configMapKeyRef,omitempty"`
						FieldRef *struct {
							ApiVersion *string `tfsdk:"api_version" json:"apiVersion,omitempty"`
							FieldPath  *string `tfsdk:"field_path" json:"fieldPath,omitempty"`
						} `tfsdk:"field_ref" json:"fieldRef,omitempty"`
						ResourceFieldRef *struct {
							ContainerName *string `tfsdk:"container_name" json:"containerName,omitempty"`
							Divisor       *string `tfsdk:"divisor" json:"divisor,omitempty"`
							Resource      *string `tfsdk:"resource" json:"resource,omitempty"`
						} `tfsdk:"resource_field_ref" json:"resourceFieldRef,omitempty"`
						SecretKeyRef *struct {
							Key                  *string `tfsdk:"key" json:"key,omitempty"`
							LocalObjectReference *struct {
								Name *string `tfsdk:"name" json:"name,omitempty"`
							} `tfsdk:"local_object_reference" json:"localObjectReference,omitempty"`
							Optional *bool `tfsdk:"optional" json:"optional,omitempty"`
						} `tfsdk:"secret_key_ref" json:"secretKeyRef,omitempty"`
					} `tfsdk:"value_from" json:"valueFrom,omitempty"`
				} `tfsdk:"env" json:"env,omitempty"`
				Image            *string `tfsdk:"image" json:"image,omitempty"`
				ImagePullPolicy  *string `tfsdk:"image_pull_policy" json:"imagePullPolicy,omitempty"`
				ImagePullSecrets *[]struct {
					Name *string `tfsdk:"name" json:"name,omitempty"`
				} `tfsdk:"image_pull_secrets" json:"imagePullSecrets,omitempty"`
				LivenessProbe *struct {
					Exec *struct {
						Command *[]string `tfsdk:"command" json:"command,omitempty"`
					} `tfsdk:"exec" json:"exec,omitempty"`
					FailureThreshold *int64 `tfsdk:"failure_threshold" json:"failureThreshold,omitempty"`
					Grpc             *struct {
						Port    *int64  `tfsdk:"port" json:"port,omitempty"`
						Service *string `tfsdk:"service" json:"service,omitempty"`
					} `tfsdk:"grpc" json:"grpc,omitempty"`
					HttpGet *struct {
						Host        *string `tfsdk:"host" json:"host,omitempty"`
						HttpHeaders *[]struct {
							Name  *string `tfsdk:"name" json:"name,omitempty"`
							Value *string `tfsdk:"value" json:"value,omitempty"`
						} `tfsdk:"http_headers" json:"httpHeaders,omitempty"`
						Path   *string `tfsdk:"path" json:"path,omitempty"`
						Port   *string `tfsdk:"port" json:"port,omitempty"`
						Scheme *string `tfsdk:"scheme" json:"scheme,omitempty"`
					} `tfsdk:"http_get" json:"httpGet,omitempty"`
					InitialDelaySeconds *int64 `tfsdk:"initial_delay_seconds" json:"initialDelaySeconds,omitempty"`
					PeriodSeconds       *int64 `tfsdk:"period_seconds" json:"periodSeconds,omitempty"`
					SuccessThreshold    *int64 `tfsdk:"success_threshold" json:"successThreshold,omitempty"`
					TcpSocket           *struct {
						Host *string `tfsdk:"host" json:"host,omitempty"`
						Port *string `tfsdk:"port" json:"port,omitempty"`
					} `tfsdk:"tcp_socket" json:"tcpSocket,omitempty"`
					TerminationGracePeriodSeconds *int64 `tfsdk:"termination_grace_period_seconds" json:"terminationGracePeriodSeconds,omitempty"`
					TimeoutSeconds                *int64 `tfsdk:"timeout_seconds" json:"timeoutSeconds,omitempty"`
				} `tfsdk:"liveness_probe" json:"livenessProbe,omitempty"`
				Metadata *struct {
					Annotations *map[string]string `tfsdk:"annotations" json:"annotations,omitempty"`
					Labels      *map[string]string `tfsdk:"labels" json:"labels,omitempty"`
				} `tfsdk:"metadata" json:"metadata,omitempty"`
				NodeSelector        *map[string]string `tfsdk:"node_selector" json:"nodeSelector,omitempty"`
				PodDisruptionBudget *struct {
					MaxUnavailable *string `tfsdk:"max_unavailable" json:"maxUnavailable,omitempty"`
					MinAvailable   *string `tfsdk:"min_available" json:"minAvailable,omitempty"`
				} `tfsdk:"pod_disruption_budget" json:"podDisruptionBudget,omitempty"`
				PodMetadata *struct {
					Annotations *map[string]string `tfsdk:"annotations" json:"annotations,omitempty"`
					Labels      *map[string]string `tfsdk:"labels" json:"labels,omitempty"`
				} `tfsdk:"pod_metadata" json:"podMetadata,omitempty"`
				PodSecurityContext *struct {
					FsGroup             *int64  `tfsdk:"fs_group" json:"fsGroup,omitempty"`
					FsGroupChangePolicy *string `tfsdk:"fs_group_change_policy" json:"fsGroupChangePolicy,omitempty"`
					RunAsGroup          *int64  `tfsdk:"run_as_group" json:"runAsGroup,omitempty"`
					RunAsNonRoot        *bool   `tfsdk:"run_as_non_root" json:"runAsNonRoot,omitempty"`
					RunAsUser           *int64  `tfsdk:"run_as_user" json:"runAsUser,omitempty"`
					SeLinuxOptions      *struct {
						Level *string `tfsdk:"level" json:"level,omitempty"`
						Role  *string `tfsdk:"role" json:"role,omitempty"`
						Type  *string `tfsdk:"type" json:"type,omitempty"`
						User  *string `tfsdk:"user" json:"user,omitempty"`
					} `tfsdk:"se_linux_options" json:"seLinuxOptions,omitempty"`
					SeccompProfile *struct {
						LocalhostProfile *string `tfsdk:"localhost_profile" json:"localhostProfile,omitempty"`
						Type             *string `tfsdk:"type" json:"type,omitempty"`
					} `tfsdk:"seccomp_profile" json:"seccompProfile,omitempty"`
					SupplementalGroups *[]string `tfsdk:"supplemental_groups" json:"supplementalGroups,omitempty"`
					Sysctls            *[]struct {
						Name  *string `tfsdk:"name" json:"name,omitempty"`
						Value *string `tfsdk:"value" json:"value,omitempty"`
					} `tfsdk:"sysctls" json:"sysctls,omitempty"`
					WindowsOptions *struct {
						GmsaCredentialSpec     *string `tfsdk:"gmsa_credential_spec" json:"gmsaCredentialSpec,omitempty"`
						GmsaCredentialSpecName *string `tfsdk:"gmsa_credential_spec_name" json:"gmsaCredentialSpecName,omitempty"`
						HostProcess            *bool   `tfsdk:"host_process" json:"hostProcess,omitempty"`
						RunAsUserName          *string `tfsdk:"run_as_user_name" json:"runAsUserName,omitempty"`
					} `tfsdk:"windows_options" json:"windowsOptions,omitempty"`
				} `tfsdk:"pod_security_context" json:"podSecurityContext,omitempty"`
				PriorityClassName *string `tfsdk:"priority_class_name" json:"priorityClassName,omitempty"`
				ReadinessProbe    *struct {
					Exec *struct {
						Command *[]string `tfsdk:"command" json:"command,omitempty"`
					} `tfsdk:"exec" json:"exec,omitempty"`
					FailureThreshold *int64 `tfsdk:"failure_threshold" json:"failureThreshold,omitempty"`
					Grpc             *struct {
						Port    *int64  `tfsdk:"port" json:"port,omitempty"`
						Service *string `tfsdk:"service" json:"service,omitempty"`
					} `tfsdk:"grpc" json:"grpc,omitempty"`
					HttpGet *struct {
						Host        *string `tfsdk:"host" json:"host,omitempty"`
						HttpHeaders *[]struct {
							Name  *string `tfsdk:"name" json:"name,omitempty"`
							Value *string `tfsdk:"value" json:"value,omitempty"`
						} `tfsdk:"http_headers" json:"httpHeaders,omitempty"`
						Path   *string `tfsdk:"path" json:"path,omitempty"`
						Port   *string `tfsdk:"port" json:"port,omitempty"`
						Scheme *string `tfsdk:"scheme" json:"scheme,omitempty"`
					} `tfsdk:"http_get" json:"httpGet,omitempty"`
					InitialDelaySeconds *int64 `tfsdk:"initial_delay_seconds" json:"initialDelaySeconds,omitempty"`
					PeriodSeconds       *int64 `tfsdk:"period_seconds" json:"periodSeconds,omitempty"`
					SuccessThreshold    *int64 `tfsdk:"success_threshold" json:"successThreshold,omitempty"`
					TcpSocket           *struct {
						Host *string `tfsdk:"host" json:"host,omitempty"`
						Port *string `tfsdk:"port" json:"port,omitempty"`
					} `tfsdk:"tcp_socket" json:"tcpSocket,omitempty"`
					TerminationGracePeriodSeconds *int64 `tfsdk:"termination_grace_period_seconds" json:"terminationGracePeriodSeconds,omitempty"`
					TimeoutSeconds                *int64 `tfsdk:"timeout_seconds" json:"timeoutSeconds,omitempty"`
				} `tfsdk:"readiness_probe" json:"readinessProbe,omitempty"`
				Replicas *struct {
					Count                          *int64 `tfsdk:"count" json:"count,omitempty"`
					Max                            *int64 `tfsdk:"max" json:"max,omitempty"`
					Min                            *int64 `tfsdk:"min" json:"min,omitempty"`
					TargetCPUUtilizationPercentage *int64 `tfsdk:"target_cpu_utilization_percentage" json:"targetCPUUtilizationPercentage,omitempty"`
				} `tfsdk:"replicas" json:"replicas,omitempty"`
				Resources *struct {
					Limits   *map[string]string `tfsdk:"limits" json:"limits,omitempty"`
					Requests *map[string]string `tfsdk:"requests" json:"requests,omitempty"`
				} `tfsdk:"resources" json:"resources,omitempty"`
				SecurityContext *struct {
					AllowPrivilegeEscalation *bool `tfsdk:"allow_privilege_escalation" json:"allowPrivilegeEscalation,omitempty"`
					Capabilities             *struct {
						Add  *[]string `tfsdk:"add" json:"add,omitempty"`
						Drop *[]string `tfsdk:"drop" json:"drop,omitempty"`
					} `tfsdk:"capabilities" json:"capabilities,omitempty"`
					Privileged             *bool   `tfsdk:"privileged" json:"privileged,omitempty"`
					ProcMount              *string `tfsdk:"proc_mount" json:"procMount,omitempty"`
					ReadOnlyRootFilesystem *bool   `tfsdk:"read_only_root_filesystem" json:"readOnlyRootFilesystem,omitempty"`
					RunAsGroup             *int64  `tfsdk:"run_as_group" json:"runAsGroup,omitempty"`
					RunAsNonRoot           *bool   `tfsdk:"run_as_non_root" json:"runAsNonRoot,omitempty"`
					RunAsUser              *int64  `tfsdk:"run_as_user" json:"runAsUser,omitempty"`
					SeLinuxOptions         *struct {
						Level *string `tfsdk:"level" json:"level,omitempty"`
						Role  *string `tfsdk:"role" json:"role,omitempty"`
						Type  *string `tfsdk:"type" json:"type,omitempty"`
						User  *string `tfsdk:"user" json:"user,omitempty"`
					} `tfsdk:"se_linux_options" json:"seLinuxOptions,omitempty"`
					SeccompProfile *struct {
						LocalhostProfile *string `tfsdk:"localhost_profile" json:"localhostProfile,omitempty"`
						Type             *string `tfsdk:"type" json:"type,omitempty"`
					} `tfsdk:"seccomp_profile" json:"seccompProfile,omitempty"`
					WindowsOptions *struct {
						GmsaCredentialSpec     *string `tfsdk:"gmsa_credential_spec" json:"gmsaCredentialSpec,omitempty"`
						GmsaCredentialSpecName *string `tfsdk:"gmsa_credential_spec_name" json:"gmsaCredentialSpecName,omitempty"`
						HostProcess            *bool   `tfsdk:"host_process" json:"hostProcess,omitempty"`
						RunAsUserName          *string `tfsdk:"run_as_user_name" json:"runAsUserName,omitempty"`
					} `tfsdk:"windows_options" json:"windowsOptions,omitempty"`
				} `tfsdk:"security_context" json:"securityContext,omitempty"`
				Tolerations *[]struct {
					Effect            *string `tfsdk:"effect" json:"effect,omitempty"`
					Key               *string `tfsdk:"key" json:"key,omitempty"`
					Operator          *string `tfsdk:"operator" json:"operator,omitempty"`
					TolerationSeconds *int64  `tfsdk:"toleration_seconds" json:"tolerationSeconds,omitempty"`
					Value             *string `tfsdk:"value" json:"value,omitempty"`
				} `tfsdk:"tolerations" json:"tolerations,omitempty"`
				TopologySpreadConstraints *[]struct {
					LabelSelector *struct {
						MatchExpressions *[]struct {
							Key      *string   `tfsdk:"key" json:"key,omitempty"`
							Operator *string   `tfsdk:"operator" json:"operator,omitempty"`
							Values   *[]string `tfsdk:"values" json:"values,omitempty"`
						} `tfsdk:"match_expressions" json:"matchExpressions,omitempty"`
						MatchLabels *map[string]string `tfsdk:"match_labels" json:"matchLabels,omitempty"`
					} `tfsdk:"label_selector" json:"labelSelector,omitempty"`
					MaxSkew           *int64  `tfsdk:"max_skew" json:"maxSkew,omitempty"`
					TopologyKey       *string `tfsdk:"topology_key" json:"topologyKey,omitempty"`
					WhenUnsatisfiable *string `tfsdk:"when_unsatisfiable" json:"whenUnsatisfiable,omitempty"`
				} `tfsdk:"topology_spread_constraints" json:"topologySpreadConstraints,omitempty"`
				VolumeMounts *[]struct {
					MountPath        *string `tfsdk:"mount_path" json:"mountPath,omitempty"`
					MountPropagation *string `tfsdk:"mount_propagation" json:"mountPropagation,omitempty"`
					Name             *string `tfsdk:"name" json:"name,omitempty"`
					ReadOnly         *bool   `tfsdk:"read_only" json:"readOnly,omitempty"`
					SubPath          *string `tfsdk:"sub_path" json:"subPath,omitempty"`
					SubPathExpr      *string `tfsdk:"sub_path_expr" json:"subPathExpr,omitempty"`
				} `tfsdk:"volume_mounts" json:"volumeMounts,omitempty"`
				Volumes *[]struct {
					Name         *string `tfsdk:"name" json:"name,omitempty"`
					VolumeSource *struct {
						AwsElasticBlockStore *struct {
							FsType    *string `tfsdk:"fs_type" json:"fsType,omitempty"`
							Partition *int64  `tfsdk:"partition" json:"partition,omitempty"`
							ReadOnly  *bool   `tfsdk:"read_only" json:"readOnly,omitempty"`
							VolumeID  *string `tfsdk:"volume_id" json:"volumeID,omitempty"`
						} `tfsdk:"aws_elastic_block_store" json:"awsElasticBlockStore,omitempty"`
						AzureDisk *struct {
							CachingMode *string `tfsdk:"caching_mode" json:"cachingMode,omitempty"`
							DiskName    *string `tfsdk:"disk_name" json:"diskName,omitempty"`
							DiskURI     *string `tfsdk:"disk_uri" json:"diskURI,omitempty"`
							FsType      *string `tfsdk:"fs_type" json:"fsType,omitempty"`
							Kind        *string `tfsdk:"kind" json:"kind,omitempty"`
							ReadOnly    *bool   `tfsdk:"read_only" json:"readOnly,omitempty"`
						} `tfsdk:"azure_disk" json:"azureDisk,omitempty"`
						AzureFile *struct {
							ReadOnly   *bool   `tfsdk:"read_only" json:"readOnly,omitempty"`
							SecretName *string `tfsdk:"secret_name" json:"secretName,omitempty"`
							ShareName  *string `tfsdk:"share_name" json:"shareName,omitempty"`
						} `tfsdk:"azure_file" json:"azureFile,omitempty"`
						Cephfs *struct {
							Monitors   *[]string `tfsdk:"monitors" json:"monitors,omitempty"`
							Path       *string   `tfsdk:"path" json:"path,omitempty"`
							ReadOnly   *bool     `tfsdk:"read_only" json:"readOnly,omitempty"`
							SecretFile *string   `tfsdk:"secret_file" json:"secretFile,omitempty"`
							SecretRef  *struct {
								Name *string `tfsdk:"name" json:"name,omitempty"`
							} `tfsdk:"secret_ref" json:"secretRef,omitempty"`
							User *string `tfsdk:"user" json:"user,omitempty"`
						} `tfsdk:"cephfs" json:"cephfs,omitempty"`
						Cinder *struct {
							FsType    *string `tfsdk:"fs_type" json:"fsType,omitempty"`
							ReadOnly  *bool   `tfsdk:"read_only" json:"readOnly,omitempty"`
							SecretRef *struct {
								Name *string `tfsdk:"name" json:"name,omitempty"`
							} `tfsdk:"secret_ref" json:"secretRef,omitempty"`
							VolumeID *string `tfsdk:"volume_id" json:"volumeID,omitempty"`
						} `tfsdk:"cinder" json:"cinder,omitempty"`
						ConfigMap *struct {
							DefaultMode *int64 `tfsdk:"default_mode" json:"defaultMode,omitempty"`
							Items       *[]struct {
								Key  *string `tfsdk:"key" json:"key,omitempty"`
								Mode *int64  `tfsdk:"mode" json:"mode,omitempty"`
								Path *string `tfsdk:"path" json:"path,omitempty"`
							} `tfsdk:"items" json:"items,omitempty"`
							LocalObjectReference *struct {
								Name *string `tfsdk:"name" json:"name,omitempty"`
							} `tfsdk:"local_object_reference" json:"localObjectReference,omitempty"`
							Optional *bool `tfsdk:"optional" json:"optional,omitempty"`
						} `tfsdk:"config_map" json:"configMap,omitempty"`
						Csi *struct {
							Driver               *string `tfsdk:"driver" json:"driver,omitempty"`
							FsType               *string `tfsdk:"fs_type" json:"fsType,omitempty"`
							NodePublishSecretRef *struct {
								Name *string `tfsdk:"name" json:"name,omitempty"`
							} `tfsdk:"node_publish_secret_ref" json:"nodePublishSecretRef,omitempty"`
							ReadOnly         *bool              `tfsdk:"read_only" json:"readOnly,omitempty"`
							VolumeAttributes *map[string]string `tfsdk:"volume_attributes" json:"volumeAttributes,omitempty"`
						} `tfsdk:"csi" json:"csi,omitempty"`
						DownwardAPI *struct {
							DefaultMode *int64 `tfsdk:"default_mode" json:"defaultMode,omitempty"`
							Items       *[]struct {
								FieldRef *struct {
									ApiVersion *string `tfsdk:"api_version" json:"apiVersion,omitempty"`
									FieldPath  *string `tfsdk:"field_path" json:"fieldPath,omitempty"`
								} `tfsdk:"field_ref" json:"fieldRef,omitempty"`
								Mode             *int64  `tfsdk:"mode" json:"mode,omitempty"`
								Path             *string `tfsdk:"path" json:"path,omitempty"`
								ResourceFieldRef *struct {
									ContainerName *string `tfsdk:"container_name" json:"containerName,omitempty"`
									Divisor       *string `tfsdk:"divisor" json:"divisor,omitempty"`
									Resource      *string `tfsdk:"resource" json:"resource,omitempty"`
								} `tfsdk:"resource_field_ref" json:"resourceFieldRef,omitempty"`
							} `tfsdk:"items" json:"items,omitempty"`
						} `tfsdk:"downward_api" json:"downwardAPI,omitempty"`
						EmptyDir *struct {
							Medium    *string `tfsdk:"medium" json:"medium,omitempty"`
							SizeLimit *string `tfsdk:"size_limit" json:"sizeLimit,omitempty"`
						} `tfsdk:"empty_dir" json:"emptyDir,omitempty"`
						Ephemeral *struct {
							VolumeClaimTemplate *struct {
								Metadata *struct {
									Annotations       *map[string]string `tfsdk:"annotations" json:"annotations,omitempty"`
									ClusterName       *string            `tfsdk:"cluster_name" json:"clusterName,omitempty"`
									CreationTimestamp *struct {
										Nanos   *int64 `tfsdk:"nanos" json:"nanos,omitempty"`
										Seconds *int64 `tfsdk:"seconds" json:"seconds,omitempty"`
									} `tfsdk:"creation_timestamp" json:"creationTimestamp,omitempty"`
									DeletionGracePeriodSeconds *int64 `tfsdk:"deletion_grace_period_seconds" json:"deletionGracePeriodSeconds,omitempty"`
									DeletionTimestamp          *struct {
										Nanos   *int64 `tfsdk:"nanos" json:"nanos,omitempty"`
										Seconds *int64 `tfsdk:"seconds" json:"seconds,omitempty"`
									} `tfsdk:"deletion_timestamp" json:"deletionTimestamp,omitempty"`
									Finalizers    *[]string          `tfsdk:"finalizers" json:"finalizers,omitempty"`
									GenerateName  *string            `tfsdk:"generate_name" json:"generateName,omitempty"`
									Generation    *int64             `tfsdk:"generation" json:"generation,omitempty"`
									Labels        *map[string]string `tfsdk:"labels" json:"labels,omitempty"`
									ManagedFields *[]struct {
										ApiVersion *string `tfsdk:"api_version" json:"apiVersion,omitempty"`
										FieldsType *string `tfsdk:"fields_type" json:"fieldsType,omitempty"`
										FieldsV1   *struct {
											Raw *string `tfsdk:"raw" json:"Raw,omitempty"`
										} `tfsdk:"fields_v1" json:"fieldsV1,omitempty"`
										Manager     *string `tfsdk:"manager" json:"manager,omitempty"`
										Operation   *string `tfsdk:"operation" json:"operation,omitempty"`
										Subresource *string `tfsdk:"subresource" json:"subresource,omitempty"`
										Time        *struct {
											Nanos   *int64 `tfsdk:"nanos" json:"nanos,omitempty"`
											Seconds *int64 `tfsdk:"seconds" json:"seconds,omitempty"`
										} `tfsdk:"time" json:"time,omitempty"`
									} `tfsdk:"managed_fields" json:"managedFields,omitempty"`
									Name            *string `tfsdk:"name" json:"name,omitempty"`
									Namespace       *string `tfsdk:"namespace" json:"namespace,omitempty"`
									OwnerReferences *[]struct {
										ApiVersion         *string `tfsdk:"api_version" json:"apiVersion,omitempty"`
										BlockOwnerDeletion *bool   `tfsdk:"block_owner_deletion" json:"blockOwnerDeletion,omitempty"`
										Controller         *bool   `tfsdk:"controller" json:"controller,omitempty"`
										Kind               *string `tfsdk:"kind" json:"kind,omitempty"`
										Name               *string `tfsdk:"name" json:"name,omitempty"`
										Uid                *string `tfsdk:"uid" json:"uid,omitempty"`
									} `tfsdk:"owner_references" json:"ownerReferences,omitempty"`
									ResourceVersion *string `tfsdk:"resource_version" json:"resourceVersion,omitempty"`
									SelfLink        *string `tfsdk:"self_link" json:"selfLink,omitempty"`
									Uid             *string `tfsdk:"uid" json:"uid,omitempty"`
								} `tfsdk:"metadata" json:"metadata,omitempty"`
								Spec *struct {
									AccessModes *[]string `tfsdk:"access_modes" json:"accessModes,omitempty"`
									DataSource  *struct {
										ApiGroup *string `tfsdk:"api_group" json:"apiGroup,omitempty"`
										Kind     *string `tfsdk:"kind" json:"kind,omitempty"`
										Name     *string `tfsdk:"name" json:"name,omitempty"`
									} `tfsdk:"data_source" json:"dataSource,omitempty"`
									DataSourceRef *struct {
										ApiGroup *string `tfsdk:"api_group" json:"apiGroup,omitempty"`
										Kind     *string `tfsdk:"kind" json:"kind,omitempty"`
										Name     *string `tfsdk:"name" json:"name,omitempty"`
									} `tfsdk:"data_source_ref" json:"dataSourceRef,omitempty"`
									Resources *struct {
										Limits *struct {
											String *string `tfsdk:"string" json:"string,omitempty"`
										} `tfsdk:"limits" json:"limits,omitempty"`
										Requests *struct {
											String *string `tfsdk:"string" json:"string,omitempty"`
										} `tfsdk:"requests" json:"requests,omitempty"`
									} `tfsdk:"resources" json:"resources,omitempty"`
									Selector *struct {
										MatchExpressions *[]struct {
											Key      *string   `tfsdk:"key" json:"key,omitempty"`
											Operator *string   `tfsdk:"operator" json:"operator,omitempty"`
											Values   *[]string `tfsdk:"values" json:"values,omitempty"`
										} `tfsdk:"match_expressions" json:"matchExpressions,omitempty"`
										MatchLabels *map[string]string `tfsdk:"match_labels" json:"matchLabels,omitempty"`
									} `tfsdk:"selector" json:"selector,omitempty"`
									StorageClassName *string `tfsdk:"storage_class_name" json:"storageClassName,omitempty"`
									VolumeMode       *string `tfsdk:"volume_mode" json:"volumeMode,omitempty"`
									VolumeName       *string `tfsdk:"volume_name" json:"volumeName,omitempty"`
								} `tfsdk:"spec" json:"spec,omitempty"`
							} `tfsdk:"volume_claim_template" json:"volumeClaimTemplate,omitempty"`
						} `tfsdk:"ephemeral" json:"ephemeral,omitempty"`
						Fc *struct {
							FsType     *string   `tfsdk:"fs_type" json:"fsType,omitempty"`
							Lun        *int64    `tfsdk:"lun" json:"lun,omitempty"`
							ReadOnly   *bool     `tfsdk:"read_only" json:"readOnly,omitempty"`
							TargetWWNs *[]string `tfsdk:"target_ww_ns" json:"targetWWNs,omitempty"`
							Wwids      *[]string `tfsdk:"wwids" json:"wwids,omitempty"`
						} `tfsdk:"fc" json:"fc,omitempty"`
						FlexVolume *struct {
							Driver    *string            `tfsdk:"driver" json:"driver,omitempty"`
							FsType    *string            `tfsdk:"fs_type" json:"fsType,omitempty"`
							Options   *map[string]string `tfsdk:"options" json:"options,omitempty"`
							ReadOnly  *bool              `tfsdk:"read_only" json:"readOnly,omitempty"`
							SecretRef *struct {
								Name *string `tfsdk:"name" json:"name,omitempty"`
							} `tfsdk:"secret_ref" json:"secretRef,omitempty"`
						} `tfsdk:"flex_volume" json:"flexVolume,omitempty"`
						Flocker *struct {
							DatasetName *string `tfsdk:"dataset_name" json:"datasetName,omitempty"`
							DatasetUUID *string `tfsdk:"dataset_uuid" json:"datasetUUID,omitempty"`
						} `tfsdk:"flocker" json:"flocker,omitempty"`
						GcePersistentDisk *struct {
							FsType    *string `tfsdk:"fs_type" json:"fsType,omitempty"`
							Partition *int64  `tfsdk:"partition" json:"partition,omitempty"`
							PdName    *string `tfsdk:"pd_name" json:"pdName,omitempty"`
							ReadOnly  *bool   `tfsdk:"read_only" json:"readOnly,omitempty"`
						} `tfsdk:"gce_persistent_disk" json:"gcePersistentDisk,omitempty"`
						GitRepo *struct {
							Directory  *string `tfsdk:"directory" json:"directory,omitempty"`
							Repository *string `tfsdk:"repository" json:"repository,omitempty"`
							Revision   *string `tfsdk:"revision" json:"revision,omitempty"`
						} `tfsdk:"git_repo" json:"gitRepo,omitempty"`
						Glusterfs *struct {
							Endpoints *string `tfsdk:"endpoints" json:"endpoints,omitempty"`
							Path      *string `tfsdk:"path" json:"path,omitempty"`
							ReadOnly  *bool   `tfsdk:"read_only" json:"readOnly,omitempty"`
						} `tfsdk:"glusterfs" json:"glusterfs,omitempty"`
						HostPath *struct {
							Path *string `tfsdk:"path" json:"path,omitempty"`
							Type *string `tfsdk:"type" json:"type,omitempty"`
						} `tfsdk:"host_path" json:"hostPath,omitempty"`
						Iscsi *struct {
							ChapAuthDiscovery *bool     `tfsdk:"chap_auth_discovery" json:"chapAuthDiscovery,omitempty"`
							ChapAuthSession   *bool     `tfsdk:"chap_auth_session" json:"chapAuthSession,omitempty"`
							FsType            *string   `tfsdk:"fs_type" json:"fsType,omitempty"`
							InitiatorName     *string   `tfsdk:"initiator_name" json:"initiatorName,omitempty"`
							Iqn               *string   `tfsdk:"iqn" json:"iqn,omitempty"`
							IscsiInterface    *string   `tfsdk:"iscsi_interface" json:"iscsiInterface,omitempty"`
							Lun               *int64    `tfsdk:"lun" json:"lun,omitempty"`
							Portals           *[]string `tfsdk:"portals" json:"portals,omitempty"`
							ReadOnly          *bool     `tfsdk:"read_only" json:"readOnly,omitempty"`
							SecretRef         *struct {
								Name *string `tfsdk:"name" json:"name,omitempty"`
							} `tfsdk:"secret_ref" json:"secretRef,omitempty"`
							TargetPortal *string `tfsdk:"target_portal" json:"targetPortal,omitempty"`
						} `tfsdk:"iscsi" json:"iscsi,omitempty"`
						Nfs *struct {
							Path     *string `tfsdk:"path" json:"path,omitempty"`
							ReadOnly *bool   `tfsdk:"read_only" json:"readOnly,omitempty"`
							Server   *string `tfsdk:"server" json:"server,omitempty"`
						} `tfsdk:"nfs" json:"nfs,omitempty"`
						PersistentVolumeClaim *struct {
							ClaimName *string `tfsdk:"claim_name" json:"claimName,omitempty"`
							ReadOnly  *bool   `tfsdk:"read_only" json:"readOnly,omitempty"`
						} `tfsdk:"persistent_volume_claim" json:"persistentVolumeClaim,omitempty"`
						PhotonPersistentDisk *struct {
							FsType *string `tfsdk:"fs_type" json:"fsType,omitempty"`
							PdID   *string `tfsdk:"pd_id" json:"pdID,omitempty"`
						} `tfsdk:"photon_persistent_disk" json:"photonPersistentDisk,omitempty"`
						PortworxVolume *struct {
							FsType   *string `tfsdk:"fs_type" json:"fsType,omitempty"`
							ReadOnly *bool   `tfsdk:"read_only" json:"readOnly,omitempty"`
							VolumeID *string `tfsdk:"volume_id" json:"volumeID,omitempty"`
						} `tfsdk:"portworx_volume" json:"portworxVolume,omitempty"`
						Projected *struct {
							DefaultMode *int64 `tfsdk:"default_mode" json:"defaultMode,omitempty"`
							Sources     *[]struct {
								ConfigMap *struct {
									Items *[]struct {
										Key  *string `tfsdk:"key" json:"key,omitempty"`
										Mode *int64  `tfsdk:"mode" json:"mode,omitempty"`
										Path *string `tfsdk:"path" json:"path,omitempty"`
									} `tfsdk:"items" json:"items,omitempty"`
									LocalObjectReference *struct {
										Name *string `tfsdk:"name" json:"name,omitempty"`
									} `tfsdk:"local_object_reference" json:"localObjectReference,omitempty"`
									Optional *bool `tfsdk:"optional" json:"optional,omitempty"`
								} `tfsdk:"config_map" json:"configMap,omitempty"`
								DownwardAPI *struct {
									Items *[]struct {
										FieldRef *struct {
											ApiVersion *string `tfsdk:"api_version" json:"apiVersion,omitempty"`
											FieldPath  *string `tfsdk:"field_path" json:"fieldPath,omitempty"`
										} `tfsdk:"field_ref" json:"fieldRef,omitempty"`
										Mode             *int64  `tfsdk:"mode" json:"mode,omitempty"`
										Path             *string `tfsdk:"path" json:"path,omitempty"`
										ResourceFieldRef *struct {
											ContainerName *string `tfsdk:"container_name" json:"containerName,omitempty"`
											Divisor       *string `tfsdk:"divisor" json:"divisor,omitempty"`
											Resource      *string `tfsdk:"resource" json:"resource,omitempty"`
										} `tfsdk:"resource_field_ref" json:"resourceFieldRef,omitempty"`
									} `tfsdk:"items" json:"items,omitempty"`
								} `tfsdk:"downward_api" json:"downwardAPI,omitempty"`
								Secret *struct {
									Items *[]struct {
										Key  *string `tfsdk:"key" json:"key,omitempty"`
										Mode *int64  `tfsdk:"mode" json:"mode,omitempty"`
										Path *string `tfsdk:"path" json:"path,omitempty"`
									} `tfsdk:"items" json:"items,omitempty"`
									LocalObjectReference *struct {
										Name *string `tfsdk:"name" json:"name,omitempty"`
									} `tfsdk:"local_object_reference" json:"localObjectReference,omitempty"`
									Optional *bool `tfsdk:"optional" json:"optional,omitempty"`
								} `tfsdk:"secret" json:"secret,omitempty"`
								ServiceAccountToken *struct {
									Audience          *string `tfsdk:"audience" json:"audience,omitempty"`
									ExpirationSeconds *int64  `tfsdk:"expiration_seconds" json:"expirationSeconds,omitempty"`
									Path              *string `tfsdk:"path" json:"path,omitempty"`
								} `tfsdk:"service_account_token" json:"serviceAccountToken,omitempty"`
							} `tfsdk:"sources" json:"sources,omitempty"`
						} `tfsdk:"projected" json:"projected,omitempty"`
						Quobyte *struct {
							Group    *string `tfsdk:"group" json:"group,omitempty"`
							ReadOnly *bool   `tfsdk:"read_only" json:"readOnly,omitempty"`
							Registry *string `tfsdk:"registry" json:"registry,omitempty"`
							Tenant   *string `tfsdk:"tenant" json:"tenant,omitempty"`
							User     *string `tfsdk:"user" json:"user,omitempty"`
							Volume   *string `tfsdk:"volume" json:"volume,omitempty"`
						} `tfsdk:"quobyte" json:"quobyte,omitempty"`
						Rbd *struct {
							FsType    *string   `tfsdk:"fs_type" json:"fsType,omitempty"`
							Image     *string   `tfsdk:"image" json:"image,omitempty"`
							Keyring   *string   `tfsdk:"keyring" json:"keyring,omitempty"`
							Monitors  *[]string `tfsdk:"monitors" json:"monitors,omitempty"`
							Pool      *string   `tfsdk:"pool" json:"pool,omitempty"`
							ReadOnly  *bool     `tfsdk:"read_only" json:"readOnly,omitempty"`
							SecretRef *struct {
								Name *string `tfsdk:"name" json:"name,omitempty"`
							} `tfsdk:"secret_ref" json:"secretRef,omitempty"`
							User *string `tfsdk:"user" json:"user,omitempty"`
						} `tfsdk:"rbd" json:"rbd,omitempty"`
						ScaleIO *struct {
							FsType           *string `tfsdk:"fs_type" json:"fsType,omitempty"`
							Gateway          *string `tfsdk:"gateway" json:"gateway,omitempty"`
							ProtectionDomain *string `tfsdk:"protection_domain" json:"protectionDomain,omitempty"`
							ReadOnly         *bool   `tfsdk:"read_only" json:"readOnly,omitempty"`
							SecretRef        *struct {
								Name *string `tfsdk:"name" json:"name,omitempty"`
							} `tfsdk:"secret_ref" json:"secretRef,omitempty"`
							SslEnabled  *bool   `tfsdk:"ssl_enabled" json:"sslEnabled,omitempty"`
							StorageMode *string `tfsdk:"storage_mode" json:"storageMode,omitempty"`
							StoragePool *string `tfsdk:"storage_pool" json:"storagePool,omitempty"`
							System      *string `tfsdk:"system" json:"system,omitempty"`
							VolumeName  *string `tfsdk:"volume_name" json:"volumeName,omitempty"`
						} `tfsdk:"scale_io" json:"scaleIO,omitempty"`
						Secret *struct {
							DefaultMode *int64 `tfsdk:"default_mode" json:"defaultMode,omitempty"`
							Items       *[]struct {
								Key  *string `tfsdk:"key" json:"key,omitempty"`
								Mode *int64  `tfsdk:"mode" json:"mode,omitempty"`
								Path *string `tfsdk:"path" json:"path,omitempty"`
							} `tfsdk:"items" json:"items,omitempty"`
							Optional   *bool   `tfsdk:"optional" json:"optional,omitempty"`
							SecretName *string `tfsdk:"secret_name" json:"secretName,omitempty"`
						} `tfsdk:"secret" json:"secret,omitempty"`
						Storageos *struct {
							FsType    *string `tfsdk:"fs_type" json:"fsType,omitempty"`
							ReadOnly  *bool   `tfsdk:"read_only" json:"readOnly,omitempty"`
							SecretRef *struct {
								Name *string `tfsdk:"name" json:"name,omitempty"`
							} `tfsdk:"secret_ref" json:"secretRef,omitempty"`
							VolumeName      *string `tfsdk:"volume_name" json:"volumeName,omitempty"`
							VolumeNamespace *string `tfsdk:"volume_namespace" json:"volumeNamespace,omitempty"`
						} `tfsdk:"storageos" json:"storageos,omitempty"`
						VsphereVolume *struct {
							FsType            *string `tfsdk:"fs_type" json:"fsType,omitempty"`
							StoragePolicyID   *string `tfsdk:"storage_policy_id" json:"storagePolicyID,omitempty"`
							StoragePolicyName *string `tfsdk:"storage_policy_name" json:"storagePolicyName,omitempty"`
							VolumePath        *string `tfsdk:"volume_path" json:"volumePath,omitempty"`
						} `tfsdk:"vsphere_volume" json:"vsphereVolume,omitempty"`
					} `tfsdk:"volume_source" json:"volumeSource,omitempty"`
				} `tfsdk:"volumes" json:"volumes,omitempty"`
			} `tfsdk:"deployment" json:"deployment,omitempty"`
			Service *struct {
				ClusterIP                *string   `tfsdk:"cluster_ip" json:"clusterIP,omitempty"`
				ExternalIPs              *[]string `tfsdk:"external_i_ps" json:"externalIPs,omitempty"`
				ExternalName             *string   `tfsdk:"external_name" json:"externalName,omitempty"`
				ExternalTrafficPolicy    *string   `tfsdk:"external_traffic_policy" json:"externalTrafficPolicy,omitempty"`
				HealthCheckNodePort      *int64    `tfsdk:"health_check_node_port" json:"healthCheckNodePort,omitempty"`
				IpFamily                 *string   `tfsdk:"ip_family" json:"ipFamily,omitempty"`
				LoadBalancerIP           *string   `tfsdk:"load_balancer_ip" json:"loadBalancerIP,omitempty"`
				LoadBalancerSourceRanges *[]string `tfsdk:"load_balancer_source_ranges" json:"loadBalancerSourceRanges,omitempty"`
				Metadata                 *struct {
					Annotations *map[string]string `tfsdk:"annotations" json:"annotations,omitempty"`
					Labels      *map[string]string `tfsdk:"labels" json:"labels,omitempty"`
				} `tfsdk:"metadata" json:"metadata,omitempty"`
				Ports *[]struct {
					Name       *string `tfsdk:"name" json:"name,omitempty"`
					NodePort   *int64  `tfsdk:"node_port" json:"nodePort,omitempty"`
					Port       *int64  `tfsdk:"port" json:"port,omitempty"`
					Protocol   *string `tfsdk:"protocol" json:"protocol,omitempty"`
					TargetPort *string `tfsdk:"target_port" json:"targetPort,omitempty"`
				} `tfsdk:"ports" json:"ports,omitempty"`
				PublishNotReadyAddresses *bool              `tfsdk:"publish_not_ready_addresses" json:"publishNotReadyAddresses,omitempty"`
				Selector                 *map[string]string `tfsdk:"selector" json:"selector,omitempty"`
				SessionAffinity          *string            `tfsdk:"session_affinity" json:"sessionAffinity,omitempty"`
				SessionAffinityConfig    *struct {
					ClientIP *struct {
						TimeoutSeconds *int64 `tfsdk:"timeout_seconds" json:"timeoutSeconds,omitempty"`
					} `tfsdk:"client_ip" json:"clientIP,omitempty"`
				} `tfsdk:"session_affinity_config" json:"sessionAffinityConfig,omitempty"`
				Type *string `tfsdk:"type" json:"type,omitempty"`
			} `tfsdk:"service" json:"service,omitempty"`
			Templates *struct {
				CustomTemplates *[]struct {
					Name     *string `tfsdk:"name" json:"name,omitempty"`
					Template *string `tfsdk:"template" json:"template,omitempty"`
				} `tfsdk:"custom_templates" json:"customTemplates,omitempty"`
				Gateway *string `tfsdk:"gateway" json:"gateway,omitempty"`
				Sidecar *string `tfsdk:"sidecar" json:"sidecar,omitempty"`
			} `tfsdk:"templates" json:"templates,omitempty"`
		} `tfsdk:"sidecar_injector" json:"sidecarInjector,omitempty"`
		TelemetryV2 *struct {
			Enabled *bool `tfsdk:"enabled" json:"enabled,omitempty"`
		} `tfsdk:"telemetry_v2" json:"telemetryV2,omitempty"`
		Tracer *struct {
			CustomTags *struct {
				Environment *struct {
					DefaultValue *string `tfsdk:"default_value" json:"defaultValue,omitempty"`
					Name         *string `tfsdk:"name" json:"name,omitempty"`
				} `tfsdk:"environment" json:"environment,omitempty"`
				Header *struct {
					DefaultValue *string `tfsdk:"default_value" json:"defaultValue,omitempty"`
					Name         *string `tfsdk:"name" json:"name,omitempty"`
				} `tfsdk:"header" json:"header,omitempty"`
				Literal *struct {
					Value *string `tfsdk:"value" json:"value,omitempty"`
				} `tfsdk:"literal" json:"literal,omitempty"`
			} `tfsdk:"custom_tags" json:"customTags,omitempty"`
			Datadog *struct {
				Address *string `tfsdk:"address" json:"address,omitempty"`
			} `tfsdk:"datadog" json:"datadog,omitempty"`
			Lightstep *struct {
				AccessToken *string `tfsdk:"access_token" json:"accessToken,omitempty"`
				Address     *string `tfsdk:"address" json:"address,omitempty"`
			} `tfsdk:"lightstep" json:"lightstep,omitempty"`
			MaxPathTagLength *int64 `tfsdk:"max_path_tag_length" json:"maxPathTagLength,omitempty"`
			OpenCensusAgent  *struct {
				Address *string   `tfsdk:"address" json:"address,omitempty"`
				Context *[]string `tfsdk:"context" json:"context,omitempty"`
			} `tfsdk:"open_census_agent" json:"openCensusAgent,omitempty"`
			Sampling    *float64 `tfsdk:"sampling" json:"sampling,omitempty"`
			Stackdriver *struct {
				Debug                    *bool  `tfsdk:"debug" json:"debug,omitempty"`
				MaxNumberOfAnnotations   *int64 `tfsdk:"max_number_of_annotations" json:"maxNumberOfAnnotations,omitempty"`
				MaxNumberOfAttributes    *int64 `tfsdk:"max_number_of_attributes" json:"maxNumberOfAttributes,omitempty"`
				MaxNumberOfMessageEvents *int64 `tfsdk:"max_number_of_message_events" json:"maxNumberOfMessageEvents,omitempty"`
			} `tfsdk:"stackdriver" json:"stackdriver,omitempty"`
			TlsSettings *struct {
				CaCertificates     *string   `tfsdk:"ca_certificates" json:"caCertificates,omitempty"`
				ClientCertificate  *string   `tfsdk:"client_certificate" json:"clientCertificate,omitempty"`
				CredentialName     *string   `tfsdk:"credential_name" json:"credentialName,omitempty"`
				InsecureSkipVerify *bool     `tfsdk:"insecure_skip_verify" json:"insecureSkipVerify,omitempty"`
				Mode               *string   `tfsdk:"mode" json:"mode,omitempty"`
				PrivateKey         *string   `tfsdk:"private_key" json:"privateKey,omitempty"`
				Sni                *string   `tfsdk:"sni" json:"sni,omitempty"`
				SubjectAltNames    *[]string `tfsdk:"subject_alt_names" json:"subjectAltNames,omitempty"`
			} `tfsdk:"tls_settings" json:"tlsSettings,omitempty"`
			Zipkin *struct {
				Address *string `tfsdk:"address" json:"address,omitempty"`
			} `tfsdk:"zipkin" json:"zipkin,omitempty"`
		} `tfsdk:"tracer" json:"tracer,omitempty"`
		Version           *string `tfsdk:"version" json:"version,omitempty"`
		WatchOneNamespace *bool   `tfsdk:"watch_one_namespace" json:"watchOneNamespace,omitempty"`
	} `tfsdk:"spec" json:"spec,omitempty"`
}

type ServicemeshCiscoComIstioMeshGatewayV1Alpha1Manifest

type ServicemeshCiscoComIstioMeshGatewayV1Alpha1Manifest struct{}

func (*ServicemeshCiscoComIstioMeshGatewayV1Alpha1Manifest) Metadata

func (*ServicemeshCiscoComIstioMeshGatewayV1Alpha1Manifest) Read

func (*ServicemeshCiscoComIstioMeshGatewayV1Alpha1Manifest) Schema

type ServicemeshCiscoComIstioMeshGatewayV1Alpha1ManifestData

type ServicemeshCiscoComIstioMeshGatewayV1Alpha1ManifestData struct {
	YAML types.String `tfsdk:"yaml" json:"-"`

	ApiVersion *string `tfsdk:"-" json:"apiVersion"`
	Kind       *string `tfsdk:"-" json:"kind"`

	Metadata struct {
		Name        string            `tfsdk:"name" json:"name"`
		Namespace   string            `tfsdk:"namespace" json:"namespace"`
		Labels      map[string]string `tfsdk:"labels" json:"labels,omitempty"`
		Annotations map[string]string `tfsdk:"annotations" json:"annotations,omitempty"`
	} `tfsdk:"metadata" json:"metadata"`

	Spec *struct {
		Deployment *struct {
			Affinity *struct {
				NodeAffinity *struct {
					PreferredDuringSchedulingIgnoredDuringExecution *[]struct {
						Preference *struct {
							MatchExpressions *[]struct {
								Key      *string   `tfsdk:"key" json:"key,omitempty"`
								Operator *string   `tfsdk:"operator" json:"operator,omitempty"`
								Values   *[]string `tfsdk:"values" json:"values,omitempty"`
							} `tfsdk:"match_expressions" json:"matchExpressions,omitempty"`
							MatchFields *[]struct {
								Key      *string   `tfsdk:"key" json:"key,omitempty"`
								Operator *string   `tfsdk:"operator" json:"operator,omitempty"`
								Values   *[]string `tfsdk:"values" json:"values,omitempty"`
							} `tfsdk:"match_fields" json:"matchFields,omitempty"`
						} `tfsdk:"preference" json:"preference,omitempty"`
						Weight *int64 `tfsdk:"weight" json:"weight,omitempty"`
					} `tfsdk:"preferred_during_scheduling_ignored_during_execution" json:"preferredDuringSchedulingIgnoredDuringExecution,omitempty"`
					RequiredDuringSchedulingIgnoredDuringExecution *struct {
						NodeSelectorTerms *[]struct {
							MatchExpressions *[]struct {
								Key      *string   `tfsdk:"key" json:"key,omitempty"`
								Operator *string   `tfsdk:"operator" json:"operator,omitempty"`
								Values   *[]string `tfsdk:"values" json:"values,omitempty"`
							} `tfsdk:"match_expressions" json:"matchExpressions,omitempty"`
							MatchFields *[]struct {
								Key      *string   `tfsdk:"key" json:"key,omitempty"`
								Operator *string   `tfsdk:"operator" json:"operator,omitempty"`
								Values   *[]string `tfsdk:"values" json:"values,omitempty"`
							} `tfsdk:"match_fields" json:"matchFields,omitempty"`
						} `tfsdk:"node_selector_terms" json:"nodeSelectorTerms,omitempty"`
					} `tfsdk:"required_during_scheduling_ignored_during_execution" json:"requiredDuringSchedulingIgnoredDuringExecution,omitempty"`
				} `tfsdk:"node_affinity" json:"nodeAffinity,omitempty"`
				PodAffinity *struct {
					PreferredDuringSchedulingIgnoredDuringExecution *[]struct {
						PodAffinityTerm *struct {
							LabelSelector *struct {
								MatchExpressions *[]struct {
									Key      *string   `tfsdk:"key" json:"key,omitempty"`
									Operator *string   `tfsdk:"operator" json:"operator,omitempty"`
									Values   *[]string `tfsdk:"values" json:"values,omitempty"`
								} `tfsdk:"match_expressions" json:"matchExpressions,omitempty"`
								MatchLabels *map[string]string `tfsdk:"match_labels" json:"matchLabels,omitempty"`
							} `tfsdk:"label_selector" json:"labelSelector,omitempty"`
							NamespaceSelector *struct {
								MatchExpressions *[]struct {
									Key      *string   `tfsdk:"key" json:"key,omitempty"`
									Operator *string   `tfsdk:"operator" json:"operator,omitempty"`
									Values   *[]string `tfsdk:"values" json:"values,omitempty"`
								} `tfsdk:"match_expressions" json:"matchExpressions,omitempty"`
								MatchLabels *map[string]string `tfsdk:"match_labels" json:"matchLabels,omitempty"`
							} `tfsdk:"namespace_selector" json:"namespaceSelector,omitempty"`
							Namespaces  *[]string `tfsdk:"namespaces" json:"namespaces,omitempty"`
							TopologyKey *string   `tfsdk:"topology_key" json:"topologyKey,omitempty"`
						} `tfsdk:"pod_affinity_term" json:"podAffinityTerm,omitempty"`
						Weight *int64 `tfsdk:"weight" json:"weight,omitempty"`
					} `tfsdk:"preferred_during_scheduling_ignored_during_execution" json:"preferredDuringSchedulingIgnoredDuringExecution,omitempty"`
					RequiredDuringSchedulingIgnoredDuringExecution *[]struct {
						LabelSelector *struct {
							MatchExpressions *[]struct {
								Key      *string   `tfsdk:"key" json:"key,omitempty"`
								Operator *string   `tfsdk:"operator" json:"operator,omitempty"`
								Values   *[]string `tfsdk:"values" json:"values,omitempty"`
							} `tfsdk:"match_expressions" json:"matchExpressions,omitempty"`
							MatchLabels *map[string]string `tfsdk:"match_labels" json:"matchLabels,omitempty"`
						} `tfsdk:"label_selector" json:"labelSelector,omitempty"`
						NamespaceSelector *struct {
							MatchExpressions *[]struct {
								Key      *string   `tfsdk:"key" json:"key,omitempty"`
								Operator *string   `tfsdk:"operator" json:"operator,omitempty"`
								Values   *[]string `tfsdk:"values" json:"values,omitempty"`
							} `tfsdk:"match_expressions" json:"matchExpressions,omitempty"`
							MatchLabels *map[string]string `tfsdk:"match_labels" json:"matchLabels,omitempty"`
						} `tfsdk:"namespace_selector" json:"namespaceSelector,omitempty"`
						Namespaces  *[]string `tfsdk:"namespaces" json:"namespaces,omitempty"`
						TopologyKey *string   `tfsdk:"topology_key" json:"topologyKey,omitempty"`
					} `tfsdk:"required_during_scheduling_ignored_during_execution" json:"requiredDuringSchedulingIgnoredDuringExecution,omitempty"`
				} `tfsdk:"pod_affinity" json:"podAffinity,omitempty"`
				PodAntiAffinity *struct {
					PreferredDuringSchedulingIgnoredDuringExecution *[]struct {
						PodAffinityTerm *struct {
							LabelSelector *struct {
								MatchExpressions *[]struct {
									Key      *string   `tfsdk:"key" json:"key,omitempty"`
									Operator *string   `tfsdk:"operator" json:"operator,omitempty"`
									Values   *[]string `tfsdk:"values" json:"values,omitempty"`
								} `tfsdk:"match_expressions" json:"matchExpressions,omitempty"`
								MatchLabels *map[string]string `tfsdk:"match_labels" json:"matchLabels,omitempty"`
							} `tfsdk:"label_selector" json:"labelSelector,omitempty"`
							NamespaceSelector *struct {
								MatchExpressions *[]struct {
									Key      *string   `tfsdk:"key" json:"key,omitempty"`
									Operator *string   `tfsdk:"operator" json:"operator,omitempty"`
									Values   *[]string `tfsdk:"values" json:"values,omitempty"`
								} `tfsdk:"match_expressions" json:"matchExpressions,omitempty"`
								MatchLabels *map[string]string `tfsdk:"match_labels" json:"matchLabels,omitempty"`
							} `tfsdk:"namespace_selector" json:"namespaceSelector,omitempty"`
							Namespaces  *[]string `tfsdk:"namespaces" json:"namespaces,omitempty"`
							TopologyKey *string   `tfsdk:"topology_key" json:"topologyKey,omitempty"`
						} `tfsdk:"pod_affinity_term" json:"podAffinityTerm,omitempty"`
						Weight *int64 `tfsdk:"weight" json:"weight,omitempty"`
					} `tfsdk:"preferred_during_scheduling_ignored_during_execution" json:"preferredDuringSchedulingIgnoredDuringExecution,omitempty"`
					RequiredDuringSchedulingIgnoredDuringExecution *[]struct {
						LabelSelector *struct {
							MatchExpressions *[]struct {
								Key      *string   `tfsdk:"key" json:"key,omitempty"`
								Operator *string   `tfsdk:"operator" json:"operator,omitempty"`
								Values   *[]string `tfsdk:"values" json:"values,omitempty"`
							} `tfsdk:"match_expressions" json:"matchExpressions,omitempty"`
							MatchLabels *map[string]string `tfsdk:"match_labels" json:"matchLabels,omitempty"`
						} `tfsdk:"label_selector" json:"labelSelector,omitempty"`
						NamespaceSelector *struct {
							MatchExpressions *[]struct {
								Key      *string   `tfsdk:"key" json:"key,omitempty"`
								Operator *string   `tfsdk:"operator" json:"operator,omitempty"`
								Values   *[]string `tfsdk:"values" json:"values,omitempty"`
							} `tfsdk:"match_expressions" json:"matchExpressions,omitempty"`
							MatchLabels *map[string]string `tfsdk:"match_labels" json:"matchLabels,omitempty"`
						} `tfsdk:"namespace_selector" json:"namespaceSelector,omitempty"`
						Namespaces  *[]string `tfsdk:"namespaces" json:"namespaces,omitempty"`
						TopologyKey *string   `tfsdk:"topology_key" json:"topologyKey,omitempty"`
					} `tfsdk:"required_during_scheduling_ignored_during_execution" json:"requiredDuringSchedulingIgnoredDuringExecution,omitempty"`
				} `tfsdk:"pod_anti_affinity" json:"podAntiAffinity,omitempty"`
			} `tfsdk:"affinity" json:"affinity,omitempty"`
			DeploymentStrategy *struct {
				RollingUpdate *struct {
					MaxSurge       *string `tfsdk:"max_surge" json:"maxSurge,omitempty"`
					MaxUnavailable *string `tfsdk:"max_unavailable" json:"maxUnavailable,omitempty"`
				} `tfsdk:"rolling_update" json:"rollingUpdate,omitempty"`
				Type *string `tfsdk:"type" json:"type,omitempty"`
			} `tfsdk:"deployment_strategy" json:"deploymentStrategy,omitempty"`
			Env *[]struct {
				Name      *string `tfsdk:"name" json:"name,omitempty"`
				Value     *string `tfsdk:"value" json:"value,omitempty"`
				ValueFrom *struct {
					ConfigMapKeyRef *struct {
						Key                  *string `tfsdk:"key" json:"key,omitempty"`
						LocalObjectReference *struct {
							Name *string `tfsdk:"name" json:"name,omitempty"`
						} `tfsdk:"local_object_reference" json:"localObjectReference,omitempty"`
						Optional *bool `tfsdk:"optional" json:"optional,omitempty"`
					} `tfsdk:"config_map_key_ref" json:"configMapKeyRef,omitempty"`
					FieldRef *struct {
						ApiVersion *string `tfsdk:"api_version" json:"apiVersion,omitempty"`
						FieldPath  *string `tfsdk:"field_path" json:"fieldPath,omitempty"`
					} `tfsdk:"field_ref" json:"fieldRef,omitempty"`
					ResourceFieldRef *struct {
						ContainerName *string `tfsdk:"container_name" json:"containerName,omitempty"`
						Divisor       *string `tfsdk:"divisor" json:"divisor,omitempty"`
						Resource      *string `tfsdk:"resource" json:"resource,omitempty"`
					} `tfsdk:"resource_field_ref" json:"resourceFieldRef,omitempty"`
					SecretKeyRef *struct {
						Key                  *string `tfsdk:"key" json:"key,omitempty"`
						LocalObjectReference *struct {
							Name *string `tfsdk:"name" json:"name,omitempty"`
						} `tfsdk:"local_object_reference" json:"localObjectReference,omitempty"`
						Optional *bool `tfsdk:"optional" json:"optional,omitempty"`
					} `tfsdk:"secret_key_ref" json:"secretKeyRef,omitempty"`
				} `tfsdk:"value_from" json:"valueFrom,omitempty"`
			} `tfsdk:"env" json:"env,omitempty"`
			Image            *string `tfsdk:"image" json:"image,omitempty"`
			ImagePullPolicy  *string `tfsdk:"image_pull_policy" json:"imagePullPolicy,omitempty"`
			ImagePullSecrets *[]struct {
				Name *string `tfsdk:"name" json:"name,omitempty"`
			} `tfsdk:"image_pull_secrets" json:"imagePullSecrets,omitempty"`
			LivenessProbe *struct {
				Exec *struct {
					Command *[]string `tfsdk:"command" json:"command,omitempty"`
				} `tfsdk:"exec" json:"exec,omitempty"`
				FailureThreshold *int64 `tfsdk:"failure_threshold" json:"failureThreshold,omitempty"`
				Grpc             *struct {
					Port    *int64  `tfsdk:"port" json:"port,omitempty"`
					Service *string `tfsdk:"service" json:"service,omitempty"`
				} `tfsdk:"grpc" json:"grpc,omitempty"`
				HttpGet *struct {
					Host        *string `tfsdk:"host" json:"host,omitempty"`
					HttpHeaders *[]struct {
						Name  *string `tfsdk:"name" json:"name,omitempty"`
						Value *string `tfsdk:"value" json:"value,omitempty"`
					} `tfsdk:"http_headers" json:"httpHeaders,omitempty"`
					Path   *string `tfsdk:"path" json:"path,omitempty"`
					Port   *string `tfsdk:"port" json:"port,omitempty"`
					Scheme *string `tfsdk:"scheme" json:"scheme,omitempty"`
				} `tfsdk:"http_get" json:"httpGet,omitempty"`
				InitialDelaySeconds *int64 `tfsdk:"initial_delay_seconds" json:"initialDelaySeconds,omitempty"`
				PeriodSeconds       *int64 `tfsdk:"period_seconds" json:"periodSeconds,omitempty"`
				SuccessThreshold    *int64 `tfsdk:"success_threshold" json:"successThreshold,omitempty"`
				TcpSocket           *struct {
					Host *string `tfsdk:"host" json:"host,omitempty"`
					Port *string `tfsdk:"port" json:"port,omitempty"`
				} `tfsdk:"tcp_socket" json:"tcpSocket,omitempty"`
				TerminationGracePeriodSeconds *int64 `tfsdk:"termination_grace_period_seconds" json:"terminationGracePeriodSeconds,omitempty"`
				TimeoutSeconds                *int64 `tfsdk:"timeout_seconds" json:"timeoutSeconds,omitempty"`
			} `tfsdk:"liveness_probe" json:"livenessProbe,omitempty"`
			Metadata *struct {
				Annotations *map[string]string `tfsdk:"annotations" json:"annotations,omitempty"`
				Labels      *map[string]string `tfsdk:"labels" json:"labels,omitempty"`
			} `tfsdk:"metadata" json:"metadata,omitempty"`
			NodeSelector        *map[string]string `tfsdk:"node_selector" json:"nodeSelector,omitempty"`
			PodDisruptionBudget *struct {
				MaxUnavailable *string `tfsdk:"max_unavailable" json:"maxUnavailable,omitempty"`
				MinAvailable   *string `tfsdk:"min_available" json:"minAvailable,omitempty"`
			} `tfsdk:"pod_disruption_budget" json:"podDisruptionBudget,omitempty"`
			PodMetadata *struct {
				Annotations *map[string]string `tfsdk:"annotations" json:"annotations,omitempty"`
				Labels      *map[string]string `tfsdk:"labels" json:"labels,omitempty"`
			} `tfsdk:"pod_metadata" json:"podMetadata,omitempty"`
			PodSecurityContext *struct {
				FsGroup             *int64  `tfsdk:"fs_group" json:"fsGroup,omitempty"`
				FsGroupChangePolicy *string `tfsdk:"fs_group_change_policy" json:"fsGroupChangePolicy,omitempty"`
				RunAsGroup          *int64  `tfsdk:"run_as_group" json:"runAsGroup,omitempty"`
				RunAsNonRoot        *bool   `tfsdk:"run_as_non_root" json:"runAsNonRoot,omitempty"`
				RunAsUser           *int64  `tfsdk:"run_as_user" json:"runAsUser,omitempty"`
				SeLinuxOptions      *struct {
					Level *string `tfsdk:"level" json:"level,omitempty"`
					Role  *string `tfsdk:"role" json:"role,omitempty"`
					Type  *string `tfsdk:"type" json:"type,omitempty"`
					User  *string `tfsdk:"user" json:"user,omitempty"`
				} `tfsdk:"se_linux_options" json:"seLinuxOptions,omitempty"`
				SeccompProfile *struct {
					LocalhostProfile *string `tfsdk:"localhost_profile" json:"localhostProfile,omitempty"`
					Type             *string `tfsdk:"type" json:"type,omitempty"`
				} `tfsdk:"seccomp_profile" json:"seccompProfile,omitempty"`
				SupplementalGroups *[]string `tfsdk:"supplemental_groups" json:"supplementalGroups,omitempty"`
				Sysctls            *[]struct {
					Name  *string `tfsdk:"name" json:"name,omitempty"`
					Value *string `tfsdk:"value" json:"value,omitempty"`
				} `tfsdk:"sysctls" json:"sysctls,omitempty"`
				WindowsOptions *struct {
					GmsaCredentialSpec     *string `tfsdk:"gmsa_credential_spec" json:"gmsaCredentialSpec,omitempty"`
					GmsaCredentialSpecName *string `tfsdk:"gmsa_credential_spec_name" json:"gmsaCredentialSpecName,omitempty"`
					HostProcess            *bool   `tfsdk:"host_process" json:"hostProcess,omitempty"`
					RunAsUserName          *string `tfsdk:"run_as_user_name" json:"runAsUserName,omitempty"`
				} `tfsdk:"windows_options" json:"windowsOptions,omitempty"`
			} `tfsdk:"pod_security_context" json:"podSecurityContext,omitempty"`
			PriorityClassName *string `tfsdk:"priority_class_name" json:"priorityClassName,omitempty"`
			ReadinessProbe    *struct {
				Exec *struct {
					Command *[]string `tfsdk:"command" json:"command,omitempty"`
				} `tfsdk:"exec" json:"exec,omitempty"`
				FailureThreshold *int64 `tfsdk:"failure_threshold" json:"failureThreshold,omitempty"`
				Grpc             *struct {
					Port    *int64  `tfsdk:"port" json:"port,omitempty"`
					Service *string `tfsdk:"service" json:"service,omitempty"`
				} `tfsdk:"grpc" json:"grpc,omitempty"`
				HttpGet *struct {
					Host        *string `tfsdk:"host" json:"host,omitempty"`
					HttpHeaders *[]struct {
						Name  *string `tfsdk:"name" json:"name,omitempty"`
						Value *string `tfsdk:"value" json:"value,omitempty"`
					} `tfsdk:"http_headers" json:"httpHeaders,omitempty"`
					Path   *string `tfsdk:"path" json:"path,omitempty"`
					Port   *string `tfsdk:"port" json:"port,omitempty"`
					Scheme *string `tfsdk:"scheme" json:"scheme,omitempty"`
				} `tfsdk:"http_get" json:"httpGet,omitempty"`
				InitialDelaySeconds *int64 `tfsdk:"initial_delay_seconds" json:"initialDelaySeconds,omitempty"`
				PeriodSeconds       *int64 `tfsdk:"period_seconds" json:"periodSeconds,omitempty"`
				SuccessThreshold    *int64 `tfsdk:"success_threshold" json:"successThreshold,omitempty"`
				TcpSocket           *struct {
					Host *string `tfsdk:"host" json:"host,omitempty"`
					Port *string `tfsdk:"port" json:"port,omitempty"`
				} `tfsdk:"tcp_socket" json:"tcpSocket,omitempty"`
				TerminationGracePeriodSeconds *int64 `tfsdk:"termination_grace_period_seconds" json:"terminationGracePeriodSeconds,omitempty"`
				TimeoutSeconds                *int64 `tfsdk:"timeout_seconds" json:"timeoutSeconds,omitempty"`
			} `tfsdk:"readiness_probe" json:"readinessProbe,omitempty"`
			Replicas *struct {
				Count                          *int64 `tfsdk:"count" json:"count,omitempty"`
				Max                            *int64 `tfsdk:"max" json:"max,omitempty"`
				Min                            *int64 `tfsdk:"min" json:"min,omitempty"`
				TargetCPUUtilizationPercentage *int64 `tfsdk:"target_cpu_utilization_percentage" json:"targetCPUUtilizationPercentage,omitempty"`
			} `tfsdk:"replicas" json:"replicas,omitempty"`
			Resources *struct {
				Limits   *map[string]string `tfsdk:"limits" json:"limits,omitempty"`
				Requests *map[string]string `tfsdk:"requests" json:"requests,omitempty"`
			} `tfsdk:"resources" json:"resources,omitempty"`
			SecurityContext *struct {
				AllowPrivilegeEscalation *bool `tfsdk:"allow_privilege_escalation" json:"allowPrivilegeEscalation,omitempty"`
				Capabilities             *struct {
					Add  *[]string `tfsdk:"add" json:"add,omitempty"`
					Drop *[]string `tfsdk:"drop" json:"drop,omitempty"`
				} `tfsdk:"capabilities" json:"capabilities,omitempty"`
				Privileged             *bool   `tfsdk:"privileged" json:"privileged,omitempty"`
				ProcMount              *string `tfsdk:"proc_mount" json:"procMount,omitempty"`
				ReadOnlyRootFilesystem *bool   `tfsdk:"read_only_root_filesystem" json:"readOnlyRootFilesystem,omitempty"`
				RunAsGroup             *int64  `tfsdk:"run_as_group" json:"runAsGroup,omitempty"`
				RunAsNonRoot           *bool   `tfsdk:"run_as_non_root" json:"runAsNonRoot,omitempty"`
				RunAsUser              *int64  `tfsdk:"run_as_user" json:"runAsUser,omitempty"`
				SeLinuxOptions         *struct {
					Level *string `tfsdk:"level" json:"level,omitempty"`
					Role  *string `tfsdk:"role" json:"role,omitempty"`
					Type  *string `tfsdk:"type" json:"type,omitempty"`
					User  *string `tfsdk:"user" json:"user,omitempty"`
				} `tfsdk:"se_linux_options" json:"seLinuxOptions,omitempty"`
				SeccompProfile *struct {
					LocalhostProfile *string `tfsdk:"localhost_profile" json:"localhostProfile,omitempty"`
					Type             *string `tfsdk:"type" json:"type,omitempty"`
				} `tfsdk:"seccomp_profile" json:"seccompProfile,omitempty"`
				WindowsOptions *struct {
					GmsaCredentialSpec     *string `tfsdk:"gmsa_credential_spec" json:"gmsaCredentialSpec,omitempty"`
					GmsaCredentialSpecName *string `tfsdk:"gmsa_credential_spec_name" json:"gmsaCredentialSpecName,omitempty"`
					HostProcess            *bool   `tfsdk:"host_process" json:"hostProcess,omitempty"`
					RunAsUserName          *string `tfsdk:"run_as_user_name" json:"runAsUserName,omitempty"`
				} `tfsdk:"windows_options" json:"windowsOptions,omitempty"`
			} `tfsdk:"security_context" json:"securityContext,omitempty"`
			Tolerations *[]struct {
				Effect            *string `tfsdk:"effect" json:"effect,omitempty"`
				Key               *string `tfsdk:"key" json:"key,omitempty"`
				Operator          *string `tfsdk:"operator" json:"operator,omitempty"`
				TolerationSeconds *int64  `tfsdk:"toleration_seconds" json:"tolerationSeconds,omitempty"`
				Value             *string `tfsdk:"value" json:"value,omitempty"`
			} `tfsdk:"tolerations" json:"tolerations,omitempty"`
			TopologySpreadConstraints *[]struct {
				LabelSelector *struct {
					MatchExpressions *[]struct {
						Key      *string   `tfsdk:"key" json:"key,omitempty"`
						Operator *string   `tfsdk:"operator" json:"operator,omitempty"`
						Values   *[]string `tfsdk:"values" json:"values,omitempty"`
					} `tfsdk:"match_expressions" json:"matchExpressions,omitempty"`
					MatchLabels *map[string]string `tfsdk:"match_labels" json:"matchLabels,omitempty"`
				} `tfsdk:"label_selector" json:"labelSelector,omitempty"`
				MaxSkew           *int64  `tfsdk:"max_skew" json:"maxSkew,omitempty"`
				TopologyKey       *string `tfsdk:"topology_key" json:"topologyKey,omitempty"`
				WhenUnsatisfiable *string `tfsdk:"when_unsatisfiable" json:"whenUnsatisfiable,omitempty"`
			} `tfsdk:"topology_spread_constraints" json:"topologySpreadConstraints,omitempty"`
			VolumeMounts *[]struct {
				MountPath        *string `tfsdk:"mount_path" json:"mountPath,omitempty"`
				MountPropagation *string `tfsdk:"mount_propagation" json:"mountPropagation,omitempty"`
				Name             *string `tfsdk:"name" json:"name,omitempty"`
				ReadOnly         *bool   `tfsdk:"read_only" json:"readOnly,omitempty"`
				SubPath          *string `tfsdk:"sub_path" json:"subPath,omitempty"`
				SubPathExpr      *string `tfsdk:"sub_path_expr" json:"subPathExpr,omitempty"`
			} `tfsdk:"volume_mounts" json:"volumeMounts,omitempty"`
			Volumes *[]struct {
				Name         *string `tfsdk:"name" json:"name,omitempty"`
				VolumeSource *struct {
					AwsElasticBlockStore *struct {
						FsType    *string `tfsdk:"fs_type" json:"fsType,omitempty"`
						Partition *int64  `tfsdk:"partition" json:"partition,omitempty"`
						ReadOnly  *bool   `tfsdk:"read_only" json:"readOnly,omitempty"`
						VolumeID  *string `tfsdk:"volume_id" json:"volumeID,omitempty"`
					} `tfsdk:"aws_elastic_block_store" json:"awsElasticBlockStore,omitempty"`
					AzureDisk *struct {
						CachingMode *string `tfsdk:"caching_mode" json:"cachingMode,omitempty"`
						DiskName    *string `tfsdk:"disk_name" json:"diskName,omitempty"`
						DiskURI     *string `tfsdk:"disk_uri" json:"diskURI,omitempty"`
						FsType      *string `tfsdk:"fs_type" json:"fsType,omitempty"`
						Kind        *string `tfsdk:"kind" json:"kind,omitempty"`
						ReadOnly    *bool   `tfsdk:"read_only" json:"readOnly,omitempty"`
					} `tfsdk:"azure_disk" json:"azureDisk,omitempty"`
					AzureFile *struct {
						ReadOnly   *bool   `tfsdk:"read_only" json:"readOnly,omitempty"`
						SecretName *string `tfsdk:"secret_name" json:"secretName,omitempty"`
						ShareName  *string `tfsdk:"share_name" json:"shareName,omitempty"`
					} `tfsdk:"azure_file" json:"azureFile,omitempty"`
					Cephfs *struct {
						Monitors   *[]string `tfsdk:"monitors" json:"monitors,omitempty"`
						Path       *string   `tfsdk:"path" json:"path,omitempty"`
						ReadOnly   *bool     `tfsdk:"read_only" json:"readOnly,omitempty"`
						SecretFile *string   `tfsdk:"secret_file" json:"secretFile,omitempty"`
						SecretRef  *struct {
							Name *string `tfsdk:"name" json:"name,omitempty"`
						} `tfsdk:"secret_ref" json:"secretRef,omitempty"`
						User *string `tfsdk:"user" json:"user,omitempty"`
					} `tfsdk:"cephfs" json:"cephfs,omitempty"`
					Cinder *struct {
						FsType    *string `tfsdk:"fs_type" json:"fsType,omitempty"`
						ReadOnly  *bool   `tfsdk:"read_only" json:"readOnly,omitempty"`
						SecretRef *struct {
							Name *string `tfsdk:"name" json:"name,omitempty"`
						} `tfsdk:"secret_ref" json:"secretRef,omitempty"`
						VolumeID *string `tfsdk:"volume_id" json:"volumeID,omitempty"`
					} `tfsdk:"cinder" json:"cinder,omitempty"`
					ConfigMap *struct {
						DefaultMode *int64 `tfsdk:"default_mode" json:"defaultMode,omitempty"`
						Items       *[]struct {
							Key  *string `tfsdk:"key" json:"key,omitempty"`
							Mode *int64  `tfsdk:"mode" json:"mode,omitempty"`
							Path *string `tfsdk:"path" json:"path,omitempty"`
						} `tfsdk:"items" json:"items,omitempty"`
						LocalObjectReference *struct {
							Name *string `tfsdk:"name" json:"name,omitempty"`
						} `tfsdk:"local_object_reference" json:"localObjectReference,omitempty"`
						Optional *bool `tfsdk:"optional" json:"optional,omitempty"`
					} `tfsdk:"config_map" json:"configMap,omitempty"`
					Csi *struct {
						Driver               *string `tfsdk:"driver" json:"driver,omitempty"`
						FsType               *string `tfsdk:"fs_type" json:"fsType,omitempty"`
						NodePublishSecretRef *struct {
							Name *string `tfsdk:"name" json:"name,omitempty"`
						} `tfsdk:"node_publish_secret_ref" json:"nodePublishSecretRef,omitempty"`
						ReadOnly         *bool              `tfsdk:"read_only" json:"readOnly,omitempty"`
						VolumeAttributes *map[string]string `tfsdk:"volume_attributes" json:"volumeAttributes,omitempty"`
					} `tfsdk:"csi" json:"csi,omitempty"`
					DownwardAPI *struct {
						DefaultMode *int64 `tfsdk:"default_mode" json:"defaultMode,omitempty"`
						Items       *[]struct {
							FieldRef *struct {
								ApiVersion *string `tfsdk:"api_version" json:"apiVersion,omitempty"`
								FieldPath  *string `tfsdk:"field_path" json:"fieldPath,omitempty"`
							} `tfsdk:"field_ref" json:"fieldRef,omitempty"`
							Mode             *int64  `tfsdk:"mode" json:"mode,omitempty"`
							Path             *string `tfsdk:"path" json:"path,omitempty"`
							ResourceFieldRef *struct {
								ContainerName *string `tfsdk:"container_name" json:"containerName,omitempty"`
								Divisor       *string `tfsdk:"divisor" json:"divisor,omitempty"`
								Resource      *string `tfsdk:"resource" json:"resource,omitempty"`
							} `tfsdk:"resource_field_ref" json:"resourceFieldRef,omitempty"`
						} `tfsdk:"items" json:"items,omitempty"`
					} `tfsdk:"downward_api" json:"downwardAPI,omitempty"`
					EmptyDir *struct {
						Medium    *string `tfsdk:"medium" json:"medium,omitempty"`
						SizeLimit *string `tfsdk:"size_limit" json:"sizeLimit,omitempty"`
					} `tfsdk:"empty_dir" json:"emptyDir,omitempty"`
					Ephemeral *struct {
						VolumeClaimTemplate *struct {
							Metadata *struct {
								Annotations       *map[string]string `tfsdk:"annotations" json:"annotations,omitempty"`
								ClusterName       *string            `tfsdk:"cluster_name" json:"clusterName,omitempty"`
								CreationTimestamp *struct {
									Nanos   *int64 `tfsdk:"nanos" json:"nanos,omitempty"`
									Seconds *int64 `tfsdk:"seconds" json:"seconds,omitempty"`
								} `tfsdk:"creation_timestamp" json:"creationTimestamp,omitempty"`
								DeletionGracePeriodSeconds *int64 `tfsdk:"deletion_grace_period_seconds" json:"deletionGracePeriodSeconds,omitempty"`
								DeletionTimestamp          *struct {
									Nanos   *int64 `tfsdk:"nanos" json:"nanos,omitempty"`
									Seconds *int64 `tfsdk:"seconds" json:"seconds,omitempty"`
								} `tfsdk:"deletion_timestamp" json:"deletionTimestamp,omitempty"`
								Finalizers    *[]string          `tfsdk:"finalizers" json:"finalizers,omitempty"`
								GenerateName  *string            `tfsdk:"generate_name" json:"generateName,omitempty"`
								Generation    *int64             `tfsdk:"generation" json:"generation,omitempty"`
								Labels        *map[string]string `tfsdk:"labels" json:"labels,omitempty"`
								ManagedFields *[]struct {
									ApiVersion *string `tfsdk:"api_version" json:"apiVersion,omitempty"`
									FieldsType *string `tfsdk:"fields_type" json:"fieldsType,omitempty"`
									FieldsV1   *struct {
										Raw *string `tfsdk:"raw" json:"Raw,omitempty"`
									} `tfsdk:"fields_v1" json:"fieldsV1,omitempty"`
									Manager     *string `tfsdk:"manager" json:"manager,omitempty"`
									Operation   *string `tfsdk:"operation" json:"operation,omitempty"`
									Subresource *string `tfsdk:"subresource" json:"subresource,omitempty"`
									Time        *struct {
										Nanos   *int64 `tfsdk:"nanos" json:"nanos,omitempty"`
										Seconds *int64 `tfsdk:"seconds" json:"seconds,omitempty"`
									} `tfsdk:"time" json:"time,omitempty"`
								} `tfsdk:"managed_fields" json:"managedFields,omitempty"`
								Name            *string `tfsdk:"name" json:"name,omitempty"`
								Namespace       *string `tfsdk:"namespace" json:"namespace,omitempty"`
								OwnerReferences *[]struct {
									ApiVersion         *string `tfsdk:"api_version" json:"apiVersion,omitempty"`
									BlockOwnerDeletion *bool   `tfsdk:"block_owner_deletion" json:"blockOwnerDeletion,omitempty"`
									Controller         *bool   `tfsdk:"controller" json:"controller,omitempty"`
									Kind               *string `tfsdk:"kind" json:"kind,omitempty"`
									Name               *string `tfsdk:"name" json:"name,omitempty"`
									Uid                *string `tfsdk:"uid" json:"uid,omitempty"`
								} `tfsdk:"owner_references" json:"ownerReferences,omitempty"`
								ResourceVersion *string `tfsdk:"resource_version" json:"resourceVersion,omitempty"`
								SelfLink        *string `tfsdk:"self_link" json:"selfLink,omitempty"`
								Uid             *string `tfsdk:"uid" json:"uid,omitempty"`
							} `tfsdk:"metadata" json:"metadata,omitempty"`
							Spec *struct {
								AccessModes *[]string `tfsdk:"access_modes" json:"accessModes,omitempty"`
								DataSource  *struct {
									ApiGroup *string `tfsdk:"api_group" json:"apiGroup,omitempty"`
									Kind     *string `tfsdk:"kind" json:"kind,omitempty"`
									Name     *string `tfsdk:"name" json:"name,omitempty"`
								} `tfsdk:"data_source" json:"dataSource,omitempty"`
								DataSourceRef *struct {
									ApiGroup *string `tfsdk:"api_group" json:"apiGroup,omitempty"`
									Kind     *string `tfsdk:"kind" json:"kind,omitempty"`
									Name     *string `tfsdk:"name" json:"name,omitempty"`
								} `tfsdk:"data_source_ref" json:"dataSourceRef,omitempty"`
								Resources *struct {
									Limits *struct {
										String *string `tfsdk:"string" json:"string,omitempty"`
									} `tfsdk:"limits" json:"limits,omitempty"`
									Requests *struct {
										String *string `tfsdk:"string" json:"string,omitempty"`
									} `tfsdk:"requests" json:"requests,omitempty"`
								} `tfsdk:"resources" json:"resources,omitempty"`
								Selector *struct {
									MatchExpressions *[]struct {
										Key      *string   `tfsdk:"key" json:"key,omitempty"`
										Operator *string   `tfsdk:"operator" json:"operator,omitempty"`
										Values   *[]string `tfsdk:"values" json:"values,omitempty"`
									} `tfsdk:"match_expressions" json:"matchExpressions,omitempty"`
									MatchLabels *map[string]string `tfsdk:"match_labels" json:"matchLabels,omitempty"`
								} `tfsdk:"selector" json:"selector,omitempty"`
								StorageClassName *string `tfsdk:"storage_class_name" json:"storageClassName,omitempty"`
								VolumeMode       *string `tfsdk:"volume_mode" json:"volumeMode,omitempty"`
								VolumeName       *string `tfsdk:"volume_name" json:"volumeName,omitempty"`
							} `tfsdk:"spec" json:"spec,omitempty"`
						} `tfsdk:"volume_claim_template" json:"volumeClaimTemplate,omitempty"`
					} `tfsdk:"ephemeral" json:"ephemeral,omitempty"`
					Fc *struct {
						FsType     *string   `tfsdk:"fs_type" json:"fsType,omitempty"`
						Lun        *int64    `tfsdk:"lun" json:"lun,omitempty"`
						ReadOnly   *bool     `tfsdk:"read_only" json:"readOnly,omitempty"`
						TargetWWNs *[]string `tfsdk:"target_ww_ns" json:"targetWWNs,omitempty"`
						Wwids      *[]string `tfsdk:"wwids" json:"wwids,omitempty"`
					} `tfsdk:"fc" json:"fc,omitempty"`
					FlexVolume *struct {
						Driver    *string            `tfsdk:"driver" json:"driver,omitempty"`
						FsType    *string            `tfsdk:"fs_type" json:"fsType,omitempty"`
						Options   *map[string]string `tfsdk:"options" json:"options,omitempty"`
						ReadOnly  *bool              `tfsdk:"read_only" json:"readOnly,omitempty"`
						SecretRef *struct {
							Name *string `tfsdk:"name" json:"name,omitempty"`
						} `tfsdk:"secret_ref" json:"secretRef,omitempty"`
					} `tfsdk:"flex_volume" json:"flexVolume,omitempty"`
					Flocker *struct {
						DatasetName *string `tfsdk:"dataset_name" json:"datasetName,omitempty"`
						DatasetUUID *string `tfsdk:"dataset_uuid" json:"datasetUUID,omitempty"`
					} `tfsdk:"flocker" json:"flocker,omitempty"`
					GcePersistentDisk *struct {
						FsType    *string `tfsdk:"fs_type" json:"fsType,omitempty"`
						Partition *int64  `tfsdk:"partition" json:"partition,omitempty"`
						PdName    *string `tfsdk:"pd_name" json:"pdName,omitempty"`
						ReadOnly  *bool   `tfsdk:"read_only" json:"readOnly,omitempty"`
					} `tfsdk:"gce_persistent_disk" json:"gcePersistentDisk,omitempty"`
					GitRepo *struct {
						Directory  *string `tfsdk:"directory" json:"directory,omitempty"`
						Repository *string `tfsdk:"repository" json:"repository,omitempty"`
						Revision   *string `tfsdk:"revision" json:"revision,omitempty"`
					} `tfsdk:"git_repo" json:"gitRepo,omitempty"`
					Glusterfs *struct {
						Endpoints *string `tfsdk:"endpoints" json:"endpoints,omitempty"`
						Path      *string `tfsdk:"path" json:"path,omitempty"`
						ReadOnly  *bool   `tfsdk:"read_only" json:"readOnly,omitempty"`
					} `tfsdk:"glusterfs" json:"glusterfs,omitempty"`
					HostPath *struct {
						Path *string `tfsdk:"path" json:"path,omitempty"`
						Type *string `tfsdk:"type" json:"type,omitempty"`
					} `tfsdk:"host_path" json:"hostPath,omitempty"`
					Iscsi *struct {
						ChapAuthDiscovery *bool     `tfsdk:"chap_auth_discovery" json:"chapAuthDiscovery,omitempty"`
						ChapAuthSession   *bool     `tfsdk:"chap_auth_session" json:"chapAuthSession,omitempty"`
						FsType            *string   `tfsdk:"fs_type" json:"fsType,omitempty"`
						InitiatorName     *string   `tfsdk:"initiator_name" json:"initiatorName,omitempty"`
						Iqn               *string   `tfsdk:"iqn" json:"iqn,omitempty"`
						IscsiInterface    *string   `tfsdk:"iscsi_interface" json:"iscsiInterface,omitempty"`
						Lun               *int64    `tfsdk:"lun" json:"lun,omitempty"`
						Portals           *[]string `tfsdk:"portals" json:"portals,omitempty"`
						ReadOnly          *bool     `tfsdk:"read_only" json:"readOnly,omitempty"`
						SecretRef         *struct {
							Name *string `tfsdk:"name" json:"name,omitempty"`
						} `tfsdk:"secret_ref" json:"secretRef,omitempty"`
						TargetPortal *string `tfsdk:"target_portal" json:"targetPortal,omitempty"`
					} `tfsdk:"iscsi" json:"iscsi,omitempty"`
					Nfs *struct {
						Path     *string `tfsdk:"path" json:"path,omitempty"`
						ReadOnly *bool   `tfsdk:"read_only" json:"readOnly,omitempty"`
						Server   *string `tfsdk:"server" json:"server,omitempty"`
					} `tfsdk:"nfs" json:"nfs,omitempty"`
					PersistentVolumeClaim *struct {
						ClaimName *string `tfsdk:"claim_name" json:"claimName,omitempty"`
						ReadOnly  *bool   `tfsdk:"read_only" json:"readOnly,omitempty"`
					} `tfsdk:"persistent_volume_claim" json:"persistentVolumeClaim,omitempty"`
					PhotonPersistentDisk *struct {
						FsType *string `tfsdk:"fs_type" json:"fsType,omitempty"`
						PdID   *string `tfsdk:"pd_id" json:"pdID,omitempty"`
					} `tfsdk:"photon_persistent_disk" json:"photonPersistentDisk,omitempty"`
					PortworxVolume *struct {
						FsType   *string `tfsdk:"fs_type" json:"fsType,omitempty"`
						ReadOnly *bool   `tfsdk:"read_only" json:"readOnly,omitempty"`
						VolumeID *string `tfsdk:"volume_id" json:"volumeID,omitempty"`
					} `tfsdk:"portworx_volume" json:"portworxVolume,omitempty"`
					Projected *struct {
						DefaultMode *int64 `tfsdk:"default_mode" json:"defaultMode,omitempty"`
						Sources     *[]struct {
							ConfigMap *struct {
								Items *[]struct {
									Key  *string `tfsdk:"key" json:"key,omitempty"`
									Mode *int64  `tfsdk:"mode" json:"mode,omitempty"`
									Path *string `tfsdk:"path" json:"path,omitempty"`
								} `tfsdk:"items" json:"items,omitempty"`
								LocalObjectReference *struct {
									Name *string `tfsdk:"name" json:"name,omitempty"`
								} `tfsdk:"local_object_reference" json:"localObjectReference,omitempty"`
								Optional *bool `tfsdk:"optional" json:"optional,omitempty"`
							} `tfsdk:"config_map" json:"configMap,omitempty"`
							DownwardAPI *struct {
								Items *[]struct {
									FieldRef *struct {
										ApiVersion *string `tfsdk:"api_version" json:"apiVersion,omitempty"`
										FieldPath  *string `tfsdk:"field_path" json:"fieldPath,omitempty"`
									} `tfsdk:"field_ref" json:"fieldRef,omitempty"`
									Mode             *int64  `tfsdk:"mode" json:"mode,omitempty"`
									Path             *string `tfsdk:"path" json:"path,omitempty"`
									ResourceFieldRef *struct {
										ContainerName *string `tfsdk:"container_name" json:"containerName,omitempty"`
										Divisor       *string `tfsdk:"divisor" json:"divisor,omitempty"`
										Resource      *string `tfsdk:"resource" json:"resource,omitempty"`
									} `tfsdk:"resource_field_ref" json:"resourceFieldRef,omitempty"`
								} `tfsdk:"items" json:"items,omitempty"`
							} `tfsdk:"downward_api" json:"downwardAPI,omitempty"`
							Secret *struct {
								Items *[]struct {
									Key  *string `tfsdk:"key" json:"key,omitempty"`
									Mode *int64  `tfsdk:"mode" json:"mode,omitempty"`
									Path *string `tfsdk:"path" json:"path,omitempty"`
								} `tfsdk:"items" json:"items,omitempty"`
								LocalObjectReference *struct {
									Name *string `tfsdk:"name" json:"name,omitempty"`
								} `tfsdk:"local_object_reference" json:"localObjectReference,omitempty"`
								Optional *bool `tfsdk:"optional" json:"optional,omitempty"`
							} `tfsdk:"secret" json:"secret,omitempty"`
							ServiceAccountToken *struct {
								Audience          *string `tfsdk:"audience" json:"audience,omitempty"`
								ExpirationSeconds *int64  `tfsdk:"expiration_seconds" json:"expirationSeconds,omitempty"`
								Path              *string `tfsdk:"path" json:"path,omitempty"`
							} `tfsdk:"service_account_token" json:"serviceAccountToken,omitempty"`
						} `tfsdk:"sources" json:"sources,omitempty"`
					} `tfsdk:"projected" json:"projected,omitempty"`
					Quobyte *struct {
						Group    *string `tfsdk:"group" json:"group,omitempty"`
						ReadOnly *bool   `tfsdk:"read_only" json:"readOnly,omitempty"`
						Registry *string `tfsdk:"registry" json:"registry,omitempty"`
						Tenant   *string `tfsdk:"tenant" json:"tenant,omitempty"`
						User     *string `tfsdk:"user" json:"user,omitempty"`
						Volume   *string `tfsdk:"volume" json:"volume,omitempty"`
					} `tfsdk:"quobyte" json:"quobyte,omitempty"`
					Rbd *struct {
						FsType    *string   `tfsdk:"fs_type" json:"fsType,omitempty"`
						Image     *string   `tfsdk:"image" json:"image,omitempty"`
						Keyring   *string   `tfsdk:"keyring" json:"keyring,omitempty"`
						Monitors  *[]string `tfsdk:"monitors" json:"monitors,omitempty"`
						Pool      *string   `tfsdk:"pool" json:"pool,omitempty"`
						ReadOnly  *bool     `tfsdk:"read_only" json:"readOnly,omitempty"`
						SecretRef *struct {
							Name *string `tfsdk:"name" json:"name,omitempty"`
						} `tfsdk:"secret_ref" json:"secretRef,omitempty"`
						User *string `tfsdk:"user" json:"user,omitempty"`
					} `tfsdk:"rbd" json:"rbd,omitempty"`
					ScaleIO *struct {
						FsType           *string `tfsdk:"fs_type" json:"fsType,omitempty"`
						Gateway          *string `tfsdk:"gateway" json:"gateway,omitempty"`
						ProtectionDomain *string `tfsdk:"protection_domain" json:"protectionDomain,omitempty"`
						ReadOnly         *bool   `tfsdk:"read_only" json:"readOnly,omitempty"`
						SecretRef        *struct {
							Name *string `tfsdk:"name" json:"name,omitempty"`
						} `tfsdk:"secret_ref" json:"secretRef,omitempty"`
						SslEnabled  *bool   `tfsdk:"ssl_enabled" json:"sslEnabled,omitempty"`
						StorageMode *string `tfsdk:"storage_mode" json:"storageMode,omitempty"`
						StoragePool *string `tfsdk:"storage_pool" json:"storagePool,omitempty"`
						System      *string `tfsdk:"system" json:"system,omitempty"`
						VolumeName  *string `tfsdk:"volume_name" json:"volumeName,omitempty"`
					} `tfsdk:"scale_io" json:"scaleIO,omitempty"`
					Secret *struct {
						DefaultMode *int64 `tfsdk:"default_mode" json:"defaultMode,omitempty"`
						Items       *[]struct {
							Key  *string `tfsdk:"key" json:"key,omitempty"`
							Mode *int64  `tfsdk:"mode" json:"mode,omitempty"`
							Path *string `tfsdk:"path" json:"path,omitempty"`
						} `tfsdk:"items" json:"items,omitempty"`
						Optional   *bool   `tfsdk:"optional" json:"optional,omitempty"`
						SecretName *string `tfsdk:"secret_name" json:"secretName,omitempty"`
					} `tfsdk:"secret" json:"secret,omitempty"`
					Storageos *struct {
						FsType    *string `tfsdk:"fs_type" json:"fsType,omitempty"`
						ReadOnly  *bool   `tfsdk:"read_only" json:"readOnly,omitempty"`
						SecretRef *struct {
							Name *string `tfsdk:"name" json:"name,omitempty"`
						} `tfsdk:"secret_ref" json:"secretRef,omitempty"`
						VolumeName      *string `tfsdk:"volume_name" json:"volumeName,omitempty"`
						VolumeNamespace *string `tfsdk:"volume_namespace" json:"volumeNamespace,omitempty"`
					} `tfsdk:"storageos" json:"storageos,omitempty"`
					VsphereVolume *struct {
						FsType            *string `tfsdk:"fs_type" json:"fsType,omitempty"`
						StoragePolicyID   *string `tfsdk:"storage_policy_id" json:"storagePolicyID,omitempty"`
						StoragePolicyName *string `tfsdk:"storage_policy_name" json:"storagePolicyName,omitempty"`
						VolumePath        *string `tfsdk:"volume_path" json:"volumePath,omitempty"`
					} `tfsdk:"vsphere_volume" json:"vsphereVolume,omitempty"`
				} `tfsdk:"volume_source" json:"volumeSource,omitempty"`
			} `tfsdk:"volumes" json:"volumes,omitempty"`
		} `tfsdk:"deployment" json:"deployment,omitempty"`
		IstioControlPlane *struct {
			Name      *string `tfsdk:"name" json:"name,omitempty"`
			Namespace *string `tfsdk:"namespace" json:"namespace,omitempty"`
		} `tfsdk:"istio_control_plane" json:"istioControlPlane,omitempty"`
		K8sResourceOverlays *[]struct {
			GroupVersionKind *struct {
				Group   *string `tfsdk:"group" json:"group,omitempty"`
				Kind    *string `tfsdk:"kind" json:"kind,omitempty"`
				Version *string `tfsdk:"version" json:"version,omitempty"`
			} `tfsdk:"group_version_kind" json:"groupVersionKind,omitempty"`
			ObjectKey *struct {
				Name      *string `tfsdk:"name" json:"name,omitempty"`
				Namespace *string `tfsdk:"namespace" json:"namespace,omitempty"`
			} `tfsdk:"object_key" json:"objectKey,omitempty"`
			Patches *[]struct {
				ParseValue *bool   `tfsdk:"parse_value" json:"parseValue,omitempty"`
				Path       *string `tfsdk:"path" json:"path,omitempty"`
				Type       *string `tfsdk:"type" json:"type,omitempty"`
				Value      *string `tfsdk:"value" json:"value,omitempty"`
			} `tfsdk:"patches" json:"patches,omitempty"`
		} `tfsdk:"k8s_resource_overlays" json:"k8sResourceOverlays,omitempty"`
		RunAsRoot *bool `tfsdk:"run_as_root" json:"runAsRoot,omitempty"`
		Service   *struct {
			ClusterIP                *string   `tfsdk:"cluster_ip" json:"clusterIP,omitempty"`
			ExternalIPs              *[]string `tfsdk:"external_i_ps" json:"externalIPs,omitempty"`
			ExternalName             *string   `tfsdk:"external_name" json:"externalName,omitempty"`
			ExternalTrafficPolicy    *string   `tfsdk:"external_traffic_policy" json:"externalTrafficPolicy,omitempty"`
			HealthCheckNodePort      *int64    `tfsdk:"health_check_node_port" json:"healthCheckNodePort,omitempty"`
			IpFamily                 *string   `tfsdk:"ip_family" json:"ipFamily,omitempty"`
			LoadBalancerIP           *string   `tfsdk:"load_balancer_ip" json:"loadBalancerIP,omitempty"`
			LoadBalancerSourceRanges *[]string `tfsdk:"load_balancer_source_ranges" json:"loadBalancerSourceRanges,omitempty"`
			Metadata                 *struct {
				Annotations *map[string]string `tfsdk:"annotations" json:"annotations,omitempty"`
				Labels      *map[string]string `tfsdk:"labels" json:"labels,omitempty"`
			} `tfsdk:"metadata" json:"metadata,omitempty"`
			Ports *[]struct {
				Name       *string `tfsdk:"name" json:"name,omitempty"`
				NodePort   *int64  `tfsdk:"node_port" json:"nodePort,omitempty"`
				Port       *int64  `tfsdk:"port" json:"port,omitempty"`
				Protocol   *string `tfsdk:"protocol" json:"protocol,omitempty"`
				TargetPort *string `tfsdk:"target_port" json:"targetPort,omitempty"`
			} `tfsdk:"ports" json:"ports,omitempty"`
			PublishNotReadyAddresses *bool              `tfsdk:"publish_not_ready_addresses" json:"publishNotReadyAddresses,omitempty"`
			Selector                 *map[string]string `tfsdk:"selector" json:"selector,omitempty"`
			SessionAffinity          *string            `tfsdk:"session_affinity" json:"sessionAffinity,omitempty"`
			SessionAffinityConfig    *struct {
				ClientIP *struct {
					TimeoutSeconds *int64 `tfsdk:"timeout_seconds" json:"timeoutSeconds,omitempty"`
				} `tfsdk:"client_ip" json:"clientIP,omitempty"`
			} `tfsdk:"session_affinity_config" json:"sessionAffinityConfig,omitempty"`
			Type *string `tfsdk:"type" json:"type,omitempty"`
		} `tfsdk:"service" json:"service,omitempty"`
		Type *string `tfsdk:"type" json:"type,omitempty"`
	} `tfsdk:"spec" json:"spec,omitempty"`
}

type ServicemeshCiscoComIstioMeshV1Alpha1Manifest

type ServicemeshCiscoComIstioMeshV1Alpha1Manifest struct{}

func (*ServicemeshCiscoComIstioMeshV1Alpha1Manifest) Metadata

func (*ServicemeshCiscoComIstioMeshV1Alpha1Manifest) Read

func (*ServicemeshCiscoComIstioMeshV1Alpha1Manifest) Schema

type ServicemeshCiscoComIstioMeshV1Alpha1ManifestData

type ServicemeshCiscoComIstioMeshV1Alpha1ManifestData struct {
	YAML types.String `tfsdk:"yaml" json:"-"`

	ApiVersion *string `tfsdk:"-" json:"apiVersion"`
	Kind       *string `tfsdk:"-" json:"kind"`

	Metadata struct {
		Name        string            `tfsdk:"name" json:"name"`
		Namespace   string            `tfsdk:"namespace" json:"namespace"`
		Labels      map[string]string `tfsdk:"labels" json:"labels,omitempty"`
		Annotations map[string]string `tfsdk:"annotations" json:"annotations,omitempty"`
	} `tfsdk:"metadata" json:"metadata"`

	Spec *struct {
		Config *struct {
			AccessLogEncoding *string `tfsdk:"access_log_encoding" json:"accessLogEncoding,omitempty"`
			AccessLogFile     *string `tfsdk:"access_log_file" json:"accessLogFile,omitempty"`
			AccessLogFormat   *string `tfsdk:"access_log_format" json:"accessLogFormat,omitempty"`
			Ca                *struct {
				Address        *string `tfsdk:"address" json:"address,omitempty"`
				IstiodSide     *bool   `tfsdk:"istiod_side" json:"istiodSide,omitempty"`
				RequestTimeout *string `tfsdk:"request_timeout" json:"requestTimeout,omitempty"`
				TlsSettings    *struct {
					CaCertificates     *string   `tfsdk:"ca_certificates" json:"caCertificates,omitempty"`
					ClientCertificate  *string   `tfsdk:"client_certificate" json:"clientCertificate,omitempty"`
					CredentialName     *string   `tfsdk:"credential_name" json:"credentialName,omitempty"`
					InsecureSkipVerify *bool     `tfsdk:"insecure_skip_verify" json:"insecureSkipVerify,omitempty"`
					Mode               *string   `tfsdk:"mode" json:"mode,omitempty"`
					PrivateKey         *string   `tfsdk:"private_key" json:"privateKey,omitempty"`
					Sni                *string   `tfsdk:"sni" json:"sni,omitempty"`
					SubjectAltNames    *[]string `tfsdk:"subject_alt_names" json:"subjectAltNames,omitempty"`
				} `tfsdk:"tls_settings" json:"tlsSettings,omitempty"`
			} `tfsdk:"ca" json:"ca,omitempty"`
			CaCertificates *[]struct {
				CertSigners     *[]string `tfsdk:"cert_signers" json:"certSigners,omitempty"`
				Pem             *string   `tfsdk:"pem" json:"pem,omitempty"`
				SpiffeBundleUrl *string   `tfsdk:"spiffe_bundle_url" json:"spiffeBundleUrl,omitempty"`
				TrustDomains    *[]string `tfsdk:"trust_domains" json:"trustDomains,omitempty"`
			} `tfsdk:"ca_certificates" json:"caCertificates,omitempty"`
			Certificates *[]struct {
				DnsNames   *[]string `tfsdk:"dns_names" json:"dnsNames,omitempty"`
				SecretName *string   `tfsdk:"secret_name" json:"secretName,omitempty"`
			} `tfsdk:"certificates" json:"certificates,omitempty"`
			ConfigSources *[]struct {
				Address             *string   `tfsdk:"address" json:"address,omitempty"`
				SubscribedResources *[]string `tfsdk:"subscribed_resources" json:"subscribedResources,omitempty"`
				TlsSettings         *struct {
					CaCertificates     *string   `tfsdk:"ca_certificates" json:"caCertificates,omitempty"`
					ClientCertificate  *string   `tfsdk:"client_certificate" json:"clientCertificate,omitempty"`
					CredentialName     *string   `tfsdk:"credential_name" json:"credentialName,omitempty"`
					InsecureSkipVerify *bool     `tfsdk:"insecure_skip_verify" json:"insecureSkipVerify,omitempty"`
					Mode               *string   `tfsdk:"mode" json:"mode,omitempty"`
					PrivateKey         *string   `tfsdk:"private_key" json:"privateKey,omitempty"`
					Sni                *string   `tfsdk:"sni" json:"sni,omitempty"`
					SubjectAltNames    *[]string `tfsdk:"subject_alt_names" json:"subjectAltNames,omitempty"`
				} `tfsdk:"tls_settings" json:"tlsSettings,omitempty"`
			} `tfsdk:"config_sources" json:"configSources,omitempty"`
			ConnectTimeout *string `tfsdk:"connect_timeout" json:"connectTimeout,omitempty"`
			DefaultConfig  *struct {
				AvailabilityZone       *string   `tfsdk:"availability_zone" json:"availabilityZone,omitempty"`
				BinaryPath             *string   `tfsdk:"binary_path" json:"binaryPath,omitempty"`
				CaCertificatesPem      *[]string `tfsdk:"ca_certificates_pem" json:"caCertificatesPem,omitempty"`
				Concurrency            *int64    `tfsdk:"concurrency" json:"concurrency,omitempty"`
				ConfigPath             *string   `tfsdk:"config_path" json:"configPath,omitempty"`
				ControlPlaneAuthPolicy *string   `tfsdk:"control_plane_auth_policy" json:"controlPlaneAuthPolicy,omitempty"`
				CustomConfigFile       *string   `tfsdk:"custom_config_file" json:"customConfigFile,omitempty"`
				DiscoveryAddress       *string   `tfsdk:"discovery_address" json:"discoveryAddress,omitempty"`
				DiscoveryRefreshDelay  *string   `tfsdk:"discovery_refresh_delay" json:"discoveryRefreshDelay,omitempty"`
				DrainDuration          *string   `tfsdk:"drain_duration" json:"drainDuration,omitempty"`
				EnvoyAccessLogService  *struct {
					Address      *string `tfsdk:"address" json:"address,omitempty"`
					TcpKeepalive *struct {
						Interval *string `tfsdk:"interval" json:"interval,omitempty"`
						Probes   *int64  `tfsdk:"probes" json:"probes,omitempty"`
						Time     *string `tfsdk:"time" json:"time,omitempty"`
					} `tfsdk:"tcp_keepalive" json:"tcpKeepalive,omitempty"`
					TlsSettings *struct {
						CaCertificates     *string   `tfsdk:"ca_certificates" json:"caCertificates,omitempty"`
						ClientCertificate  *string   `tfsdk:"client_certificate" json:"clientCertificate,omitempty"`
						CredentialName     *string   `tfsdk:"credential_name" json:"credentialName,omitempty"`
						InsecureSkipVerify *bool     `tfsdk:"insecure_skip_verify" json:"insecureSkipVerify,omitempty"`
						Mode               *string   `tfsdk:"mode" json:"mode,omitempty"`
						PrivateKey         *string   `tfsdk:"private_key" json:"privateKey,omitempty"`
						Sni                *string   `tfsdk:"sni" json:"sni,omitempty"`
						SubjectAltNames    *[]string `tfsdk:"subject_alt_names" json:"subjectAltNames,omitempty"`
					} `tfsdk:"tls_settings" json:"tlsSettings,omitempty"`
				} `tfsdk:"envoy_access_log_service" json:"envoyAccessLogService,omitempty"`
				EnvoyMetricsService *struct {
					Address      *string `tfsdk:"address" json:"address,omitempty"`
					TcpKeepalive *struct {
						Interval *string `tfsdk:"interval" json:"interval,omitempty"`
						Probes   *int64  `tfsdk:"probes" json:"probes,omitempty"`
						Time     *string `tfsdk:"time" json:"time,omitempty"`
					} `tfsdk:"tcp_keepalive" json:"tcpKeepalive,omitempty"`
					TlsSettings *struct {
						CaCertificates     *string   `tfsdk:"ca_certificates" json:"caCertificates,omitempty"`
						ClientCertificate  *string   `tfsdk:"client_certificate" json:"clientCertificate,omitempty"`
						CredentialName     *string   `tfsdk:"credential_name" json:"credentialName,omitempty"`
						InsecureSkipVerify *bool     `tfsdk:"insecure_skip_verify" json:"insecureSkipVerify,omitempty"`
						Mode               *string   `tfsdk:"mode" json:"mode,omitempty"`
						PrivateKey         *string   `tfsdk:"private_key" json:"privateKey,omitempty"`
						Sni                *string   `tfsdk:"sni" json:"sni,omitempty"`
						SubjectAltNames    *[]string `tfsdk:"subject_alt_names" json:"subjectAltNames,omitempty"`
					} `tfsdk:"tls_settings" json:"tlsSettings,omitempty"`
				} `tfsdk:"envoy_metrics_service" json:"envoyMetricsService,omitempty"`
				EnvoyMetricsServiceAddress *string   `tfsdk:"envoy_metrics_service_address" json:"envoyMetricsServiceAddress,omitempty"`
				ExtraStatTags              *[]string `tfsdk:"extra_stat_tags" json:"extraStatTags,omitempty"`
				GatewayTopology            *struct {
					ForwardClientCertDetails *string `tfsdk:"forward_client_cert_details" json:"forwardClientCertDetails,omitempty"`
					NumTrustedProxies        *int64  `tfsdk:"num_trusted_proxies" json:"numTrustedProxies,omitempty"`
				} `tfsdk:"gateway_topology" json:"gatewayTopology,omitempty"`
				HoldApplicationUntilProxyStarts *bool `tfsdk:"hold_application_until_proxy_starts" json:"holdApplicationUntilProxyStarts,omitempty"`
				Image                           *struct {
					ImageType *string `tfsdk:"image_type" json:"imageType,omitempty"`
				} `tfsdk:"image" json:"image,omitempty"`
				InterceptionMode   *string `tfsdk:"interception_mode" json:"interceptionMode,omitempty"`
				MeshId             *string `tfsdk:"mesh_id" json:"meshId,omitempty"`
				PrivateKeyProvider *struct {
					Cryptomb *struct {
						PollDelay *string `tfsdk:"poll_delay" json:"pollDelay,omitempty"`
					} `tfsdk:"cryptomb" json:"cryptomb,omitempty"`
					Qat *struct {
						PollDelay *string `tfsdk:"poll_delay" json:"pollDelay,omitempty"`
					} `tfsdk:"qat" json:"qat,omitempty"`
				} `tfsdk:"private_key_provider" json:"privateKeyProvider,omitempty"`
				ProxyAdminPort             *int64             `tfsdk:"proxy_admin_port" json:"proxyAdminPort,omitempty"`
				ProxyBootstrapTemplatePath *string            `tfsdk:"proxy_bootstrap_template_path" json:"proxyBootstrapTemplatePath,omitempty"`
				ProxyMetadata              *map[string]string `tfsdk:"proxy_metadata" json:"proxyMetadata,omitempty"`
				ProxyStatsMatcher          *struct {
					InclusionPrefixes *[]string `tfsdk:"inclusion_prefixes" json:"inclusionPrefixes,omitempty"`
					InclusionRegexps  *[]string `tfsdk:"inclusion_regexps" json:"inclusionRegexps,omitempty"`
					InclusionSuffixes *[]string `tfsdk:"inclusion_suffixes" json:"inclusionSuffixes,omitempty"`
				} `tfsdk:"proxy_stats_matcher" json:"proxyStatsMatcher,omitempty"`
				ReadinessProbe *struct {
					Exec *struct {
						Command *[]string `tfsdk:"command" json:"command,omitempty"`
					} `tfsdk:"exec" json:"exec,omitempty"`
					FailureThreshold *int64 `tfsdk:"failure_threshold" json:"failureThreshold,omitempty"`
					HttpGet          *struct {
						Host        *string `tfsdk:"host" json:"host,omitempty"`
						HttpHeaders *[]struct {
							Name  *string `tfsdk:"name" json:"name,omitempty"`
							Value *string `tfsdk:"value" json:"value,omitempty"`
						} `tfsdk:"http_headers" json:"httpHeaders,omitempty"`
						Path   *string `tfsdk:"path" json:"path,omitempty"`
						Port   *int64  `tfsdk:"port" json:"port,omitempty"`
						Scheme *string `tfsdk:"scheme" json:"scheme,omitempty"`
					} `tfsdk:"http_get" json:"httpGet,omitempty"`
					InitialDelaySeconds *int64 `tfsdk:"initial_delay_seconds" json:"initialDelaySeconds,omitempty"`
					PeriodSeconds       *int64 `tfsdk:"period_seconds" json:"periodSeconds,omitempty"`
					SuccessThreshold    *int64 `tfsdk:"success_threshold" json:"successThreshold,omitempty"`
					TcpSocket           *struct {
						Host *string `tfsdk:"host" json:"host,omitempty"`
						Port *int64  `tfsdk:"port" json:"port,omitempty"`
					} `tfsdk:"tcp_socket" json:"tcpSocket,omitempty"`
					TimeoutSeconds *int64 `tfsdk:"timeout_seconds" json:"timeoutSeconds,omitempty"`
				} `tfsdk:"readiness_probe" json:"readinessProbe,omitempty"`
				RuntimeValues *map[string]string `tfsdk:"runtime_values" json:"runtimeValues,omitempty"`
				Sds           *struct {
					Enabled      *bool   `tfsdk:"enabled" json:"enabled,omitempty"`
					K8sSaJwtPath *string `tfsdk:"k8s_sa_jwt_path" json:"k8sSaJwtPath,omitempty"`
				} `tfsdk:"sds" json:"sds,omitempty"`
				ServiceCluster           *string `tfsdk:"service_cluster" json:"serviceCluster,omitempty"`
				StatNameLength           *int64  `tfsdk:"stat_name_length" json:"statNameLength,omitempty"`
				StatsdUdpAddress         *string `tfsdk:"statsd_udp_address" json:"statsdUdpAddress,omitempty"`
				StatusPort               *int64  `tfsdk:"status_port" json:"statusPort,omitempty"`
				TerminationDrainDuration *string `tfsdk:"termination_drain_duration" json:"terminationDrainDuration,omitempty"`
				Tracing                  *struct {
					CustomTags *struct {
						Environment *struct {
							DefaultValue *string `tfsdk:"default_value" json:"defaultValue,omitempty"`
							Name         *string `tfsdk:"name" json:"name,omitempty"`
						} `tfsdk:"environment" json:"environment,omitempty"`
						Header *struct {
							DefaultValue *string `tfsdk:"default_value" json:"defaultValue,omitempty"`
							Name         *string `tfsdk:"name" json:"name,omitempty"`
						} `tfsdk:"header" json:"header,omitempty"`
						Literal *struct {
							Value *string `tfsdk:"value" json:"value,omitempty"`
						} `tfsdk:"literal" json:"literal,omitempty"`
					} `tfsdk:"custom_tags" json:"customTags,omitempty"`
					Datadog *struct {
						Address *string `tfsdk:"address" json:"address,omitempty"`
					} `tfsdk:"datadog" json:"datadog,omitempty"`
					Lightstep *struct {
						AccessToken *string `tfsdk:"access_token" json:"accessToken,omitempty"`
						Address     *string `tfsdk:"address" json:"address,omitempty"`
					} `tfsdk:"lightstep" json:"lightstep,omitempty"`
					MaxPathTagLength *int64 `tfsdk:"max_path_tag_length" json:"maxPathTagLength,omitempty"`
					OpenCensusAgent  *struct {
						Address *string   `tfsdk:"address" json:"address,omitempty"`
						Context *[]string `tfsdk:"context" json:"context,omitempty"`
					} `tfsdk:"open_census_agent" json:"openCensusAgent,omitempty"`
					Sampling    *float64 `tfsdk:"sampling" json:"sampling,omitempty"`
					Stackdriver *struct {
						Debug                    *bool  `tfsdk:"debug" json:"debug,omitempty"`
						MaxNumberOfAnnotations   *int64 `tfsdk:"max_number_of_annotations" json:"maxNumberOfAnnotations,omitempty"`
						MaxNumberOfAttributes    *int64 `tfsdk:"max_number_of_attributes" json:"maxNumberOfAttributes,omitempty"`
						MaxNumberOfMessageEvents *int64 `tfsdk:"max_number_of_message_events" json:"maxNumberOfMessageEvents,omitempty"`
					} `tfsdk:"stackdriver" json:"stackdriver,omitempty"`
					TlsSettings *struct {
						CaCertificates     *string   `tfsdk:"ca_certificates" json:"caCertificates,omitempty"`
						ClientCertificate  *string   `tfsdk:"client_certificate" json:"clientCertificate,omitempty"`
						CredentialName     *string   `tfsdk:"credential_name" json:"credentialName,omitempty"`
						InsecureSkipVerify *bool     `tfsdk:"insecure_skip_verify" json:"insecureSkipVerify,omitempty"`
						Mode               *string   `tfsdk:"mode" json:"mode,omitempty"`
						PrivateKey         *string   `tfsdk:"private_key" json:"privateKey,omitempty"`
						Sni                *string   `tfsdk:"sni" json:"sni,omitempty"`
						SubjectAltNames    *[]string `tfsdk:"subject_alt_names" json:"subjectAltNames,omitempty"`
					} `tfsdk:"tls_settings" json:"tlsSettings,omitempty"`
					Zipkin *struct {
						Address *string `tfsdk:"address" json:"address,omitempty"`
					} `tfsdk:"zipkin" json:"zipkin,omitempty"`
				} `tfsdk:"tracing" json:"tracing,omitempty"`
				TracingServiceName *string `tfsdk:"tracing_service_name" json:"tracingServiceName,omitempty"`
				ZipkinAddress      *string `tfsdk:"zipkin_address" json:"zipkinAddress,omitempty"`
			} `tfsdk:"default_config" json:"defaultConfig,omitempty"`
			DefaultDestinationRuleExportTo *[]string `tfsdk:"default_destination_rule_export_to" json:"defaultDestinationRuleExportTo,omitempty"`
			DefaultHttpRetryPolicy         *struct {
				Attempts              *int64  `tfsdk:"attempts" json:"attempts,omitempty"`
				PerTryTimeout         *string `tfsdk:"per_try_timeout" json:"perTryTimeout,omitempty"`
				RetryOn               *string `tfsdk:"retry_on" json:"retryOn,omitempty"`
				RetryRemoteLocalities *bool   `tfsdk:"retry_remote_localities" json:"retryRemoteLocalities,omitempty"`
			} `tfsdk:"default_http_retry_policy" json:"defaultHttpRetryPolicy,omitempty"`
			DefaultProviders *struct {
				AccessLogging *[]string `tfsdk:"access_logging" json:"accessLogging,omitempty"`
				Metrics       *[]string `tfsdk:"metrics" json:"metrics,omitempty"`
				Tracing       *[]string `tfsdk:"tracing" json:"tracing,omitempty"`
			} `tfsdk:"default_providers" json:"defaultProviders,omitempty"`
			DefaultServiceExportTo        *[]string `tfsdk:"default_service_export_to" json:"defaultServiceExportTo,omitempty"`
			DefaultVirtualServiceExportTo *[]string `tfsdk:"default_virtual_service_export_to" json:"defaultVirtualServiceExportTo,omitempty"`
			DisableEnvoyListenerLog       *bool     `tfsdk:"disable_envoy_listener_log" json:"disableEnvoyListenerLog,omitempty"`
			DiscoverySelectors            *[]struct {
				MatchExpressions *[]struct {
					Key      *string   `tfsdk:"key" json:"key,omitempty"`
					Operator *string   `tfsdk:"operator" json:"operator,omitempty"`
					Values   *[]string `tfsdk:"values" json:"values,omitempty"`
				} `tfsdk:"match_expressions" json:"matchExpressions,omitempty"`
				MatchLabels *map[string]string `tfsdk:"match_labels" json:"matchLabels,omitempty"`
			} `tfsdk:"discovery_selectors" json:"discoverySelectors,omitempty"`
			DnsRefreshRate              *string `tfsdk:"dns_refresh_rate" json:"dnsRefreshRate,omitempty"`
			EnableAutoMtls              *bool   `tfsdk:"enable_auto_mtls" json:"enableAutoMtls,omitempty"`
			EnableEnvoyAccessLogService *bool   `tfsdk:"enable_envoy_access_log_service" json:"enableEnvoyAccessLogService,omitempty"`
			EnablePrometheusMerge       *bool   `tfsdk:"enable_prometheus_merge" json:"enablePrometheusMerge,omitempty"`
			EnableTracing               *bool   `tfsdk:"enable_tracing" json:"enableTracing,omitempty"`
			ExtensionProviders          *[]struct {
				Datadog *struct {
					MaxTagLength *int64  `tfsdk:"max_tag_length" json:"maxTagLength,omitempty"`
					Port         *int64  `tfsdk:"port" json:"port,omitempty"`
					Service      *string `tfsdk:"service" json:"service,omitempty"`
				} `tfsdk:"datadog" json:"datadog,omitempty"`
				EnvoyExtAuthzGrpc *struct {
					FailOpen                  *bool `tfsdk:"fail_open" json:"failOpen,omitempty"`
					IncludeRequestBodyInCheck *struct {
						AllowPartialMessage *bool  `tfsdk:"allow_partial_message" json:"allowPartialMessage,omitempty"`
						MaxRequestBytes     *int64 `tfsdk:"max_request_bytes" json:"maxRequestBytes,omitempty"`
						PackAsBytes         *bool  `tfsdk:"pack_as_bytes" json:"packAsBytes,omitempty"`
					} `tfsdk:"include_request_body_in_check" json:"includeRequestBodyInCheck,omitempty"`
					Port          *int64  `tfsdk:"port" json:"port,omitempty"`
					Service       *string `tfsdk:"service" json:"service,omitempty"`
					StatusOnError *string `tfsdk:"status_on_error" json:"statusOnError,omitempty"`
					Timeout       *string `tfsdk:"timeout" json:"timeout,omitempty"`
				} `tfsdk:"envoy_ext_authz_grpc" json:"envoyExtAuthzGrpc,omitempty"`
				EnvoyExtAuthzHttp *struct {
					FailOpen                        *bool              `tfsdk:"fail_open" json:"failOpen,omitempty"`
					HeadersToDownstreamOnAllow      *[]string          `tfsdk:"headers_to_downstream_on_allow" json:"headersToDownstreamOnAllow,omitempty"`
					HeadersToDownstreamOnDeny       *[]string          `tfsdk:"headers_to_downstream_on_deny" json:"headersToDownstreamOnDeny,omitempty"`
					HeadersToUpstreamOnAllow        *[]string          `tfsdk:"headers_to_upstream_on_allow" json:"headersToUpstreamOnAllow,omitempty"`
					IncludeAdditionalHeadersInCheck *map[string]string `tfsdk:"include_additional_headers_in_check" json:"includeAdditionalHeadersInCheck,omitempty"`
					IncludeHeadersInCheck           *[]string          `tfsdk:"include_headers_in_check" json:"includeHeadersInCheck,omitempty"`
					IncludeRequestBodyInCheck       *struct {
						AllowPartialMessage *bool  `tfsdk:"allow_partial_message" json:"allowPartialMessage,omitempty"`
						MaxRequestBytes     *int64 `tfsdk:"max_request_bytes" json:"maxRequestBytes,omitempty"`
						PackAsBytes         *bool  `tfsdk:"pack_as_bytes" json:"packAsBytes,omitempty"`
					} `tfsdk:"include_request_body_in_check" json:"includeRequestBodyInCheck,omitempty"`
					IncludeRequestHeadersInCheck *[]string `tfsdk:"include_request_headers_in_check" json:"includeRequestHeadersInCheck,omitempty"`
					PathPrefix                   *string   `tfsdk:"path_prefix" json:"pathPrefix,omitempty"`
					Port                         *int64    `tfsdk:"port" json:"port,omitempty"`
					Service                      *string   `tfsdk:"service" json:"service,omitempty"`
					StatusOnError                *string   `tfsdk:"status_on_error" json:"statusOnError,omitempty"`
					Timeout                      *string   `tfsdk:"timeout" json:"timeout,omitempty"`
				} `tfsdk:"envoy_ext_authz_http" json:"envoyExtAuthzHttp,omitempty"`
				EnvoyFileAccessLog *struct {
					LogFormat *struct {
						Labels *map[string]string `tfsdk:"labels" json:"labels,omitempty"`
						Text   *string            `tfsdk:"text" json:"text,omitempty"`
					} `tfsdk:"log_format" json:"logFormat,omitempty"`
					Path *string `tfsdk:"path" json:"path,omitempty"`
				} `tfsdk:"envoy_file_access_log" json:"envoyFileAccessLog,omitempty"`
				EnvoyHttpAls *struct {
					AdditionalRequestHeadersToLog   *[]string `tfsdk:"additional_request_headers_to_log" json:"additionalRequestHeadersToLog,omitempty"`
					AdditionalResponseHeadersToLog  *[]string `tfsdk:"additional_response_headers_to_log" json:"additionalResponseHeadersToLog,omitempty"`
					AdditionalResponseTrailersToLog *[]string `tfsdk:"additional_response_trailers_to_log" json:"additionalResponseTrailersToLog,omitempty"`
					FilterStateObjectsToLog         *[]string `tfsdk:"filter_state_objects_to_log" json:"filterStateObjectsToLog,omitempty"`
					LogName                         *string   `tfsdk:"log_name" json:"logName,omitempty"`
					Port                            *int64    `tfsdk:"port" json:"port,omitempty"`
					Service                         *string   `tfsdk:"service" json:"service,omitempty"`
				} `tfsdk:"envoy_http_als" json:"envoyHttpAls,omitempty"`
				EnvoyOtelAls *struct {
					LogFormat *struct {
						Labels *map[string]string `tfsdk:"labels" json:"labels,omitempty"`
						Text   *string            `tfsdk:"text" json:"text,omitempty"`
					} `tfsdk:"log_format" json:"logFormat,omitempty"`
					LogName *string `tfsdk:"log_name" json:"logName,omitempty"`
					Port    *int64  `tfsdk:"port" json:"port,omitempty"`
					Service *string `tfsdk:"service" json:"service,omitempty"`
				} `tfsdk:"envoy_otel_als" json:"envoyOtelAls,omitempty"`
				EnvoyTcpAls *struct {
					FilterStateObjectsToLog *[]string `tfsdk:"filter_state_objects_to_log" json:"filterStateObjectsToLog,omitempty"`
					LogName                 *string   `tfsdk:"log_name" json:"logName,omitempty"`
					Port                    *int64    `tfsdk:"port" json:"port,omitempty"`
					Service                 *string   `tfsdk:"service" json:"service,omitempty"`
				} `tfsdk:"envoy_tcp_als" json:"envoyTcpAls,omitempty"`
				Lightstep *struct {
					AccessToken  *string `tfsdk:"access_token" json:"accessToken,omitempty"`
					MaxTagLength *int64  `tfsdk:"max_tag_length" json:"maxTagLength,omitempty"`
					Port         *int64  `tfsdk:"port" json:"port,omitempty"`
					Service      *string `tfsdk:"service" json:"service,omitempty"`
				} `tfsdk:"lightstep" json:"lightstep,omitempty"`
				Name       *string `tfsdk:"name" json:"name,omitempty"`
				Opencensus *struct {
					Context      *[]string `tfsdk:"context" json:"context,omitempty"`
					MaxTagLength *int64    `tfsdk:"max_tag_length" json:"maxTagLength,omitempty"`
					Port         *int64    `tfsdk:"port" json:"port,omitempty"`
					Service      *string   `tfsdk:"service" json:"service,omitempty"`
				} `tfsdk:"opencensus" json:"opencensus,omitempty"`
				Opentelemetry *struct {
					MaxTagLength *int64  `tfsdk:"max_tag_length" json:"maxTagLength,omitempty"`
					Port         *int64  `tfsdk:"port" json:"port,omitempty"`
					Service      *string `tfsdk:"service" json:"service,omitempty"`
				} `tfsdk:"opentelemetry" json:"opentelemetry,omitempty"`
				Prometheus *map[string]string `tfsdk:"prometheus" json:"prometheus,omitempty"`
				Skywalking *struct {
					AccessToken *string `tfsdk:"access_token" json:"accessToken,omitempty"`
					Port        *int64  `tfsdk:"port" json:"port,omitempty"`
					Service     *string `tfsdk:"service" json:"service,omitempty"`
				} `tfsdk:"skywalking" json:"skywalking,omitempty"`
				Stackdriver *struct {
					Debug   *bool `tfsdk:"debug" json:"debug,omitempty"`
					Logging *struct {
						Labels *map[string]string `tfsdk:"labels" json:"labels,omitempty"`
					} `tfsdk:"logging" json:"logging,omitempty"`
					MaxNumberOfAnnotations   *int64 `tfsdk:"max_number_of_annotations" json:"maxNumberOfAnnotations,omitempty"`
					MaxNumberOfAttributes    *int64 `tfsdk:"max_number_of_attributes" json:"maxNumberOfAttributes,omitempty"`
					MaxNumberOfMessageEvents *int64 `tfsdk:"max_number_of_message_events" json:"maxNumberOfMessageEvents,omitempty"`
					MaxTagLength             *int64 `tfsdk:"max_tag_length" json:"maxTagLength,omitempty"`
				} `tfsdk:"stackdriver" json:"stackdriver,omitempty"`
				Zipkin *struct {
					MaxTagLength *int64  `tfsdk:"max_tag_length" json:"maxTagLength,omitempty"`
					Port         *int64  `tfsdk:"port" json:"port,omitempty"`
					Service      *string `tfsdk:"service" json:"service,omitempty"`
				} `tfsdk:"zipkin" json:"zipkin,omitempty"`
			} `tfsdk:"extension_providers" json:"extensionProviders,omitempty"`
			H2UpgradePolicy        *string `tfsdk:"h2_upgrade_policy" json:"h2UpgradePolicy,omitempty"`
			InboundClusterStatName *string `tfsdk:"inbound_cluster_stat_name" json:"inboundClusterStatName,omitempty"`
			IngressClass           *string `tfsdk:"ingress_class" json:"ingressClass,omitempty"`
			IngressControllerMode  *string `tfsdk:"ingress_controller_mode" json:"ingressControllerMode,omitempty"`
			IngressSelector        *string `tfsdk:"ingress_selector" json:"ingressSelector,omitempty"`
			IngressService         *string `tfsdk:"ingress_service" json:"ingressService,omitempty"`
			LocalityLbSetting      *struct {
				Distribute *[]struct {
					From *string            `tfsdk:"from" json:"from,omitempty"`
					To   *map[string]string `tfsdk:"to" json:"to,omitempty"`
				} `tfsdk:"distribute" json:"distribute,omitempty"`
				Enabled  *bool `tfsdk:"enabled" json:"enabled,omitempty"`
				Failover *[]struct {
					From *string `tfsdk:"from" json:"from,omitempty"`
					To   *string `tfsdk:"to" json:"to,omitempty"`
				} `tfsdk:"failover" json:"failover,omitempty"`
				FailoverPriority *[]string `tfsdk:"failover_priority" json:"failoverPriority,omitempty"`
			} `tfsdk:"locality_lb_setting" json:"localityLbSetting,omitempty"`
			MeshMTLS *struct {
				MinProtocolVersion *string `tfsdk:"min_protocol_version" json:"minProtocolVersion,omitempty"`
			} `tfsdk:"mesh_mtls" json:"meshMTLS,omitempty"`
			OutboundClusterStatName *string `tfsdk:"outbound_cluster_stat_name" json:"outboundClusterStatName,omitempty"`
			OutboundTrafficPolicy   *struct {
				Mode *string `tfsdk:"mode" json:"mode,omitempty"`
			} `tfsdk:"outbound_traffic_policy" json:"outboundTrafficPolicy,omitempty"`
			PathNormalization *struct {
				Normalization *string `tfsdk:"normalization" json:"normalization,omitempty"`
			} `tfsdk:"path_normalization" json:"pathNormalization,omitempty"`
			ProtocolDetectionTimeout *string `tfsdk:"protocol_detection_timeout" json:"protocolDetectionTimeout,omitempty"`
			ProxyHttpPort            *int64  `tfsdk:"proxy_http_port" json:"proxyHttpPort,omitempty"`
			ProxyListenPort          *int64  `tfsdk:"proxy_listen_port" json:"proxyListenPort,omitempty"`
			RootNamespace            *string `tfsdk:"root_namespace" json:"rootNamespace,omitempty"`
			ServiceSettings          *[]struct {
				Hosts    *[]string `tfsdk:"hosts" json:"hosts,omitempty"`
				Settings *struct {
					ClusterLocal *bool `tfsdk:"cluster_local" json:"clusterLocal,omitempty"`
				} `tfsdk:"settings" json:"settings,omitempty"`
			} `tfsdk:"service_settings" json:"serviceSettings,omitempty"`
			TcpKeepalive *struct {
				Interval *string `tfsdk:"interval" json:"interval,omitempty"`
				Probes   *int64  `tfsdk:"probes" json:"probes,omitempty"`
				Time     *string `tfsdk:"time" json:"time,omitempty"`
			} `tfsdk:"tcp_keepalive" json:"tcpKeepalive,omitempty"`
			TrustDomain               *string   `tfsdk:"trust_domain" json:"trustDomain,omitempty"`
			TrustDomainAliases        *[]string `tfsdk:"trust_domain_aliases" json:"trustDomainAliases,omitempty"`
			VerifyCertificateAtClient *bool     `tfsdk:"verify_certificate_at_client" json:"verifyCertificateAtClient,omitempty"`
		} `tfsdk:"config" json:"config,omitempty"`
	} `tfsdk:"spec" json:"spec,omitempty"`
}

type ServicemeshCiscoComPeerIstioControlPlaneV1Alpha1Manifest

type ServicemeshCiscoComPeerIstioControlPlaneV1Alpha1Manifest struct{}

func (*ServicemeshCiscoComPeerIstioControlPlaneV1Alpha1Manifest) Metadata

func (*ServicemeshCiscoComPeerIstioControlPlaneV1Alpha1Manifest) Read

func (*ServicemeshCiscoComPeerIstioControlPlaneV1Alpha1Manifest) Schema

type ServicemeshCiscoComPeerIstioControlPlaneV1Alpha1ManifestData

type ServicemeshCiscoComPeerIstioControlPlaneV1Alpha1ManifestData struct {
	YAML types.String `tfsdk:"yaml" json:"-"`

	ApiVersion *string `tfsdk:"-" json:"apiVersion"`
	Kind       *string `tfsdk:"-" json:"kind"`

	Metadata struct {
		Name        string            `tfsdk:"name" json:"name"`
		Namespace   string            `tfsdk:"namespace" json:"namespace"`
		Labels      map[string]string `tfsdk:"labels" json:"labels,omitempty"`
		Annotations map[string]string `tfsdk:"annotations" json:"annotations,omitempty"`
	} `tfsdk:"metadata" json:"metadata"`

	Spec *struct {
		CaAddress                   *string `tfsdk:"ca_address" json:"caAddress,omitempty"`
		CaProvider                  *string `tfsdk:"ca_provider" json:"caProvider,omitempty"`
		ClusterID                   *string `tfsdk:"cluster_id" json:"clusterID,omitempty"`
		ContainerImageConfiguration *struct {
			Hub              *string `tfsdk:"hub" json:"hub,omitempty"`
			ImagePullPolicy  *string `tfsdk:"image_pull_policy" json:"imagePullPolicy,omitempty"`
			ImagePullSecrets *[]struct {
				Name *string `tfsdk:"name" json:"name,omitempty"`
			} `tfsdk:"image_pull_secrets" json:"imagePullSecrets,omitempty"`
			Tag *string `tfsdk:"tag" json:"tag,omitempty"`
		} `tfsdk:"container_image_configuration" json:"containerImageConfiguration,omitempty"`
		Distribution  *string `tfsdk:"distribution" json:"distribution,omitempty"`
		HttpProxyEnvs *struct {
			HttpProxy  *string `tfsdk:"http_proxy" json:"httpProxy,omitempty"`
			HttpsProxy *string `tfsdk:"https_proxy" json:"httpsProxy,omitempty"`
			NoProxy    *string `tfsdk:"no_proxy" json:"noProxy,omitempty"`
		} `tfsdk:"http_proxy_envs" json:"httpProxyEnvs,omitempty"`
		Istiod *struct {
			CertProvider *string `tfsdk:"cert_provider" json:"certProvider,omitempty"`
			Deployment   *struct {
				Affinity *struct {
					NodeAffinity *struct {
						PreferredDuringSchedulingIgnoredDuringExecution *[]struct {
							Preference *struct {
								MatchExpressions *[]struct {
									Key      *string   `tfsdk:"key" json:"key,omitempty"`
									Operator *string   `tfsdk:"operator" json:"operator,omitempty"`
									Values   *[]string `tfsdk:"values" json:"values,omitempty"`
								} `tfsdk:"match_expressions" json:"matchExpressions,omitempty"`
								MatchFields *[]struct {
									Key      *string   `tfsdk:"key" json:"key,omitempty"`
									Operator *string   `tfsdk:"operator" json:"operator,omitempty"`
									Values   *[]string `tfsdk:"values" json:"values,omitempty"`
								} `tfsdk:"match_fields" json:"matchFields,omitempty"`
							} `tfsdk:"preference" json:"preference,omitempty"`
							Weight *int64 `tfsdk:"weight" json:"weight,omitempty"`
						} `tfsdk:"preferred_during_scheduling_ignored_during_execution" json:"preferredDuringSchedulingIgnoredDuringExecution,omitempty"`
						RequiredDuringSchedulingIgnoredDuringExecution *struct {
							NodeSelectorTerms *[]struct {
								MatchExpressions *[]struct {
									Key      *string   `tfsdk:"key" json:"key,omitempty"`
									Operator *string   `tfsdk:"operator" json:"operator,omitempty"`
									Values   *[]string `tfsdk:"values" json:"values,omitempty"`
								} `tfsdk:"match_expressions" json:"matchExpressions,omitempty"`
								MatchFields *[]struct {
									Key      *string   `tfsdk:"key" json:"key,omitempty"`
									Operator *string   `tfsdk:"operator" json:"operator,omitempty"`
									Values   *[]string `tfsdk:"values" json:"values,omitempty"`
								} `tfsdk:"match_fields" json:"matchFields,omitempty"`
							} `tfsdk:"node_selector_terms" json:"nodeSelectorTerms,omitempty"`
						} `tfsdk:"required_during_scheduling_ignored_during_execution" json:"requiredDuringSchedulingIgnoredDuringExecution,omitempty"`
					} `tfsdk:"node_affinity" json:"nodeAffinity,omitempty"`
					PodAffinity *struct {
						PreferredDuringSchedulingIgnoredDuringExecution *[]struct {
							PodAffinityTerm *struct {
								LabelSelector *struct {
									MatchExpressions *[]struct {
										Key      *string   `tfsdk:"key" json:"key,omitempty"`
										Operator *string   `tfsdk:"operator" json:"operator,omitempty"`
										Values   *[]string `tfsdk:"values" json:"values,omitempty"`
									} `tfsdk:"match_expressions" json:"matchExpressions,omitempty"`
									MatchLabels *map[string]string `tfsdk:"match_labels" json:"matchLabels,omitempty"`
								} `tfsdk:"label_selector" json:"labelSelector,omitempty"`
								NamespaceSelector *struct {
									MatchExpressions *[]struct {
										Key      *string   `tfsdk:"key" json:"key,omitempty"`
										Operator *string   `tfsdk:"operator" json:"operator,omitempty"`
										Values   *[]string `tfsdk:"values" json:"values,omitempty"`
									} `tfsdk:"match_expressions" json:"matchExpressions,omitempty"`
									MatchLabels *map[string]string `tfsdk:"match_labels" json:"matchLabels,omitempty"`
								} `tfsdk:"namespace_selector" json:"namespaceSelector,omitempty"`
								Namespaces  *[]string `tfsdk:"namespaces" json:"namespaces,omitempty"`
								TopologyKey *string   `tfsdk:"topology_key" json:"topologyKey,omitempty"`
							} `tfsdk:"pod_affinity_term" json:"podAffinityTerm,omitempty"`
							Weight *int64 `tfsdk:"weight" json:"weight,omitempty"`
						} `tfsdk:"preferred_during_scheduling_ignored_during_execution" json:"preferredDuringSchedulingIgnoredDuringExecution,omitempty"`
						RequiredDuringSchedulingIgnoredDuringExecution *[]struct {
							LabelSelector *struct {
								MatchExpressions *[]struct {
									Key      *string   `tfsdk:"key" json:"key,omitempty"`
									Operator *string   `tfsdk:"operator" json:"operator,omitempty"`
									Values   *[]string `tfsdk:"values" json:"values,omitempty"`
								} `tfsdk:"match_expressions" json:"matchExpressions,omitempty"`
								MatchLabels *map[string]string `tfsdk:"match_labels" json:"matchLabels,omitempty"`
							} `tfsdk:"label_selector" json:"labelSelector,omitempty"`
							NamespaceSelector *struct {
								MatchExpressions *[]struct {
									Key      *string   `tfsdk:"key" json:"key,omitempty"`
									Operator *string   `tfsdk:"operator" json:"operator,omitempty"`
									Values   *[]string `tfsdk:"values" json:"values,omitempty"`
								} `tfsdk:"match_expressions" json:"matchExpressions,omitempty"`
								MatchLabels *map[string]string `tfsdk:"match_labels" json:"matchLabels,omitempty"`
							} `tfsdk:"namespace_selector" json:"namespaceSelector,omitempty"`
							Namespaces  *[]string `tfsdk:"namespaces" json:"namespaces,omitempty"`
							TopologyKey *string   `tfsdk:"topology_key" json:"topologyKey,omitempty"`
						} `tfsdk:"required_during_scheduling_ignored_during_execution" json:"requiredDuringSchedulingIgnoredDuringExecution,omitempty"`
					} `tfsdk:"pod_affinity" json:"podAffinity,omitempty"`
					PodAntiAffinity *struct {
						PreferredDuringSchedulingIgnoredDuringExecution *[]struct {
							PodAffinityTerm *struct {
								LabelSelector *struct {
									MatchExpressions *[]struct {
										Key      *string   `tfsdk:"key" json:"key,omitempty"`
										Operator *string   `tfsdk:"operator" json:"operator,omitempty"`
										Values   *[]string `tfsdk:"values" json:"values,omitempty"`
									} `tfsdk:"match_expressions" json:"matchExpressions,omitempty"`
									MatchLabels *map[string]string `tfsdk:"match_labels" json:"matchLabels,omitempty"`
								} `tfsdk:"label_selector" json:"labelSelector,omitempty"`
								NamespaceSelector *struct {
									MatchExpressions *[]struct {
										Key      *string   `tfsdk:"key" json:"key,omitempty"`
										Operator *string   `tfsdk:"operator" json:"operator,omitempty"`
										Values   *[]string `tfsdk:"values" json:"values,omitempty"`
									} `tfsdk:"match_expressions" json:"matchExpressions,omitempty"`
									MatchLabels *map[string]string `tfsdk:"match_labels" json:"matchLabels,omitempty"`
								} `tfsdk:"namespace_selector" json:"namespaceSelector,omitempty"`
								Namespaces  *[]string `tfsdk:"namespaces" json:"namespaces,omitempty"`
								TopologyKey *string   `tfsdk:"topology_key" json:"topologyKey,omitempty"`
							} `tfsdk:"pod_affinity_term" json:"podAffinityTerm,omitempty"`
							Weight *int64 `tfsdk:"weight" json:"weight,omitempty"`
						} `tfsdk:"preferred_during_scheduling_ignored_during_execution" json:"preferredDuringSchedulingIgnoredDuringExecution,omitempty"`
						RequiredDuringSchedulingIgnoredDuringExecution *[]struct {
							LabelSelector *struct {
								MatchExpressions *[]struct {
									Key      *string   `tfsdk:"key" json:"key,omitempty"`
									Operator *string   `tfsdk:"operator" json:"operator,omitempty"`
									Values   *[]string `tfsdk:"values" json:"values,omitempty"`
								} `tfsdk:"match_expressions" json:"matchExpressions,omitempty"`
								MatchLabels *map[string]string `tfsdk:"match_labels" json:"matchLabels,omitempty"`
							} `tfsdk:"label_selector" json:"labelSelector,omitempty"`
							NamespaceSelector *struct {
								MatchExpressions *[]struct {
									Key      *string   `tfsdk:"key" json:"key,omitempty"`
									Operator *string   `tfsdk:"operator" json:"operator,omitempty"`
									Values   *[]string `tfsdk:"values" json:"values,omitempty"`
								} `tfsdk:"match_expressions" json:"matchExpressions,omitempty"`
								MatchLabels *map[string]string `tfsdk:"match_labels" json:"matchLabels,omitempty"`
							} `tfsdk:"namespace_selector" json:"namespaceSelector,omitempty"`
							Namespaces  *[]string `tfsdk:"namespaces" json:"namespaces,omitempty"`
							TopologyKey *string   `tfsdk:"topology_key" json:"topologyKey,omitempty"`
						} `tfsdk:"required_during_scheduling_ignored_during_execution" json:"requiredDuringSchedulingIgnoredDuringExecution,omitempty"`
					} `tfsdk:"pod_anti_affinity" json:"podAntiAffinity,omitempty"`
				} `tfsdk:"affinity" json:"affinity,omitempty"`
				DeploymentStrategy *struct {
					RollingUpdate *struct {
						MaxSurge       *string `tfsdk:"max_surge" json:"maxSurge,omitempty"`
						MaxUnavailable *string `tfsdk:"max_unavailable" json:"maxUnavailable,omitempty"`
					} `tfsdk:"rolling_update" json:"rollingUpdate,omitempty"`
					Type *string `tfsdk:"type" json:"type,omitempty"`
				} `tfsdk:"deployment_strategy" json:"deploymentStrategy,omitempty"`
				Env *[]struct {
					Name      *string `tfsdk:"name" json:"name,omitempty"`
					Value     *string `tfsdk:"value" json:"value,omitempty"`
					ValueFrom *struct {
						ConfigMapKeyRef *struct {
							Key                  *string `tfsdk:"key" json:"key,omitempty"`
							LocalObjectReference *struct {
								Name *string `tfsdk:"name" json:"name,omitempty"`
							} `tfsdk:"local_object_reference" json:"localObjectReference,omitempty"`
							Optional *bool `tfsdk:"optional" json:"optional,omitempty"`
						} `tfsdk:"config_map_key_ref" json:"configMapKeyRef,omitempty"`
						FieldRef *struct {
							ApiVersion *string `tfsdk:"api_version" json:"apiVersion,omitempty"`
							FieldPath  *string `tfsdk:"field_path" json:"fieldPath,omitempty"`
						} `tfsdk:"field_ref" json:"fieldRef,omitempty"`
						ResourceFieldRef *struct {
							ContainerName *string `tfsdk:"container_name" json:"containerName,omitempty"`
							Divisor       *string `tfsdk:"divisor" json:"divisor,omitempty"`
							Resource      *string `tfsdk:"resource" json:"resource,omitempty"`
						} `tfsdk:"resource_field_ref" json:"resourceFieldRef,omitempty"`
						SecretKeyRef *struct {
							Key                  *string `tfsdk:"key" json:"key,omitempty"`
							LocalObjectReference *struct {
								Name *string `tfsdk:"name" json:"name,omitempty"`
							} `tfsdk:"local_object_reference" json:"localObjectReference,omitempty"`
							Optional *bool `tfsdk:"optional" json:"optional,omitempty"`
						} `tfsdk:"secret_key_ref" json:"secretKeyRef,omitempty"`
					} `tfsdk:"value_from" json:"valueFrom,omitempty"`
				} `tfsdk:"env" json:"env,omitempty"`
				Image            *string `tfsdk:"image" json:"image,omitempty"`
				ImagePullPolicy  *string `tfsdk:"image_pull_policy" json:"imagePullPolicy,omitempty"`
				ImagePullSecrets *[]struct {
					Name *string `tfsdk:"name" json:"name,omitempty"`
				} `tfsdk:"image_pull_secrets" json:"imagePullSecrets,omitempty"`
				LivenessProbe *struct {
					Exec *struct {
						Command *[]string `tfsdk:"command" json:"command,omitempty"`
					} `tfsdk:"exec" json:"exec,omitempty"`
					FailureThreshold *int64 `tfsdk:"failure_threshold" json:"failureThreshold,omitempty"`
					Grpc             *struct {
						Port    *int64  `tfsdk:"port" json:"port,omitempty"`
						Service *string `tfsdk:"service" json:"service,omitempty"`
					} `tfsdk:"grpc" json:"grpc,omitempty"`
					HttpGet *struct {
						Host        *string `tfsdk:"host" json:"host,omitempty"`
						HttpHeaders *[]struct {
							Name  *string `tfsdk:"name" json:"name,omitempty"`
							Value *string `tfsdk:"value" json:"value,omitempty"`
						} `tfsdk:"http_headers" json:"httpHeaders,omitempty"`
						Path   *string `tfsdk:"path" json:"path,omitempty"`
						Port   *string `tfsdk:"port" json:"port,omitempty"`
						Scheme *string `tfsdk:"scheme" json:"scheme,omitempty"`
					} `tfsdk:"http_get" json:"httpGet,omitempty"`
					InitialDelaySeconds *int64 `tfsdk:"initial_delay_seconds" json:"initialDelaySeconds,omitempty"`
					PeriodSeconds       *int64 `tfsdk:"period_seconds" json:"periodSeconds,omitempty"`
					SuccessThreshold    *int64 `tfsdk:"success_threshold" json:"successThreshold,omitempty"`
					TcpSocket           *struct {
						Host *string `tfsdk:"host" json:"host,omitempty"`
						Port *string `tfsdk:"port" json:"port,omitempty"`
					} `tfsdk:"tcp_socket" json:"tcpSocket,omitempty"`
					TerminationGracePeriodSeconds *int64 `tfsdk:"termination_grace_period_seconds" json:"terminationGracePeriodSeconds,omitempty"`
					TimeoutSeconds                *int64 `tfsdk:"timeout_seconds" json:"timeoutSeconds,omitempty"`
				} `tfsdk:"liveness_probe" json:"livenessProbe,omitempty"`
				Metadata *struct {
					Annotations *map[string]string `tfsdk:"annotations" json:"annotations,omitempty"`
					Labels      *map[string]string `tfsdk:"labels" json:"labels,omitempty"`
				} `tfsdk:"metadata" json:"metadata,omitempty"`
				NodeSelector        *map[string]string `tfsdk:"node_selector" json:"nodeSelector,omitempty"`
				PodDisruptionBudget *struct {
					MaxUnavailable *string `tfsdk:"max_unavailable" json:"maxUnavailable,omitempty"`
					MinAvailable   *string `tfsdk:"min_available" json:"minAvailable,omitempty"`
				} `tfsdk:"pod_disruption_budget" json:"podDisruptionBudget,omitempty"`
				PodMetadata *struct {
					Annotations *map[string]string `tfsdk:"annotations" json:"annotations,omitempty"`
					Labels      *map[string]string `tfsdk:"labels" json:"labels,omitempty"`
				} `tfsdk:"pod_metadata" json:"podMetadata,omitempty"`
				PodSecurityContext *struct {
					FsGroup             *int64  `tfsdk:"fs_group" json:"fsGroup,omitempty"`
					FsGroupChangePolicy *string `tfsdk:"fs_group_change_policy" json:"fsGroupChangePolicy,omitempty"`
					RunAsGroup          *int64  `tfsdk:"run_as_group" json:"runAsGroup,omitempty"`
					RunAsNonRoot        *bool   `tfsdk:"run_as_non_root" json:"runAsNonRoot,omitempty"`
					RunAsUser           *int64  `tfsdk:"run_as_user" json:"runAsUser,omitempty"`
					SeLinuxOptions      *struct {
						Level *string `tfsdk:"level" json:"level,omitempty"`
						Role  *string `tfsdk:"role" json:"role,omitempty"`
						Type  *string `tfsdk:"type" json:"type,omitempty"`
						User  *string `tfsdk:"user" json:"user,omitempty"`
					} `tfsdk:"se_linux_options" json:"seLinuxOptions,omitempty"`
					SeccompProfile *struct {
						LocalhostProfile *string `tfsdk:"localhost_profile" json:"localhostProfile,omitempty"`
						Type             *string `tfsdk:"type" json:"type,omitempty"`
					} `tfsdk:"seccomp_profile" json:"seccompProfile,omitempty"`
					SupplementalGroups *[]string `tfsdk:"supplemental_groups" json:"supplementalGroups,omitempty"`
					Sysctls            *[]struct {
						Name  *string `tfsdk:"name" json:"name,omitempty"`
						Value *string `tfsdk:"value" json:"value,omitempty"`
					} `tfsdk:"sysctls" json:"sysctls,omitempty"`
					WindowsOptions *struct {
						GmsaCredentialSpec     *string `tfsdk:"gmsa_credential_spec" json:"gmsaCredentialSpec,omitempty"`
						GmsaCredentialSpecName *string `tfsdk:"gmsa_credential_spec_name" json:"gmsaCredentialSpecName,omitempty"`
						HostProcess            *bool   `tfsdk:"host_process" json:"hostProcess,omitempty"`
						RunAsUserName          *string `tfsdk:"run_as_user_name" json:"runAsUserName,omitempty"`
					} `tfsdk:"windows_options" json:"windowsOptions,omitempty"`
				} `tfsdk:"pod_security_context" json:"podSecurityContext,omitempty"`
				PriorityClassName *string `tfsdk:"priority_class_name" json:"priorityClassName,omitempty"`
				ReadinessProbe    *struct {
					Exec *struct {
						Command *[]string `tfsdk:"command" json:"command,omitempty"`
					} `tfsdk:"exec" json:"exec,omitempty"`
					FailureThreshold *int64 `tfsdk:"failure_threshold" json:"failureThreshold,omitempty"`
					Grpc             *struct {
						Port    *int64  `tfsdk:"port" json:"port,omitempty"`
						Service *string `tfsdk:"service" json:"service,omitempty"`
					} `tfsdk:"grpc" json:"grpc,omitempty"`
					HttpGet *struct {
						Host        *string `tfsdk:"host" json:"host,omitempty"`
						HttpHeaders *[]struct {
							Name  *string `tfsdk:"name" json:"name,omitempty"`
							Value *string `tfsdk:"value" json:"value,omitempty"`
						} `tfsdk:"http_headers" json:"httpHeaders,omitempty"`
						Path   *string `tfsdk:"path" json:"path,omitempty"`
						Port   *string `tfsdk:"port" json:"port,omitempty"`
						Scheme *string `tfsdk:"scheme" json:"scheme,omitempty"`
					} `tfsdk:"http_get" json:"httpGet,omitempty"`
					InitialDelaySeconds *int64 `tfsdk:"initial_delay_seconds" json:"initialDelaySeconds,omitempty"`
					PeriodSeconds       *int64 `tfsdk:"period_seconds" json:"periodSeconds,omitempty"`
					SuccessThreshold    *int64 `tfsdk:"success_threshold" json:"successThreshold,omitempty"`
					TcpSocket           *struct {
						Host *string `tfsdk:"host" json:"host,omitempty"`
						Port *string `tfsdk:"port" json:"port,omitempty"`
					} `tfsdk:"tcp_socket" json:"tcpSocket,omitempty"`
					TerminationGracePeriodSeconds *int64 `tfsdk:"termination_grace_period_seconds" json:"terminationGracePeriodSeconds,omitempty"`
					TimeoutSeconds                *int64 `tfsdk:"timeout_seconds" json:"timeoutSeconds,omitempty"`
				} `tfsdk:"readiness_probe" json:"readinessProbe,omitempty"`
				Replicas *struct {
					Count                          *int64 `tfsdk:"count" json:"count,omitempty"`
					Max                            *int64 `tfsdk:"max" json:"max,omitempty"`
					Min                            *int64 `tfsdk:"min" json:"min,omitempty"`
					TargetCPUUtilizationPercentage *int64 `tfsdk:"target_cpu_utilization_percentage" json:"targetCPUUtilizationPercentage,omitempty"`
				} `tfsdk:"replicas" json:"replicas,omitempty"`
				Resources *struct {
					Limits   *map[string]string `tfsdk:"limits" json:"limits,omitempty"`
					Requests *map[string]string `tfsdk:"requests" json:"requests,omitempty"`
				} `tfsdk:"resources" json:"resources,omitempty"`
				SecurityContext *struct {
					AllowPrivilegeEscalation *bool `tfsdk:"allow_privilege_escalation" json:"allowPrivilegeEscalation,omitempty"`
					Capabilities             *struct {
						Add  *[]string `tfsdk:"add" json:"add,omitempty"`
						Drop *[]string `tfsdk:"drop" json:"drop,omitempty"`
					} `tfsdk:"capabilities" json:"capabilities,omitempty"`
					Privileged             *bool   `tfsdk:"privileged" json:"privileged,omitempty"`
					ProcMount              *string `tfsdk:"proc_mount" json:"procMount,omitempty"`
					ReadOnlyRootFilesystem *bool   `tfsdk:"read_only_root_filesystem" json:"readOnlyRootFilesystem,omitempty"`
					RunAsGroup             *int64  `tfsdk:"run_as_group" json:"runAsGroup,omitempty"`
					RunAsNonRoot           *bool   `tfsdk:"run_as_non_root" json:"runAsNonRoot,omitempty"`
					RunAsUser              *int64  `tfsdk:"run_as_user" json:"runAsUser,omitempty"`
					SeLinuxOptions         *struct {
						Level *string `tfsdk:"level" json:"level,omitempty"`
						Role  *string `tfsdk:"role" json:"role,omitempty"`
						Type  *string `tfsdk:"type" json:"type,omitempty"`
						User  *string `tfsdk:"user" json:"user,omitempty"`
					} `tfsdk:"se_linux_options" json:"seLinuxOptions,omitempty"`
					SeccompProfile *struct {
						LocalhostProfile *string `tfsdk:"localhost_profile" json:"localhostProfile,omitempty"`
						Type             *string `tfsdk:"type" json:"type,omitempty"`
					} `tfsdk:"seccomp_profile" json:"seccompProfile,omitempty"`
					WindowsOptions *struct {
						GmsaCredentialSpec     *string `tfsdk:"gmsa_credential_spec" json:"gmsaCredentialSpec,omitempty"`
						GmsaCredentialSpecName *string `tfsdk:"gmsa_credential_spec_name" json:"gmsaCredentialSpecName,omitempty"`
						HostProcess            *bool   `tfsdk:"host_process" json:"hostProcess,omitempty"`
						RunAsUserName          *string `tfsdk:"run_as_user_name" json:"runAsUserName,omitempty"`
					} `tfsdk:"windows_options" json:"windowsOptions,omitempty"`
				} `tfsdk:"security_context" json:"securityContext,omitempty"`
				Tolerations *[]struct {
					Effect            *string `tfsdk:"effect" json:"effect,omitempty"`
					Key               *string `tfsdk:"key" json:"key,omitempty"`
					Operator          *string `tfsdk:"operator" json:"operator,omitempty"`
					TolerationSeconds *int64  `tfsdk:"toleration_seconds" json:"tolerationSeconds,omitempty"`
					Value             *string `tfsdk:"value" json:"value,omitempty"`
				} `tfsdk:"tolerations" json:"tolerations,omitempty"`
				TopologySpreadConstraints *[]struct {
					LabelSelector *struct {
						MatchExpressions *[]struct {
							Key      *string   `tfsdk:"key" json:"key,omitempty"`
							Operator *string   `tfsdk:"operator" json:"operator,omitempty"`
							Values   *[]string `tfsdk:"values" json:"values,omitempty"`
						} `tfsdk:"match_expressions" json:"matchExpressions,omitempty"`
						MatchLabels *map[string]string `tfsdk:"match_labels" json:"matchLabels,omitempty"`
					} `tfsdk:"label_selector" json:"labelSelector,omitempty"`
					MaxSkew           *int64  `tfsdk:"max_skew" json:"maxSkew,omitempty"`
					TopologyKey       *string `tfsdk:"topology_key" json:"topologyKey,omitempty"`
					WhenUnsatisfiable *string `tfsdk:"when_unsatisfiable" json:"whenUnsatisfiable,omitempty"`
				} `tfsdk:"topology_spread_constraints" json:"topologySpreadConstraints,omitempty"`
				VolumeMounts *[]struct {
					MountPath        *string `tfsdk:"mount_path" json:"mountPath,omitempty"`
					MountPropagation *string `tfsdk:"mount_propagation" json:"mountPropagation,omitempty"`
					Name             *string `tfsdk:"name" json:"name,omitempty"`
					ReadOnly         *bool   `tfsdk:"read_only" json:"readOnly,omitempty"`
					SubPath          *string `tfsdk:"sub_path" json:"subPath,omitempty"`
					SubPathExpr      *string `tfsdk:"sub_path_expr" json:"subPathExpr,omitempty"`
				} `tfsdk:"volume_mounts" json:"volumeMounts,omitempty"`
				Volumes *[]struct {
					Name         *string `tfsdk:"name" json:"name,omitempty"`
					VolumeSource *struct {
						AwsElasticBlockStore *struct {
							FsType    *string `tfsdk:"fs_type" json:"fsType,omitempty"`
							Partition *int64  `tfsdk:"partition" json:"partition,omitempty"`
							ReadOnly  *bool   `tfsdk:"read_only" json:"readOnly,omitempty"`
							VolumeID  *string `tfsdk:"volume_id" json:"volumeID,omitempty"`
						} `tfsdk:"aws_elastic_block_store" json:"awsElasticBlockStore,omitempty"`
						AzureDisk *struct {
							CachingMode *string `tfsdk:"caching_mode" json:"cachingMode,omitempty"`
							DiskName    *string `tfsdk:"disk_name" json:"diskName,omitempty"`
							DiskURI     *string `tfsdk:"disk_uri" json:"diskURI,omitempty"`
							FsType      *string `tfsdk:"fs_type" json:"fsType,omitempty"`
							Kind        *string `tfsdk:"kind" json:"kind,omitempty"`
							ReadOnly    *bool   `tfsdk:"read_only" json:"readOnly,omitempty"`
						} `tfsdk:"azure_disk" json:"azureDisk,omitempty"`
						AzureFile *struct {
							ReadOnly   *bool   `tfsdk:"read_only" json:"readOnly,omitempty"`
							SecretName *string `tfsdk:"secret_name" json:"secretName,omitempty"`
							ShareName  *string `tfsdk:"share_name" json:"shareName,omitempty"`
						} `tfsdk:"azure_file" json:"azureFile,omitempty"`
						Cephfs *struct {
							Monitors   *[]string `tfsdk:"monitors" json:"monitors,omitempty"`
							Path       *string   `tfsdk:"path" json:"path,omitempty"`
							ReadOnly   *bool     `tfsdk:"read_only" json:"readOnly,omitempty"`
							SecretFile *string   `tfsdk:"secret_file" json:"secretFile,omitempty"`
							SecretRef  *struct {
								Name *string `tfsdk:"name" json:"name,omitempty"`
							} `tfsdk:"secret_ref" json:"secretRef,omitempty"`
							User *string `tfsdk:"user" json:"user,omitempty"`
						} `tfsdk:"cephfs" json:"cephfs,omitempty"`
						Cinder *struct {
							FsType    *string `tfsdk:"fs_type" json:"fsType,omitempty"`
							ReadOnly  *bool   `tfsdk:"read_only" json:"readOnly,omitempty"`
							SecretRef *struct {
								Name *string `tfsdk:"name" json:"name,omitempty"`
							} `tfsdk:"secret_ref" json:"secretRef,omitempty"`
							VolumeID *string `tfsdk:"volume_id" json:"volumeID,omitempty"`
						} `tfsdk:"cinder" json:"cinder,omitempty"`
						ConfigMap *struct {
							DefaultMode *int64 `tfsdk:"default_mode" json:"defaultMode,omitempty"`
							Items       *[]struct {
								Key  *string `tfsdk:"key" json:"key,omitempty"`
								Mode *int64  `tfsdk:"mode" json:"mode,omitempty"`
								Path *string `tfsdk:"path" json:"path,omitempty"`
							} `tfsdk:"items" json:"items,omitempty"`
							LocalObjectReference *struct {
								Name *string `tfsdk:"name" json:"name,omitempty"`
							} `tfsdk:"local_object_reference" json:"localObjectReference,omitempty"`
							Optional *bool `tfsdk:"optional" json:"optional,omitempty"`
						} `tfsdk:"config_map" json:"configMap,omitempty"`
						Csi *struct {
							Driver               *string `tfsdk:"driver" json:"driver,omitempty"`
							FsType               *string `tfsdk:"fs_type" json:"fsType,omitempty"`
							NodePublishSecretRef *struct {
								Name *string `tfsdk:"name" json:"name,omitempty"`
							} `tfsdk:"node_publish_secret_ref" json:"nodePublishSecretRef,omitempty"`
							ReadOnly         *bool              `tfsdk:"read_only" json:"readOnly,omitempty"`
							VolumeAttributes *map[string]string `tfsdk:"volume_attributes" json:"volumeAttributes,omitempty"`
						} `tfsdk:"csi" json:"csi,omitempty"`
						DownwardAPI *struct {
							DefaultMode *int64 `tfsdk:"default_mode" json:"defaultMode,omitempty"`
							Items       *[]struct {
								FieldRef *struct {
									ApiVersion *string `tfsdk:"api_version" json:"apiVersion,omitempty"`
									FieldPath  *string `tfsdk:"field_path" json:"fieldPath,omitempty"`
								} `tfsdk:"field_ref" json:"fieldRef,omitempty"`
								Mode             *int64  `tfsdk:"mode" json:"mode,omitempty"`
								Path             *string `tfsdk:"path" json:"path,omitempty"`
								ResourceFieldRef *struct {
									ContainerName *string `tfsdk:"container_name" json:"containerName,omitempty"`
									Divisor       *string `tfsdk:"divisor" json:"divisor,omitempty"`
									Resource      *string `tfsdk:"resource" json:"resource,omitempty"`
								} `tfsdk:"resource_field_ref" json:"resourceFieldRef,omitempty"`
							} `tfsdk:"items" json:"items,omitempty"`
						} `tfsdk:"downward_api" json:"downwardAPI,omitempty"`
						EmptyDir *struct {
							Medium    *string `tfsdk:"medium" json:"medium,omitempty"`
							SizeLimit *string `tfsdk:"size_limit" json:"sizeLimit,omitempty"`
						} `tfsdk:"empty_dir" json:"emptyDir,omitempty"`
						Ephemeral *struct {
							VolumeClaimTemplate *struct {
								Metadata *struct {
									Annotations       *map[string]string `tfsdk:"annotations" json:"annotations,omitempty"`
									ClusterName       *string            `tfsdk:"cluster_name" json:"clusterName,omitempty"`
									CreationTimestamp *struct {
										Nanos   *int64 `tfsdk:"nanos" json:"nanos,omitempty"`
										Seconds *int64 `tfsdk:"seconds" json:"seconds,omitempty"`
									} `tfsdk:"creation_timestamp" json:"creationTimestamp,omitempty"`
									DeletionGracePeriodSeconds *int64 `tfsdk:"deletion_grace_period_seconds" json:"deletionGracePeriodSeconds,omitempty"`
									DeletionTimestamp          *struct {
										Nanos   *int64 `tfsdk:"nanos" json:"nanos,omitempty"`
										Seconds *int64 `tfsdk:"seconds" json:"seconds,omitempty"`
									} `tfsdk:"deletion_timestamp" json:"deletionTimestamp,omitempty"`
									Finalizers    *[]string          `tfsdk:"finalizers" json:"finalizers,omitempty"`
									GenerateName  *string            `tfsdk:"generate_name" json:"generateName,omitempty"`
									Generation    *int64             `tfsdk:"generation" json:"generation,omitempty"`
									Labels        *map[string]string `tfsdk:"labels" json:"labels,omitempty"`
									ManagedFields *[]struct {
										ApiVersion *string `tfsdk:"api_version" json:"apiVersion,omitempty"`
										FieldsType *string `tfsdk:"fields_type" json:"fieldsType,omitempty"`
										FieldsV1   *struct {
											Raw *string `tfsdk:"raw" json:"Raw,omitempty"`
										} `tfsdk:"fields_v1" json:"fieldsV1,omitempty"`
										Manager     *string `tfsdk:"manager" json:"manager,omitempty"`
										Operation   *string `tfsdk:"operation" json:"operation,omitempty"`
										Subresource *string `tfsdk:"subresource" json:"subresource,omitempty"`
										Time        *struct {
											Nanos   *int64 `tfsdk:"nanos" json:"nanos,omitempty"`
											Seconds *int64 `tfsdk:"seconds" json:"seconds,omitempty"`
										} `tfsdk:"time" json:"time,omitempty"`
									} `tfsdk:"managed_fields" json:"managedFields,omitempty"`
									Name            *string `tfsdk:"name" json:"name,omitempty"`
									Namespace       *string `tfsdk:"namespace" json:"namespace,omitempty"`
									OwnerReferences *[]struct {
										ApiVersion         *string `tfsdk:"api_version" json:"apiVersion,omitempty"`
										BlockOwnerDeletion *bool   `tfsdk:"block_owner_deletion" json:"blockOwnerDeletion,omitempty"`
										Controller         *bool   `tfsdk:"controller" json:"controller,omitempty"`
										Kind               *string `tfsdk:"kind" json:"kind,omitempty"`
										Name               *string `tfsdk:"name" json:"name,omitempty"`
										Uid                *string `tfsdk:"uid" json:"uid,omitempty"`
									} `tfsdk:"owner_references" json:"ownerReferences,omitempty"`
									ResourceVersion *string `tfsdk:"resource_version" json:"resourceVersion,omitempty"`
									SelfLink        *string `tfsdk:"self_link" json:"selfLink,omitempty"`
									Uid             *string `tfsdk:"uid" json:"uid,omitempty"`
								} `tfsdk:"metadata" json:"metadata,omitempty"`
								Spec *struct {
									AccessModes *[]string `tfsdk:"access_modes" json:"accessModes,omitempty"`
									DataSource  *struct {
										ApiGroup *string `tfsdk:"api_group" json:"apiGroup,omitempty"`
										Kind     *string `tfsdk:"kind" json:"kind,omitempty"`
										Name     *string `tfsdk:"name" json:"name,omitempty"`
									} `tfsdk:"data_source" json:"dataSource,omitempty"`
									DataSourceRef *struct {
										ApiGroup *string `tfsdk:"api_group" json:"apiGroup,omitempty"`
										Kind     *string `tfsdk:"kind" json:"kind,omitempty"`
										Name     *string `tfsdk:"name" json:"name,omitempty"`
									} `tfsdk:"data_source_ref" json:"dataSourceRef,omitempty"`
									Resources *struct {
										Limits *struct {
											String *string `tfsdk:"string" json:"string,omitempty"`
										} `tfsdk:"limits" json:"limits,omitempty"`
										Requests *struct {
											String *string `tfsdk:"string" json:"string,omitempty"`
										} `tfsdk:"requests" json:"requests,omitempty"`
									} `tfsdk:"resources" json:"resources,omitempty"`
									Selector *struct {
										MatchExpressions *[]struct {
											Key      *string   `tfsdk:"key" json:"key,omitempty"`
											Operator *string   `tfsdk:"operator" json:"operator,omitempty"`
											Values   *[]string `tfsdk:"values" json:"values,omitempty"`
										} `tfsdk:"match_expressions" json:"matchExpressions,omitempty"`
										MatchLabels *map[string]string `tfsdk:"match_labels" json:"matchLabels,omitempty"`
									} `tfsdk:"selector" json:"selector,omitempty"`
									StorageClassName *string `tfsdk:"storage_class_name" json:"storageClassName,omitempty"`
									VolumeMode       *string `tfsdk:"volume_mode" json:"volumeMode,omitempty"`
									VolumeName       *string `tfsdk:"volume_name" json:"volumeName,omitempty"`
								} `tfsdk:"spec" json:"spec,omitempty"`
							} `tfsdk:"volume_claim_template" json:"volumeClaimTemplate,omitempty"`
						} `tfsdk:"ephemeral" json:"ephemeral,omitempty"`
						Fc *struct {
							FsType     *string   `tfsdk:"fs_type" json:"fsType,omitempty"`
							Lun        *int64    `tfsdk:"lun" json:"lun,omitempty"`
							ReadOnly   *bool     `tfsdk:"read_only" json:"readOnly,omitempty"`
							TargetWWNs *[]string `tfsdk:"target_ww_ns" json:"targetWWNs,omitempty"`
							Wwids      *[]string `tfsdk:"wwids" json:"wwids,omitempty"`
						} `tfsdk:"fc" json:"fc,omitempty"`
						FlexVolume *struct {
							Driver    *string            `tfsdk:"driver" json:"driver,omitempty"`
							FsType    *string            `tfsdk:"fs_type" json:"fsType,omitempty"`
							Options   *map[string]string `tfsdk:"options" json:"options,omitempty"`
							ReadOnly  *bool              `tfsdk:"read_only" json:"readOnly,omitempty"`
							SecretRef *struct {
								Name *string `tfsdk:"name" json:"name,omitempty"`
							} `tfsdk:"secret_ref" json:"secretRef,omitempty"`
						} `tfsdk:"flex_volume" json:"flexVolume,omitempty"`
						Flocker *struct {
							DatasetName *string `tfsdk:"dataset_name" json:"datasetName,omitempty"`
							DatasetUUID *string `tfsdk:"dataset_uuid" json:"datasetUUID,omitempty"`
						} `tfsdk:"flocker" json:"flocker,omitempty"`
						GcePersistentDisk *struct {
							FsType    *string `tfsdk:"fs_type" json:"fsType,omitempty"`
							Partition *int64  `tfsdk:"partition" json:"partition,omitempty"`
							PdName    *string `tfsdk:"pd_name" json:"pdName,omitempty"`
							ReadOnly  *bool   `tfsdk:"read_only" json:"readOnly,omitempty"`
						} `tfsdk:"gce_persistent_disk" json:"gcePersistentDisk,omitempty"`
						GitRepo *struct {
							Directory  *string `tfsdk:"directory" json:"directory,omitempty"`
							Repository *string `tfsdk:"repository" json:"repository,omitempty"`
							Revision   *string `tfsdk:"revision" json:"revision,omitempty"`
						} `tfsdk:"git_repo" json:"gitRepo,omitempty"`
						Glusterfs *struct {
							Endpoints *string `tfsdk:"endpoints" json:"endpoints,omitempty"`
							Path      *string `tfsdk:"path" json:"path,omitempty"`
							ReadOnly  *bool   `tfsdk:"read_only" json:"readOnly,omitempty"`
						} `tfsdk:"glusterfs" json:"glusterfs,omitempty"`
						HostPath *struct {
							Path *string `tfsdk:"path" json:"path,omitempty"`
							Type *string `tfsdk:"type" json:"type,omitempty"`
						} `tfsdk:"host_path" json:"hostPath,omitempty"`
						Iscsi *struct {
							ChapAuthDiscovery *bool     `tfsdk:"chap_auth_discovery" json:"chapAuthDiscovery,omitempty"`
							ChapAuthSession   *bool     `tfsdk:"chap_auth_session" json:"chapAuthSession,omitempty"`
							FsType            *string   `tfsdk:"fs_type" json:"fsType,omitempty"`
							InitiatorName     *string   `tfsdk:"initiator_name" json:"initiatorName,omitempty"`
							Iqn               *string   `tfsdk:"iqn" json:"iqn,omitempty"`
							IscsiInterface    *string   `tfsdk:"iscsi_interface" json:"iscsiInterface,omitempty"`
							Lun               *int64    `tfsdk:"lun" json:"lun,omitempty"`
							Portals           *[]string `tfsdk:"portals" json:"portals,omitempty"`
							ReadOnly          *bool     `tfsdk:"read_only" json:"readOnly,omitempty"`
							SecretRef         *struct {
								Name *string `tfsdk:"name" json:"name,omitempty"`
							} `tfsdk:"secret_ref" json:"secretRef,omitempty"`
							TargetPortal *string `tfsdk:"target_portal" json:"targetPortal,omitempty"`
						} `tfsdk:"iscsi" json:"iscsi,omitempty"`
						Nfs *struct {
							Path     *string `tfsdk:"path" json:"path,omitempty"`
							ReadOnly *bool   `tfsdk:"read_only" json:"readOnly,omitempty"`
							Server   *string `tfsdk:"server" json:"server,omitempty"`
						} `tfsdk:"nfs" json:"nfs,omitempty"`
						PersistentVolumeClaim *struct {
							ClaimName *string `tfsdk:"claim_name" json:"claimName,omitempty"`
							ReadOnly  *bool   `tfsdk:"read_only" json:"readOnly,omitempty"`
						} `tfsdk:"persistent_volume_claim" json:"persistentVolumeClaim,omitempty"`
						PhotonPersistentDisk *struct {
							FsType *string `tfsdk:"fs_type" json:"fsType,omitempty"`
							PdID   *string `tfsdk:"pd_id" json:"pdID,omitempty"`
						} `tfsdk:"photon_persistent_disk" json:"photonPersistentDisk,omitempty"`
						PortworxVolume *struct {
							FsType   *string `tfsdk:"fs_type" json:"fsType,omitempty"`
							ReadOnly *bool   `tfsdk:"read_only" json:"readOnly,omitempty"`
							VolumeID *string `tfsdk:"volume_id" json:"volumeID,omitempty"`
						} `tfsdk:"portworx_volume" json:"portworxVolume,omitempty"`
						Projected *struct {
							DefaultMode *int64 `tfsdk:"default_mode" json:"defaultMode,omitempty"`
							Sources     *[]struct {
								ConfigMap *struct {
									Items *[]struct {
										Key  *string `tfsdk:"key" json:"key,omitempty"`
										Mode *int64  `tfsdk:"mode" json:"mode,omitempty"`
										Path *string `tfsdk:"path" json:"path,omitempty"`
									} `tfsdk:"items" json:"items,omitempty"`
									LocalObjectReference *struct {
										Name *string `tfsdk:"name" json:"name,omitempty"`
									} `tfsdk:"local_object_reference" json:"localObjectReference,omitempty"`
									Optional *bool `tfsdk:"optional" json:"optional,omitempty"`
								} `tfsdk:"config_map" json:"configMap,omitempty"`
								DownwardAPI *struct {
									Items *[]struct {
										FieldRef *struct {
											ApiVersion *string `tfsdk:"api_version" json:"apiVersion,omitempty"`
											FieldPath  *string `tfsdk:"field_path" json:"fieldPath,omitempty"`
										} `tfsdk:"field_ref" json:"fieldRef,omitempty"`
										Mode             *int64  `tfsdk:"mode" json:"mode,omitempty"`
										Path             *string `tfsdk:"path" json:"path,omitempty"`
										ResourceFieldRef *struct {
											ContainerName *string `tfsdk:"container_name" json:"containerName,omitempty"`
											Divisor       *string `tfsdk:"divisor" json:"divisor,omitempty"`
											Resource      *string `tfsdk:"resource" json:"resource,omitempty"`
										} `tfsdk:"resource_field_ref" json:"resourceFieldRef,omitempty"`
									} `tfsdk:"items" json:"items,omitempty"`
								} `tfsdk:"downward_api" json:"downwardAPI,omitempty"`
								Secret *struct {
									Items *[]struct {
										Key  *string `tfsdk:"key" json:"key,omitempty"`
										Mode *int64  `tfsdk:"mode" json:"mode,omitempty"`
										Path *string `tfsdk:"path" json:"path,omitempty"`
									} `tfsdk:"items" json:"items,omitempty"`
									LocalObjectReference *struct {
										Name *string `tfsdk:"name" json:"name,omitempty"`
									} `tfsdk:"local_object_reference" json:"localObjectReference,omitempty"`
									Optional *bool `tfsdk:"optional" json:"optional,omitempty"`
								} `tfsdk:"secret" json:"secret,omitempty"`
								ServiceAccountToken *struct {
									Audience          *string `tfsdk:"audience" json:"audience,omitempty"`
									ExpirationSeconds *int64  `tfsdk:"expiration_seconds" json:"expirationSeconds,omitempty"`
									Path              *string `tfsdk:"path" json:"path,omitempty"`
								} `tfsdk:"service_account_token" json:"serviceAccountToken,omitempty"`
							} `tfsdk:"sources" json:"sources,omitempty"`
						} `tfsdk:"projected" json:"projected,omitempty"`
						Quobyte *struct {
							Group    *string `tfsdk:"group" json:"group,omitempty"`
							ReadOnly *bool   `tfsdk:"read_only" json:"readOnly,omitempty"`
							Registry *string `tfsdk:"registry" json:"registry,omitempty"`
							Tenant   *string `tfsdk:"tenant" json:"tenant,omitempty"`
							User     *string `tfsdk:"user" json:"user,omitempty"`
							Volume   *string `tfsdk:"volume" json:"volume,omitempty"`
						} `tfsdk:"quobyte" json:"quobyte,omitempty"`
						Rbd *struct {
							FsType    *string   `tfsdk:"fs_type" json:"fsType,omitempty"`
							Image     *string   `tfsdk:"image" json:"image,omitempty"`
							Keyring   *string   `tfsdk:"keyring" json:"keyring,omitempty"`
							Monitors  *[]string `tfsdk:"monitors" json:"monitors,omitempty"`
							Pool      *string   `tfsdk:"pool" json:"pool,omitempty"`
							ReadOnly  *bool     `tfsdk:"read_only" json:"readOnly,omitempty"`
							SecretRef *struct {
								Name *string `tfsdk:"name" json:"name,omitempty"`
							} `tfsdk:"secret_ref" json:"secretRef,omitempty"`
							User *string `tfsdk:"user" json:"user,omitempty"`
						} `tfsdk:"rbd" json:"rbd,omitempty"`
						ScaleIO *struct {
							FsType           *string `tfsdk:"fs_type" json:"fsType,omitempty"`
							Gateway          *string `tfsdk:"gateway" json:"gateway,omitempty"`
							ProtectionDomain *string `tfsdk:"protection_domain" json:"protectionDomain,omitempty"`
							ReadOnly         *bool   `tfsdk:"read_only" json:"readOnly,omitempty"`
							SecretRef        *struct {
								Name *string `tfsdk:"name" json:"name,omitempty"`
							} `tfsdk:"secret_ref" json:"secretRef,omitempty"`
							SslEnabled  *bool   `tfsdk:"ssl_enabled" json:"sslEnabled,omitempty"`
							StorageMode *string `tfsdk:"storage_mode" json:"storageMode,omitempty"`
							StoragePool *string `tfsdk:"storage_pool" json:"storagePool,omitempty"`
							System      *string `tfsdk:"system" json:"system,omitempty"`
							VolumeName  *string `tfsdk:"volume_name" json:"volumeName,omitempty"`
						} `tfsdk:"scale_io" json:"scaleIO,omitempty"`
						Secret *struct {
							DefaultMode *int64 `tfsdk:"default_mode" json:"defaultMode,omitempty"`
							Items       *[]struct {
								Key  *string `tfsdk:"key" json:"key,omitempty"`
								Mode *int64  `tfsdk:"mode" json:"mode,omitempty"`
								Path *string `tfsdk:"path" json:"path,omitempty"`
							} `tfsdk:"items" json:"items,omitempty"`
							Optional   *bool   `tfsdk:"optional" json:"optional,omitempty"`
							SecretName *string `tfsdk:"secret_name" json:"secretName,omitempty"`
						} `tfsdk:"secret" json:"secret,omitempty"`
						Storageos *struct {
							FsType    *string `tfsdk:"fs_type" json:"fsType,omitempty"`
							ReadOnly  *bool   `tfsdk:"read_only" json:"readOnly,omitempty"`
							SecretRef *struct {
								Name *string `tfsdk:"name" json:"name,omitempty"`
							} `tfsdk:"secret_ref" json:"secretRef,omitempty"`
							VolumeName      *string `tfsdk:"volume_name" json:"volumeName,omitempty"`
							VolumeNamespace *string `tfsdk:"volume_namespace" json:"volumeNamespace,omitempty"`
						} `tfsdk:"storageos" json:"storageos,omitempty"`
						VsphereVolume *struct {
							FsType            *string `tfsdk:"fs_type" json:"fsType,omitempty"`
							StoragePolicyID   *string `tfsdk:"storage_policy_id" json:"storagePolicyID,omitempty"`
							StoragePolicyName *string `tfsdk:"storage_policy_name" json:"storagePolicyName,omitempty"`
							VolumePath        *string `tfsdk:"volume_path" json:"volumePath,omitempty"`
						} `tfsdk:"vsphere_volume" json:"vsphereVolume,omitempty"`
					} `tfsdk:"volume_source" json:"volumeSource,omitempty"`
				} `tfsdk:"volumes" json:"volumes,omitempty"`
			} `tfsdk:"deployment" json:"deployment,omitempty"`
			EnableAnalysis                 *bool `tfsdk:"enable_analysis" json:"enableAnalysis,omitempty"`
			EnableProtocolSniffingInbound  *bool `tfsdk:"enable_protocol_sniffing_inbound" json:"enableProtocolSniffingInbound,omitempty"`
			EnableProtocolSniffingOutbound *bool `tfsdk:"enable_protocol_sniffing_outbound" json:"enableProtocolSniffingOutbound,omitempty"`
			EnableStatus                   *bool `tfsdk:"enable_status" json:"enableStatus,omitempty"`
			ExternalIstiod                 *struct {
				Enabled *bool `tfsdk:"enabled" json:"enabled,omitempty"`
			} `tfsdk:"external_istiod" json:"externalIstiod,omitempty"`
			Spiffe *struct {
				OperatorEndpoints *struct {
					Enabled *bool `tfsdk:"enabled" json:"enabled,omitempty"`
				} `tfsdk:"operator_endpoints" json:"operatorEndpoints,omitempty"`
			} `tfsdk:"spiffe" json:"spiffe,omitempty"`
			TraceSampling *float64 `tfsdk:"trace_sampling" json:"traceSampling,omitempty"`
		} `tfsdk:"istiod" json:"istiod,omitempty"`
		JwtPolicy           *string `tfsdk:"jwt_policy" json:"jwtPolicy,omitempty"`
		K8sResourceOverlays *[]struct {
			GroupVersionKind *struct {
				Group   *string `tfsdk:"group" json:"group,omitempty"`
				Kind    *string `tfsdk:"kind" json:"kind,omitempty"`
				Version *string `tfsdk:"version" json:"version,omitempty"`
			} `tfsdk:"group_version_kind" json:"groupVersionKind,omitempty"`
			ObjectKey *struct {
				Name      *string `tfsdk:"name" json:"name,omitempty"`
				Namespace *string `tfsdk:"namespace" json:"namespace,omitempty"`
			} `tfsdk:"object_key" json:"objectKey,omitempty"`
			Patches *[]struct {
				ParseValue *bool   `tfsdk:"parse_value" json:"parseValue,omitempty"`
				Path       *string `tfsdk:"path" json:"path,omitempty"`
				Type       *string `tfsdk:"type" json:"type,omitempty"`
				Value      *string `tfsdk:"value" json:"value,omitempty"`
			} `tfsdk:"patches" json:"patches,omitempty"`
		} `tfsdk:"k8s_resource_overlays" json:"k8sResourceOverlays,omitempty"`
		Logging *struct {
			Level *string `tfsdk:"level" json:"level,omitempty"`
		} `tfsdk:"logging" json:"logging,omitempty"`
		MeshConfig *struct {
			AccessLogEncoding *string `tfsdk:"access_log_encoding" json:"accessLogEncoding,omitempty"`
			AccessLogFile     *string `tfsdk:"access_log_file" json:"accessLogFile,omitempty"`
			AccessLogFormat   *string `tfsdk:"access_log_format" json:"accessLogFormat,omitempty"`
			Ca                *struct {
				Address        *string `tfsdk:"address" json:"address,omitempty"`
				IstiodSide     *bool   `tfsdk:"istiod_side" json:"istiodSide,omitempty"`
				RequestTimeout *string `tfsdk:"request_timeout" json:"requestTimeout,omitempty"`
				TlsSettings    *struct {
					CaCertificates     *string   `tfsdk:"ca_certificates" json:"caCertificates,omitempty"`
					ClientCertificate  *string   `tfsdk:"client_certificate" json:"clientCertificate,omitempty"`
					CredentialName     *string   `tfsdk:"credential_name" json:"credentialName,omitempty"`
					InsecureSkipVerify *bool     `tfsdk:"insecure_skip_verify" json:"insecureSkipVerify,omitempty"`
					Mode               *string   `tfsdk:"mode" json:"mode,omitempty"`
					PrivateKey         *string   `tfsdk:"private_key" json:"privateKey,omitempty"`
					Sni                *string   `tfsdk:"sni" json:"sni,omitempty"`
					SubjectAltNames    *[]string `tfsdk:"subject_alt_names" json:"subjectAltNames,omitempty"`
				} `tfsdk:"tls_settings" json:"tlsSettings,omitempty"`
			} `tfsdk:"ca" json:"ca,omitempty"`
			CaCertificates *[]struct {
				CertSigners     *[]string `tfsdk:"cert_signers" json:"certSigners,omitempty"`
				Pem             *string   `tfsdk:"pem" json:"pem,omitempty"`
				SpiffeBundleUrl *string   `tfsdk:"spiffe_bundle_url" json:"spiffeBundleUrl,omitempty"`
				TrustDomains    *[]string `tfsdk:"trust_domains" json:"trustDomains,omitempty"`
			} `tfsdk:"ca_certificates" json:"caCertificates,omitempty"`
			Certificates *[]struct {
				DnsNames   *[]string `tfsdk:"dns_names" json:"dnsNames,omitempty"`
				SecretName *string   `tfsdk:"secret_name" json:"secretName,omitempty"`
			} `tfsdk:"certificates" json:"certificates,omitempty"`
			ConfigSources *[]struct {
				Address             *string   `tfsdk:"address" json:"address,omitempty"`
				SubscribedResources *[]string `tfsdk:"subscribed_resources" json:"subscribedResources,omitempty"`
				TlsSettings         *struct {
					CaCertificates     *string   `tfsdk:"ca_certificates" json:"caCertificates,omitempty"`
					ClientCertificate  *string   `tfsdk:"client_certificate" json:"clientCertificate,omitempty"`
					CredentialName     *string   `tfsdk:"credential_name" json:"credentialName,omitempty"`
					InsecureSkipVerify *bool     `tfsdk:"insecure_skip_verify" json:"insecureSkipVerify,omitempty"`
					Mode               *string   `tfsdk:"mode" json:"mode,omitempty"`
					PrivateKey         *string   `tfsdk:"private_key" json:"privateKey,omitempty"`
					Sni                *string   `tfsdk:"sni" json:"sni,omitempty"`
					SubjectAltNames    *[]string `tfsdk:"subject_alt_names" json:"subjectAltNames,omitempty"`
				} `tfsdk:"tls_settings" json:"tlsSettings,omitempty"`
			} `tfsdk:"config_sources" json:"configSources,omitempty"`
			ConnectTimeout *string `tfsdk:"connect_timeout" json:"connectTimeout,omitempty"`
			DefaultConfig  *struct {
				AvailabilityZone       *string   `tfsdk:"availability_zone" json:"availabilityZone,omitempty"`
				BinaryPath             *string   `tfsdk:"binary_path" json:"binaryPath,omitempty"`
				CaCertificatesPem      *[]string `tfsdk:"ca_certificates_pem" json:"caCertificatesPem,omitempty"`
				Concurrency            *int64    `tfsdk:"concurrency" json:"concurrency,omitempty"`
				ConfigPath             *string   `tfsdk:"config_path" json:"configPath,omitempty"`
				ControlPlaneAuthPolicy *string   `tfsdk:"control_plane_auth_policy" json:"controlPlaneAuthPolicy,omitempty"`
				CustomConfigFile       *string   `tfsdk:"custom_config_file" json:"customConfigFile,omitempty"`
				DiscoveryAddress       *string   `tfsdk:"discovery_address" json:"discoveryAddress,omitempty"`
				DiscoveryRefreshDelay  *string   `tfsdk:"discovery_refresh_delay" json:"discoveryRefreshDelay,omitempty"`
				DrainDuration          *string   `tfsdk:"drain_duration" json:"drainDuration,omitempty"`
				EnvoyAccessLogService  *struct {
					Address      *string `tfsdk:"address" json:"address,omitempty"`
					TcpKeepalive *struct {
						Interval *string `tfsdk:"interval" json:"interval,omitempty"`
						Probes   *int64  `tfsdk:"probes" json:"probes,omitempty"`
						Time     *string `tfsdk:"time" json:"time,omitempty"`
					} `tfsdk:"tcp_keepalive" json:"tcpKeepalive,omitempty"`
					TlsSettings *struct {
						CaCertificates     *string   `tfsdk:"ca_certificates" json:"caCertificates,omitempty"`
						ClientCertificate  *string   `tfsdk:"client_certificate" json:"clientCertificate,omitempty"`
						CredentialName     *string   `tfsdk:"credential_name" json:"credentialName,omitempty"`
						InsecureSkipVerify *bool     `tfsdk:"insecure_skip_verify" json:"insecureSkipVerify,omitempty"`
						Mode               *string   `tfsdk:"mode" json:"mode,omitempty"`
						PrivateKey         *string   `tfsdk:"private_key" json:"privateKey,omitempty"`
						Sni                *string   `tfsdk:"sni" json:"sni,omitempty"`
						SubjectAltNames    *[]string `tfsdk:"subject_alt_names" json:"subjectAltNames,omitempty"`
					} `tfsdk:"tls_settings" json:"tlsSettings,omitempty"`
				} `tfsdk:"envoy_access_log_service" json:"envoyAccessLogService,omitempty"`
				EnvoyMetricsService *struct {
					Address      *string `tfsdk:"address" json:"address,omitempty"`
					TcpKeepalive *struct {
						Interval *string `tfsdk:"interval" json:"interval,omitempty"`
						Probes   *int64  `tfsdk:"probes" json:"probes,omitempty"`
						Time     *string `tfsdk:"time" json:"time,omitempty"`
					} `tfsdk:"tcp_keepalive" json:"tcpKeepalive,omitempty"`
					TlsSettings *struct {
						CaCertificates     *string   `tfsdk:"ca_certificates" json:"caCertificates,omitempty"`
						ClientCertificate  *string   `tfsdk:"client_certificate" json:"clientCertificate,omitempty"`
						CredentialName     *string   `tfsdk:"credential_name" json:"credentialName,omitempty"`
						InsecureSkipVerify *bool     `tfsdk:"insecure_skip_verify" json:"insecureSkipVerify,omitempty"`
						Mode               *string   `tfsdk:"mode" json:"mode,omitempty"`
						PrivateKey         *string   `tfsdk:"private_key" json:"privateKey,omitempty"`
						Sni                *string   `tfsdk:"sni" json:"sni,omitempty"`
						SubjectAltNames    *[]string `tfsdk:"subject_alt_names" json:"subjectAltNames,omitempty"`
					} `tfsdk:"tls_settings" json:"tlsSettings,omitempty"`
				} `tfsdk:"envoy_metrics_service" json:"envoyMetricsService,omitempty"`
				EnvoyMetricsServiceAddress *string   `tfsdk:"envoy_metrics_service_address" json:"envoyMetricsServiceAddress,omitempty"`
				ExtraStatTags              *[]string `tfsdk:"extra_stat_tags" json:"extraStatTags,omitempty"`
				GatewayTopology            *struct {
					ForwardClientCertDetails *string `tfsdk:"forward_client_cert_details" json:"forwardClientCertDetails,omitempty"`
					NumTrustedProxies        *int64  `tfsdk:"num_trusted_proxies" json:"numTrustedProxies,omitempty"`
				} `tfsdk:"gateway_topology" json:"gatewayTopology,omitempty"`
				HoldApplicationUntilProxyStarts *bool `tfsdk:"hold_application_until_proxy_starts" json:"holdApplicationUntilProxyStarts,omitempty"`
				Image                           *struct {
					ImageType *string `tfsdk:"image_type" json:"imageType,omitempty"`
				} `tfsdk:"image" json:"image,omitempty"`
				InterceptionMode   *string `tfsdk:"interception_mode" json:"interceptionMode,omitempty"`
				MeshId             *string `tfsdk:"mesh_id" json:"meshId,omitempty"`
				PrivateKeyProvider *struct {
					Cryptomb *struct {
						PollDelay *string `tfsdk:"poll_delay" json:"pollDelay,omitempty"`
					} `tfsdk:"cryptomb" json:"cryptomb,omitempty"`
					Qat *struct {
						PollDelay *string `tfsdk:"poll_delay" json:"pollDelay,omitempty"`
					} `tfsdk:"qat" json:"qat,omitempty"`
				} `tfsdk:"private_key_provider" json:"privateKeyProvider,omitempty"`
				ProxyAdminPort             *int64             `tfsdk:"proxy_admin_port" json:"proxyAdminPort,omitempty"`
				ProxyBootstrapTemplatePath *string            `tfsdk:"proxy_bootstrap_template_path" json:"proxyBootstrapTemplatePath,omitempty"`
				ProxyMetadata              *map[string]string `tfsdk:"proxy_metadata" json:"proxyMetadata,omitempty"`
				ProxyStatsMatcher          *struct {
					InclusionPrefixes *[]string `tfsdk:"inclusion_prefixes" json:"inclusionPrefixes,omitempty"`
					InclusionRegexps  *[]string `tfsdk:"inclusion_regexps" json:"inclusionRegexps,omitempty"`
					InclusionSuffixes *[]string `tfsdk:"inclusion_suffixes" json:"inclusionSuffixes,omitempty"`
				} `tfsdk:"proxy_stats_matcher" json:"proxyStatsMatcher,omitempty"`
				ReadinessProbe *struct {
					Exec *struct {
						Command *[]string `tfsdk:"command" json:"command,omitempty"`
					} `tfsdk:"exec" json:"exec,omitempty"`
					FailureThreshold *int64 `tfsdk:"failure_threshold" json:"failureThreshold,omitempty"`
					HttpGet          *struct {
						Host        *string `tfsdk:"host" json:"host,omitempty"`
						HttpHeaders *[]struct {
							Name  *string `tfsdk:"name" json:"name,omitempty"`
							Value *string `tfsdk:"value" json:"value,omitempty"`
						} `tfsdk:"http_headers" json:"httpHeaders,omitempty"`
						Path   *string `tfsdk:"path" json:"path,omitempty"`
						Port   *int64  `tfsdk:"port" json:"port,omitempty"`
						Scheme *string `tfsdk:"scheme" json:"scheme,omitempty"`
					} `tfsdk:"http_get" json:"httpGet,omitempty"`
					InitialDelaySeconds *int64 `tfsdk:"initial_delay_seconds" json:"initialDelaySeconds,omitempty"`
					PeriodSeconds       *int64 `tfsdk:"period_seconds" json:"periodSeconds,omitempty"`
					SuccessThreshold    *int64 `tfsdk:"success_threshold" json:"successThreshold,omitempty"`
					TcpSocket           *struct {
						Host *string `tfsdk:"host" json:"host,omitempty"`
						Port *int64  `tfsdk:"port" json:"port,omitempty"`
					} `tfsdk:"tcp_socket" json:"tcpSocket,omitempty"`
					TimeoutSeconds *int64 `tfsdk:"timeout_seconds" json:"timeoutSeconds,omitempty"`
				} `tfsdk:"readiness_probe" json:"readinessProbe,omitempty"`
				RuntimeValues *map[string]string `tfsdk:"runtime_values" json:"runtimeValues,omitempty"`
				Sds           *struct {
					Enabled      *bool   `tfsdk:"enabled" json:"enabled,omitempty"`
					K8sSaJwtPath *string `tfsdk:"k8s_sa_jwt_path" json:"k8sSaJwtPath,omitempty"`
				} `tfsdk:"sds" json:"sds,omitempty"`
				ServiceCluster           *string `tfsdk:"service_cluster" json:"serviceCluster,omitempty"`
				StatNameLength           *int64  `tfsdk:"stat_name_length" json:"statNameLength,omitempty"`
				StatsdUdpAddress         *string `tfsdk:"statsd_udp_address" json:"statsdUdpAddress,omitempty"`
				StatusPort               *int64  `tfsdk:"status_port" json:"statusPort,omitempty"`
				TerminationDrainDuration *string `tfsdk:"termination_drain_duration" json:"terminationDrainDuration,omitempty"`
				Tracing                  *struct {
					CustomTags *struct {
						Environment *struct {
							DefaultValue *string `tfsdk:"default_value" json:"defaultValue,omitempty"`
							Name         *string `tfsdk:"name" json:"name,omitempty"`
						} `tfsdk:"environment" json:"environment,omitempty"`
						Header *struct {
							DefaultValue *string `tfsdk:"default_value" json:"defaultValue,omitempty"`
							Name         *string `tfsdk:"name" json:"name,omitempty"`
						} `tfsdk:"header" json:"header,omitempty"`
						Literal *struct {
							Value *string `tfsdk:"value" json:"value,omitempty"`
						} `tfsdk:"literal" json:"literal,omitempty"`
					} `tfsdk:"custom_tags" json:"customTags,omitempty"`
					Datadog *struct {
						Address *string `tfsdk:"address" json:"address,omitempty"`
					} `tfsdk:"datadog" json:"datadog,omitempty"`
					Lightstep *struct {
						AccessToken *string `tfsdk:"access_token" json:"accessToken,omitempty"`
						Address     *string `tfsdk:"address" json:"address,omitempty"`
					} `tfsdk:"lightstep" json:"lightstep,omitempty"`
					MaxPathTagLength *int64 `tfsdk:"max_path_tag_length" json:"maxPathTagLength,omitempty"`
					OpenCensusAgent  *struct {
						Address *string   `tfsdk:"address" json:"address,omitempty"`
						Context *[]string `tfsdk:"context" json:"context,omitempty"`
					} `tfsdk:"open_census_agent" json:"openCensusAgent,omitempty"`
					Sampling    *float64 `tfsdk:"sampling" json:"sampling,omitempty"`
					Stackdriver *struct {
						Debug                    *bool  `tfsdk:"debug" json:"debug,omitempty"`
						MaxNumberOfAnnotations   *int64 `tfsdk:"max_number_of_annotations" json:"maxNumberOfAnnotations,omitempty"`
						MaxNumberOfAttributes    *int64 `tfsdk:"max_number_of_attributes" json:"maxNumberOfAttributes,omitempty"`
						MaxNumberOfMessageEvents *int64 `tfsdk:"max_number_of_message_events" json:"maxNumberOfMessageEvents,omitempty"`
					} `tfsdk:"stackdriver" json:"stackdriver,omitempty"`
					TlsSettings *struct {
						CaCertificates     *string   `tfsdk:"ca_certificates" json:"caCertificates,omitempty"`
						ClientCertificate  *string   `tfsdk:"client_certificate" json:"clientCertificate,omitempty"`
						CredentialName     *string   `tfsdk:"credential_name" json:"credentialName,omitempty"`
						InsecureSkipVerify *bool     `tfsdk:"insecure_skip_verify" json:"insecureSkipVerify,omitempty"`
						Mode               *string   `tfsdk:"mode" json:"mode,omitempty"`
						PrivateKey         *string   `tfsdk:"private_key" json:"privateKey,omitempty"`
						Sni                *string   `tfsdk:"sni" json:"sni,omitempty"`
						SubjectAltNames    *[]string `tfsdk:"subject_alt_names" json:"subjectAltNames,omitempty"`
					} `tfsdk:"tls_settings" json:"tlsSettings,omitempty"`
					Zipkin *struct {
						Address *string `tfsdk:"address" json:"address,omitempty"`
					} `tfsdk:"zipkin" json:"zipkin,omitempty"`
				} `tfsdk:"tracing" json:"tracing,omitempty"`
				TracingServiceName *string `tfsdk:"tracing_service_name" json:"tracingServiceName,omitempty"`
				ZipkinAddress      *string `tfsdk:"zipkin_address" json:"zipkinAddress,omitempty"`
			} `tfsdk:"default_config" json:"defaultConfig,omitempty"`
			DefaultDestinationRuleExportTo *[]string `tfsdk:"default_destination_rule_export_to" json:"defaultDestinationRuleExportTo,omitempty"`
			DefaultHttpRetryPolicy         *struct {
				Attempts              *int64  `tfsdk:"attempts" json:"attempts,omitempty"`
				PerTryTimeout         *string `tfsdk:"per_try_timeout" json:"perTryTimeout,omitempty"`
				RetryOn               *string `tfsdk:"retry_on" json:"retryOn,omitempty"`
				RetryRemoteLocalities *bool   `tfsdk:"retry_remote_localities" json:"retryRemoteLocalities,omitempty"`
			} `tfsdk:"default_http_retry_policy" json:"defaultHttpRetryPolicy,omitempty"`
			DefaultProviders *struct {
				AccessLogging *[]string `tfsdk:"access_logging" json:"accessLogging,omitempty"`
				Metrics       *[]string `tfsdk:"metrics" json:"metrics,omitempty"`
				Tracing       *[]string `tfsdk:"tracing" json:"tracing,omitempty"`
			} `tfsdk:"default_providers" json:"defaultProviders,omitempty"`
			DefaultServiceExportTo        *[]string `tfsdk:"default_service_export_to" json:"defaultServiceExportTo,omitempty"`
			DefaultVirtualServiceExportTo *[]string `tfsdk:"default_virtual_service_export_to" json:"defaultVirtualServiceExportTo,omitempty"`
			DisableEnvoyListenerLog       *bool     `tfsdk:"disable_envoy_listener_log" json:"disableEnvoyListenerLog,omitempty"`
			DiscoverySelectors            *[]struct {
				MatchExpressions *[]struct {
					Key      *string   `tfsdk:"key" json:"key,omitempty"`
					Operator *string   `tfsdk:"operator" json:"operator,omitempty"`
					Values   *[]string `tfsdk:"values" json:"values,omitempty"`
				} `tfsdk:"match_expressions" json:"matchExpressions,omitempty"`
				MatchLabels *map[string]string `tfsdk:"match_labels" json:"matchLabels,omitempty"`
			} `tfsdk:"discovery_selectors" json:"discoverySelectors,omitempty"`
			DnsRefreshRate              *string `tfsdk:"dns_refresh_rate" json:"dnsRefreshRate,omitempty"`
			EnableAutoMtls              *bool   `tfsdk:"enable_auto_mtls" json:"enableAutoMtls,omitempty"`
			EnableEnvoyAccessLogService *bool   `tfsdk:"enable_envoy_access_log_service" json:"enableEnvoyAccessLogService,omitempty"`
			EnablePrometheusMerge       *bool   `tfsdk:"enable_prometheus_merge" json:"enablePrometheusMerge,omitempty"`
			EnableTracing               *bool   `tfsdk:"enable_tracing" json:"enableTracing,omitempty"`
			ExtensionProviders          *[]struct {
				Datadog *struct {
					MaxTagLength *int64  `tfsdk:"max_tag_length" json:"maxTagLength,omitempty"`
					Port         *int64  `tfsdk:"port" json:"port,omitempty"`
					Service      *string `tfsdk:"service" json:"service,omitempty"`
				} `tfsdk:"datadog" json:"datadog,omitempty"`
				EnvoyExtAuthzGrpc *struct {
					FailOpen                  *bool `tfsdk:"fail_open" json:"failOpen,omitempty"`
					IncludeRequestBodyInCheck *struct {
						AllowPartialMessage *bool  `tfsdk:"allow_partial_message" json:"allowPartialMessage,omitempty"`
						MaxRequestBytes     *int64 `tfsdk:"max_request_bytes" json:"maxRequestBytes,omitempty"`
						PackAsBytes         *bool  `tfsdk:"pack_as_bytes" json:"packAsBytes,omitempty"`
					} `tfsdk:"include_request_body_in_check" json:"includeRequestBodyInCheck,omitempty"`
					Port          *int64  `tfsdk:"port" json:"port,omitempty"`
					Service       *string `tfsdk:"service" json:"service,omitempty"`
					StatusOnError *string `tfsdk:"status_on_error" json:"statusOnError,omitempty"`
					Timeout       *string `tfsdk:"timeout" json:"timeout,omitempty"`
				} `tfsdk:"envoy_ext_authz_grpc" json:"envoyExtAuthzGrpc,omitempty"`
				EnvoyExtAuthzHttp *struct {
					FailOpen                        *bool              `tfsdk:"fail_open" json:"failOpen,omitempty"`
					HeadersToDownstreamOnAllow      *[]string          `tfsdk:"headers_to_downstream_on_allow" json:"headersToDownstreamOnAllow,omitempty"`
					HeadersToDownstreamOnDeny       *[]string          `tfsdk:"headers_to_downstream_on_deny" json:"headersToDownstreamOnDeny,omitempty"`
					HeadersToUpstreamOnAllow        *[]string          `tfsdk:"headers_to_upstream_on_allow" json:"headersToUpstreamOnAllow,omitempty"`
					IncludeAdditionalHeadersInCheck *map[string]string `tfsdk:"include_additional_headers_in_check" json:"includeAdditionalHeadersInCheck,omitempty"`
					IncludeHeadersInCheck           *[]string          `tfsdk:"include_headers_in_check" json:"includeHeadersInCheck,omitempty"`
					IncludeRequestBodyInCheck       *struct {
						AllowPartialMessage *bool  `tfsdk:"allow_partial_message" json:"allowPartialMessage,omitempty"`
						MaxRequestBytes     *int64 `tfsdk:"max_request_bytes" json:"maxRequestBytes,omitempty"`
						PackAsBytes         *bool  `tfsdk:"pack_as_bytes" json:"packAsBytes,omitempty"`
					} `tfsdk:"include_request_body_in_check" json:"includeRequestBodyInCheck,omitempty"`
					IncludeRequestHeadersInCheck *[]string `tfsdk:"include_request_headers_in_check" json:"includeRequestHeadersInCheck,omitempty"`
					PathPrefix                   *string   `tfsdk:"path_prefix" json:"pathPrefix,omitempty"`
					Port                         *int64    `tfsdk:"port" json:"port,omitempty"`
					Service                      *string   `tfsdk:"service" json:"service,omitempty"`
					StatusOnError                *string   `tfsdk:"status_on_error" json:"statusOnError,omitempty"`
					Timeout                      *string   `tfsdk:"timeout" json:"timeout,omitempty"`
				} `tfsdk:"envoy_ext_authz_http" json:"envoyExtAuthzHttp,omitempty"`
				EnvoyFileAccessLog *struct {
					LogFormat *struct {
						Labels *map[string]string `tfsdk:"labels" json:"labels,omitempty"`
						Text   *string            `tfsdk:"text" json:"text,omitempty"`
					} `tfsdk:"log_format" json:"logFormat,omitempty"`
					Path *string `tfsdk:"path" json:"path,omitempty"`
				} `tfsdk:"envoy_file_access_log" json:"envoyFileAccessLog,omitempty"`
				EnvoyHttpAls *struct {
					AdditionalRequestHeadersToLog   *[]string `tfsdk:"additional_request_headers_to_log" json:"additionalRequestHeadersToLog,omitempty"`
					AdditionalResponseHeadersToLog  *[]string `tfsdk:"additional_response_headers_to_log" json:"additionalResponseHeadersToLog,omitempty"`
					AdditionalResponseTrailersToLog *[]string `tfsdk:"additional_response_trailers_to_log" json:"additionalResponseTrailersToLog,omitempty"`
					FilterStateObjectsToLog         *[]string `tfsdk:"filter_state_objects_to_log" json:"filterStateObjectsToLog,omitempty"`
					LogName                         *string   `tfsdk:"log_name" json:"logName,omitempty"`
					Port                            *int64    `tfsdk:"port" json:"port,omitempty"`
					Service                         *string   `tfsdk:"service" json:"service,omitempty"`
				} `tfsdk:"envoy_http_als" json:"envoyHttpAls,omitempty"`
				EnvoyOtelAls *struct {
					LogFormat *struct {
						Labels *map[string]string `tfsdk:"labels" json:"labels,omitempty"`
						Text   *string            `tfsdk:"text" json:"text,omitempty"`
					} `tfsdk:"log_format" json:"logFormat,omitempty"`
					LogName *string `tfsdk:"log_name" json:"logName,omitempty"`
					Port    *int64  `tfsdk:"port" json:"port,omitempty"`
					Service *string `tfsdk:"service" json:"service,omitempty"`
				} `tfsdk:"envoy_otel_als" json:"envoyOtelAls,omitempty"`
				EnvoyTcpAls *struct {
					FilterStateObjectsToLog *[]string `tfsdk:"filter_state_objects_to_log" json:"filterStateObjectsToLog,omitempty"`
					LogName                 *string   `tfsdk:"log_name" json:"logName,omitempty"`
					Port                    *int64    `tfsdk:"port" json:"port,omitempty"`
					Service                 *string   `tfsdk:"service" json:"service,omitempty"`
				} `tfsdk:"envoy_tcp_als" json:"envoyTcpAls,omitempty"`
				Lightstep *struct {
					AccessToken  *string `tfsdk:"access_token" json:"accessToken,omitempty"`
					MaxTagLength *int64  `tfsdk:"max_tag_length" json:"maxTagLength,omitempty"`
					Port         *int64  `tfsdk:"port" json:"port,omitempty"`
					Service      *string `tfsdk:"service" json:"service,omitempty"`
				} `tfsdk:"lightstep" json:"lightstep,omitempty"`
				Name       *string `tfsdk:"name" json:"name,omitempty"`
				Opencensus *struct {
					Context      *[]string `tfsdk:"context" json:"context,omitempty"`
					MaxTagLength *int64    `tfsdk:"max_tag_length" json:"maxTagLength,omitempty"`
					Port         *int64    `tfsdk:"port" json:"port,omitempty"`
					Service      *string   `tfsdk:"service" json:"service,omitempty"`
				} `tfsdk:"opencensus" json:"opencensus,omitempty"`
				Opentelemetry *struct {
					MaxTagLength *int64  `tfsdk:"max_tag_length" json:"maxTagLength,omitempty"`
					Port         *int64  `tfsdk:"port" json:"port,omitempty"`
					Service      *string `tfsdk:"service" json:"service,omitempty"`
				} `tfsdk:"opentelemetry" json:"opentelemetry,omitempty"`
				Prometheus *map[string]string `tfsdk:"prometheus" json:"prometheus,omitempty"`
				Skywalking *struct {
					AccessToken *string `tfsdk:"access_token" json:"accessToken,omitempty"`
					Port        *int64  `tfsdk:"port" json:"port,omitempty"`
					Service     *string `tfsdk:"service" json:"service,omitempty"`
				} `tfsdk:"skywalking" json:"skywalking,omitempty"`
				Stackdriver *struct {
					Debug   *bool `tfsdk:"debug" json:"debug,omitempty"`
					Logging *struct {
						Labels *map[string]string `tfsdk:"labels" json:"labels,omitempty"`
					} `tfsdk:"logging" json:"logging,omitempty"`
					MaxNumberOfAnnotations   *int64 `tfsdk:"max_number_of_annotations" json:"maxNumberOfAnnotations,omitempty"`
					MaxNumberOfAttributes    *int64 `tfsdk:"max_number_of_attributes" json:"maxNumberOfAttributes,omitempty"`
					MaxNumberOfMessageEvents *int64 `tfsdk:"max_number_of_message_events" json:"maxNumberOfMessageEvents,omitempty"`
					MaxTagLength             *int64 `tfsdk:"max_tag_length" json:"maxTagLength,omitempty"`
				} `tfsdk:"stackdriver" json:"stackdriver,omitempty"`
				Zipkin *struct {
					MaxTagLength *int64  `tfsdk:"max_tag_length" json:"maxTagLength,omitempty"`
					Port         *int64  `tfsdk:"port" json:"port,omitempty"`
					Service      *string `tfsdk:"service" json:"service,omitempty"`
				} `tfsdk:"zipkin" json:"zipkin,omitempty"`
			} `tfsdk:"extension_providers" json:"extensionProviders,omitempty"`
			H2UpgradePolicy        *string `tfsdk:"h2_upgrade_policy" json:"h2UpgradePolicy,omitempty"`
			InboundClusterStatName *string `tfsdk:"inbound_cluster_stat_name" json:"inboundClusterStatName,omitempty"`
			IngressClass           *string `tfsdk:"ingress_class" json:"ingressClass,omitempty"`
			IngressControllerMode  *string `tfsdk:"ingress_controller_mode" json:"ingressControllerMode,omitempty"`
			IngressSelector        *string `tfsdk:"ingress_selector" json:"ingressSelector,omitempty"`
			IngressService         *string `tfsdk:"ingress_service" json:"ingressService,omitempty"`
			LocalityLbSetting      *struct {
				Distribute *[]struct {
					From *string            `tfsdk:"from" json:"from,omitempty"`
					To   *map[string]string `tfsdk:"to" json:"to,omitempty"`
				} `tfsdk:"distribute" json:"distribute,omitempty"`
				Enabled  *bool `tfsdk:"enabled" json:"enabled,omitempty"`
				Failover *[]struct {
					From *string `tfsdk:"from" json:"from,omitempty"`
					To   *string `tfsdk:"to" json:"to,omitempty"`
				} `tfsdk:"failover" json:"failover,omitempty"`
				FailoverPriority *[]string `tfsdk:"failover_priority" json:"failoverPriority,omitempty"`
			} `tfsdk:"locality_lb_setting" json:"localityLbSetting,omitempty"`
			MeshMTLS *struct {
				MinProtocolVersion *string `tfsdk:"min_protocol_version" json:"minProtocolVersion,omitempty"`
			} `tfsdk:"mesh_mtls" json:"meshMTLS,omitempty"`
			OutboundClusterStatName *string `tfsdk:"outbound_cluster_stat_name" json:"outboundClusterStatName,omitempty"`
			OutboundTrafficPolicy   *struct {
				Mode *string `tfsdk:"mode" json:"mode,omitempty"`
			} `tfsdk:"outbound_traffic_policy" json:"outboundTrafficPolicy,omitempty"`
			PathNormalization *struct {
				Normalization *string `tfsdk:"normalization" json:"normalization,omitempty"`
			} `tfsdk:"path_normalization" json:"pathNormalization,omitempty"`
			ProtocolDetectionTimeout *string `tfsdk:"protocol_detection_timeout" json:"protocolDetectionTimeout,omitempty"`
			ProxyHttpPort            *int64  `tfsdk:"proxy_http_port" json:"proxyHttpPort,omitempty"`
			ProxyListenPort          *int64  `tfsdk:"proxy_listen_port" json:"proxyListenPort,omitempty"`
			RootNamespace            *string `tfsdk:"root_namespace" json:"rootNamespace,omitempty"`
			ServiceSettings          *[]struct {
				Hosts    *[]string `tfsdk:"hosts" json:"hosts,omitempty"`
				Settings *struct {
					ClusterLocal *bool `tfsdk:"cluster_local" json:"clusterLocal,omitempty"`
				} `tfsdk:"settings" json:"settings,omitempty"`
			} `tfsdk:"service_settings" json:"serviceSettings,omitempty"`
			TcpKeepalive *struct {
				Interval *string `tfsdk:"interval" json:"interval,omitempty"`
				Probes   *int64  `tfsdk:"probes" json:"probes,omitempty"`
				Time     *string `tfsdk:"time" json:"time,omitempty"`
			} `tfsdk:"tcp_keepalive" json:"tcpKeepalive,omitempty"`
			TrustDomain               *string   `tfsdk:"trust_domain" json:"trustDomain,omitempty"`
			TrustDomainAliases        *[]string `tfsdk:"trust_domain_aliases" json:"trustDomainAliases,omitempty"`
			VerifyCertificateAtClient *bool     `tfsdk:"verify_certificate_at_client" json:"verifyCertificateAtClient,omitempty"`
		} `tfsdk:"mesh_config" json:"meshConfig,omitempty"`
		MeshExpansion *struct {
			ClusterServices *struct {
				Expose *bool `tfsdk:"expose" json:"expose,omitempty"`
			} `tfsdk:"cluster_services" json:"clusterServices,omitempty"`
			Enabled *bool `tfsdk:"enabled" json:"enabled,omitempty"`
			Gateway *struct {
				Deployment *struct {
					Affinity *struct {
						NodeAffinity *struct {
							PreferredDuringSchedulingIgnoredDuringExecution *[]struct {
								Preference *struct {
									MatchExpressions *[]struct {
										Key      *string   `tfsdk:"key" json:"key,omitempty"`
										Operator *string   `tfsdk:"operator" json:"operator,omitempty"`
										Values   *[]string `tfsdk:"values" json:"values,omitempty"`
									} `tfsdk:"match_expressions" json:"matchExpressions,omitempty"`
									MatchFields *[]struct {
										Key      *string   `tfsdk:"key" json:"key,omitempty"`
										Operator *string   `tfsdk:"operator" json:"operator,omitempty"`
										Values   *[]string `tfsdk:"values" json:"values,omitempty"`
									} `tfsdk:"match_fields" json:"matchFields,omitempty"`
								} `tfsdk:"preference" json:"preference,omitempty"`
								Weight *int64 `tfsdk:"weight" json:"weight,omitempty"`
							} `tfsdk:"preferred_during_scheduling_ignored_during_execution" json:"preferredDuringSchedulingIgnoredDuringExecution,omitempty"`
							RequiredDuringSchedulingIgnoredDuringExecution *struct {
								NodeSelectorTerms *[]struct {
									MatchExpressions *[]struct {
										Key      *string   `tfsdk:"key" json:"key,omitempty"`
										Operator *string   `tfsdk:"operator" json:"operator,omitempty"`
										Values   *[]string `tfsdk:"values" json:"values,omitempty"`
									} `tfsdk:"match_expressions" json:"matchExpressions,omitempty"`
									MatchFields *[]struct {
										Key      *string   `tfsdk:"key" json:"key,omitempty"`
										Operator *string   `tfsdk:"operator" json:"operator,omitempty"`
										Values   *[]string `tfsdk:"values" json:"values,omitempty"`
									} `tfsdk:"match_fields" json:"matchFields,omitempty"`
								} `tfsdk:"node_selector_terms" json:"nodeSelectorTerms,omitempty"`
							} `tfsdk:"required_during_scheduling_ignored_during_execution" json:"requiredDuringSchedulingIgnoredDuringExecution,omitempty"`
						} `tfsdk:"node_affinity" json:"nodeAffinity,omitempty"`
						PodAffinity *struct {
							PreferredDuringSchedulingIgnoredDuringExecution *[]struct {
								PodAffinityTerm *struct {
									LabelSelector *struct {
										MatchExpressions *[]struct {
											Key      *string   `tfsdk:"key" json:"key,omitempty"`
											Operator *string   `tfsdk:"operator" json:"operator,omitempty"`
											Values   *[]string `tfsdk:"values" json:"values,omitempty"`
										} `tfsdk:"match_expressions" json:"matchExpressions,omitempty"`
										MatchLabels *map[string]string `tfsdk:"match_labels" json:"matchLabels,omitempty"`
									} `tfsdk:"label_selector" json:"labelSelector,omitempty"`
									NamespaceSelector *struct {
										MatchExpressions *[]struct {
											Key      *string   `tfsdk:"key" json:"key,omitempty"`
											Operator *string   `tfsdk:"operator" json:"operator,omitempty"`
											Values   *[]string `tfsdk:"values" json:"values,omitempty"`
										} `tfsdk:"match_expressions" json:"matchExpressions,omitempty"`
										MatchLabels *map[string]string `tfsdk:"match_labels" json:"matchLabels,omitempty"`
									} `tfsdk:"namespace_selector" json:"namespaceSelector,omitempty"`
									Namespaces  *[]string `tfsdk:"namespaces" json:"namespaces,omitempty"`
									TopologyKey *string   `tfsdk:"topology_key" json:"topologyKey,omitempty"`
								} `tfsdk:"pod_affinity_term" json:"podAffinityTerm,omitempty"`
								Weight *int64 `tfsdk:"weight" json:"weight,omitempty"`
							} `tfsdk:"preferred_during_scheduling_ignored_during_execution" json:"preferredDuringSchedulingIgnoredDuringExecution,omitempty"`
							RequiredDuringSchedulingIgnoredDuringExecution *[]struct {
								LabelSelector *struct {
									MatchExpressions *[]struct {
										Key      *string   `tfsdk:"key" json:"key,omitempty"`
										Operator *string   `tfsdk:"operator" json:"operator,omitempty"`
										Values   *[]string `tfsdk:"values" json:"values,omitempty"`
									} `tfsdk:"match_expressions" json:"matchExpressions,omitempty"`
									MatchLabels *map[string]string `tfsdk:"match_labels" json:"matchLabels,omitempty"`
								} `tfsdk:"label_selector" json:"labelSelector,omitempty"`
								NamespaceSelector *struct {
									MatchExpressions *[]struct {
										Key      *string   `tfsdk:"key" json:"key,omitempty"`
										Operator *string   `tfsdk:"operator" json:"operator,omitempty"`
										Values   *[]string `tfsdk:"values" json:"values,omitempty"`
									} `tfsdk:"match_expressions" json:"matchExpressions,omitempty"`
									MatchLabels *map[string]string `tfsdk:"match_labels" json:"matchLabels,omitempty"`
								} `tfsdk:"namespace_selector" json:"namespaceSelector,omitempty"`
								Namespaces  *[]string `tfsdk:"namespaces" json:"namespaces,omitempty"`
								TopologyKey *string   `tfsdk:"topology_key" json:"topologyKey,omitempty"`
							} `tfsdk:"required_during_scheduling_ignored_during_execution" json:"requiredDuringSchedulingIgnoredDuringExecution,omitempty"`
						} `tfsdk:"pod_affinity" json:"podAffinity,omitempty"`
						PodAntiAffinity *struct {
							PreferredDuringSchedulingIgnoredDuringExecution *[]struct {
								PodAffinityTerm *struct {
									LabelSelector *struct {
										MatchExpressions *[]struct {
											Key      *string   `tfsdk:"key" json:"key,omitempty"`
											Operator *string   `tfsdk:"operator" json:"operator,omitempty"`
											Values   *[]string `tfsdk:"values" json:"values,omitempty"`
										} `tfsdk:"match_expressions" json:"matchExpressions,omitempty"`
										MatchLabels *map[string]string `tfsdk:"match_labels" json:"matchLabels,omitempty"`
									} `tfsdk:"label_selector" json:"labelSelector,omitempty"`
									NamespaceSelector *struct {
										MatchExpressions *[]struct {
											Key      *string   `tfsdk:"key" json:"key,omitempty"`
											Operator *string   `tfsdk:"operator" json:"operator,omitempty"`
											Values   *[]string `tfsdk:"values" json:"values,omitempty"`
										} `tfsdk:"match_expressions" json:"matchExpressions,omitempty"`
										MatchLabels *map[string]string `tfsdk:"match_labels" json:"matchLabels,omitempty"`
									} `tfsdk:"namespace_selector" json:"namespaceSelector,omitempty"`
									Namespaces  *[]string `tfsdk:"namespaces" json:"namespaces,omitempty"`
									TopologyKey *string   `tfsdk:"topology_key" json:"topologyKey,omitempty"`
								} `tfsdk:"pod_affinity_term" json:"podAffinityTerm,omitempty"`
								Weight *int64 `tfsdk:"weight" json:"weight,omitempty"`
							} `tfsdk:"preferred_during_scheduling_ignored_during_execution" json:"preferredDuringSchedulingIgnoredDuringExecution,omitempty"`
							RequiredDuringSchedulingIgnoredDuringExecution *[]struct {
								LabelSelector *struct {
									MatchExpressions *[]struct {
										Key      *string   `tfsdk:"key" json:"key,omitempty"`
										Operator *string   `tfsdk:"operator" json:"operator,omitempty"`
										Values   *[]string `tfsdk:"values" json:"values,omitempty"`
									} `tfsdk:"match_expressions" json:"matchExpressions,omitempty"`
									MatchLabels *map[string]string `tfsdk:"match_labels" json:"matchLabels,omitempty"`
								} `tfsdk:"label_selector" json:"labelSelector,omitempty"`
								NamespaceSelector *struct {
									MatchExpressions *[]struct {
										Key      *string   `tfsdk:"key" json:"key,omitempty"`
										Operator *string   `tfsdk:"operator" json:"operator,omitempty"`
										Values   *[]string `tfsdk:"values" json:"values,omitempty"`
									} `tfsdk:"match_expressions" json:"matchExpressions,omitempty"`
									MatchLabels *map[string]string `tfsdk:"match_labels" json:"matchLabels,omitempty"`
								} `tfsdk:"namespace_selector" json:"namespaceSelector,omitempty"`
								Namespaces  *[]string `tfsdk:"namespaces" json:"namespaces,omitempty"`
								TopologyKey *string   `tfsdk:"topology_key" json:"topologyKey,omitempty"`
							} `tfsdk:"required_during_scheduling_ignored_during_execution" json:"requiredDuringSchedulingIgnoredDuringExecution,omitempty"`
						} `tfsdk:"pod_anti_affinity" json:"podAntiAffinity,omitempty"`
					} `tfsdk:"affinity" json:"affinity,omitempty"`
					DeploymentStrategy *struct {
						RollingUpdate *struct {
							MaxSurge       *string `tfsdk:"max_surge" json:"maxSurge,omitempty"`
							MaxUnavailable *string `tfsdk:"max_unavailable" json:"maxUnavailable,omitempty"`
						} `tfsdk:"rolling_update" json:"rollingUpdate,omitempty"`
						Type *string `tfsdk:"type" json:"type,omitempty"`
					} `tfsdk:"deployment_strategy" json:"deploymentStrategy,omitempty"`
					Env *[]struct {
						Name      *string `tfsdk:"name" json:"name,omitempty"`
						Value     *string `tfsdk:"value" json:"value,omitempty"`
						ValueFrom *struct {
							ConfigMapKeyRef *struct {
								Key                  *string `tfsdk:"key" json:"key,omitempty"`
								LocalObjectReference *struct {
									Name *string `tfsdk:"name" json:"name,omitempty"`
								} `tfsdk:"local_object_reference" json:"localObjectReference,omitempty"`
								Optional *bool `tfsdk:"optional" json:"optional,omitempty"`
							} `tfsdk:"config_map_key_ref" json:"configMapKeyRef,omitempty"`
							FieldRef *struct {
								ApiVersion *string `tfsdk:"api_version" json:"apiVersion,omitempty"`
								FieldPath  *string `tfsdk:"field_path" json:"fieldPath,omitempty"`
							} `tfsdk:"field_ref" json:"fieldRef,omitempty"`
							ResourceFieldRef *struct {
								ContainerName *string `tfsdk:"container_name" json:"containerName,omitempty"`
								Divisor       *string `tfsdk:"divisor" json:"divisor,omitempty"`
								Resource      *string `tfsdk:"resource" json:"resource,omitempty"`
							} `tfsdk:"resource_field_ref" json:"resourceFieldRef,omitempty"`
							SecretKeyRef *struct {
								Key                  *string `tfsdk:"key" json:"key,omitempty"`
								LocalObjectReference *struct {
									Name *string `tfsdk:"name" json:"name,omitempty"`
								} `tfsdk:"local_object_reference" json:"localObjectReference,omitempty"`
								Optional *bool `tfsdk:"optional" json:"optional,omitempty"`
							} `tfsdk:"secret_key_ref" json:"secretKeyRef,omitempty"`
						} `tfsdk:"value_from" json:"valueFrom,omitempty"`
					} `tfsdk:"env" json:"env,omitempty"`
					Image            *string `tfsdk:"image" json:"image,omitempty"`
					ImagePullPolicy  *string `tfsdk:"image_pull_policy" json:"imagePullPolicy,omitempty"`
					ImagePullSecrets *[]struct {
						Name *string `tfsdk:"name" json:"name,omitempty"`
					} `tfsdk:"image_pull_secrets" json:"imagePullSecrets,omitempty"`
					LivenessProbe *struct {
						Exec *struct {
							Command *[]string `tfsdk:"command" json:"command,omitempty"`
						} `tfsdk:"exec" json:"exec,omitempty"`
						FailureThreshold *int64 `tfsdk:"failure_threshold" json:"failureThreshold,omitempty"`
						Grpc             *struct {
							Port    *int64  `tfsdk:"port" json:"port,omitempty"`
							Service *string `tfsdk:"service" json:"service,omitempty"`
						} `tfsdk:"grpc" json:"grpc,omitempty"`
						HttpGet *struct {
							Host        *string `tfsdk:"host" json:"host,omitempty"`
							HttpHeaders *[]struct {
								Name  *string `tfsdk:"name" json:"name,omitempty"`
								Value *string `tfsdk:"value" json:"value,omitempty"`
							} `tfsdk:"http_headers" json:"httpHeaders,omitempty"`
							Path   *string `tfsdk:"path" json:"path,omitempty"`
							Port   *string `tfsdk:"port" json:"port,omitempty"`
							Scheme *string `tfsdk:"scheme" json:"scheme,omitempty"`
						} `tfsdk:"http_get" json:"httpGet,omitempty"`
						InitialDelaySeconds *int64 `tfsdk:"initial_delay_seconds" json:"initialDelaySeconds,omitempty"`
						PeriodSeconds       *int64 `tfsdk:"period_seconds" json:"periodSeconds,omitempty"`
						SuccessThreshold    *int64 `tfsdk:"success_threshold" json:"successThreshold,omitempty"`
						TcpSocket           *struct {
							Host *string `tfsdk:"host" json:"host,omitempty"`
							Port *string `tfsdk:"port" json:"port,omitempty"`
						} `tfsdk:"tcp_socket" json:"tcpSocket,omitempty"`
						TerminationGracePeriodSeconds *int64 `tfsdk:"termination_grace_period_seconds" json:"terminationGracePeriodSeconds,omitempty"`
						TimeoutSeconds                *int64 `tfsdk:"timeout_seconds" json:"timeoutSeconds,omitempty"`
					} `tfsdk:"liveness_probe" json:"livenessProbe,omitempty"`
					Metadata *struct {
						Annotations *map[string]string `tfsdk:"annotations" json:"annotations,omitempty"`
						Labels      *map[string]string `tfsdk:"labels" json:"labels,omitempty"`
					} `tfsdk:"metadata" json:"metadata,omitempty"`
					NodeSelector        *map[string]string `tfsdk:"node_selector" json:"nodeSelector,omitempty"`
					PodDisruptionBudget *struct {
						MaxUnavailable *string `tfsdk:"max_unavailable" json:"maxUnavailable,omitempty"`
						MinAvailable   *string `tfsdk:"min_available" json:"minAvailable,omitempty"`
					} `tfsdk:"pod_disruption_budget" json:"podDisruptionBudget,omitempty"`
					PodMetadata *struct {
						Annotations *map[string]string `tfsdk:"annotations" json:"annotations,omitempty"`
						Labels      *map[string]string `tfsdk:"labels" json:"labels,omitempty"`
					} `tfsdk:"pod_metadata" json:"podMetadata,omitempty"`
					PodSecurityContext *struct {
						FsGroup             *int64  `tfsdk:"fs_group" json:"fsGroup,omitempty"`
						FsGroupChangePolicy *string `tfsdk:"fs_group_change_policy" json:"fsGroupChangePolicy,omitempty"`
						RunAsGroup          *int64  `tfsdk:"run_as_group" json:"runAsGroup,omitempty"`
						RunAsNonRoot        *bool   `tfsdk:"run_as_non_root" json:"runAsNonRoot,omitempty"`
						RunAsUser           *int64  `tfsdk:"run_as_user" json:"runAsUser,omitempty"`
						SeLinuxOptions      *struct {
							Level *string `tfsdk:"level" json:"level,omitempty"`
							Role  *string `tfsdk:"role" json:"role,omitempty"`
							Type  *string `tfsdk:"type" json:"type,omitempty"`
							User  *string `tfsdk:"user" json:"user,omitempty"`
						} `tfsdk:"se_linux_options" json:"seLinuxOptions,omitempty"`
						SeccompProfile *struct {
							LocalhostProfile *string `tfsdk:"localhost_profile" json:"localhostProfile,omitempty"`
							Type             *string `tfsdk:"type" json:"type,omitempty"`
						} `tfsdk:"seccomp_profile" json:"seccompProfile,omitempty"`
						SupplementalGroups *[]string `tfsdk:"supplemental_groups" json:"supplementalGroups,omitempty"`
						Sysctls            *[]struct {
							Name  *string `tfsdk:"name" json:"name,omitempty"`
							Value *string `tfsdk:"value" json:"value,omitempty"`
						} `tfsdk:"sysctls" json:"sysctls,omitempty"`
						WindowsOptions *struct {
							GmsaCredentialSpec     *string `tfsdk:"gmsa_credential_spec" json:"gmsaCredentialSpec,omitempty"`
							GmsaCredentialSpecName *string `tfsdk:"gmsa_credential_spec_name" json:"gmsaCredentialSpecName,omitempty"`
							HostProcess            *bool   `tfsdk:"host_process" json:"hostProcess,omitempty"`
							RunAsUserName          *string `tfsdk:"run_as_user_name" json:"runAsUserName,omitempty"`
						} `tfsdk:"windows_options" json:"windowsOptions,omitempty"`
					} `tfsdk:"pod_security_context" json:"podSecurityContext,omitempty"`
					PriorityClassName *string `tfsdk:"priority_class_name" json:"priorityClassName,omitempty"`
					ReadinessProbe    *struct {
						Exec *struct {
							Command *[]string `tfsdk:"command" json:"command,omitempty"`
						} `tfsdk:"exec" json:"exec,omitempty"`
						FailureThreshold *int64 `tfsdk:"failure_threshold" json:"failureThreshold,omitempty"`
						Grpc             *struct {
							Port    *int64  `tfsdk:"port" json:"port,omitempty"`
							Service *string `tfsdk:"service" json:"service,omitempty"`
						} `tfsdk:"grpc" json:"grpc,omitempty"`
						HttpGet *struct {
							Host        *string `tfsdk:"host" json:"host,omitempty"`
							HttpHeaders *[]struct {
								Name  *string `tfsdk:"name" json:"name,omitempty"`
								Value *string `tfsdk:"value" json:"value,omitempty"`
							} `tfsdk:"http_headers" json:"httpHeaders,omitempty"`
							Path   *string `tfsdk:"path" json:"path,omitempty"`
							Port   *string `tfsdk:"port" json:"port,omitempty"`
							Scheme *string `tfsdk:"scheme" json:"scheme,omitempty"`
						} `tfsdk:"http_get" json:"httpGet,omitempty"`
						InitialDelaySeconds *int64 `tfsdk:"initial_delay_seconds" json:"initialDelaySeconds,omitempty"`
						PeriodSeconds       *int64 `tfsdk:"period_seconds" json:"periodSeconds,omitempty"`
						SuccessThreshold    *int64 `tfsdk:"success_threshold" json:"successThreshold,omitempty"`
						TcpSocket           *struct {
							Host *string `tfsdk:"host" json:"host,omitempty"`
							Port *string `tfsdk:"port" json:"port,omitempty"`
						} `tfsdk:"tcp_socket" json:"tcpSocket,omitempty"`
						TerminationGracePeriodSeconds *int64 `tfsdk:"termination_grace_period_seconds" json:"terminationGracePeriodSeconds,omitempty"`
						TimeoutSeconds                *int64 `tfsdk:"timeout_seconds" json:"timeoutSeconds,omitempty"`
					} `tfsdk:"readiness_probe" json:"readinessProbe,omitempty"`
					Replicas *struct {
						Count                          *int64 `tfsdk:"count" json:"count,omitempty"`
						Max                            *int64 `tfsdk:"max" json:"max,omitempty"`
						Min                            *int64 `tfsdk:"min" json:"min,omitempty"`
						TargetCPUUtilizationPercentage *int64 `tfsdk:"target_cpu_utilization_percentage" json:"targetCPUUtilizationPercentage,omitempty"`
					} `tfsdk:"replicas" json:"replicas,omitempty"`
					Resources *struct {
						Limits   *map[string]string `tfsdk:"limits" json:"limits,omitempty"`
						Requests *map[string]string `tfsdk:"requests" json:"requests,omitempty"`
					} `tfsdk:"resources" json:"resources,omitempty"`
					SecurityContext *struct {
						AllowPrivilegeEscalation *bool `tfsdk:"allow_privilege_escalation" json:"allowPrivilegeEscalation,omitempty"`
						Capabilities             *struct {
							Add  *[]string `tfsdk:"add" json:"add,omitempty"`
							Drop *[]string `tfsdk:"drop" json:"drop,omitempty"`
						} `tfsdk:"capabilities" json:"capabilities,omitempty"`
						Privileged             *bool   `tfsdk:"privileged" json:"privileged,omitempty"`
						ProcMount              *string `tfsdk:"proc_mount" json:"procMount,omitempty"`
						ReadOnlyRootFilesystem *bool   `tfsdk:"read_only_root_filesystem" json:"readOnlyRootFilesystem,omitempty"`
						RunAsGroup             *int64  `tfsdk:"run_as_group" json:"runAsGroup,omitempty"`
						RunAsNonRoot           *bool   `tfsdk:"run_as_non_root" json:"runAsNonRoot,omitempty"`
						RunAsUser              *int64  `tfsdk:"run_as_user" json:"runAsUser,omitempty"`
						SeLinuxOptions         *struct {
							Level *string `tfsdk:"level" json:"level,omitempty"`
							Role  *string `tfsdk:"role" json:"role,omitempty"`
							Type  *string `tfsdk:"type" json:"type,omitempty"`
							User  *string `tfsdk:"user" json:"user,omitempty"`
						} `tfsdk:"se_linux_options" json:"seLinuxOptions,omitempty"`
						SeccompProfile *struct {
							LocalhostProfile *string `tfsdk:"localhost_profile" json:"localhostProfile,omitempty"`
							Type             *string `tfsdk:"type" json:"type,omitempty"`
						} `tfsdk:"seccomp_profile" json:"seccompProfile,omitempty"`
						WindowsOptions *struct {
							GmsaCredentialSpec     *string `tfsdk:"gmsa_credential_spec" json:"gmsaCredentialSpec,omitempty"`
							GmsaCredentialSpecName *string `tfsdk:"gmsa_credential_spec_name" json:"gmsaCredentialSpecName,omitempty"`
							HostProcess            *bool   `tfsdk:"host_process" json:"hostProcess,omitempty"`
							RunAsUserName          *string `tfsdk:"run_as_user_name" json:"runAsUserName,omitempty"`
						} `tfsdk:"windows_options" json:"windowsOptions,omitempty"`
					} `tfsdk:"security_context" json:"securityContext,omitempty"`
					Tolerations *[]struct {
						Effect            *string `tfsdk:"effect" json:"effect,omitempty"`
						Key               *string `tfsdk:"key" json:"key,omitempty"`
						Operator          *string `tfsdk:"operator" json:"operator,omitempty"`
						TolerationSeconds *int64  `tfsdk:"toleration_seconds" json:"tolerationSeconds,omitempty"`
						Value             *string `tfsdk:"value" json:"value,omitempty"`
					} `tfsdk:"tolerations" json:"tolerations,omitempty"`
					TopologySpreadConstraints *[]struct {
						LabelSelector *struct {
							MatchExpressions *[]struct {
								Key      *string   `tfsdk:"key" json:"key,omitempty"`
								Operator *string   `tfsdk:"operator" json:"operator,omitempty"`
								Values   *[]string `tfsdk:"values" json:"values,omitempty"`
							} `tfsdk:"match_expressions" json:"matchExpressions,omitempty"`
							MatchLabels *map[string]string `tfsdk:"match_labels" json:"matchLabels,omitempty"`
						} `tfsdk:"label_selector" json:"labelSelector,omitempty"`
						MaxSkew           *int64  `tfsdk:"max_skew" json:"maxSkew,omitempty"`
						TopologyKey       *string `tfsdk:"topology_key" json:"topologyKey,omitempty"`
						WhenUnsatisfiable *string `tfsdk:"when_unsatisfiable" json:"whenUnsatisfiable,omitempty"`
					} `tfsdk:"topology_spread_constraints" json:"topologySpreadConstraints,omitempty"`
					VolumeMounts *[]struct {
						MountPath        *string `tfsdk:"mount_path" json:"mountPath,omitempty"`
						MountPropagation *string `tfsdk:"mount_propagation" json:"mountPropagation,omitempty"`
						Name             *string `tfsdk:"name" json:"name,omitempty"`
						ReadOnly         *bool   `tfsdk:"read_only" json:"readOnly,omitempty"`
						SubPath          *string `tfsdk:"sub_path" json:"subPath,omitempty"`
						SubPathExpr      *string `tfsdk:"sub_path_expr" json:"subPathExpr,omitempty"`
					} `tfsdk:"volume_mounts" json:"volumeMounts,omitempty"`
					Volumes *[]struct {
						Name         *string `tfsdk:"name" json:"name,omitempty"`
						VolumeSource *struct {
							AwsElasticBlockStore *struct {
								FsType    *string `tfsdk:"fs_type" json:"fsType,omitempty"`
								Partition *int64  `tfsdk:"partition" json:"partition,omitempty"`
								ReadOnly  *bool   `tfsdk:"read_only" json:"readOnly,omitempty"`
								VolumeID  *string `tfsdk:"volume_id" json:"volumeID,omitempty"`
							} `tfsdk:"aws_elastic_block_store" json:"awsElasticBlockStore,omitempty"`
							AzureDisk *struct {
								CachingMode *string `tfsdk:"caching_mode" json:"cachingMode,omitempty"`
								DiskName    *string `tfsdk:"disk_name" json:"diskName,omitempty"`
								DiskURI     *string `tfsdk:"disk_uri" json:"diskURI,omitempty"`
								FsType      *string `tfsdk:"fs_type" json:"fsType,omitempty"`
								Kind        *string `tfsdk:"kind" json:"kind,omitempty"`
								ReadOnly    *bool   `tfsdk:"read_only" json:"readOnly,omitempty"`
							} `tfsdk:"azure_disk" json:"azureDisk,omitempty"`
							AzureFile *struct {
								ReadOnly   *bool   `tfsdk:"read_only" json:"readOnly,omitempty"`
								SecretName *string `tfsdk:"secret_name" json:"secretName,omitempty"`
								ShareName  *string `tfsdk:"share_name" json:"shareName,omitempty"`
							} `tfsdk:"azure_file" json:"azureFile,omitempty"`
							Cephfs *struct {
								Monitors   *[]string `tfsdk:"monitors" json:"monitors,omitempty"`
								Path       *string   `tfsdk:"path" json:"path,omitempty"`
								ReadOnly   *bool     `tfsdk:"read_only" json:"readOnly,omitempty"`
								SecretFile *string   `tfsdk:"secret_file" json:"secretFile,omitempty"`
								SecretRef  *struct {
									Name *string `tfsdk:"name" json:"name,omitempty"`
								} `tfsdk:"secret_ref" json:"secretRef,omitempty"`
								User *string `tfsdk:"user" json:"user,omitempty"`
							} `tfsdk:"cephfs" json:"cephfs,omitempty"`
							Cinder *struct {
								FsType    *string `tfsdk:"fs_type" json:"fsType,omitempty"`
								ReadOnly  *bool   `tfsdk:"read_only" json:"readOnly,omitempty"`
								SecretRef *struct {
									Name *string `tfsdk:"name" json:"name,omitempty"`
								} `tfsdk:"secret_ref" json:"secretRef,omitempty"`
								VolumeID *string `tfsdk:"volume_id" json:"volumeID,omitempty"`
							} `tfsdk:"cinder" json:"cinder,omitempty"`
							ConfigMap *struct {
								DefaultMode *int64 `tfsdk:"default_mode" json:"defaultMode,omitempty"`
								Items       *[]struct {
									Key  *string `tfsdk:"key" json:"key,omitempty"`
									Mode *int64  `tfsdk:"mode" json:"mode,omitempty"`
									Path *string `tfsdk:"path" json:"path,omitempty"`
								} `tfsdk:"items" json:"items,omitempty"`
								LocalObjectReference *struct {
									Name *string `tfsdk:"name" json:"name,omitempty"`
								} `tfsdk:"local_object_reference" json:"localObjectReference,omitempty"`
								Optional *bool `tfsdk:"optional" json:"optional,omitempty"`
							} `tfsdk:"config_map" json:"configMap,omitempty"`
							Csi *struct {
								Driver               *string `tfsdk:"driver" json:"driver,omitempty"`
								FsType               *string `tfsdk:"fs_type" json:"fsType,omitempty"`
								NodePublishSecretRef *struct {
									Name *string `tfsdk:"name" json:"name,omitempty"`
								} `tfsdk:"node_publish_secret_ref" json:"nodePublishSecretRef,omitempty"`
								ReadOnly         *bool              `tfsdk:"read_only" json:"readOnly,omitempty"`
								VolumeAttributes *map[string]string `tfsdk:"volume_attributes" json:"volumeAttributes,omitempty"`
							} `tfsdk:"csi" json:"csi,omitempty"`
							DownwardAPI *struct {
								DefaultMode *int64 `tfsdk:"default_mode" json:"defaultMode,omitempty"`
								Items       *[]struct {
									FieldRef *struct {
										ApiVersion *string `tfsdk:"api_version" json:"apiVersion,omitempty"`
										FieldPath  *string `tfsdk:"field_path" json:"fieldPath,omitempty"`
									} `tfsdk:"field_ref" json:"fieldRef,omitempty"`
									Mode             *int64  `tfsdk:"mode" json:"mode,omitempty"`
									Path             *string `tfsdk:"path" json:"path,omitempty"`
									ResourceFieldRef *struct {
										ContainerName *string `tfsdk:"container_name" json:"containerName,omitempty"`
										Divisor       *string `tfsdk:"divisor" json:"divisor,omitempty"`
										Resource      *string `tfsdk:"resource" json:"resource,omitempty"`
									} `tfsdk:"resource_field_ref" json:"resourceFieldRef,omitempty"`
								} `tfsdk:"items" json:"items,omitempty"`
							} `tfsdk:"downward_api" json:"downwardAPI,omitempty"`
							EmptyDir *struct {
								Medium    *string `tfsdk:"medium" json:"medium,omitempty"`
								SizeLimit *string `tfsdk:"size_limit" json:"sizeLimit,omitempty"`
							} `tfsdk:"empty_dir" json:"emptyDir,omitempty"`
							Ephemeral *struct {
								VolumeClaimTemplate *struct {
									Metadata *struct {
										Annotations       *map[string]string `tfsdk:"annotations" json:"annotations,omitempty"`
										ClusterName       *string            `tfsdk:"cluster_name" json:"clusterName,omitempty"`
										CreationTimestamp *struct {
											Nanos   *int64 `tfsdk:"nanos" json:"nanos,omitempty"`
											Seconds *int64 `tfsdk:"seconds" json:"seconds,omitempty"`
										} `tfsdk:"creation_timestamp" json:"creationTimestamp,omitempty"`
										DeletionGracePeriodSeconds *int64 `tfsdk:"deletion_grace_period_seconds" json:"deletionGracePeriodSeconds,omitempty"`
										DeletionTimestamp          *struct {
											Nanos   *int64 `tfsdk:"nanos" json:"nanos,omitempty"`
											Seconds *int64 `tfsdk:"seconds" json:"seconds,omitempty"`
										} `tfsdk:"deletion_timestamp" json:"deletionTimestamp,omitempty"`
										Finalizers    *[]string          `tfsdk:"finalizers" json:"finalizers,omitempty"`
										GenerateName  *string            `tfsdk:"generate_name" json:"generateName,omitempty"`
										Generation    *int64             `tfsdk:"generation" json:"generation,omitempty"`
										Labels        *map[string]string `tfsdk:"labels" json:"labels,omitempty"`
										ManagedFields *[]struct {
											ApiVersion *string `tfsdk:"api_version" json:"apiVersion,omitempty"`
											FieldsType *string `tfsdk:"fields_type" json:"fieldsType,omitempty"`
											FieldsV1   *struct {
												Raw *string `tfsdk:"raw" json:"Raw,omitempty"`
											} `tfsdk:"fields_v1" json:"fieldsV1,omitempty"`
											Manager     *string `tfsdk:"manager" json:"manager,omitempty"`
											Operation   *string `tfsdk:"operation" json:"operation,omitempty"`
											Subresource *string `tfsdk:"subresource" json:"subresource,omitempty"`
											Time        *struct {
												Nanos   *int64 `tfsdk:"nanos" json:"nanos,omitempty"`
												Seconds *int64 `tfsdk:"seconds" json:"seconds,omitempty"`
											} `tfsdk:"time" json:"time,omitempty"`
										} `tfsdk:"managed_fields" json:"managedFields,omitempty"`
										Name            *string `tfsdk:"name" json:"name,omitempty"`
										Namespace       *string `tfsdk:"namespace" json:"namespace,omitempty"`
										OwnerReferences *[]struct {
											ApiVersion         *string `tfsdk:"api_version" json:"apiVersion,omitempty"`
											BlockOwnerDeletion *bool   `tfsdk:"block_owner_deletion" json:"blockOwnerDeletion,omitempty"`
											Controller         *bool   `tfsdk:"controller" json:"controller,omitempty"`
											Kind               *string `tfsdk:"kind" json:"kind,omitempty"`
											Name               *string `tfsdk:"name" json:"name,omitempty"`
											Uid                *string `tfsdk:"uid" json:"uid,omitempty"`
										} `tfsdk:"owner_references" json:"ownerReferences,omitempty"`
										ResourceVersion *string `tfsdk:"resource_version" json:"resourceVersion,omitempty"`
										SelfLink        *string `tfsdk:"self_link" json:"selfLink,omitempty"`
										Uid             *string `tfsdk:"uid" json:"uid,omitempty"`
									} `tfsdk:"metadata" json:"metadata,omitempty"`
									Spec *struct {
										AccessModes *[]string `tfsdk:"access_modes" json:"accessModes,omitempty"`
										DataSource  *struct {
											ApiGroup *string `tfsdk:"api_group" json:"apiGroup,omitempty"`
											Kind     *string `tfsdk:"kind" json:"kind,omitempty"`
											Name     *string `tfsdk:"name" json:"name,omitempty"`
										} `tfsdk:"data_source" json:"dataSource,omitempty"`
										DataSourceRef *struct {
											ApiGroup *string `tfsdk:"api_group" json:"apiGroup,omitempty"`
											Kind     *string `tfsdk:"kind" json:"kind,omitempty"`
											Name     *string `tfsdk:"name" json:"name,omitempty"`
										} `tfsdk:"data_source_ref" json:"dataSourceRef,omitempty"`
										Resources *struct {
											Limits *struct {
												String *string `tfsdk:"string" json:"string,omitempty"`
											} `tfsdk:"limits" json:"limits,omitempty"`
											Requests *struct {
												String *string `tfsdk:"string" json:"string,omitempty"`
											} `tfsdk:"requests" json:"requests,omitempty"`
										} `tfsdk:"resources" json:"resources,omitempty"`
										Selector *struct {
											MatchExpressions *[]struct {
												Key      *string   `tfsdk:"key" json:"key,omitempty"`
												Operator *string   `tfsdk:"operator" json:"operator,omitempty"`
												Values   *[]string `tfsdk:"values" json:"values,omitempty"`
											} `tfsdk:"match_expressions" json:"matchExpressions,omitempty"`
											MatchLabels *map[string]string `tfsdk:"match_labels" json:"matchLabels,omitempty"`
										} `tfsdk:"selector" json:"selector,omitempty"`
										StorageClassName *string `tfsdk:"storage_class_name" json:"storageClassName,omitempty"`
										VolumeMode       *string `tfsdk:"volume_mode" json:"volumeMode,omitempty"`
										VolumeName       *string `tfsdk:"volume_name" json:"volumeName,omitempty"`
									} `tfsdk:"spec" json:"spec,omitempty"`
								} `tfsdk:"volume_claim_template" json:"volumeClaimTemplate,omitempty"`
							} `tfsdk:"ephemeral" json:"ephemeral,omitempty"`
							Fc *struct {
								FsType     *string   `tfsdk:"fs_type" json:"fsType,omitempty"`
								Lun        *int64    `tfsdk:"lun" json:"lun,omitempty"`
								ReadOnly   *bool     `tfsdk:"read_only" json:"readOnly,omitempty"`
								TargetWWNs *[]string `tfsdk:"target_ww_ns" json:"targetWWNs,omitempty"`
								Wwids      *[]string `tfsdk:"wwids" json:"wwids,omitempty"`
							} `tfsdk:"fc" json:"fc,omitempty"`
							FlexVolume *struct {
								Driver    *string            `tfsdk:"driver" json:"driver,omitempty"`
								FsType    *string            `tfsdk:"fs_type" json:"fsType,omitempty"`
								Options   *map[string]string `tfsdk:"options" json:"options,omitempty"`
								ReadOnly  *bool              `tfsdk:"read_only" json:"readOnly,omitempty"`
								SecretRef *struct {
									Name *string `tfsdk:"name" json:"name,omitempty"`
								} `tfsdk:"secret_ref" json:"secretRef,omitempty"`
							} `tfsdk:"flex_volume" json:"flexVolume,omitempty"`
							Flocker *struct {
								DatasetName *string `tfsdk:"dataset_name" json:"datasetName,omitempty"`
								DatasetUUID *string `tfsdk:"dataset_uuid" json:"datasetUUID,omitempty"`
							} `tfsdk:"flocker" json:"flocker,omitempty"`
							GcePersistentDisk *struct {
								FsType    *string `tfsdk:"fs_type" json:"fsType,omitempty"`
								Partition *int64  `tfsdk:"partition" json:"partition,omitempty"`
								PdName    *string `tfsdk:"pd_name" json:"pdName,omitempty"`
								ReadOnly  *bool   `tfsdk:"read_only" json:"readOnly,omitempty"`
							} `tfsdk:"gce_persistent_disk" json:"gcePersistentDisk,omitempty"`
							GitRepo *struct {
								Directory  *string `tfsdk:"directory" json:"directory,omitempty"`
								Repository *string `tfsdk:"repository" json:"repository,omitempty"`
								Revision   *string `tfsdk:"revision" json:"revision,omitempty"`
							} `tfsdk:"git_repo" json:"gitRepo,omitempty"`
							Glusterfs *struct {
								Endpoints *string `tfsdk:"endpoints" json:"endpoints,omitempty"`
								Path      *string `tfsdk:"path" json:"path,omitempty"`
								ReadOnly  *bool   `tfsdk:"read_only" json:"readOnly,omitempty"`
							} `tfsdk:"glusterfs" json:"glusterfs,omitempty"`
							HostPath *struct {
								Path *string `tfsdk:"path" json:"path,omitempty"`
								Type *string `tfsdk:"type" json:"type,omitempty"`
							} `tfsdk:"host_path" json:"hostPath,omitempty"`
							Iscsi *struct {
								ChapAuthDiscovery *bool     `tfsdk:"chap_auth_discovery" json:"chapAuthDiscovery,omitempty"`
								ChapAuthSession   *bool     `tfsdk:"chap_auth_session" json:"chapAuthSession,omitempty"`
								FsType            *string   `tfsdk:"fs_type" json:"fsType,omitempty"`
								InitiatorName     *string   `tfsdk:"initiator_name" json:"initiatorName,omitempty"`
								Iqn               *string   `tfsdk:"iqn" json:"iqn,omitempty"`
								IscsiInterface    *string   `tfsdk:"iscsi_interface" json:"iscsiInterface,omitempty"`
								Lun               *int64    `tfsdk:"lun" json:"lun,omitempty"`
								Portals           *[]string `tfsdk:"portals" json:"portals,omitempty"`
								ReadOnly          *bool     `tfsdk:"read_only" json:"readOnly,omitempty"`
								SecretRef         *struct {
									Name *string `tfsdk:"name" json:"name,omitempty"`
								} `tfsdk:"secret_ref" json:"secretRef,omitempty"`
								TargetPortal *string `tfsdk:"target_portal" json:"targetPortal,omitempty"`
							} `tfsdk:"iscsi" json:"iscsi,omitempty"`
							Nfs *struct {
								Path     *string `tfsdk:"path" json:"path,omitempty"`
								ReadOnly *bool   `tfsdk:"read_only" json:"readOnly,omitempty"`
								Server   *string `tfsdk:"server" json:"server,omitempty"`
							} `tfsdk:"nfs" json:"nfs,omitempty"`
							PersistentVolumeClaim *struct {
								ClaimName *string `tfsdk:"claim_name" json:"claimName,omitempty"`
								ReadOnly  *bool   `tfsdk:"read_only" json:"readOnly,omitempty"`
							} `tfsdk:"persistent_volume_claim" json:"persistentVolumeClaim,omitempty"`
							PhotonPersistentDisk *struct {
								FsType *string `tfsdk:"fs_type" json:"fsType,omitempty"`
								PdID   *string `tfsdk:"pd_id" json:"pdID,omitempty"`
							} `tfsdk:"photon_persistent_disk" json:"photonPersistentDisk,omitempty"`
							PortworxVolume *struct {
								FsType   *string `tfsdk:"fs_type" json:"fsType,omitempty"`
								ReadOnly *bool   `tfsdk:"read_only" json:"readOnly,omitempty"`
								VolumeID *string `tfsdk:"volume_id" json:"volumeID,omitempty"`
							} `tfsdk:"portworx_volume" json:"portworxVolume,omitempty"`
							Projected *struct {
								DefaultMode *int64 `tfsdk:"default_mode" json:"defaultMode,omitempty"`
								Sources     *[]struct {
									ConfigMap *struct {
										Items *[]struct {
											Key  *string `tfsdk:"key" json:"key,omitempty"`
											Mode *int64  `tfsdk:"mode" json:"mode,omitempty"`
											Path *string `tfsdk:"path" json:"path,omitempty"`
										} `tfsdk:"items" json:"items,omitempty"`
										LocalObjectReference *struct {
											Name *string `tfsdk:"name" json:"name,omitempty"`
										} `tfsdk:"local_object_reference" json:"localObjectReference,omitempty"`
										Optional *bool `tfsdk:"optional" json:"optional,omitempty"`
									} `tfsdk:"config_map" json:"configMap,omitempty"`
									DownwardAPI *struct {
										Items *[]struct {
											FieldRef *struct {
												ApiVersion *string `tfsdk:"api_version" json:"apiVersion,omitempty"`
												FieldPath  *string `tfsdk:"field_path" json:"fieldPath,omitempty"`
											} `tfsdk:"field_ref" json:"fieldRef,omitempty"`
											Mode             *int64  `tfsdk:"mode" json:"mode,omitempty"`
											Path             *string `tfsdk:"path" json:"path,omitempty"`
											ResourceFieldRef *struct {
												ContainerName *string `tfsdk:"container_name" json:"containerName,omitempty"`
												Divisor       *string `tfsdk:"divisor" json:"divisor,omitempty"`
												Resource      *string `tfsdk:"resource" json:"resource,omitempty"`
											} `tfsdk:"resource_field_ref" json:"resourceFieldRef,omitempty"`
										} `tfsdk:"items" json:"items,omitempty"`
									} `tfsdk:"downward_api" json:"downwardAPI,omitempty"`
									Secret *struct {
										Items *[]struct {
											Key  *string `tfsdk:"key" json:"key,omitempty"`
											Mode *int64  `tfsdk:"mode" json:"mode,omitempty"`
											Path *string `tfsdk:"path" json:"path,omitempty"`
										} `tfsdk:"items" json:"items,omitempty"`
										LocalObjectReference *struct {
											Name *string `tfsdk:"name" json:"name,omitempty"`
										} `tfsdk:"local_object_reference" json:"localObjectReference,omitempty"`
										Optional *bool `tfsdk:"optional" json:"optional,omitempty"`
									} `tfsdk:"secret" json:"secret,omitempty"`
									ServiceAccountToken *struct {
										Audience          *string `tfsdk:"audience" json:"audience,omitempty"`
										ExpirationSeconds *int64  `tfsdk:"expiration_seconds" json:"expirationSeconds,omitempty"`
										Path              *string `tfsdk:"path" json:"path,omitempty"`
									} `tfsdk:"service_account_token" json:"serviceAccountToken,omitempty"`
								} `tfsdk:"sources" json:"sources,omitempty"`
							} `tfsdk:"projected" json:"projected,omitempty"`
							Quobyte *struct {
								Group    *string `tfsdk:"group" json:"group,omitempty"`
								ReadOnly *bool   `tfsdk:"read_only" json:"readOnly,omitempty"`
								Registry *string `tfsdk:"registry" json:"registry,omitempty"`
								Tenant   *string `tfsdk:"tenant" json:"tenant,omitempty"`
								User     *string `tfsdk:"user" json:"user,omitempty"`
								Volume   *string `tfsdk:"volume" json:"volume,omitempty"`
							} `tfsdk:"quobyte" json:"quobyte,omitempty"`
							Rbd *struct {
								FsType    *string   `tfsdk:"fs_type" json:"fsType,omitempty"`
								Image     *string   `tfsdk:"image" json:"image,omitempty"`
								Keyring   *string   `tfsdk:"keyring" json:"keyring,omitempty"`
								Monitors  *[]string `tfsdk:"monitors" json:"monitors,omitempty"`
								Pool      *string   `tfsdk:"pool" json:"pool,omitempty"`
								ReadOnly  *bool     `tfsdk:"read_only" json:"readOnly,omitempty"`
								SecretRef *struct {
									Name *string `tfsdk:"name" json:"name,omitempty"`
								} `tfsdk:"secret_ref" json:"secretRef,omitempty"`
								User *string `tfsdk:"user" json:"user,omitempty"`
							} `tfsdk:"rbd" json:"rbd,omitempty"`
							ScaleIO *struct {
								FsType           *string `tfsdk:"fs_type" json:"fsType,omitempty"`
								Gateway          *string `tfsdk:"gateway" json:"gateway,omitempty"`
								ProtectionDomain *string `tfsdk:"protection_domain" json:"protectionDomain,omitempty"`
								ReadOnly         *bool   `tfsdk:"read_only" json:"readOnly,omitempty"`
								SecretRef        *struct {
									Name *string `tfsdk:"name" json:"name,omitempty"`
								} `tfsdk:"secret_ref" json:"secretRef,omitempty"`
								SslEnabled  *bool   `tfsdk:"ssl_enabled" json:"sslEnabled,omitempty"`
								StorageMode *string `tfsdk:"storage_mode" json:"storageMode,omitempty"`
								StoragePool *string `tfsdk:"storage_pool" json:"storagePool,omitempty"`
								System      *string `tfsdk:"system" json:"system,omitempty"`
								VolumeName  *string `tfsdk:"volume_name" json:"volumeName,omitempty"`
							} `tfsdk:"scale_io" json:"scaleIO,omitempty"`
							Secret *struct {
								DefaultMode *int64 `tfsdk:"default_mode" json:"defaultMode,omitempty"`
								Items       *[]struct {
									Key  *string `tfsdk:"key" json:"key,omitempty"`
									Mode *int64  `tfsdk:"mode" json:"mode,omitempty"`
									Path *string `tfsdk:"path" json:"path,omitempty"`
								} `tfsdk:"items" json:"items,omitempty"`
								Optional   *bool   `tfsdk:"optional" json:"optional,omitempty"`
								SecretName *string `tfsdk:"secret_name" json:"secretName,omitempty"`
							} `tfsdk:"secret" json:"secret,omitempty"`
							Storageos *struct {
								FsType    *string `tfsdk:"fs_type" json:"fsType,omitempty"`
								ReadOnly  *bool   `tfsdk:"read_only" json:"readOnly,omitempty"`
								SecretRef *struct {
									Name *string `tfsdk:"name" json:"name,omitempty"`
								} `tfsdk:"secret_ref" json:"secretRef,omitempty"`
								VolumeName      *string `tfsdk:"volume_name" json:"volumeName,omitempty"`
								VolumeNamespace *string `tfsdk:"volume_namespace" json:"volumeNamespace,omitempty"`
							} `tfsdk:"storageos" json:"storageos,omitempty"`
							VsphereVolume *struct {
								FsType            *string `tfsdk:"fs_type" json:"fsType,omitempty"`
								StoragePolicyID   *string `tfsdk:"storage_policy_id" json:"storagePolicyID,omitempty"`
								StoragePolicyName *string `tfsdk:"storage_policy_name" json:"storagePolicyName,omitempty"`
								VolumePath        *string `tfsdk:"volume_path" json:"volumePath,omitempty"`
							} `tfsdk:"vsphere_volume" json:"vsphereVolume,omitempty"`
						} `tfsdk:"volume_source" json:"volumeSource,omitempty"`
					} `tfsdk:"volumes" json:"volumes,omitempty"`
				} `tfsdk:"deployment" json:"deployment,omitempty"`
				K8sResourceOverlays *[]struct {
					GroupVersionKind *struct {
						Group   *string `tfsdk:"group" json:"group,omitempty"`
						Kind    *string `tfsdk:"kind" json:"kind,omitempty"`
						Version *string `tfsdk:"version" json:"version,omitempty"`
					} `tfsdk:"group_version_kind" json:"groupVersionKind,omitempty"`
					ObjectKey *struct {
						Name      *string `tfsdk:"name" json:"name,omitempty"`
						Namespace *string `tfsdk:"namespace" json:"namespace,omitempty"`
					} `tfsdk:"object_key" json:"objectKey,omitempty"`
					Patches *[]struct {
						ParseValue *bool   `tfsdk:"parse_value" json:"parseValue,omitempty"`
						Path       *string `tfsdk:"path" json:"path,omitempty"`
						Type       *string `tfsdk:"type" json:"type,omitempty"`
						Value      *string `tfsdk:"value" json:"value,omitempty"`
					} `tfsdk:"patches" json:"patches,omitempty"`
				} `tfsdk:"k8s_resource_overlays" json:"k8sResourceOverlays,omitempty"`
				Metadata *struct {
					Annotations *map[string]string `tfsdk:"annotations" json:"annotations,omitempty"`
					Labels      *map[string]string `tfsdk:"labels" json:"labels,omitempty"`
				} `tfsdk:"metadata" json:"metadata,omitempty"`
				RunAsRoot *bool `tfsdk:"run_as_root" json:"runAsRoot,omitempty"`
				Service   *struct {
					ClusterIP                *string   `tfsdk:"cluster_ip" json:"clusterIP,omitempty"`
					ExternalIPs              *[]string `tfsdk:"external_i_ps" json:"externalIPs,omitempty"`
					ExternalName             *string   `tfsdk:"external_name" json:"externalName,omitempty"`
					ExternalTrafficPolicy    *string   `tfsdk:"external_traffic_policy" json:"externalTrafficPolicy,omitempty"`
					HealthCheckNodePort      *int64    `tfsdk:"health_check_node_port" json:"healthCheckNodePort,omitempty"`
					IpFamily                 *string   `tfsdk:"ip_family" json:"ipFamily,omitempty"`
					LoadBalancerIP           *string   `tfsdk:"load_balancer_ip" json:"loadBalancerIP,omitempty"`
					LoadBalancerSourceRanges *[]string `tfsdk:"load_balancer_source_ranges" json:"loadBalancerSourceRanges,omitempty"`
					Metadata                 *struct {
						Annotations *map[string]string `tfsdk:"annotations" json:"annotations,omitempty"`
						Labels      *map[string]string `tfsdk:"labels" json:"labels,omitempty"`
					} `tfsdk:"metadata" json:"metadata,omitempty"`
					Ports *[]struct {
						Name       *string `tfsdk:"name" json:"name,omitempty"`
						NodePort   *int64  `tfsdk:"node_port" json:"nodePort,omitempty"`
						Port       *int64  `tfsdk:"port" json:"port,omitempty"`
						Protocol   *string `tfsdk:"protocol" json:"protocol,omitempty"`
						TargetPort *string `tfsdk:"target_port" json:"targetPort,omitempty"`
					} `tfsdk:"ports" json:"ports,omitempty"`
					PublishNotReadyAddresses *bool              `tfsdk:"publish_not_ready_addresses" json:"publishNotReadyAddresses,omitempty"`
					Selector                 *map[string]string `tfsdk:"selector" json:"selector,omitempty"`
					SessionAffinity          *string            `tfsdk:"session_affinity" json:"sessionAffinity,omitempty"`
					SessionAffinityConfig    *struct {
						ClientIP *struct {
							TimeoutSeconds *int64 `tfsdk:"timeout_seconds" json:"timeoutSeconds,omitempty"`
						} `tfsdk:"client_ip" json:"clientIP,omitempty"`
					} `tfsdk:"session_affinity_config" json:"sessionAffinityConfig,omitempty"`
					Type *string `tfsdk:"type" json:"type,omitempty"`
				} `tfsdk:"service" json:"service,omitempty"`
			} `tfsdk:"gateway" json:"gateway,omitempty"`
			Istiod *struct {
				Expose *bool `tfsdk:"expose" json:"expose,omitempty"`
			} `tfsdk:"istiod" json:"istiod,omitempty"`
			Webhook *struct {
				Expose *bool `tfsdk:"expose" json:"expose,omitempty"`
			} `tfsdk:"webhook" json:"webhook,omitempty"`
		} `tfsdk:"mesh_expansion" json:"meshExpansion,omitempty"`
		MeshID         *string `tfsdk:"mesh_id" json:"meshID,omitempty"`
		Mode           *string `tfsdk:"mode" json:"mode,omitempty"`
		MountMtlsCerts *bool   `tfsdk:"mount_mtls_certs" json:"mountMtlsCerts,omitempty"`
		NetworkName    *string `tfsdk:"network_name" json:"networkName,omitempty"`
		Proxy          *struct {
			ClusterDomain                   *string `tfsdk:"cluster_domain" json:"clusterDomain,omitempty"`
			ComponentLogLevel               *string `tfsdk:"component_log_level" json:"componentLogLevel,omitempty"`
			EnableCoreDump                  *bool   `tfsdk:"enable_core_dump" json:"enableCoreDump,omitempty"`
			ExcludeIPRanges                 *string `tfsdk:"exclude_ip_ranges" json:"excludeIPRanges,omitempty"`
			ExcludeInboundPorts             *string `tfsdk:"exclude_inbound_ports" json:"excludeInboundPorts,omitempty"`
			ExcludeOutboundPorts            *string `tfsdk:"exclude_outbound_ports" json:"excludeOutboundPorts,omitempty"`
			HoldApplicationUntilProxyStarts *bool   `tfsdk:"hold_application_until_proxy_starts" json:"holdApplicationUntilProxyStarts,omitempty"`
			Image                           *string `tfsdk:"image" json:"image,omitempty"`
			IncludeIPRanges                 *string `tfsdk:"include_ip_ranges" json:"includeIPRanges,omitempty"`
			Lifecycle                       *struct {
				PostStart *struct {
					Exec *struct {
						Command *[]string `tfsdk:"command" json:"command,omitempty"`
					} `tfsdk:"exec" json:"exec,omitempty"`
					HttpGet *struct {
						Host        *string `tfsdk:"host" json:"host,omitempty"`
						HttpHeaders *[]struct {
							Name  *string `tfsdk:"name" json:"name,omitempty"`
							Value *string `tfsdk:"value" json:"value,omitempty"`
						} `tfsdk:"http_headers" json:"httpHeaders,omitempty"`
						Path   *string `tfsdk:"path" json:"path,omitempty"`
						Port   *string `tfsdk:"port" json:"port,omitempty"`
						Scheme *string `tfsdk:"scheme" json:"scheme,omitempty"`
					} `tfsdk:"http_get" json:"httpGet,omitempty"`
					TcpSocket *struct {
						Host *string `tfsdk:"host" json:"host,omitempty"`
						Port *string `tfsdk:"port" json:"port,omitempty"`
					} `tfsdk:"tcp_socket" json:"tcpSocket,omitempty"`
				} `tfsdk:"post_start" json:"postStart,omitempty"`
				PreStop *struct {
					Exec *struct {
						Command *[]string `tfsdk:"command" json:"command,omitempty"`
					} `tfsdk:"exec" json:"exec,omitempty"`
					HttpGet *struct {
						Host        *string `tfsdk:"host" json:"host,omitempty"`
						HttpHeaders *[]struct {
							Name  *string `tfsdk:"name" json:"name,omitempty"`
							Value *string `tfsdk:"value" json:"value,omitempty"`
						} `tfsdk:"http_headers" json:"httpHeaders,omitempty"`
						Path   *string `tfsdk:"path" json:"path,omitempty"`
						Port   *string `tfsdk:"port" json:"port,omitempty"`
						Scheme *string `tfsdk:"scheme" json:"scheme,omitempty"`
					} `tfsdk:"http_get" json:"httpGet,omitempty"`
					TcpSocket *struct {
						Host *string `tfsdk:"host" json:"host,omitempty"`
						Port *string `tfsdk:"port" json:"port,omitempty"`
					} `tfsdk:"tcp_socket" json:"tcpSocket,omitempty"`
				} `tfsdk:"pre_stop" json:"preStop,omitempty"`
			} `tfsdk:"lifecycle" json:"lifecycle,omitempty"`
			LogLevel   *string `tfsdk:"log_level" json:"logLevel,omitempty"`
			Privileged *bool   `tfsdk:"privileged" json:"privileged,omitempty"`
			Resources  *struct {
				Limits   *map[string]string `tfsdk:"limits" json:"limits,omitempty"`
				Requests *map[string]string `tfsdk:"requests" json:"requests,omitempty"`
			} `tfsdk:"resources" json:"resources,omitempty"`
			Tracer *string `tfsdk:"tracer" json:"tracer,omitempty"`
		} `tfsdk:"proxy" json:"proxy,omitempty"`
		ProxyInit *struct {
			Cni *struct {
				BinDir       *string `tfsdk:"bin_dir" json:"binDir,omitempty"`
				Chained      *bool   `tfsdk:"chained" json:"chained,omitempty"`
				ConfDir      *string `tfsdk:"conf_dir" json:"confDir,omitempty"`
				ConfFileName *string `tfsdk:"conf_file_name" json:"confFileName,omitempty"`
				Daemonset    *struct {
					Affinity *struct {
						NodeAffinity *struct {
							PreferredDuringSchedulingIgnoredDuringExecution *[]struct {
								Preference *struct {
									MatchExpressions *[]struct {
										Key      *string   `tfsdk:"key" json:"key,omitempty"`
										Operator *string   `tfsdk:"operator" json:"operator,omitempty"`
										Values   *[]string `tfsdk:"values" json:"values,omitempty"`
									} `tfsdk:"match_expressions" json:"matchExpressions,omitempty"`
									MatchFields *[]struct {
										Key      *string   `tfsdk:"key" json:"key,omitempty"`
										Operator *string   `tfsdk:"operator" json:"operator,omitempty"`
										Values   *[]string `tfsdk:"values" json:"values,omitempty"`
									} `tfsdk:"match_fields" json:"matchFields,omitempty"`
								} `tfsdk:"preference" json:"preference,omitempty"`
								Weight *int64 `tfsdk:"weight" json:"weight,omitempty"`
							} `tfsdk:"preferred_during_scheduling_ignored_during_execution" json:"preferredDuringSchedulingIgnoredDuringExecution,omitempty"`
							RequiredDuringSchedulingIgnoredDuringExecution *struct {
								NodeSelectorTerms *[]struct {
									MatchExpressions *[]struct {
										Key      *string   `tfsdk:"key" json:"key,omitempty"`
										Operator *string   `tfsdk:"operator" json:"operator,omitempty"`
										Values   *[]string `tfsdk:"values" json:"values,omitempty"`
									} `tfsdk:"match_expressions" json:"matchExpressions,omitempty"`
									MatchFields *[]struct {
										Key      *string   `tfsdk:"key" json:"key,omitempty"`
										Operator *string   `tfsdk:"operator" json:"operator,omitempty"`
										Values   *[]string `tfsdk:"values" json:"values,omitempty"`
									} `tfsdk:"match_fields" json:"matchFields,omitempty"`
								} `tfsdk:"node_selector_terms" json:"nodeSelectorTerms,omitempty"`
							} `tfsdk:"required_during_scheduling_ignored_during_execution" json:"requiredDuringSchedulingIgnoredDuringExecution,omitempty"`
						} `tfsdk:"node_affinity" json:"nodeAffinity,omitempty"`
						PodAffinity *struct {
							PreferredDuringSchedulingIgnoredDuringExecution *[]struct {
								PodAffinityTerm *struct {
									LabelSelector *struct {
										MatchExpressions *[]struct {
											Key      *string   `tfsdk:"key" json:"key,omitempty"`
											Operator *string   `tfsdk:"operator" json:"operator,omitempty"`
											Values   *[]string `tfsdk:"values" json:"values,omitempty"`
										} `tfsdk:"match_expressions" json:"matchExpressions,omitempty"`
										MatchLabels *map[string]string `tfsdk:"match_labels" json:"matchLabels,omitempty"`
									} `tfsdk:"label_selector" json:"labelSelector,omitempty"`
									NamespaceSelector *struct {
										MatchExpressions *[]struct {
											Key      *string   `tfsdk:"key" json:"key,omitempty"`
											Operator *string   `tfsdk:"operator" json:"operator,omitempty"`
											Values   *[]string `tfsdk:"values" json:"values,omitempty"`
										} `tfsdk:"match_expressions" json:"matchExpressions,omitempty"`
										MatchLabels *map[string]string `tfsdk:"match_labels" json:"matchLabels,omitempty"`
									} `tfsdk:"namespace_selector" json:"namespaceSelector,omitempty"`
									Namespaces  *[]string `tfsdk:"namespaces" json:"namespaces,omitempty"`
									TopologyKey *string   `tfsdk:"topology_key" json:"topologyKey,omitempty"`
								} `tfsdk:"pod_affinity_term" json:"podAffinityTerm,omitempty"`
								Weight *int64 `tfsdk:"weight" json:"weight,omitempty"`
							} `tfsdk:"preferred_during_scheduling_ignored_during_execution" json:"preferredDuringSchedulingIgnoredDuringExecution,omitempty"`
							RequiredDuringSchedulingIgnoredDuringExecution *[]struct {
								LabelSelector *struct {
									MatchExpressions *[]struct {
										Key      *string   `tfsdk:"key" json:"key,omitempty"`
										Operator *string   `tfsdk:"operator" json:"operator,omitempty"`
										Values   *[]string `tfsdk:"values" json:"values,omitempty"`
									} `tfsdk:"match_expressions" json:"matchExpressions,omitempty"`
									MatchLabels *map[string]string `tfsdk:"match_labels" json:"matchLabels,omitempty"`
								} `tfsdk:"label_selector" json:"labelSelector,omitempty"`
								NamespaceSelector *struct {
									MatchExpressions *[]struct {
										Key      *string   `tfsdk:"key" json:"key,omitempty"`
										Operator *string   `tfsdk:"operator" json:"operator,omitempty"`
										Values   *[]string `tfsdk:"values" json:"values,omitempty"`
									} `tfsdk:"match_expressions" json:"matchExpressions,omitempty"`
									MatchLabels *map[string]string `tfsdk:"match_labels" json:"matchLabels,omitempty"`
								} `tfsdk:"namespace_selector" json:"namespaceSelector,omitempty"`
								Namespaces  *[]string `tfsdk:"namespaces" json:"namespaces,omitempty"`
								TopologyKey *string   `tfsdk:"topology_key" json:"topologyKey,omitempty"`
							} `tfsdk:"required_during_scheduling_ignored_during_execution" json:"requiredDuringSchedulingIgnoredDuringExecution,omitempty"`
						} `tfsdk:"pod_affinity" json:"podAffinity,omitempty"`
						PodAntiAffinity *struct {
							PreferredDuringSchedulingIgnoredDuringExecution *[]struct {
								PodAffinityTerm *struct {
									LabelSelector *struct {
										MatchExpressions *[]struct {
											Key      *string   `tfsdk:"key" json:"key,omitempty"`
											Operator *string   `tfsdk:"operator" json:"operator,omitempty"`
											Values   *[]string `tfsdk:"values" json:"values,omitempty"`
										} `tfsdk:"match_expressions" json:"matchExpressions,omitempty"`
										MatchLabels *map[string]string `tfsdk:"match_labels" json:"matchLabels,omitempty"`
									} `tfsdk:"label_selector" json:"labelSelector,omitempty"`
									NamespaceSelector *struct {
										MatchExpressions *[]struct {
											Key      *string   `tfsdk:"key" json:"key,omitempty"`
											Operator *string   `tfsdk:"operator" json:"operator,omitempty"`
											Values   *[]string `tfsdk:"values" json:"values,omitempty"`
										} `tfsdk:"match_expressions" json:"matchExpressions,omitempty"`
										MatchLabels *map[string]string `tfsdk:"match_labels" json:"matchLabels,omitempty"`
									} `tfsdk:"namespace_selector" json:"namespaceSelector,omitempty"`
									Namespaces  *[]string `tfsdk:"namespaces" json:"namespaces,omitempty"`
									TopologyKey *string   `tfsdk:"topology_key" json:"topologyKey,omitempty"`
								} `tfsdk:"pod_affinity_term" json:"podAffinityTerm,omitempty"`
								Weight *int64 `tfsdk:"weight" json:"weight,omitempty"`
							} `tfsdk:"preferred_during_scheduling_ignored_during_execution" json:"preferredDuringSchedulingIgnoredDuringExecution,omitempty"`
							RequiredDuringSchedulingIgnoredDuringExecution *[]struct {
								LabelSelector *struct {
									MatchExpressions *[]struct {
										Key      *string   `tfsdk:"key" json:"key,omitempty"`
										Operator *string   `tfsdk:"operator" json:"operator,omitempty"`
										Values   *[]string `tfsdk:"values" json:"values,omitempty"`
									} `tfsdk:"match_expressions" json:"matchExpressions,omitempty"`
									MatchLabels *map[string]string `tfsdk:"match_labels" json:"matchLabels,omitempty"`
								} `tfsdk:"label_selector" json:"labelSelector,omitempty"`
								NamespaceSelector *struct {
									MatchExpressions *[]struct {
										Key      *string   `tfsdk:"key" json:"key,omitempty"`
										Operator *string   `tfsdk:"operator" json:"operator,omitempty"`
										Values   *[]string `tfsdk:"values" json:"values,omitempty"`
									} `tfsdk:"match_expressions" json:"matchExpressions,omitempty"`
									MatchLabels *map[string]string `tfsdk:"match_labels" json:"matchLabels,omitempty"`
								} `tfsdk:"namespace_selector" json:"namespaceSelector,omitempty"`
								Namespaces  *[]string `tfsdk:"namespaces" json:"namespaces,omitempty"`
								TopologyKey *string   `tfsdk:"topology_key" json:"topologyKey,omitempty"`
							} `tfsdk:"required_during_scheduling_ignored_during_execution" json:"requiredDuringSchedulingIgnoredDuringExecution,omitempty"`
						} `tfsdk:"pod_anti_affinity" json:"podAntiAffinity,omitempty"`
					} `tfsdk:"affinity" json:"affinity,omitempty"`
					DeploymentStrategy *struct {
						RollingUpdate *struct {
							MaxSurge       *string `tfsdk:"max_surge" json:"maxSurge,omitempty"`
							MaxUnavailable *string `tfsdk:"max_unavailable" json:"maxUnavailable,omitempty"`
						} `tfsdk:"rolling_update" json:"rollingUpdate,omitempty"`
						Type *string `tfsdk:"type" json:"type,omitempty"`
					} `tfsdk:"deployment_strategy" json:"deploymentStrategy,omitempty"`
					Env *[]struct {
						Name      *string `tfsdk:"name" json:"name,omitempty"`
						Value     *string `tfsdk:"value" json:"value,omitempty"`
						ValueFrom *struct {
							ConfigMapKeyRef *struct {
								Key                  *string `tfsdk:"key" json:"key,omitempty"`
								LocalObjectReference *struct {
									Name *string `tfsdk:"name" json:"name,omitempty"`
								} `tfsdk:"local_object_reference" json:"localObjectReference,omitempty"`
								Optional *bool `tfsdk:"optional" json:"optional,omitempty"`
							} `tfsdk:"config_map_key_ref" json:"configMapKeyRef,omitempty"`
							FieldRef *struct {
								ApiVersion *string `tfsdk:"api_version" json:"apiVersion,omitempty"`
								FieldPath  *string `tfsdk:"field_path" json:"fieldPath,omitempty"`
							} `tfsdk:"field_ref" json:"fieldRef,omitempty"`
							ResourceFieldRef *struct {
								ContainerName *string `tfsdk:"container_name" json:"containerName,omitempty"`
								Divisor       *string `tfsdk:"divisor" json:"divisor,omitempty"`
								Resource      *string `tfsdk:"resource" json:"resource,omitempty"`
							} `tfsdk:"resource_field_ref" json:"resourceFieldRef,omitempty"`
							SecretKeyRef *struct {
								Key                  *string `tfsdk:"key" json:"key,omitempty"`
								LocalObjectReference *struct {
									Name *string `tfsdk:"name" json:"name,omitempty"`
								} `tfsdk:"local_object_reference" json:"localObjectReference,omitempty"`
								Optional *bool `tfsdk:"optional" json:"optional,omitempty"`
							} `tfsdk:"secret_key_ref" json:"secretKeyRef,omitempty"`
						} `tfsdk:"value_from" json:"valueFrom,omitempty"`
					} `tfsdk:"env" json:"env,omitempty"`
					Image            *string `tfsdk:"image" json:"image,omitempty"`
					ImagePullPolicy  *string `tfsdk:"image_pull_policy" json:"imagePullPolicy,omitempty"`
					ImagePullSecrets *[]struct {
						Name *string `tfsdk:"name" json:"name,omitempty"`
					} `tfsdk:"image_pull_secrets" json:"imagePullSecrets,omitempty"`
					LivenessProbe *struct {
						Exec *struct {
							Command *[]string `tfsdk:"command" json:"command,omitempty"`
						} `tfsdk:"exec" json:"exec,omitempty"`
						FailureThreshold *int64 `tfsdk:"failure_threshold" json:"failureThreshold,omitempty"`
						Grpc             *struct {
							Port    *int64  `tfsdk:"port" json:"port,omitempty"`
							Service *string `tfsdk:"service" json:"service,omitempty"`
						} `tfsdk:"grpc" json:"grpc,omitempty"`
						HttpGet *struct {
							Host        *string `tfsdk:"host" json:"host,omitempty"`
							HttpHeaders *[]struct {
								Name  *string `tfsdk:"name" json:"name,omitempty"`
								Value *string `tfsdk:"value" json:"value,omitempty"`
							} `tfsdk:"http_headers" json:"httpHeaders,omitempty"`
							Path   *string `tfsdk:"path" json:"path,omitempty"`
							Port   *string `tfsdk:"port" json:"port,omitempty"`
							Scheme *string `tfsdk:"scheme" json:"scheme,omitempty"`
						} `tfsdk:"http_get" json:"httpGet,omitempty"`
						InitialDelaySeconds *int64 `tfsdk:"initial_delay_seconds" json:"initialDelaySeconds,omitempty"`
						PeriodSeconds       *int64 `tfsdk:"period_seconds" json:"periodSeconds,omitempty"`
						SuccessThreshold    *int64 `tfsdk:"success_threshold" json:"successThreshold,omitempty"`
						TcpSocket           *struct {
							Host *string `tfsdk:"host" json:"host,omitempty"`
							Port *string `tfsdk:"port" json:"port,omitempty"`
						} `tfsdk:"tcp_socket" json:"tcpSocket,omitempty"`
						TerminationGracePeriodSeconds *int64 `tfsdk:"termination_grace_period_seconds" json:"terminationGracePeriodSeconds,omitempty"`
						TimeoutSeconds                *int64 `tfsdk:"timeout_seconds" json:"timeoutSeconds,omitempty"`
					} `tfsdk:"liveness_probe" json:"livenessProbe,omitempty"`
					Metadata *struct {
						Annotations *map[string]string `tfsdk:"annotations" json:"annotations,omitempty"`
						Labels      *map[string]string `tfsdk:"labels" json:"labels,omitempty"`
					} `tfsdk:"metadata" json:"metadata,omitempty"`
					NodeSelector        *map[string]string `tfsdk:"node_selector" json:"nodeSelector,omitempty"`
					PodDisruptionBudget *struct {
						MaxUnavailable *string `tfsdk:"max_unavailable" json:"maxUnavailable,omitempty"`
						MinAvailable   *string `tfsdk:"min_available" json:"minAvailable,omitempty"`
					} `tfsdk:"pod_disruption_budget" json:"podDisruptionBudget,omitempty"`
					PodMetadata *struct {
						Annotations *map[string]string `tfsdk:"annotations" json:"annotations,omitempty"`
						Labels      *map[string]string `tfsdk:"labels" json:"labels,omitempty"`
					} `tfsdk:"pod_metadata" json:"podMetadata,omitempty"`
					PodSecurityContext *struct {
						FsGroup             *int64  `tfsdk:"fs_group" json:"fsGroup,omitempty"`
						FsGroupChangePolicy *string `tfsdk:"fs_group_change_policy" json:"fsGroupChangePolicy,omitempty"`
						RunAsGroup          *int64  `tfsdk:"run_as_group" json:"runAsGroup,omitempty"`
						RunAsNonRoot        *bool   `tfsdk:"run_as_non_root" json:"runAsNonRoot,omitempty"`
						RunAsUser           *int64  `tfsdk:"run_as_user" json:"runAsUser,omitempty"`
						SeLinuxOptions      *struct {
							Level *string `tfsdk:"level" json:"level,omitempty"`
							Role  *string `tfsdk:"role" json:"role,omitempty"`
							Type  *string `tfsdk:"type" json:"type,omitempty"`
							User  *string `tfsdk:"user" json:"user,omitempty"`
						} `tfsdk:"se_linux_options" json:"seLinuxOptions,omitempty"`
						SeccompProfile *struct {
							LocalhostProfile *string `tfsdk:"localhost_profile" json:"localhostProfile,omitempty"`
							Type             *string `tfsdk:"type" json:"type,omitempty"`
						} `tfsdk:"seccomp_profile" json:"seccompProfile,omitempty"`
						SupplementalGroups *[]string `tfsdk:"supplemental_groups" json:"supplementalGroups,omitempty"`
						Sysctls            *[]struct {
							Name  *string `tfsdk:"name" json:"name,omitempty"`
							Value *string `tfsdk:"value" json:"value,omitempty"`
						} `tfsdk:"sysctls" json:"sysctls,omitempty"`
						WindowsOptions *struct {
							GmsaCredentialSpec     *string `tfsdk:"gmsa_credential_spec" json:"gmsaCredentialSpec,omitempty"`
							GmsaCredentialSpecName *string `tfsdk:"gmsa_credential_spec_name" json:"gmsaCredentialSpecName,omitempty"`
							HostProcess            *bool   `tfsdk:"host_process" json:"hostProcess,omitempty"`
							RunAsUserName          *string `tfsdk:"run_as_user_name" json:"runAsUserName,omitempty"`
						} `tfsdk:"windows_options" json:"windowsOptions,omitempty"`
					} `tfsdk:"pod_security_context" json:"podSecurityContext,omitempty"`
					PriorityClassName *string `tfsdk:"priority_class_name" json:"priorityClassName,omitempty"`
					ReadinessProbe    *struct {
						Exec *struct {
							Command *[]string `tfsdk:"command" json:"command,omitempty"`
						} `tfsdk:"exec" json:"exec,omitempty"`
						FailureThreshold *int64 `tfsdk:"failure_threshold" json:"failureThreshold,omitempty"`
						Grpc             *struct {
							Port    *int64  `tfsdk:"port" json:"port,omitempty"`
							Service *string `tfsdk:"service" json:"service,omitempty"`
						} `tfsdk:"grpc" json:"grpc,omitempty"`
						HttpGet *struct {
							Host        *string `tfsdk:"host" json:"host,omitempty"`
							HttpHeaders *[]struct {
								Name  *string `tfsdk:"name" json:"name,omitempty"`
								Value *string `tfsdk:"value" json:"value,omitempty"`
							} `tfsdk:"http_headers" json:"httpHeaders,omitempty"`
							Path   *string `tfsdk:"path" json:"path,omitempty"`
							Port   *string `tfsdk:"port" json:"port,omitempty"`
							Scheme *string `tfsdk:"scheme" json:"scheme,omitempty"`
						} `tfsdk:"http_get" json:"httpGet,omitempty"`
						InitialDelaySeconds *int64 `tfsdk:"initial_delay_seconds" json:"initialDelaySeconds,omitempty"`
						PeriodSeconds       *int64 `tfsdk:"period_seconds" json:"periodSeconds,omitempty"`
						SuccessThreshold    *int64 `tfsdk:"success_threshold" json:"successThreshold,omitempty"`
						TcpSocket           *struct {
							Host *string `tfsdk:"host" json:"host,omitempty"`
							Port *string `tfsdk:"port" json:"port,omitempty"`
						} `tfsdk:"tcp_socket" json:"tcpSocket,omitempty"`
						TerminationGracePeriodSeconds *int64 `tfsdk:"termination_grace_period_seconds" json:"terminationGracePeriodSeconds,omitempty"`
						TimeoutSeconds                *int64 `tfsdk:"timeout_seconds" json:"timeoutSeconds,omitempty"`
					} `tfsdk:"readiness_probe" json:"readinessProbe,omitempty"`
					Replicas *struct {
						Count                          *int64 `tfsdk:"count" json:"count,omitempty"`
						Max                            *int64 `tfsdk:"max" json:"max,omitempty"`
						Min                            *int64 `tfsdk:"min" json:"min,omitempty"`
						TargetCPUUtilizationPercentage *int64 `tfsdk:"target_cpu_utilization_percentage" json:"targetCPUUtilizationPercentage,omitempty"`
					} `tfsdk:"replicas" json:"replicas,omitempty"`
					Resources *struct {
						Limits   *map[string]string `tfsdk:"limits" json:"limits,omitempty"`
						Requests *map[string]string `tfsdk:"requests" json:"requests,omitempty"`
					} `tfsdk:"resources" json:"resources,omitempty"`
					SecurityContext *struct {
						AllowPrivilegeEscalation *bool `tfsdk:"allow_privilege_escalation" json:"allowPrivilegeEscalation,omitempty"`
						Capabilities             *struct {
							Add  *[]string `tfsdk:"add" json:"add,omitempty"`
							Drop *[]string `tfsdk:"drop" json:"drop,omitempty"`
						} `tfsdk:"capabilities" json:"capabilities,omitempty"`
						Privileged             *bool   `tfsdk:"privileged" json:"privileged,omitempty"`
						ProcMount              *string `tfsdk:"proc_mount" json:"procMount,omitempty"`
						ReadOnlyRootFilesystem *bool   `tfsdk:"read_only_root_filesystem" json:"readOnlyRootFilesystem,omitempty"`
						RunAsGroup             *int64  `tfsdk:"run_as_group" json:"runAsGroup,omitempty"`
						RunAsNonRoot           *bool   `tfsdk:"run_as_non_root" json:"runAsNonRoot,omitempty"`
						RunAsUser              *int64  `tfsdk:"run_as_user" json:"runAsUser,omitempty"`
						SeLinuxOptions         *struct {
							Level *string `tfsdk:"level" json:"level,omitempty"`
							Role  *string `tfsdk:"role" json:"role,omitempty"`
							Type  *string `tfsdk:"type" json:"type,omitempty"`
							User  *string `tfsdk:"user" json:"user,omitempty"`
						} `tfsdk:"se_linux_options" json:"seLinuxOptions,omitempty"`
						SeccompProfile *struct {
							LocalhostProfile *string `tfsdk:"localhost_profile" json:"localhostProfile,omitempty"`
							Type             *string `tfsdk:"type" json:"type,omitempty"`
						} `tfsdk:"seccomp_profile" json:"seccompProfile,omitempty"`
						WindowsOptions *struct {
							GmsaCredentialSpec     *string `tfsdk:"gmsa_credential_spec" json:"gmsaCredentialSpec,omitempty"`
							GmsaCredentialSpecName *string `tfsdk:"gmsa_credential_spec_name" json:"gmsaCredentialSpecName,omitempty"`
							HostProcess            *bool   `tfsdk:"host_process" json:"hostProcess,omitempty"`
							RunAsUserName          *string `tfsdk:"run_as_user_name" json:"runAsUserName,omitempty"`
						} `tfsdk:"windows_options" json:"windowsOptions,omitempty"`
					} `tfsdk:"security_context" json:"securityContext,omitempty"`
					Tolerations *[]struct {
						Effect            *string `tfsdk:"effect" json:"effect,omitempty"`
						Key               *string `tfsdk:"key" json:"key,omitempty"`
						Operator          *string `tfsdk:"operator" json:"operator,omitempty"`
						TolerationSeconds *int64  `tfsdk:"toleration_seconds" json:"tolerationSeconds,omitempty"`
						Value             *string `tfsdk:"value" json:"value,omitempty"`
					} `tfsdk:"tolerations" json:"tolerations,omitempty"`
					TopologySpreadConstraints *[]struct {
						LabelSelector *struct {
							MatchExpressions *[]struct {
								Key      *string   `tfsdk:"key" json:"key,omitempty"`
								Operator *string   `tfsdk:"operator" json:"operator,omitempty"`
								Values   *[]string `tfsdk:"values" json:"values,omitempty"`
							} `tfsdk:"match_expressions" json:"matchExpressions,omitempty"`
							MatchLabels *map[string]string `tfsdk:"match_labels" json:"matchLabels,omitempty"`
						} `tfsdk:"label_selector" json:"labelSelector,omitempty"`
						MaxSkew           *int64  `tfsdk:"max_skew" json:"maxSkew,omitempty"`
						TopologyKey       *string `tfsdk:"topology_key" json:"topologyKey,omitempty"`
						WhenUnsatisfiable *string `tfsdk:"when_unsatisfiable" json:"whenUnsatisfiable,omitempty"`
					} `tfsdk:"topology_spread_constraints" json:"topologySpreadConstraints,omitempty"`
					VolumeMounts *[]struct {
						MountPath        *string `tfsdk:"mount_path" json:"mountPath,omitempty"`
						MountPropagation *string `tfsdk:"mount_propagation" json:"mountPropagation,omitempty"`
						Name             *string `tfsdk:"name" json:"name,omitempty"`
						ReadOnly         *bool   `tfsdk:"read_only" json:"readOnly,omitempty"`
						SubPath          *string `tfsdk:"sub_path" json:"subPath,omitempty"`
						SubPathExpr      *string `tfsdk:"sub_path_expr" json:"subPathExpr,omitempty"`
					} `tfsdk:"volume_mounts" json:"volumeMounts,omitempty"`
					Volumes *[]struct {
						Name         *string `tfsdk:"name" json:"name,omitempty"`
						VolumeSource *struct {
							AwsElasticBlockStore *struct {
								FsType    *string `tfsdk:"fs_type" json:"fsType,omitempty"`
								Partition *int64  `tfsdk:"partition" json:"partition,omitempty"`
								ReadOnly  *bool   `tfsdk:"read_only" json:"readOnly,omitempty"`
								VolumeID  *string `tfsdk:"volume_id" json:"volumeID,omitempty"`
							} `tfsdk:"aws_elastic_block_store" json:"awsElasticBlockStore,omitempty"`
							AzureDisk *struct {
								CachingMode *string `tfsdk:"caching_mode" json:"cachingMode,omitempty"`
								DiskName    *string `tfsdk:"disk_name" json:"diskName,omitempty"`
								DiskURI     *string `tfsdk:"disk_uri" json:"diskURI,omitempty"`
								FsType      *string `tfsdk:"fs_type" json:"fsType,omitempty"`
								Kind        *string `tfsdk:"kind" json:"kind,omitempty"`
								ReadOnly    *bool   `tfsdk:"read_only" json:"readOnly,omitempty"`
							} `tfsdk:"azure_disk" json:"azureDisk,omitempty"`
							AzureFile *struct {
								ReadOnly   *bool   `tfsdk:"read_only" json:"readOnly,omitempty"`
								SecretName *string `tfsdk:"secret_name" json:"secretName,omitempty"`
								ShareName  *string `tfsdk:"share_name" json:"shareName,omitempty"`
							} `tfsdk:"azure_file" json:"azureFile,omitempty"`
							Cephfs *struct {
								Monitors   *[]string `tfsdk:"monitors" json:"monitors,omitempty"`
								Path       *string   `tfsdk:"path" json:"path,omitempty"`
								ReadOnly   *bool     `tfsdk:"read_only" json:"readOnly,omitempty"`
								SecretFile *string   `tfsdk:"secret_file" json:"secretFile,omitempty"`
								SecretRef  *struct {
									Name *string `tfsdk:"name" json:"name,omitempty"`
								} `tfsdk:"secret_ref" json:"secretRef,omitempty"`
								User *string `tfsdk:"user" json:"user,omitempty"`
							} `tfsdk:"cephfs" json:"cephfs,omitempty"`
							Cinder *struct {
								FsType    *string `tfsdk:"fs_type" json:"fsType,omitempty"`
								ReadOnly  *bool   `tfsdk:"read_only" json:"readOnly,omitempty"`
								SecretRef *struct {
									Name *string `tfsdk:"name" json:"name,omitempty"`
								} `tfsdk:"secret_ref" json:"secretRef,omitempty"`
								VolumeID *string `tfsdk:"volume_id" json:"volumeID,omitempty"`
							} `tfsdk:"cinder" json:"cinder,omitempty"`
							ConfigMap *struct {
								DefaultMode *int64 `tfsdk:"default_mode" json:"defaultMode,omitempty"`
								Items       *[]struct {
									Key  *string `tfsdk:"key" json:"key,omitempty"`
									Mode *int64  `tfsdk:"mode" json:"mode,omitempty"`
									Path *string `tfsdk:"path" json:"path,omitempty"`
								} `tfsdk:"items" json:"items,omitempty"`
								LocalObjectReference *struct {
									Name *string `tfsdk:"name" json:"name,omitempty"`
								} `tfsdk:"local_object_reference" json:"localObjectReference,omitempty"`
								Optional *bool `tfsdk:"optional" json:"optional,omitempty"`
							} `tfsdk:"config_map" json:"configMap,omitempty"`
							Csi *struct {
								Driver               *string `tfsdk:"driver" json:"driver,omitempty"`
								FsType               *string `tfsdk:"fs_type" json:"fsType,omitempty"`
								NodePublishSecretRef *struct {
									Name *string `tfsdk:"name" json:"name,omitempty"`
								} `tfsdk:"node_publish_secret_ref" json:"nodePublishSecretRef,omitempty"`
								ReadOnly         *bool              `tfsdk:"read_only" json:"readOnly,omitempty"`
								VolumeAttributes *map[string]string `tfsdk:"volume_attributes" json:"volumeAttributes,omitempty"`
							} `tfsdk:"csi" json:"csi,omitempty"`
							DownwardAPI *struct {
								DefaultMode *int64 `tfsdk:"default_mode" json:"defaultMode,omitempty"`
								Items       *[]struct {
									FieldRef *struct {
										ApiVersion *string `tfsdk:"api_version" json:"apiVersion,omitempty"`
										FieldPath  *string `tfsdk:"field_path" json:"fieldPath,omitempty"`
									} `tfsdk:"field_ref" json:"fieldRef,omitempty"`
									Mode             *int64  `tfsdk:"mode" json:"mode,omitempty"`
									Path             *string `tfsdk:"path" json:"path,omitempty"`
									ResourceFieldRef *struct {
										ContainerName *string `tfsdk:"container_name" json:"containerName,omitempty"`
										Divisor       *string `tfsdk:"divisor" json:"divisor,omitempty"`
										Resource      *string `tfsdk:"resource" json:"resource,omitempty"`
									} `tfsdk:"resource_field_ref" json:"resourceFieldRef,omitempty"`
								} `tfsdk:"items" json:"items,omitempty"`
							} `tfsdk:"downward_api" json:"downwardAPI,omitempty"`
							EmptyDir *struct {
								Medium    *string `tfsdk:"medium" json:"medium,omitempty"`
								SizeLimit *string `tfsdk:"size_limit" json:"sizeLimit,omitempty"`
							} `tfsdk:"empty_dir" json:"emptyDir,omitempty"`
							Ephemeral *struct {
								VolumeClaimTemplate *struct {
									Metadata *struct {
										Annotations       *map[string]string `tfsdk:"annotations" json:"annotations,omitempty"`
										ClusterName       *string            `tfsdk:"cluster_name" json:"clusterName,omitempty"`
										CreationTimestamp *struct {
											Nanos   *int64 `tfsdk:"nanos" json:"nanos,omitempty"`
											Seconds *int64 `tfsdk:"seconds" json:"seconds,omitempty"`
										} `tfsdk:"creation_timestamp" json:"creationTimestamp,omitempty"`
										DeletionGracePeriodSeconds *int64 `tfsdk:"deletion_grace_period_seconds" json:"deletionGracePeriodSeconds,omitempty"`
										DeletionTimestamp          *struct {
											Nanos   *int64 `tfsdk:"nanos" json:"nanos,omitempty"`
											Seconds *int64 `tfsdk:"seconds" json:"seconds,omitempty"`
										} `tfsdk:"deletion_timestamp" json:"deletionTimestamp,omitempty"`
										Finalizers    *[]string          `tfsdk:"finalizers" json:"finalizers,omitempty"`
										GenerateName  *string            `tfsdk:"generate_name" json:"generateName,omitempty"`
										Generation    *int64             `tfsdk:"generation" json:"generation,omitempty"`
										Labels        *map[string]string `tfsdk:"labels" json:"labels,omitempty"`
										ManagedFields *[]struct {
											ApiVersion *string `tfsdk:"api_version" json:"apiVersion,omitempty"`
											FieldsType *string `tfsdk:"fields_type" json:"fieldsType,omitempty"`
											FieldsV1   *struct {
												Raw *string `tfsdk:"raw" json:"Raw,omitempty"`
											} `tfsdk:"fields_v1" json:"fieldsV1,omitempty"`
											Manager     *string `tfsdk:"manager" json:"manager,omitempty"`
											Operation   *string `tfsdk:"operation" json:"operation,omitempty"`
											Subresource *string `tfsdk:"subresource" json:"subresource,omitempty"`
											Time        *struct {
												Nanos   *int64 `tfsdk:"nanos" json:"nanos,omitempty"`
												Seconds *int64 `tfsdk:"seconds" json:"seconds,omitempty"`
											} `tfsdk:"time" json:"time,omitempty"`
										} `tfsdk:"managed_fields" json:"managedFields,omitempty"`
										Name            *string `tfsdk:"name" json:"name,omitempty"`
										Namespace       *string `tfsdk:"namespace" json:"namespace,omitempty"`
										OwnerReferences *[]struct {
											ApiVersion         *string `tfsdk:"api_version" json:"apiVersion,omitempty"`
											BlockOwnerDeletion *bool   `tfsdk:"block_owner_deletion" json:"blockOwnerDeletion,omitempty"`
											Controller         *bool   `tfsdk:"controller" json:"controller,omitempty"`
											Kind               *string `tfsdk:"kind" json:"kind,omitempty"`
											Name               *string `tfsdk:"name" json:"name,omitempty"`
											Uid                *string `tfsdk:"uid" json:"uid,omitempty"`
										} `tfsdk:"owner_references" json:"ownerReferences,omitempty"`
										ResourceVersion *string `tfsdk:"resource_version" json:"resourceVersion,omitempty"`
										SelfLink        *string `tfsdk:"self_link" json:"selfLink,omitempty"`
										Uid             *string `tfsdk:"uid" json:"uid,omitempty"`
									} `tfsdk:"metadata" json:"metadata,omitempty"`
									Spec *struct {
										AccessModes *[]string `tfsdk:"access_modes" json:"accessModes,omitempty"`
										DataSource  *struct {
											ApiGroup *string `tfsdk:"api_group" json:"apiGroup,omitempty"`
											Kind     *string `tfsdk:"kind" json:"kind,omitempty"`
											Name     *string `tfsdk:"name" json:"name,omitempty"`
										} `tfsdk:"data_source" json:"dataSource,omitempty"`
										DataSourceRef *struct {
											ApiGroup *string `tfsdk:"api_group" json:"apiGroup,omitempty"`
											Kind     *string `tfsdk:"kind" json:"kind,omitempty"`
											Name     *string `tfsdk:"name" json:"name,omitempty"`
										} `tfsdk:"data_source_ref" json:"dataSourceRef,omitempty"`
										Resources *struct {
											Limits *struct {
												String *string `tfsdk:"string" json:"string,omitempty"`
											} `tfsdk:"limits" json:"limits,omitempty"`
											Requests *struct {
												String *string `tfsdk:"string" json:"string,omitempty"`
											} `tfsdk:"requests" json:"requests,omitempty"`
										} `tfsdk:"resources" json:"resources,omitempty"`
										Selector *struct {
											MatchExpressions *[]struct {
												Key      *string   `tfsdk:"key" json:"key,omitempty"`
												Operator *string   `tfsdk:"operator" json:"operator,omitempty"`
												Values   *[]string `tfsdk:"values" json:"values,omitempty"`
											} `tfsdk:"match_expressions" json:"matchExpressions,omitempty"`
											MatchLabels *map[string]string `tfsdk:"match_labels" json:"matchLabels,omitempty"`
										} `tfsdk:"selector" json:"selector,omitempty"`
										StorageClassName *string `tfsdk:"storage_class_name" json:"storageClassName,omitempty"`
										VolumeMode       *string `tfsdk:"volume_mode" json:"volumeMode,omitempty"`
										VolumeName       *string `tfsdk:"volume_name" json:"volumeName,omitempty"`
									} `tfsdk:"spec" json:"spec,omitempty"`
								} `tfsdk:"volume_claim_template" json:"volumeClaimTemplate,omitempty"`
							} `tfsdk:"ephemeral" json:"ephemeral,omitempty"`
							Fc *struct {
								FsType     *string   `tfsdk:"fs_type" json:"fsType,omitempty"`
								Lun        *int64    `tfsdk:"lun" json:"lun,omitempty"`
								ReadOnly   *bool     `tfsdk:"read_only" json:"readOnly,omitempty"`
								TargetWWNs *[]string `tfsdk:"target_ww_ns" json:"targetWWNs,omitempty"`
								Wwids      *[]string `tfsdk:"wwids" json:"wwids,omitempty"`
							} `tfsdk:"fc" json:"fc,omitempty"`
							FlexVolume *struct {
								Driver    *string            `tfsdk:"driver" json:"driver,omitempty"`
								FsType    *string            `tfsdk:"fs_type" json:"fsType,omitempty"`
								Options   *map[string]string `tfsdk:"options" json:"options,omitempty"`
								ReadOnly  *bool              `tfsdk:"read_only" json:"readOnly,omitempty"`
								SecretRef *struct {
									Name *string `tfsdk:"name" json:"name,omitempty"`
								} `tfsdk:"secret_ref" json:"secretRef,omitempty"`
							} `tfsdk:"flex_volume" json:"flexVolume,omitempty"`
							Flocker *struct {
								DatasetName *string `tfsdk:"dataset_name" json:"datasetName,omitempty"`
								DatasetUUID *string `tfsdk:"dataset_uuid" json:"datasetUUID,omitempty"`
							} `tfsdk:"flocker" json:"flocker,omitempty"`
							GcePersistentDisk *struct {
								FsType    *string `tfsdk:"fs_type" json:"fsType,omitempty"`
								Partition *int64  `tfsdk:"partition" json:"partition,omitempty"`
								PdName    *string `tfsdk:"pd_name" json:"pdName,omitempty"`
								ReadOnly  *bool   `tfsdk:"read_only" json:"readOnly,omitempty"`
							} `tfsdk:"gce_persistent_disk" json:"gcePersistentDisk,omitempty"`
							GitRepo *struct {
								Directory  *string `tfsdk:"directory" json:"directory,omitempty"`
								Repository *string `tfsdk:"repository" json:"repository,omitempty"`
								Revision   *string `tfsdk:"revision" json:"revision,omitempty"`
							} `tfsdk:"git_repo" json:"gitRepo,omitempty"`
							Glusterfs *struct {
								Endpoints *string `tfsdk:"endpoints" json:"endpoints,omitempty"`
								Path      *string `tfsdk:"path" json:"path,omitempty"`
								ReadOnly  *bool   `tfsdk:"read_only" json:"readOnly,omitempty"`
							} `tfsdk:"glusterfs" json:"glusterfs,omitempty"`
							HostPath *struct {
								Path *string `tfsdk:"path" json:"path,omitempty"`
								Type *string `tfsdk:"type" json:"type,omitempty"`
							} `tfsdk:"host_path" json:"hostPath,omitempty"`
							Iscsi *struct {
								ChapAuthDiscovery *bool     `tfsdk:"chap_auth_discovery" json:"chapAuthDiscovery,omitempty"`
								ChapAuthSession   *bool     `tfsdk:"chap_auth_session" json:"chapAuthSession,omitempty"`
								FsType            *string   `tfsdk:"fs_type" json:"fsType,omitempty"`
								InitiatorName     *string   `tfsdk:"initiator_name" json:"initiatorName,omitempty"`
								Iqn               *string   `tfsdk:"iqn" json:"iqn,omitempty"`
								IscsiInterface    *string   `tfsdk:"iscsi_interface" json:"iscsiInterface,omitempty"`
								Lun               *int64    `tfsdk:"lun" json:"lun,omitempty"`
								Portals           *[]string `tfsdk:"portals" json:"portals,omitempty"`
								ReadOnly          *bool     `tfsdk:"read_only" json:"readOnly,omitempty"`
								SecretRef         *struct {
									Name *string `tfsdk:"name" json:"name,omitempty"`
								} `tfsdk:"secret_ref" json:"secretRef,omitempty"`
								TargetPortal *string `tfsdk:"target_portal" json:"targetPortal,omitempty"`
							} `tfsdk:"iscsi" json:"iscsi,omitempty"`
							Nfs *struct {
								Path     *string `tfsdk:"path" json:"path,omitempty"`
								ReadOnly *bool   `tfsdk:"read_only" json:"readOnly,omitempty"`
								Server   *string `tfsdk:"server" json:"server,omitempty"`
							} `tfsdk:"nfs" json:"nfs,omitempty"`
							PersistentVolumeClaim *struct {
								ClaimName *string `tfsdk:"claim_name" json:"claimName,omitempty"`
								ReadOnly  *bool   `tfsdk:"read_only" json:"readOnly,omitempty"`
							} `tfsdk:"persistent_volume_claim" json:"persistentVolumeClaim,omitempty"`
							PhotonPersistentDisk *struct {
								FsType *string `tfsdk:"fs_type" json:"fsType,omitempty"`
								PdID   *string `tfsdk:"pd_id" json:"pdID,omitempty"`
							} `tfsdk:"photon_persistent_disk" json:"photonPersistentDisk,omitempty"`
							PortworxVolume *struct {
								FsType   *string `tfsdk:"fs_type" json:"fsType,omitempty"`
								ReadOnly *bool   `tfsdk:"read_only" json:"readOnly,omitempty"`
								VolumeID *string `tfsdk:"volume_id" json:"volumeID,omitempty"`
							} `tfsdk:"portworx_volume" json:"portworxVolume,omitempty"`
							Projected *struct {
								DefaultMode *int64 `tfsdk:"default_mode" json:"defaultMode,omitempty"`
								Sources     *[]struct {
									ConfigMap *struct {
										Items *[]struct {
											Key  *string `tfsdk:"key" json:"key,omitempty"`
											Mode *int64  `tfsdk:"mode" json:"mode,omitempty"`
											Path *string `tfsdk:"path" json:"path,omitempty"`
										} `tfsdk:"items" json:"items,omitempty"`
										LocalObjectReference *struct {
											Name *string `tfsdk:"name" json:"name,omitempty"`
										} `tfsdk:"local_object_reference" json:"localObjectReference,omitempty"`
										Optional *bool `tfsdk:"optional" json:"optional,omitempty"`
									} `tfsdk:"config_map" json:"configMap,omitempty"`
									DownwardAPI *struct {
										Items *[]struct {
											FieldRef *struct {
												ApiVersion *string `tfsdk:"api_version" json:"apiVersion,omitempty"`
												FieldPath  *string `tfsdk:"field_path" json:"fieldPath,omitempty"`
											} `tfsdk:"field_ref" json:"fieldRef,omitempty"`
											Mode             *int64  `tfsdk:"mode" json:"mode,omitempty"`
											Path             *string `tfsdk:"path" json:"path,omitempty"`
											ResourceFieldRef *struct {
												ContainerName *string `tfsdk:"container_name" json:"containerName,omitempty"`
												Divisor       *string `tfsdk:"divisor" json:"divisor,omitempty"`
												Resource      *string `tfsdk:"resource" json:"resource,omitempty"`
											} `tfsdk:"resource_field_ref" json:"resourceFieldRef,omitempty"`
										} `tfsdk:"items" json:"items,omitempty"`
									} `tfsdk:"downward_api" json:"downwardAPI,omitempty"`
									Secret *struct {
										Items *[]struct {
											Key  *string `tfsdk:"key" json:"key,omitempty"`
											Mode *int64  `tfsdk:"mode" json:"mode,omitempty"`
											Path *string `tfsdk:"path" json:"path,omitempty"`
										} `tfsdk:"items" json:"items,omitempty"`
										LocalObjectReference *struct {
											Name *string `tfsdk:"name" json:"name,omitempty"`
										} `tfsdk:"local_object_reference" json:"localObjectReference,omitempty"`
										Optional *bool `tfsdk:"optional" json:"optional,omitempty"`
									} `tfsdk:"secret" json:"secret,omitempty"`
									ServiceAccountToken *struct {
										Audience          *string `tfsdk:"audience" json:"audience,omitempty"`
										ExpirationSeconds *int64  `tfsdk:"expiration_seconds" json:"expirationSeconds,omitempty"`
										Path              *string `tfsdk:"path" json:"path,omitempty"`
									} `tfsdk:"service_account_token" json:"serviceAccountToken,omitempty"`
								} `tfsdk:"sources" json:"sources,omitempty"`
							} `tfsdk:"projected" json:"projected,omitempty"`
							Quobyte *struct {
								Group    *string `tfsdk:"group" json:"group,omitempty"`
								ReadOnly *bool   `tfsdk:"read_only" json:"readOnly,omitempty"`
								Registry *string `tfsdk:"registry" json:"registry,omitempty"`
								Tenant   *string `tfsdk:"tenant" json:"tenant,omitempty"`
								User     *string `tfsdk:"user" json:"user,omitempty"`
								Volume   *string `tfsdk:"volume" json:"volume,omitempty"`
							} `tfsdk:"quobyte" json:"quobyte,omitempty"`
							Rbd *struct {
								FsType    *string   `tfsdk:"fs_type" json:"fsType,omitempty"`
								Image     *string   `tfsdk:"image" json:"image,omitempty"`
								Keyring   *string   `tfsdk:"keyring" json:"keyring,omitempty"`
								Monitors  *[]string `tfsdk:"monitors" json:"monitors,omitempty"`
								Pool      *string   `tfsdk:"pool" json:"pool,omitempty"`
								ReadOnly  *bool     `tfsdk:"read_only" json:"readOnly,omitempty"`
								SecretRef *struct {
									Name *string `tfsdk:"name" json:"name,omitempty"`
								} `tfsdk:"secret_ref" json:"secretRef,omitempty"`
								User *string `tfsdk:"user" json:"user,omitempty"`
							} `tfsdk:"rbd" json:"rbd,omitempty"`
							ScaleIO *struct {
								FsType           *string `tfsdk:"fs_type" json:"fsType,omitempty"`
								Gateway          *string `tfsdk:"gateway" json:"gateway,omitempty"`
								ProtectionDomain *string `tfsdk:"protection_domain" json:"protectionDomain,omitempty"`
								ReadOnly         *bool   `tfsdk:"read_only" json:"readOnly,omitempty"`
								SecretRef        *struct {
									Name *string `tfsdk:"name" json:"name,omitempty"`
								} `tfsdk:"secret_ref" json:"secretRef,omitempty"`
								SslEnabled  *bool   `tfsdk:"ssl_enabled" json:"sslEnabled,omitempty"`
								StorageMode *string `tfsdk:"storage_mode" json:"storageMode,omitempty"`
								StoragePool *string `tfsdk:"storage_pool" json:"storagePool,omitempty"`
								System      *string `tfsdk:"system" json:"system,omitempty"`
								VolumeName  *string `tfsdk:"volume_name" json:"volumeName,omitempty"`
							} `tfsdk:"scale_io" json:"scaleIO,omitempty"`
							Secret *struct {
								DefaultMode *int64 `tfsdk:"default_mode" json:"defaultMode,omitempty"`
								Items       *[]struct {
									Key  *string `tfsdk:"key" json:"key,omitempty"`
									Mode *int64  `tfsdk:"mode" json:"mode,omitempty"`
									Path *string `tfsdk:"path" json:"path,omitempty"`
								} `tfsdk:"items" json:"items,omitempty"`
								Optional   *bool   `tfsdk:"optional" json:"optional,omitempty"`
								SecretName *string `tfsdk:"secret_name" json:"secretName,omitempty"`
							} `tfsdk:"secret" json:"secret,omitempty"`
							Storageos *struct {
								FsType    *string `tfsdk:"fs_type" json:"fsType,omitempty"`
								ReadOnly  *bool   `tfsdk:"read_only" json:"readOnly,omitempty"`
								SecretRef *struct {
									Name *string `tfsdk:"name" json:"name,omitempty"`
								} `tfsdk:"secret_ref" json:"secretRef,omitempty"`
								VolumeName      *string `tfsdk:"volume_name" json:"volumeName,omitempty"`
								VolumeNamespace *string `tfsdk:"volume_namespace" json:"volumeNamespace,omitempty"`
							} `tfsdk:"storageos" json:"storageos,omitempty"`
							VsphereVolume *struct {
								FsType            *string `tfsdk:"fs_type" json:"fsType,omitempty"`
								StoragePolicyID   *string `tfsdk:"storage_policy_id" json:"storagePolicyID,omitempty"`
								StoragePolicyName *string `tfsdk:"storage_policy_name" json:"storagePolicyName,omitempty"`
								VolumePath        *string `tfsdk:"volume_path" json:"volumePath,omitempty"`
							} `tfsdk:"vsphere_volume" json:"vsphereVolume,omitempty"`
						} `tfsdk:"volume_source" json:"volumeSource,omitempty"`
					} `tfsdk:"volumes" json:"volumes,omitempty"`
				} `tfsdk:"daemonset" json:"daemonset,omitempty"`
				Enabled            *bool     `tfsdk:"enabled" json:"enabled,omitempty"`
				ExcludeNamespaces  *[]string `tfsdk:"exclude_namespaces" json:"excludeNamespaces,omitempty"`
				IncludeNamespaces  *[]string `tfsdk:"include_namespaces" json:"includeNamespaces,omitempty"`
				LogLevel           *string   `tfsdk:"log_level" json:"logLevel,omitempty"`
				PspClusterRoleName *string   `tfsdk:"psp_cluster_role_name" json:"pspClusterRoleName,omitempty"`
				Repair             *struct {
					BrokenPodLabelKey   *string `tfsdk:"broken_pod_label_key" json:"brokenPodLabelKey,omitempty"`
					BrokenPodLabelValue *string `tfsdk:"broken_pod_label_value" json:"brokenPodLabelValue,omitempty"`
					DeletePods          *bool   `tfsdk:"delete_pods" json:"deletePods,omitempty"`
					Enabled             *bool   `tfsdk:"enabled" json:"enabled,omitempty"`
					InitContainerName   *string `tfsdk:"init_container_name" json:"initContainerName,omitempty"`
					LabelPods           *bool   `tfsdk:"label_pods" json:"labelPods,omitempty"`
				} `tfsdk:"repair" json:"repair,omitempty"`
				ResourceQuotas *struct {
					Enabled         *bool     `tfsdk:"enabled" json:"enabled,omitempty"`
					Pods            *string   `tfsdk:"pods" json:"pods,omitempty"`
					PriorityClasses *[]string `tfsdk:"priority_classes" json:"priorityClasses,omitempty"`
				} `tfsdk:"resource_quotas" json:"resourceQuotas,omitempty"`
				Taint *struct {
					Container *struct {
						Env *[]struct {
							Name      *string `tfsdk:"name" json:"name,omitempty"`
							Value     *string `tfsdk:"value" json:"value,omitempty"`
							ValueFrom *struct {
								ConfigMapKeyRef *struct {
									Key                  *string `tfsdk:"key" json:"key,omitempty"`
									LocalObjectReference *struct {
										Name *string `tfsdk:"name" json:"name,omitempty"`
									} `tfsdk:"local_object_reference" json:"localObjectReference,omitempty"`
									Optional *bool `tfsdk:"optional" json:"optional,omitempty"`
								} `tfsdk:"config_map_key_ref" json:"configMapKeyRef,omitempty"`
								FieldRef *struct {
									ApiVersion *string `tfsdk:"api_version" json:"apiVersion,omitempty"`
									FieldPath  *string `tfsdk:"field_path" json:"fieldPath,omitempty"`
								} `tfsdk:"field_ref" json:"fieldRef,omitempty"`
								ResourceFieldRef *struct {
									ContainerName *string `tfsdk:"container_name" json:"containerName,omitempty"`
									Divisor       *string `tfsdk:"divisor" json:"divisor,omitempty"`
									Resource      *string `tfsdk:"resource" json:"resource,omitempty"`
								} `tfsdk:"resource_field_ref" json:"resourceFieldRef,omitempty"`
								SecretKeyRef *struct {
									Key                  *string `tfsdk:"key" json:"key,omitempty"`
									LocalObjectReference *struct {
										Name *string `tfsdk:"name" json:"name,omitempty"`
									} `tfsdk:"local_object_reference" json:"localObjectReference,omitempty"`
									Optional *bool `tfsdk:"optional" json:"optional,omitempty"`
								} `tfsdk:"secret_key_ref" json:"secretKeyRef,omitempty"`
							} `tfsdk:"value_from" json:"valueFrom,omitempty"`
						} `tfsdk:"env" json:"env,omitempty"`
						Image     *string `tfsdk:"image" json:"image,omitempty"`
						Resources *struct {
							Limits   *map[string]string `tfsdk:"limits" json:"limits,omitempty"`
							Requests *map[string]string `tfsdk:"requests" json:"requests,omitempty"`
						} `tfsdk:"resources" json:"resources,omitempty"`
						SecurityContext *struct {
							AllowPrivilegeEscalation *bool `tfsdk:"allow_privilege_escalation" json:"allowPrivilegeEscalation,omitempty"`
							Capabilities             *struct {
								Add  *[]string `tfsdk:"add" json:"add,omitempty"`
								Drop *[]string `tfsdk:"drop" json:"drop,omitempty"`
							} `tfsdk:"capabilities" json:"capabilities,omitempty"`
							Privileged             *bool   `tfsdk:"privileged" json:"privileged,omitempty"`
							ProcMount              *string `tfsdk:"proc_mount" json:"procMount,omitempty"`
							ReadOnlyRootFilesystem *bool   `tfsdk:"read_only_root_filesystem" json:"readOnlyRootFilesystem,omitempty"`
							RunAsGroup             *int64  `tfsdk:"run_as_group" json:"runAsGroup,omitempty"`
							RunAsNonRoot           *bool   `tfsdk:"run_as_non_root" json:"runAsNonRoot,omitempty"`
							RunAsUser              *int64  `tfsdk:"run_as_user" json:"runAsUser,omitempty"`
							SeLinuxOptions         *struct {
								Level *string `tfsdk:"level" json:"level,omitempty"`
								Role  *string `tfsdk:"role" json:"role,omitempty"`
								Type  *string `tfsdk:"type" json:"type,omitempty"`
								User  *string `tfsdk:"user" json:"user,omitempty"`
							} `tfsdk:"se_linux_options" json:"seLinuxOptions,omitempty"`
							SeccompProfile *struct {
								LocalhostProfile *string `tfsdk:"localhost_profile" json:"localhostProfile,omitempty"`
								Type             *string `tfsdk:"type" json:"type,omitempty"`
							} `tfsdk:"seccomp_profile" json:"seccompProfile,omitempty"`
							WindowsOptions *struct {
								GmsaCredentialSpec     *string `tfsdk:"gmsa_credential_spec" json:"gmsaCredentialSpec,omitempty"`
								GmsaCredentialSpecName *string `tfsdk:"gmsa_credential_spec_name" json:"gmsaCredentialSpecName,omitempty"`
								HostProcess            *bool   `tfsdk:"host_process" json:"hostProcess,omitempty"`
								RunAsUserName          *string `tfsdk:"run_as_user_name" json:"runAsUserName,omitempty"`
							} `tfsdk:"windows_options" json:"windowsOptions,omitempty"`
						} `tfsdk:"security_context" json:"securityContext,omitempty"`
						VolumeMounts *[]struct {
							MountPath        *string `tfsdk:"mount_path" json:"mountPath,omitempty"`
							MountPropagation *string `tfsdk:"mount_propagation" json:"mountPropagation,omitempty"`
							Name             *string `tfsdk:"name" json:"name,omitempty"`
							ReadOnly         *bool   `tfsdk:"read_only" json:"readOnly,omitempty"`
							SubPath          *string `tfsdk:"sub_path" json:"subPath,omitempty"`
							SubPathExpr      *string `tfsdk:"sub_path_expr" json:"subPathExpr,omitempty"`
						} `tfsdk:"volume_mounts" json:"volumeMounts,omitempty"`
					} `tfsdk:"container" json:"container,omitempty"`
					Enabled *bool `tfsdk:"enabled" json:"enabled,omitempty"`
				} `tfsdk:"taint" json:"taint,omitempty"`
			} `tfsdk:"cni" json:"cni,omitempty"`
			Image     *string `tfsdk:"image" json:"image,omitempty"`
			Resources *struct {
				Limits   *map[string]string `tfsdk:"limits" json:"limits,omitempty"`
				Requests *map[string]string `tfsdk:"requests" json:"requests,omitempty"`
			} `tfsdk:"resources" json:"resources,omitempty"`
		} `tfsdk:"proxy_init" json:"proxyInit,omitempty"`
		ProxyWasm *struct {
			Enabled *bool `tfsdk:"enabled" json:"enabled,omitempty"`
		} `tfsdk:"proxy_wasm" json:"proxyWasm,omitempty"`
		Sds *struct {
			TokenAudience *string `tfsdk:"token_audience" json:"tokenAudience,omitempty"`
		} `tfsdk:"sds" json:"sds,omitempty"`
		SidecarInjector *struct {
			Deployment *struct {
				Affinity *struct {
					NodeAffinity *struct {
						PreferredDuringSchedulingIgnoredDuringExecution *[]struct {
							Preference *struct {
								MatchExpressions *[]struct {
									Key      *string   `tfsdk:"key" json:"key,omitempty"`
									Operator *string   `tfsdk:"operator" json:"operator,omitempty"`
									Values   *[]string `tfsdk:"values" json:"values,omitempty"`
								} `tfsdk:"match_expressions" json:"matchExpressions,omitempty"`
								MatchFields *[]struct {
									Key      *string   `tfsdk:"key" json:"key,omitempty"`
									Operator *string   `tfsdk:"operator" json:"operator,omitempty"`
									Values   *[]string `tfsdk:"values" json:"values,omitempty"`
								} `tfsdk:"match_fields" json:"matchFields,omitempty"`
							} `tfsdk:"preference" json:"preference,omitempty"`
							Weight *int64 `tfsdk:"weight" json:"weight,omitempty"`
						} `tfsdk:"preferred_during_scheduling_ignored_during_execution" json:"preferredDuringSchedulingIgnoredDuringExecution,omitempty"`
						RequiredDuringSchedulingIgnoredDuringExecution *struct {
							NodeSelectorTerms *[]struct {
								MatchExpressions *[]struct {
									Key      *string   `tfsdk:"key" json:"key,omitempty"`
									Operator *string   `tfsdk:"operator" json:"operator,omitempty"`
									Values   *[]string `tfsdk:"values" json:"values,omitempty"`
								} `tfsdk:"match_expressions" json:"matchExpressions,omitempty"`
								MatchFields *[]struct {
									Key      *string   `tfsdk:"key" json:"key,omitempty"`
									Operator *string   `tfsdk:"operator" json:"operator,omitempty"`
									Values   *[]string `tfsdk:"values" json:"values,omitempty"`
								} `tfsdk:"match_fields" json:"matchFields,omitempty"`
							} `tfsdk:"node_selector_terms" json:"nodeSelectorTerms,omitempty"`
						} `tfsdk:"required_during_scheduling_ignored_during_execution" json:"requiredDuringSchedulingIgnoredDuringExecution,omitempty"`
					} `tfsdk:"node_affinity" json:"nodeAffinity,omitempty"`
					PodAffinity *struct {
						PreferredDuringSchedulingIgnoredDuringExecution *[]struct {
							PodAffinityTerm *struct {
								LabelSelector *struct {
									MatchExpressions *[]struct {
										Key      *string   `tfsdk:"key" json:"key,omitempty"`
										Operator *string   `tfsdk:"operator" json:"operator,omitempty"`
										Values   *[]string `tfsdk:"values" json:"values,omitempty"`
									} `tfsdk:"match_expressions" json:"matchExpressions,omitempty"`
									MatchLabels *map[string]string `tfsdk:"match_labels" json:"matchLabels,omitempty"`
								} `tfsdk:"label_selector" json:"labelSelector,omitempty"`
								NamespaceSelector *struct {
									MatchExpressions *[]struct {
										Key      *string   `tfsdk:"key" json:"key,omitempty"`
										Operator *string   `tfsdk:"operator" json:"operator,omitempty"`
										Values   *[]string `tfsdk:"values" json:"values,omitempty"`
									} `tfsdk:"match_expressions" json:"matchExpressions,omitempty"`
									MatchLabels *map[string]string `tfsdk:"match_labels" json:"matchLabels,omitempty"`
								} `tfsdk:"namespace_selector" json:"namespaceSelector,omitempty"`
								Namespaces  *[]string `tfsdk:"namespaces" json:"namespaces,omitempty"`
								TopologyKey *string   `tfsdk:"topology_key" json:"topologyKey,omitempty"`
							} `tfsdk:"pod_affinity_term" json:"podAffinityTerm,omitempty"`
							Weight *int64 `tfsdk:"weight" json:"weight,omitempty"`
						} `tfsdk:"preferred_during_scheduling_ignored_during_execution" json:"preferredDuringSchedulingIgnoredDuringExecution,omitempty"`
						RequiredDuringSchedulingIgnoredDuringExecution *[]struct {
							LabelSelector *struct {
								MatchExpressions *[]struct {
									Key      *string   `tfsdk:"key" json:"key,omitempty"`
									Operator *string   `tfsdk:"operator" json:"operator,omitempty"`
									Values   *[]string `tfsdk:"values" json:"values,omitempty"`
								} `tfsdk:"match_expressions" json:"matchExpressions,omitempty"`
								MatchLabels *map[string]string `tfsdk:"match_labels" json:"matchLabels,omitempty"`
							} `tfsdk:"label_selector" json:"labelSelector,omitempty"`
							NamespaceSelector *struct {
								MatchExpressions *[]struct {
									Key      *string   `tfsdk:"key" json:"key,omitempty"`
									Operator *string   `tfsdk:"operator" json:"operator,omitempty"`
									Values   *[]string `tfsdk:"values" json:"values,omitempty"`
								} `tfsdk:"match_expressions" json:"matchExpressions,omitempty"`
								MatchLabels *map[string]string `tfsdk:"match_labels" json:"matchLabels,omitempty"`
							} `tfsdk:"namespace_selector" json:"namespaceSelector,omitempty"`
							Namespaces  *[]string `tfsdk:"namespaces" json:"namespaces,omitempty"`
							TopologyKey *string   `tfsdk:"topology_key" json:"topologyKey,omitempty"`
						} `tfsdk:"required_during_scheduling_ignored_during_execution" json:"requiredDuringSchedulingIgnoredDuringExecution,omitempty"`
					} `tfsdk:"pod_affinity" json:"podAffinity,omitempty"`
					PodAntiAffinity *struct {
						PreferredDuringSchedulingIgnoredDuringExecution *[]struct {
							PodAffinityTerm *struct {
								LabelSelector *struct {
									MatchExpressions *[]struct {
										Key      *string   `tfsdk:"key" json:"key,omitempty"`
										Operator *string   `tfsdk:"operator" json:"operator,omitempty"`
										Values   *[]string `tfsdk:"values" json:"values,omitempty"`
									} `tfsdk:"match_expressions" json:"matchExpressions,omitempty"`
									MatchLabels *map[string]string `tfsdk:"match_labels" json:"matchLabels,omitempty"`
								} `tfsdk:"label_selector" json:"labelSelector,omitempty"`
								NamespaceSelector *struct {
									MatchExpressions *[]struct {
										Key      *string   `tfsdk:"key" json:"key,omitempty"`
										Operator *string   `tfsdk:"operator" json:"operator,omitempty"`
										Values   *[]string `tfsdk:"values" json:"values,omitempty"`
									} `tfsdk:"match_expressions" json:"matchExpressions,omitempty"`
									MatchLabels *map[string]string `tfsdk:"match_labels" json:"matchLabels,omitempty"`
								} `tfsdk:"namespace_selector" json:"namespaceSelector,omitempty"`
								Namespaces  *[]string `tfsdk:"namespaces" json:"namespaces,omitempty"`
								TopologyKey *string   `tfsdk:"topology_key" json:"topologyKey,omitempty"`
							} `tfsdk:"pod_affinity_term" json:"podAffinityTerm,omitempty"`
							Weight *int64 `tfsdk:"weight" json:"weight,omitempty"`
						} `tfsdk:"preferred_during_scheduling_ignored_during_execution" json:"preferredDuringSchedulingIgnoredDuringExecution,omitempty"`
						RequiredDuringSchedulingIgnoredDuringExecution *[]struct {
							LabelSelector *struct {
								MatchExpressions *[]struct {
									Key      *string   `tfsdk:"key" json:"key,omitempty"`
									Operator *string   `tfsdk:"operator" json:"operator,omitempty"`
									Values   *[]string `tfsdk:"values" json:"values,omitempty"`
								} `tfsdk:"match_expressions" json:"matchExpressions,omitempty"`
								MatchLabels *map[string]string `tfsdk:"match_labels" json:"matchLabels,omitempty"`
							} `tfsdk:"label_selector" json:"labelSelector,omitempty"`
							NamespaceSelector *struct {
								MatchExpressions *[]struct {
									Key      *string   `tfsdk:"key" json:"key,omitempty"`
									Operator *string   `tfsdk:"operator" json:"operator,omitempty"`
									Values   *[]string `tfsdk:"values" json:"values,omitempty"`
								} `tfsdk:"match_expressions" json:"matchExpressions,omitempty"`
								MatchLabels *map[string]string `tfsdk:"match_labels" json:"matchLabels,omitempty"`
							} `tfsdk:"namespace_selector" json:"namespaceSelector,omitempty"`
							Namespaces  *[]string `tfsdk:"namespaces" json:"namespaces,omitempty"`
							TopologyKey *string   `tfsdk:"topology_key" json:"topologyKey,omitempty"`
						} `tfsdk:"required_during_scheduling_ignored_during_execution" json:"requiredDuringSchedulingIgnoredDuringExecution,omitempty"`
					} `tfsdk:"pod_anti_affinity" json:"podAntiAffinity,omitempty"`
				} `tfsdk:"affinity" json:"affinity,omitempty"`
				DeploymentStrategy *struct {
					RollingUpdate *struct {
						MaxSurge       *string `tfsdk:"max_surge" json:"maxSurge,omitempty"`
						MaxUnavailable *string `tfsdk:"max_unavailable" json:"maxUnavailable,omitempty"`
					} `tfsdk:"rolling_update" json:"rollingUpdate,omitempty"`
					Type *string `tfsdk:"type" json:"type,omitempty"`
				} `tfsdk:"deployment_strategy" json:"deploymentStrategy,omitempty"`
				Env *[]struct {
					Name      *string `tfsdk:"name" json:"name,omitempty"`
					Value     *string `tfsdk:"value" json:"value,omitempty"`
					ValueFrom *struct {
						ConfigMapKeyRef *struct {
							Key                  *string `tfsdk:"key" json:"key,omitempty"`
							LocalObjectReference *struct {
								Name *string `tfsdk:"name" json:"name,omitempty"`
							} `tfsdk:"local_object_reference" json:"localObjectReference,omitempty"`
							Optional *bool `tfsdk:"optional" json:"optional,omitempty"`
						} `tfsdk:"config_map_key_ref" json:"configMapKeyRef,omitempty"`
						FieldRef *struct {
							ApiVersion *string `tfsdk:"api_version" json:"apiVersion,omitempty"`
							FieldPath  *string `tfsdk:"field_path" json:"fieldPath,omitempty"`
						} `tfsdk:"field_ref" json:"fieldRef,omitempty"`
						ResourceFieldRef *struct {
							ContainerName *string `tfsdk:"container_name" json:"containerName,omitempty"`
							Divisor       *string `tfsdk:"divisor" json:"divisor,omitempty"`
							Resource      *string `tfsdk:"resource" json:"resource,omitempty"`
						} `tfsdk:"resource_field_ref" json:"resourceFieldRef,omitempty"`
						SecretKeyRef *struct {
							Key                  *string `tfsdk:"key" json:"key,omitempty"`
							LocalObjectReference *struct {
								Name *string `tfsdk:"name" json:"name,omitempty"`
							} `tfsdk:"local_object_reference" json:"localObjectReference,omitempty"`
							Optional *bool `tfsdk:"optional" json:"optional,omitempty"`
						} `tfsdk:"secret_key_ref" json:"secretKeyRef,omitempty"`
					} `tfsdk:"value_from" json:"valueFrom,omitempty"`
				} `tfsdk:"env" json:"env,omitempty"`
				Image            *string `tfsdk:"image" json:"image,omitempty"`
				ImagePullPolicy  *string `tfsdk:"image_pull_policy" json:"imagePullPolicy,omitempty"`
				ImagePullSecrets *[]struct {
					Name *string `tfsdk:"name" json:"name,omitempty"`
				} `tfsdk:"image_pull_secrets" json:"imagePullSecrets,omitempty"`
				LivenessProbe *struct {
					Exec *struct {
						Command *[]string `tfsdk:"command" json:"command,omitempty"`
					} `tfsdk:"exec" json:"exec,omitempty"`
					FailureThreshold *int64 `tfsdk:"failure_threshold" json:"failureThreshold,omitempty"`
					Grpc             *struct {
						Port    *int64  `tfsdk:"port" json:"port,omitempty"`
						Service *string `tfsdk:"service" json:"service,omitempty"`
					} `tfsdk:"grpc" json:"grpc,omitempty"`
					HttpGet *struct {
						Host        *string `tfsdk:"host" json:"host,omitempty"`
						HttpHeaders *[]struct {
							Name  *string `tfsdk:"name" json:"name,omitempty"`
							Value *string `tfsdk:"value" json:"value,omitempty"`
						} `tfsdk:"http_headers" json:"httpHeaders,omitempty"`
						Path   *string `tfsdk:"path" json:"path,omitempty"`
						Port   *string `tfsdk:"port" json:"port,omitempty"`
						Scheme *string `tfsdk:"scheme" json:"scheme,omitempty"`
					} `tfsdk:"http_get" json:"httpGet,omitempty"`
					InitialDelaySeconds *int64 `tfsdk:"initial_delay_seconds" json:"initialDelaySeconds,omitempty"`
					PeriodSeconds       *int64 `tfsdk:"period_seconds" json:"periodSeconds,omitempty"`
					SuccessThreshold    *int64 `tfsdk:"success_threshold" json:"successThreshold,omitempty"`
					TcpSocket           *struct {
						Host *string `tfsdk:"host" json:"host,omitempty"`
						Port *string `tfsdk:"port" json:"port,omitempty"`
					} `tfsdk:"tcp_socket" json:"tcpSocket,omitempty"`
					TerminationGracePeriodSeconds *int64 `tfsdk:"termination_grace_period_seconds" json:"terminationGracePeriodSeconds,omitempty"`
					TimeoutSeconds                *int64 `tfsdk:"timeout_seconds" json:"timeoutSeconds,omitempty"`
				} `tfsdk:"liveness_probe" json:"livenessProbe,omitempty"`
				Metadata *struct {
					Annotations *map[string]string `tfsdk:"annotations" json:"annotations,omitempty"`
					Labels      *map[string]string `tfsdk:"labels" json:"labels,omitempty"`
				} `tfsdk:"metadata" json:"metadata,omitempty"`
				NodeSelector        *map[string]string `tfsdk:"node_selector" json:"nodeSelector,omitempty"`
				PodDisruptionBudget *struct {
					MaxUnavailable *string `tfsdk:"max_unavailable" json:"maxUnavailable,omitempty"`
					MinAvailable   *string `tfsdk:"min_available" json:"minAvailable,omitempty"`
				} `tfsdk:"pod_disruption_budget" json:"podDisruptionBudget,omitempty"`
				PodMetadata *struct {
					Annotations *map[string]string `tfsdk:"annotations" json:"annotations,omitempty"`
					Labels      *map[string]string `tfsdk:"labels" json:"labels,omitempty"`
				} `tfsdk:"pod_metadata" json:"podMetadata,omitempty"`
				PodSecurityContext *struct {
					FsGroup             *int64  `tfsdk:"fs_group" json:"fsGroup,omitempty"`
					FsGroupChangePolicy *string `tfsdk:"fs_group_change_policy" json:"fsGroupChangePolicy,omitempty"`
					RunAsGroup          *int64  `tfsdk:"run_as_group" json:"runAsGroup,omitempty"`
					RunAsNonRoot        *bool   `tfsdk:"run_as_non_root" json:"runAsNonRoot,omitempty"`
					RunAsUser           *int64  `tfsdk:"run_as_user" json:"runAsUser,omitempty"`
					SeLinuxOptions      *struct {
						Level *string `tfsdk:"level" json:"level,omitempty"`
						Role  *string `tfsdk:"role" json:"role,omitempty"`
						Type  *string `tfsdk:"type" json:"type,omitempty"`
						User  *string `tfsdk:"user" json:"user,omitempty"`
					} `tfsdk:"se_linux_options" json:"seLinuxOptions,omitempty"`
					SeccompProfile *struct {
						LocalhostProfile *string `tfsdk:"localhost_profile" json:"localhostProfile,omitempty"`
						Type             *string `tfsdk:"type" json:"type,omitempty"`
					} `tfsdk:"seccomp_profile" json:"seccompProfile,omitempty"`
					SupplementalGroups *[]string `tfsdk:"supplemental_groups" json:"supplementalGroups,omitempty"`
					Sysctls            *[]struct {
						Name  *string `tfsdk:"name" json:"name,omitempty"`
						Value *string `tfsdk:"value" json:"value,omitempty"`
					} `tfsdk:"sysctls" json:"sysctls,omitempty"`
					WindowsOptions *struct {
						GmsaCredentialSpec     *string `tfsdk:"gmsa_credential_spec" json:"gmsaCredentialSpec,omitempty"`
						GmsaCredentialSpecName *string `tfsdk:"gmsa_credential_spec_name" json:"gmsaCredentialSpecName,omitempty"`
						HostProcess            *bool   `tfsdk:"host_process" json:"hostProcess,omitempty"`
						RunAsUserName          *string `tfsdk:"run_as_user_name" json:"runAsUserName,omitempty"`
					} `tfsdk:"windows_options" json:"windowsOptions,omitempty"`
				} `tfsdk:"pod_security_context" json:"podSecurityContext,omitempty"`
				PriorityClassName *string `tfsdk:"priority_class_name" json:"priorityClassName,omitempty"`
				ReadinessProbe    *struct {
					Exec *struct {
						Command *[]string `tfsdk:"command" json:"command,omitempty"`
					} `tfsdk:"exec" json:"exec,omitempty"`
					FailureThreshold *int64 `tfsdk:"failure_threshold" json:"failureThreshold,omitempty"`
					Grpc             *struct {
						Port    *int64  `tfsdk:"port" json:"port,omitempty"`
						Service *string `tfsdk:"service" json:"service,omitempty"`
					} `tfsdk:"grpc" json:"grpc,omitempty"`
					HttpGet *struct {
						Host        *string `tfsdk:"host" json:"host,omitempty"`
						HttpHeaders *[]struct {
							Name  *string `tfsdk:"name" json:"name,omitempty"`
							Value *string `tfsdk:"value" json:"value,omitempty"`
						} `tfsdk:"http_headers" json:"httpHeaders,omitempty"`
						Path   *string `tfsdk:"path" json:"path,omitempty"`
						Port   *string `tfsdk:"port" json:"port,omitempty"`
						Scheme *string `tfsdk:"scheme" json:"scheme,omitempty"`
					} `tfsdk:"http_get" json:"httpGet,omitempty"`
					InitialDelaySeconds *int64 `tfsdk:"initial_delay_seconds" json:"initialDelaySeconds,omitempty"`
					PeriodSeconds       *int64 `tfsdk:"period_seconds" json:"periodSeconds,omitempty"`
					SuccessThreshold    *int64 `tfsdk:"success_threshold" json:"successThreshold,omitempty"`
					TcpSocket           *struct {
						Host *string `tfsdk:"host" json:"host,omitempty"`
						Port *string `tfsdk:"port" json:"port,omitempty"`
					} `tfsdk:"tcp_socket" json:"tcpSocket,omitempty"`
					TerminationGracePeriodSeconds *int64 `tfsdk:"termination_grace_period_seconds" json:"terminationGracePeriodSeconds,omitempty"`
					TimeoutSeconds                *int64 `tfsdk:"timeout_seconds" json:"timeoutSeconds,omitempty"`
				} `tfsdk:"readiness_probe" json:"readinessProbe,omitempty"`
				Replicas *struct {
					Count                          *int64 `tfsdk:"count" json:"count,omitempty"`
					Max                            *int64 `tfsdk:"max" json:"max,omitempty"`
					Min                            *int64 `tfsdk:"min" json:"min,omitempty"`
					TargetCPUUtilizationPercentage *int64 `tfsdk:"target_cpu_utilization_percentage" json:"targetCPUUtilizationPercentage,omitempty"`
				} `tfsdk:"replicas" json:"replicas,omitempty"`
				Resources *struct {
					Limits   *map[string]string `tfsdk:"limits" json:"limits,omitempty"`
					Requests *map[string]string `tfsdk:"requests" json:"requests,omitempty"`
				} `tfsdk:"resources" json:"resources,omitempty"`
				SecurityContext *struct {
					AllowPrivilegeEscalation *bool `tfsdk:"allow_privilege_escalation" json:"allowPrivilegeEscalation,omitempty"`
					Capabilities             *struct {
						Add  *[]string `tfsdk:"add" json:"add,omitempty"`
						Drop *[]string `tfsdk:"drop" json:"drop,omitempty"`
					} `tfsdk:"capabilities" json:"capabilities,omitempty"`
					Privileged             *bool   `tfsdk:"privileged" json:"privileged,omitempty"`
					ProcMount              *string `tfsdk:"proc_mount" json:"procMount,omitempty"`
					ReadOnlyRootFilesystem *bool   `tfsdk:"read_only_root_filesystem" json:"readOnlyRootFilesystem,omitempty"`
					RunAsGroup             *int64  `tfsdk:"run_as_group" json:"runAsGroup,omitempty"`
					RunAsNonRoot           *bool   `tfsdk:"run_as_non_root" json:"runAsNonRoot,omitempty"`
					RunAsUser              *int64  `tfsdk:"run_as_user" json:"runAsUser,omitempty"`
					SeLinuxOptions         *struct {
						Level *string `tfsdk:"level" json:"level,omitempty"`
						Role  *string `tfsdk:"role" json:"role,omitempty"`
						Type  *string `tfsdk:"type" json:"type,omitempty"`
						User  *string `tfsdk:"user" json:"user,omitempty"`
					} `tfsdk:"se_linux_options" json:"seLinuxOptions,omitempty"`
					SeccompProfile *struct {
						LocalhostProfile *string `tfsdk:"localhost_profile" json:"localhostProfile,omitempty"`
						Type             *string `tfsdk:"type" json:"type,omitempty"`
					} `tfsdk:"seccomp_profile" json:"seccompProfile,omitempty"`
					WindowsOptions *struct {
						GmsaCredentialSpec     *string `tfsdk:"gmsa_credential_spec" json:"gmsaCredentialSpec,omitempty"`
						GmsaCredentialSpecName *string `tfsdk:"gmsa_credential_spec_name" json:"gmsaCredentialSpecName,omitempty"`
						HostProcess            *bool   `tfsdk:"host_process" json:"hostProcess,omitempty"`
						RunAsUserName          *string `tfsdk:"run_as_user_name" json:"runAsUserName,omitempty"`
					} `tfsdk:"windows_options" json:"windowsOptions,omitempty"`
				} `tfsdk:"security_context" json:"securityContext,omitempty"`
				Tolerations *[]struct {
					Effect            *string `tfsdk:"effect" json:"effect,omitempty"`
					Key               *string `tfsdk:"key" json:"key,omitempty"`
					Operator          *string `tfsdk:"operator" json:"operator,omitempty"`
					TolerationSeconds *int64  `tfsdk:"toleration_seconds" json:"tolerationSeconds,omitempty"`
					Value             *string `tfsdk:"value" json:"value,omitempty"`
				} `tfsdk:"tolerations" json:"tolerations,omitempty"`
				TopologySpreadConstraints *[]struct {
					LabelSelector *struct {
						MatchExpressions *[]struct {
							Key      *string   `tfsdk:"key" json:"key,omitempty"`
							Operator *string   `tfsdk:"operator" json:"operator,omitempty"`
							Values   *[]string `tfsdk:"values" json:"values,omitempty"`
						} `tfsdk:"match_expressions" json:"matchExpressions,omitempty"`
						MatchLabels *map[string]string `tfsdk:"match_labels" json:"matchLabels,omitempty"`
					} `tfsdk:"label_selector" json:"labelSelector,omitempty"`
					MaxSkew           *int64  `tfsdk:"max_skew" json:"maxSkew,omitempty"`
					TopologyKey       *string `tfsdk:"topology_key" json:"topologyKey,omitempty"`
					WhenUnsatisfiable *string `tfsdk:"when_unsatisfiable" json:"whenUnsatisfiable,omitempty"`
				} `tfsdk:"topology_spread_constraints" json:"topologySpreadConstraints,omitempty"`
				VolumeMounts *[]struct {
					MountPath        *string `tfsdk:"mount_path" json:"mountPath,omitempty"`
					MountPropagation *string `tfsdk:"mount_propagation" json:"mountPropagation,omitempty"`
					Name             *string `tfsdk:"name" json:"name,omitempty"`
					ReadOnly         *bool   `tfsdk:"read_only" json:"readOnly,omitempty"`
					SubPath          *string `tfsdk:"sub_path" json:"subPath,omitempty"`
					SubPathExpr      *string `tfsdk:"sub_path_expr" json:"subPathExpr,omitempty"`
				} `tfsdk:"volume_mounts" json:"volumeMounts,omitempty"`
				Volumes *[]struct {
					Name         *string `tfsdk:"name" json:"name,omitempty"`
					VolumeSource *struct {
						AwsElasticBlockStore *struct {
							FsType    *string `tfsdk:"fs_type" json:"fsType,omitempty"`
							Partition *int64  `tfsdk:"partition" json:"partition,omitempty"`
							ReadOnly  *bool   `tfsdk:"read_only" json:"readOnly,omitempty"`
							VolumeID  *string `tfsdk:"volume_id" json:"volumeID,omitempty"`
						} `tfsdk:"aws_elastic_block_store" json:"awsElasticBlockStore,omitempty"`
						AzureDisk *struct {
							CachingMode *string `tfsdk:"caching_mode" json:"cachingMode,omitempty"`
							DiskName    *string `tfsdk:"disk_name" json:"diskName,omitempty"`
							DiskURI     *string `tfsdk:"disk_uri" json:"diskURI,omitempty"`
							FsType      *string `tfsdk:"fs_type" json:"fsType,omitempty"`
							Kind        *string `tfsdk:"kind" json:"kind,omitempty"`
							ReadOnly    *bool   `tfsdk:"read_only" json:"readOnly,omitempty"`
						} `tfsdk:"azure_disk" json:"azureDisk,omitempty"`
						AzureFile *struct {
							ReadOnly   *bool   `tfsdk:"read_only" json:"readOnly,omitempty"`
							SecretName *string `tfsdk:"secret_name" json:"secretName,omitempty"`
							ShareName  *string `tfsdk:"share_name" json:"shareName,omitempty"`
						} `tfsdk:"azure_file" json:"azureFile,omitempty"`
						Cephfs *struct {
							Monitors   *[]string `tfsdk:"monitors" json:"monitors,omitempty"`
							Path       *string   `tfsdk:"path" json:"path,omitempty"`
							ReadOnly   *bool     `tfsdk:"read_only" json:"readOnly,omitempty"`
							SecretFile *string   `tfsdk:"secret_file" json:"secretFile,omitempty"`
							SecretRef  *struct {
								Name *string `tfsdk:"name" json:"name,omitempty"`
							} `tfsdk:"secret_ref" json:"secretRef,omitempty"`
							User *string `tfsdk:"user" json:"user,omitempty"`
						} `tfsdk:"cephfs" json:"cephfs,omitempty"`
						Cinder *struct {
							FsType    *string `tfsdk:"fs_type" json:"fsType,omitempty"`
							ReadOnly  *bool   `tfsdk:"read_only" json:"readOnly,omitempty"`
							SecretRef *struct {
								Name *string `tfsdk:"name" json:"name,omitempty"`
							} `tfsdk:"secret_ref" json:"secretRef,omitempty"`
							VolumeID *string `tfsdk:"volume_id" json:"volumeID,omitempty"`
						} `tfsdk:"cinder" json:"cinder,omitempty"`
						ConfigMap *struct {
							DefaultMode *int64 `tfsdk:"default_mode" json:"defaultMode,omitempty"`
							Items       *[]struct {
								Key  *string `tfsdk:"key" json:"key,omitempty"`
								Mode *int64  `tfsdk:"mode" json:"mode,omitempty"`
								Path *string `tfsdk:"path" json:"path,omitempty"`
							} `tfsdk:"items" json:"items,omitempty"`
							LocalObjectReference *struct {
								Name *string `tfsdk:"name" json:"name,omitempty"`
							} `tfsdk:"local_object_reference" json:"localObjectReference,omitempty"`
							Optional *bool `tfsdk:"optional" json:"optional,omitempty"`
						} `tfsdk:"config_map" json:"configMap,omitempty"`
						Csi *struct {
							Driver               *string `tfsdk:"driver" json:"driver,omitempty"`
							FsType               *string `tfsdk:"fs_type" json:"fsType,omitempty"`
							NodePublishSecretRef *struct {
								Name *string `tfsdk:"name" json:"name,omitempty"`
							} `tfsdk:"node_publish_secret_ref" json:"nodePublishSecretRef,omitempty"`
							ReadOnly         *bool              `tfsdk:"read_only" json:"readOnly,omitempty"`
							VolumeAttributes *map[string]string `tfsdk:"volume_attributes" json:"volumeAttributes,omitempty"`
						} `tfsdk:"csi" json:"csi,omitempty"`
						DownwardAPI *struct {
							DefaultMode *int64 `tfsdk:"default_mode" json:"defaultMode,omitempty"`
							Items       *[]struct {
								FieldRef *struct {
									ApiVersion *string `tfsdk:"api_version" json:"apiVersion,omitempty"`
									FieldPath  *string `tfsdk:"field_path" json:"fieldPath,omitempty"`
								} `tfsdk:"field_ref" json:"fieldRef,omitempty"`
								Mode             *int64  `tfsdk:"mode" json:"mode,omitempty"`
								Path             *string `tfsdk:"path" json:"path,omitempty"`
								ResourceFieldRef *struct {
									ContainerName *string `tfsdk:"container_name" json:"containerName,omitempty"`
									Divisor       *string `tfsdk:"divisor" json:"divisor,omitempty"`
									Resource      *string `tfsdk:"resource" json:"resource,omitempty"`
								} `tfsdk:"resource_field_ref" json:"resourceFieldRef,omitempty"`
							} `tfsdk:"items" json:"items,omitempty"`
						} `tfsdk:"downward_api" json:"downwardAPI,omitempty"`
						EmptyDir *struct {
							Medium    *string `tfsdk:"medium" json:"medium,omitempty"`
							SizeLimit *string `tfsdk:"size_limit" json:"sizeLimit,omitempty"`
						} `tfsdk:"empty_dir" json:"emptyDir,omitempty"`
						Ephemeral *struct {
							VolumeClaimTemplate *struct {
								Metadata *struct {
									Annotations       *map[string]string `tfsdk:"annotations" json:"annotations,omitempty"`
									ClusterName       *string            `tfsdk:"cluster_name" json:"clusterName,omitempty"`
									CreationTimestamp *struct {
										Nanos   *int64 `tfsdk:"nanos" json:"nanos,omitempty"`
										Seconds *int64 `tfsdk:"seconds" json:"seconds,omitempty"`
									} `tfsdk:"creation_timestamp" json:"creationTimestamp,omitempty"`
									DeletionGracePeriodSeconds *int64 `tfsdk:"deletion_grace_period_seconds" json:"deletionGracePeriodSeconds,omitempty"`
									DeletionTimestamp          *struct {
										Nanos   *int64 `tfsdk:"nanos" json:"nanos,omitempty"`
										Seconds *int64 `tfsdk:"seconds" json:"seconds,omitempty"`
									} `tfsdk:"deletion_timestamp" json:"deletionTimestamp,omitempty"`
									Finalizers    *[]string          `tfsdk:"finalizers" json:"finalizers,omitempty"`
									GenerateName  *string            `tfsdk:"generate_name" json:"generateName,omitempty"`
									Generation    *int64             `tfsdk:"generation" json:"generation,omitempty"`
									Labels        *map[string]string `tfsdk:"labels" json:"labels,omitempty"`
									ManagedFields *[]struct {
										ApiVersion *string `tfsdk:"api_version" json:"apiVersion,omitempty"`
										FieldsType *string `tfsdk:"fields_type" json:"fieldsType,omitempty"`
										FieldsV1   *struct {
											Raw *string `tfsdk:"raw" json:"Raw,omitempty"`
										} `tfsdk:"fields_v1" json:"fieldsV1,omitempty"`
										Manager     *string `tfsdk:"manager" json:"manager,omitempty"`
										Operation   *string `tfsdk:"operation" json:"operation,omitempty"`
										Subresource *string `tfsdk:"subresource" json:"subresource,omitempty"`
										Time        *struct {
											Nanos   *int64 `tfsdk:"nanos" json:"nanos,omitempty"`
											Seconds *int64 `tfsdk:"seconds" json:"seconds,omitempty"`
										} `tfsdk:"time" json:"time,omitempty"`
									} `tfsdk:"managed_fields" json:"managedFields,omitempty"`
									Name            *string `tfsdk:"name" json:"name,omitempty"`
									Namespace       *string `tfsdk:"namespace" json:"namespace,omitempty"`
									OwnerReferences *[]struct {
										ApiVersion         *string `tfsdk:"api_version" json:"apiVersion,omitempty"`
										BlockOwnerDeletion *bool   `tfsdk:"block_owner_deletion" json:"blockOwnerDeletion,omitempty"`
										Controller         *bool   `tfsdk:"controller" json:"controller,omitempty"`
										Kind               *string `tfsdk:"kind" json:"kind,omitempty"`
										Name               *string `tfsdk:"name" json:"name,omitempty"`
										Uid                *string `tfsdk:"uid" json:"uid,omitempty"`
									} `tfsdk:"owner_references" json:"ownerReferences,omitempty"`
									ResourceVersion *string `tfsdk:"resource_version" json:"resourceVersion,omitempty"`
									SelfLink        *string `tfsdk:"self_link" json:"selfLink,omitempty"`
									Uid             *string `tfsdk:"uid" json:"uid,omitempty"`
								} `tfsdk:"metadata" json:"metadata,omitempty"`
								Spec *struct {
									AccessModes *[]string `tfsdk:"access_modes" json:"accessModes,omitempty"`
									DataSource  *struct {
										ApiGroup *string `tfsdk:"api_group" json:"apiGroup,omitempty"`
										Kind     *string `tfsdk:"kind" json:"kind,omitempty"`
										Name     *string `tfsdk:"name" json:"name,omitempty"`
									} `tfsdk:"data_source" json:"dataSource,omitempty"`
									DataSourceRef *struct {
										ApiGroup *string `tfsdk:"api_group" json:"apiGroup,omitempty"`
										Kind     *string `tfsdk:"kind" json:"kind,omitempty"`
										Name     *string `tfsdk:"name" json:"name,omitempty"`
									} `tfsdk:"data_source_ref" json:"dataSourceRef,omitempty"`
									Resources *struct {
										Limits *struct {
											String *string `tfsdk:"string" json:"string,omitempty"`
										} `tfsdk:"limits" json:"limits,omitempty"`
										Requests *struct {
											String *string `tfsdk:"string" json:"string,omitempty"`
										} `tfsdk:"requests" json:"requests,omitempty"`
									} `tfsdk:"resources" json:"resources,omitempty"`
									Selector *struct {
										MatchExpressions *[]struct {
											Key      *string   `tfsdk:"key" json:"key,omitempty"`
											Operator *string   `tfsdk:"operator" json:"operator,omitempty"`
											Values   *[]string `tfsdk:"values" json:"values,omitempty"`
										} `tfsdk:"match_expressions" json:"matchExpressions,omitempty"`
										MatchLabels *map[string]string `tfsdk:"match_labels" json:"matchLabels,omitempty"`
									} `tfsdk:"selector" json:"selector,omitempty"`
									StorageClassName *string `tfsdk:"storage_class_name" json:"storageClassName,omitempty"`
									VolumeMode       *string `tfsdk:"volume_mode" json:"volumeMode,omitempty"`
									VolumeName       *string `tfsdk:"volume_name" json:"volumeName,omitempty"`
								} `tfsdk:"spec" json:"spec,omitempty"`
							} `tfsdk:"volume_claim_template" json:"volumeClaimTemplate,omitempty"`
						} `tfsdk:"ephemeral" json:"ephemeral,omitempty"`
						Fc *struct {
							FsType     *string   `tfsdk:"fs_type" json:"fsType,omitempty"`
							Lun        *int64    `tfsdk:"lun" json:"lun,omitempty"`
							ReadOnly   *bool     `tfsdk:"read_only" json:"readOnly,omitempty"`
							TargetWWNs *[]string `tfsdk:"target_ww_ns" json:"targetWWNs,omitempty"`
							Wwids      *[]string `tfsdk:"wwids" json:"wwids,omitempty"`
						} `tfsdk:"fc" json:"fc,omitempty"`
						FlexVolume *struct {
							Driver    *string            `tfsdk:"driver" json:"driver,omitempty"`
							FsType    *string            `tfsdk:"fs_type" json:"fsType,omitempty"`
							Options   *map[string]string `tfsdk:"options" json:"options,omitempty"`
							ReadOnly  *bool              `tfsdk:"read_only" json:"readOnly,omitempty"`
							SecretRef *struct {
								Name *string `tfsdk:"name" json:"name,omitempty"`
							} `tfsdk:"secret_ref" json:"secretRef,omitempty"`
						} `tfsdk:"flex_volume" json:"flexVolume,omitempty"`
						Flocker *struct {
							DatasetName *string `tfsdk:"dataset_name" json:"datasetName,omitempty"`
							DatasetUUID *string `tfsdk:"dataset_uuid" json:"datasetUUID,omitempty"`
						} `tfsdk:"flocker" json:"flocker,omitempty"`
						GcePersistentDisk *struct {
							FsType    *string `tfsdk:"fs_type" json:"fsType,omitempty"`
							Partition *int64  `tfsdk:"partition" json:"partition,omitempty"`
							PdName    *string `tfsdk:"pd_name" json:"pdName,omitempty"`
							ReadOnly  *bool   `tfsdk:"read_only" json:"readOnly,omitempty"`
						} `tfsdk:"gce_persistent_disk" json:"gcePersistentDisk,omitempty"`
						GitRepo *struct {
							Directory  *string `tfsdk:"directory" json:"directory,omitempty"`
							Repository *string `tfsdk:"repository" json:"repository,omitempty"`
							Revision   *string `tfsdk:"revision" json:"revision,omitempty"`
						} `tfsdk:"git_repo" json:"gitRepo,omitempty"`
						Glusterfs *struct {
							Endpoints *string `tfsdk:"endpoints" json:"endpoints,omitempty"`
							Path      *string `tfsdk:"path" json:"path,omitempty"`
							ReadOnly  *bool   `tfsdk:"read_only" json:"readOnly,omitempty"`
						} `tfsdk:"glusterfs" json:"glusterfs,omitempty"`
						HostPath *struct {
							Path *string `tfsdk:"path" json:"path,omitempty"`
							Type *string `tfsdk:"type" json:"type,omitempty"`
						} `tfsdk:"host_path" json:"hostPath,omitempty"`
						Iscsi *struct {
							ChapAuthDiscovery *bool     `tfsdk:"chap_auth_discovery" json:"chapAuthDiscovery,omitempty"`
							ChapAuthSession   *bool     `tfsdk:"chap_auth_session" json:"chapAuthSession,omitempty"`
							FsType            *string   `tfsdk:"fs_type" json:"fsType,omitempty"`
							InitiatorName     *string   `tfsdk:"initiator_name" json:"initiatorName,omitempty"`
							Iqn               *string   `tfsdk:"iqn" json:"iqn,omitempty"`
							IscsiInterface    *string   `tfsdk:"iscsi_interface" json:"iscsiInterface,omitempty"`
							Lun               *int64    `tfsdk:"lun" json:"lun,omitempty"`
							Portals           *[]string `tfsdk:"portals" json:"portals,omitempty"`
							ReadOnly          *bool     `tfsdk:"read_only" json:"readOnly,omitempty"`
							SecretRef         *struct {
								Name *string `tfsdk:"name" json:"name,omitempty"`
							} `tfsdk:"secret_ref" json:"secretRef,omitempty"`
							TargetPortal *string `tfsdk:"target_portal" json:"targetPortal,omitempty"`
						} `tfsdk:"iscsi" json:"iscsi,omitempty"`
						Nfs *struct {
							Path     *string `tfsdk:"path" json:"path,omitempty"`
							ReadOnly *bool   `tfsdk:"read_only" json:"readOnly,omitempty"`
							Server   *string `tfsdk:"server" json:"server,omitempty"`
						} `tfsdk:"nfs" json:"nfs,omitempty"`
						PersistentVolumeClaim *struct {
							ClaimName *string `tfsdk:"claim_name" json:"claimName,omitempty"`
							ReadOnly  *bool   `tfsdk:"read_only" json:"readOnly,omitempty"`
						} `tfsdk:"persistent_volume_claim" json:"persistentVolumeClaim,omitempty"`
						PhotonPersistentDisk *struct {
							FsType *string `tfsdk:"fs_type" json:"fsType,omitempty"`
							PdID   *string `tfsdk:"pd_id" json:"pdID,omitempty"`
						} `tfsdk:"photon_persistent_disk" json:"photonPersistentDisk,omitempty"`
						PortworxVolume *struct {
							FsType   *string `tfsdk:"fs_type" json:"fsType,omitempty"`
							ReadOnly *bool   `tfsdk:"read_only" json:"readOnly,omitempty"`
							VolumeID *string `tfsdk:"volume_id" json:"volumeID,omitempty"`
						} `tfsdk:"portworx_volume" json:"portworxVolume,omitempty"`
						Projected *struct {
							DefaultMode *int64 `tfsdk:"default_mode" json:"defaultMode,omitempty"`
							Sources     *[]struct {
								ConfigMap *struct {
									Items *[]struct {
										Key  *string `tfsdk:"key" json:"key,omitempty"`
										Mode *int64  `tfsdk:"mode" json:"mode,omitempty"`
										Path *string `tfsdk:"path" json:"path,omitempty"`
									} `tfsdk:"items" json:"items,omitempty"`
									LocalObjectReference *struct {
										Name *string `tfsdk:"name" json:"name,omitempty"`
									} `tfsdk:"local_object_reference" json:"localObjectReference,omitempty"`
									Optional *bool `tfsdk:"optional" json:"optional,omitempty"`
								} `tfsdk:"config_map" json:"configMap,omitempty"`
								DownwardAPI *struct {
									Items *[]struct {
										FieldRef *struct {
											ApiVersion *string `tfsdk:"api_version" json:"apiVersion,omitempty"`
											FieldPath  *string `tfsdk:"field_path" json:"fieldPath,omitempty"`
										} `tfsdk:"field_ref" json:"fieldRef,omitempty"`
										Mode             *int64  `tfsdk:"mode" json:"mode,omitempty"`
										Path             *string `tfsdk:"path" json:"path,omitempty"`
										ResourceFieldRef *struct {
											ContainerName *string `tfsdk:"container_name" json:"containerName,omitempty"`
											Divisor       *string `tfsdk:"divisor" json:"divisor,omitempty"`
											Resource      *string `tfsdk:"resource" json:"resource,omitempty"`
										} `tfsdk:"resource_field_ref" json:"resourceFieldRef,omitempty"`
									} `tfsdk:"items" json:"items,omitempty"`
								} `tfsdk:"downward_api" json:"downwardAPI,omitempty"`
								Secret *struct {
									Items *[]struct {
										Key  *string `tfsdk:"key" json:"key,omitempty"`
										Mode *int64  `tfsdk:"mode" json:"mode,omitempty"`
										Path *string `tfsdk:"path" json:"path,omitempty"`
									} `tfsdk:"items" json:"items,omitempty"`
									LocalObjectReference *struct {
										Name *string `tfsdk:"name" json:"name,omitempty"`
									} `tfsdk:"local_object_reference" json:"localObjectReference,omitempty"`
									Optional *bool `tfsdk:"optional" json:"optional,omitempty"`
								} `tfsdk:"secret" json:"secret,omitempty"`
								ServiceAccountToken *struct {
									Audience          *string `tfsdk:"audience" json:"audience,omitempty"`
									ExpirationSeconds *int64  `tfsdk:"expiration_seconds" json:"expirationSeconds,omitempty"`
									Path              *string `tfsdk:"path" json:"path,omitempty"`
								} `tfsdk:"service_account_token" json:"serviceAccountToken,omitempty"`
							} `tfsdk:"sources" json:"sources,omitempty"`
						} `tfsdk:"projected" json:"projected,omitempty"`
						Quobyte *struct {
							Group    *string `tfsdk:"group" json:"group,omitempty"`
							ReadOnly *bool   `tfsdk:"read_only" json:"readOnly,omitempty"`
							Registry *string `tfsdk:"registry" json:"registry,omitempty"`
							Tenant   *string `tfsdk:"tenant" json:"tenant,omitempty"`
							User     *string `tfsdk:"user" json:"user,omitempty"`
							Volume   *string `tfsdk:"volume" json:"volume,omitempty"`
						} `tfsdk:"quobyte" json:"quobyte,omitempty"`
						Rbd *struct {
							FsType    *string   `tfsdk:"fs_type" json:"fsType,omitempty"`
							Image     *string   `tfsdk:"image" json:"image,omitempty"`
							Keyring   *string   `tfsdk:"keyring" json:"keyring,omitempty"`
							Monitors  *[]string `tfsdk:"monitors" json:"monitors,omitempty"`
							Pool      *string   `tfsdk:"pool" json:"pool,omitempty"`
							ReadOnly  *bool     `tfsdk:"read_only" json:"readOnly,omitempty"`
							SecretRef *struct {
								Name *string `tfsdk:"name" json:"name,omitempty"`
							} `tfsdk:"secret_ref" json:"secretRef,omitempty"`
							User *string `tfsdk:"user" json:"user,omitempty"`
						} `tfsdk:"rbd" json:"rbd,omitempty"`
						ScaleIO *struct {
							FsType           *string `tfsdk:"fs_type" json:"fsType,omitempty"`
							Gateway          *string `tfsdk:"gateway" json:"gateway,omitempty"`
							ProtectionDomain *string `tfsdk:"protection_domain" json:"protectionDomain,omitempty"`
							ReadOnly         *bool   `tfsdk:"read_only" json:"readOnly,omitempty"`
							SecretRef        *struct {
								Name *string `tfsdk:"name" json:"name,omitempty"`
							} `tfsdk:"secret_ref" json:"secretRef,omitempty"`
							SslEnabled  *bool   `tfsdk:"ssl_enabled" json:"sslEnabled,omitempty"`
							StorageMode *string `tfsdk:"storage_mode" json:"storageMode,omitempty"`
							StoragePool *string `tfsdk:"storage_pool" json:"storagePool,omitempty"`
							System      *string `tfsdk:"system" json:"system,omitempty"`
							VolumeName  *string `tfsdk:"volume_name" json:"volumeName,omitempty"`
						} `tfsdk:"scale_io" json:"scaleIO,omitempty"`
						Secret *struct {
							DefaultMode *int64 `tfsdk:"default_mode" json:"defaultMode,omitempty"`
							Items       *[]struct {
								Key  *string `tfsdk:"key" json:"key,omitempty"`
								Mode *int64  `tfsdk:"mode" json:"mode,omitempty"`
								Path *string `tfsdk:"path" json:"path,omitempty"`
							} `tfsdk:"items" json:"items,omitempty"`
							Optional   *bool   `tfsdk:"optional" json:"optional,omitempty"`
							SecretName *string `tfsdk:"secret_name" json:"secretName,omitempty"`
						} `tfsdk:"secret" json:"secret,omitempty"`
						Storageos *struct {
							FsType    *string `tfsdk:"fs_type" json:"fsType,omitempty"`
							ReadOnly  *bool   `tfsdk:"read_only" json:"readOnly,omitempty"`
							SecretRef *struct {
								Name *string `tfsdk:"name" json:"name,omitempty"`
							} `tfsdk:"secret_ref" json:"secretRef,omitempty"`
							VolumeName      *string `tfsdk:"volume_name" json:"volumeName,omitempty"`
							VolumeNamespace *string `tfsdk:"volume_namespace" json:"volumeNamespace,omitempty"`
						} `tfsdk:"storageos" json:"storageos,omitempty"`
						VsphereVolume *struct {
							FsType            *string `tfsdk:"fs_type" json:"fsType,omitempty"`
							StoragePolicyID   *string `tfsdk:"storage_policy_id" json:"storagePolicyID,omitempty"`
							StoragePolicyName *string `tfsdk:"storage_policy_name" json:"storagePolicyName,omitempty"`
							VolumePath        *string `tfsdk:"volume_path" json:"volumePath,omitempty"`
						} `tfsdk:"vsphere_volume" json:"vsphereVolume,omitempty"`
					} `tfsdk:"volume_source" json:"volumeSource,omitempty"`
				} `tfsdk:"volumes" json:"volumes,omitempty"`
			} `tfsdk:"deployment" json:"deployment,omitempty"`
			Service *struct {
				ClusterIP                *string   `tfsdk:"cluster_ip" json:"clusterIP,omitempty"`
				ExternalIPs              *[]string `tfsdk:"external_i_ps" json:"externalIPs,omitempty"`
				ExternalName             *string   `tfsdk:"external_name" json:"externalName,omitempty"`
				ExternalTrafficPolicy    *string   `tfsdk:"external_traffic_policy" json:"externalTrafficPolicy,omitempty"`
				HealthCheckNodePort      *int64    `tfsdk:"health_check_node_port" json:"healthCheckNodePort,omitempty"`
				IpFamily                 *string   `tfsdk:"ip_family" json:"ipFamily,omitempty"`
				LoadBalancerIP           *string   `tfsdk:"load_balancer_ip" json:"loadBalancerIP,omitempty"`
				LoadBalancerSourceRanges *[]string `tfsdk:"load_balancer_source_ranges" json:"loadBalancerSourceRanges,omitempty"`
				Metadata                 *struct {
					Annotations *map[string]string `tfsdk:"annotations" json:"annotations,omitempty"`
					Labels      *map[string]string `tfsdk:"labels" json:"labels,omitempty"`
				} `tfsdk:"metadata" json:"metadata,omitempty"`
				Ports *[]struct {
					Name       *string `tfsdk:"name" json:"name,omitempty"`
					NodePort   *int64  `tfsdk:"node_port" json:"nodePort,omitempty"`
					Port       *int64  `tfsdk:"port" json:"port,omitempty"`
					Protocol   *string `tfsdk:"protocol" json:"protocol,omitempty"`
					TargetPort *string `tfsdk:"target_port" json:"targetPort,omitempty"`
				} `tfsdk:"ports" json:"ports,omitempty"`
				PublishNotReadyAddresses *bool              `tfsdk:"publish_not_ready_addresses" json:"publishNotReadyAddresses,omitempty"`
				Selector                 *map[string]string `tfsdk:"selector" json:"selector,omitempty"`
				SessionAffinity          *string            `tfsdk:"session_affinity" json:"sessionAffinity,omitempty"`
				SessionAffinityConfig    *struct {
					ClientIP *struct {
						TimeoutSeconds *int64 `tfsdk:"timeout_seconds" json:"timeoutSeconds,omitempty"`
					} `tfsdk:"client_ip" json:"clientIP,omitempty"`
				} `tfsdk:"session_affinity_config" json:"sessionAffinityConfig,omitempty"`
				Type *string `tfsdk:"type" json:"type,omitempty"`
			} `tfsdk:"service" json:"service,omitempty"`
			Templates *struct {
				CustomTemplates *[]struct {
					Name     *string `tfsdk:"name" json:"name,omitempty"`
					Template *string `tfsdk:"template" json:"template,omitempty"`
				} `tfsdk:"custom_templates" json:"customTemplates,omitempty"`
				Gateway *string `tfsdk:"gateway" json:"gateway,omitempty"`
				Sidecar *string `tfsdk:"sidecar" json:"sidecar,omitempty"`
			} `tfsdk:"templates" json:"templates,omitempty"`
		} `tfsdk:"sidecar_injector" json:"sidecarInjector,omitempty"`
		TelemetryV2 *struct {
			Enabled *bool `tfsdk:"enabled" json:"enabled,omitempty"`
		} `tfsdk:"telemetry_v2" json:"telemetryV2,omitempty"`
		Tracer *struct {
			CustomTags *struct {
				Environment *struct {
					DefaultValue *string `tfsdk:"default_value" json:"defaultValue,omitempty"`
					Name         *string `tfsdk:"name" json:"name,omitempty"`
				} `tfsdk:"environment" json:"environment,omitempty"`
				Header *struct {
					DefaultValue *string `tfsdk:"default_value" json:"defaultValue,omitempty"`
					Name         *string `tfsdk:"name" json:"name,omitempty"`
				} `tfsdk:"header" json:"header,omitempty"`
				Literal *struct {
					Value *string `tfsdk:"value" json:"value,omitempty"`
				} `tfsdk:"literal" json:"literal,omitempty"`
			} `tfsdk:"custom_tags" json:"customTags,omitempty"`
			Datadog *struct {
				Address *string `tfsdk:"address" json:"address,omitempty"`
			} `tfsdk:"datadog" json:"datadog,omitempty"`
			Lightstep *struct {
				AccessToken *string `tfsdk:"access_token" json:"accessToken,omitempty"`
				Address     *string `tfsdk:"address" json:"address,omitempty"`
			} `tfsdk:"lightstep" json:"lightstep,omitempty"`
			MaxPathTagLength *int64 `tfsdk:"max_path_tag_length" json:"maxPathTagLength,omitempty"`
			OpenCensusAgent  *struct {
				Address *string   `tfsdk:"address" json:"address,omitempty"`
				Context *[]string `tfsdk:"context" json:"context,omitempty"`
			} `tfsdk:"open_census_agent" json:"openCensusAgent,omitempty"`
			Sampling    *float64 `tfsdk:"sampling" json:"sampling,omitempty"`
			Stackdriver *struct {
				Debug                    *bool  `tfsdk:"debug" json:"debug,omitempty"`
				MaxNumberOfAnnotations   *int64 `tfsdk:"max_number_of_annotations" json:"maxNumberOfAnnotations,omitempty"`
				MaxNumberOfAttributes    *int64 `tfsdk:"max_number_of_attributes" json:"maxNumberOfAttributes,omitempty"`
				MaxNumberOfMessageEvents *int64 `tfsdk:"max_number_of_message_events" json:"maxNumberOfMessageEvents,omitempty"`
			} `tfsdk:"stackdriver" json:"stackdriver,omitempty"`
			TlsSettings *struct {
				CaCertificates     *string   `tfsdk:"ca_certificates" json:"caCertificates,omitempty"`
				ClientCertificate  *string   `tfsdk:"client_certificate" json:"clientCertificate,omitempty"`
				CredentialName     *string   `tfsdk:"credential_name" json:"credentialName,omitempty"`
				InsecureSkipVerify *bool     `tfsdk:"insecure_skip_verify" json:"insecureSkipVerify,omitempty"`
				Mode               *string   `tfsdk:"mode" json:"mode,omitempty"`
				PrivateKey         *string   `tfsdk:"private_key" json:"privateKey,omitempty"`
				Sni                *string   `tfsdk:"sni" json:"sni,omitempty"`
				SubjectAltNames    *[]string `tfsdk:"subject_alt_names" json:"subjectAltNames,omitempty"`
			} `tfsdk:"tls_settings" json:"tlsSettings,omitempty"`
			Zipkin *struct {
				Address *string `tfsdk:"address" json:"address,omitempty"`
			} `tfsdk:"zipkin" json:"zipkin,omitempty"`
		} `tfsdk:"tracer" json:"tracer,omitempty"`
		Version           *string `tfsdk:"version" json:"version,omitempty"`
		WatchOneNamespace *bool   `tfsdk:"watch_one_namespace" json:"watchOneNamespace,omitempty"`
	} `tfsdk:"spec" json:"spec,omitempty"`
}

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL