v1beta1

package
v0.30.0-rc.1 Latest Latest
Warning

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

Go to latest
Published: Mar 28, 2023 License: Apache-2.0 Imports: 15 Imported by: 0

Documentation

Overview

+kubebuilder:object:generate=true +groupName=container.gcp.upbound.io +versionName=v1beta1

Index

Constants

View Source
const (
	CRDGroup   = "container.gcp.upbound.io"
	CRDVersion = "v1beta1"
)

Package type metadata.

Variables

View Source
var (
	Cluster_Kind             = "Cluster"
	Cluster_GroupKind        = schema.GroupKind{Group: CRDGroup, Kind: Cluster_Kind}.String()
	Cluster_KindAPIVersion   = Cluster_Kind + "." + CRDGroupVersion.String()
	Cluster_GroupVersionKind = CRDGroupVersion.WithKind(Cluster_Kind)
)

Repository type metadata.

View Source
var (
	// CRDGroupVersion is the API Group Version used to register the objects
	CRDGroupVersion = schema.GroupVersion{Group: CRDGroup, Version: CRDVersion}

	// SchemeBuilder is used to add go types to the GroupVersionKind scheme
	SchemeBuilder = &scheme.Builder{GroupVersion: CRDGroupVersion}

	// AddToScheme adds the types in this group-version to the given scheme.
	AddToScheme = SchemeBuilder.AddToScheme
)
View Source
var (
	NodePool_Kind             = "NodePool"
	NodePool_GroupKind        = schema.GroupKind{Group: CRDGroup, Kind: NodePool_Kind}.String()
	NodePool_KindAPIVersion   = NodePool_Kind + "." + CRDGroupVersion.String()
	NodePool_GroupVersionKind = CRDGroupVersion.WithKind(NodePool_Kind)
)

Repository type metadata.

View Source
var (
	Registry_Kind             = "Registry"
	Registry_GroupKind        = schema.GroupKind{Group: CRDGroup, Kind: Registry_Kind}.String()
	Registry_KindAPIVersion   = Registry_Kind + "." + CRDGroupVersion.String()
	Registry_GroupVersionKind = CRDGroupVersion.WithKind(Registry_Kind)
)

Repository type metadata.

Functions

This section is empty.

Types

type AddonsConfigObservation

type AddonsConfigObservation struct {
}

func (*AddonsConfigObservation) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AddonsConfigObservation.

func (*AddonsConfigObservation) DeepCopyInto

func (in *AddonsConfigObservation) DeepCopyInto(out *AddonsConfigObservation)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type AddonsConfigParameters

type AddonsConfigParameters struct {

	// . Structure is documented below.
	// +kubebuilder:validation:Optional
	CloudrunConfig []CloudrunConfigParameters `json:"cloudrunConfig,omitempty" tf:"cloudrun_config,omitempty"`

	// .
	// The status of the ConfigConnector addon. It is disabled by default; Set enabled = true to enable.
	// +kubebuilder:validation:Optional
	ConfigConnectorConfig []ConfigConnectorConfigParameters `json:"configConnectorConfig,omitempty" tf:"config_connector_config,omitempty"`

	// .
	// The status of the NodeLocal DNSCache addon. It is disabled by default.
	// Set enabled = true to enable.
	// +kubebuilder:validation:Optional
	DNSCacheConfig []DNSCacheConfigParameters `json:"dnsCacheConfig,omitempty" tf:"dns_cache_config,omitempty"`

	// The status of the Filestore CSI driver addon,
	// which allows the usage of filestore instance as volumes.
	// It is disabled by default; set enabled = true to enable.
	// +kubebuilder:validation:Optional
	GCPFilestoreCsiDriverConfig []GCPFilestoreCsiDriverConfigParameters `json:"gcpFilestoreCsiDriverConfig,omitempty" tf:"gcp_filestore_csi_driver_config,omitempty"`

	// .
	// Whether this cluster should enable the Google Compute Engine Persistent Disk Container Storage Interface (CSI) Driver. Defaults to disabled; set enabled = true to enabled.
	// +kubebuilder:validation:Optional
	GcePersistentDiskCsiDriverConfig []GcePersistentDiskCsiDriverConfigParameters `json:"gcePersistentDiskCsiDriverConfig,omitempty" tf:"gce_persistent_disk_csi_driver_config,omitempty"`

	// .
	// The status of the Backup for GKE agent addon. It is disabled by default; Set enabled = true to enable.
	// +kubebuilder:validation:Optional
	GkeBackupAgentConfig []GkeBackupAgentConfigParameters `json:"gkeBackupAgentConfig,omitempty" tf:"gke_backup_agent_config,omitempty"`

	// The status of the HTTP (L7) load balancing
	// controller addon, which makes it easy to set up HTTP load balancers for services in a
	// cluster. It is enabled by default; set disabled = true to disable.
	// +kubebuilder:validation:Optional
	HTTPLoadBalancing []HTTPLoadBalancingParameters `json:"httpLoadBalancing,omitempty" tf:"http_load_balancing,omitempty"`

	// The status of the Horizontal Pod Autoscaling
	// addon, which increases or decreases the number of replica pods a replication controller
	// has based on the resource usage of the existing pods.
	// It is enabled by default;
	// set disabled = true to disable.
	// +kubebuilder:validation:Optional
	HorizontalPodAutoscaling []HorizontalPodAutoscalingParameters `json:"horizontalPodAutoscaling,omitempty" tf:"horizontal_pod_autoscaling,omitempty"`

	// Whether we should enable the network policy addon
	// for the master.  This must be enabled in order to enable network policy for the nodes.
	// To enable this, you must also define a network_policy block,
	// otherwise nothing will happen.
	// It can only be disabled if the nodes already do not have network policies enabled.
	// Defaults to disabled; set disabled = false to enable.
	// +kubebuilder:validation:Optional
	NetworkPolicyConfig []NetworkPolicyConfigParameters `json:"networkPolicyConfig,omitempty" tf:"network_policy_config,omitempty"`
}

func (*AddonsConfigParameters) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AddonsConfigParameters.

func (*AddonsConfigParameters) DeepCopyInto

func (in *AddonsConfigParameters) DeepCopyInto(out *AddonsConfigParameters)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type AuthenticatorGroupsConfigObservation

type AuthenticatorGroupsConfigObservation struct {
}

func (*AuthenticatorGroupsConfigObservation) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AuthenticatorGroupsConfigObservation.

func (*AuthenticatorGroupsConfigObservation) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type AuthenticatorGroupsConfigParameters

type AuthenticatorGroupsConfigParameters struct {

	// The name of the RBAC security group for use with Google security groups in Kubernetes RBAC. Group name must be in format gke-security-groups@yourdomain.com.
	// +kubebuilder:validation:Required
	SecurityGroup *string `json:"securityGroup" tf:"security_group,omitempty"`
}

func (*AuthenticatorGroupsConfigParameters) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AuthenticatorGroupsConfigParameters.

func (*AuthenticatorGroupsConfigParameters) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type AutoProvisioningDefaultsObservation

type AutoProvisioningDefaultsObservation struct {

	// NodeManagement configuration for this NodePool. Structure is documented below.
	// +kubebuilder:validation:Optional
	Management []ManagementObservation `json:"management,omitempty" tf:"management,omitempty"`
}

func (*AutoProvisioningDefaultsObservation) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AutoProvisioningDefaultsObservation.

func (*AutoProvisioningDefaultsObservation) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type AutoProvisioningDefaultsParameters

type AutoProvisioningDefaultsParameters struct {

	// The Customer Managed Encryption Key used to encrypt the boot disk attached to each node in the node pool. This should be of the form projects/[KEY_PROJECT_ID]/locations/[LOCATION]/keyRings/[RING_NAME]/cryptoKeys/[KEY_NAME]. For more information about protecting resources with Cloud KMS Keys please see: https://cloud.google.com/compute/docs/disks/customer-managed-encryption
	// +kubebuilder:validation:Optional
	BootDiskKMSKey *string `json:"bootDiskKmsKey,omitempty" tf:"boot_disk_kms_key,omitempty"`

	// Size of the disk attached to each node, specified in GB. The smallest allowed disk size is 10GB. Defaults to 100
	// +kubebuilder:validation:Optional
	DiskSize *float64 `json:"diskSize,omitempty" tf:"disk_size,omitempty"`

	// Type of the disk attached to each node
	// (e.g. 'pd-standard', 'pd-balanced' or 'pd-ssd'). If unspecified, the default disk type is 'pd-standard'
	// +kubebuilder:validation:Optional
	DiskType *string `json:"diskType,omitempty" tf:"disk_type,omitempty"`

	// The image type to use for this node. Note that changing the image type
	// will delete and recreate all nodes in the node pool.
	// +kubebuilder:validation:Optional
	ImageType *string `json:"imageType,omitempty" tf:"image_type,omitempty"`

	// NodeManagement configuration for this NodePool. Structure is documented below.
	// +kubebuilder:validation:Optional
	Management []ManagementParameters `json:"management,omitempty" tf:"management,omitempty"`

	// Minimum CPU platform to be used by this instance.
	// The instance may be scheduled on the specified or newer CPU platform. Applicable
	// values are the friendly names of CPU platforms, such as Intel Haswell. See the
	// official documentation
	// for more information.
	// +kubebuilder:validation:Optional
	MinCPUPlatform *string `json:"minCpuPlatform,omitempty" tf:"min_cpu_platform,omitempty"`

	// The set of Google API scopes to be made available
	// on all of the node VMs under the "default" service account.
	// Use the "https://www.googleapis.com/auth/cloud-platform" scope to grant access to all APIs. It is recommended that you set service_account to a non-default service account and grant IAM roles to that service account for only the resources that it needs.
	// +kubebuilder:validation:Optional
	OAuthScopes []*string `json:"oauthScopes,omitempty" tf:"oauth_scopes,omitempty"`

	// The service account to be used by the Node VMs.
	// If not specified, the "default" service account is used.
	// +kubebuilder:validation:Optional
	ServiceAccount *string `json:"serviceAccount,omitempty" tf:"service_account,omitempty"`

	// Shielded Instance options. Structure is documented below.
	// +kubebuilder:validation:Optional
	ShieldedInstanceConfig []ShieldedInstanceConfigParameters `json:"shieldedInstanceConfig,omitempty" tf:"shielded_instance_config,omitempty"`

	// Specifies the upgrade settings for NAP created node pools. Structure is documented below.
	// +kubebuilder:validation:Optional
	UpgradeSettings []UpgradeSettingsParameters `json:"upgradeSettings,omitempty" tf:"upgrade_settings,omitempty"`
}

func (*AutoProvisioningDefaultsParameters) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AutoProvisioningDefaultsParameters.

func (*AutoProvisioningDefaultsParameters) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type AutoscalingObservation

type AutoscalingObservation struct {
	LocationPolicy *string `json:"locationPolicy,omitempty" tf:"location_policy,omitempty"`

	MaxNodeCount *float64 `json:"maxNodeCount,omitempty" tf:"max_node_count,omitempty"`

	MinNodeCount *float64 `json:"minNodeCount,omitempty" tf:"min_node_count,omitempty"`

	TotalMaxNodeCount *float64 `json:"totalMaxNodeCount,omitempty" tf:"total_max_node_count,omitempty"`

	TotalMinNodeCount *float64 `json:"totalMinNodeCount,omitempty" tf:"total_min_node_count,omitempty"`
}

func (*AutoscalingObservation) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AutoscalingObservation.

func (*AutoscalingObservation) DeepCopyInto

func (in *AutoscalingObservation) DeepCopyInto(out *AutoscalingObservation)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type AutoscalingParameters

type AutoscalingParameters struct {
}

func (*AutoscalingParameters) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AutoscalingParameters.

func (*AutoscalingParameters) DeepCopyInto

func (in *AutoscalingParameters) DeepCopyInto(out *AutoscalingParameters)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type BigqueryDestinationObservation

type BigqueryDestinationObservation struct {
}

func (*BigqueryDestinationObservation) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new BigqueryDestinationObservation.

func (*BigqueryDestinationObservation) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type BigqueryDestinationParameters

type BigqueryDestinationParameters struct {

	// The ID of a BigQuery Dataset. For Example:
	// +kubebuilder:validation:Required
	DatasetID *string `json:"datasetId" tf:"dataset_id,omitempty"`
}

func (*BigqueryDestinationParameters) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new BigqueryDestinationParameters.

func (*BigqueryDestinationParameters) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type BinaryAuthorizationObservation added in v0.26.0

type BinaryAuthorizationObservation struct {
}

func (*BinaryAuthorizationObservation) DeepCopy added in v0.26.0

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new BinaryAuthorizationObservation.

func (*BinaryAuthorizationObservation) DeepCopyInto added in v0.26.0

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type BinaryAuthorizationParameters added in v0.26.0

type BinaryAuthorizationParameters struct {

	// (DEPRECATED) Enable Binary Authorization for this cluster. Deprecated in favor of evaluation_mode.
	// +kubebuilder:validation:Optional
	Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"`

	// Mode of operation for Binary Authorization policy evaluation. Valid values are DISABLED
	// and PROJECT_SINGLETON_POLICY_ENFORCE. PROJECT_SINGLETON_POLICY_ENFORCE is functionally equivalent to the
	// deprecated enable_binary_authorization parameter being set to true.
	// +kubebuilder:validation:Optional
	EvaluationMode *string `json:"evaluationMode,omitempty" tf:"evaluation_mode,omitempty"`
}

func (*BinaryAuthorizationParameters) DeepCopy added in v0.26.0

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new BinaryAuthorizationParameters.

func (*BinaryAuthorizationParameters) DeepCopyInto added in v0.26.0

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type BlueGreenSettingsObservation added in v0.26.0

type BlueGreenSettingsObservation struct {
}

func (*BlueGreenSettingsObservation) DeepCopy added in v0.26.0

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new BlueGreenSettingsObservation.

func (*BlueGreenSettingsObservation) DeepCopyInto added in v0.26.0

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type BlueGreenSettingsParameters added in v0.26.0

type BlueGreenSettingsParameters struct {

	// Time needed after draining entire blue pool. After this period, blue pool will be cleaned up. A duration in seconds with up to nine fractional digits, ending with 's'. Example: "3.5s".
	// +kubebuilder:validation:Optional
	NodePoolSoakDuration *string `json:"nodePoolSoakDuration,omitempty" tf:"node_pool_soak_duration,omitempty"`

	// green upgrade. To be specified when strategy is set to BLUE_GREEN. Structure is documented below.
	// +kubebuilder:validation:Optional
	StandardRolloutPolicy []StandardRolloutPolicyParameters `json:"standardRolloutPolicy,omitempty" tf:"standard_rollout_policy,omitempty"`
}

func (*BlueGreenSettingsParameters) DeepCopy added in v0.26.0

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new BlueGreenSettingsParameters.

func (*BlueGreenSettingsParameters) DeepCopyInto added in v0.26.0

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type BlueGreenSettingsStandardRolloutPolicyObservation added in v0.26.0

type BlueGreenSettingsStandardRolloutPolicyObservation struct {

	// Number of blue nodes to drain in a batch. Only one of the batch_percentage or batch_node_count can be specified.
	BatchNodeCount *float64 `json:"batchNodeCount,omitempty" tf:"batch_node_count,omitempty"`

	// :  Percentage of the bool pool nodes to drain in a batch. The range of this field should be (0.0, 1.0). Only one of the batch_percentage or batch_node_count can be specified.
	BatchPercentage *float64 `json:"batchPercentage,omitempty" tf:"batch_percentage,omitempty"`

	// Soak time after each batch gets drained. A duration in seconds with up to nine fractional digits, ending with 's'. Example: "3.5s".`.
	BatchSoakDuration *string `json:"batchSoakDuration,omitempty" tf:"batch_soak_duration,omitempty"`
}

func (*BlueGreenSettingsStandardRolloutPolicyObservation) DeepCopy added in v0.26.0

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new BlueGreenSettingsStandardRolloutPolicyObservation.

func (*BlueGreenSettingsStandardRolloutPolicyObservation) DeepCopyInto added in v0.26.0

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type BlueGreenSettingsStandardRolloutPolicyParameters added in v0.26.0

type BlueGreenSettingsStandardRolloutPolicyParameters struct {
}

func (*BlueGreenSettingsStandardRolloutPolicyParameters) DeepCopy added in v0.26.0

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new BlueGreenSettingsStandardRolloutPolicyParameters.

func (*BlueGreenSettingsStandardRolloutPolicyParameters) DeepCopyInto added in v0.26.0

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type CidrBlocksObservation

type CidrBlocksObservation struct {
}

func (*CidrBlocksObservation) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CidrBlocksObservation.

func (*CidrBlocksObservation) DeepCopyInto

func (in *CidrBlocksObservation) DeepCopyInto(out *CidrBlocksObservation)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type CidrBlocksParameters

type CidrBlocksParameters struct {

	// External network that can access Kubernetes master through HTTPS.
	// Must be specified in CIDR notation.
	// +kubebuilder:validation:Required
	CidrBlock *string `json:"cidrBlock" tf:"cidr_block,omitempty"`

	// Field for users to identify CIDR blocks.
	// +kubebuilder:validation:Optional
	DisplayName *string `json:"displayName,omitempty" tf:"display_name,omitempty"`
}

func (*CidrBlocksParameters) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CidrBlocksParameters.

func (*CidrBlocksParameters) DeepCopyInto

func (in *CidrBlocksParameters) DeepCopyInto(out *CidrBlocksParameters)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type ClientCertificateConfigObservation

type ClientCertificateConfigObservation struct {
}

func (*ClientCertificateConfigObservation) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ClientCertificateConfigObservation.

func (*ClientCertificateConfigObservation) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type ClientCertificateConfigParameters

type ClientCertificateConfigParameters struct {

	// +kubebuilder:validation:Required
	IssueClientCertificate *bool `json:"issueClientCertificate" tf:"issue_client_certificate,omitempty"`
}

func (*ClientCertificateConfigParameters) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ClientCertificateConfigParameters.

func (*ClientCertificateConfigParameters) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type CloudrunConfigObservation

type CloudrunConfigObservation struct {
}

func (*CloudrunConfigObservation) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CloudrunConfigObservation.

func (*CloudrunConfigObservation) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type CloudrunConfigParameters

type CloudrunConfigParameters struct {

	// The status of the Istio addon, which makes it easy to set up Istio for services in a
	// cluster. It is disabled by default. Set disabled = false to enable.
	// +kubebuilder:validation:Required
	Disabled *bool `json:"disabled" tf:"disabled,omitempty"`

	// The load balancer type of CloudRun ingress service. It is external load balancer by default.
	// Set load_balancer_type=LOAD_BALANCER_TYPE_INTERNAL to configure it as internal load balancer.
	// +kubebuilder:validation:Optional
	LoadBalancerType *string `json:"loadBalancerType,omitempty" tf:"load_balancer_type,omitempty"`
}

func (*CloudrunConfigParameters) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CloudrunConfigParameters.

func (*CloudrunConfigParameters) DeepCopyInto

func (in *CloudrunConfigParameters) DeepCopyInto(out *CloudrunConfigParameters)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type Cluster

type Cluster struct {
	metav1.TypeMeta   `json:",inline"`
	metav1.ObjectMeta `json:"metadata,omitempty"`
	Spec              ClusterSpec   `json:"spec"`
	Status            ClusterStatus `json:"status,omitempty"`
}

Cluster is the Schema for the Clusters API. Creates a Google Kubernetes Engine (GKE) cluster. +kubebuilder:printcolumn:name="READY",type="string",JSONPath=".status.conditions[?(@.type=='Ready')].status" +kubebuilder:printcolumn:name="SYNCED",type="string",JSONPath=".status.conditions[?(@.type=='Synced')].status" +kubebuilder:printcolumn:name="EXTERNAL-NAME",type="string",JSONPath=".metadata.annotations.crossplane\\.io/external-name" +kubebuilder:printcolumn:name="AGE",type="date",JSONPath=".metadata.creationTimestamp" +kubebuilder:subresource:status +kubebuilder:resource:scope=Cluster,categories={crossplane,managed,gcp}

func (*Cluster) DeepCopy

func (in *Cluster) DeepCopy() *Cluster

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Cluster.

func (*Cluster) DeepCopyInto

func (in *Cluster) DeepCopyInto(out *Cluster)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*Cluster) DeepCopyObject

func (in *Cluster) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

func (*Cluster) GetCondition

func (mg *Cluster) GetCondition(ct xpv1.ConditionType) xpv1.Condition

GetCondition of this Cluster.

func (*Cluster) GetConnectionDetailsMapping

func (tr *Cluster) GetConnectionDetailsMapping() map[string]string

GetConnectionDetailsMapping for this Cluster

func (*Cluster) GetDeletionPolicy

func (mg *Cluster) GetDeletionPolicy() xpv1.DeletionPolicy

GetDeletionPolicy of this Cluster.

func (*Cluster) GetID

func (tr *Cluster) GetID() string

GetID returns ID of underlying Terraform resource of this Cluster

func (*Cluster) GetObservation

func (tr *Cluster) GetObservation() (map[string]any, error)

GetObservation of this Cluster

func (*Cluster) GetParameters

func (tr *Cluster) GetParameters() (map[string]any, error)

GetParameters of this Cluster

func (*Cluster) GetProviderConfigReference

func (mg *Cluster) GetProviderConfigReference() *xpv1.Reference

GetProviderConfigReference of this Cluster.

func (*Cluster) GetProviderReference

func (mg *Cluster) GetProviderReference() *xpv1.Reference

GetProviderReference of this Cluster. Deprecated: Use GetProviderConfigReference.

func (*Cluster) GetPublishConnectionDetailsTo

func (mg *Cluster) GetPublishConnectionDetailsTo() *xpv1.PublishConnectionDetailsTo

GetPublishConnectionDetailsTo of this Cluster.

func (*Cluster) GetTerraformResourceType

func (mg *Cluster) GetTerraformResourceType() string

GetTerraformResourceType returns Terraform resource type for this Cluster

func (*Cluster) GetTerraformSchemaVersion

func (tr *Cluster) GetTerraformSchemaVersion() int

GetTerraformSchemaVersion returns the associated Terraform schema version

func (*Cluster) GetWriteConnectionSecretToReference

func (mg *Cluster) GetWriteConnectionSecretToReference() *xpv1.SecretReference

GetWriteConnectionSecretToReference of this Cluster.

func (*Cluster) LateInitialize

func (tr *Cluster) LateInitialize(attrs []byte) (bool, error)

LateInitialize this Cluster using its observed tfState. returns True if there are any spec changes for the resource.

func (*Cluster) ResolveReferences

func (mg *Cluster) ResolveReferences(ctx context.Context, c client.Reader) error

ResolveReferences of this Cluster.

func (*Cluster) SetConditions

func (mg *Cluster) SetConditions(c ...xpv1.Condition)

SetConditions of this Cluster.

func (*Cluster) SetDeletionPolicy

func (mg *Cluster) SetDeletionPolicy(r xpv1.DeletionPolicy)

SetDeletionPolicy of this Cluster.

func (*Cluster) SetObservation

func (tr *Cluster) SetObservation(obs map[string]any) error

SetObservation for this Cluster

func (*Cluster) SetParameters

func (tr *Cluster) SetParameters(params map[string]any) error

SetParameters for this Cluster

func (*Cluster) SetProviderConfigReference

func (mg *Cluster) SetProviderConfigReference(r *xpv1.Reference)

SetProviderConfigReference of this Cluster.

func (*Cluster) SetProviderReference

func (mg *Cluster) SetProviderReference(r *xpv1.Reference)

SetProviderReference of this Cluster. Deprecated: Use SetProviderConfigReference.

func (*Cluster) SetPublishConnectionDetailsTo

func (mg *Cluster) SetPublishConnectionDetailsTo(r *xpv1.PublishConnectionDetailsTo)

SetPublishConnectionDetailsTo of this Cluster.

func (*Cluster) SetWriteConnectionSecretToReference

func (mg *Cluster) SetWriteConnectionSecretToReference(r *xpv1.SecretReference)

SetWriteConnectionSecretToReference of this Cluster.

type ClusterAutoscalingObservation

type ClusterAutoscalingObservation struct {

	// Contains defaults for a node pool created by NAP. A subset of fields also apply to
	// GKE Autopilot clusters.
	// Structure is documented below.
	// +kubebuilder:validation:Optional
	AutoProvisioningDefaults []AutoProvisioningDefaultsObservation `json:"autoProvisioningDefaults,omitempty" tf:"auto_provisioning_defaults,omitempty"`
}

func (*ClusterAutoscalingObservation) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ClusterAutoscalingObservation.

func (*ClusterAutoscalingObservation) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type ClusterAutoscalingParameters

type ClusterAutoscalingParameters struct {

	// Contains defaults for a node pool created by NAP. A subset of fields also apply to
	// GKE Autopilot clusters.
	// Structure is documented below.
	// +kubebuilder:validation:Optional
	AutoProvisioningDefaults []AutoProvisioningDefaultsParameters `json:"autoProvisioningDefaults,omitempty" tf:"auto_provisioning_defaults,omitempty"`

	// Whether node auto-provisioning is enabled. Must be supplied for GKE Standard clusters, true is implied
	// for autopilot clusters. Resource limits for cpu and memory must be defined to enable node auto-provisioning for GKE Standard.
	// +kubebuilder:validation:Optional
	Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"`

	// Global constraints for machine resources in the
	// cluster. Configuring the cpu and memory types is required if node
	// auto-provisioning is enabled. These limits will apply to node pool autoscaling
	// in addition to node auto-provisioning. Structure is documented below.
	// +kubebuilder:validation:Optional
	ResourceLimits []ResourceLimitsParameters `json:"resourceLimits,omitempty" tf:"resource_limits,omitempty"`
}

func (*ClusterAutoscalingParameters) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ClusterAutoscalingParameters.

func (*ClusterAutoscalingParameters) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type ClusterList

type ClusterList struct {
	metav1.TypeMeta `json:",inline"`
	metav1.ListMeta `json:"metadata,omitempty"`
	Items           []Cluster `json:"items"`
}

ClusterList contains a list of Clusters

func (*ClusterList) DeepCopy

func (in *ClusterList) DeepCopy() *ClusterList

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ClusterList.

func (*ClusterList) DeepCopyInto

func (in *ClusterList) DeepCopyInto(out *ClusterList)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*ClusterList) DeepCopyObject

func (in *ClusterList) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

func (*ClusterList) GetItems

func (l *ClusterList) GetItems() []resource.Managed

GetItems of this ClusterList.

type ClusterObservation

type ClusterObservation struct {

	// Per-cluster configuration of Node Auto-Provisioning with Cluster Autoscaler to
	// automatically adjust the size of the cluster and create/delete node pools based
	// on the current needs of the cluster's workload. See the
	// guide to using Node Auto-Provisioning
	// for more details. Structure is documented below.
	// +kubebuilder:validation:Optional
	ClusterAutoscaling []ClusterAutoscalingObservation `json:"clusterAutoscaling,omitempty" tf:"cluster_autoscaling,omitempty"`

	// The IP address of this cluster's Kubernetes master.
	Endpoint *string `json:"endpoint,omitempty" tf:"endpoint,omitempty"`

	// an identifier for the resource with format projects/{{project}}/locations/{{zone}}/clusters/{{name}}
	ID *string `json:"id,omitempty" tf:"id,omitempty"`

	// The fingerprint of the set of labels for this cluster.
	LabelFingerprint *string `json:"labelFingerprint,omitempty" tf:"label_fingerprint,omitempty"`

	// The maintenance policy to use for the cluster. Structure is
	// documented below.
	// +kubebuilder:validation:Optional
	MaintenancePolicy []MaintenancePolicyObservation `json:"maintenancePolicy,omitempty" tf:"maintenance_policy,omitempty"`

	// The authentication information for accessing the
	// Kubernetes master. Some values in this block are only returned by the API if
	// your service account has permission to get credentials for your GKE cluster. If
	// you see an unexpected diff unsetting your client cert, ensure you have the
	// container.clusters.getCredentials permission.
	// Structure is documented below.
	// +kubebuilder:validation:Optional
	MasterAuth []MasterAuthObservation `json:"masterAuth,omitempty" tf:"master_auth,omitempty"`

	// The current version of the master in the cluster. This may
	// be different than the min_master_version set in the config if the master
	// has been updated by GKE.
	MasterVersion *string `json:"masterVersion,omitempty" tf:"master_version,omitempty"`

	// List of node pools associated with this cluster.
	// See google_container_node_pool for schema.
	// Warning: node pools defined inside a cluster can't be changed (or added/removed) after
	// cluster creation without deleting and recreating the entire cluster. Unless you absolutely need the ability
	// to say "these are the only node pools associated with this cluster", use the
	// google_container_node_pool resource instead of this property.
	NodePool []NodePoolObservation `json:"nodePool,omitempty" tf:"node_pool,omitempty"`

	Operation *string `json:"operation,omitempty" tf:"operation,omitempty"`

	// Configuration for private clusters,
	// clusters with private nodes. Structure is documented below.
	// +kubebuilder:validation:Optional
	PrivateClusterConfig []PrivateClusterConfigObservation `json:"privateClusterConfig,omitempty" tf:"private_cluster_config,omitempty"`

	// The server-defined URL for the resource.
	SelfLink *string `json:"selfLink,omitempty" tf:"self_link,omitempty"`

	// The IP address range of the Kubernetes services in this
	// cluster, in CIDR
	// notation (e.g. 1.2.3.4/29). Service addresses are typically put in the last
	// /16 from the container CIDR.
	ServicesIPv4Cidr *string `json:"servicesIpv4Cidr,omitempty" tf:"services_ipv4_cidr,omitempty"`

	// The IP address range of the Cloud TPUs in this cluster, in
	// CIDR
	// notation (e.g. 1.2.3.4/29).
	TpuIPv4CidrBlock *string `json:"tpuIpv4CidrBlock,omitempty" tf:"tpu_ipv4_cidr_block,omitempty"`
}

func (*ClusterObservation) DeepCopy

func (in *ClusterObservation) DeepCopy() *ClusterObservation

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ClusterObservation.

func (*ClusterObservation) DeepCopyInto

func (in *ClusterObservation) DeepCopyInto(out *ClusterObservation)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type ClusterParameters

type ClusterParameters struct {

	// The configuration for addons supported by GKE.
	// Structure is documented below.
	// +kubebuilder:validation:Optional
	AddonsConfig []AddonsConfigParameters `json:"addonsConfig,omitempty" tf:"addons_config,omitempty"`

	// Configuration for the
	// Google Groups for GKE feature.
	// Structure is documented below.
	// +kubebuilder:validation:Optional
	AuthenticatorGroupsConfig []AuthenticatorGroupsConfigParameters `json:"authenticatorGroupsConfig,omitempty" tf:"authenticator_groups_config,omitempty"`

	// Configuration options for the Binary
	// Authorization feature. Structure is documented below.
	// +kubebuilder:validation:Optional
	BinaryAuthorization []BinaryAuthorizationParameters `json:"binaryAuthorization,omitempty" tf:"binary_authorization,omitempty"`

	// Per-cluster configuration of Node Auto-Provisioning with Cluster Autoscaler to
	// automatically adjust the size of the cluster and create/delete node pools based
	// on the current needs of the cluster's workload. See the
	// guide to using Node Auto-Provisioning
	// for more details. Structure is documented below.
	// +kubebuilder:validation:Optional
	ClusterAutoscaling []ClusterAutoscalingParameters `json:"clusterAutoscaling,omitempty" tf:"cluster_autoscaling,omitempty"`

	// The IP address range of the Kubernetes pods
	// in this cluster in CIDR notation (e.g. 10.96.0.0/14). Leave blank to have one
	// automatically chosen or specify a /14 block in 10.0.0.0/8. This field will
	// only work for routes-based clusters, where ip_allocation_policy is not defined.
	// +kubebuilder:validation:Optional
	ClusterIPv4Cidr *string `json:"clusterIpv4Cidr,omitempty" tf:"cluster_ipv4_cidr,omitempty"`

	// Configuration for Confidential Nodes feature. Structure is documented below documented below.
	// +kubebuilder:validation:Optional
	ConfidentialNodes []ConfidentialNodesParameters `json:"confidentialNodes,omitempty" tf:"confidential_nodes,omitempty"`

	// Configuration for the
	// Cost Allocation feature.
	// Structure is documented below.
	// +kubebuilder:validation:Optional
	CostManagementConfig []CostManagementConfigParameters `json:"costManagementConfig,omitempty" tf:"cost_management_config,omitempty"`

	// Configuration for Using Cloud DNS for GKE. Structure is documented below.
	// +kubebuilder:validation:Optional
	DNSConfig []DNSConfigParameters `json:"dnsConfig,omitempty" tf:"dns_config,omitempty"`

	// Structure is documented below.
	// +kubebuilder:validation:Optional
	DatabaseEncryption []DatabaseEncryptionParameters `json:"databaseEncryption,omitempty" tf:"database_encryption,omitempty"`

	// The desired datapath provider for this cluster. By default, uses the IPTables-based kube-proxy implementation.
	// +kubebuilder:validation:Optional
	DatapathProvider *string `json:"datapathProvider,omitempty" tf:"datapath_provider,omitempty"`

	// The default maximum number of pods
	// per node in this cluster. This doesn't work on "routes-based" clusters, clusters
	// that don't have IP Aliasing enabled. See the official documentation
	// for more information.
	// +kubebuilder:validation:Optional
	DefaultMaxPodsPerNode *float64 `json:"defaultMaxPodsPerNode,omitempty" tf:"default_max_pods_per_node,omitempty"`

	// GKE SNAT DefaultSnatStatus contains the desired state of whether default sNAT should be disabled on the cluster, API doc. Structure is documented below
	// +kubebuilder:validation:Optional
	DefaultSnatStatus []DefaultSnatStatusParameters `json:"defaultSnatStatus,omitempty" tf:"default_snat_status,omitempty"`

	// Description of the cluster.
	// +kubebuilder:validation:Optional
	Description *string `json:"description,omitempty" tf:"description,omitempty"`

	// Enable Autopilot for this cluster. Defaults to false.
	// Note that when this option is enabled, certain features of Standard GKE are not available.
	// See the official documentation
	// for available features.
	// +kubebuilder:validation:Optional
	EnableAutopilot *bool `json:"enableAutopilot,omitempty" tf:"enable_autopilot,omitempty"`

	// (DEPRECATED) Enable Binary Authorization for this cluster.
	// If enabled, all container images will be validated by Google Binary Authorization.
	// Deprecated in favor of binary_authorization.
	// +kubebuilder:validation:Optional
	EnableBinaryAuthorization *bool `json:"enableBinaryAuthorization,omitempty" tf:"enable_binary_authorization,omitempty"`

	// Whether Intra-node visibility is enabled for this cluster. This makes same node pod to pod traffic visible for VPC network.
	// +kubebuilder:validation:Optional
	EnableIntranodeVisibility *bool `json:"enableIntranodeVisibility,omitempty" tf:"enable_intranode_visibility,omitempty"`

	// Whether to enable Kubernetes Alpha features for
	// this cluster. Note that when this option is enabled, the cluster cannot be upgraded
	// and will be automatically deleted after 30 days.
	// +kubebuilder:validation:Optional
	EnableKubernetesAlpha *bool `json:"enableKubernetesAlpha,omitempty" tf:"enable_kubernetes_alpha,omitempty"`

	// Whether L4ILB Subsetting is enabled for this cluster.
	// +kubebuilder:validation:Optional
	EnableL4IlbSubsetting *bool `json:"enableL4IlbSubsetting,omitempty" tf:"enable_l4_ilb_subsetting,omitempty"`

	// Whether the ABAC authorizer is enabled for this cluster.
	// When enabled, identities in the system, including service accounts, nodes, and controllers,
	// will have statically granted permissions beyond those provided by the RBAC configuration or IAM.
	// Defaults to false
	// +kubebuilder:validation:Optional
	EnableLegacyAbac *bool `json:"enableLegacyAbac,omitempty" tf:"enable_legacy_abac,omitempty"`

	// Enable Shielded Nodes features on all nodes in this cluster.  Defaults to true.
	// +kubebuilder:validation:Optional
	EnableShieldedNodes *bool `json:"enableShieldedNodes,omitempty" tf:"enable_shielded_nodes,omitempty"`

	// Whether to enable Cloud TPU resources in this cluster.
	// See the official documentation.
	// +kubebuilder:validation:Optional
	EnableTpu *bool `json:"enableTpu,omitempty" tf:"enable_tpu,omitempty"`

	// Configuration for GKE Gateway API controller. Structure is documented below.
	// +kubebuilder:validation:Optional
	GatewayAPIConfig []GatewayAPIConfigParameters `json:"gatewayApiConfig,omitempty" tf:"gateway_api_config,omitempty"`

	// Configuration of cluster IP allocation for
	// VPC-native clusters. Adding this block enables IP aliasing,
	// making the cluster VPC-native instead of routes-based. Structure is documented
	// below.
	// +kubebuilder:validation:Optional
	IPAllocationPolicy []IPAllocationPolicyParameters `json:"ipAllocationPolicy,omitempty" tf:"ip_allocation_policy,omitempty"`

	// The number of nodes to create in this
	// cluster's default node pool. In regional or multi-zonal clusters, this is the
	// number of nodes per zone. Must be set if node_pool is not set. If you're using
	// google_container_node_pool objects with no default node pool, you'll need to
	// set this to a value of at least 1, alongside setting
	// remove_default_node_pool to true.
	// +kubebuilder:validation:Optional
	InitialNodeCount *float64 `json:"initialNodeCount,omitempty" tf:"initial_node_count,omitempty"`

	// The location (region or zone) in which the cluster
	// master will be created, as well as the default node location. If you specify a
	// zone (such as us-central1-a), the cluster will be a zonal cluster with a
	// single cluster master. If you specify a region (such as us-west1), the
	// cluster will be a regional cluster with multiple masters spread across zones in
	// the region, and with default node locations in those zones as well
	// +kubebuilder:validation:Required
	Location *string `json:"location" tf:"location,omitempty"`

	// Logging configuration for the cluster.
	// Structure is documented below.
	// +kubebuilder:validation:Optional
	LoggingConfig []LoggingConfigParameters `json:"loggingConfig,omitempty" tf:"logging_config,omitempty"`

	// The logging service that the cluster should
	// write logs to. Available options include logging.googleapis.com(Legacy Stackdriver),
	// logging.googleapis.com/kubernetes(Stackdriver Kubernetes Engine Logging), and none. Defaults to logging.googleapis.com/kubernetes
	// +kubebuilder:validation:Optional
	LoggingService *string `json:"loggingService,omitempty" tf:"logging_service,omitempty"`

	// The maintenance policy to use for the cluster. Structure is
	// documented below.
	// +kubebuilder:validation:Optional
	MaintenancePolicy []MaintenancePolicyParameters `json:"maintenancePolicy,omitempty" tf:"maintenance_policy,omitempty"`

	// The authentication information for accessing the
	// Kubernetes master. Some values in this block are only returned by the API if
	// your service account has permission to get credentials for your GKE cluster. If
	// you see an unexpected diff unsetting your client cert, ensure you have the
	// container.clusters.getCredentials permission.
	// Structure is documented below.
	// +kubebuilder:validation:Optional
	MasterAuth []MasterAuthParameters `json:"masterAuth,omitempty" tf:"master_auth,omitempty"`

	// The desired
	// configuration options for master authorized networks. Omit the
	// nested cidr_blocks attribute to disallow external access (except
	// the cluster node IPs, which GKE automatically whitelists).
	// Structure is documented below.
	// +kubebuilder:validation:Optional
	MasterAuthorizedNetworksConfig []MasterAuthorizedNetworksConfigParameters `json:"masterAuthorizedNetworksConfig,omitempty" tf:"master_authorized_networks_config,omitempty"`

	// Structure is documented below.
	// +kubebuilder:validation:Optional
	MeshCertificates []MeshCertificatesParameters `json:"meshCertificates,omitempty" tf:"mesh_certificates,omitempty"`

	// The minimum version of the master. GKE
	// will auto-update the master to new versions, so this does not guarantee the
	// current master version--use the read-only master_version field to obtain that.
	// If unset, the cluster's version will be set by GKE to the version of the most recent
	// official release (which is not necessarily the latest version). If you intend to specify versions manually,
	// the docs
	// describe the various acceptable formats for this field.
	// +kubebuilder:validation:Optional
	MinMasterVersion *string `json:"minMasterVersion,omitempty" tf:"min_master_version,omitempty"`

	// Monitoring configuration for the cluster.
	// Structure is documented below.
	// +kubebuilder:validation:Optional
	MonitoringConfig []MonitoringConfigParameters `json:"monitoringConfig,omitempty" tf:"monitoring_config,omitempty"`

	// The monitoring service that the cluster
	// should write metrics to.
	// Automatically send metrics from pods in the cluster to the Google Cloud Monitoring API.
	// VM metrics will be collected by Google Compute Engine regardless of this setting
	// Available options include
	// monitoring.googleapis.com(Legacy Stackdriver), monitoring.googleapis.com/kubernetes(Stackdriver Kubernetes Engine Monitoring), and none.
	// Defaults to monitoring.googleapis.com/kubernetes
	// +kubebuilder:validation:Optional
	MonitoringService *string `json:"monitoringService,omitempty" tf:"monitoring_service,omitempty"`

	// The name or self_link of the Google Compute Engine
	// network to which the cluster is connected. For Shared VPC, set this to the self link of the
	// shared network.
	// +crossplane:generate:reference:type=github.com/upbound/provider-gcp/apis/compute/v1beta1.Network
	// +crossplane:generate:reference:extractor=github.com/upbound/provider-gcp/config/common.SelfLinkExtractor()
	// +kubebuilder:validation:Optional
	Network *string `json:"network,omitempty" tf:"network,omitempty"`

	// Configuration options for the
	// NetworkPolicy
	// feature. Structure is documented below.
	// +kubebuilder:validation:Optional
	NetworkPolicy []NetworkPolicyParameters `json:"networkPolicy,omitempty" tf:"network_policy,omitempty"`

	// Reference to a Network in compute to populate network.
	// +kubebuilder:validation:Optional
	NetworkRef *v1.Reference `json:"networkRef,omitempty" tf:"-"`

	// Selector for a Network in compute to populate network.
	// +kubebuilder:validation:Optional
	NetworkSelector *v1.Selector `json:"networkSelector,omitempty" tf:"-"`

	// Determines whether alias IPs or routes will be used for pod IPs in the cluster.
	// Options are VPC_NATIVE or ROUTES. VPC_NATIVE enables IP aliasing,
	// and requires the ip_allocation_policy block to be defined. By default, when this field is unspecified and no ip_allocation_policy blocks are set, GKE will create a ROUTES-based cluster.
	// +kubebuilder:validation:Optional
	NetworkingMode *string `json:"networkingMode,omitempty" tf:"networking_mode,omitempty"`

	// Parameters used in creating the default node pool. Structure is documented below.
	// +kubebuilder:validation:Optional
	NodeConfig []NodeConfigParameters `json:"nodeConfig,omitempty" tf:"node_config,omitempty"`

	// The list of zones in which the cluster's nodes
	// are located. Nodes must be in the region of their regional cluster or in the
	// same region as their cluster's zone for zonal clusters. If this is specified for
	// a zonal cluster, omit the cluster's zone.
	// +kubebuilder:validation:Optional
	NodeLocations []*string `json:"nodeLocations,omitempty" tf:"node_locations,omitempty"`

	// Default NodePool settings for the entire cluster. These settings are overridden if specified on the specific NodePool object. Structure is documented below.
	// +kubebuilder:validation:Optional
	NodePoolDefaults []NodePoolDefaultsParameters `json:"nodePoolDefaults,omitempty" tf:"node_pool_defaults,omitempty"`

	// The Kubernetes version on the nodes. Must either be unset
	// or set to the same value as min_master_version on create. Defaults to the default
	// version set by GKE which is not necessarily the latest version. This only affects
	// nodes in the default node pool.
	// To update nodes in other node pools, use the version attribute on the node pool.
	// +kubebuilder:validation:Optional
	NodeVersion *string `json:"nodeVersion,omitempty" tf:"node_version,omitempty"`

	// Configuration for the cluster upgrade notifications feature. Structure is documented below.
	// +kubebuilder:validation:Optional
	NotificationConfig []NotificationConfigParameters `json:"notificationConfig,omitempty" tf:"notification_config,omitempty"`

	// Configuration for private clusters,
	// clusters with private nodes. Structure is documented below.
	// +kubebuilder:validation:Optional
	PrivateClusterConfig []PrivateClusterConfigParameters `json:"privateClusterConfig,omitempty" tf:"private_cluster_config,omitempty"`

	// The desired state of IPv6 connectivity to Google Services. By default, no private IPv6 access to or from Google Services (all access will be via IPv4).
	// +kubebuilder:validation:Optional
	PrivateIPv6GoogleAccess *string `json:"privateIpv6GoogleAccess,omitempty" tf:"private_ipv6_google_access,omitempty"`

	// The ID of the project in which the resource belongs. If it
	// is not provided, the provider project is used.
	// +kubebuilder:validation:Optional
	Project *string `json:"project,omitempty" tf:"project,omitempty"`

	// Configuration options for the Release channel
	// feature, which provide more control over automatic upgrades of your GKE clusters.
	// When updating this field, GKE imposes specific version requirements. See
	// Selecting a new release channel
	// for more details; the google_container_engine_versions datasource can provide
	// the default version for a channel. Instead, use the "UNSPECIFIED"
	// channel. Structure is documented below.
	// +kubebuilder:validation:Optional
	ReleaseChannel []ReleaseChannelParameters `json:"releaseChannel,omitempty" tf:"release_channel,omitempty"`

	// If true, deletes the default node
	// pool upon cluster creation. If you're using google_container_node_pool
	// resources with no default node pool, this should be set to true, alongside
	// setting initial_node_count to at least 1.
	// +kubebuilder:validation:Optional
	RemoveDefaultNodePool *bool `json:"removeDefaultNodePool,omitempty" tf:"remove_default_node_pool,omitempty"`

	// The GCE resource labels (a map of key/value pairs) to be applied to the cluster.
	// +kubebuilder:validation:Optional
	ResourceLabels map[string]*string `json:"resourceLabels,omitempty" tf:"resource_labels,omitempty"`

	// Configuration for the
	// ResourceUsageExportConfig feature.
	// Structure is documented below.
	// +kubebuilder:validation:Optional
	ResourceUsageExportConfig []ResourceUsageExportConfigParameters `json:"resourceUsageExportConfig,omitempty" tf:"resource_usage_export_config,omitempty"`

	// Structure is documented below.
	// +kubebuilder:validation:Optional
	ServiceExternalIpsConfig []ServiceExternalIpsConfigParameters `json:"serviceExternalIpsConfig,omitempty" tf:"service_external_ips_config,omitempty"`

	// The name or self_link of the Google Compute Engine
	// subnetwork in which the cluster's instances are launched.
	// +crossplane:generate:reference:type=github.com/upbound/provider-gcp/apis/compute/v1beta1.Subnetwork
	// +crossplane:generate:reference:extractor=github.com/upbound/provider-gcp/config/common.SelfLinkExtractor()
	// +kubebuilder:validation:Optional
	Subnetwork *string `json:"subnetwork,omitempty" tf:"subnetwork,omitempty"`

	// Reference to a Subnetwork in compute to populate subnetwork.
	// +kubebuilder:validation:Optional
	SubnetworkRef *v1.Reference `json:"subnetworkRef,omitempty" tf:"-"`

	// Selector for a Subnetwork in compute to populate subnetwork.
	// +kubebuilder:validation:Optional
	SubnetworkSelector *v1.Selector `json:"subnetworkSelector,omitempty" tf:"-"`

	// Vertical Pod Autoscaling automatically adjusts the resources of pods controlled by it.
	// Structure is documented below.
	// +kubebuilder:validation:Optional
	VerticalPodAutoscaling []VerticalPodAutoscalingParameters `json:"verticalPodAutoscaling,omitempty" tf:"vertical_pod_autoscaling,omitempty"`

	// Workload Identity allows Kubernetes service accounts to act as a user-managed
	// Google IAM Service Account.
	// Structure is documented below.
	// +kubebuilder:validation:Optional
	WorkloadIdentityConfig []WorkloadIdentityConfigParameters `json:"workloadIdentityConfig,omitempty" tf:"workload_identity_config,omitempty"`
}

func (*ClusterParameters) DeepCopy

func (in *ClusterParameters) DeepCopy() *ClusterParameters

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ClusterParameters.

func (*ClusterParameters) DeepCopyInto

func (in *ClusterParameters) DeepCopyInto(out *ClusterParameters)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type ClusterSpec

type ClusterSpec struct {
	v1.ResourceSpec `json:",inline"`
	ForProvider     ClusterParameters `json:"forProvider"`
}

ClusterSpec defines the desired state of Cluster

func (*ClusterSpec) DeepCopy

func (in *ClusterSpec) DeepCopy() *ClusterSpec

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ClusterSpec.

func (*ClusterSpec) DeepCopyInto

func (in *ClusterSpec) DeepCopyInto(out *ClusterSpec)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type ClusterStatus

type ClusterStatus struct {
	v1.ResourceStatus `json:",inline"`
	AtProvider        ClusterObservation `json:"atProvider,omitempty"`
}

ClusterStatus defines the observed state of Cluster.

func (*ClusterStatus) DeepCopy

func (in *ClusterStatus) DeepCopy() *ClusterStatus

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ClusterStatus.

func (*ClusterStatus) DeepCopyInto

func (in *ClusterStatus) DeepCopyInto(out *ClusterStatus)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type ConfidentialNodesObservation

type ConfidentialNodesObservation struct {
}

func (*ConfidentialNodesObservation) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ConfidentialNodesObservation.

func (*ConfidentialNodesObservation) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type ConfidentialNodesParameters

type ConfidentialNodesParameters struct {

	// Enable Confidential Nodes for this cluster.
	// +kubebuilder:validation:Required
	Enabled *bool `json:"enabled" tf:"enabled,omitempty"`
}

func (*ConfidentialNodesParameters) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ConfidentialNodesParameters.

func (*ConfidentialNodesParameters) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type ConfigConnectorConfigObservation added in v0.27.0

type ConfigConnectorConfigObservation struct {
}

func (*ConfigConnectorConfigObservation) DeepCopy added in v0.27.0

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ConfigConnectorConfigObservation.

func (*ConfigConnectorConfigObservation) DeepCopyInto added in v0.27.0

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type ConfigConnectorConfigParameters added in v0.27.0

type ConfigConnectorConfigParameters struct {

	// Enables vertical pod autoscaling
	// +kubebuilder:validation:Required
	Enabled *bool `json:"enabled" tf:"enabled,omitempty"`
}

func (*ConfigConnectorConfigParameters) DeepCopy added in v0.27.0

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ConfigConnectorConfigParameters.

func (*ConfigConnectorConfigParameters) DeepCopyInto added in v0.27.0

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type CostManagementConfigObservation added in v0.26.0

type CostManagementConfigObservation struct {
}

func (*CostManagementConfigObservation) DeepCopy added in v0.26.0

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CostManagementConfigObservation.

func (*CostManagementConfigObservation) DeepCopyInto added in v0.26.0

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type CostManagementConfigParameters added in v0.26.0

type CostManagementConfigParameters struct {

	// Whether to enable the cost allocation feature.
	// +kubebuilder:validation:Required
	Enabled *bool `json:"enabled" tf:"enabled,omitempty"`
}

func (*CostManagementConfigParameters) DeepCopy added in v0.26.0

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CostManagementConfigParameters.

func (*CostManagementConfigParameters) DeepCopyInto added in v0.26.0

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type DNSCacheConfigObservation added in v0.26.0

type DNSCacheConfigObservation struct {
}

func (*DNSCacheConfigObservation) DeepCopy added in v0.26.0

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DNSCacheConfigObservation.

func (*DNSCacheConfigObservation) DeepCopyInto added in v0.26.0

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type DNSCacheConfigParameters added in v0.26.0

type DNSCacheConfigParameters struct {

	// Enables vertical pod autoscaling
	// +kubebuilder:validation:Required
	Enabled *bool `json:"enabled" tf:"enabled,omitempty"`
}

func (*DNSCacheConfigParameters) DeepCopy added in v0.26.0

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DNSCacheConfigParameters.

func (*DNSCacheConfigParameters) DeepCopyInto added in v0.26.0

func (in *DNSCacheConfigParameters) DeepCopyInto(out *DNSCacheConfigParameters)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type DNSConfigObservation

type DNSConfigObservation struct {
}

func (*DNSConfigObservation) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DNSConfigObservation.

func (*DNSConfigObservation) DeepCopyInto

func (in *DNSConfigObservation) DeepCopyInto(out *DNSConfigObservation)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type DNSConfigParameters

type DNSConfigParameters struct {

	// Which in-cluster DNS provider should be used. PROVIDER_UNSPECIFIED (default) or PLATFORM_DEFAULT or CLOUD_DNS.
	// +kubebuilder:validation:Optional
	ClusterDNS *string `json:"clusterDns,omitempty" tf:"cluster_dns,omitempty"`

	// The suffix used for all cluster service records.
	// +kubebuilder:validation:Optional
	ClusterDNSDomain *string `json:"clusterDnsDomain,omitempty" tf:"cluster_dns_domain,omitempty"`

	// The scope of access to cluster DNS records. DNS_SCOPE_UNSPECIFIED (default) or CLUSTER_SCOPE or VPC_SCOPE.
	// +kubebuilder:validation:Optional
	ClusterDNSScope *string `json:"clusterDnsScope,omitempty" tf:"cluster_dns_scope,omitempty"`
}

func (*DNSConfigParameters) DeepCopy

func (in *DNSConfigParameters) DeepCopy() *DNSConfigParameters

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DNSConfigParameters.

func (*DNSConfigParameters) DeepCopyInto

func (in *DNSConfigParameters) DeepCopyInto(out *DNSConfigParameters)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type DailyMaintenanceWindowObservation

type DailyMaintenanceWindowObservation struct {

	// Duration of the time window, automatically chosen to be
	// smallest possible in the given scenario.
	// Duration will be in RFC3339 format "PTnHnMnS".
	Duration *string `json:"duration,omitempty" tf:"duration,omitempty"`
}

func (*DailyMaintenanceWindowObservation) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DailyMaintenanceWindowObservation.

func (*DailyMaintenanceWindowObservation) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type DailyMaintenanceWindowParameters

type DailyMaintenanceWindowParameters struct {

	// +kubebuilder:validation:Required
	StartTime *string `json:"startTime" tf:"start_time,omitempty"`
}

func (*DailyMaintenanceWindowParameters) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DailyMaintenanceWindowParameters.

func (*DailyMaintenanceWindowParameters) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type DatabaseEncryptionObservation

type DatabaseEncryptionObservation struct {
}

func (*DatabaseEncryptionObservation) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DatabaseEncryptionObservation.

func (*DatabaseEncryptionObservation) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type DatabaseEncryptionParameters

type DatabaseEncryptionParameters struct {

	// the key to use to encrypt/decrypt secrets.  See the DatabaseEncryption definition for more information.
	// +kubebuilder:validation:Optional
	KeyName *string `json:"keyName,omitempty" tf:"key_name,omitempty"`

	// ENCRYPTED or DECRYPTED
	// +kubebuilder:validation:Required
	State *string `json:"state" tf:"state,omitempty"`
}

func (*DatabaseEncryptionParameters) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DatabaseEncryptionParameters.

func (*DatabaseEncryptionParameters) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type DefaultSnatStatusObservation

type DefaultSnatStatusObservation struct {
}

func (*DefaultSnatStatusObservation) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DefaultSnatStatusObservation.

func (*DefaultSnatStatusObservation) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type DefaultSnatStatusParameters

type DefaultSnatStatusParameters struct {

	// Whether the cluster disables default in-node sNAT rules. In-node sNAT rules will be disabled when defaultSnatStatus is disabled.When disabled is set to false, default IP masquerade rules will be applied to the nodes to prevent sNAT on cluster internal traffic
	// +kubebuilder:validation:Required
	Disabled *bool `json:"disabled" tf:"disabled,omitempty"`
}

func (*DefaultSnatStatusParameters) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DefaultSnatStatusParameters.

func (*DefaultSnatStatusParameters) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type ExclusionOptionsObservation

type ExclusionOptionsObservation struct {
}

func (*ExclusionOptionsObservation) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ExclusionOptionsObservation.

func (*ExclusionOptionsObservation) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type ExclusionOptionsParameters

type ExclusionOptionsParameters struct {

	// The scope of automatic upgrades to restrict in the exclusion window. One of: NO_UPGRADES | NO_MINOR_UPGRADES | NO_MINOR_OR_NODE_UPGRADES
	// +kubebuilder:validation:Required
	Scope *string `json:"scope" tf:"scope,omitempty"`
}

func (*ExclusionOptionsParameters) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ExclusionOptionsParameters.

func (*ExclusionOptionsParameters) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type FilterObservation added in v0.26.0

type FilterObservation struct {
}

func (*FilterObservation) DeepCopy added in v0.26.0

func (in *FilterObservation) DeepCopy() *FilterObservation

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new FilterObservation.

func (*FilterObservation) DeepCopyInto added in v0.26.0

func (in *FilterObservation) DeepCopyInto(out *FilterObservation)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type FilterParameters added in v0.26.0

type FilterParameters struct {

	// Can be used to filter what notifications are sent. Accepted values are UPGRADE_AVAILABLE_EVENT, UPGRADE_EVENT and SECURITY_BULLETIN_EVENT. See Filtering notifications for more details.
	// +kubebuilder:validation:Required
	EventType []*string `json:"eventType" tf:"event_type,omitempty"`
}

func (*FilterParameters) DeepCopy added in v0.26.0

func (in *FilterParameters) DeepCopy() *FilterParameters

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new FilterParameters.

func (*FilterParameters) DeepCopyInto added in v0.26.0

func (in *FilterParameters) DeepCopyInto(out *FilterParameters)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type GCPFilestoreCsiDriverConfigObservation

type GCPFilestoreCsiDriverConfigObservation struct {
}

func (*GCPFilestoreCsiDriverConfigObservation) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new GCPFilestoreCsiDriverConfigObservation.

func (*GCPFilestoreCsiDriverConfigObservation) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type GCPFilestoreCsiDriverConfigParameters

type GCPFilestoreCsiDriverConfigParameters struct {

	// Enables vertical pod autoscaling
	// +kubebuilder:validation:Required
	Enabled *bool `json:"enabled" tf:"enabled,omitempty"`
}

func (*GCPFilestoreCsiDriverConfigParameters) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new GCPFilestoreCsiDriverConfigParameters.

func (*GCPFilestoreCsiDriverConfigParameters) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type GatewayAPIConfigObservation added in v0.26.0

type GatewayAPIConfigObservation struct {
}

func (*GatewayAPIConfigObservation) DeepCopy added in v0.26.0

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new GatewayAPIConfigObservation.

func (*GatewayAPIConfigObservation) DeepCopyInto added in v0.26.0

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type GatewayAPIConfigParameters added in v0.26.0

type GatewayAPIConfigParameters struct {

	// Which Gateway Api channel should be used. CHANNEL_DISABLED or CHANNEL_STANDARD.
	// +kubebuilder:validation:Required
	Channel *string `json:"channel" tf:"channel,omitempty"`
}

func (*GatewayAPIConfigParameters) DeepCopy added in v0.26.0

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new GatewayAPIConfigParameters.

func (*GatewayAPIConfigParameters) DeepCopyInto added in v0.26.0

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type GcePersistentDiskCsiDriverConfigObservation added in v0.26.0

type GcePersistentDiskCsiDriverConfigObservation struct {
}

func (*GcePersistentDiskCsiDriverConfigObservation) DeepCopy added in v0.26.0

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new GcePersistentDiskCsiDriverConfigObservation.

func (*GcePersistentDiskCsiDriverConfigObservation) DeepCopyInto added in v0.26.0

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type GcePersistentDiskCsiDriverConfigParameters added in v0.26.0

type GcePersistentDiskCsiDriverConfigParameters struct {

	// Enables vertical pod autoscaling
	// +kubebuilder:validation:Required
	Enabled *bool `json:"enabled" tf:"enabled,omitempty"`
}

func (*GcePersistentDiskCsiDriverConfigParameters) DeepCopy added in v0.26.0

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new GcePersistentDiskCsiDriverConfigParameters.

func (*GcePersistentDiskCsiDriverConfigParameters) DeepCopyInto added in v0.26.0

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type GcfsConfigObservation

type GcfsConfigObservation struct {
}

func (*GcfsConfigObservation) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new GcfsConfigObservation.

func (*GcfsConfigObservation) DeepCopyInto

func (in *GcfsConfigObservation) DeepCopyInto(out *GcfsConfigObservation)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type GcfsConfigParameters

type GcfsConfigParameters struct {

	// Enables vertical pod autoscaling
	// +kubebuilder:validation:Required
	Enabled *bool `json:"enabled" tf:"enabled,omitempty"`
}

func (*GcfsConfigParameters) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new GcfsConfigParameters.

func (*GcfsConfigParameters) DeepCopyInto

func (in *GcfsConfigParameters) DeepCopyInto(out *GcfsConfigParameters)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type GkeBackupAgentConfigObservation added in v0.26.0

type GkeBackupAgentConfigObservation struct {
}

func (*GkeBackupAgentConfigObservation) DeepCopy added in v0.26.0

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new GkeBackupAgentConfigObservation.

func (*GkeBackupAgentConfigObservation) DeepCopyInto added in v0.26.0

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type GkeBackupAgentConfigParameters added in v0.26.0

type GkeBackupAgentConfigParameters struct {

	// Enables vertical pod autoscaling
	// +kubebuilder:validation:Required
	Enabled *bool `json:"enabled" tf:"enabled,omitempty"`
}

func (*GkeBackupAgentConfigParameters) DeepCopy added in v0.26.0

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new GkeBackupAgentConfigParameters.

func (*GkeBackupAgentConfigParameters) DeepCopyInto added in v0.26.0

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type GpuSharingConfigObservation added in v0.26.0

type GpuSharingConfigObservation struct {
}

func (*GpuSharingConfigObservation) DeepCopy added in v0.26.0

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new GpuSharingConfigObservation.

func (*GpuSharingConfigObservation) DeepCopyInto added in v0.26.0

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type GpuSharingConfigParameters added in v0.26.0

type GpuSharingConfigParameters struct {

	// The type of GPU sharing strategy to enable on the GPU node.
	// Accepted values are:
	// +kubebuilder:validation:Optional
	GpuSharingStrategy *string `json:"gpuSharingStrategy,omitempty" tf:"gpu_sharing_strategy"`

	// The maximum number of containers that can share a GPU.
	// +kubebuilder:validation:Optional
	MaxSharedClientsPerGpu *float64 `json:"maxSharedClientsPerGpu,omitempty" tf:"max_shared_clients_per_gpu"`
}

func (*GpuSharingConfigParameters) DeepCopy added in v0.26.0

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new GpuSharingConfigParameters.

func (*GpuSharingConfigParameters) DeepCopyInto added in v0.26.0

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type GuestAcceleratorGpuSharingConfigObservation added in v0.26.0

type GuestAcceleratorGpuSharingConfigObservation struct {

	// The type of GPU sharing strategy to enable on the GPU node.
	// Accepted values are:
	GpuSharingStrategy *string `json:"gpuSharingStrategy,omitempty" tf:"gpu_sharing_strategy,omitempty"`

	// The maximum number of containers that can share a GPU.
	MaxSharedClientsPerGpu *float64 `json:"maxSharedClientsPerGpu,omitempty" tf:"max_shared_clients_per_gpu,omitempty"`
}

func (*GuestAcceleratorGpuSharingConfigObservation) DeepCopy added in v0.26.0

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new GuestAcceleratorGpuSharingConfigObservation.

func (*GuestAcceleratorGpuSharingConfigObservation) DeepCopyInto added in v0.26.0

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type GuestAcceleratorGpuSharingConfigParameters added in v0.26.0

type GuestAcceleratorGpuSharingConfigParameters struct {
}

func (*GuestAcceleratorGpuSharingConfigParameters) DeepCopy added in v0.26.0

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new GuestAcceleratorGpuSharingConfigParameters.

func (*GuestAcceleratorGpuSharingConfigParameters) DeepCopyInto added in v0.26.0

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type GuestAcceleratorObservation

type GuestAcceleratorObservation struct {
}

func (*GuestAcceleratorObservation) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new GuestAcceleratorObservation.

func (*GuestAcceleratorObservation) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type GuestAcceleratorParameters

type GuestAcceleratorParameters struct {

	// The number of the guest accelerator cards exposed to this instance.
	// +kubebuilder:validation:Optional
	Count *float64 `json:"count,omitempty" tf:"count"`

	// Size of partitions to create on the GPU. Valid values are described in the NVIDIA mig user guide.
	// +kubebuilder:validation:Optional
	GpuPartitionSize *string `json:"gpuPartitionSize,omitempty" tf:"gpu_partition_size"`

	// Configuration for GPU sharing. Structure is documented below.
	// +kubebuilder:validation:Optional
	GpuSharingConfig []GpuSharingConfigParameters `json:"gpuSharingConfig,omitempty" tf:"gpu_sharing_config"`

	// The accelerator type resource to expose to this instance. E.g. nvidia-tesla-k80.
	// +kubebuilder:validation:Optional
	Type *string `json:"type,omitempty" tf:"type"`
}

func (*GuestAcceleratorParameters) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new GuestAcceleratorParameters.

func (*GuestAcceleratorParameters) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type GvnicObservation

type GvnicObservation struct {
}

func (*GvnicObservation) DeepCopy

func (in *GvnicObservation) DeepCopy() *GvnicObservation

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new GvnicObservation.

func (*GvnicObservation) DeepCopyInto

func (in *GvnicObservation) DeepCopyInto(out *GvnicObservation)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type GvnicParameters

type GvnicParameters struct {

	// Enables vertical pod autoscaling
	// +kubebuilder:validation:Required
	Enabled *bool `json:"enabled" tf:"enabled,omitempty"`
}

func (*GvnicParameters) DeepCopy

func (in *GvnicParameters) DeepCopy() *GvnicParameters

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new GvnicParameters.

func (*GvnicParameters) DeepCopyInto

func (in *GvnicParameters) DeepCopyInto(out *GvnicParameters)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type HTTPLoadBalancingObservation

type HTTPLoadBalancingObservation struct {
}

func (*HTTPLoadBalancingObservation) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new HTTPLoadBalancingObservation.

func (*HTTPLoadBalancingObservation) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type HTTPLoadBalancingParameters

type HTTPLoadBalancingParameters struct {

	// The status of the Istio addon, which makes it easy to set up Istio for services in a
	// cluster. It is disabled by default. Set disabled = false to enable.
	// +kubebuilder:validation:Required
	Disabled *bool `json:"disabled" tf:"disabled,omitempty"`
}

func (*HTTPLoadBalancingParameters) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new HTTPLoadBalancingParameters.

func (*HTTPLoadBalancingParameters) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type HorizontalPodAutoscalingObservation

type HorizontalPodAutoscalingObservation struct {
}

func (*HorizontalPodAutoscalingObservation) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new HorizontalPodAutoscalingObservation.

func (*HorizontalPodAutoscalingObservation) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type HorizontalPodAutoscalingParameters

type HorizontalPodAutoscalingParameters struct {

	// The status of the Istio addon, which makes it easy to set up Istio for services in a
	// cluster. It is disabled by default. Set disabled = false to enable.
	// +kubebuilder:validation:Required
	Disabled *bool `json:"disabled" tf:"disabled,omitempty"`
}

func (*HorizontalPodAutoscalingParameters) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new HorizontalPodAutoscalingParameters.

func (*HorizontalPodAutoscalingParameters) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type IPAllocationPolicyObservation

type IPAllocationPolicyObservation struct {
}

func (*IPAllocationPolicyObservation) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new IPAllocationPolicyObservation.

func (*IPAllocationPolicyObservation) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type IPAllocationPolicyParameters

type IPAllocationPolicyParameters struct {

	// The IP address range for the cluster pod IPs.
	// Set to blank to have a range chosen with the default size. Set to /netmask (e.g. /14)
	// to have a range chosen with a specific netmask. Set to a CIDR notation (e.g. 10.96.0.0/14)
	// from the RFC-1918 private networks (e.g. 10.0.0.0/8, 172.16.0.0/12, 192.168.0.0/16) to
	// pick a specific range to use.
	// +kubebuilder:validation:Optional
	ClusterIPv4CidrBlock *string `json:"clusterIpv4CidrBlock,omitempty" tf:"cluster_ipv4_cidr_block,omitempty"`

	// The name of the existing secondary
	// range in the cluster's subnetwork to use for pod IP addresses. Alternatively,
	// cluster_ipv4_cidr_block can be used to automatically create a GKE-managed one.
	// +kubebuilder:validation:Optional
	ClusterSecondaryRangeName *string `json:"clusterSecondaryRangeName,omitempty" tf:"cluster_secondary_range_name,omitempty"`

	// The IP address range of the services IPs in this cluster.
	// Set to blank to have a range chosen with the default size. Set to /netmask (e.g. /14)
	// to have a range chosen with a specific netmask. Set to a CIDR notation (e.g. 10.96.0.0/14)
	// from the RFC-1918 private networks (e.g. 10.0.0.0/8, 172.16.0.0/12, 192.168.0.0/16) to
	// pick a specific range to use.
	// +kubebuilder:validation:Optional
	ServicesIPv4CidrBlock *string `json:"servicesIpv4CidrBlock,omitempty" tf:"services_ipv4_cidr_block,omitempty"`

	// The name of the existing
	// secondary range in the cluster's subnetwork to use for service ClusterIPs.
	// Alternatively, services_ipv4_cidr_block can be used to automatically create a
	// GKE-managed one.
	// +kubebuilder:validation:Optional
	ServicesSecondaryRangeName *string `json:"servicesSecondaryRangeName,omitempty" tf:"services_secondary_range_name,omitempty"`
}

func (*IPAllocationPolicyParameters) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new IPAllocationPolicyParameters.

func (*IPAllocationPolicyParameters) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type KubeletConfigObservation added in v0.27.0

type KubeletConfigObservation struct {
}

func (*KubeletConfigObservation) DeepCopy added in v0.27.0

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new KubeletConfigObservation.

func (*KubeletConfigObservation) DeepCopyInto added in v0.27.0

func (in *KubeletConfigObservation) DeepCopyInto(out *KubeletConfigObservation)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type KubeletConfigParameters added in v0.27.0

type KubeletConfigParameters struct {

	// If true, enables CPU CFS quota enforcement for
	// containers that specify CPU limits.
	// +kubebuilder:validation:Optional
	CPUCfsQuota *bool `json:"cpuCfsQuota,omitempty" tf:"cpu_cfs_quota,omitempty"`

	// The CPU CFS quota period value. Specified
	// as a sequence of decimal numbers, each with optional fraction and a unit suffix,
	// such as "300ms". Valid time units are "ns", "us" (or "µs"), "ms", "s", "m",
	// "h". The value must be a positive duration.
	// +kubebuilder:validation:Optional
	CPUCfsQuotaPeriod *string `json:"cpuCfsQuotaPeriod,omitempty" tf:"cpu_cfs_quota_period,omitempty"`

	// The CPU management policy on the node. See
	// K8S CPU Management Policies.
	// One of "none" or "static". Defaults to none when kubelet_config is unset.
	// +kubebuilder:validation:Required
	CPUManagerPolicy *string `json:"cpuManagerPolicy" tf:"cpu_manager_policy,omitempty"`

	// Controls the maximum number of processes allowed to run in a pod. The value must be greater than or equal to 1024 and less than 4194304.
	// +kubebuilder:validation:Optional
	PodPidsLimit *float64 `json:"podPidsLimit,omitempty" tf:"pod_pids_limit,omitempty"`
}

func (*KubeletConfigParameters) DeepCopy added in v0.27.0

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new KubeletConfigParameters.

func (*KubeletConfigParameters) DeepCopyInto added in v0.27.0

func (in *KubeletConfigParameters) DeepCopyInto(out *KubeletConfigParameters)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type LinuxNodeConfigObservation added in v0.27.0

type LinuxNodeConfigObservation struct {
}

func (*LinuxNodeConfigObservation) DeepCopy added in v0.27.0

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LinuxNodeConfigObservation.

func (*LinuxNodeConfigObservation) DeepCopyInto added in v0.27.0

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type LinuxNodeConfigParameters added in v0.27.0

type LinuxNodeConfigParameters struct {

	// The Linux kernel parameters to be applied to the nodes
	// and all pods running on the nodes. Specified as a map from the key, such as
	// net.core.wmem_max, to a string value.
	// +kubebuilder:validation:Required
	Sysctls map[string]*string `json:"sysctls" tf:"sysctls,omitempty"`
}

func (*LinuxNodeConfigParameters) DeepCopy added in v0.27.0

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LinuxNodeConfigParameters.

func (*LinuxNodeConfigParameters) DeepCopyInto added in v0.27.0

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type LoggingConfigObservation

type LoggingConfigObservation struct {
}

func (*LoggingConfigObservation) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LoggingConfigObservation.

func (*LoggingConfigObservation) DeepCopyInto

func (in *LoggingConfigObservation) DeepCopyInto(out *LoggingConfigObservation)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type LoggingConfigParameters

type LoggingConfigParameters struct {

	// The GKE components exposing logs. Supported values include:
	// SYSTEM_COMPONENTS, APISERVER, CONTROLLER_MANAGER, SCHEDULER, and WORKLOADS.
	// +kubebuilder:validation:Required
	EnableComponents []*string `json:"enableComponents" tf:"enable_components,omitempty"`
}

func (*LoggingConfigParameters) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LoggingConfigParameters.

func (*LoggingConfigParameters) DeepCopyInto

func (in *LoggingConfigParameters) DeepCopyInto(out *LoggingConfigParameters)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type MaintenanceExclusionObservation

type MaintenanceExclusionObservation struct {
}

func (*MaintenanceExclusionObservation) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new MaintenanceExclusionObservation.

func (*MaintenanceExclusionObservation) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type MaintenanceExclusionParameters

type MaintenanceExclusionParameters struct {

	// +kubebuilder:validation:Required
	EndTime *string `json:"endTime" tf:"end_time,omitempty"`

	// The name of the cluster, unique within the project and
	// location.
	// +kubebuilder:validation:Required
	ExclusionName *string `json:"exclusionName" tf:"exclusion_name,omitempty"`

	// MaintenanceExclusionOptions provides maintenance exclusion related options.
	// +kubebuilder:validation:Optional
	ExclusionOptions []ExclusionOptionsParameters `json:"exclusionOptions,omitempty" tf:"exclusion_options,omitempty"`

	// +kubebuilder:validation:Required
	StartTime *string `json:"startTime" tf:"start_time,omitempty"`
}

func (*MaintenanceExclusionParameters) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new MaintenanceExclusionParameters.

func (*MaintenanceExclusionParameters) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type MaintenancePolicyObservation

type MaintenancePolicyObservation struct {

	// structure documented below.
	// +kubebuilder:validation:Optional
	DailyMaintenanceWindow []DailyMaintenanceWindowObservation `json:"dailyMaintenanceWindow,omitempty" tf:"daily_maintenance_window,omitempty"`
}

func (*MaintenancePolicyObservation) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new MaintenancePolicyObservation.

func (*MaintenancePolicyObservation) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type MaintenancePolicyParameters

type MaintenancePolicyParameters struct {

	// structure documented below.
	// +kubebuilder:validation:Optional
	DailyMaintenanceWindow []DailyMaintenanceWindowParameters `json:"dailyMaintenanceWindow,omitempty" tf:"daily_maintenance_window,omitempty"`

	// structure documented below
	// +kubebuilder:validation:Optional
	MaintenanceExclusion []MaintenanceExclusionParameters `json:"maintenanceExclusion,omitempty" tf:"maintenance_exclusion,omitempty"`

	// structure documented below
	// +kubebuilder:validation:Optional
	RecurringWindow []RecurringWindowParameters `json:"recurringWindow,omitempty" tf:"recurring_window,omitempty"`
}

func (*MaintenancePolicyParameters) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new MaintenancePolicyParameters.

func (*MaintenancePolicyParameters) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type ManagedPrometheusObservation added in v0.26.0

type ManagedPrometheusObservation struct {
}

func (*ManagedPrometheusObservation) DeepCopy added in v0.26.0

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ManagedPrometheusObservation.

func (*ManagedPrometheusObservation) DeepCopyInto added in v0.26.0

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type ManagedPrometheusParameters added in v0.26.0

type ManagedPrometheusParameters struct {

	// Enables vertical pod autoscaling
	// +kubebuilder:validation:Required
	Enabled *bool `json:"enabled" tf:"enabled,omitempty"`
}

func (*ManagedPrometheusParameters) DeepCopy added in v0.26.0

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ManagedPrometheusParameters.

func (*ManagedPrometheusParameters) DeepCopyInto added in v0.26.0

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type ManagementObservation

type ManagementObservation struct {

	// Specifies the Auto Upgrade knobs for the node pool.
	UpgradeOptions []UpgradeOptionsObservation `json:"upgradeOptions,omitempty" tf:"upgrade_options,omitempty"`
}

func (*ManagementObservation) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ManagementObservation.

func (*ManagementObservation) DeepCopyInto

func (in *ManagementObservation) DeepCopyInto(out *ManagementObservation)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type ManagementParameters

type ManagementParameters struct {

	// Specifies whether the node auto-repair is enabled for the node pool. If enabled, the nodes in this node pool will be monitored and, if they fail health checks too many times, an automatic repair action will be triggered.
	// +kubebuilder:validation:Optional
	AutoRepair *bool `json:"autoRepair,omitempty" tf:"auto_repair,omitempty"`

	// Specifies whether node auto-upgrade is enabled for the node pool. If enabled, node auto-upgrade helps keep the nodes in your node pool up to date with the latest release version of Kubernetes.
	// +kubebuilder:validation:Optional
	AutoUpgrade *bool `json:"autoUpgrade,omitempty" tf:"auto_upgrade,omitempty"`
}

func (*ManagementParameters) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ManagementParameters.

func (*ManagementParameters) DeepCopyInto

func (in *ManagementParameters) DeepCopyInto(out *ManagementParameters)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type MasterAuthObservation

type MasterAuthObservation struct {

	// Base64 encoded public certificate
	// used by clients to authenticate to the cluster endpoint.
	ClientCertificate *string `json:"clientCertificate,omitempty" tf:"client_certificate,omitempty"`

	// Base64 encoded public certificate
	// that is the root certificate of the cluster.
	ClusterCACertificate *string `json:"clusterCaCertificate,omitempty" tf:"cluster_ca_certificate,omitempty"`
}

func (*MasterAuthObservation) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new MasterAuthObservation.

func (*MasterAuthObservation) DeepCopyInto

func (in *MasterAuthObservation) DeepCopyInto(out *MasterAuthObservation)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type MasterAuthParameters

type MasterAuthParameters struct {

	// Whether client certificate authorization is enabled for this cluster.  For example:
	// +kubebuilder:validation:Required
	ClientCertificateConfig []ClientCertificateConfigParameters `json:"clientCertificateConfig" tf:"client_certificate_config,omitempty"`
}

func (*MasterAuthParameters) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new MasterAuthParameters.

func (*MasterAuthParameters) DeepCopyInto

func (in *MasterAuthParameters) DeepCopyInto(out *MasterAuthParameters)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type MasterAuthorizedNetworksConfigObservation

type MasterAuthorizedNetworksConfigObservation struct {
}

func (*MasterAuthorizedNetworksConfigObservation) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new MasterAuthorizedNetworksConfigObservation.

func (*MasterAuthorizedNetworksConfigObservation) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type MasterAuthorizedNetworksConfigParameters

type MasterAuthorizedNetworksConfigParameters struct {

	// External networks that can access the
	// Kubernetes cluster master through HTTPS.
	// +kubebuilder:validation:Optional
	CidrBlocks []CidrBlocksParameters `json:"cidrBlocks,omitempty" tf:"cidr_blocks,omitempty"`

	// Whether Kubernetes master is
	// accessible via Google Compute Engine Public IPs.
	// +kubebuilder:validation:Optional
	GCPPublicCidrsAccessEnabled *bool `json:"gcpPublicCidrsAccessEnabled,omitempty" tf:"gcp_public_cidrs_access_enabled,omitempty"`
}

func (*MasterAuthorizedNetworksConfigParameters) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new MasterAuthorizedNetworksConfigParameters.

func (*MasterAuthorizedNetworksConfigParameters) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type MasterGlobalAccessConfigObservation

type MasterGlobalAccessConfigObservation struct {
}

func (*MasterGlobalAccessConfigObservation) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new MasterGlobalAccessConfigObservation.

func (*MasterGlobalAccessConfigObservation) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type MasterGlobalAccessConfigParameters

type MasterGlobalAccessConfigParameters struct {

	// Whether the cluster master is accessible globally or
	// not.
	// +kubebuilder:validation:Required
	Enabled *bool `json:"enabled" tf:"enabled,omitempty"`
}

func (*MasterGlobalAccessConfigParameters) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new MasterGlobalAccessConfigParameters.

func (*MasterGlobalAccessConfigParameters) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type MeshCertificatesObservation added in v0.26.0

type MeshCertificatesObservation struct {
}

func (*MeshCertificatesObservation) DeepCopy added in v0.26.0

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new MeshCertificatesObservation.

func (*MeshCertificatesObservation) DeepCopyInto added in v0.26.0

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type MeshCertificatesParameters added in v0.26.0

type MeshCertificatesParameters struct {

	// Controls the issuance of workload mTLS certificates. It is enabled by default. Workload Identity is required, see workload_config.
	// +kubebuilder:validation:Required
	EnableCertificates *bool `json:"enableCertificates" tf:"enable_certificates,omitempty"`
}

func (*MeshCertificatesParameters) DeepCopy added in v0.26.0

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new MeshCertificatesParameters.

func (*MeshCertificatesParameters) DeepCopyInto added in v0.26.0

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type MonitoringConfigObservation

type MonitoringConfigObservation struct {
}

func (*MonitoringConfigObservation) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new MonitoringConfigObservation.

func (*MonitoringConfigObservation) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type MonitoringConfigParameters

type MonitoringConfigParameters struct {

	// The GKE components exposing metrics. Supported values include: SYSTEM_COMPONENTS, APISERVER, CONTROLLER_MANAGER, and SCHEDULER. In beta provider, WORKLOADS is supported on top of those 4 values. (WORKLOADS is deprecated and removed in GKE 1.24.)
	// +kubebuilder:validation:Required
	EnableComponents []*string `json:"enableComponents" tf:"enable_components,omitempty"`

	// Configuration for Managed Service for Prometheus. Structure is documented below.
	// +kubebuilder:validation:Optional
	ManagedPrometheus []ManagedPrometheusParameters `json:"managedPrometheus,omitempty" tf:"managed_prometheus,omitempty"`
}

func (*MonitoringConfigParameters) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new MonitoringConfigParameters.

func (*MonitoringConfigParameters) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type NetworkConfigObservation added in v0.26.0

type NetworkConfigObservation struct {
	CreatePodRange *bool `json:"createPodRange,omitempty" tf:"create_pod_range,omitempty"`

	// Enables the private cluster feature,
	// creating a private endpoint on the cluster. In a private cluster, nodes only
	// have RFC 1918 private addresses and communicate with the master's private
	// endpoint via private networking.
	EnablePrivateNodes *bool `json:"enablePrivateNodes,omitempty" tf:"enable_private_nodes,omitempty"`

	PodIPv4CidrBlock *string `json:"podIpv4CidrBlock,omitempty" tf:"pod_ipv4_cidr_block,omitempty"`

	PodRange *string `json:"podRange,omitempty" tf:"pod_range,omitempty"`
}

func (*NetworkConfigObservation) DeepCopy added in v0.26.0

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NetworkConfigObservation.

func (*NetworkConfigObservation) DeepCopyInto added in v0.26.0

func (in *NetworkConfigObservation) DeepCopyInto(out *NetworkConfigObservation)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type NetworkConfigParameters added in v0.26.0

type NetworkConfigParameters struct {
}

func (*NetworkConfigParameters) DeepCopy added in v0.26.0

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NetworkConfigParameters.

func (*NetworkConfigParameters) DeepCopyInto added in v0.26.0

func (in *NetworkConfigParameters) DeepCopyInto(out *NetworkConfigParameters)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type NetworkPolicyConfigObservation

type NetworkPolicyConfigObservation struct {
}

func (*NetworkPolicyConfigObservation) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NetworkPolicyConfigObservation.

func (*NetworkPolicyConfigObservation) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type NetworkPolicyConfigParameters

type NetworkPolicyConfigParameters struct {

	// The status of the Istio addon, which makes it easy to set up Istio for services in a
	// cluster. It is disabled by default. Set disabled = false to enable.
	// +kubebuilder:validation:Required
	Disabled *bool `json:"disabled" tf:"disabled,omitempty"`
}

func (*NetworkPolicyConfigParameters) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NetworkPolicyConfigParameters.

func (*NetworkPolicyConfigParameters) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type NetworkPolicyObservation

type NetworkPolicyObservation struct {
}

func (*NetworkPolicyObservation) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NetworkPolicyObservation.

func (*NetworkPolicyObservation) DeepCopyInto

func (in *NetworkPolicyObservation) DeepCopyInto(out *NetworkPolicyObservation)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type NetworkPolicyParameters

type NetworkPolicyParameters struct {

	// Whether network policy is enabled on the cluster.
	// +kubebuilder:validation:Required
	Enabled *bool `json:"enabled" tf:"enabled,omitempty"`

	// The selected network policy provider. Defaults to PROVIDER_UNSPECIFIED.
	// +kubebuilder:validation:Optional
	Provider *string `json:"provider,omitempty" tf:"provider,omitempty"`
}

func (*NetworkPolicyParameters) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NetworkPolicyParameters.

func (*NetworkPolicyParameters) DeepCopyInto

func (in *NetworkPolicyParameters) DeepCopyInto(out *NetworkPolicyParameters)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type NodeConfigDefaultsObservation added in v0.26.0

type NodeConfigDefaultsObservation struct {
}

func (*NodeConfigDefaultsObservation) DeepCopy added in v0.26.0

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NodeConfigDefaultsObservation.

func (*NodeConfigDefaultsObservation) DeepCopyInto added in v0.26.0

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type NodeConfigDefaultsParameters added in v0.26.0

type NodeConfigDefaultsParameters struct {

	// The type of logging agent that is deployed by default for newly created node pools in the cluster. Valid values include DEFAULT and MAX_THROUGHPUT. See Increasing logging agent throughput for more information.
	// +kubebuilder:validation:Optional
	LoggingVariant *string `json:"loggingVariant,omitempty" tf:"logging_variant,omitempty"`
}

func (*NodeConfigDefaultsParameters) DeepCopy added in v0.26.0

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NodeConfigDefaultsParameters.

func (*NodeConfigDefaultsParameters) DeepCopyInto added in v0.26.0

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type NodeConfigGcfsConfigObservation

type NodeConfigGcfsConfigObservation struct {

	// Enables vertical pod autoscaling
	Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"`
}

func (*NodeConfigGcfsConfigObservation) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NodeConfigGcfsConfigObservation.

func (*NodeConfigGcfsConfigObservation) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type NodeConfigGcfsConfigParameters

type NodeConfigGcfsConfigParameters struct {
}

func (*NodeConfigGcfsConfigParameters) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NodeConfigGcfsConfigParameters.

func (*NodeConfigGcfsConfigParameters) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type NodeConfigGuestAcceleratorGpuSharingConfigObservation added in v0.26.0

type NodeConfigGuestAcceleratorGpuSharingConfigObservation struct {
}

func (*NodeConfigGuestAcceleratorGpuSharingConfigObservation) DeepCopy added in v0.26.0

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NodeConfigGuestAcceleratorGpuSharingConfigObservation.

func (*NodeConfigGuestAcceleratorGpuSharingConfigObservation) DeepCopyInto added in v0.26.0

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type NodeConfigGuestAcceleratorGpuSharingConfigParameters added in v0.26.0

type NodeConfigGuestAcceleratorGpuSharingConfigParameters struct {

	// +kubebuilder:validation:Optional
	GpuSharingStrategy *string `json:"gpuSharingStrategy,omitempty" tf:"gpu_sharing_strategy"`

	// +kubebuilder:validation:Optional
	MaxSharedClientsPerGpu *float64 `json:"maxSharedClientsPerGpu,omitempty" tf:"max_shared_clients_per_gpu"`
}

func (*NodeConfigGuestAcceleratorGpuSharingConfigParameters) DeepCopy added in v0.26.0

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NodeConfigGuestAcceleratorGpuSharingConfigParameters.

func (*NodeConfigGuestAcceleratorGpuSharingConfigParameters) DeepCopyInto added in v0.26.0

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type NodeConfigGuestAcceleratorObservation

type NodeConfigGuestAcceleratorObservation struct {

	// The number of the guest accelerator cards exposed to this instance.
	Count *float64 `json:"count,omitempty" tf:"count,omitempty"`

	// Size of partitions to create on the GPU. Valid values are described in the NVIDIA mig user guide.
	GpuPartitionSize *string `json:"gpuPartitionSize,omitempty" tf:"gpu_partition_size,omitempty"`

	// Configuration for GPU sharing. Structure is documented below.
	GpuSharingConfig []GuestAcceleratorGpuSharingConfigObservation `json:"gpuSharingConfig,omitempty" tf:"gpu_sharing_config,omitempty"`

	// The accelerator type resource to expose to this instance. E.g. nvidia-tesla-k80.
	Type *string `json:"type,omitempty" tf:"type,omitempty"`
}

func (*NodeConfigGuestAcceleratorObservation) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NodeConfigGuestAcceleratorObservation.

func (*NodeConfigGuestAcceleratorObservation) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type NodeConfigGuestAcceleratorParameters

type NodeConfigGuestAcceleratorParameters struct {
}

func (*NodeConfigGuestAcceleratorParameters) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NodeConfigGuestAcceleratorParameters.

func (*NodeConfigGuestAcceleratorParameters) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type NodeConfigGvnicObservation

type NodeConfigGvnicObservation struct {

	// Enables vertical pod autoscaling
	Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"`
}

func (*NodeConfigGvnicObservation) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NodeConfigGvnicObservation.

func (*NodeConfigGvnicObservation) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type NodeConfigGvnicParameters

type NodeConfigGvnicParameters struct {
}

func (*NodeConfigGvnicParameters) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NodeConfigGvnicParameters.

func (*NodeConfigGvnicParameters) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type NodeConfigKubeletConfigObservation added in v0.27.0

type NodeConfigKubeletConfigObservation struct {

	// If true, enables CPU CFS quota enforcement for
	// containers that specify CPU limits.
	CPUCfsQuota *bool `json:"cpuCfsQuota,omitempty" tf:"cpu_cfs_quota,omitempty"`

	// The CPU CFS quota period value. Specified
	// as a sequence of decimal numbers, each with optional fraction and a unit suffix,
	// such as "300ms". Valid time units are "ns", "us" (or "µs"), "ms", "s", "m",
	// "h". The value must be a positive duration.
	CPUCfsQuotaPeriod *string `json:"cpuCfsQuotaPeriod,omitempty" tf:"cpu_cfs_quota_period,omitempty"`

	// The CPU management policy on the node. See
	// K8S CPU Management Policies.
	// One of "none" or "static". Defaults to none when kubelet_config is unset.
	CPUManagerPolicy *string `json:"cpuManagerPolicy,omitempty" tf:"cpu_manager_policy,omitempty"`

	// Controls the maximum number of processes allowed to run in a pod. The value must be greater than or equal to 1024 and less than 4194304.
	PodPidsLimit *float64 `json:"podPidsLimit,omitempty" tf:"pod_pids_limit,omitempty"`
}

func (*NodeConfigKubeletConfigObservation) DeepCopy added in v0.27.0

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NodeConfigKubeletConfigObservation.

func (*NodeConfigKubeletConfigObservation) DeepCopyInto added in v0.27.0

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type NodeConfigKubeletConfigParameters added in v0.27.0

type NodeConfigKubeletConfigParameters struct {
}

func (*NodeConfigKubeletConfigParameters) DeepCopy added in v0.27.0

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NodeConfigKubeletConfigParameters.

func (*NodeConfigKubeletConfigParameters) DeepCopyInto added in v0.27.0

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type NodeConfigLinuxNodeConfigObservation added in v0.27.0

type NodeConfigLinuxNodeConfigObservation struct {

	// The Linux kernel parameters to be applied to the nodes
	// and all pods running on the nodes. Specified as a map from the key, such as
	// net.core.wmem_max, to a string value.
	Sysctls map[string]*string `json:"sysctls,omitempty" tf:"sysctls,omitempty"`
}

func (*NodeConfigLinuxNodeConfigObservation) DeepCopy added in v0.27.0

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NodeConfigLinuxNodeConfigObservation.

func (*NodeConfigLinuxNodeConfigObservation) DeepCopyInto added in v0.27.0

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type NodeConfigLinuxNodeConfigParameters added in v0.27.0

type NodeConfigLinuxNodeConfigParameters struct {
}

func (*NodeConfigLinuxNodeConfigParameters) DeepCopy added in v0.27.0

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NodeConfigLinuxNodeConfigParameters.

func (*NodeConfigLinuxNodeConfigParameters) DeepCopyInto added in v0.27.0

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type NodeConfigObservation

type NodeConfigObservation struct {
}

func (*NodeConfigObservation) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NodeConfigObservation.

func (*NodeConfigObservation) DeepCopyInto

func (in *NodeConfigObservation) DeepCopyInto(out *NodeConfigObservation)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type NodeConfigParameters

type NodeConfigParameters struct {

	// The Customer Managed Encryption Key used to encrypt the boot disk attached to each node in the node pool. This should be of the form projects/[KEY_PROJECT_ID]/locations/[LOCATION]/keyRings/[RING_NAME]/cryptoKeys/[KEY_NAME]. For more information about protecting resources with Cloud KMS Keys please see: https://cloud.google.com/compute/docs/disks/customer-managed-encryption
	// +kubebuilder:validation:Optional
	BootDiskKMSKey *string `json:"bootDiskKmsKey,omitempty" tf:"boot_disk_kms_key,omitempty"`

	// Size of the disk attached to each node, specified
	// in GB. The smallest allowed disk size is 10GB. Defaults to 100GB.
	// +kubebuilder:validation:Optional
	DiskSizeGb *float64 `json:"diskSizeGb,omitempty" tf:"disk_size_gb,omitempty"`

	// Type of the disk attached to each node
	// (e.g. 'pd-standard', 'pd-balanced' or 'pd-ssd'). If unspecified, the default disk type is 'pd-standard'
	// +kubebuilder:validation:Optional
	DiskType *string `json:"diskType,omitempty" tf:"disk_type,omitempty"`

	// Parameters for the Google Container Filesystem (GCFS).
	// If unspecified, GCFS will not be enabled on the node pool. When enabling this feature you must specify image_type = "COS_CONTAINERD" and node_version from GKE versions 1.19 or later to use it.
	// For GKE versions 1.19, 1.20, and 1.21, the recommended minimum node_version would be 1.19.15-gke.1300, 1.20.11-gke.1300, and 1.21.5-gke.1300 respectively.
	// A machine_type that has more than 16 GiB of memory is also recommended.
	// GCFS must be enabled in order to use image streaming.
	// Structure is documented below.
	// +kubebuilder:validation:Optional
	GcfsConfig []GcfsConfigParameters `json:"gcfsConfig,omitempty" tf:"gcfs_config,omitempty"`

	// List of the type and count of accelerator cards attached to the instance.
	// Structure documented below.12 this field is an
	// Attribute as Block
	// +kubebuilder:validation:Optional
	GuestAccelerator []GuestAcceleratorParameters `json:"guestAccelerator,omitempty" tf:"guest_accelerator,omitempty"`

	// Google Virtual NIC (gVNIC) is a virtual network interface.
	// Installing the gVNIC driver allows for more efficient traffic transmission across the Google network infrastructure.
	// gVNIC is an alternative to the virtIO-based ethernet driver. GKE nodes must use a Container-Optimized OS node image.
	// GKE node version 1.15.11-gke.15 or later
	// Structure is documented below.
	// +kubebuilder:validation:Optional
	Gvnic []GvnicParameters `json:"gvnic,omitempty" tf:"gvnic,omitempty"`

	// The image type to use for this node. Note that changing the image type
	// will delete and recreate all nodes in the node pool.
	// +kubebuilder:validation:Optional
	ImageType *string `json:"imageType,omitempty" tf:"image_type,omitempty"`

	// Kubelet configuration, currently supported attributes can be found here.
	// Structure is documented below.
	// +kubebuilder:validation:Optional
	KubeletConfig []KubeletConfigParameters `json:"kubeletConfig,omitempty" tf:"kubelet_config,omitempty"`

	// The Kubernetes labels (key/value pairs) to be applied to each node. The kubernetes.io/ and k8s.io/ prefixes are
	// reserved by Kubernetes Core components and cannot be specified.
	// +kubebuilder:validation:Optional
	Labels map[string]*string `json:"labels,omitempty" tf:"labels,omitempty"`

	// Linux node configuration, currently supported attributes can be found here.
	// Note that validations happen all server side. All attributes are optional.
	// Structure is documented below.
	// +kubebuilder:validation:Optional
	LinuxNodeConfig []LinuxNodeConfigParameters `json:"linuxNodeConfig,omitempty" tf:"linux_node_config,omitempty"`

	// The amount of local SSD disks that will be
	// attached to each cluster node. Defaults to 0.
	// +kubebuilder:validation:Optional
	LocalSsdCount *float64 `json:"localSsdCount,omitempty" tf:"local_ssd_count,omitempty"`

	// wide default value. Valid values include DEFAULT and MAX_THROUGHPUT. See Increasing logging agent throughput for more information.
	// +kubebuilder:validation:Optional
	LoggingVariant *string `json:"loggingVariant,omitempty" tf:"logging_variant,omitempty"`

	// The name of a Google Compute Engine machine type.
	// Defaults to e2-medium. To create a custom machine type, value should be set as specified
	// here.
	// +kubebuilder:validation:Optional
	MachineType *string `json:"machineType,omitempty" tf:"machine_type,omitempty"`

	// The metadata key/value pairs assigned to instances in
	// the cluster. From GKE 1. To avoid this, set the
	// value in your config.
	// +kubebuilder:validation:Optional
	Metadata map[string]*string `json:"metadata,omitempty" tf:"metadata,omitempty"`

	// Minimum CPU platform to be used by this instance.
	// The instance may be scheduled on the specified or newer CPU platform. Applicable
	// values are the friendly names of CPU platforms, such as Intel Haswell. See the
	// official documentation
	// for more information.
	// +kubebuilder:validation:Optional
	MinCPUPlatform *string `json:"minCpuPlatform,omitempty" tf:"min_cpu_platform,omitempty"`

	// Setting this field will assign instances of this pool to run on the specified node group. This is useful for running workloads on sole tenant nodes.
	// +kubebuilder:validation:Optional
	NodeGroup *string `json:"nodeGroup,omitempty" tf:"node_group,omitempty"`

	// The set of Google API scopes to be made available
	// on all of the node VMs under the "default" service account.
	// Use the "https://www.googleapis.com/auth/cloud-platform" scope to grant access to all APIs. It is recommended that you set service_account to a non-default service account and grant IAM roles to that service account for only the resources that it needs.
	// +kubebuilder:validation:Optional
	OAuthScopes []*string `json:"oauthScopes,omitempty" tf:"oauth_scopes,omitempty"`

	// A boolean that represents whether or not the underlying node VMs
	// are preemptible. See the official documentation
	// for more information. Defaults to false.
	// +kubebuilder:validation:Optional
	Preemptible *bool `json:"preemptible,omitempty" tf:"preemptible,omitempty"`

	// The configuration of the desired reservation which instances could take capacity from. Structure is documented below.
	// +kubebuilder:validation:Optional
	ReservationAffinity []ReservationAffinityParameters `json:"reservationAffinity,omitempty" tf:"reservation_affinity,omitempty"`

	// The GCP labels (key/value pairs) to be applied to each node. Refer here
	// for how these labels are applied to clusters, node pools and nodes.
	// +kubebuilder:validation:Optional
	ResourceLabels map[string]*string `json:"resourceLabels,omitempty" tf:"resource_labels,omitempty"`

	// The service account to be used by the Node VMs.
	// If not specified, the "default" service account is used.
	// +crossplane:generate:reference:type=github.com/upbound/provider-gcp/apis/cloudplatform/v1beta1.ServiceAccount
	// +crossplane:generate:reference:extractor=github.com/upbound/upjet/pkg/resource.ExtractParamPath("email",true)
	// +kubebuilder:validation:Optional
	ServiceAccount *string `json:"serviceAccount,omitempty" tf:"service_account,omitempty"`

	// Reference to a ServiceAccount in cloudplatform to populate serviceAccount.
	// +kubebuilder:validation:Optional
	ServiceAccountRef *v1.Reference `json:"serviceAccountRef,omitempty" tf:"-"`

	// Selector for a ServiceAccount in cloudplatform to populate serviceAccount.
	// +kubebuilder:validation:Optional
	ServiceAccountSelector *v1.Selector `json:"serviceAccountSelector,omitempty" tf:"-"`

	// Shielded Instance options. Structure is documented below.
	// +kubebuilder:validation:Optional
	ShieldedInstanceConfig []NodeConfigShieldedInstanceConfigParameters `json:"shieldedInstanceConfig,omitempty" tf:"shielded_instance_config,omitempty"`

	// A boolean that represents whether the underlying node VMs are spot.
	// See the official documentation
	// for more information. Defaults to false.
	// +kubebuilder:validation:Optional
	Spot *bool `json:"spot,omitempty" tf:"spot,omitempty"`

	// The list of instance tags applied to all nodes. Tags are used to identify
	// valid sources or targets for network firewalls.
	// +kubebuilder:validation:Optional
	Tags []*string `json:"tags,omitempty" tf:"tags,omitempty"`

	// A list of Kubernetes taints
	// to apply to nodes. GKE's API can only set this field on cluster creation.
	// However, GKE will add taints to your nodes if you enable certain features such
	// as GPUs. Taint values can be updated safely in
	// Kubernetes (eg. through kubectl), and it's recommended that you do not use
	// this field to manage taints. If you do, lifecycle.ignore_changes is
	// recommended. Structure is documented below.
	// +kubebuilder:validation:Optional
	Taint []TaintParameters `json:"taint,omitempty" tf:"taint,omitempty"`

	// Metadata configuration to expose to workloads on the node pool.
	// Structure is documented below.
	// +kubebuilder:validation:Optional
	WorkloadMetadataConfig []WorkloadMetadataConfigParameters `json:"workloadMetadataConfig,omitempty" tf:"workload_metadata_config,omitempty"`
}

func (*NodeConfigParameters) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NodeConfigParameters.

func (*NodeConfigParameters) DeepCopyInto

func (in *NodeConfigParameters) DeepCopyInto(out *NodeConfigParameters)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type NodeConfigReservationAffinityObservation added in v0.26.0

type NodeConfigReservationAffinityObservation struct {

	// The type of reservation consumption
	// Accepted values are:
	ConsumeReservationType *string `json:"consumeReservationType,omitempty" tf:"consume_reservation_type,omitempty"`

	// Key for taint.
	Key *string `json:"key,omitempty" tf:"key,omitempty"`

	// name"
	Values []*string `json:"values,omitempty" tf:"values,omitempty"`
}

func (*NodeConfigReservationAffinityObservation) DeepCopy added in v0.26.0

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NodeConfigReservationAffinityObservation.

func (*NodeConfigReservationAffinityObservation) DeepCopyInto added in v0.26.0

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type NodeConfigReservationAffinityParameters added in v0.26.0

type NodeConfigReservationAffinityParameters struct {
}

func (*NodeConfigReservationAffinityParameters) DeepCopy added in v0.26.0

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NodeConfigReservationAffinityParameters.

func (*NodeConfigReservationAffinityParameters) DeepCopyInto added in v0.26.0

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type NodeConfigShieldedInstanceConfigObservation

type NodeConfigShieldedInstanceConfigObservation struct {
}

func (*NodeConfigShieldedInstanceConfigObservation) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NodeConfigShieldedInstanceConfigObservation.

func (*NodeConfigShieldedInstanceConfigObservation) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type NodeConfigShieldedInstanceConfigParameters

type NodeConfigShieldedInstanceConfigParameters struct {

	// Defines if the instance has integrity monitoring enabled.
	// +kubebuilder:validation:Optional
	EnableIntegrityMonitoring *bool `json:"enableIntegrityMonitoring,omitempty" tf:"enable_integrity_monitoring,omitempty"`

	// Defines if the instance has Secure Boot enabled.
	// +kubebuilder:validation:Optional
	EnableSecureBoot *bool `json:"enableSecureBoot,omitempty" tf:"enable_secure_boot,omitempty"`
}

func (*NodeConfigShieldedInstanceConfigParameters) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NodeConfigShieldedInstanceConfigParameters.

func (*NodeConfigShieldedInstanceConfigParameters) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type NodeConfigTaintObservation

type NodeConfigTaintObservation struct {

	// Effect for taint. Accepted values are NO_SCHEDULE, PREFER_NO_SCHEDULE, and NO_EXECUTE.
	Effect *string `json:"effect,omitempty" tf:"effect,omitempty"`

	// Key for taint.
	Key *string `json:"key,omitempty" tf:"key,omitempty"`

	// Value for taint.
	Value *string `json:"value,omitempty" tf:"value,omitempty"`
}

func (*NodeConfigTaintObservation) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NodeConfigTaintObservation.

func (*NodeConfigTaintObservation) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type NodeConfigTaintParameters

type NodeConfigTaintParameters struct {
}

func (*NodeConfigTaintParameters) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NodeConfigTaintParameters.

func (*NodeConfigTaintParameters) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type NodeConfigWorkloadMetadataConfigObservation

type NodeConfigWorkloadMetadataConfigObservation struct {

	// How to expose the node metadata to the workload running on the node.
	// Accepted values are:
	Mode *string `json:"mode,omitempty" tf:"mode,omitempty"`
}

func (*NodeConfigWorkloadMetadataConfigObservation) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NodeConfigWorkloadMetadataConfigObservation.

func (*NodeConfigWorkloadMetadataConfigObservation) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type NodeConfigWorkloadMetadataConfigParameters

type NodeConfigWorkloadMetadataConfigParameters struct {
}

func (*NodeConfigWorkloadMetadataConfigParameters) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NodeConfigWorkloadMetadataConfigParameters.

func (*NodeConfigWorkloadMetadataConfigParameters) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type NodePool

type NodePool struct {
	metav1.TypeMeta   `json:",inline"`
	metav1.ObjectMeta `json:"metadata,omitempty"`
	Spec              NodePoolSpec   `json:"spec"`
	Status            NodePoolStatus `json:"status,omitempty"`
}

NodePool is the Schema for the NodePools API. Manages a GKE NodePool resource. +kubebuilder:printcolumn:name="READY",type="string",JSONPath=".status.conditions[?(@.type=='Ready')].status" +kubebuilder:printcolumn:name="SYNCED",type="string",JSONPath=".status.conditions[?(@.type=='Synced')].status" +kubebuilder:printcolumn:name="EXTERNAL-NAME",type="string",JSONPath=".metadata.annotations.crossplane\\.io/external-name" +kubebuilder:printcolumn:name="AGE",type="date",JSONPath=".metadata.creationTimestamp" +kubebuilder:subresource:status +kubebuilder:resource:scope=Cluster,categories={crossplane,managed,gcp}

func (*NodePool) DeepCopy

func (in *NodePool) DeepCopy() *NodePool

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NodePool.

func (*NodePool) DeepCopyInto

func (in *NodePool) DeepCopyInto(out *NodePool)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*NodePool) DeepCopyObject

func (in *NodePool) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

func (*NodePool) GetCondition

func (mg *NodePool) GetCondition(ct xpv1.ConditionType) xpv1.Condition

GetCondition of this NodePool.

func (*NodePool) GetConnectionDetailsMapping

func (tr *NodePool) GetConnectionDetailsMapping() map[string]string

GetConnectionDetailsMapping for this NodePool

func (*NodePool) GetDeletionPolicy

func (mg *NodePool) GetDeletionPolicy() xpv1.DeletionPolicy

GetDeletionPolicy of this NodePool.

func (*NodePool) GetID

func (tr *NodePool) GetID() string

GetID returns ID of underlying Terraform resource of this NodePool

func (*NodePool) GetObservation

func (tr *NodePool) GetObservation() (map[string]any, error)

GetObservation of this NodePool

func (*NodePool) GetParameters

func (tr *NodePool) GetParameters() (map[string]any, error)

GetParameters of this NodePool

func (*NodePool) GetProviderConfigReference

func (mg *NodePool) GetProviderConfigReference() *xpv1.Reference

GetProviderConfigReference of this NodePool.

func (*NodePool) GetProviderReference

func (mg *NodePool) GetProviderReference() *xpv1.Reference

GetProviderReference of this NodePool. Deprecated: Use GetProviderConfigReference.

func (*NodePool) GetPublishConnectionDetailsTo

func (mg *NodePool) GetPublishConnectionDetailsTo() *xpv1.PublishConnectionDetailsTo

GetPublishConnectionDetailsTo of this NodePool.

func (*NodePool) GetTerraformResourceType

func (mg *NodePool) GetTerraformResourceType() string

GetTerraformResourceType returns Terraform resource type for this NodePool

func (*NodePool) GetTerraformSchemaVersion

func (tr *NodePool) GetTerraformSchemaVersion() int

GetTerraformSchemaVersion returns the associated Terraform schema version

func (*NodePool) GetWriteConnectionSecretToReference

func (mg *NodePool) GetWriteConnectionSecretToReference() *xpv1.SecretReference

GetWriteConnectionSecretToReference of this NodePool.

func (*NodePool) LateInitialize

func (tr *NodePool) LateInitialize(attrs []byte) (bool, error)

LateInitialize this NodePool using its observed tfState. returns True if there are any spec changes for the resource.

func (*NodePool) ResolveReferences

func (mg *NodePool) ResolveReferences(ctx context.Context, c client.Reader) error

ResolveReferences of this NodePool.

func (*NodePool) SetConditions

func (mg *NodePool) SetConditions(c ...xpv1.Condition)

SetConditions of this NodePool.

func (*NodePool) SetDeletionPolicy

func (mg *NodePool) SetDeletionPolicy(r xpv1.DeletionPolicy)

SetDeletionPolicy of this NodePool.

func (*NodePool) SetObservation

func (tr *NodePool) SetObservation(obs map[string]any) error

SetObservation for this NodePool

func (*NodePool) SetParameters

func (tr *NodePool) SetParameters(params map[string]any) error

SetParameters for this NodePool

func (*NodePool) SetProviderConfigReference

func (mg *NodePool) SetProviderConfigReference(r *xpv1.Reference)

SetProviderConfigReference of this NodePool.

func (*NodePool) SetProviderReference

func (mg *NodePool) SetProviderReference(r *xpv1.Reference)

SetProviderReference of this NodePool. Deprecated: Use SetProviderConfigReference.

func (*NodePool) SetPublishConnectionDetailsTo

func (mg *NodePool) SetPublishConnectionDetailsTo(r *xpv1.PublishConnectionDetailsTo)

SetPublishConnectionDetailsTo of this NodePool.

func (*NodePool) SetWriteConnectionSecretToReference

func (mg *NodePool) SetWriteConnectionSecretToReference(r *xpv1.SecretReference)

SetWriteConnectionSecretToReference of this NodePool.

type NodePoolAutoscalingObservation

type NodePoolAutoscalingObservation struct {
}

func (*NodePoolAutoscalingObservation) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NodePoolAutoscalingObservation.

func (*NodePoolAutoscalingObservation) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type NodePoolAutoscalingParameters

type NodePoolAutoscalingParameters struct {

	// Location policy specifies the algorithm used when
	// scaling-up the node pool. Location policy is supported only in 1.24.1+ clusters.
	// +kubebuilder:validation:Optional
	LocationPolicy *string `json:"locationPolicy,omitempty" tf:"location_policy,omitempty"`

	// Maximum number of nodes per zone in the NodePool.
	// Must be >= min_node_count. Cannot be used with total limits.
	// +kubebuilder:validation:Optional
	MaxNodeCount *float64 `json:"maxNodeCount,omitempty" tf:"max_node_count,omitempty"`

	// Minimum number of nodes per zone in the NodePool.
	// Must be >=0 and <= max_node_count. Cannot be used with total limits.
	// +kubebuilder:validation:Optional
	MinNodeCount *float64 `json:"minNodeCount,omitempty" tf:"min_node_count,omitempty"`

	// Total maximum number of nodes in the NodePool.
	// Must be >= total_min_node_count. Cannot be used with per zone limits.
	// Total size limits are supported only in 1.24.1+ clusters.
	// +kubebuilder:validation:Optional
	TotalMaxNodeCount *float64 `json:"totalMaxNodeCount,omitempty" tf:"total_max_node_count,omitempty"`

	// Total minimum number of nodes in the NodePool.
	// Must be >=0 and <= total_max_node_count. Cannot be used with per zone limits.
	// Total size limits are supported only in 1.24.1+ clusters.
	// +kubebuilder:validation:Optional
	TotalMinNodeCount *float64 `json:"totalMinNodeCount,omitempty" tf:"total_min_node_count,omitempty"`
}

func (*NodePoolAutoscalingParameters) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NodePoolAutoscalingParameters.

func (*NodePoolAutoscalingParameters) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type NodePoolDefaultsObservation added in v0.26.0

type NodePoolDefaultsObservation struct {
}

func (*NodePoolDefaultsObservation) DeepCopy added in v0.26.0

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NodePoolDefaultsObservation.

func (*NodePoolDefaultsObservation) DeepCopyInto added in v0.26.0

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type NodePoolDefaultsParameters added in v0.26.0

type NodePoolDefaultsParameters struct {

	// Subset of NodeConfig message that has defaults.
	// +kubebuilder:validation:Optional
	NodeConfigDefaults []NodeConfigDefaultsParameters `json:"nodeConfigDefaults,omitempty" tf:"node_config_defaults,omitempty"`
}

func (*NodePoolDefaultsParameters) DeepCopy added in v0.26.0

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NodePoolDefaultsParameters.

func (*NodePoolDefaultsParameters) DeepCopyInto added in v0.26.0

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type NodePoolList

type NodePoolList struct {
	metav1.TypeMeta `json:",inline"`
	metav1.ListMeta `json:"metadata,omitempty"`
	Items           []NodePool `json:"items"`
}

NodePoolList contains a list of NodePools

func (*NodePoolList) DeepCopy

func (in *NodePoolList) DeepCopy() *NodePoolList

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NodePoolList.

func (*NodePoolList) DeepCopyInto

func (in *NodePoolList) DeepCopyInto(out *NodePoolList)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*NodePoolList) DeepCopyObject

func (in *NodePoolList) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

func (*NodePoolList) GetItems

func (l *NodePoolList) GetItems() []resource.Managed

GetItems of this NodePoolList.

type NodePoolManagementObservation

type NodePoolManagementObservation struct {

	// Specifies whether the node auto-repair is enabled for the node pool. If enabled, the nodes in this node pool will be monitored and, if they fail health checks too many times, an automatic repair action will be triggered.
	AutoRepair *bool `json:"autoRepair,omitempty" tf:"auto_repair,omitempty"`

	// Specifies whether node auto-upgrade is enabled for the node pool. If enabled, node auto-upgrade helps keep the nodes in your node pool up to date with the latest release version of Kubernetes.
	AutoUpgrade *bool `json:"autoUpgrade,omitempty" tf:"auto_upgrade,omitempty"`
}

func (*NodePoolManagementObservation) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NodePoolManagementObservation.

func (*NodePoolManagementObservation) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type NodePoolManagementObservation_2 added in v0.26.0

type NodePoolManagementObservation_2 struct {
}

func (*NodePoolManagementObservation_2) DeepCopy added in v0.26.0

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NodePoolManagementObservation_2.

func (*NodePoolManagementObservation_2) DeepCopyInto added in v0.26.0

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type NodePoolManagementParameters

type NodePoolManagementParameters struct {
}

func (*NodePoolManagementParameters) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NodePoolManagementParameters.

func (*NodePoolManagementParameters) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type NodePoolManagementParameters_2 added in v0.26.0

type NodePoolManagementParameters_2 struct {

	// Whether the nodes will be automatically repaired.
	// +kubebuilder:validation:Optional
	AutoRepair *bool `json:"autoRepair,omitempty" tf:"auto_repair,omitempty"`

	// Whether the nodes will be automatically upgraded.
	// +kubebuilder:validation:Optional
	AutoUpgrade *bool `json:"autoUpgrade,omitempty" tf:"auto_upgrade,omitempty"`
}

func (*NodePoolManagementParameters_2) DeepCopy added in v0.26.0

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NodePoolManagementParameters_2.

func (*NodePoolManagementParameters_2) DeepCopyInto added in v0.26.0

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type NodePoolNetworkConfigObservation added in v0.26.0

type NodePoolNetworkConfigObservation struct {
}

func (*NodePoolNetworkConfigObservation) DeepCopy added in v0.26.0

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NodePoolNetworkConfigObservation.

func (*NodePoolNetworkConfigObservation) DeepCopyInto added in v0.26.0

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type NodePoolNetworkConfigParameters added in v0.26.0

type NodePoolNetworkConfigParameters struct {

	// Whether to create a new range for pod IPs in this node pool. Defaults are provided for pod_range and pod_ipv4_cidr_block if they are not specified.
	// +kubebuilder:validation:Optional
	CreatePodRange *bool `json:"createPodRange,omitempty" tf:"create_pod_range,omitempty"`

	// Whether nodes have internal IP addresses only.
	// +kubebuilder:validation:Optional
	EnablePrivateNodes *bool `json:"enablePrivateNodes,omitempty" tf:"enable_private_nodes,omitempty"`

	// The IP address range for pod IPs in this node pool. Only applicable if createPodRange is true. Set to blank to have a range chosen with the default size. Set to /netmask (e.g. /14) to have a range chosen with a specific netmask. Set to a CIDR notation (e.g. 10.96.0.0/14) to pick a specific range to use.
	// +kubebuilder:validation:Optional
	PodIPv4CidrBlock *string `json:"podIpv4CidrBlock,omitempty" tf:"pod_ipv4_cidr_block,omitempty"`

	// The ID of the secondary range for pod IPs. If create_pod_range is true, this ID is used for the new range. If create_pod_range is false, uses an existing secondary range with this ID.
	// +kubebuilder:validation:Optional
	PodRange *string `json:"podRange,omitempty" tf:"pod_range,omitempty"`
}

func (*NodePoolNetworkConfigParameters) DeepCopy added in v0.26.0

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NodePoolNetworkConfigParameters.

func (*NodePoolNetworkConfigParameters) DeepCopyInto added in v0.26.0

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type NodePoolNodeConfigGcfsConfigObservation

type NodePoolNodeConfigGcfsConfigObservation struct {
}

func (*NodePoolNodeConfigGcfsConfigObservation) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NodePoolNodeConfigGcfsConfigObservation.

func (*NodePoolNodeConfigGcfsConfigObservation) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type NodePoolNodeConfigGcfsConfigParameters

type NodePoolNodeConfigGcfsConfigParameters struct {

	// +kubebuilder:validation:Required
	Enabled *bool `json:"enabled" tf:"enabled,omitempty"`
}

func (*NodePoolNodeConfigGcfsConfigParameters) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NodePoolNodeConfigGcfsConfigParameters.

func (*NodePoolNodeConfigGcfsConfigParameters) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type NodePoolNodeConfigGuestAcceleratorObservation

type NodePoolNodeConfigGuestAcceleratorObservation struct {
}

func (*NodePoolNodeConfigGuestAcceleratorObservation) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NodePoolNodeConfigGuestAcceleratorObservation.

func (*NodePoolNodeConfigGuestAcceleratorObservation) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type NodePoolNodeConfigGuestAcceleratorParameters

type NodePoolNodeConfigGuestAcceleratorParameters struct {

	// +kubebuilder:validation:Optional
	Count *float64 `json:"count,omitempty" tf:"count"`

	// +kubebuilder:validation:Optional
	GpuPartitionSize *string `json:"gpuPartitionSize,omitempty" tf:"gpu_partition_size"`

	// +kubebuilder:validation:Optional
	GpuSharingConfig []NodeConfigGuestAcceleratorGpuSharingConfigParameters `json:"gpuSharingConfig,omitempty" tf:"gpu_sharing_config"`

	// The type of the policy. Supports a single value: COMPACT.
	// Specifying COMPACT placement policy type places node pool's nodes in a closer
	// physical proximity in order to reduce network latency between nodes.
	// +kubebuilder:validation:Optional
	Type *string `json:"type,omitempty" tf:"type"`
}

func (*NodePoolNodeConfigGuestAcceleratorParameters) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NodePoolNodeConfigGuestAcceleratorParameters.

func (*NodePoolNodeConfigGuestAcceleratorParameters) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type NodePoolNodeConfigGvnicObservation

type NodePoolNodeConfigGvnicObservation struct {
}

func (*NodePoolNodeConfigGvnicObservation) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NodePoolNodeConfigGvnicObservation.

func (*NodePoolNodeConfigGvnicObservation) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type NodePoolNodeConfigGvnicParameters

type NodePoolNodeConfigGvnicParameters struct {

	// +kubebuilder:validation:Required
	Enabled *bool `json:"enabled" tf:"enabled,omitempty"`
}

func (*NodePoolNodeConfigGvnicParameters) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NodePoolNodeConfigGvnicParameters.

func (*NodePoolNodeConfigGvnicParameters) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type NodePoolNodeConfigKubeletConfigObservation added in v0.27.0

type NodePoolNodeConfigKubeletConfigObservation struct {
}

func (*NodePoolNodeConfigKubeletConfigObservation) DeepCopy added in v0.27.0

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NodePoolNodeConfigKubeletConfigObservation.

func (*NodePoolNodeConfigKubeletConfigObservation) DeepCopyInto added in v0.27.0

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type NodePoolNodeConfigKubeletConfigParameters added in v0.27.0

type NodePoolNodeConfigKubeletConfigParameters struct {

	// +kubebuilder:validation:Optional
	CPUCfsQuota *bool `json:"cpuCfsQuota,omitempty" tf:"cpu_cfs_quota,omitempty"`

	// +kubebuilder:validation:Optional
	CPUCfsQuotaPeriod *string `json:"cpuCfsQuotaPeriod,omitempty" tf:"cpu_cfs_quota_period,omitempty"`

	// +kubebuilder:validation:Required
	CPUManagerPolicy *string `json:"cpuManagerPolicy" tf:"cpu_manager_policy,omitempty"`

	// +kubebuilder:validation:Optional
	PodPidsLimit *float64 `json:"podPidsLimit,omitempty" tf:"pod_pids_limit,omitempty"`
}

func (*NodePoolNodeConfigKubeletConfigParameters) DeepCopy added in v0.27.0

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NodePoolNodeConfigKubeletConfigParameters.

func (*NodePoolNodeConfigKubeletConfigParameters) DeepCopyInto added in v0.27.0

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type NodePoolNodeConfigLinuxNodeConfigObservation added in v0.27.0

type NodePoolNodeConfigLinuxNodeConfigObservation struct {
}

func (*NodePoolNodeConfigLinuxNodeConfigObservation) DeepCopy added in v0.27.0

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NodePoolNodeConfigLinuxNodeConfigObservation.

func (*NodePoolNodeConfigLinuxNodeConfigObservation) DeepCopyInto added in v0.27.0

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type NodePoolNodeConfigLinuxNodeConfigParameters added in v0.27.0

type NodePoolNodeConfigLinuxNodeConfigParameters struct {

	// +kubebuilder:validation:Required
	Sysctls map[string]*string `json:"sysctls" tf:"sysctls,omitempty"`
}

func (*NodePoolNodeConfigLinuxNodeConfigParameters) DeepCopy added in v0.27.0

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NodePoolNodeConfigLinuxNodeConfigParameters.

func (*NodePoolNodeConfigLinuxNodeConfigParameters) DeepCopyInto added in v0.27.0

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type NodePoolNodeConfigObservation

type NodePoolNodeConfigObservation struct {

	// The Customer Managed Encryption Key used to encrypt the boot disk attached to each node in the node pool. This should be of the form projects/[KEY_PROJECT_ID]/locations/[LOCATION]/keyRings/[RING_NAME]/cryptoKeys/[KEY_NAME]. For more information about protecting resources with Cloud KMS Keys please see: https://cloud.google.com/compute/docs/disks/customer-managed-encryption
	BootDiskKMSKey *string `json:"bootDiskKmsKey,omitempty" tf:"boot_disk_kms_key,omitempty"`

	// Size of the disk attached to each node, specified
	// in GB. The smallest allowed disk size is 10GB. Defaults to 100GB.
	DiskSizeGb *float64 `json:"diskSizeGb,omitempty" tf:"disk_size_gb,omitempty"`

	// Type of the disk attached to each node
	// (e.g. 'pd-standard', 'pd-balanced' or 'pd-ssd'). If unspecified, the default disk type is 'pd-standard'
	DiskType *string `json:"diskType,omitempty" tf:"disk_type,omitempty"`

	// The default Google Container Filesystem (GCFS) configuration at the cluster level. e.g. enable image streaming across all the node pools within the cluster. Structure is documented below.
	GcfsConfig []NodeConfigGcfsConfigObservation `json:"gcfsConfig,omitempty" tf:"gcfs_config,omitempty"`

	// List of the type and count of accelerator cards attached to the instance.
	// Structure documented below.12 this field is an
	// Attribute as Block
	GuestAccelerator []NodeConfigGuestAcceleratorObservation `json:"guestAccelerator,omitempty" tf:"guest_accelerator,omitempty"`

	// Google Virtual NIC (gVNIC) is a virtual network interface.
	// Installing the gVNIC driver allows for more efficient traffic transmission across the Google network infrastructure.
	// gVNIC is an alternative to the virtIO-based ethernet driver. GKE nodes must use a Container-Optimized OS node image.
	// GKE node version 1.15.11-gke.15 or later
	// Structure is documented below.
	Gvnic []NodeConfigGvnicObservation `json:"gvnic,omitempty" tf:"gvnic,omitempty"`

	// The image type to use for this node. Note that changing the image type
	// will delete and recreate all nodes in the node pool.
	ImageType *string `json:"imageType,omitempty" tf:"image_type,omitempty"`

	// Kubelet configuration, currently supported attributes can be found here.
	// Structure is documented below.
	KubeletConfig []NodeConfigKubeletConfigObservation `json:"kubeletConfig,omitempty" tf:"kubelet_config,omitempty"`

	// The Kubernetes labels (key/value pairs) to be applied to each node. The kubernetes.io/ and k8s.io/ prefixes are
	// reserved by Kubernetes Core components and cannot be specified.
	Labels map[string]*string `json:"labels,omitempty" tf:"labels,omitempty"`

	// Linux node configuration, currently supported attributes can be found here.
	// Note that validations happen all server side. All attributes are optional.
	// Structure is documented below.
	LinuxNodeConfig []NodeConfigLinuxNodeConfigObservation `json:"linuxNodeConfig,omitempty" tf:"linux_node_config,omitempty"`

	// The amount of local SSD disks that will be
	// attached to each cluster node. Defaults to 0.
	LocalSsdCount *float64 `json:"localSsdCount,omitempty" tf:"local_ssd_count,omitempty"`

	// The type of logging agent that is deployed by default for newly created node pools in the cluster. Valid values include DEFAULT and MAX_THROUGHPUT. See Increasing logging agent throughput for more information.
	LoggingVariant *string `json:"loggingVariant,omitempty" tf:"logging_variant,omitempty"`

	// The name of a Google Compute Engine machine type.
	// Defaults to e2-medium. To create a custom machine type, value should be set as specified
	// here.
	MachineType *string `json:"machineType,omitempty" tf:"machine_type,omitempty"`

	// The metadata key/value pairs assigned to instances in
	// the cluster. From GKE 1. To avoid this, set the
	// value in your config.
	Metadata map[string]*string `json:"metadata,omitempty" tf:"metadata,omitempty"`

	// Minimum CPU platform to be used by this instance.
	// The instance may be scheduled on the specified or newer CPU platform. Applicable
	// values are the friendly names of CPU platforms, such as Intel Haswell. See the
	// official documentation
	// for more information.
	MinCPUPlatform *string `json:"minCpuPlatform,omitempty" tf:"min_cpu_platform,omitempty"`

	// Setting this field will assign instances of this pool to run on the specified node group. This is useful for running workloads on sole tenant nodes.
	NodeGroup *string `json:"nodeGroup,omitempty" tf:"node_group,omitempty"`

	// The set of Google API scopes to be made available
	// on all of the node VMs under the "default" service account.
	// Use the "https://www.googleapis.com/auth/cloud-platform" scope to grant access to all APIs. It is recommended that you set service_account to a non-default service account and grant IAM roles to that service account for only the resources that it needs.
	OAuthScopes []*string `json:"oauthScopes,omitempty" tf:"oauth_scopes,omitempty"`

	// A boolean that represents whether or not the underlying node VMs
	// are preemptible. See the official documentation
	// for more information. Defaults to false.
	Preemptible *bool `json:"preemptible,omitempty" tf:"preemptible,omitempty"`

	// The configuration of the desired reservation which instances could take capacity from. Structure is documented below.
	ReservationAffinity []NodeConfigReservationAffinityObservation `json:"reservationAffinity,omitempty" tf:"reservation_affinity,omitempty"`

	// The GCE resource labels (a map of key/value pairs) to be applied to the cluster.
	ResourceLabels map[string]*string `json:"resourceLabels,omitempty" tf:"resource_labels,omitempty"`

	// The service account to be used by the Node VMs.
	// If not specified, the "default" service account is used.
	ServiceAccount *string `json:"serviceAccount,omitempty" tf:"service_account,omitempty"`

	// Shielded Instance options. Structure is documented below.
	ShieldedInstanceConfig []NodePoolNodeConfigShieldedInstanceConfigObservation `json:"shieldedInstanceConfig,omitempty" tf:"shielded_instance_config,omitempty"`

	// A boolean that represents whether the underlying node VMs are spot.
	// See the official documentation
	// for more information. Defaults to false.
	Spot *bool `json:"spot,omitempty" tf:"spot,omitempty"`

	// List of network tags applied to auto-provisioned node pools.
	Tags []*string `json:"tags,omitempty" tf:"tags,omitempty"`

	// A list of Kubernetes taints
	// to apply to nodes. GKE's API can only set this field on cluster creation.
	// However, GKE will add taints to your nodes if you enable certain features such
	// as GPUs. Taint values can be updated safely in
	// Kubernetes (eg. through kubectl), and it's recommended that you do not use
	// this field to manage taints. If you do, lifecycle.ignore_changes is
	// recommended. Structure is documented below.
	Taint []NodeConfigTaintObservation `json:"taint,omitempty" tf:"taint,omitempty"`

	// Metadata configuration to expose to workloads on the node pool.
	// Structure is documented below.
	WorkloadMetadataConfig []NodeConfigWorkloadMetadataConfigObservation `json:"workloadMetadataConfig,omitempty" tf:"workload_metadata_config,omitempty"`
}

func (*NodePoolNodeConfigObservation) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NodePoolNodeConfigObservation.

func (*NodePoolNodeConfigObservation) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type NodePoolNodeConfigObservation_2

type NodePoolNodeConfigObservation_2 struct {
}

func (*NodePoolNodeConfigObservation_2) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NodePoolNodeConfigObservation_2.

func (*NodePoolNodeConfigObservation_2) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type NodePoolNodeConfigParameters

type NodePoolNodeConfigParameters struct {
}

func (*NodePoolNodeConfigParameters) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NodePoolNodeConfigParameters.

func (*NodePoolNodeConfigParameters) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type NodePoolNodeConfigParameters_2

type NodePoolNodeConfigParameters_2 struct {

	// +kubebuilder:validation:Optional
	BootDiskKMSKey *string `json:"bootDiskKmsKey,omitempty" tf:"boot_disk_kms_key,omitempty"`

	// +kubebuilder:validation:Optional
	DiskSizeGb *float64 `json:"diskSizeGb,omitempty" tf:"disk_size_gb,omitempty"`

	// +kubebuilder:validation:Optional
	DiskType *string `json:"diskType,omitempty" tf:"disk_type,omitempty"`

	// +kubebuilder:validation:Optional
	GcfsConfig []NodePoolNodeConfigGcfsConfigParameters `json:"gcfsConfig,omitempty" tf:"gcfs_config,omitempty"`

	// +kubebuilder:validation:Optional
	GuestAccelerator []NodePoolNodeConfigGuestAcceleratorParameters `json:"guestAccelerator,omitempty" tf:"guest_accelerator,omitempty"`

	// +kubebuilder:validation:Optional
	Gvnic []NodePoolNodeConfigGvnicParameters `json:"gvnic,omitempty" tf:"gvnic,omitempty"`

	// +kubebuilder:validation:Optional
	ImageType *string `json:"imageType,omitempty" tf:"image_type,omitempty"`

	// +kubebuilder:validation:Optional
	KubeletConfig []NodePoolNodeConfigKubeletConfigParameters `json:"kubeletConfig,omitempty" tf:"kubelet_config,omitempty"`

	// +kubebuilder:validation:Optional
	Labels map[string]*string `json:"labels,omitempty" tf:"labels,omitempty"`

	// Parameters used in creating the node pool. See
	// google_container_cluster for schema.
	// +kubebuilder:validation:Optional
	LinuxNodeConfig []NodePoolNodeConfigLinuxNodeConfigParameters `json:"linuxNodeConfig,omitempty" tf:"linux_node_config,omitempty"`

	// +kubebuilder:validation:Optional
	LocalSsdCount *float64 `json:"localSsdCount,omitempty" tf:"local_ssd_count,omitempty"`

	// +kubebuilder:validation:Optional
	LoggingVariant *string `json:"loggingVariant,omitempty" tf:"logging_variant,omitempty"`

	// +kubebuilder:validation:Optional
	MachineType *string `json:"machineType,omitempty" tf:"machine_type,omitempty"`

	// +kubebuilder:validation:Optional
	Metadata map[string]*string `json:"metadata,omitempty" tf:"metadata,omitempty"`

	// +kubebuilder:validation:Optional
	MinCPUPlatform *string `json:"minCpuPlatform,omitempty" tf:"min_cpu_platform,omitempty"`

	// +kubebuilder:validation:Optional
	NodeGroup *string `json:"nodeGroup,omitempty" tf:"node_group,omitempty"`

	// +kubebuilder:validation:Optional
	OAuthScopes []*string `json:"oauthScopes,omitempty" tf:"oauth_scopes,omitempty"`

	// +kubebuilder:validation:Optional
	Preemptible *bool `json:"preemptible,omitempty" tf:"preemptible,omitempty"`

	// +kubebuilder:validation:Optional
	ReservationAffinity []NodePoolNodeConfigReservationAffinityParameters `json:"reservationAffinity,omitempty" tf:"reservation_affinity,omitempty"`

	// +kubebuilder:validation:Optional
	ResourceLabels map[string]*string `json:"resourceLabels,omitempty" tf:"resource_labels,omitempty"`

	// +crossplane:generate:reference:type=github.com/upbound/provider-gcp/apis/cloudplatform/v1beta1.ServiceAccount
	// +crossplane:generate:reference:extractor=github.com/upbound/upjet/pkg/resource.ExtractParamPath("email",true)
	// +kubebuilder:validation:Optional
	ServiceAccount *string `json:"serviceAccount,omitempty" tf:"service_account,omitempty"`

	// Reference to a ServiceAccount in cloudplatform to populate serviceAccount.
	// +kubebuilder:validation:Optional
	ServiceAccountRef *v1.Reference `json:"serviceAccountRef,omitempty" tf:"-"`

	// Selector for a ServiceAccount in cloudplatform to populate serviceAccount.
	// +kubebuilder:validation:Optional
	ServiceAccountSelector *v1.Selector `json:"serviceAccountSelector,omitempty" tf:"-"`

	// +kubebuilder:validation:Optional
	ShieldedInstanceConfig []NodePoolNodeConfigShieldedInstanceConfigParameters_2 `json:"shieldedInstanceConfig,omitempty" tf:"shielded_instance_config,omitempty"`

	// +kubebuilder:validation:Optional
	Spot *bool `json:"spot,omitempty" tf:"spot,omitempty"`

	// +kubebuilder:validation:Optional
	Tags []*string `json:"tags,omitempty" tf:"tags,omitempty"`

	// +kubebuilder:validation:Optional
	Taint []NodePoolNodeConfigTaintParameters `json:"taint,omitempty" tf:"taint,omitempty"`

	// +kubebuilder:validation:Optional
	WorkloadMetadataConfig []NodePoolNodeConfigWorkloadMetadataConfigParameters `json:"workloadMetadataConfig,omitempty" tf:"workload_metadata_config,omitempty"`
}

func (*NodePoolNodeConfigParameters_2) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NodePoolNodeConfigParameters_2.

func (*NodePoolNodeConfigParameters_2) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type NodePoolNodeConfigReservationAffinityObservation added in v0.26.0

type NodePoolNodeConfigReservationAffinityObservation struct {
}

func (*NodePoolNodeConfigReservationAffinityObservation) DeepCopy added in v0.26.0

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NodePoolNodeConfigReservationAffinityObservation.

func (*NodePoolNodeConfigReservationAffinityObservation) DeepCopyInto added in v0.26.0

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type NodePoolNodeConfigReservationAffinityParameters added in v0.26.0

type NodePoolNodeConfigReservationAffinityParameters struct {

	// +kubebuilder:validation:Required
	ConsumeReservationType *string `json:"consumeReservationType" tf:"consume_reservation_type,omitempty"`

	// +kubebuilder:validation:Optional
	Key *string `json:"key,omitempty" tf:"key,omitempty"`

	// +kubebuilder:validation:Optional
	Values []*string `json:"values,omitempty" tf:"values,omitempty"`
}

func (*NodePoolNodeConfigReservationAffinityParameters) DeepCopy added in v0.26.0

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NodePoolNodeConfigReservationAffinityParameters.

func (*NodePoolNodeConfigReservationAffinityParameters) DeepCopyInto added in v0.26.0

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type NodePoolNodeConfigShieldedInstanceConfigObservation

type NodePoolNodeConfigShieldedInstanceConfigObservation struct {

	// Defines if the instance has integrity monitoring enabled.
	EnableIntegrityMonitoring *bool `json:"enableIntegrityMonitoring,omitempty" tf:"enable_integrity_monitoring,omitempty"`

	// Defines if the instance has Secure Boot enabled.
	EnableSecureBoot *bool `json:"enableSecureBoot,omitempty" tf:"enable_secure_boot,omitempty"`
}

func (*NodePoolNodeConfigShieldedInstanceConfigObservation) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NodePoolNodeConfigShieldedInstanceConfigObservation.

func (*NodePoolNodeConfigShieldedInstanceConfigObservation) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type NodePoolNodeConfigShieldedInstanceConfigObservation_2 added in v0.26.0

type NodePoolNodeConfigShieldedInstanceConfigObservation_2 struct {
}

func (*NodePoolNodeConfigShieldedInstanceConfigObservation_2) DeepCopy added in v0.26.0

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NodePoolNodeConfigShieldedInstanceConfigObservation_2.

func (*NodePoolNodeConfigShieldedInstanceConfigObservation_2) DeepCopyInto added in v0.26.0

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type NodePoolNodeConfigShieldedInstanceConfigParameters

type NodePoolNodeConfigShieldedInstanceConfigParameters struct {
}

func (*NodePoolNodeConfigShieldedInstanceConfigParameters) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NodePoolNodeConfigShieldedInstanceConfigParameters.

func (*NodePoolNodeConfigShieldedInstanceConfigParameters) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type NodePoolNodeConfigShieldedInstanceConfigParameters_2 added in v0.26.0

type NodePoolNodeConfigShieldedInstanceConfigParameters_2 struct {

	// +kubebuilder:validation:Optional
	EnableIntegrityMonitoring *bool `json:"enableIntegrityMonitoring,omitempty" tf:"enable_integrity_monitoring,omitempty"`

	// +kubebuilder:validation:Optional
	EnableSecureBoot *bool `json:"enableSecureBoot,omitempty" tf:"enable_secure_boot,omitempty"`
}

func (*NodePoolNodeConfigShieldedInstanceConfigParameters_2) DeepCopy added in v0.26.0

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NodePoolNodeConfigShieldedInstanceConfigParameters_2.

func (*NodePoolNodeConfigShieldedInstanceConfigParameters_2) DeepCopyInto added in v0.26.0

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type NodePoolNodeConfigTaintObservation

type NodePoolNodeConfigTaintObservation struct {
}

func (*NodePoolNodeConfigTaintObservation) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NodePoolNodeConfigTaintObservation.

func (*NodePoolNodeConfigTaintObservation) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type NodePoolNodeConfigTaintParameters

type NodePoolNodeConfigTaintParameters struct {

	// +kubebuilder:validation:Optional
	Effect *string `json:"effect,omitempty" tf:"effect"`

	// +kubebuilder:validation:Optional
	Key *string `json:"key,omitempty" tf:"key"`

	// +kubebuilder:validation:Optional
	Value *string `json:"value,omitempty" tf:"value"`
}

func (*NodePoolNodeConfigTaintParameters) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NodePoolNodeConfigTaintParameters.

func (*NodePoolNodeConfigTaintParameters) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type NodePoolNodeConfigWorkloadMetadataConfigObservation

type NodePoolNodeConfigWorkloadMetadataConfigObservation struct {
}

func (*NodePoolNodeConfigWorkloadMetadataConfigObservation) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NodePoolNodeConfigWorkloadMetadataConfigObservation.

func (*NodePoolNodeConfigWorkloadMetadataConfigObservation) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type NodePoolNodeConfigWorkloadMetadataConfigParameters

type NodePoolNodeConfigWorkloadMetadataConfigParameters struct {

	// +kubebuilder:validation:Required
	Mode *string `json:"mode" tf:"mode,omitempty"`
}

func (*NodePoolNodeConfigWorkloadMetadataConfigParameters) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NodePoolNodeConfigWorkloadMetadataConfigParameters.

func (*NodePoolNodeConfigWorkloadMetadataConfigParameters) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type NodePoolObservation

type NodePoolObservation struct {
	Autoscaling []AutoscalingObservation `json:"autoscaling,omitempty" tf:"autoscaling,omitempty"`

	// The number of nodes to create in this
	// cluster's default node pool. In regional or multi-zonal clusters, this is the
	// number of nodes per zone. Must be set if node_pool is not set. If you're using
	// google_container_node_pool objects with no default node pool, you'll need to
	// set this to a value of at least 1, alongside setting
	// remove_default_node_pool to true.
	InitialNodeCount *float64 `json:"initialNodeCount,omitempty" tf:"initial_node_count,omitempty"`

	InstanceGroupUrls []*string `json:"instanceGroupUrls,omitempty" tf:"instance_group_urls,omitempty"`

	ManagedInstanceGroupUrls []*string `json:"managedInstanceGroupUrls,omitempty" tf:"managed_instance_group_urls,omitempty"`

	// NodeManagement configuration for this NodePool. Structure is documented below.
	Management []NodePoolManagementObservation `json:"management,omitempty" tf:"management,omitempty"`

	MaxPodsPerNode *float64 `json:"maxPodsPerNode,omitempty" tf:"max_pods_per_node,omitempty"`

	// The name of the cluster, unique within the project and
	// location.
	Name *string `json:"name,omitempty" tf:"name,omitempty"`

	NamePrefix *string `json:"namePrefix,omitempty" tf:"name_prefix,omitempty"`

	NetworkConfig []NetworkConfigObservation `json:"networkConfig,omitempty" tf:"network_config,omitempty"`

	// Parameters used in creating the default node pool. Structure is documented below.
	NodeConfig []NodePoolNodeConfigObservation `json:"nodeConfig,omitempty" tf:"node_config,omitempty"`

	NodeCount *float64 `json:"nodeCount,omitempty" tf:"node_count,omitempty"`

	// The list of zones in which the cluster's nodes
	// are located. Nodes must be in the region of their regional cluster or in the
	// same region as their cluster's zone for zonal clusters. If this is specified for
	// a zonal cluster, omit the cluster's zone.
	NodeLocations []*string `json:"nodeLocations,omitempty" tf:"node_locations,omitempty"`

	PlacementPolicy []PlacementPolicyObservation `json:"placementPolicy,omitempty" tf:"placement_policy,omitempty"`

	// Specifies the upgrade settings for NAP created node pools. Structure is documented below.
	UpgradeSettings []NodePoolUpgradeSettingsObservation `json:"upgradeSettings,omitempty" tf:"upgrade_settings,omitempty"`

	Version *string `json:"version,omitempty" tf:"version,omitempty"`
}

func (*NodePoolObservation) DeepCopy

func (in *NodePoolObservation) DeepCopy() *NodePoolObservation

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NodePoolObservation.

func (*NodePoolObservation) DeepCopyInto

func (in *NodePoolObservation) DeepCopyInto(out *NodePoolObservation)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type NodePoolObservation_2

type NodePoolObservation_2 struct {

	// an identifier for the resource with format {{project}}/{{location}}/{{cluster}}/{{name}}
	ID *string `json:"id,omitempty" tf:"id,omitempty"`

	// The resource URLs of the managed instance groups associated with this node pool.
	InstanceGroupUrls []*string `json:"instanceGroupUrls,omitempty" tf:"instance_group_urls,omitempty"`

	// List of instance group URLs which have been assigned to this node pool.
	ManagedInstanceGroupUrls []*string `json:"managedInstanceGroupUrls,omitempty" tf:"managed_instance_group_urls,omitempty"`

	Operation *string `json:"operation,omitempty" tf:"operation,omitempty"`
}

func (*NodePoolObservation_2) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NodePoolObservation_2.

func (*NodePoolObservation_2) DeepCopyInto

func (in *NodePoolObservation_2) DeepCopyInto(out *NodePoolObservation_2)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type NodePoolParameters

type NodePoolParameters struct {
}

func (*NodePoolParameters) DeepCopy

func (in *NodePoolParameters) DeepCopy() *NodePoolParameters

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NodePoolParameters.

func (*NodePoolParameters) DeepCopyInto

func (in *NodePoolParameters) DeepCopyInto(out *NodePoolParameters)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type NodePoolParameters_2

type NodePoolParameters_2 struct {

	// Configuration required by cluster autoscaler to adjust
	// the size of the node pool to the current cluster usage. Structure is documented below.
	// +kubebuilder:validation:Optional
	Autoscaling []NodePoolAutoscalingParameters `json:"autoscaling,omitempty" tf:"autoscaling,omitempty"`

	// The cluster to create the node pool for. Cluster must be present in location provided for clusters. May be specified in the format projects/{{project}}/locations/{{location}}/clusters/{{cluster}} or as just the name of the cluster.
	// +crossplane:generate:reference:type=Cluster
	// +crossplane:generate:reference:extractor=github.com/upbound/provider-gcp/config/common.ExtractResourceID()
	// +kubebuilder:validation:Optional
	Cluster *string `json:"cluster,omitempty" tf:"cluster,omitempty"`

	// Reference to a Cluster to populate cluster.
	// +kubebuilder:validation:Optional
	ClusterRef *v1.Reference `json:"clusterRef,omitempty" tf:"-"`

	// Selector for a Cluster to populate cluster.
	// +kubebuilder:validation:Optional
	ClusterSelector *v1.Selector `json:"clusterSelector,omitempty" tf:"-"`

	// The initial number of nodes for the pool. In
	// regional or multi-zonal clusters, this is the number of nodes per zone. Changing
	// this will force recreation of the resource.  If you don't
	// need this value, don't set it.  If you do need it, you can use a lifecycle block to
	// ignore subsequent changes to this field.
	// +kubebuilder:validation:Optional
	InitialNodeCount *float64 `json:"initialNodeCount,omitempty" tf:"initial_node_count,omitempty"`

	// The location (region or zone) of the cluster.
	// +kubebuilder:validation:Optional
	Location *string `json:"location,omitempty" tf:"location,omitempty"`

	// Node management configuration, wherein auto-repair and
	// auto-upgrade is configured. Structure is documented below.
	// +kubebuilder:validation:Optional
	Management []NodePoolManagementParameters_2 `json:"management,omitempty" tf:"management,omitempty"`

	// The maximum number of pods per node in this node pool.
	// Note that this does not work on node pools which are "route-based" - that is, node
	// pools belonging to clusters that do not have IP Aliasing enabled.
	// See the official documentation
	// for more information.
	// +kubebuilder:validation:Optional
	MaxPodsPerNode *float64 `json:"maxPodsPerNode,omitempty" tf:"max_pods_per_node,omitempty"`

	// The network configuration of the pool. Such as
	// configuration for Adding Pod IP address ranges) to the node pool. Or enabling private nodes. Structure is
	// documented below
	// +kubebuilder:validation:Optional
	NetworkConfig []NodePoolNetworkConfigParameters `json:"networkConfig,omitempty" tf:"network_config,omitempty"`

	// Parameters used in creating the node pool. See
	// google_container_cluster for schema.
	// +kubebuilder:validation:Optional
	NodeConfig []NodePoolNodeConfigParameters_2 `json:"nodeConfig,omitempty" tf:"node_config,omitempty"`

	// The number of nodes per instance group. This field can be used to
	// update the number of nodes per instance group but should not be used alongside autoscaling.
	// +kubebuilder:validation:Optional
	NodeCount *float64 `json:"nodeCount,omitempty" tf:"node_count,omitempty"`

	// The list of zones in which the node pool's nodes should be located. Nodes must
	// be in the region of their regional cluster or in the same region as their
	// cluster's zone for zonal clusters. If unspecified, the cluster-level
	// node_locations will be used.
	// +kubebuilder:validation:Optional
	NodeLocations []*string `json:"nodeLocations,omitempty" tf:"node_locations,omitempty"`

	// Specifies a custom placement policy for the
	// nodes.
	// +kubebuilder:validation:Optional
	PlacementPolicy []NodePoolPlacementPolicyParameters `json:"placementPolicy,omitempty" tf:"placement_policy,omitempty"`

	// The ID of the project in which to create the node pool. If blank,
	// the provider-configured project will be used.
	// +kubebuilder:validation:Optional
	Project *string `json:"project,omitempty" tf:"project,omitempty"`

	// Specify node upgrade settings to change how GKE upgrades nodes.
	// The maximum number of nodes upgraded simultaneously is limited to 20. Structure is documented below.
	// +kubebuilder:validation:Optional
	UpgradeSettings []NodePoolUpgradeSettingsParameters_2 `json:"upgradeSettings,omitempty" tf:"upgrade_settings,omitempty"`

	// The Kubernetes version for the nodes in this pool. Note that if this field
	// and auto_upgrade are both specified, they will fight each other for what the node version should
	// be, so setting both is highly discouraged.
	// +kubebuilder:validation:Optional
	Version *string `json:"version,omitempty" tf:"version,omitempty"`
}

func (*NodePoolParameters_2) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NodePoolParameters_2.

func (*NodePoolParameters_2) DeepCopyInto

func (in *NodePoolParameters_2) DeepCopyInto(out *NodePoolParameters_2)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type NodePoolPlacementPolicyObservation added in v0.26.0

type NodePoolPlacementPolicyObservation struct {
}

func (*NodePoolPlacementPolicyObservation) DeepCopy added in v0.26.0

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NodePoolPlacementPolicyObservation.

func (*NodePoolPlacementPolicyObservation) DeepCopyInto added in v0.26.0

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type NodePoolPlacementPolicyParameters added in v0.26.0

type NodePoolPlacementPolicyParameters struct {

	// The type of the policy. Supports a single value: COMPACT.
	// Specifying COMPACT placement policy type places node pool's nodes in a closer
	// physical proximity in order to reduce network latency between nodes.
	// +kubebuilder:validation:Required
	Type *string `json:"type" tf:"type,omitempty"`
}

func (*NodePoolPlacementPolicyParameters) DeepCopy added in v0.26.0

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NodePoolPlacementPolicyParameters.

func (*NodePoolPlacementPolicyParameters) DeepCopyInto added in v0.26.0

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type NodePoolSpec

type NodePoolSpec struct {
	v1.ResourceSpec `json:",inline"`
	ForProvider     NodePoolParameters_2 `json:"forProvider"`
}

NodePoolSpec defines the desired state of NodePool

func (*NodePoolSpec) DeepCopy

func (in *NodePoolSpec) DeepCopy() *NodePoolSpec

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NodePoolSpec.

func (*NodePoolSpec) DeepCopyInto

func (in *NodePoolSpec) DeepCopyInto(out *NodePoolSpec)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type NodePoolStatus

type NodePoolStatus struct {
	v1.ResourceStatus `json:",inline"`
	AtProvider        NodePoolObservation_2 `json:"atProvider,omitempty"`
}

NodePoolStatus defines the observed state of NodePool.

func (*NodePoolStatus) DeepCopy

func (in *NodePoolStatus) DeepCopy() *NodePoolStatus

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NodePoolStatus.

func (*NodePoolStatus) DeepCopyInto

func (in *NodePoolStatus) DeepCopyInto(out *NodePoolStatus)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type NodePoolUpgradeSettingsBlueGreenSettingsObservation added in v0.26.0

type NodePoolUpgradeSettingsBlueGreenSettingsObservation struct {
}

func (*NodePoolUpgradeSettingsBlueGreenSettingsObservation) DeepCopy added in v0.26.0

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NodePoolUpgradeSettingsBlueGreenSettingsObservation.

func (*NodePoolUpgradeSettingsBlueGreenSettingsObservation) DeepCopyInto added in v0.26.0

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type NodePoolUpgradeSettingsBlueGreenSettingsParameters added in v0.26.0

type NodePoolUpgradeSettingsBlueGreenSettingsParameters struct {

	// Time needed after draining the entire blue pool.
	// After this period, the blue pool will be cleaned up.
	// +kubebuilder:validation:Optional
	NodePoolSoakDuration *string `json:"nodePoolSoakDuration,omitempty" tf:"node_pool_soak_duration,omitempty"`

	// Specifies the standard policy settings for blue-green upgrades.
	// +kubebuilder:validation:Required
	StandardRolloutPolicy []UpgradeSettingsBlueGreenSettingsStandardRolloutPolicyParameters `json:"standardRolloutPolicy" tf:"standard_rollout_policy,omitempty"`
}

func (*NodePoolUpgradeSettingsBlueGreenSettingsParameters) DeepCopy added in v0.26.0

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NodePoolUpgradeSettingsBlueGreenSettingsParameters.

func (*NodePoolUpgradeSettingsBlueGreenSettingsParameters) DeepCopyInto added in v0.26.0

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type NodePoolUpgradeSettingsObservation

type NodePoolUpgradeSettingsObservation struct {

	// Settings for blue-green upgrade strategy. To be specified when strategy is set to BLUE_GREEN. Structure is documented below.
	BlueGreenSettings []UpgradeSettingsBlueGreenSettingsObservation `json:"blueGreenSettings,omitempty" tf:"blue_green_settings,omitempty"`

	// The maximum number of nodes that can be created beyond the current size of the node pool during the upgrade process. To be used when strategy is set to SURGE. Default is 0.
	MaxSurge *float64 `json:"maxSurge,omitempty" tf:"max_surge,omitempty"`

	// The maximum number of nodes that can be simultaneously unavailable during the upgrade process. To be used when strategy is set to SURGE. Default is 0.
	MaxUnavailable *float64 `json:"maxUnavailable,omitempty" tf:"max_unavailable,omitempty"`

	// Strategy used for node pool update. Strategy can only be one of BLUE_GREEN or SURGE. The default is value is SURGE.
	Strategy *string `json:"strategy,omitempty" tf:"strategy,omitempty"`
}

func (*NodePoolUpgradeSettingsObservation) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NodePoolUpgradeSettingsObservation.

func (*NodePoolUpgradeSettingsObservation) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type NodePoolUpgradeSettingsObservation_2 added in v0.26.0

type NodePoolUpgradeSettingsObservation_2 struct {
}

func (*NodePoolUpgradeSettingsObservation_2) DeepCopy added in v0.26.0

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NodePoolUpgradeSettingsObservation_2.

func (*NodePoolUpgradeSettingsObservation_2) DeepCopyInto added in v0.26.0

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type NodePoolUpgradeSettingsParameters

type NodePoolUpgradeSettingsParameters struct {
}

func (*NodePoolUpgradeSettingsParameters) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NodePoolUpgradeSettingsParameters.

func (*NodePoolUpgradeSettingsParameters) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type NodePoolUpgradeSettingsParameters_2 added in v0.26.0

type NodePoolUpgradeSettingsParameters_2 struct {

	// The settings to adjust blue green upgrades.
	// Structure is documented below
	// +kubebuilder:validation:Optional
	BlueGreenSettings []NodePoolUpgradeSettingsBlueGreenSettingsParameters `json:"blueGreenSettings,omitempty" tf:"blue_green_settings,omitempty"`

	// The number of additional nodes that can be added to the node pool during
	// an upgrade. Increasing max_surge raises the number of nodes that can be upgraded simultaneously.
	// Can be set to 0 or greater.
	// +kubebuilder:validation:Optional
	MaxSurge *float64 `json:"maxSurge,omitempty" tf:"max_surge,omitempty"`

	// The number of nodes that can be simultaneously unavailable during
	// an upgrade. Increasing max_unavailable raises the number of nodes that can be upgraded in
	// parallel. Can be set to 0 or greater.
	// +kubebuilder:validation:Optional
	MaxUnavailable *float64 `json:"maxUnavailable,omitempty" tf:"max_unavailable,omitempty"`

	// (Default SURGE) The upgrade stragey to be used for upgrading the nodes.
	// +kubebuilder:validation:Optional
	Strategy *string `json:"strategy,omitempty" tf:"strategy,omitempty"`
}

func (*NodePoolUpgradeSettingsParameters_2) DeepCopy added in v0.26.0

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NodePoolUpgradeSettingsParameters_2.

func (*NodePoolUpgradeSettingsParameters_2) DeepCopyInto added in v0.26.0

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type NotificationConfigObservation added in v0.26.0

type NotificationConfigObservation struct {
}

func (*NotificationConfigObservation) DeepCopy added in v0.26.0

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NotificationConfigObservation.

func (*NotificationConfigObservation) DeepCopyInto added in v0.26.0

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type NotificationConfigParameters added in v0.26.0

type NotificationConfigParameters struct {

	// The pubsub config for the cluster's upgrade notifications.
	// +kubebuilder:validation:Required
	Pubsub []PubsubParameters `json:"pubsub" tf:"pubsub,omitempty"`
}

func (*NotificationConfigParameters) DeepCopy added in v0.26.0

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NotificationConfigParameters.

func (*NotificationConfigParameters) DeepCopyInto added in v0.26.0

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type PlacementPolicyObservation added in v0.26.0

type PlacementPolicyObservation struct {

	// The accelerator type resource to expose to this instance. E.g. nvidia-tesla-k80.
	Type *string `json:"type,omitempty" tf:"type,omitempty"`
}

func (*PlacementPolicyObservation) DeepCopy added in v0.26.0

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PlacementPolicyObservation.

func (*PlacementPolicyObservation) DeepCopyInto added in v0.26.0

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type PlacementPolicyParameters added in v0.26.0

type PlacementPolicyParameters struct {
}

func (*PlacementPolicyParameters) DeepCopy added in v0.26.0

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PlacementPolicyParameters.

func (*PlacementPolicyParameters) DeepCopyInto added in v0.26.0

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type PrivateClusterConfigObservation

type PrivateClusterConfigObservation struct {

	// The name of the peering between this cluster and the Google owned VPC.
	PeeringName *string `json:"peeringName,omitempty" tf:"peering_name,omitempty"`

	// The internal IP address of this cluster's master endpoint.
	PrivateEndpoint *string `json:"privateEndpoint,omitempty" tf:"private_endpoint,omitempty"`

	// The external IP address of this cluster's master endpoint.
	PublicEndpoint *string `json:"publicEndpoint,omitempty" tf:"public_endpoint,omitempty"`
}

func (*PrivateClusterConfigObservation) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PrivateClusterConfigObservation.

func (*PrivateClusterConfigObservation) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type PrivateClusterConfigParameters

type PrivateClusterConfigParameters struct {

	// When true, the cluster's private
	// endpoint is used as the cluster endpoint and access through the public endpoint
	// is disabled. When false, either endpoint can be used. This field only applies
	// to private clusters, when enable_private_nodes is true.
	// +kubebuilder:validation:Optional
	EnablePrivateEndpoint *bool `json:"enablePrivateEndpoint,omitempty" tf:"enable_private_endpoint,omitempty"`

	// Enables the private cluster feature,
	// creating a private endpoint on the cluster. In a private cluster, nodes only
	// have RFC 1918 private addresses and communicate with the master's private
	// endpoint via private networking.
	// +kubebuilder:validation:Optional
	EnablePrivateNodes *bool `json:"enablePrivateNodes,omitempty" tf:"enable_private_nodes,omitempty"`

	// Controls cluster master global
	// access settings. Structure is documented below.
	// +kubebuilder:validation:Optional
	MasterGlobalAccessConfig []MasterGlobalAccessConfigParameters `json:"masterGlobalAccessConfig,omitempty" tf:"master_global_access_config,omitempty"`

	// The IP range in CIDR notation to use for
	// the hosted master network. This range will be used for assigning private IP
	// addresses to the cluster master(s) and the ILB VIP. This range must not overlap
	// with any other ranges in use within the cluster's network, and it must be a /28
	// subnet. See Private Cluster Limitations
	// for more details. This field only applies to private clusters, when
	// enable_private_nodes is true.
	// +kubebuilder:validation:Optional
	MasterIPv4CidrBlock *string `json:"masterIpv4CidrBlock,omitempty" tf:"master_ipv4_cidr_block,omitempty"`

	// Subnetwork in cluster's network where master's endpoint will be provisioned.
	// +kubebuilder:validation:Optional
	PrivateEndpointSubnetwork *string `json:"privateEndpointSubnetwork,omitempty" tf:"private_endpoint_subnetwork,omitempty"`
}

func (*PrivateClusterConfigParameters) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PrivateClusterConfigParameters.

func (*PrivateClusterConfigParameters) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type PubsubObservation added in v0.26.0

type PubsubObservation struct {
}

func (*PubsubObservation) DeepCopy added in v0.26.0

func (in *PubsubObservation) DeepCopy() *PubsubObservation

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PubsubObservation.

func (*PubsubObservation) DeepCopyInto added in v0.26.0

func (in *PubsubObservation) DeepCopyInto(out *PubsubObservation)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type PubsubParameters added in v0.26.0

type PubsubParameters struct {

	// Whether or not the notification config is enabled
	// +kubebuilder:validation:Required
	Enabled *bool `json:"enabled" tf:"enabled,omitempty"`

	// Choose what type of notifications you want to receive. If no filters are applied, you'll receive all notification types. Structure is documented below.
	// +kubebuilder:validation:Optional
	Filter []FilterParameters `json:"filter,omitempty" tf:"filter,omitempty"`

	// The pubsub topic to push upgrade notifications to. Must be in the same project as the cluster. Must be in the format: projects/{project}/topics/{topic}.
	// +kubebuilder:validation:Optional
	Topic *string `json:"topic,omitempty" tf:"topic,omitempty"`
}

func (*PubsubParameters) DeepCopy added in v0.26.0

func (in *PubsubParameters) DeepCopy() *PubsubParameters

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PubsubParameters.

func (*PubsubParameters) DeepCopyInto added in v0.26.0

func (in *PubsubParameters) DeepCopyInto(out *PubsubParameters)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type RecurringWindowObservation

type RecurringWindowObservation struct {
}

func (*RecurringWindowObservation) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RecurringWindowObservation.

func (*RecurringWindowObservation) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type RecurringWindowParameters

type RecurringWindowParameters struct {

	// +kubebuilder:validation:Required
	EndTime *string `json:"endTime" tf:"end_time,omitempty"`

	// +kubebuilder:validation:Required
	Recurrence *string `json:"recurrence" tf:"recurrence,omitempty"`

	// +kubebuilder:validation:Required
	StartTime *string `json:"startTime" tf:"start_time,omitempty"`
}

func (*RecurringWindowParameters) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RecurringWindowParameters.

func (*RecurringWindowParameters) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type Registry

type Registry struct {
	metav1.TypeMeta   `json:",inline"`
	metav1.ObjectMeta `json:"metadata,omitempty"`
	Spec              RegistrySpec   `json:"spec"`
	Status            RegistryStatus `json:"status,omitempty"`
}

Registry is the Schema for the Registrys API. Ensures the GCS bucket backing Google Container Registry exists. +kubebuilder:printcolumn:name="READY",type="string",JSONPath=".status.conditions[?(@.type=='Ready')].status" +kubebuilder:printcolumn:name="SYNCED",type="string",JSONPath=".status.conditions[?(@.type=='Synced')].status" +kubebuilder:printcolumn:name="EXTERNAL-NAME",type="string",JSONPath=".metadata.annotations.crossplane\\.io/external-name" +kubebuilder:printcolumn:name="AGE",type="date",JSONPath=".metadata.creationTimestamp" +kubebuilder:subresource:status +kubebuilder:resource:scope=Cluster,categories={crossplane,managed,gcp}

func (*Registry) DeepCopy

func (in *Registry) DeepCopy() *Registry

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Registry.

func (*Registry) DeepCopyInto

func (in *Registry) DeepCopyInto(out *Registry)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*Registry) DeepCopyObject

func (in *Registry) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

func (*Registry) GetCondition

func (mg *Registry) GetCondition(ct xpv1.ConditionType) xpv1.Condition

GetCondition of this Registry.

func (*Registry) GetConnectionDetailsMapping

func (tr *Registry) GetConnectionDetailsMapping() map[string]string

GetConnectionDetailsMapping for this Registry

func (*Registry) GetDeletionPolicy

func (mg *Registry) GetDeletionPolicy() xpv1.DeletionPolicy

GetDeletionPolicy of this Registry.

func (*Registry) GetID

func (tr *Registry) GetID() string

GetID returns ID of underlying Terraform resource of this Registry

func (*Registry) GetObservation

func (tr *Registry) GetObservation() (map[string]any, error)

GetObservation of this Registry

func (*Registry) GetParameters

func (tr *Registry) GetParameters() (map[string]any, error)

GetParameters of this Registry

func (*Registry) GetProviderConfigReference

func (mg *Registry) GetProviderConfigReference() *xpv1.Reference

GetProviderConfigReference of this Registry.

func (*Registry) GetProviderReference

func (mg *Registry) GetProviderReference() *xpv1.Reference

GetProviderReference of this Registry. Deprecated: Use GetProviderConfigReference.

func (*Registry) GetPublishConnectionDetailsTo

func (mg *Registry) GetPublishConnectionDetailsTo() *xpv1.PublishConnectionDetailsTo

GetPublishConnectionDetailsTo of this Registry.

func (*Registry) GetTerraformResourceType

func (mg *Registry) GetTerraformResourceType() string

GetTerraformResourceType returns Terraform resource type for this Registry

func (*Registry) GetTerraformSchemaVersion

func (tr *Registry) GetTerraformSchemaVersion() int

GetTerraformSchemaVersion returns the associated Terraform schema version

func (*Registry) GetWriteConnectionSecretToReference

func (mg *Registry) GetWriteConnectionSecretToReference() *xpv1.SecretReference

GetWriteConnectionSecretToReference of this Registry.

func (*Registry) LateInitialize

func (tr *Registry) LateInitialize(attrs []byte) (bool, error)

LateInitialize this Registry using its observed tfState. returns True if there are any spec changes for the resource.

func (*Registry) SetConditions

func (mg *Registry) SetConditions(c ...xpv1.Condition)

SetConditions of this Registry.

func (*Registry) SetDeletionPolicy

func (mg *Registry) SetDeletionPolicy(r xpv1.DeletionPolicy)

SetDeletionPolicy of this Registry.

func (*Registry) SetObservation

func (tr *Registry) SetObservation(obs map[string]any) error

SetObservation for this Registry

func (*Registry) SetParameters

func (tr *Registry) SetParameters(params map[string]any) error

SetParameters for this Registry

func (*Registry) SetProviderConfigReference

func (mg *Registry) SetProviderConfigReference(r *xpv1.Reference)

SetProviderConfigReference of this Registry.

func (*Registry) SetProviderReference

func (mg *Registry) SetProviderReference(r *xpv1.Reference)

SetProviderReference of this Registry. Deprecated: Use SetProviderConfigReference.

func (*Registry) SetPublishConnectionDetailsTo

func (mg *Registry) SetPublishConnectionDetailsTo(r *xpv1.PublishConnectionDetailsTo)

SetPublishConnectionDetailsTo of this Registry.

func (*Registry) SetWriteConnectionSecretToReference

func (mg *Registry) SetWriteConnectionSecretToReference(r *xpv1.SecretReference)

SetWriteConnectionSecretToReference of this Registry.

type RegistryList

type RegistryList struct {
	metav1.TypeMeta `json:",inline"`
	metav1.ListMeta `json:"metadata,omitempty"`
	Items           []Registry `json:"items"`
}

RegistryList contains a list of Registrys

func (*RegistryList) DeepCopy

func (in *RegistryList) DeepCopy() *RegistryList

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RegistryList.

func (*RegistryList) DeepCopyInto

func (in *RegistryList) DeepCopyInto(out *RegistryList)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*RegistryList) DeepCopyObject

func (in *RegistryList) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

func (*RegistryList) GetItems

func (l *RegistryList) GetItems() []resource.Managed

GetItems of this RegistryList.

type RegistryObservation

type RegistryObservation struct {

	// The URI of the created resource.
	BucketSelfLink *string `json:"bucketSelfLink,omitempty" tf:"bucket_self_link,omitempty"`

	// The name of the bucket that supports the Container Registry. In the form of artifacts.{project}.appspot.com or {location}.artifacts.{project}.appspot.com if location is specified.
	ID *string `json:"id,omitempty" tf:"id,omitempty"`
}

func (*RegistryObservation) DeepCopy

func (in *RegistryObservation) DeepCopy() *RegistryObservation

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RegistryObservation.

func (*RegistryObservation) DeepCopyInto

func (in *RegistryObservation) DeepCopyInto(out *RegistryObservation)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type RegistryParameters

type RegistryParameters struct {

	// The location of the registry. One of ASIA, EU, US or not specified. See the official documentation for more information on registry locations.
	// +kubebuilder:validation:Optional
	Location *string `json:"location,omitempty" tf:"location,omitempty"`

	// The ID of the project in which the resource belongs. If it is not provided, the provider project is used.
	// +kubebuilder:validation:Optional
	Project *string `json:"project,omitempty" tf:"project,omitempty"`
}

func (*RegistryParameters) DeepCopy

func (in *RegistryParameters) DeepCopy() *RegistryParameters

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RegistryParameters.

func (*RegistryParameters) DeepCopyInto

func (in *RegistryParameters) DeepCopyInto(out *RegistryParameters)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type RegistrySpec

type RegistrySpec struct {
	v1.ResourceSpec `json:",inline"`
	ForProvider     RegistryParameters `json:"forProvider"`
}

RegistrySpec defines the desired state of Registry

func (*RegistrySpec) DeepCopy

func (in *RegistrySpec) DeepCopy() *RegistrySpec

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RegistrySpec.

func (*RegistrySpec) DeepCopyInto

func (in *RegistrySpec) DeepCopyInto(out *RegistrySpec)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type RegistryStatus

type RegistryStatus struct {
	v1.ResourceStatus `json:",inline"`
	AtProvider        RegistryObservation `json:"atProvider,omitempty"`
}

RegistryStatus defines the observed state of Registry.

func (*RegistryStatus) DeepCopy

func (in *RegistryStatus) DeepCopy() *RegistryStatus

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RegistryStatus.

func (*RegistryStatus) DeepCopyInto

func (in *RegistryStatus) DeepCopyInto(out *RegistryStatus)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type ReleaseChannelObservation

type ReleaseChannelObservation struct {
}

func (*ReleaseChannelObservation) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ReleaseChannelObservation.

func (*ReleaseChannelObservation) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type ReleaseChannelParameters

type ReleaseChannelParameters struct {

	// The selected release channel.
	// Accepted values are:
	// +kubebuilder:validation:Required
	Channel *string `json:"channel" tf:"channel,omitempty"`
}

func (*ReleaseChannelParameters) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ReleaseChannelParameters.

func (*ReleaseChannelParameters) DeepCopyInto

func (in *ReleaseChannelParameters) DeepCopyInto(out *ReleaseChannelParameters)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type ReservationAffinityObservation added in v0.26.0

type ReservationAffinityObservation struct {
}

func (*ReservationAffinityObservation) DeepCopy added in v0.26.0

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ReservationAffinityObservation.

func (*ReservationAffinityObservation) DeepCopyInto added in v0.26.0

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type ReservationAffinityParameters added in v0.26.0

type ReservationAffinityParameters struct {

	// The type of reservation consumption
	// Accepted values are:
	// +kubebuilder:validation:Required
	ConsumeReservationType *string `json:"consumeReservationType" tf:"consume_reservation_type,omitempty"`

	// Key for taint.
	// +kubebuilder:validation:Optional
	Key *string `json:"key,omitempty" tf:"key,omitempty"`

	// name"
	// +kubebuilder:validation:Optional
	Values []*string `json:"values,omitempty" tf:"values,omitempty"`
}

func (*ReservationAffinityParameters) DeepCopy added in v0.26.0

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ReservationAffinityParameters.

func (*ReservationAffinityParameters) DeepCopyInto added in v0.26.0

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type ResourceLimitsObservation

type ResourceLimitsObservation struct {
}

func (*ResourceLimitsObservation) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ResourceLimitsObservation.

func (*ResourceLimitsObservation) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type ResourceLimitsParameters

type ResourceLimitsParameters struct {

	// Maximum amount of the resource in the cluster.
	// +kubebuilder:validation:Optional
	Maximum *float64 `json:"maximum,omitempty" tf:"maximum,omitempty"`

	// Minimum amount of the resource in the cluster.
	// +kubebuilder:validation:Optional
	Minimum *float64 `json:"minimum,omitempty" tf:"minimum,omitempty"`

	// The type of the resource. For example, cpu and
	// memory.  See the guide to using Node Auto-Provisioning
	// for a list of types.
	// +kubebuilder:validation:Required
	ResourceType *string `json:"resourceType" tf:"resource_type,omitempty"`
}

func (*ResourceLimitsParameters) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ResourceLimitsParameters.

func (*ResourceLimitsParameters) DeepCopyInto

func (in *ResourceLimitsParameters) DeepCopyInto(out *ResourceLimitsParameters)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type ResourceUsageExportConfigObservation

type ResourceUsageExportConfigObservation struct {
}

func (*ResourceUsageExportConfigObservation) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ResourceUsageExportConfigObservation.

func (*ResourceUsageExportConfigObservation) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type ResourceUsageExportConfigParameters

type ResourceUsageExportConfigParameters struct {

	// Parameters for using BigQuery as the destination of resource usage export.
	// +kubebuilder:validation:Required
	BigqueryDestination []BigqueryDestinationParameters `json:"bigqueryDestination" tf:"bigquery_destination,omitempty"`

	// Whether to enable network egress metering for this cluster. If enabled, a daemonset will be created
	// in the cluster to meter network egress traffic.
	// +kubebuilder:validation:Optional
	EnableNetworkEgressMetering *bool `json:"enableNetworkEgressMetering,omitempty" tf:"enable_network_egress_metering,omitempty"`

	// Whether to enable resource
	// consumption metering on this cluster. When enabled, a table will be created in
	// the resource export BigQuery dataset to store resource consumption data. The
	// resulting table can be joined with the resource usage table or with BigQuery
	// billing export. Defaults to true.
	// +kubebuilder:validation:Optional
	EnableResourceConsumptionMetering *bool `json:"enableResourceConsumptionMetering,omitempty" tf:"enable_resource_consumption_metering,omitempty"`
}

func (*ResourceUsageExportConfigParameters) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ResourceUsageExportConfigParameters.

func (*ResourceUsageExportConfigParameters) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type ServiceExternalIpsConfigObservation added in v0.26.0

type ServiceExternalIpsConfigObservation struct {
}

func (*ServiceExternalIpsConfigObservation) DeepCopy added in v0.26.0

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ServiceExternalIpsConfigObservation.

func (*ServiceExternalIpsConfigObservation) DeepCopyInto added in v0.26.0

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type ServiceExternalIpsConfigParameters added in v0.26.0

type ServiceExternalIpsConfigParameters struct {

	// Controls whether external ips specified by a service will be allowed. It is enabled by default.
	// +kubebuilder:validation:Required
	Enabled *bool `json:"enabled" tf:"enabled,omitempty"`
}

func (*ServiceExternalIpsConfigParameters) DeepCopy added in v0.26.0

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ServiceExternalIpsConfigParameters.

func (*ServiceExternalIpsConfigParameters) DeepCopyInto added in v0.26.0

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type ShieldedInstanceConfigObservation

type ShieldedInstanceConfigObservation struct {
}

func (*ShieldedInstanceConfigObservation) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ShieldedInstanceConfigObservation.

func (*ShieldedInstanceConfigObservation) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type ShieldedInstanceConfigParameters

type ShieldedInstanceConfigParameters struct {

	// Defines if the instance has integrity monitoring enabled.
	// +kubebuilder:validation:Optional
	EnableIntegrityMonitoring *bool `json:"enableIntegrityMonitoring,omitempty" tf:"enable_integrity_monitoring,omitempty"`

	// Defines if the instance has Secure Boot enabled.
	// +kubebuilder:validation:Optional
	EnableSecureBoot *bool `json:"enableSecureBoot,omitempty" tf:"enable_secure_boot,omitempty"`
}

func (*ShieldedInstanceConfigParameters) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ShieldedInstanceConfigParameters.

func (*ShieldedInstanceConfigParameters) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type StandardRolloutPolicyObservation added in v0.26.0

type StandardRolloutPolicyObservation struct {
}

func (*StandardRolloutPolicyObservation) DeepCopy added in v0.26.0

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new StandardRolloutPolicyObservation.

func (*StandardRolloutPolicyObservation) DeepCopyInto added in v0.26.0

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type StandardRolloutPolicyParameters added in v0.26.0

type StandardRolloutPolicyParameters struct {

	// Number of blue nodes to drain in a batch. Only one of the batch_percentage or batch_node_count can be specified.
	// +kubebuilder:validation:Optional
	BatchNodeCount *float64 `json:"batchNodeCount,omitempty" tf:"batch_node_count,omitempty"`

	// :  Percentage of the bool pool nodes to drain in a batch. The range of this field should be (0.0, 1.0). Only one of the batch_percentage or batch_node_count can be specified.
	// +kubebuilder:validation:Optional
	BatchPercentage *float64 `json:"batchPercentage,omitempty" tf:"batch_percentage,omitempty"`

	// Soak time after each batch gets drained. A duration in seconds with up to nine fractional digits, ending with 's'. Example: "3.5s".`.
	// +kubebuilder:validation:Optional
	BatchSoakDuration *string `json:"batchSoakDuration,omitempty" tf:"batch_soak_duration,omitempty"`
}

func (*StandardRolloutPolicyParameters) DeepCopy added in v0.26.0

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new StandardRolloutPolicyParameters.

func (*StandardRolloutPolicyParameters) DeepCopyInto added in v0.26.0

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type TaintObservation

type TaintObservation struct {
}

func (*TaintObservation) DeepCopy

func (in *TaintObservation) DeepCopy() *TaintObservation

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new TaintObservation.

func (*TaintObservation) DeepCopyInto

func (in *TaintObservation) DeepCopyInto(out *TaintObservation)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type TaintParameters

type TaintParameters struct {

	// Effect for taint. Accepted values are NO_SCHEDULE, PREFER_NO_SCHEDULE, and NO_EXECUTE.
	// +kubebuilder:validation:Optional
	Effect *string `json:"effect,omitempty" tf:"effect"`

	// Key for taint.
	// +kubebuilder:validation:Optional
	Key *string `json:"key,omitempty" tf:"key"`

	// Value for taint.
	// +kubebuilder:validation:Optional
	Value *string `json:"value,omitempty" tf:"value"`
}

func (*TaintParameters) DeepCopy

func (in *TaintParameters) DeepCopy() *TaintParameters

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new TaintParameters.

func (*TaintParameters) DeepCopyInto

func (in *TaintParameters) DeepCopyInto(out *TaintParameters)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type UpgradeOptionsObservation added in v0.26.0

type UpgradeOptionsObservation struct {
	AutoUpgradeStartTime *string `json:"autoUpgradeStartTime,omitempty" tf:"auto_upgrade_start_time,omitempty"`

	// Description of the cluster.
	Description *string `json:"description,omitempty" tf:"description,omitempty"`
}

func (*UpgradeOptionsObservation) DeepCopy added in v0.26.0

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new UpgradeOptionsObservation.

func (*UpgradeOptionsObservation) DeepCopyInto added in v0.26.0

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type UpgradeOptionsParameters added in v0.26.0

type UpgradeOptionsParameters struct {
}

func (*UpgradeOptionsParameters) DeepCopy added in v0.26.0

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new UpgradeOptionsParameters.

func (*UpgradeOptionsParameters) DeepCopyInto added in v0.26.0

func (in *UpgradeOptionsParameters) DeepCopyInto(out *UpgradeOptionsParameters)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type UpgradeSettingsBlueGreenSettingsObservation added in v0.26.0

type UpgradeSettingsBlueGreenSettingsObservation struct {

	// Time needed after draining entire blue pool. After this period, blue pool will be cleaned up. A duration in seconds with up to nine fractional digits, ending with 's'. Example: "3.5s".
	NodePoolSoakDuration *string `json:"nodePoolSoakDuration,omitempty" tf:"node_pool_soak_duration,omitempty"`

	// green upgrade. To be specified when strategy is set to BLUE_GREEN. Structure is documented below.
	StandardRolloutPolicy []BlueGreenSettingsStandardRolloutPolicyObservation `json:"standardRolloutPolicy,omitempty" tf:"standard_rollout_policy,omitempty"`
}

func (*UpgradeSettingsBlueGreenSettingsObservation) DeepCopy added in v0.26.0

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new UpgradeSettingsBlueGreenSettingsObservation.

func (*UpgradeSettingsBlueGreenSettingsObservation) DeepCopyInto added in v0.26.0

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type UpgradeSettingsBlueGreenSettingsParameters added in v0.26.0

type UpgradeSettingsBlueGreenSettingsParameters struct {
}

func (*UpgradeSettingsBlueGreenSettingsParameters) DeepCopy added in v0.26.0

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new UpgradeSettingsBlueGreenSettingsParameters.

func (*UpgradeSettingsBlueGreenSettingsParameters) DeepCopyInto added in v0.26.0

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type UpgradeSettingsBlueGreenSettingsStandardRolloutPolicyObservation added in v0.26.0

type UpgradeSettingsBlueGreenSettingsStandardRolloutPolicyObservation struct {
}

func (*UpgradeSettingsBlueGreenSettingsStandardRolloutPolicyObservation) DeepCopy added in v0.26.0

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new UpgradeSettingsBlueGreenSettingsStandardRolloutPolicyObservation.

func (*UpgradeSettingsBlueGreenSettingsStandardRolloutPolicyObservation) DeepCopyInto added in v0.26.0

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type UpgradeSettingsBlueGreenSettingsStandardRolloutPolicyParameters added in v0.26.0

type UpgradeSettingsBlueGreenSettingsStandardRolloutPolicyParameters struct {

	// Number of blue nodes to drain in a batch.
	// +kubebuilder:validation:Optional
	BatchNodeCount *float64 `json:"batchNodeCount,omitempty" tf:"batch_node_count,omitempty"`

	// Percentage of the blue pool nodes to drain in a batch.
	// +kubebuilder:validation:Optional
	BatchPercentage *float64 `json:"batchPercentage,omitempty" tf:"batch_percentage,omitempty"`

	// (Optionial) Soak time after each batch gets drained.
	// +kubebuilder:validation:Optional
	BatchSoakDuration *string `json:"batchSoakDuration,omitempty" tf:"batch_soak_duration,omitempty"`
}

func (*UpgradeSettingsBlueGreenSettingsStandardRolloutPolicyParameters) DeepCopy added in v0.26.0

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new UpgradeSettingsBlueGreenSettingsStandardRolloutPolicyParameters.

func (*UpgradeSettingsBlueGreenSettingsStandardRolloutPolicyParameters) DeepCopyInto added in v0.26.0

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type UpgradeSettingsObservation

type UpgradeSettingsObservation struct {
}

func (*UpgradeSettingsObservation) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new UpgradeSettingsObservation.

func (*UpgradeSettingsObservation) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type UpgradeSettingsParameters

type UpgradeSettingsParameters struct {

	// Settings for blue-green upgrade strategy. To be specified when strategy is set to BLUE_GREEN. Structure is documented below.
	// +kubebuilder:validation:Optional
	BlueGreenSettings []BlueGreenSettingsParameters `json:"blueGreenSettings,omitempty" tf:"blue_green_settings,omitempty"`

	// The maximum number of nodes that can be created beyond the current size of the node pool during the upgrade process. To be used when strategy is set to SURGE. Default is 0.
	// +kubebuilder:validation:Optional
	MaxSurge *float64 `json:"maxSurge,omitempty" tf:"max_surge,omitempty"`

	// The maximum number of nodes that can be simultaneously unavailable during the upgrade process. To be used when strategy is set to SURGE. Default is 0.
	// +kubebuilder:validation:Optional
	MaxUnavailable *float64 `json:"maxUnavailable,omitempty" tf:"max_unavailable,omitempty"`

	// Strategy used for node pool update. Strategy can only be one of BLUE_GREEN or SURGE. The default is value is SURGE.
	// +kubebuilder:validation:Optional
	Strategy *string `json:"strategy,omitempty" tf:"strategy,omitempty"`
}

func (*UpgradeSettingsParameters) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new UpgradeSettingsParameters.

func (*UpgradeSettingsParameters) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type VerticalPodAutoscalingObservation

type VerticalPodAutoscalingObservation struct {
}

func (*VerticalPodAutoscalingObservation) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new VerticalPodAutoscalingObservation.

func (*VerticalPodAutoscalingObservation) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type VerticalPodAutoscalingParameters

type VerticalPodAutoscalingParameters struct {

	// Enables vertical pod autoscaling
	// +kubebuilder:validation:Required
	Enabled *bool `json:"enabled" tf:"enabled,omitempty"`
}

func (*VerticalPodAutoscalingParameters) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new VerticalPodAutoscalingParameters.

func (*VerticalPodAutoscalingParameters) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type WorkloadIdentityConfigObservation

type WorkloadIdentityConfigObservation struct {
}

func (*WorkloadIdentityConfigObservation) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WorkloadIdentityConfigObservation.

func (*WorkloadIdentityConfigObservation) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type WorkloadIdentityConfigParameters

type WorkloadIdentityConfigParameters struct {

	// The workload pool to attach all Kubernetes service accounts to.
	// +kubebuilder:validation:Optional
	WorkloadPool *string `json:"workloadPool,omitempty" tf:"workload_pool,omitempty"`
}

func (*WorkloadIdentityConfigParameters) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WorkloadIdentityConfigParameters.

func (*WorkloadIdentityConfigParameters) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type WorkloadMetadataConfigObservation

type WorkloadMetadataConfigObservation struct {
}

func (*WorkloadMetadataConfigObservation) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WorkloadMetadataConfigObservation.

func (*WorkloadMetadataConfigObservation) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type WorkloadMetadataConfigParameters

type WorkloadMetadataConfigParameters struct {

	// How to expose the node metadata to the workload running on the node.
	// Accepted values are:
	// +kubebuilder:validation:Required
	Mode *string `json:"mode" tf:"mode,omitempty"`
}

func (*WorkloadMetadataConfigParameters) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WorkloadMetadataConfigParameters.

func (*WorkloadMetadataConfigParameters) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

Jump to

Keyboard shortcuts

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