v1alpha1

package
v0.5.0 Latest Latest
Warning

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

Go to latest
Published: May 8, 2022 License: Apache-2.0 Imports: 16 Imported by: 0

Documentation

Overview

+groupName=container.google.kubeform.com

Index

Constants

This section is empty.

Variables

View Source
var (
	// TODO: move SchemeBuilder with zz_generated.deepcopy.go to k8s.io/api.
	// localSchemeBuilder and AddToScheme will stay in k8s.io/kubernetes.
	SchemeBuilder runtime.SchemeBuilder

	AddToScheme = localSchemeBuilder.AddToScheme
)
View Source
var SchemeGroupVersion = schema.GroupVersion{Group: container.GroupName, Version: "v1alpha1"}

Functions

func GetDecoder

func GetDecoder() map[string]jsoniter.ValDecoder

func GetEncoder

func GetEncoder() map[string]jsoniter.ValEncoder

func Kind

func Kind(kind string) schema.GroupKind

Kind takes an unqualified kind and returns a Group qualified GroupKind

func Resource

func Resource(resource string) schema.GroupResource

Resource takes an unqualified resource and returns a Group qualified GroupResource

Types

type AnalysisNote

type AnalysisNote struct {
	metav1.TypeMeta   `json:",inline,omitempty"`
	metav1.ObjectMeta `json:"metadata,omitempty"`
	Spec              AnalysisNoteSpec   `json:"spec,omitempty"`
	Status            AnalysisNoteStatus `json:"status,omitempty"`
}

func (*AnalysisNote) DeepCopy

func (in *AnalysisNote) DeepCopy() *AnalysisNote

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

func (*AnalysisNote) DeepCopyInto

func (in *AnalysisNote) DeepCopyInto(out *AnalysisNote)

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

func (*AnalysisNote) DeepCopyObject

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

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

func (*AnalysisNote) SetupWebhookWithManager

func (r *AnalysisNote) SetupWebhookWithManager(mgr ctrl.Manager) error

func (*AnalysisNote) ValidateCreate

func (r *AnalysisNote) ValidateCreate() error

ValidateCreate implements webhook.Validator so a webhook will be registered for the type

func (*AnalysisNote) ValidateDelete

func (r *AnalysisNote) ValidateDelete() error

ValidateDelete implements webhook.Validator so a webhook will be registered for the type

func (*AnalysisNote) ValidateUpdate

func (r *AnalysisNote) ValidateUpdate(old runtime.Object) error

ValidateUpdate implements webhook.Validator so a webhook will be registered for the type

type AnalysisNoteList

type AnalysisNoteList struct {
	metav1.TypeMeta `json:",inline"`
	metav1.ListMeta `json:"metadata,omitempty"`
	// Items is a list of AnalysisNote CRD objects
	Items []AnalysisNote `json:"items,omitempty"`
}

AnalysisNoteList is a list of AnalysisNotes

func (*AnalysisNoteList) DeepCopy

func (in *AnalysisNoteList) DeepCopy() *AnalysisNoteList

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

func (*AnalysisNoteList) DeepCopyInto

func (in *AnalysisNoteList) DeepCopyInto(out *AnalysisNoteList)

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

func (*AnalysisNoteList) DeepCopyObject

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

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

type AnalysisNoteSpec

type AnalysisNoteSpec struct {
	State *AnalysisNoteSpecResource `json:"state,omitempty" tf:"-"`

	Resource AnalysisNoteSpecResource `json:"resource" tf:"resource"`

	UpdatePolicy base.UpdatePolicy `json:"updatePolicy,omitempty" tf:"-"`

	TerminationPolicy base.TerminationPolicy `json:"terminationPolicy,omitempty" tf:"-"`

	ProviderRef core.LocalObjectReference `json:"providerRef" tf:"-"`

	BackendRef *core.LocalObjectReference `json:"backendRef,omitempty" tf:"-"`
}

func (*AnalysisNoteSpec) DeepCopy

func (in *AnalysisNoteSpec) DeepCopy() *AnalysisNoteSpec

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

func (*AnalysisNoteSpec) DeepCopyInto

func (in *AnalysisNoteSpec) DeepCopyInto(out *AnalysisNoteSpec)

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

type AnalysisNoteSpecAttestationAuthority

type AnalysisNoteSpecAttestationAuthority struct {
	// This submessage provides human-readable hints about the purpose of
	// the AttestationAuthority. Because the name of a Note acts as its
	// resource reference, it is important to disambiguate the canonical
	// name of the Note (which might be a UUID for security purposes)
	// from "readable" names more suitable for debug output. Note that
	// these hints should NOT be used to look up AttestationAuthorities
	// in security sensitive contexts, such as when looking up
	// Attestations to verify.
	Hint *AnalysisNoteSpecAttestationAuthorityHint `json:"hint" tf:"hint"`
}

func (*AnalysisNoteSpecAttestationAuthority) DeepCopy

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

func (*AnalysisNoteSpecAttestationAuthority) DeepCopyInto

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

type AnalysisNoteSpecAttestationAuthorityCodec

type AnalysisNoteSpecAttestationAuthorityCodec struct {
}

+k8s:deepcopy-gen=false

func (AnalysisNoteSpecAttestationAuthorityCodec) Decode

func (AnalysisNoteSpecAttestationAuthorityCodec) Encode

func (AnalysisNoteSpecAttestationAuthorityCodec) IsEmpty

type AnalysisNoteSpecAttestationAuthorityHint

type AnalysisNoteSpecAttestationAuthorityHint struct {
	// The human readable name of this Attestation Authority, for
	// example "qa".
	HumanReadableName *string `json:"humanReadableName" tf:"human_readable_name"`
}

func (*AnalysisNoteSpecAttestationAuthorityHint) DeepCopy

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

func (*AnalysisNoteSpecAttestationAuthorityHint) DeepCopyInto

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

type AnalysisNoteSpecAttestationAuthorityHintCodec

type AnalysisNoteSpecAttestationAuthorityHintCodec struct {
}

+k8s:deepcopy-gen=false

func (AnalysisNoteSpecAttestationAuthorityHintCodec) Decode

func (AnalysisNoteSpecAttestationAuthorityHintCodec) Encode

func (AnalysisNoteSpecAttestationAuthorityHintCodec) IsEmpty

type AnalysisNoteSpecRelatedURL

type AnalysisNoteSpecRelatedURL struct {
	// Label to describe usage of the URL
	// +optional
	Label *string `json:"label,omitempty" tf:"label"`
	// Specific URL associated with the resource.
	Url *string `json:"url" tf:"url"`
}

func (*AnalysisNoteSpecRelatedURL) DeepCopy

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

func (*AnalysisNoteSpecRelatedURL) DeepCopyInto

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

type AnalysisNoteSpecResource

type AnalysisNoteSpecResource struct {
	Timeouts *base.ResourceTimeout `json:"timeouts,omitempty" tf:"timeouts"`

	ID string `json:"id,omitempty" tf:"id,omitempty"`

	// Note kind that represents a logical attestation "role" or "authority".
	// For example, an organization might have one AttestationAuthority for
	// "QA" and one for "build". This Note is intended to act strictly as a
	// grouping mechanism for the attached Occurrences (Attestations). This
	// grouping mechanism also provides a security boundary, since IAM ACLs
	// gate the ability for a principle to attach an Occurrence to a given
	// Note. It also provides a single point of lookup to find all attached
	// Attestation Occurrences, even if they don't all live in the same
	// project.
	AttestationAuthority *AnalysisNoteSpecAttestationAuthority `json:"attestationAuthority" tf:"attestation_authority"`
	// The time this note was created.
	// +optional
	CreateTime *string `json:"createTime,omitempty" tf:"create_time"`
	// Time of expiration for this note. Leave empty if note does not expire.
	// +optional
	ExpirationTime *string `json:"expirationTime,omitempty" tf:"expiration_time"`
	// The type of analysis this note describes
	// +optional
	Kind *string `json:"kind,omitempty" tf:"kind"`
	// A detailed description of the note
	// +optional
	LongDescription *string `json:"longDescription,omitempty" tf:"long_description"`
	// The name of the note.
	Name *string `json:"name" tf:"name"`
	// +optional
	Project *string `json:"project,omitempty" tf:"project"`
	// Names of other notes related to this note.
	// +optional
	RelatedNoteNames []string `json:"relatedNoteNames,omitempty" tf:"related_note_names"`
	// URLs associated with this note and related metadata.
	// +optional
	RelatedURL []AnalysisNoteSpecRelatedURL `json:"relatedURL,omitempty" tf:"related_url"`
	// A one sentence description of the note.
	// +optional
	ShortDescription *string `json:"shortDescription,omitempty" tf:"short_description"`
	// The time this note was last updated.
	// +optional
	UpdateTime *string `json:"updateTime,omitempty" tf:"update_time"`
}

func (*AnalysisNoteSpecResource) DeepCopy

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

func (*AnalysisNoteSpecResource) DeepCopyInto

func (in *AnalysisNoteSpecResource) DeepCopyInto(out *AnalysisNoteSpecResource)

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

type AnalysisNoteStatus

type AnalysisNoteStatus struct {
	// Resource generation, which is updated on mutation by the API Server.
	// +optional
	ObservedGeneration int64 `json:"observedGeneration,omitempty"`
	// +optional
	Phase status.Status `json:"phase,omitempty"`
	// +optional
	Conditions []kmapi.Condition `json:"conditions,omitempty"`
}

func (*AnalysisNoteStatus) DeepCopy

func (in *AnalysisNoteStatus) DeepCopy() *AnalysisNoteStatus

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

func (*AnalysisNoteStatus) DeepCopyInto

func (in *AnalysisNoteStatus) DeepCopyInto(out *AnalysisNoteStatus)

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

type AnalysisOccurrence

type AnalysisOccurrence struct {
	metav1.TypeMeta   `json:",inline,omitempty"`
	metav1.ObjectMeta `json:"metadata,omitempty"`
	Spec              AnalysisOccurrenceSpec   `json:"spec,omitempty"`
	Status            AnalysisOccurrenceStatus `json:"status,omitempty"`
}

func (*AnalysisOccurrence) DeepCopy

func (in *AnalysisOccurrence) DeepCopy() *AnalysisOccurrence

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

func (*AnalysisOccurrence) DeepCopyInto

func (in *AnalysisOccurrence) DeepCopyInto(out *AnalysisOccurrence)

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

func (*AnalysisOccurrence) DeepCopyObject

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

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

func (*AnalysisOccurrence) SetupWebhookWithManager

func (r *AnalysisOccurrence) SetupWebhookWithManager(mgr ctrl.Manager) error

func (*AnalysisOccurrence) ValidateCreate

func (r *AnalysisOccurrence) ValidateCreate() error

ValidateCreate implements webhook.Validator so a webhook will be registered for the type

func (*AnalysisOccurrence) ValidateDelete

func (r *AnalysisOccurrence) ValidateDelete() error

ValidateDelete implements webhook.Validator so a webhook will be registered for the type

func (*AnalysisOccurrence) ValidateUpdate

func (r *AnalysisOccurrence) ValidateUpdate(old runtime.Object) error

ValidateUpdate implements webhook.Validator so a webhook will be registered for the type

type AnalysisOccurrenceList

type AnalysisOccurrenceList struct {
	metav1.TypeMeta `json:",inline"`
	metav1.ListMeta `json:"metadata,omitempty"`
	// Items is a list of AnalysisOccurrence CRD objects
	Items []AnalysisOccurrence `json:"items,omitempty"`
}

AnalysisOccurrenceList is a list of AnalysisOccurrences

func (*AnalysisOccurrenceList) DeepCopy

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

func (*AnalysisOccurrenceList) DeepCopyInto

func (in *AnalysisOccurrenceList) DeepCopyInto(out *AnalysisOccurrenceList)

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

func (*AnalysisOccurrenceList) DeepCopyObject

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

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

type AnalysisOccurrenceSpec

type AnalysisOccurrenceSpec struct {
	State *AnalysisOccurrenceSpecResource `json:"state,omitempty" tf:"-"`

	Resource AnalysisOccurrenceSpecResource `json:"resource" tf:"resource"`

	UpdatePolicy base.UpdatePolicy `json:"updatePolicy,omitempty" tf:"-"`

	TerminationPolicy base.TerminationPolicy `json:"terminationPolicy,omitempty" tf:"-"`

	ProviderRef core.LocalObjectReference `json:"providerRef" tf:"-"`

	BackendRef *core.LocalObjectReference `json:"backendRef,omitempty" tf:"-"`
}

func (*AnalysisOccurrenceSpec) DeepCopy

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

func (*AnalysisOccurrenceSpec) DeepCopyInto

func (in *AnalysisOccurrenceSpec) DeepCopyInto(out *AnalysisOccurrenceSpec)

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

type AnalysisOccurrenceSpecAttestation

type AnalysisOccurrenceSpecAttestation struct {
	// The serialized payload that is verified by one or
	// more signatures. A base64-encoded string.
	SerializedPayload *string `json:"serializedPayload" tf:"serialized_payload"`
	// One or more signatures over serializedPayload.
	// Verifier implementations should consider this attestation
	// message verified if at least one signature verifies
	// serializedPayload. See Signature in common.proto for more
	// details on signature structure and verification.
	Signatures []AnalysisOccurrenceSpecAttestationSignatures `json:"signatures" tf:"signatures"`
}

func (*AnalysisOccurrenceSpecAttestation) DeepCopy

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

func (*AnalysisOccurrenceSpecAttestation) DeepCopyInto

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

type AnalysisOccurrenceSpecAttestationCodec

type AnalysisOccurrenceSpecAttestationCodec struct {
}

+k8s:deepcopy-gen=false

func (AnalysisOccurrenceSpecAttestationCodec) Decode

func (AnalysisOccurrenceSpecAttestationCodec) Encode

func (AnalysisOccurrenceSpecAttestationCodec) IsEmpty

type AnalysisOccurrenceSpecAttestationSignatures

type AnalysisOccurrenceSpecAttestationSignatures struct {
	// The identifier for the public key that verifies this
	// signature. MUST be an RFC3986 conformant
	// URI. * When possible, the key id should be an
	// immutable reference, such as a cryptographic digest.
	// Examples of valid values:
	//
	// * OpenPGP V4 public key fingerprint. See https://www.iana.org/assignments/uri-schemes/prov/openpgp4fpr
	//   for more details on this scheme.
	//     * 'openpgp4fpr:74FAF3B861BDA0870C7B6DEF607E48D2A663AEEA'
	// * RFC6920 digest-named SubjectPublicKeyInfo (digest of the DER serialization):
	//     * "ni:///sha-256;cD9o9Cq6LG3jD0iKXqEi_vdjJGecm_iXkbqVoScViaU"
	PublicKeyID *string `json:"publicKeyID" tf:"public_key_id"`
	// The content of the signature, an opaque bytestring.
	// The payload that this signature verifies MUST be
	// unambiguously provided with the Signature during
	// verification. A wrapper message might provide the
	// payload explicitly. Alternatively, a message might
	// have a canonical serialization that can always be
	// unambiguously computed to derive the payload.
	// +optional
	Signature *string `json:"signature,omitempty" tf:"signature"`
}

func (*AnalysisOccurrenceSpecAttestationSignatures) DeepCopy

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

func (*AnalysisOccurrenceSpecAttestationSignatures) DeepCopyInto

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

type AnalysisOccurrenceSpecResource

type AnalysisOccurrenceSpecResource struct {
	Timeouts *base.ResourceTimeout `json:"timeouts,omitempty" tf:"timeouts"`

	ID string `json:"id,omitempty" tf:"id,omitempty"`

	// Occurrence that represents a single "attestation". The authenticity
	// of an attestation can be verified using the attached signature.
	// If the verifier trusts the public key of the signer, then verifying
	// the signature is sufficient to establish trust. In this circumstance,
	// the authority to which this attestation is attached is primarily
	// useful for lookup (how to find this attestation if you already
	// know the authority and artifact to be verified) and intent (for
	// which authority this attestation was intended to sign.
	Attestation *AnalysisOccurrenceSpecAttestation `json:"attestation" tf:"attestation"`
	// The time when the repository was created.
	// +optional
	CreateTime *string `json:"createTime,omitempty" tf:"create_time"`
	// The note kind which explicitly denotes which of the occurrence
	// details are specified. This field can be used as a filter in list
	// requests.
	// +optional
	Kind *string `json:"kind,omitempty" tf:"kind"`
	// The name of the occurrence.
	// +optional
	Name *string `json:"name,omitempty" tf:"name"`
	// The analysis note associated with this occurrence, in the form of
	// projects/[PROJECT]/notes/[NOTE_ID]. This field can be used as a
	// filter in list requests.
	NoteName *string `json:"noteName" tf:"note_name"`
	// +optional
	Project *string `json:"project,omitempty" tf:"project"`
	// A description of actions that can be taken to remedy the note.
	// +optional
	Remediation *string `json:"remediation,omitempty" tf:"remediation"`
	// Required. Immutable. A URI that represents the resource for which
	// the occurrence applies. For example,
	// https://gcr.io/project/image@sha256:123abc for a Docker image.
	ResourceURI *string `json:"resourceURI" tf:"resource_uri"`
	// The time when the repository was last updated.
	// +optional
	UpdateTime *string `json:"updateTime,omitempty" tf:"update_time"`
}

func (*AnalysisOccurrenceSpecResource) DeepCopy

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

func (*AnalysisOccurrenceSpecResource) DeepCopyInto

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

type AnalysisOccurrenceStatus

type AnalysisOccurrenceStatus struct {
	// Resource generation, which is updated on mutation by the API Server.
	// +optional
	ObservedGeneration int64 `json:"observedGeneration,omitempty"`
	// +optional
	Phase status.Status `json:"phase,omitempty"`
	// +optional
	Conditions []kmapi.Condition `json:"conditions,omitempty"`
}

func (*AnalysisOccurrenceStatus) DeepCopy

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

func (*AnalysisOccurrenceStatus) DeepCopyInto

func (in *AnalysisOccurrenceStatus) DeepCopyInto(out *AnalysisOccurrenceStatus)

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

type AwsCluster added in v0.5.0

type AwsCluster struct {
	metav1.TypeMeta   `json:",inline,omitempty"`
	metav1.ObjectMeta `json:"metadata,omitempty"`
	Spec              AwsClusterSpec   `json:"spec,omitempty"`
	Status            AwsClusterStatus `json:"status,omitempty"`
}

func (*AwsCluster) DeepCopy added in v0.5.0

func (in *AwsCluster) DeepCopy() *AwsCluster

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

func (*AwsCluster) DeepCopyInto added in v0.5.0

func (in *AwsCluster) DeepCopyInto(out *AwsCluster)

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

func (*AwsCluster) DeepCopyObject added in v0.5.0

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

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

func (*AwsCluster) SetupWebhookWithManager added in v0.5.0

func (r *AwsCluster) SetupWebhookWithManager(mgr ctrl.Manager) error

func (*AwsCluster) ValidateCreate added in v0.5.0

func (r *AwsCluster) ValidateCreate() error

ValidateCreate implements webhook.Validator so a webhook will be registered for the type

func (*AwsCluster) ValidateDelete added in v0.5.0

func (r *AwsCluster) ValidateDelete() error

ValidateDelete implements webhook.Validator so a webhook will be registered for the type

func (*AwsCluster) ValidateUpdate added in v0.5.0

func (r *AwsCluster) ValidateUpdate(old runtime.Object) error

ValidateUpdate implements webhook.Validator so a webhook will be registered for the type

type AwsClusterList added in v0.5.0

type AwsClusterList struct {
	metav1.TypeMeta `json:",inline"`
	metav1.ListMeta `json:"metadata,omitempty"`
	// Items is a list of AwsCluster CRD objects
	Items []AwsCluster `json:"items,omitempty"`
}

AwsClusterList is a list of AwsClusters

func (*AwsClusterList) DeepCopy added in v0.5.0

func (in *AwsClusterList) DeepCopy() *AwsClusterList

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

func (*AwsClusterList) DeepCopyInto added in v0.5.0

func (in *AwsClusterList) DeepCopyInto(out *AwsClusterList)

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

func (*AwsClusterList) DeepCopyObject added in v0.5.0

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

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

type AwsClusterSpec added in v0.5.0

type AwsClusterSpec struct {
	State *AwsClusterSpecResource `json:"state,omitempty" tf:"-"`

	Resource AwsClusterSpecResource `json:"resource" tf:"resource"`

	UpdatePolicy base.UpdatePolicy `json:"updatePolicy,omitempty" tf:"-"`

	TerminationPolicy base.TerminationPolicy `json:"terminationPolicy,omitempty" tf:"-"`

	ProviderRef core.LocalObjectReference `json:"providerRef" tf:"-"`

	BackendRef *core.LocalObjectReference `json:"backendRef,omitempty" tf:"-"`
}

func (*AwsClusterSpec) DeepCopy added in v0.5.0

func (in *AwsClusterSpec) DeepCopy() *AwsClusterSpec

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

func (*AwsClusterSpec) DeepCopyInto added in v0.5.0

func (in *AwsClusterSpec) DeepCopyInto(out *AwsClusterSpec)

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

type AwsClusterSpecAuthorization added in v0.5.0

type AwsClusterSpecAuthorization struct {
	// Required. Users to perform operations as a cluster admin. A managed ClusterRoleBinding will be created to grant the `cluster-admin` ClusterRole to the users. At most one user can be specified. For more info on RBAC, see https://kubernetes.io/docs/reference/access-authn-authz/rbac/#user-facing-roles
	AdminUsers []AwsClusterSpecAuthorizationAdminUsers `json:"adminUsers" tf:"admin_users"`
}

func (*AwsClusterSpecAuthorization) DeepCopy added in v0.5.0

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

func (*AwsClusterSpecAuthorization) DeepCopyInto added in v0.5.0

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

type AwsClusterSpecAuthorizationAdminUsers added in v0.5.0

type AwsClusterSpecAuthorizationAdminUsers struct {
	// Required. The name of the user, e.g. `my-gcp-id@gmail.com`.
	Username *string `json:"username" tf:"username"`
}

func (*AwsClusterSpecAuthorizationAdminUsers) DeepCopy added in v0.5.0

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

func (*AwsClusterSpecAuthorizationAdminUsers) DeepCopyInto added in v0.5.0

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

type AwsClusterSpecAuthorizationCodec added in v0.5.0

type AwsClusterSpecAuthorizationCodec struct {
}

+k8s:deepcopy-gen=false

func (AwsClusterSpecAuthorizationCodec) Decode added in v0.5.0

func (AwsClusterSpecAuthorizationCodec) Encode added in v0.5.0

func (AwsClusterSpecAuthorizationCodec) IsEmpty added in v0.5.0

type AwsClusterSpecControlPlane added in v0.5.0

type AwsClusterSpecControlPlane struct {
	// Required. Authentication configuration for management of AWS resources.
	AwsServicesAuthentication *AwsClusterSpecControlPlaneAwsServicesAuthentication `json:"awsServicesAuthentication" tf:"aws_services_authentication"`
	// Required. The ARN of the AWS KMS key used to encrypt cluster configuration.
	ConfigEncryption *AwsClusterSpecControlPlaneConfigEncryption `json:"configEncryption" tf:"config_encryption"`
	// Required. The ARN of the AWS KMS key used to encrypt cluster secrets.
	DatabaseEncryption *AwsClusterSpecControlPlaneDatabaseEncryption `json:"databaseEncryption" tf:"database_encryption"`
	// Required. The name of the AWS IAM instance pofile to assign to each control plane replica.
	IamInstanceProfile *string `json:"iamInstanceProfile" tf:"iam_instance_profile"`
	// Optional. The AWS instance type. When unspecified, it defaults to `t3.medium`.
	// +optional
	InstanceType *string `json:"instanceType,omitempty" tf:"instance_type"`
	// Optional. Configuration related to the main volume provisioned for each control plane replica. The main volume is in charge of storing all of the cluster's etcd state. Volumes will be provisioned in the availability zone associated with the corresponding subnet. When unspecified, it defaults to 8 GiB with the GP2 volume type.
	// +optional
	MainVolume *AwsClusterSpecControlPlaneMainVolume `json:"mainVolume,omitempty" tf:"main_volume"`
	// Proxy configuration for outbound HTTP(S) traffic.
	// +optional
	ProxyConfig *AwsClusterSpecControlPlaneProxyConfig `json:"proxyConfig,omitempty" tf:"proxy_config"`
	// Optional. Configuration related to the root volume provisioned for each control plane replica. Volumes will be provisioned in the availability zone associated with the corresponding subnet. When unspecified, it defaults to 32 GiB with the GP2 volume type.
	// +optional
	RootVolume *AwsClusterSpecControlPlaneRootVolume `json:"rootVolume,omitempty" tf:"root_volume"`
	// Optional. The IDs of additional security groups to add to control plane replicas. The Anthos Multi-Cloud API will automatically create and manage security groups with the minimum rules needed for a functioning cluster.
	// +optional
	SecurityGroupIDS []string `json:"securityGroupIDS,omitempty" tf:"security_group_ids"`
	// Optional. SSH configuration for how to access the underlying control plane machines.
	// +optional
	SshConfig *AwsClusterSpecControlPlaneSshConfig `json:"sshConfig,omitempty" tf:"ssh_config"`
	// Required. The list of subnets where control plane replicas will run. A replica will be provisioned on each subnet and up to three values can be provided. Each subnet must be in a different AWS Availability Zone (AZ).
	SubnetIDS []string `json:"subnetIDS" tf:"subnet_ids"`
	// Optional. A set of AWS resource tags to propagate to all underlying managed AWS resources. Specify at most 50 pairs containing alphanumerics, spaces, and symbols (.+-=_:@/). Keys can be up to 127 Unicode characters. Values can be up to 255 Unicode characters.
	// +optional
	Tags *map[string]string `json:"tags,omitempty" tf:"tags"`
	// Required. The Kubernetes version to run on control plane replicas (e.g. `1.19.10-gke.1000`). You can list all supported versions on a given Google Cloud region by calling .
	Version *string `json:"version" tf:"version"`
}

func (*AwsClusterSpecControlPlane) DeepCopy added in v0.5.0

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

func (*AwsClusterSpecControlPlane) DeepCopyInto added in v0.5.0

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

type AwsClusterSpecControlPlaneAwsServicesAuthentication added in v0.5.0

type AwsClusterSpecControlPlaneAwsServicesAuthentication struct {
	// Required. The Amazon Resource Name (ARN) of the role that the Anthos Multi-Cloud API will assume when managing AWS resources on your account.
	RoleArn *string `json:"roleArn" tf:"role_arn"`
	// Optional. An identifier for the assumed role session. When unspecified, it defaults to `multicloud-service-agent`.
	// +optional
	RoleSessionName *string `json:"roleSessionName,omitempty" tf:"role_session_name"`
}

func (*AwsClusterSpecControlPlaneAwsServicesAuthentication) DeepCopy added in v0.5.0

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

func (*AwsClusterSpecControlPlaneAwsServicesAuthentication) DeepCopyInto added in v0.5.0

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

type AwsClusterSpecControlPlaneAwsServicesAuthenticationCodec added in v0.5.0

type AwsClusterSpecControlPlaneAwsServicesAuthenticationCodec struct {
}

+k8s:deepcopy-gen=false

func (AwsClusterSpecControlPlaneAwsServicesAuthenticationCodec) Decode added in v0.5.0

func (AwsClusterSpecControlPlaneAwsServicesAuthenticationCodec) Encode added in v0.5.0

func (AwsClusterSpecControlPlaneAwsServicesAuthenticationCodec) IsEmpty added in v0.5.0

type AwsClusterSpecControlPlaneCodec added in v0.5.0

type AwsClusterSpecControlPlaneCodec struct {
}

+k8s:deepcopy-gen=false

func (AwsClusterSpecControlPlaneCodec) Decode added in v0.5.0

func (AwsClusterSpecControlPlaneCodec) Encode added in v0.5.0

func (AwsClusterSpecControlPlaneCodec) IsEmpty added in v0.5.0

type AwsClusterSpecControlPlaneConfigEncryption added in v0.5.0

type AwsClusterSpecControlPlaneConfigEncryption struct {
	// Required. The ARN of the AWS KMS key used to encrypt cluster configuration.
	KmsKeyArn *string `json:"kmsKeyArn" tf:"kms_key_arn"`
}

func (*AwsClusterSpecControlPlaneConfigEncryption) DeepCopy added in v0.5.0

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

func (*AwsClusterSpecControlPlaneConfigEncryption) DeepCopyInto added in v0.5.0

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

type AwsClusterSpecControlPlaneConfigEncryptionCodec added in v0.5.0

type AwsClusterSpecControlPlaneConfigEncryptionCodec struct {
}

+k8s:deepcopy-gen=false

func (AwsClusterSpecControlPlaneConfigEncryptionCodec) Decode added in v0.5.0

func (AwsClusterSpecControlPlaneConfigEncryptionCodec) Encode added in v0.5.0

func (AwsClusterSpecControlPlaneConfigEncryptionCodec) IsEmpty added in v0.5.0

type AwsClusterSpecControlPlaneDatabaseEncryption added in v0.5.0

type AwsClusterSpecControlPlaneDatabaseEncryption struct {
	// Required. The ARN of the AWS KMS key used to encrypt cluster secrets.
	KmsKeyArn *string `json:"kmsKeyArn" tf:"kms_key_arn"`
}

func (*AwsClusterSpecControlPlaneDatabaseEncryption) DeepCopy added in v0.5.0

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

func (*AwsClusterSpecControlPlaneDatabaseEncryption) DeepCopyInto added in v0.5.0

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

type AwsClusterSpecControlPlaneDatabaseEncryptionCodec added in v0.5.0

type AwsClusterSpecControlPlaneDatabaseEncryptionCodec struct {
}

+k8s:deepcopy-gen=false

func (AwsClusterSpecControlPlaneDatabaseEncryptionCodec) Decode added in v0.5.0

func (AwsClusterSpecControlPlaneDatabaseEncryptionCodec) Encode added in v0.5.0

func (AwsClusterSpecControlPlaneDatabaseEncryptionCodec) IsEmpty added in v0.5.0

type AwsClusterSpecControlPlaneMainVolume added in v0.5.0

type AwsClusterSpecControlPlaneMainVolume struct {
	// Optional. The number of I/O operations per second (IOPS) to provision for GP3 volume.
	// +optional
	Iops *int64 `json:"iops,omitempty" tf:"iops"`
	// Optional. The Amazon Resource Name (ARN) of the Customer Managed Key (CMK) used to encrypt AWS EBS volumes. If not specified, the default Amazon managed key associated to the AWS region where this cluster runs will be used.
	// +optional
	KmsKeyArn *string `json:"kmsKeyArn,omitempty" tf:"kms_key_arn"`
	// Optional. The size of the volume, in GiBs. When unspecified, a default value is provided. See the specific reference in the parent resource.
	// +optional
	SizeGib *int64 `json:"sizeGib,omitempty" tf:"size_gib"`
	// Optional. Type of the EBS volume. When unspecified, it defaults to GP2 volume. Possible values: VOLUME_TYPE_UNSPECIFIED, GP2, GP3
	// +optional
	VolumeType *string `json:"volumeType,omitempty" tf:"volume_type"`
}

func (*AwsClusterSpecControlPlaneMainVolume) DeepCopy added in v0.5.0

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

func (*AwsClusterSpecControlPlaneMainVolume) DeepCopyInto added in v0.5.0

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

type AwsClusterSpecControlPlaneMainVolumeCodec added in v0.5.0

type AwsClusterSpecControlPlaneMainVolumeCodec struct {
}

+k8s:deepcopy-gen=false

func (AwsClusterSpecControlPlaneMainVolumeCodec) Decode added in v0.5.0

func (AwsClusterSpecControlPlaneMainVolumeCodec) Encode added in v0.5.0

func (AwsClusterSpecControlPlaneMainVolumeCodec) IsEmpty added in v0.5.0

type AwsClusterSpecControlPlaneProxyConfig added in v0.5.0

type AwsClusterSpecControlPlaneProxyConfig struct {
	// The ARN of the AWS Secret Manager secret that contains the HTTP(S) proxy configuration.
	SecretArn *string `json:"secretArn" tf:"secret_arn"`
	// The version string of the AWS Secret Manager secret that contains the HTTP(S) proxy configuration.
	SecretVersion *string `json:"secretVersion" tf:"secret_version"`
}

func (*AwsClusterSpecControlPlaneProxyConfig) DeepCopy added in v0.5.0

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

func (*AwsClusterSpecControlPlaneProxyConfig) DeepCopyInto added in v0.5.0

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

type AwsClusterSpecControlPlaneProxyConfigCodec added in v0.5.0

type AwsClusterSpecControlPlaneProxyConfigCodec struct {
}

+k8s:deepcopy-gen=false

func (AwsClusterSpecControlPlaneProxyConfigCodec) Decode added in v0.5.0

func (AwsClusterSpecControlPlaneProxyConfigCodec) Encode added in v0.5.0

func (AwsClusterSpecControlPlaneProxyConfigCodec) IsEmpty added in v0.5.0

type AwsClusterSpecControlPlaneRootVolume added in v0.5.0

type AwsClusterSpecControlPlaneRootVolume struct {
	// Optional. The number of I/O operations per second (IOPS) to provision for GP3 volume.
	// +optional
	Iops *int64 `json:"iops,omitempty" tf:"iops"`
	// Optional. The Amazon Resource Name (ARN) of the Customer Managed Key (CMK) used to encrypt AWS EBS volumes. If not specified, the default Amazon managed key associated to the AWS region where this cluster runs will be used.
	// +optional
	KmsKeyArn *string `json:"kmsKeyArn,omitempty" tf:"kms_key_arn"`
	// Optional. The size of the volume, in GiBs. When unspecified, a default value is provided. See the specific reference in the parent resource.
	// +optional
	SizeGib *int64 `json:"sizeGib,omitempty" tf:"size_gib"`
	// Optional. Type of the EBS volume. When unspecified, it defaults to GP2 volume. Possible values: VOLUME_TYPE_UNSPECIFIED, GP2, GP3
	// +optional
	VolumeType *string `json:"volumeType,omitempty" tf:"volume_type"`
}

func (*AwsClusterSpecControlPlaneRootVolume) DeepCopy added in v0.5.0

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

func (*AwsClusterSpecControlPlaneRootVolume) DeepCopyInto added in v0.5.0

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

type AwsClusterSpecControlPlaneRootVolumeCodec added in v0.5.0

type AwsClusterSpecControlPlaneRootVolumeCodec struct {
}

+k8s:deepcopy-gen=false

func (AwsClusterSpecControlPlaneRootVolumeCodec) Decode added in v0.5.0

func (AwsClusterSpecControlPlaneRootVolumeCodec) Encode added in v0.5.0

func (AwsClusterSpecControlPlaneRootVolumeCodec) IsEmpty added in v0.5.0

type AwsClusterSpecControlPlaneSshConfig added in v0.5.0

type AwsClusterSpecControlPlaneSshConfig struct {
	// Required. The name of the EC2 key pair used to login into cluster machines.
	Ec2KeyPair *string `json:"ec2KeyPair" tf:"ec2_key_pair"`
}

func (*AwsClusterSpecControlPlaneSshConfig) DeepCopy added in v0.5.0

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

func (*AwsClusterSpecControlPlaneSshConfig) DeepCopyInto added in v0.5.0

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

type AwsClusterSpecControlPlaneSshConfigCodec added in v0.5.0

type AwsClusterSpecControlPlaneSshConfigCodec struct {
}

+k8s:deepcopy-gen=false

func (AwsClusterSpecControlPlaneSshConfigCodec) Decode added in v0.5.0

func (AwsClusterSpecControlPlaneSshConfigCodec) Encode added in v0.5.0

func (AwsClusterSpecControlPlaneSshConfigCodec) IsEmpty added in v0.5.0

type AwsClusterSpecFleet added in v0.5.0

type AwsClusterSpecFleet struct {
	// The name of the managed Hub Membership resource associated to this cluster. Membership names are formatted as projects/<project-number>/locations/global/membership/<cluster-id>.
	// +optional
	Membership *string `json:"membership,omitempty" tf:"membership"`
	// The number of the Fleet host project where this cluster will be registered.
	// +optional
	Project *string `json:"project,omitempty" tf:"project"`
}

func (*AwsClusterSpecFleet) DeepCopy added in v0.5.0

func (in *AwsClusterSpecFleet) DeepCopy() *AwsClusterSpecFleet

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

func (*AwsClusterSpecFleet) DeepCopyInto added in v0.5.0

func (in *AwsClusterSpecFleet) DeepCopyInto(out *AwsClusterSpecFleet)

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

type AwsClusterSpecFleetCodec added in v0.5.0

type AwsClusterSpecFleetCodec struct {
}

+k8s:deepcopy-gen=false

func (AwsClusterSpecFleetCodec) Decode added in v0.5.0

func (AwsClusterSpecFleetCodec) Encode added in v0.5.0

func (AwsClusterSpecFleetCodec) Encode(ptr unsafe.Pointer, stream *jsoniter.Stream)

func (AwsClusterSpecFleetCodec) IsEmpty added in v0.5.0

type AwsClusterSpecNetworking added in v0.5.0

type AwsClusterSpecNetworking struct {
	// Required. All pods in the cluster are assigned an RFC1918 IPv4 address from these ranges. Only a single range is supported. This field cannot be changed after creation.
	PodAddressCIDRBlocks []string `json:"podAddressCIDRBlocks" tf:"pod_address_cidr_blocks"`
	// Required. All services in the cluster are assigned an RFC1918 IPv4 address from these ranges. Only a single range is supported. This field cannot be changed after creation.
	ServiceAddressCIDRBlocks []string `json:"serviceAddressCIDRBlocks" tf:"service_address_cidr_blocks"`
	// Required. The VPC associated with the cluster. All component clusters (i.e. control plane and node pools) run on a single VPC. This field cannot be changed after creation.
	VpcID *string `json:"vpcID" tf:"vpc_id"`
}

func (*AwsClusterSpecNetworking) DeepCopy added in v0.5.0

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

func (*AwsClusterSpecNetworking) DeepCopyInto added in v0.5.0

func (in *AwsClusterSpecNetworking) DeepCopyInto(out *AwsClusterSpecNetworking)

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

type AwsClusterSpecNetworkingCodec added in v0.5.0

type AwsClusterSpecNetworkingCodec struct {
}

+k8s:deepcopy-gen=false

func (AwsClusterSpecNetworkingCodec) Decode added in v0.5.0

func (AwsClusterSpecNetworkingCodec) Encode added in v0.5.0

func (AwsClusterSpecNetworkingCodec) IsEmpty added in v0.5.0

type AwsClusterSpecResource added in v0.5.0

type AwsClusterSpecResource struct {
	Timeouts *base.ResourceTimeout `json:"timeouts,omitempty" tf:"timeouts"`

	ID string `json:"id,omitempty" tf:"id,omitempty"`

	// Optional. Annotations on the cluster. This field has the same restrictions as Kubernetes annotations. The total size of all keys and values combined is limited to 256k. Key can have 2 segments: prefix (optional) and name (required), separated by a slash (/). Prefix must be a DNS subdomain. Name must be 63 characters or less, begin and end with alphanumerics, with dashes (-), underscores (_), dots (.), and alphanumerics between.
	// +optional
	Annotations *map[string]string `json:"annotations,omitempty" tf:"annotations"`
	// Required. Configuration related to the cluster RBAC settings.
	Authorization *AwsClusterSpecAuthorization `json:"authorization" tf:"authorization"`
	// Required. The AWS region where the cluster runs. Each Google Cloud region supports a subset of nearby AWS regions. You can call to list all supported AWS regions within a given Google Cloud region.
	AwsRegion *string `json:"awsRegion" tf:"aws_region"`
	// Required. Configuration related to the cluster control plane.
	ControlPlane *AwsClusterSpecControlPlane `json:"controlPlane" tf:"control_plane"`
	// Output only. The time at which this cluster was created.
	// +optional
	CreateTime *string `json:"createTime,omitempty" tf:"create_time"`
	// Optional. A human readable description of this cluster. Cannot be longer than 255 UTF-8 encoded bytes.
	// +optional
	Description *string `json:"description,omitempty" tf:"description"`
	// Output only. The endpoint of the cluster's API server.
	// +optional
	Endpoint *string `json:"endpoint,omitempty" tf:"endpoint"`
	// Allows clients to perform consistent read-modify-writes through optimistic concurrency control. May be sent on update and delete requests to ensure the client has an up-to-date value before proceeding.
	// +optional
	Etag *string `json:"etag,omitempty" tf:"etag"`
	// Fleet configuration.
	Fleet *AwsClusterSpecFleet `json:"fleet" tf:"fleet"`
	// The location for the resource
	Location *string `json:"location" tf:"location"`
	// The name of this resource.
	Name *string `json:"name" tf:"name"`
	// Required. Cluster-wide networking configuration.
	Networking *AwsClusterSpecNetworking `json:"networking" tf:"networking"`
	// The project for the resource
	// +optional
	Project *string `json:"project,omitempty" tf:"project"`
	// Output only. If set, there are currently changes in flight to the cluster.
	// +optional
	Reconciling *bool `json:"reconciling,omitempty" tf:"reconciling"`
	// Output only. The current state of the cluster. Possible values: STATE_UNSPECIFIED, PROVISIONING, RUNNING, RECONCILING, STOPPING, ERROR, DEGRADED
	// +optional
	State *string `json:"state,omitempty" tf:"state"`
	// Output only. A globally unique identifier for the cluster.
	// +optional
	Uid *string `json:"uid,omitempty" tf:"uid"`
	// Output only. The time at which this cluster was last updated.
	// +optional
	UpdateTime *string `json:"updateTime,omitempty" tf:"update_time"`
	// Output only. Workload Identity settings.
	// +optional
	WorkloadIdentityConfig []AwsClusterSpecWorkloadIdentityConfig `json:"workloadIdentityConfig,omitempty" tf:"workload_identity_config"`
}

func (*AwsClusterSpecResource) DeepCopy added in v0.5.0

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

func (*AwsClusterSpecResource) DeepCopyInto added in v0.5.0

func (in *AwsClusterSpecResource) DeepCopyInto(out *AwsClusterSpecResource)

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

type AwsClusterSpecWorkloadIdentityConfig added in v0.5.0

type AwsClusterSpecWorkloadIdentityConfig struct {
	// The ID of the OIDC Identity Provider (IdP) associated to the Workload Identity Pool.
	// +optional
	IdentityProvider *string `json:"identityProvider,omitempty" tf:"identity_provider"`
	// The OIDC issuer URL for this cluster.
	// +optional
	IssuerURI *string `json:"issuerURI,omitempty" tf:"issuer_uri"`
	// The Workload Identity Pool associated to the cluster.
	// +optional
	WorkloadPool *string `json:"workloadPool,omitempty" tf:"workload_pool"`
}

func (*AwsClusterSpecWorkloadIdentityConfig) DeepCopy added in v0.5.0

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

func (*AwsClusterSpecWorkloadIdentityConfig) DeepCopyInto added in v0.5.0

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

type AwsClusterStatus added in v0.5.0

type AwsClusterStatus struct {
	// Resource generation, which is updated on mutation by the API Server.
	// +optional
	ObservedGeneration int64 `json:"observedGeneration,omitempty"`
	// +optional
	Phase status.Status `json:"phase,omitempty"`
	// +optional
	Conditions []kmapi.Condition `json:"conditions,omitempty"`
}

func (*AwsClusterStatus) DeepCopy added in v0.5.0

func (in *AwsClusterStatus) DeepCopy() *AwsClusterStatus

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

func (*AwsClusterStatus) DeepCopyInto added in v0.5.0

func (in *AwsClusterStatus) DeepCopyInto(out *AwsClusterStatus)

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

type AwsNodePool added in v0.5.0

type AwsNodePool struct {
	metav1.TypeMeta   `json:",inline,omitempty"`
	metav1.ObjectMeta `json:"metadata,omitempty"`
	Spec              AwsNodePoolSpec   `json:"spec,omitempty"`
	Status            AwsNodePoolStatus `json:"status,omitempty"`
}

func (*AwsNodePool) DeepCopy added in v0.5.0

func (in *AwsNodePool) DeepCopy() *AwsNodePool

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

func (*AwsNodePool) DeepCopyInto added in v0.5.0

func (in *AwsNodePool) DeepCopyInto(out *AwsNodePool)

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

func (*AwsNodePool) DeepCopyObject added in v0.5.0

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

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

func (*AwsNodePool) SetupWebhookWithManager added in v0.5.0

func (r *AwsNodePool) SetupWebhookWithManager(mgr ctrl.Manager) error

func (*AwsNodePool) ValidateCreate added in v0.5.0

func (r *AwsNodePool) ValidateCreate() error

ValidateCreate implements webhook.Validator so a webhook will be registered for the type

func (*AwsNodePool) ValidateDelete added in v0.5.0

func (r *AwsNodePool) ValidateDelete() error

ValidateDelete implements webhook.Validator so a webhook will be registered for the type

func (*AwsNodePool) ValidateUpdate added in v0.5.0

func (r *AwsNodePool) ValidateUpdate(old runtime.Object) error

ValidateUpdate implements webhook.Validator so a webhook will be registered for the type

type AwsNodePoolList added in v0.5.0

type AwsNodePoolList struct {
	metav1.TypeMeta `json:",inline"`
	metav1.ListMeta `json:"metadata,omitempty"`
	// Items is a list of AwsNodePool CRD objects
	Items []AwsNodePool `json:"items,omitempty"`
}

AwsNodePoolList is a list of AwsNodePools

func (*AwsNodePoolList) DeepCopy added in v0.5.0

func (in *AwsNodePoolList) DeepCopy() *AwsNodePoolList

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

func (*AwsNodePoolList) DeepCopyInto added in v0.5.0

func (in *AwsNodePoolList) DeepCopyInto(out *AwsNodePoolList)

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

func (*AwsNodePoolList) DeepCopyObject added in v0.5.0

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

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

type AwsNodePoolSpec added in v0.5.0

type AwsNodePoolSpec struct {
	State *AwsNodePoolSpecResource `json:"state,omitempty" tf:"-"`

	Resource AwsNodePoolSpecResource `json:"resource" tf:"resource"`

	UpdatePolicy base.UpdatePolicy `json:"updatePolicy,omitempty" tf:"-"`

	TerminationPolicy base.TerminationPolicy `json:"terminationPolicy,omitempty" tf:"-"`

	ProviderRef core.LocalObjectReference `json:"providerRef" tf:"-"`

	BackendRef *core.LocalObjectReference `json:"backendRef,omitempty" tf:"-"`
}

func (*AwsNodePoolSpec) DeepCopy added in v0.5.0

func (in *AwsNodePoolSpec) DeepCopy() *AwsNodePoolSpec

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

func (*AwsNodePoolSpec) DeepCopyInto added in v0.5.0

func (in *AwsNodePoolSpec) DeepCopyInto(out *AwsNodePoolSpec)

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

type AwsNodePoolSpecAutoscaling added in v0.5.0

type AwsNodePoolSpecAutoscaling struct {
	// Required. Maximum number of nodes in the NodePool. Must be >= min_node_count.
	MaxNodeCount *int64 `json:"maxNodeCount" tf:"max_node_count"`
	// Required. Minimum number of nodes in the NodePool. Must be >= 1 and <= max_node_count.
	MinNodeCount *int64 `json:"minNodeCount" tf:"min_node_count"`
}

func (*AwsNodePoolSpecAutoscaling) DeepCopy added in v0.5.0

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

func (*AwsNodePoolSpecAutoscaling) DeepCopyInto added in v0.5.0

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

type AwsNodePoolSpecAutoscalingCodec added in v0.5.0

type AwsNodePoolSpecAutoscalingCodec struct {
}

+k8s:deepcopy-gen=false

func (AwsNodePoolSpecAutoscalingCodec) Decode added in v0.5.0

func (AwsNodePoolSpecAutoscalingCodec) Encode added in v0.5.0

func (AwsNodePoolSpecAutoscalingCodec) IsEmpty added in v0.5.0

type AwsNodePoolSpecConfig added in v0.5.0

type AwsNodePoolSpecConfig struct {
	// Required. The ARN of the AWS KMS key used to encrypt node pool configuration.
	ConfigEncryption *AwsNodePoolSpecConfigConfigEncryption `json:"configEncryption" tf:"config_encryption"`
	// Required. The name of the AWS IAM role assigned to nodes in the pool.
	IamInstanceProfile *string `json:"iamInstanceProfile" tf:"iam_instance_profile"`
	// Optional. The AWS instance type. When unspecified, it defaults to `t3.medium`.
	// +optional
	InstanceType *string `json:"instanceType,omitempty" tf:"instance_type"`
	// Optional. The initial labels assigned to nodes of this node pool. An object containing a list of "key": value pairs. Example: { "name": "wrench", "mass": "1.3kg", "count": "3" }.
	// +optional
	Labels *map[string]string `json:"labels,omitempty" tf:"labels"`
	// Optional. Template for the root volume provisioned for node pool nodes. Volumes will be provisioned in the availability zone assigned to the node pool subnet. When unspecified, it defaults to 32 GiB with the GP2 volume type.
	// +optional
	RootVolume *AwsNodePoolSpecConfigRootVolume `json:"rootVolume,omitempty" tf:"root_volume"`
	// Optional. The IDs of additional security groups to add to nodes in this pool. The manager will automatically create security groups with minimum rules needed for a functioning cluster.
	// +optional
	SecurityGroupIDS []string `json:"securityGroupIDS,omitempty" tf:"security_group_ids"`
	// Optional. The SSH configuration.
	// +optional
	SshConfig *AwsNodePoolSpecConfigSshConfig `json:"sshConfig,omitempty" tf:"ssh_config"`
	// Optional. Key/value metadata to assign to each underlying AWS resource. Specify at most 50 pairs containing alphanumerics, spaces, and symbols (.+-=_:@/). Keys can be up to 127 Unicode characters. Values can be up to 255 Unicode characters.
	// +optional
	Tags *map[string]string `json:"tags,omitempty" tf:"tags"`
	// Optional. The initial taints assigned to nodes of this node pool.
	// +optional
	Taints []AwsNodePoolSpecConfigTaints `json:"taints,omitempty" tf:"taints"`
}

func (*AwsNodePoolSpecConfig) DeepCopy added in v0.5.0

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

func (*AwsNodePoolSpecConfig) DeepCopyInto added in v0.5.0

func (in *AwsNodePoolSpecConfig) DeepCopyInto(out *AwsNodePoolSpecConfig)

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

type AwsNodePoolSpecConfigCodec added in v0.5.0

type AwsNodePoolSpecConfigCodec struct {
}

+k8s:deepcopy-gen=false

func (AwsNodePoolSpecConfigCodec) Decode added in v0.5.0

func (AwsNodePoolSpecConfigCodec) Encode added in v0.5.0

func (AwsNodePoolSpecConfigCodec) IsEmpty added in v0.5.0

type AwsNodePoolSpecConfigConfigEncryption added in v0.5.0

type AwsNodePoolSpecConfigConfigEncryption struct {
	// Required. The ARN of the AWS KMS key used to encrypt node pool configuration.
	KmsKeyArn *string `json:"kmsKeyArn" tf:"kms_key_arn"`
}

func (*AwsNodePoolSpecConfigConfigEncryption) DeepCopy added in v0.5.0

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

func (*AwsNodePoolSpecConfigConfigEncryption) DeepCopyInto added in v0.5.0

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

type AwsNodePoolSpecConfigConfigEncryptionCodec added in v0.5.0

type AwsNodePoolSpecConfigConfigEncryptionCodec struct {
}

+k8s:deepcopy-gen=false

func (AwsNodePoolSpecConfigConfigEncryptionCodec) Decode added in v0.5.0

func (AwsNodePoolSpecConfigConfigEncryptionCodec) Encode added in v0.5.0

func (AwsNodePoolSpecConfigConfigEncryptionCodec) IsEmpty added in v0.5.0

type AwsNodePoolSpecConfigRootVolume added in v0.5.0

type AwsNodePoolSpecConfigRootVolume struct {
	// Optional. The number of I/O operations per second (IOPS) to provision for GP3 volume.
	// +optional
	Iops *int64 `json:"iops,omitempty" tf:"iops"`
	// Optional. The Amazon Resource Name (ARN) of the Customer Managed Key (CMK) used to encrypt AWS EBS volumes. If not specified, the default Amazon managed key associated to the AWS region where this cluster runs will be used.
	// +optional
	KmsKeyArn *string `json:"kmsKeyArn,omitempty" tf:"kms_key_arn"`
	// Optional. The size of the volume, in GiBs. When unspecified, a default value is provided. See the specific reference in the parent resource.
	// +optional
	SizeGib *int64 `json:"sizeGib,omitempty" tf:"size_gib"`
	// Optional. Type of the EBS volume. When unspecified, it defaults to GP2 volume. Possible values: VOLUME_TYPE_UNSPECIFIED, GP2, GP3
	// +optional
	VolumeType *string `json:"volumeType,omitempty" tf:"volume_type"`
}

func (*AwsNodePoolSpecConfigRootVolume) DeepCopy added in v0.5.0

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

func (*AwsNodePoolSpecConfigRootVolume) DeepCopyInto added in v0.5.0

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

type AwsNodePoolSpecConfigRootVolumeCodec added in v0.5.0

type AwsNodePoolSpecConfigRootVolumeCodec struct {
}

+k8s:deepcopy-gen=false

func (AwsNodePoolSpecConfigRootVolumeCodec) Decode added in v0.5.0

func (AwsNodePoolSpecConfigRootVolumeCodec) Encode added in v0.5.0

func (AwsNodePoolSpecConfigRootVolumeCodec) IsEmpty added in v0.5.0

type AwsNodePoolSpecConfigSshConfig added in v0.5.0

type AwsNodePoolSpecConfigSshConfig struct {
	// Required. The name of the EC2 key pair used to login into cluster machines.
	Ec2KeyPair *string `json:"ec2KeyPair" tf:"ec2_key_pair"`
}

func (*AwsNodePoolSpecConfigSshConfig) DeepCopy added in v0.5.0

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

func (*AwsNodePoolSpecConfigSshConfig) DeepCopyInto added in v0.5.0

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

type AwsNodePoolSpecConfigSshConfigCodec added in v0.5.0

type AwsNodePoolSpecConfigSshConfigCodec struct {
}

+k8s:deepcopy-gen=false

func (AwsNodePoolSpecConfigSshConfigCodec) Decode added in v0.5.0

func (AwsNodePoolSpecConfigSshConfigCodec) Encode added in v0.5.0

func (AwsNodePoolSpecConfigSshConfigCodec) IsEmpty added in v0.5.0

type AwsNodePoolSpecConfigTaints added in v0.5.0

type AwsNodePoolSpecConfigTaints struct {
	// Required. The taint effect. Possible values: EFFECT_UNSPECIFIED, NO_SCHEDULE, PREFER_NO_SCHEDULE, NO_EXECUTE
	Effect *string `json:"effect" tf:"effect"`
	// Required. Key for the taint.
	Key *string `json:"key" tf:"key"`
	// Required. Value for the taint.
	Value *string `json:"value" tf:"value"`
}

func (*AwsNodePoolSpecConfigTaints) DeepCopy added in v0.5.0

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

func (*AwsNodePoolSpecConfigTaints) DeepCopyInto added in v0.5.0

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

type AwsNodePoolSpecMaxPodsConstraint added in v0.5.0

type AwsNodePoolSpecMaxPodsConstraint struct {
	// Required. The maximum number of pods to schedule on a single node.
	MaxPodsPerNode *int64 `json:"maxPodsPerNode" tf:"max_pods_per_node"`
}

func (*AwsNodePoolSpecMaxPodsConstraint) DeepCopy added in v0.5.0

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

func (*AwsNodePoolSpecMaxPodsConstraint) DeepCopyInto added in v0.5.0

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

type AwsNodePoolSpecMaxPodsConstraintCodec added in v0.5.0

type AwsNodePoolSpecMaxPodsConstraintCodec struct {
}

+k8s:deepcopy-gen=false

func (AwsNodePoolSpecMaxPodsConstraintCodec) Decode added in v0.5.0

func (AwsNodePoolSpecMaxPodsConstraintCodec) Encode added in v0.5.0

func (AwsNodePoolSpecMaxPodsConstraintCodec) IsEmpty added in v0.5.0

type AwsNodePoolSpecResource added in v0.5.0

type AwsNodePoolSpecResource struct {
	Timeouts *base.ResourceTimeout `json:"timeouts,omitempty" tf:"timeouts"`

	ID string `json:"id,omitempty" tf:"id,omitempty"`

	// Optional. Annotations on the node pool. This field has the same restrictions as Kubernetes annotations. The total size of all keys and values combined is limited to 256k. Key can have 2 segments: prefix (optional) and name (required), separated by a slash (/). Prefix must be a DNS subdomain. Name must be 63 characters or less, begin and end with alphanumerics, with dashes (-), underscores (_), dots (.), and alphanumerics between.
	// +optional
	Annotations *map[string]string `json:"annotations,omitempty" tf:"annotations"`
	// Required. Autoscaler configuration for this node pool.
	Autoscaling *AwsNodePoolSpecAutoscaling `json:"autoscaling" tf:"autoscaling"`
	// The awsCluster for the resource
	Cluster *string `json:"cluster" tf:"cluster"`
	// Required. The configuration of the node pool.
	Config *AwsNodePoolSpecConfig `json:"config" tf:"config"`
	// Output only. The time at which this node pool was created.
	// +optional
	CreateTime *string `json:"createTime,omitempty" tf:"create_time"`
	// Allows clients to perform consistent read-modify-writes through optimistic concurrency control. May be sent on update and delete requests to ensure the client has an up-to-date value before proceeding.
	// +optional
	Etag *string `json:"etag,omitempty" tf:"etag"`
	// The location for the resource
	Location *string `json:"location" tf:"location"`
	// Required. The constraint on the maximum number of pods that can be run simultaneously on a node in the node pool.
	MaxPodsConstraint *AwsNodePoolSpecMaxPodsConstraint `json:"maxPodsConstraint" tf:"max_pods_constraint"`
	// The name of this resource.
	Name *string `json:"name" tf:"name"`
	// The project for the resource
	// +optional
	Project *string `json:"project,omitempty" tf:"project"`
	// Output only. If set, there are currently changes in flight to the node pool.
	// +optional
	Reconciling *bool `json:"reconciling,omitempty" tf:"reconciling"`
	// Output only. The lifecycle state of the node pool. Possible values: STATE_UNSPECIFIED, PROVISIONING, RUNNING, RECONCILING, STOPPING, ERROR, DEGRADED
	// +optional
	State *string `json:"state,omitempty" tf:"state"`
	// Required. The subnet where the node pool node run.
	SubnetID *string `json:"subnetID" tf:"subnet_id"`
	// Output only. A globally unique identifier for the node pool.
	// +optional
	Uid *string `json:"uid,omitempty" tf:"uid"`
	// Output only. The time at which this node pool was last updated.
	// +optional
	UpdateTime *string `json:"updateTime,omitempty" tf:"update_time"`
	// Required. The Kubernetes version to run on this node pool (e.g. `1.19.10-gke.1000`). You can list all supported versions on a given Google Cloud region by calling GetAwsServerConfig.
	Version *string `json:"version" tf:"version"`
}

func (*AwsNodePoolSpecResource) DeepCopy added in v0.5.0

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

func (*AwsNodePoolSpecResource) DeepCopyInto added in v0.5.0

func (in *AwsNodePoolSpecResource) DeepCopyInto(out *AwsNodePoolSpecResource)

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

type AwsNodePoolStatus added in v0.5.0

type AwsNodePoolStatus struct {
	// Resource generation, which is updated on mutation by the API Server.
	// +optional
	ObservedGeneration int64 `json:"observedGeneration,omitempty"`
	// +optional
	Phase status.Status `json:"phase,omitempty"`
	// +optional
	Conditions []kmapi.Condition `json:"conditions,omitempty"`
}

func (*AwsNodePoolStatus) DeepCopy added in v0.5.0

func (in *AwsNodePoolStatus) DeepCopy() *AwsNodePoolStatus

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

func (*AwsNodePoolStatus) DeepCopyInto added in v0.5.0

func (in *AwsNodePoolStatus) DeepCopyInto(out *AwsNodePoolStatus)

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

type AzureClient added in v0.5.0

type AzureClient struct {
	metav1.TypeMeta   `json:",inline,omitempty"`
	metav1.ObjectMeta `json:"metadata,omitempty"`
	Spec              AzureClientSpec   `json:"spec,omitempty"`
	Status            AzureClientStatus `json:"status,omitempty"`
}

func (*AzureClient) DeepCopy added in v0.5.0

func (in *AzureClient) DeepCopy() *AzureClient

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

func (*AzureClient) DeepCopyInto added in v0.5.0

func (in *AzureClient) DeepCopyInto(out *AzureClient)

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

func (*AzureClient) DeepCopyObject added in v0.5.0

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

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

func (*AzureClient) SetupWebhookWithManager added in v0.5.0

func (r *AzureClient) SetupWebhookWithManager(mgr ctrl.Manager) error

func (*AzureClient) ValidateCreate added in v0.5.0

func (r *AzureClient) ValidateCreate() error

ValidateCreate implements webhook.Validator so a webhook will be registered for the type

func (*AzureClient) ValidateDelete added in v0.5.0

func (r *AzureClient) ValidateDelete() error

ValidateDelete implements webhook.Validator so a webhook will be registered for the type

func (*AzureClient) ValidateUpdate added in v0.5.0

func (r *AzureClient) ValidateUpdate(old runtime.Object) error

ValidateUpdate implements webhook.Validator so a webhook will be registered for the type

type AzureClientList added in v0.5.0

type AzureClientList struct {
	metav1.TypeMeta `json:",inline"`
	metav1.ListMeta `json:"metadata,omitempty"`
	// Items is a list of AzureClient CRD objects
	Items []AzureClient `json:"items,omitempty"`
}

AzureClientList is a list of AzureClients

func (*AzureClientList) DeepCopy added in v0.5.0

func (in *AzureClientList) DeepCopy() *AzureClientList

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

func (*AzureClientList) DeepCopyInto added in v0.5.0

func (in *AzureClientList) DeepCopyInto(out *AzureClientList)

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

func (*AzureClientList) DeepCopyObject added in v0.5.0

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

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

type AzureClientSpec added in v0.5.0

type AzureClientSpec struct {
	State *AzureClientSpecResource `json:"state,omitempty" tf:"-"`

	Resource AzureClientSpecResource `json:"resource" tf:"resource"`

	UpdatePolicy base.UpdatePolicy `json:"updatePolicy,omitempty" tf:"-"`

	TerminationPolicy base.TerminationPolicy `json:"terminationPolicy,omitempty" tf:"-"`

	ProviderRef core.LocalObjectReference `json:"providerRef" tf:"-"`

	BackendRef *core.LocalObjectReference `json:"backendRef,omitempty" tf:"-"`
}

func (*AzureClientSpec) DeepCopy added in v0.5.0

func (in *AzureClientSpec) DeepCopy() *AzureClientSpec

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

func (*AzureClientSpec) DeepCopyInto added in v0.5.0

func (in *AzureClientSpec) DeepCopyInto(out *AzureClientSpec)

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

type AzureClientSpecResource added in v0.5.0

type AzureClientSpecResource struct {
	Timeouts *base.ResourceTimeout `json:"timeouts,omitempty" tf:"timeouts"`

	ID string `json:"id,omitempty" tf:"id,omitempty"`

	// Required. The Azure Active Directory Application ID.
	ApplicationID *string `json:"applicationID" tf:"application_id"`
	// Output only. The PEM encoded x509 certificate.
	// +optional
	Certificate *string `json:"certificate,omitempty" tf:"certificate"`
	// Output only. The time at which this resource was created.
	// +optional
	CreateTime *string `json:"createTime,omitempty" tf:"create_time"`
	// The location for the resource
	Location *string `json:"location" tf:"location"`
	// The name of this resource.
	Name *string `json:"name" tf:"name"`
	// The project for the resource
	// +optional
	Project *string `json:"project,omitempty" tf:"project"`
	// Required. The Azure Active Directory Tenant ID.
	TenantID *string `json:"tenantID" tf:"tenant_id"`
	// Output only. A globally unique identifier for the client.
	// +optional
	Uid *string `json:"uid,omitempty" tf:"uid"`
}

func (*AzureClientSpecResource) DeepCopy added in v0.5.0

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

func (*AzureClientSpecResource) DeepCopyInto added in v0.5.0

func (in *AzureClientSpecResource) DeepCopyInto(out *AzureClientSpecResource)

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

type AzureClientStatus added in v0.5.0

type AzureClientStatus struct {
	// Resource generation, which is updated on mutation by the API Server.
	// +optional
	ObservedGeneration int64 `json:"observedGeneration,omitempty"`
	// +optional
	Phase status.Status `json:"phase,omitempty"`
	// +optional
	Conditions []kmapi.Condition `json:"conditions,omitempty"`
}

func (*AzureClientStatus) DeepCopy added in v0.5.0

func (in *AzureClientStatus) DeepCopy() *AzureClientStatus

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

func (*AzureClientStatus) DeepCopyInto added in v0.5.0

func (in *AzureClientStatus) DeepCopyInto(out *AzureClientStatus)

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

type AzureCluster added in v0.5.0

type AzureCluster struct {
	metav1.TypeMeta   `json:",inline,omitempty"`
	metav1.ObjectMeta `json:"metadata,omitempty"`
	Spec              AzureClusterSpec   `json:"spec,omitempty"`
	Status            AzureClusterStatus `json:"status,omitempty"`
}

func (*AzureCluster) DeepCopy added in v0.5.0

func (in *AzureCluster) DeepCopy() *AzureCluster

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

func (*AzureCluster) DeepCopyInto added in v0.5.0

func (in *AzureCluster) DeepCopyInto(out *AzureCluster)

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

func (*AzureCluster) DeepCopyObject added in v0.5.0

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

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

func (*AzureCluster) SetupWebhookWithManager added in v0.5.0

func (r *AzureCluster) SetupWebhookWithManager(mgr ctrl.Manager) error

func (*AzureCluster) ValidateCreate added in v0.5.0

func (r *AzureCluster) ValidateCreate() error

ValidateCreate implements webhook.Validator so a webhook will be registered for the type

func (*AzureCluster) ValidateDelete added in v0.5.0

func (r *AzureCluster) ValidateDelete() error

ValidateDelete implements webhook.Validator so a webhook will be registered for the type

func (*AzureCluster) ValidateUpdate added in v0.5.0

func (r *AzureCluster) ValidateUpdate(old runtime.Object) error

ValidateUpdate implements webhook.Validator so a webhook will be registered for the type

type AzureClusterList added in v0.5.0

type AzureClusterList struct {
	metav1.TypeMeta `json:",inline"`
	metav1.ListMeta `json:"metadata,omitempty"`
	// Items is a list of AzureCluster CRD objects
	Items []AzureCluster `json:"items,omitempty"`
}

AzureClusterList is a list of AzureClusters

func (*AzureClusterList) DeepCopy added in v0.5.0

func (in *AzureClusterList) DeepCopy() *AzureClusterList

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

func (*AzureClusterList) DeepCopyInto added in v0.5.0

func (in *AzureClusterList) DeepCopyInto(out *AzureClusterList)

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

func (*AzureClusterList) DeepCopyObject added in v0.5.0

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

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

type AzureClusterSpec added in v0.5.0

type AzureClusterSpec struct {
	State *AzureClusterSpecResource `json:"state,omitempty" tf:"-"`

	Resource AzureClusterSpecResource `json:"resource" tf:"resource"`

	UpdatePolicy base.UpdatePolicy `json:"updatePolicy,omitempty" tf:"-"`

	TerminationPolicy base.TerminationPolicy `json:"terminationPolicy,omitempty" tf:"-"`

	ProviderRef core.LocalObjectReference `json:"providerRef" tf:"-"`

	BackendRef *core.LocalObjectReference `json:"backendRef,omitempty" tf:"-"`
}

func (*AzureClusterSpec) DeepCopy added in v0.5.0

func (in *AzureClusterSpec) DeepCopy() *AzureClusterSpec

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

func (*AzureClusterSpec) DeepCopyInto added in v0.5.0

func (in *AzureClusterSpec) DeepCopyInto(out *AzureClusterSpec)

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

type AzureClusterSpecAuthorization added in v0.5.0

type AzureClusterSpecAuthorization struct {
	// Required. Users that can perform operations as a cluster admin. A new ClusterRoleBinding will be created to grant the cluster-admin ClusterRole to the users. At most one user can be specified. For more info on RBAC, see https://kubernetes.io/docs/reference/access-authn-authz/rbac/#user-facing-roles
	AdminUsers []AzureClusterSpecAuthorizationAdminUsers `json:"adminUsers" tf:"admin_users"`
}

func (*AzureClusterSpecAuthorization) DeepCopy added in v0.5.0

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

func (*AzureClusterSpecAuthorization) DeepCopyInto added in v0.5.0

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

type AzureClusterSpecAuthorizationAdminUsers added in v0.5.0

type AzureClusterSpecAuthorizationAdminUsers struct {
	// Required. The name of the user, e.g. `my-gcp-id@gmail.com`.
	Username *string `json:"username" tf:"username"`
}

func (*AzureClusterSpecAuthorizationAdminUsers) DeepCopy added in v0.5.0

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

func (*AzureClusterSpecAuthorizationAdminUsers) DeepCopyInto added in v0.5.0

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

type AzureClusterSpecAuthorizationCodec added in v0.5.0

type AzureClusterSpecAuthorizationCodec struct {
}

+k8s:deepcopy-gen=false

func (AzureClusterSpecAuthorizationCodec) Decode added in v0.5.0

func (AzureClusterSpecAuthorizationCodec) Encode added in v0.5.0

func (AzureClusterSpecAuthorizationCodec) IsEmpty added in v0.5.0

type AzureClusterSpecControlPlane added in v0.5.0

type AzureClusterSpecControlPlane struct {
	// Optional. Configuration related to application-layer secrets encryption.
	// +optional
	DatabaseEncryption *AzureClusterSpecControlPlaneDatabaseEncryption `json:"databaseEncryption,omitempty" tf:"database_encryption"`
	// Optional. Configuration related to the main volume provisioned for each control plane replica. The main volume is in charge of storing all of the cluster's etcd state. When unspecified, it defaults to a 8-GiB Azure Disk.
	// +optional
	MainVolume *AzureClusterSpecControlPlaneMainVolume `json:"mainVolume,omitempty" tf:"main_volume"`
	// Proxy configuration for outbound HTTP(S) traffic.
	// +optional
	ProxyConfig *AzureClusterSpecControlPlaneProxyConfig `json:"proxyConfig,omitempty" tf:"proxy_config"`
	// Configuration for where to place the control plane replicas. Up to three replica placement instances can be specified. If replica_placements is set, the replica placement instances will be applied to the three control plane replicas as evenly as possible.
	// +optional
	ReplicaPlacements []AzureClusterSpecControlPlaneReplicaPlacements `json:"replicaPlacements,omitempty" tf:"replica_placements"`
	// Optional. Configuration related to the root volume provisioned for each control plane replica. When unspecified, it defaults to 32-GiB Azure Disk.
	// +optional
	RootVolume *AzureClusterSpecControlPlaneRootVolume `json:"rootVolume,omitempty" tf:"root_volume"`
	// Required. SSH configuration for how to access the underlying control plane machines.
	SshConfig *AzureClusterSpecControlPlaneSshConfig `json:"sshConfig" tf:"ssh_config"`
	// Required. The ARM ID of the subnet where the control plane VMs are deployed. Example: `/subscriptions//resourceGroups//providers/Microsoft.Network/virtualNetworks//subnets/default`.
	SubnetID *string `json:"subnetID" tf:"subnet_id"`
	// Optional. A set of tags to apply to all underlying control plane Azure resources.
	// +optional
	Tags *map[string]string `json:"tags,omitempty" tf:"tags"`
	// Required. The Kubernetes version to run on control plane replicas (e.g. `1.19.10-gke.1000`). You can list all supported versions on a given Google Cloud region by calling GetAzureServerConfig.
	Version *string `json:"version" tf:"version"`
	// Optional. The Azure VM size name. Example: `Standard_DS2_v2`. For available VM sizes, see https://docs.microsoft.com/en-us/azure/virtual-machines/vm-naming-conventions. When unspecified, it defaults to `Standard_DS2_v2`.
	// +optional
	VmSize *string `json:"vmSize,omitempty" tf:"vm_size"`
}

func (*AzureClusterSpecControlPlane) DeepCopy added in v0.5.0

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

func (*AzureClusterSpecControlPlane) DeepCopyInto added in v0.5.0

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

type AzureClusterSpecControlPlaneCodec added in v0.5.0

type AzureClusterSpecControlPlaneCodec struct {
}

+k8s:deepcopy-gen=false

func (AzureClusterSpecControlPlaneCodec) Decode added in v0.5.0

func (AzureClusterSpecControlPlaneCodec) Encode added in v0.5.0

func (AzureClusterSpecControlPlaneCodec) IsEmpty added in v0.5.0

type AzureClusterSpecControlPlaneDatabaseEncryption added in v0.5.0

type AzureClusterSpecControlPlaneDatabaseEncryption struct {
	// The ARM ID of the Azure Key Vault key to encrypt / decrypt data. For example: `/subscriptions/<subscription-id>/resourceGroups/<resource-group-id>/providers/Microsoft.KeyVault/vaults/<key-vault-id>/keys/<key-name>` Encryption will always take the latest version of the key and hence specific version is not supported.
	KeyID *string `json:"keyID" tf:"key_id"`
}

func (*AzureClusterSpecControlPlaneDatabaseEncryption) DeepCopy added in v0.5.0

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

func (*AzureClusterSpecControlPlaneDatabaseEncryption) DeepCopyInto added in v0.5.0

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

type AzureClusterSpecControlPlaneDatabaseEncryptionCodec added in v0.5.0

type AzureClusterSpecControlPlaneDatabaseEncryptionCodec struct {
}

+k8s:deepcopy-gen=false

func (AzureClusterSpecControlPlaneDatabaseEncryptionCodec) Decode added in v0.5.0

func (AzureClusterSpecControlPlaneDatabaseEncryptionCodec) Encode added in v0.5.0

func (AzureClusterSpecControlPlaneDatabaseEncryptionCodec) IsEmpty added in v0.5.0

type AzureClusterSpecControlPlaneMainVolume added in v0.5.0

type AzureClusterSpecControlPlaneMainVolume struct {
	// Optional. The size of the disk, in GiBs. When unspecified, a default value is provided. See the specific reference in the parent resource.
	// +optional
	SizeGib *int64 `json:"sizeGib,omitempty" tf:"size_gib"`
}

func (*AzureClusterSpecControlPlaneMainVolume) DeepCopy added in v0.5.0

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

func (*AzureClusterSpecControlPlaneMainVolume) DeepCopyInto added in v0.5.0

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

type AzureClusterSpecControlPlaneMainVolumeCodec added in v0.5.0

type AzureClusterSpecControlPlaneMainVolumeCodec struct {
}

+k8s:deepcopy-gen=false

func (AzureClusterSpecControlPlaneMainVolumeCodec) Decode added in v0.5.0

func (AzureClusterSpecControlPlaneMainVolumeCodec) Encode added in v0.5.0

func (AzureClusterSpecControlPlaneMainVolumeCodec) IsEmpty added in v0.5.0

type AzureClusterSpecControlPlaneProxyConfig added in v0.5.0

type AzureClusterSpecControlPlaneProxyConfig struct {
	// The ARM ID the of the resource group containing proxy keyvault. Resource group ids are formatted as `/subscriptions/<subscription-id>/resourceGroups/<resource-group-name>`
	ResourceGroupID *string `json:"resourceGroupID" tf:"resource_group_id"`
	// The URL the of the proxy setting secret with its version. Secret ids are formatted as `https:<key-vault-name>.vault.azure.net/secrets/<secret-name>/<secret-version>`.
	SecretID *string `json:"secretID" tf:"secret_id"`
}

func (*AzureClusterSpecControlPlaneProxyConfig) DeepCopy added in v0.5.0

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

func (*AzureClusterSpecControlPlaneProxyConfig) DeepCopyInto added in v0.5.0

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

type AzureClusterSpecControlPlaneProxyConfigCodec added in v0.5.0

type AzureClusterSpecControlPlaneProxyConfigCodec struct {
}

+k8s:deepcopy-gen=false

func (AzureClusterSpecControlPlaneProxyConfigCodec) Decode added in v0.5.0

func (AzureClusterSpecControlPlaneProxyConfigCodec) Encode added in v0.5.0

func (AzureClusterSpecControlPlaneProxyConfigCodec) IsEmpty added in v0.5.0

type AzureClusterSpecControlPlaneReplicaPlacements added in v0.5.0

type AzureClusterSpecControlPlaneReplicaPlacements struct {
	// For a given replica, the Azure availability zone where to provision the control plane VM and the ETCD disk.
	AzureAvailabilityZone *string `json:"azureAvailabilityZone" tf:"azure_availability_zone"`
	// For a given replica, the ARM ID of the subnet where the control plane VM is deployed. Make sure it's a subnet under the virtual network in the cluster configuration.
	SubnetID *string `json:"subnetID" tf:"subnet_id"`
}

func (*AzureClusterSpecControlPlaneReplicaPlacements) DeepCopy added in v0.5.0

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

func (*AzureClusterSpecControlPlaneReplicaPlacements) DeepCopyInto added in v0.5.0

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

type AzureClusterSpecControlPlaneRootVolume added in v0.5.0

type AzureClusterSpecControlPlaneRootVolume struct {
	// Optional. The size of the disk, in GiBs. When unspecified, a default value is provided. See the specific reference in the parent resource.
	// +optional
	SizeGib *int64 `json:"sizeGib,omitempty" tf:"size_gib"`
}

func (*AzureClusterSpecControlPlaneRootVolume) DeepCopy added in v0.5.0

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

func (*AzureClusterSpecControlPlaneRootVolume) DeepCopyInto added in v0.5.0

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

type AzureClusterSpecControlPlaneRootVolumeCodec added in v0.5.0

type AzureClusterSpecControlPlaneRootVolumeCodec struct {
}

+k8s:deepcopy-gen=false

func (AzureClusterSpecControlPlaneRootVolumeCodec) Decode added in v0.5.0

func (AzureClusterSpecControlPlaneRootVolumeCodec) Encode added in v0.5.0

func (AzureClusterSpecControlPlaneRootVolumeCodec) IsEmpty added in v0.5.0

type AzureClusterSpecControlPlaneSshConfig added in v0.5.0

type AzureClusterSpecControlPlaneSshConfig struct {
	// Required. The SSH public key data for VMs managed by Anthos. This accepts the authorized_keys file format used in OpenSSH according to the sshd(8) manual page.
	AuthorizedKey *string `json:"authorizedKey" tf:"authorized_key"`
}

func (*AzureClusterSpecControlPlaneSshConfig) DeepCopy added in v0.5.0

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

func (*AzureClusterSpecControlPlaneSshConfig) DeepCopyInto added in v0.5.0

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

type AzureClusterSpecControlPlaneSshConfigCodec added in v0.5.0

type AzureClusterSpecControlPlaneSshConfigCodec struct {
}

+k8s:deepcopy-gen=false

func (AzureClusterSpecControlPlaneSshConfigCodec) Decode added in v0.5.0

func (AzureClusterSpecControlPlaneSshConfigCodec) Encode added in v0.5.0

func (AzureClusterSpecControlPlaneSshConfigCodec) IsEmpty added in v0.5.0

type AzureClusterSpecFleet added in v0.5.0

type AzureClusterSpecFleet struct {
	// The name of the managed Hub Membership resource associated to this cluster. Membership names are formatted as projects/<project-number>/locations/global/membership/<cluster-id>.
	// +optional
	Membership *string `json:"membership,omitempty" tf:"membership"`
	// The number of the Fleet host project where this cluster will be registered.
	// +optional
	Project *string `json:"project,omitempty" tf:"project"`
}

func (*AzureClusterSpecFleet) DeepCopy added in v0.5.0

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

func (*AzureClusterSpecFleet) DeepCopyInto added in v0.5.0

func (in *AzureClusterSpecFleet) DeepCopyInto(out *AzureClusterSpecFleet)

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

type AzureClusterSpecFleetCodec added in v0.5.0

type AzureClusterSpecFleetCodec struct {
}

+k8s:deepcopy-gen=false

func (AzureClusterSpecFleetCodec) Decode added in v0.5.0

func (AzureClusterSpecFleetCodec) Encode added in v0.5.0

func (AzureClusterSpecFleetCodec) IsEmpty added in v0.5.0

type AzureClusterSpecNetworking added in v0.5.0

type AzureClusterSpecNetworking struct {
	// Required. The IP address range of the pods in this cluster, in CIDR notation (e.g. `10.96.0.0/14`). All pods in the cluster get assigned a unique RFC1918 IPv4 address from these ranges. Only a single range is supported. This field cannot be changed after creation.
	PodAddressCIDRBlocks []string `json:"podAddressCIDRBlocks" tf:"pod_address_cidr_blocks"`
	// Required. The IP address range for services in this cluster, in CIDR notation (e.g. `10.96.0.0/14`). All services in the cluster get assigned a unique RFC1918 IPv4 address from these ranges. Only a single range is supported. This field cannot be changed after creating a cluster.
	ServiceAddressCIDRBlocks []string `json:"serviceAddressCIDRBlocks" tf:"service_address_cidr_blocks"`
	// Required. The Azure Resource Manager (ARM) ID of the VNet associated with your cluster. All components in the cluster (i.e. control plane and node pools) run on a single VNet. Example: `/subscriptions/*/resourceGroups/*/providers/Microsoft.Network/virtualNetworks/*` This field cannot be changed after creation.
	VirtualNetworkID *string `json:"virtualNetworkID" tf:"virtual_network_id"`
}

func (*AzureClusterSpecNetworking) DeepCopy added in v0.5.0

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

func (*AzureClusterSpecNetworking) DeepCopyInto added in v0.5.0

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

type AzureClusterSpecNetworkingCodec added in v0.5.0

type AzureClusterSpecNetworkingCodec struct {
}

+k8s:deepcopy-gen=false

func (AzureClusterSpecNetworkingCodec) Decode added in v0.5.0

func (AzureClusterSpecNetworkingCodec) Encode added in v0.5.0

func (AzureClusterSpecNetworkingCodec) IsEmpty added in v0.5.0

type AzureClusterSpecResource added in v0.5.0

type AzureClusterSpecResource struct {
	Timeouts *base.ResourceTimeout `json:"timeouts,omitempty" tf:"timeouts"`

	ID string `json:"id,omitempty" tf:"id,omitempty"`

	// Optional. Annotations on the cluster. This field has the same restrictions as Kubernetes annotations. The total size of all keys and values combined is limited to 256k. Keys can have 2 segments: prefix (optional) and name (required), separated by a slash (/). Prefix must be a DNS subdomain. Name must be 63 characters or less, begin and end with alphanumerics, with dashes (-), underscores (_), dots (.), and alphanumerics between.
	// +optional
	Annotations *map[string]string `json:"annotations,omitempty" tf:"annotations"`
	// Required. Configuration related to the cluster RBAC settings.
	Authorization *AzureClusterSpecAuthorization `json:"authorization" tf:"authorization"`
	// Required. The Azure region where the cluster runs. Each Google Cloud region supports a subset of nearby Azure regions. You can call to list all supported Azure regions within a given Google Cloud region.
	AzureRegion *string `json:"azureRegion" tf:"azure_region"`
	// Required. Name of the AzureClient. The `AzureClient` resource must reside on the same GCP project and region as the `AzureCluster`. `AzureClient` names are formatted as `projects/<project-number>/locations/<region>/azureClients/<client-id>`. See Resource Names (https:cloud.google.com/apis/design/resource_names) for more details on Google Cloud resource names.
	Client *string `json:"client" tf:"client"`
	// Required. Configuration related to the cluster control plane.
	ControlPlane *AzureClusterSpecControlPlane `json:"controlPlane" tf:"control_plane"`
	// Output only. The time at which this cluster was created.
	// +optional
	CreateTime *string `json:"createTime,omitempty" tf:"create_time"`
	// Optional. A human readable description of this cluster. Cannot be longer than 255 UTF-8 encoded bytes.
	// +optional
	Description *string `json:"description,omitempty" tf:"description"`
	// Output only. The endpoint of the cluster's API server.
	// +optional
	Endpoint *string `json:"endpoint,omitempty" tf:"endpoint"`
	// Allows clients to perform consistent read-modify-writes through optimistic concurrency control. May be sent on update and delete requests to ensure the client has an up-to-date value before proceeding.
	// +optional
	Etag *string `json:"etag,omitempty" tf:"etag"`
	// Fleet configuration.
	Fleet *AzureClusterSpecFleet `json:"fleet" tf:"fleet"`
	// The location for the resource
	Location *string `json:"location" tf:"location"`
	// The name of this resource.
	Name *string `json:"name" tf:"name"`
	// Required. Cluster-wide networking configuration.
	Networking *AzureClusterSpecNetworking `json:"networking" tf:"networking"`
	// The project for the resource
	// +optional
	Project *string `json:"project,omitempty" tf:"project"`
	// Output only. If set, there are currently changes in flight to the cluster.
	// +optional
	Reconciling *bool `json:"reconciling,omitempty" tf:"reconciling"`
	// Required. The ARM ID of the resource group where the cluster resources are deployed. For example: `/subscriptions/*/resourceGroups/*`
	ResourceGroupID *string `json:"resourceGroupID" tf:"resource_group_id"`
	// Output only. The current state of the cluster. Possible values: STATE_UNSPECIFIED, PROVISIONING, RUNNING, RECONCILING, STOPPING, ERROR, DEGRADED
	// +optional
	State *string `json:"state,omitempty" tf:"state"`
	// Output only. A globally unique identifier for the cluster.
	// +optional
	Uid *string `json:"uid,omitempty" tf:"uid"`
	// Output only. The time at which this cluster was last updated.
	// +optional
	UpdateTime *string `json:"updateTime,omitempty" tf:"update_time"`
	// Output only. Workload Identity settings.
	// +optional
	WorkloadIdentityConfig []AzureClusterSpecWorkloadIdentityConfig `json:"workloadIdentityConfig,omitempty" tf:"workload_identity_config"`
}

func (*AzureClusterSpecResource) DeepCopy added in v0.5.0

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

func (*AzureClusterSpecResource) DeepCopyInto added in v0.5.0

func (in *AzureClusterSpecResource) DeepCopyInto(out *AzureClusterSpecResource)

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

type AzureClusterSpecWorkloadIdentityConfig added in v0.5.0

type AzureClusterSpecWorkloadIdentityConfig struct {
	// The ID of the OIDC Identity Provider (IdP) associated to the Workload Identity Pool.
	// +optional
	IdentityProvider *string `json:"identityProvider,omitempty" tf:"identity_provider"`
	// The OIDC issuer URL for this cluster.
	// +optional
	IssuerURI *string `json:"issuerURI,omitempty" tf:"issuer_uri"`
	// The Workload Identity Pool associated to the cluster.
	// +optional
	WorkloadPool *string `json:"workloadPool,omitempty" tf:"workload_pool"`
}

func (*AzureClusterSpecWorkloadIdentityConfig) DeepCopy added in v0.5.0

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

func (*AzureClusterSpecWorkloadIdentityConfig) DeepCopyInto added in v0.5.0

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

type AzureClusterStatus added in v0.5.0

type AzureClusterStatus struct {
	// Resource generation, which is updated on mutation by the API Server.
	// +optional
	ObservedGeneration int64 `json:"observedGeneration,omitempty"`
	// +optional
	Phase status.Status `json:"phase,omitempty"`
	// +optional
	Conditions []kmapi.Condition `json:"conditions,omitempty"`
}

func (*AzureClusterStatus) DeepCopy added in v0.5.0

func (in *AzureClusterStatus) DeepCopy() *AzureClusterStatus

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

func (*AzureClusterStatus) DeepCopyInto added in v0.5.0

func (in *AzureClusterStatus) DeepCopyInto(out *AzureClusterStatus)

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

type AzureNodePool added in v0.5.0

type AzureNodePool struct {
	metav1.TypeMeta   `json:",inline,omitempty"`
	metav1.ObjectMeta `json:"metadata,omitempty"`
	Spec              AzureNodePoolSpec   `json:"spec,omitempty"`
	Status            AzureNodePoolStatus `json:"status,omitempty"`
}

func (*AzureNodePool) DeepCopy added in v0.5.0

func (in *AzureNodePool) DeepCopy() *AzureNodePool

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

func (*AzureNodePool) DeepCopyInto added in v0.5.0

func (in *AzureNodePool) DeepCopyInto(out *AzureNodePool)

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

func (*AzureNodePool) DeepCopyObject added in v0.5.0

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

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

func (*AzureNodePool) SetupWebhookWithManager added in v0.5.0

func (r *AzureNodePool) SetupWebhookWithManager(mgr ctrl.Manager) error

func (*AzureNodePool) ValidateCreate added in v0.5.0

func (r *AzureNodePool) ValidateCreate() error

ValidateCreate implements webhook.Validator so a webhook will be registered for the type

func (*AzureNodePool) ValidateDelete added in v0.5.0

func (r *AzureNodePool) ValidateDelete() error

ValidateDelete implements webhook.Validator so a webhook will be registered for the type

func (*AzureNodePool) ValidateUpdate added in v0.5.0

func (r *AzureNodePool) ValidateUpdate(old runtime.Object) error

ValidateUpdate implements webhook.Validator so a webhook will be registered for the type

type AzureNodePoolList added in v0.5.0

type AzureNodePoolList struct {
	metav1.TypeMeta `json:",inline"`
	metav1.ListMeta `json:"metadata,omitempty"`
	// Items is a list of AzureNodePool CRD objects
	Items []AzureNodePool `json:"items,omitempty"`
}

AzureNodePoolList is a list of AzureNodePools

func (*AzureNodePoolList) DeepCopy added in v0.5.0

func (in *AzureNodePoolList) DeepCopy() *AzureNodePoolList

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

func (*AzureNodePoolList) DeepCopyInto added in v0.5.0

func (in *AzureNodePoolList) DeepCopyInto(out *AzureNodePoolList)

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

func (*AzureNodePoolList) DeepCopyObject added in v0.5.0

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

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

type AzureNodePoolSpec added in v0.5.0

type AzureNodePoolSpec struct {
	State *AzureNodePoolSpecResource `json:"state,omitempty" tf:"-"`

	Resource AzureNodePoolSpecResource `json:"resource" tf:"resource"`

	UpdatePolicy base.UpdatePolicy `json:"updatePolicy,omitempty" tf:"-"`

	TerminationPolicy base.TerminationPolicy `json:"terminationPolicy,omitempty" tf:"-"`

	ProviderRef core.LocalObjectReference `json:"providerRef" tf:"-"`

	BackendRef *core.LocalObjectReference `json:"backendRef,omitempty" tf:"-"`
}

func (*AzureNodePoolSpec) DeepCopy added in v0.5.0

func (in *AzureNodePoolSpec) DeepCopy() *AzureNodePoolSpec

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

func (*AzureNodePoolSpec) DeepCopyInto added in v0.5.0

func (in *AzureNodePoolSpec) DeepCopyInto(out *AzureNodePoolSpec)

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

type AzureNodePoolSpecAutoscaling added in v0.5.0

type AzureNodePoolSpecAutoscaling struct {
	// Required. Maximum number of nodes in the node pool. Must be >= min_node_count.
	MaxNodeCount *int64 `json:"maxNodeCount" tf:"max_node_count"`
	// Required. Minimum number of nodes in the node pool. Must be >= 1 and <= max_node_count.
	MinNodeCount *int64 `json:"minNodeCount" tf:"min_node_count"`
}

func (*AzureNodePoolSpecAutoscaling) DeepCopy added in v0.5.0

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

func (*AzureNodePoolSpecAutoscaling) DeepCopyInto added in v0.5.0

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

type AzureNodePoolSpecAutoscalingCodec added in v0.5.0

type AzureNodePoolSpecAutoscalingCodec struct {
}

+k8s:deepcopy-gen=false

func (AzureNodePoolSpecAutoscalingCodec) Decode added in v0.5.0

func (AzureNodePoolSpecAutoscalingCodec) Encode added in v0.5.0

func (AzureNodePoolSpecAutoscalingCodec) IsEmpty added in v0.5.0

type AzureNodePoolSpecConfig added in v0.5.0

type AzureNodePoolSpecConfig struct {
	// Optional. Configuration related to the root volume provisioned for each node pool machine. When unspecified, it defaults to a 32-GiB Azure Disk.
	// +optional
	RootVolume *AzureNodePoolSpecConfigRootVolume `json:"rootVolume,omitempty" tf:"root_volume"`
	// Required. SSH configuration for how to access the node pool machines.
	SshConfig *AzureNodePoolSpecConfigSshConfig `json:"sshConfig" tf:"ssh_config"`
	// Optional. A set of tags to apply to all underlying Azure resources for this node pool. This currently only includes Virtual Machine Scale Sets. Specify at most 50 pairs containing alphanumerics, spaces, and symbols (.+-=_:@/). Keys can be up to 127 Unicode characters. Values can be up to 255 Unicode characters.
	// +optional
	Tags *map[string]string `json:"tags,omitempty" tf:"tags"`
	// Optional. The Azure VM size name. Example: `Standard_DS2_v2`. See (/anthos/clusters/docs/azure/reference/supported-vms) for options. When unspecified, it defaults to `Standard_DS2_v2`.
	// +optional
	VmSize *string `json:"vmSize,omitempty" tf:"vm_size"`
}

func (*AzureNodePoolSpecConfig) DeepCopy added in v0.5.0

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

func (*AzureNodePoolSpecConfig) DeepCopyInto added in v0.5.0

func (in *AzureNodePoolSpecConfig) DeepCopyInto(out *AzureNodePoolSpecConfig)

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

type AzureNodePoolSpecConfigCodec added in v0.5.0

type AzureNodePoolSpecConfigCodec struct {
}

+k8s:deepcopy-gen=false

func (AzureNodePoolSpecConfigCodec) Decode added in v0.5.0

func (AzureNodePoolSpecConfigCodec) Encode added in v0.5.0

func (AzureNodePoolSpecConfigCodec) IsEmpty added in v0.5.0

type AzureNodePoolSpecConfigRootVolume added in v0.5.0

type AzureNodePoolSpecConfigRootVolume struct {
	// Optional. The size of the disk, in GiBs. When unspecified, a default value is provided. See the specific reference in the parent resource.
	// +optional
	SizeGib *int64 `json:"sizeGib,omitempty" tf:"size_gib"`
}

func (*AzureNodePoolSpecConfigRootVolume) DeepCopy added in v0.5.0

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

func (*AzureNodePoolSpecConfigRootVolume) DeepCopyInto added in v0.5.0

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

type AzureNodePoolSpecConfigRootVolumeCodec added in v0.5.0

type AzureNodePoolSpecConfigRootVolumeCodec struct {
}

+k8s:deepcopy-gen=false

func (AzureNodePoolSpecConfigRootVolumeCodec) Decode added in v0.5.0

func (AzureNodePoolSpecConfigRootVolumeCodec) Encode added in v0.5.0

func (AzureNodePoolSpecConfigRootVolumeCodec) IsEmpty added in v0.5.0

type AzureNodePoolSpecConfigSshConfig added in v0.5.0

type AzureNodePoolSpecConfigSshConfig struct {
	// Required. The SSH public key data for VMs managed by Anthos. This accepts the authorized_keys file format used in OpenSSH according to the sshd(8) manual page.
	AuthorizedKey *string `json:"authorizedKey" tf:"authorized_key"`
}

func (*AzureNodePoolSpecConfigSshConfig) DeepCopy added in v0.5.0

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

func (*AzureNodePoolSpecConfigSshConfig) DeepCopyInto added in v0.5.0

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

type AzureNodePoolSpecConfigSshConfigCodec added in v0.5.0

type AzureNodePoolSpecConfigSshConfigCodec struct {
}

+k8s:deepcopy-gen=false

func (AzureNodePoolSpecConfigSshConfigCodec) Decode added in v0.5.0

func (AzureNodePoolSpecConfigSshConfigCodec) Encode added in v0.5.0

func (AzureNodePoolSpecConfigSshConfigCodec) IsEmpty added in v0.5.0

type AzureNodePoolSpecMaxPodsConstraint added in v0.5.0

type AzureNodePoolSpecMaxPodsConstraint struct {
	// Required. The maximum number of pods to schedule on a single node.
	MaxPodsPerNode *int64 `json:"maxPodsPerNode" tf:"max_pods_per_node"`
}

func (*AzureNodePoolSpecMaxPodsConstraint) DeepCopy added in v0.5.0

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

func (*AzureNodePoolSpecMaxPodsConstraint) DeepCopyInto added in v0.5.0

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

type AzureNodePoolSpecMaxPodsConstraintCodec added in v0.5.0

type AzureNodePoolSpecMaxPodsConstraintCodec struct {
}

+k8s:deepcopy-gen=false

func (AzureNodePoolSpecMaxPodsConstraintCodec) Decode added in v0.5.0

func (AzureNodePoolSpecMaxPodsConstraintCodec) Encode added in v0.5.0

func (AzureNodePoolSpecMaxPodsConstraintCodec) IsEmpty added in v0.5.0

type AzureNodePoolSpecResource added in v0.5.0

type AzureNodePoolSpecResource struct {
	Timeouts *base.ResourceTimeout `json:"timeouts,omitempty" tf:"timeouts"`

	ID string `json:"id,omitempty" tf:"id,omitempty"`

	// Optional. Annotations on the node pool. This field has the same restrictions as Kubernetes annotations. The total size of all keys and values combined is limited to 256k. Keys can have 2 segments: prefix (optional) and name (required), separated by a slash (/). Prefix must be a DNS subdomain. Name must be 63 characters or less, begin and end with alphanumerics, with dashes (-), underscores (_), dots (.), and alphanumerics between.
	// +optional
	Annotations *map[string]string `json:"annotations,omitempty" tf:"annotations"`
	// Required. Autoscaler configuration for this node pool.
	Autoscaling *AzureNodePoolSpecAutoscaling `json:"autoscaling" tf:"autoscaling"`
	// Optional. The Azure availability zone of the nodes in this nodepool. When unspecified, it defaults to `1`.
	// +optional
	AzureAvailabilityZone *string `json:"azureAvailabilityZone,omitempty" tf:"azure_availability_zone"`
	// The azureCluster for the resource
	Cluster *string `json:"cluster" tf:"cluster"`
	// Required. The node configuration of the node pool.
	Config *AzureNodePoolSpecConfig `json:"config" tf:"config"`
	// Output only. The time at which this node pool was created.
	// +optional
	CreateTime *string `json:"createTime,omitempty" tf:"create_time"`
	// Allows clients to perform consistent read-modify-writes through optimistic concurrency control. May be sent on update and delete requests to ensure the client has an up-to-date value before proceeding.
	// +optional
	Etag *string `json:"etag,omitempty" tf:"etag"`
	// The location for the resource
	Location *string `json:"location" tf:"location"`
	// Required. The constraint on the maximum number of pods that can be run simultaneously on a node in the node pool.
	MaxPodsConstraint *AzureNodePoolSpecMaxPodsConstraint `json:"maxPodsConstraint" tf:"max_pods_constraint"`
	// The name of this resource.
	Name *string `json:"name" tf:"name"`
	// The project for the resource
	// +optional
	Project *string `json:"project,omitempty" tf:"project"`
	// Output only. If set, there are currently pending changes to the node pool.
	// +optional
	Reconciling *bool `json:"reconciling,omitempty" tf:"reconciling"`
	// Output only. The current state of the node pool. Possible values: STATE_UNSPECIFIED, PROVISIONING, RUNNING, RECONCILING, STOPPING, ERROR, DEGRADED
	// +optional
	State *string `json:"state,omitempty" tf:"state"`
	// Required. The ARM ID of the subnet where the node pool VMs run. Make sure it's a subnet under the virtual network in the cluster configuration.
	SubnetID *string `json:"subnetID" tf:"subnet_id"`
	// Output only. A globally unique identifier for the node pool.
	// +optional
	Uid *string `json:"uid,omitempty" tf:"uid"`
	// Output only. The time at which this node pool was last updated.
	// +optional
	UpdateTime *string `json:"updateTime,omitempty" tf:"update_time"`
	// Required. The Kubernetes version (e.g. `1.19.10-gke.1000`) running on this node pool.
	Version *string `json:"version" tf:"version"`
}

func (*AzureNodePoolSpecResource) DeepCopy added in v0.5.0

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

func (*AzureNodePoolSpecResource) DeepCopyInto added in v0.5.0

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

type AzureNodePoolStatus added in v0.5.0

type AzureNodePoolStatus struct {
	// Resource generation, which is updated on mutation by the API Server.
	// +optional
	ObservedGeneration int64 `json:"observedGeneration,omitempty"`
	// +optional
	Phase status.Status `json:"phase,omitempty"`
	// +optional
	Conditions []kmapi.Condition `json:"conditions,omitempty"`
}

func (*AzureNodePoolStatus) DeepCopy added in v0.5.0

func (in *AzureNodePoolStatus) DeepCopy() *AzureNodePoolStatus

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

func (*AzureNodePoolStatus) DeepCopyInto added in v0.5.0

func (in *AzureNodePoolStatus) DeepCopyInto(out *AzureNodePoolStatus)

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,omitempty"`
	metav1.ObjectMeta `json:"metadata,omitempty"`
	Spec              ClusterSpec   `json:"spec,omitempty"`
	Status            ClusterStatus `json:"status,omitempty"`
}

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) SetupWebhookWithManager

func (r *Cluster) SetupWebhookWithManager(mgr ctrl.Manager) error

func (*Cluster) ValidateCreate

func (r *Cluster) ValidateCreate() error

ValidateCreate implements webhook.Validator so a webhook will be registered for the type

func (*Cluster) ValidateDelete

func (r *Cluster) ValidateDelete() error

ValidateDelete implements webhook.Validator so a webhook will be registered for the type

func (*Cluster) ValidateUpdate

func (r *Cluster) ValidateUpdate(old runtime.Object) error

ValidateUpdate implements webhook.Validator so a webhook will be registered for the type

type ClusterList

type ClusterList struct {
	metav1.TypeMeta `json:",inline"`
	metav1.ListMeta `json:"metadata,omitempty"`
	// Items is a list of Cluster CRD objects
	Items []Cluster `json:"items,omitempty"`
}

ClusterList is 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.

type ClusterSpec

type ClusterSpec struct {
	State *ClusterSpecResource `json:"state,omitempty" tf:"-"`

	Resource ClusterSpecResource `json:"resource" tf:"resource"`

	UpdatePolicy base.UpdatePolicy `json:"updatePolicy,omitempty" tf:"-"`

	TerminationPolicy base.TerminationPolicy `json:"terminationPolicy,omitempty" tf:"-"`

	ProviderRef core.LocalObjectReference `json:"providerRef" tf:"-"`

	SecretRef *core.LocalObjectReference `json:"secretRef,omitempty" tf:"-"`

	BackendRef *core.LocalObjectReference `json:"backendRef,omitempty" tf:"-"`
}

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 ClusterSpecAddonsConfig

type ClusterSpecAddonsConfig struct {
	// The status of the CloudRun addon. It is disabled by default. Set disabled = false to enable.
	// +optional
	CloudrunConfig *ClusterSpecAddonsConfigCloudrunConfig `json:"cloudrunConfig,omitempty" tf:"cloudrun_config"`
	// The status of the Filestore CSI driver addon, which allows the usage of filestore instance as volumes. Defaults to disabled; set enabled = true to enable.
	// +optional
	GcpFilestoreCsiDriverConfig *ClusterSpecAddonsConfigGcpFilestoreCsiDriverConfig `json:"gcpFilestoreCsiDriverConfig,omitempty" tf:"gcp_filestore_csi_driver_config"`
	// 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 ensures that a Heapster pod is running in the cluster, which is also used by the Cloud Monitoring service. It is enabled by default; set disabled = true to disable.
	// +optional
	HorizontalPodAutoscaling *ClusterSpecAddonsConfigHorizontalPodAutoscaling `json:"horizontalPodAutoscaling,omitempty" tf:"horizontal_pod_autoscaling"`
	// 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.
	// +optional
	HttpLoadBalancing *ClusterSpecAddonsConfigHttpLoadBalancing `json:"httpLoadBalancing,omitempty" tf:"http_load_balancing"`
	// 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.
	// +optional
	NetworkPolicyConfig *ClusterSpecAddonsConfigNetworkPolicyConfig `json:"networkPolicyConfig,omitempty" tf:"network_policy_config"`
}

func (*ClusterSpecAddonsConfig) DeepCopy

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

func (*ClusterSpecAddonsConfig) DeepCopyInto

func (in *ClusterSpecAddonsConfig) DeepCopyInto(out *ClusterSpecAddonsConfig)

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

type ClusterSpecAddonsConfigCloudrunConfig

type ClusterSpecAddonsConfigCloudrunConfig struct {
	Disabled *bool `json:"disabled" tf:"disabled"`
	// +optional
	LoadBalancerType *string `json:"loadBalancerType,omitempty" tf:"load_balancer_type"`
}

func (*ClusterSpecAddonsConfigCloudrunConfig) DeepCopy

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

func (*ClusterSpecAddonsConfigCloudrunConfig) DeepCopyInto

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

type ClusterSpecAddonsConfigCloudrunConfigCodec

type ClusterSpecAddonsConfigCloudrunConfigCodec struct {
}

+k8s:deepcopy-gen=false

func (ClusterSpecAddonsConfigCloudrunConfigCodec) Decode

func (ClusterSpecAddonsConfigCloudrunConfigCodec) Encode

func (ClusterSpecAddonsConfigCloudrunConfigCodec) IsEmpty

type ClusterSpecAddonsConfigCodec

type ClusterSpecAddonsConfigCodec struct {
}

+k8s:deepcopy-gen=false

func (ClusterSpecAddonsConfigCodec) Decode

func (ClusterSpecAddonsConfigCodec) Encode

func (ClusterSpecAddonsConfigCodec) IsEmpty

type ClusterSpecAddonsConfigGcpFilestoreCsiDriverConfig added in v0.5.0

type ClusterSpecAddonsConfigGcpFilestoreCsiDriverConfig struct {
	Enabled *bool `json:"enabled" tf:"enabled"`
}

func (*ClusterSpecAddonsConfigGcpFilestoreCsiDriverConfig) DeepCopy added in v0.5.0

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

func (*ClusterSpecAddonsConfigGcpFilestoreCsiDriverConfig) DeepCopyInto added in v0.5.0

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

type ClusterSpecAddonsConfigGcpFilestoreCsiDriverConfigCodec added in v0.5.0

type ClusterSpecAddonsConfigGcpFilestoreCsiDriverConfigCodec struct {
}

+k8s:deepcopy-gen=false

func (ClusterSpecAddonsConfigGcpFilestoreCsiDriverConfigCodec) Decode added in v0.5.0

func (ClusterSpecAddonsConfigGcpFilestoreCsiDriverConfigCodec) Encode added in v0.5.0

func (ClusterSpecAddonsConfigGcpFilestoreCsiDriverConfigCodec) IsEmpty added in v0.5.0

type ClusterSpecAddonsConfigHorizontalPodAutoscaling

type ClusterSpecAddonsConfigHorizontalPodAutoscaling struct {
	Disabled *bool `json:"disabled" tf:"disabled"`
}

func (*ClusterSpecAddonsConfigHorizontalPodAutoscaling) DeepCopy

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

func (*ClusterSpecAddonsConfigHorizontalPodAutoscaling) DeepCopyInto

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

type ClusterSpecAddonsConfigHorizontalPodAutoscalingCodec

type ClusterSpecAddonsConfigHorizontalPodAutoscalingCodec struct {
}

+k8s:deepcopy-gen=false

func (ClusterSpecAddonsConfigHorizontalPodAutoscalingCodec) Decode

func (ClusterSpecAddonsConfigHorizontalPodAutoscalingCodec) Encode

func (ClusterSpecAddonsConfigHorizontalPodAutoscalingCodec) IsEmpty

type ClusterSpecAddonsConfigHttpLoadBalancing

type ClusterSpecAddonsConfigHttpLoadBalancing struct {
	Disabled *bool `json:"disabled" tf:"disabled"`
}

func (*ClusterSpecAddonsConfigHttpLoadBalancing) DeepCopy

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

func (*ClusterSpecAddonsConfigHttpLoadBalancing) DeepCopyInto

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

type ClusterSpecAddonsConfigHttpLoadBalancingCodec

type ClusterSpecAddonsConfigHttpLoadBalancingCodec struct {
}

+k8s:deepcopy-gen=false

func (ClusterSpecAddonsConfigHttpLoadBalancingCodec) Decode

func (ClusterSpecAddonsConfigHttpLoadBalancingCodec) Encode

func (ClusterSpecAddonsConfigHttpLoadBalancingCodec) IsEmpty

type ClusterSpecAddonsConfigNetworkPolicyConfig

type ClusterSpecAddonsConfigNetworkPolicyConfig struct {
	Disabled *bool `json:"disabled" tf:"disabled"`
}

func (*ClusterSpecAddonsConfigNetworkPolicyConfig) DeepCopy

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

func (*ClusterSpecAddonsConfigNetworkPolicyConfig) DeepCopyInto

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

type ClusterSpecAddonsConfigNetworkPolicyConfigCodec

type ClusterSpecAddonsConfigNetworkPolicyConfigCodec struct {
}

+k8s:deepcopy-gen=false

func (ClusterSpecAddonsConfigNetworkPolicyConfigCodec) Decode

func (ClusterSpecAddonsConfigNetworkPolicyConfigCodec) Encode

func (ClusterSpecAddonsConfigNetworkPolicyConfigCodec) IsEmpty

type ClusterSpecAuthenticatorGroupsConfig

type ClusterSpecAuthenticatorGroupsConfig 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.
	SecurityGroup *string `json:"securityGroup" tf:"security_group"`
}

func (*ClusterSpecAuthenticatorGroupsConfig) DeepCopy

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

func (*ClusterSpecAuthenticatorGroupsConfig) DeepCopyInto

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

type ClusterSpecAuthenticatorGroupsConfigCodec

type ClusterSpecAuthenticatorGroupsConfigCodec struct {
}

+k8s:deepcopy-gen=false

func (ClusterSpecAuthenticatorGroupsConfigCodec) Decode

func (ClusterSpecAuthenticatorGroupsConfigCodec) Encode

func (ClusterSpecAuthenticatorGroupsConfigCodec) IsEmpty

type ClusterSpecClusterAutoscaling

type ClusterSpecClusterAutoscaling struct {
	// Contains defaults for a node pool created by NAP.
	// +optional
	AutoProvisioningDefaults *ClusterSpecClusterAutoscalingAutoProvisioningDefaults `json:"autoProvisioningDefaults,omitempty" tf:"auto_provisioning_defaults"`
	// Whether node auto-provisioning is enabled. Resource limits for cpu and memory must be defined to enable node auto-provisioning.
	Enabled *bool `json:"enabled" tf:"enabled"`
	// 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.
	// +optional
	ResourceLimits []ClusterSpecClusterAutoscalingResourceLimits `json:"resourceLimits,omitempty" tf:"resource_limits"`
}

func (*ClusterSpecClusterAutoscaling) DeepCopy

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

func (*ClusterSpecClusterAutoscaling) DeepCopyInto

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

type ClusterSpecClusterAutoscalingAutoProvisioningDefaults

type ClusterSpecClusterAutoscalingAutoProvisioningDefaults struct {
	// The default image type used by NAP once a new node pool is being created.
	// +optional
	ImageType *string `json:"imageType,omitempty" tf:"image_type"`
	// Scopes that are used by NAP when creating node pools.
	// +optional
	OauthScopes []string `json:"oauthScopes,omitempty" tf:"oauth_scopes"`
	// The Google Cloud Platform Service Account to be used by the node VMs.
	// +optional
	ServiceAccount *string `json:"serviceAccount,omitempty" tf:"service_account"`
}

func (*ClusterSpecClusterAutoscalingAutoProvisioningDefaults) DeepCopy

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

func (*ClusterSpecClusterAutoscalingAutoProvisioningDefaults) DeepCopyInto

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

type ClusterSpecClusterAutoscalingAutoProvisioningDefaultsCodec

type ClusterSpecClusterAutoscalingAutoProvisioningDefaultsCodec struct {
}

+k8s:deepcopy-gen=false

func (ClusterSpecClusterAutoscalingAutoProvisioningDefaultsCodec) Decode

func (ClusterSpecClusterAutoscalingAutoProvisioningDefaultsCodec) Encode

func (ClusterSpecClusterAutoscalingAutoProvisioningDefaultsCodec) IsEmpty

type ClusterSpecClusterAutoscalingCodec

type ClusterSpecClusterAutoscalingCodec struct {
}

+k8s:deepcopy-gen=false

func (ClusterSpecClusterAutoscalingCodec) Decode

func (ClusterSpecClusterAutoscalingCodec) Encode

func (ClusterSpecClusterAutoscalingCodec) IsEmpty

type ClusterSpecClusterAutoscalingResourceLimits

type ClusterSpecClusterAutoscalingResourceLimits struct {
	// Maximum amount of the resource in the cluster.
	// +optional
	Maximum *int64 `json:"maximum,omitempty" tf:"maximum"`
	// Minimum amount of the resource in the cluster.
	// +optional
	Minimum *int64 `json:"minimum,omitempty" tf:"minimum"`
	// The type of the resource. For example, cpu and memory. See the guide to using Node Auto-Provisioning for a list of types.
	ResourceType *string `json:"resourceType" tf:"resource_type"`
}

func (*ClusterSpecClusterAutoscalingResourceLimits) DeepCopy

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

func (*ClusterSpecClusterAutoscalingResourceLimits) DeepCopyInto

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

type ClusterSpecConfidentialNodes added in v0.5.0

type ClusterSpecConfidentialNodes struct {
	// Whether Confidential Nodes feature is enabled for all nodes in this cluster.
	Enabled *bool `json:"enabled" tf:"enabled"`
}

func (*ClusterSpecConfidentialNodes) DeepCopy added in v0.5.0

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

func (*ClusterSpecConfidentialNodes) DeepCopyInto added in v0.5.0

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

type ClusterSpecConfidentialNodesCodec added in v0.5.0

type ClusterSpecConfidentialNodesCodec struct {
}

+k8s:deepcopy-gen=false

func (ClusterSpecConfidentialNodesCodec) Decode added in v0.5.0

func (ClusterSpecConfidentialNodesCodec) Encode added in v0.5.0

func (ClusterSpecConfidentialNodesCodec) IsEmpty added in v0.5.0

type ClusterSpecDatabaseEncryption

type ClusterSpecDatabaseEncryption struct {
	// The key to use to encrypt/decrypt secrets.
	// +optional
	KeyName *string `json:"keyName,omitempty" tf:"key_name"`
	// ENCRYPTED or DECRYPTED.
	State *string `json:"state" tf:"state"`
}

func (*ClusterSpecDatabaseEncryption) DeepCopy

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

func (*ClusterSpecDatabaseEncryption) DeepCopyInto

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

type ClusterSpecDatabaseEncryptionCodec

type ClusterSpecDatabaseEncryptionCodec struct {
}

+k8s:deepcopy-gen=false

func (ClusterSpecDatabaseEncryptionCodec) Decode

func (ClusterSpecDatabaseEncryptionCodec) Encode

func (ClusterSpecDatabaseEncryptionCodec) IsEmpty

type ClusterSpecDefaultSnatStatus

type ClusterSpecDefaultSnatStatus struct {
	// When disabled is set to false, default IP masquerade rules will be applied to the nodes to prevent sNAT on cluster internal traffic.
	Disabled *bool `json:"disabled" tf:"disabled"`
}

func (*ClusterSpecDefaultSnatStatus) DeepCopy

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

func (*ClusterSpecDefaultSnatStatus) DeepCopyInto

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

type ClusterSpecDefaultSnatStatusCodec

type ClusterSpecDefaultSnatStatusCodec struct {
}

+k8s:deepcopy-gen=false

func (ClusterSpecDefaultSnatStatusCodec) Decode

func (ClusterSpecDefaultSnatStatusCodec) Encode

func (ClusterSpecDefaultSnatStatusCodec) IsEmpty

type ClusterSpecDnsConfig added in v0.5.0

type ClusterSpecDnsConfig struct {
	// Which in-cluster DNS provider should be used.
	// +optional
	ClusterDNS *string `json:"clusterDNS,omitempty" tf:"cluster_dns"`
	// The suffix used for all cluster service records.
	// +optional
	ClusterDNSDomain *string `json:"clusterDNSDomain,omitempty" tf:"cluster_dns_domain"`
	// The scope of access to cluster DNS records.
	// +optional
	ClusterDNSScope *string `json:"clusterDNSScope,omitempty" tf:"cluster_dns_scope"`
}

func (*ClusterSpecDnsConfig) DeepCopy added in v0.5.0

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

func (*ClusterSpecDnsConfig) DeepCopyInto added in v0.5.0

func (in *ClusterSpecDnsConfig) DeepCopyInto(out *ClusterSpecDnsConfig)

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

type ClusterSpecDnsConfigCodec added in v0.5.0

type ClusterSpecDnsConfigCodec struct {
}

+k8s:deepcopy-gen=false

func (ClusterSpecDnsConfigCodec) Decode added in v0.5.0

func (ClusterSpecDnsConfigCodec) Encode added in v0.5.0

func (ClusterSpecDnsConfigCodec) IsEmpty added in v0.5.0

type ClusterSpecIpAllocationPolicy

type ClusterSpecIpAllocationPolicy 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.
	// +optional
	ClusterIpv4CIDRBlock *string `json:"clusterIpv4CIDRBlock,omitempty" tf:"cluster_ipv4_cidr_block"`
	// 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.
	// +optional
	ClusterSecondaryRangeName *string `json:"clusterSecondaryRangeName,omitempty" tf:"cluster_secondary_range_name"`
	// 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.
	// +optional
	ServicesIpv4CIDRBlock *string `json:"servicesIpv4CIDRBlock,omitempty" tf:"services_ipv4_cidr_block"`
	// 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.
	// +optional
	ServicesSecondaryRangeName *string `json:"servicesSecondaryRangeName,omitempty" tf:"services_secondary_range_name"`
}

func (*ClusterSpecIpAllocationPolicy) DeepCopy

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

func (*ClusterSpecIpAllocationPolicy) DeepCopyInto

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

type ClusterSpecIpAllocationPolicyCodec

type ClusterSpecIpAllocationPolicyCodec struct {
}

+k8s:deepcopy-gen=false

func (ClusterSpecIpAllocationPolicyCodec) Decode

func (ClusterSpecIpAllocationPolicyCodec) Encode

func (ClusterSpecIpAllocationPolicyCodec) IsEmpty

type ClusterSpecLoggingConfig added in v0.4.0

type ClusterSpecLoggingConfig struct {
	// GKE components exposing logs. Valid values include SYSTEM_COMPONENTS and WORKLOADS.
	EnableComponents []string `json:"enableComponents" tf:"enable_components"`
}

func (*ClusterSpecLoggingConfig) DeepCopy added in v0.4.0

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

func (*ClusterSpecLoggingConfig) DeepCopyInto added in v0.4.0

func (in *ClusterSpecLoggingConfig) DeepCopyInto(out *ClusterSpecLoggingConfig)

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

type ClusterSpecLoggingConfigCodec added in v0.4.0

type ClusterSpecLoggingConfigCodec struct {
}

+k8s:deepcopy-gen=false

func (ClusterSpecLoggingConfigCodec) Decode added in v0.4.0

func (ClusterSpecLoggingConfigCodec) Encode added in v0.4.0

func (ClusterSpecLoggingConfigCodec) IsEmpty added in v0.4.0

type ClusterSpecMaintenancePolicy

type ClusterSpecMaintenancePolicy struct {
	// Time window specified for daily maintenance operations. Specify start_time in RFC3339 format "HH:MM”, where HH : [00-23] and MM : [00-59] GMT.
	// +optional
	DailyMaintenanceWindow *ClusterSpecMaintenancePolicyDailyMaintenanceWindow `json:"dailyMaintenanceWindow,omitempty" tf:"daily_maintenance_window"`
	// Exceptions to maintenance window. Non-emergency maintenance should not occur in these windows.
	// +optional
	// +kubebuilder:validation:MaxItems=3
	MaintenanceExclusion []ClusterSpecMaintenancePolicyMaintenanceExclusion `json:"maintenanceExclusion,omitempty" tf:"maintenance_exclusion"`
	// Time window for recurring maintenance operations.
	// +optional
	RecurringWindow *ClusterSpecMaintenancePolicyRecurringWindow `json:"recurringWindow,omitempty" tf:"recurring_window"`
}

func (*ClusterSpecMaintenancePolicy) DeepCopy

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

func (*ClusterSpecMaintenancePolicy) DeepCopyInto

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

type ClusterSpecMaintenancePolicyCodec

type ClusterSpecMaintenancePolicyCodec struct {
}

+k8s:deepcopy-gen=false

func (ClusterSpecMaintenancePolicyCodec) Decode

func (ClusterSpecMaintenancePolicyCodec) Encode

func (ClusterSpecMaintenancePolicyCodec) IsEmpty

type ClusterSpecMaintenancePolicyDailyMaintenanceWindow

type ClusterSpecMaintenancePolicyDailyMaintenanceWindow struct {
	// +optional
	Duration  *string `json:"duration,omitempty" tf:"duration"`
	StartTime *string `json:"startTime" tf:"start_time"`
}

func (*ClusterSpecMaintenancePolicyDailyMaintenanceWindow) DeepCopy

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

func (*ClusterSpecMaintenancePolicyDailyMaintenanceWindow) DeepCopyInto

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

type ClusterSpecMaintenancePolicyDailyMaintenanceWindowCodec

type ClusterSpecMaintenancePolicyDailyMaintenanceWindowCodec struct {
}

+k8s:deepcopy-gen=false

func (ClusterSpecMaintenancePolicyDailyMaintenanceWindowCodec) Decode

func (ClusterSpecMaintenancePolicyDailyMaintenanceWindowCodec) Encode

func (ClusterSpecMaintenancePolicyDailyMaintenanceWindowCodec) IsEmpty

type ClusterSpecMaintenancePolicyMaintenanceExclusion

type ClusterSpecMaintenancePolicyMaintenanceExclusion struct {
	EndTime       *string `json:"endTime" tf:"end_time"`
	ExclusionName *string `json:"exclusionName" tf:"exclusion_name"`
	StartTime     *string `json:"startTime" tf:"start_time"`
}

func (*ClusterSpecMaintenancePolicyMaintenanceExclusion) DeepCopy

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

func (*ClusterSpecMaintenancePolicyMaintenanceExclusion) DeepCopyInto

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

type ClusterSpecMaintenancePolicyRecurringWindow

type ClusterSpecMaintenancePolicyRecurringWindow struct {
	EndTime    *string `json:"endTime" tf:"end_time"`
	Recurrence *string `json:"recurrence" tf:"recurrence"`
	StartTime  *string `json:"startTime" tf:"start_time"`
}

func (*ClusterSpecMaintenancePolicyRecurringWindow) DeepCopy

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

func (*ClusterSpecMaintenancePolicyRecurringWindow) DeepCopyInto

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

type ClusterSpecMaintenancePolicyRecurringWindowCodec

type ClusterSpecMaintenancePolicyRecurringWindowCodec struct {
}

+k8s:deepcopy-gen=false

func (ClusterSpecMaintenancePolicyRecurringWindowCodec) Decode

func (ClusterSpecMaintenancePolicyRecurringWindowCodec) Encode

func (ClusterSpecMaintenancePolicyRecurringWindowCodec) IsEmpty

type ClusterSpecMasterAuth

type ClusterSpecMasterAuth struct {
	// Base64 encoded public certificate used by clients to authenticate to the cluster endpoint.
	// +optional
	ClientCertificate *string `json:"clientCertificate,omitempty" tf:"client_certificate"`
	// Whether client certificate authorization is enabled for this cluster.
	ClientCertificateConfig *ClusterSpecMasterAuthClientCertificateConfig `json:"clientCertificateConfig" tf:"client_certificate_config"`
	// Base64 encoded private key used by clients to authenticate to the cluster endpoint.
	// +optional
	ClientKey *string `json:"-" sensitive:"true" tf:"client_key"`
	// Base64 encoded public certificate that is the root of trust for the cluster.
	// +optional
	ClusterCaCertificate *string `json:"clusterCaCertificate,omitempty" tf:"cluster_ca_certificate"`
}

func (*ClusterSpecMasterAuth) DeepCopy

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

func (*ClusterSpecMasterAuth) DeepCopyInto

func (in *ClusterSpecMasterAuth) DeepCopyInto(out *ClusterSpecMasterAuth)

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

type ClusterSpecMasterAuthClientCertificateConfig

type ClusterSpecMasterAuthClientCertificateConfig struct {
	// Whether client certificate authorization is enabled for this cluster.
	IssueClientCertificate *bool `json:"issueClientCertificate" tf:"issue_client_certificate"`
}

func (*ClusterSpecMasterAuthClientCertificateConfig) DeepCopy

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

func (*ClusterSpecMasterAuthClientCertificateConfig) DeepCopyInto

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

type ClusterSpecMasterAuthClientCertificateConfigCodec

type ClusterSpecMasterAuthClientCertificateConfigCodec struct {
}

+k8s:deepcopy-gen=false

func (ClusterSpecMasterAuthClientCertificateConfigCodec) Decode

func (ClusterSpecMasterAuthClientCertificateConfigCodec) Encode

func (ClusterSpecMasterAuthClientCertificateConfigCodec) IsEmpty

type ClusterSpecMasterAuthCodec

type ClusterSpecMasterAuthCodec struct {
}

+k8s:deepcopy-gen=false

func (ClusterSpecMasterAuthCodec) Decode

func (ClusterSpecMasterAuthCodec) Encode

func (ClusterSpecMasterAuthCodec) IsEmpty

type ClusterSpecMasterAuthorizedNetworksConfig

type ClusterSpecMasterAuthorizedNetworksConfig struct {
	// External networks that can access the Kubernetes cluster master through HTTPS.
	// +optional
	CidrBlocks []ClusterSpecMasterAuthorizedNetworksConfigCidrBlocks `json:"cidrBlocks,omitempty" tf:"cidr_blocks"`
}

func (*ClusterSpecMasterAuthorizedNetworksConfig) DeepCopy

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

func (*ClusterSpecMasterAuthorizedNetworksConfig) DeepCopyInto

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

type ClusterSpecMasterAuthorizedNetworksConfigCidrBlocks

type ClusterSpecMasterAuthorizedNetworksConfigCidrBlocks struct {
	// External network that can access Kubernetes master through HTTPS. Must be specified in CIDR notation.
	CidrBlock *string `json:"cidrBlock" tf:"cidr_block"`
	// Field for users to identify CIDR blocks.
	// +optional
	DisplayName *string `json:"displayName,omitempty" tf:"display_name"`
}

func (*ClusterSpecMasterAuthorizedNetworksConfigCidrBlocks) DeepCopy

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

func (*ClusterSpecMasterAuthorizedNetworksConfigCidrBlocks) DeepCopyInto

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

type ClusterSpecMasterAuthorizedNetworksConfigCodec

type ClusterSpecMasterAuthorizedNetworksConfigCodec struct {
}

+k8s:deepcopy-gen=false

func (ClusterSpecMasterAuthorizedNetworksConfigCodec) Decode

func (ClusterSpecMasterAuthorizedNetworksConfigCodec) Encode

func (ClusterSpecMasterAuthorizedNetworksConfigCodec) IsEmpty

type ClusterSpecMonitoringConfig added in v0.4.0

type ClusterSpecMonitoringConfig struct {
	// GKE components exposing metrics. Valid values include SYSTEM_COMPONENTS.
	EnableComponents []string `json:"enableComponents" tf:"enable_components"`
}

func (*ClusterSpecMonitoringConfig) DeepCopy added in v0.4.0

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

func (*ClusterSpecMonitoringConfig) DeepCopyInto added in v0.4.0

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

type ClusterSpecMonitoringConfigCodec added in v0.4.0

type ClusterSpecMonitoringConfigCodec struct {
}

+k8s:deepcopy-gen=false

func (ClusterSpecMonitoringConfigCodec) Decode added in v0.4.0

func (ClusterSpecMonitoringConfigCodec) Encode added in v0.4.0

func (ClusterSpecMonitoringConfigCodec) IsEmpty added in v0.4.0

type ClusterSpecNetworkPolicy

type ClusterSpecNetworkPolicy struct {
	// Whether network policy is enabled on the cluster.
	Enabled *bool `json:"enabled" tf:"enabled"`
	// The selected network policy provider. Defaults to PROVIDER_UNSPECIFIED.
	// +optional
	Provider *string `json:"provider,omitempty" tf:"provider"`
}

func (*ClusterSpecNetworkPolicy) DeepCopy

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

func (*ClusterSpecNetworkPolicy) DeepCopyInto

func (in *ClusterSpecNetworkPolicy) DeepCopyInto(out *ClusterSpecNetworkPolicy)

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

type ClusterSpecNetworkPolicyCodec

type ClusterSpecNetworkPolicyCodec struct {
}

+k8s:deepcopy-gen=false

func (ClusterSpecNetworkPolicyCodec) Decode

func (ClusterSpecNetworkPolicyCodec) Encode

func (ClusterSpecNetworkPolicyCodec) IsEmpty

type ClusterSpecNodeConfig

type ClusterSpecNodeConfig struct {
	// The Customer Managed Encryption Key used to encrypt the boot disk attached to each node in the node pool.
	// +optional
	BootDiskKmsKey *string `json:"bootDiskKmsKey,omitempty" tf:"boot_disk_kms_key"`
	// Size of the disk attached to each node, specified in GB. The smallest allowed disk size is 10GB.
	// +optional
	DiskSizeGb *int64 `json:"diskSizeGb,omitempty" tf:"disk_size_gb"`
	// Type of the disk attached to each node.
	// +optional
	DiskType *string `json:"diskType,omitempty" tf:"disk_type"`
	// GCFS configuration for this node.
	// +optional
	GcfsConfig *ClusterSpecNodeConfigGcfsConfig `json:"gcfsConfig,omitempty" tf:"gcfs_config"`
	// List of the type and count of accelerator cards attached to the instance.
	// +optional
	GuestAccelerator []ClusterSpecNodeConfigGuestAccelerator `json:"guestAccelerator,omitempty" tf:"guest_accelerator"`
	// The image type to use for this node. Note that for a given image type, the latest version of it will be used.
	// +optional
	ImageType *string `json:"imageType,omitempty" tf:"image_type"`
	// The map of Kubernetes labels (key/value pairs) to be applied to each node. These will added in addition to any default label(s) that Kubernetes may apply to the node.
	// +optional
	Labels *map[string]string `json:"labels,omitempty" tf:"labels"`
	// The number of local SSD disks to be attached to the node.
	// +optional
	LocalSsdCount *int64 `json:"localSsdCount,omitempty" tf:"local_ssd_count"`
	// The name of a Google Compute Engine machine type.
	// +optional
	MachineType *string `json:"machineType,omitempty" tf:"machine_type"`
	// The metadata key/value pairs assigned to instances in the cluster.
	// +optional
	Metadata *map[string]string `json:"metadata,omitempty" tf:"metadata"`
	// Minimum CPU platform to be used by this instance. The instance may be scheduled on the specified or newer CPU platform.
	// +optional
	MinCPUPlatform *string `json:"minCPUPlatform,omitempty" tf:"min_cpu_platform"`
	// 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.
	// +optional
	NodeGroup *string `json:"nodeGroup,omitempty" tf:"node_group"`
	// The set of Google API scopes to be made available on all of the node VMs.
	// +optional
	OauthScopes []string `json:"oauthScopes,omitempty" tf:"oauth_scopes"`
	// Whether the nodes are created as preemptible VM instances.
	// +optional
	Preemptible *bool `json:"preemptible,omitempty" tf:"preemptible"`
	// The Google Cloud Platform Service Account to be used by the node VMs.
	// +optional
	ServiceAccount *string `json:"serviceAccount,omitempty" tf:"service_account"`
	// Shielded Instance options.
	// +optional
	ShieldedInstanceConfig *ClusterSpecNodeConfigShieldedInstanceConfig `json:"shieldedInstanceConfig,omitempty" tf:"shielded_instance_config"`
	// The list of instance tags applied to all nodes.
	// +optional
	Tags []string `json:"tags,omitempty" tf:"tags"`
	// List of Kubernetes taints to be applied to each node.
	// +optional
	Taint []ClusterSpecNodeConfigTaint `json:"taint,omitempty" tf:"taint"`
	// The workload metadata configuration for this node.
	// +optional
	WorkloadMetadataConfig *ClusterSpecNodeConfigWorkloadMetadataConfig `json:"workloadMetadataConfig,omitempty" tf:"workload_metadata_config"`
}

func (*ClusterSpecNodeConfig) DeepCopy

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

func (*ClusterSpecNodeConfig) DeepCopyInto

func (in *ClusterSpecNodeConfig) DeepCopyInto(out *ClusterSpecNodeConfig)

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

type ClusterSpecNodeConfigCodec

type ClusterSpecNodeConfigCodec struct {
}

+k8s:deepcopy-gen=false

func (ClusterSpecNodeConfigCodec) Decode

func (ClusterSpecNodeConfigCodec) Encode

func (ClusterSpecNodeConfigCodec) IsEmpty

type ClusterSpecNodeConfigGcfsConfig added in v0.5.0

type ClusterSpecNodeConfigGcfsConfig struct {
	// Whether or not GCFS is enabled
	Enabled *bool `json:"enabled" tf:"enabled"`
}

func (*ClusterSpecNodeConfigGcfsConfig) DeepCopy added in v0.5.0

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

func (*ClusterSpecNodeConfigGcfsConfig) DeepCopyInto added in v0.5.0

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

type ClusterSpecNodeConfigGcfsConfigCodec added in v0.5.0

type ClusterSpecNodeConfigGcfsConfigCodec struct {
}

+k8s:deepcopy-gen=false

func (ClusterSpecNodeConfigGcfsConfigCodec) Decode added in v0.5.0

func (ClusterSpecNodeConfigGcfsConfigCodec) Encode added in v0.5.0

func (ClusterSpecNodeConfigGcfsConfigCodec) IsEmpty added in v0.5.0

type ClusterSpecNodeConfigGuestAccelerator

type ClusterSpecNodeConfigGuestAccelerator struct {
	// The number of the accelerator cards exposed to an instance.
	Count *int64 `json:"count" tf:"count"`
	// Size of partitions to create on the GPU. Valid values are described in the NVIDIA mig user guide (https://docs.nvidia.com/datacenter/tesla/mig-user-guide/#partitioning)
	// +optional
	GpuPartitionSize *string `json:"gpuPartitionSize,omitempty" tf:"gpu_partition_size"`
	// The accelerator type resource name.
	Type *string `json:"type" tf:"type"`
}

func (*ClusterSpecNodeConfigGuestAccelerator) DeepCopy

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

func (*ClusterSpecNodeConfigGuestAccelerator) DeepCopyInto

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

type ClusterSpecNodeConfigShieldedInstanceConfig

type ClusterSpecNodeConfigShieldedInstanceConfig struct {
	// Defines whether the instance has integrity monitoring enabled.
	// +optional
	EnableIntegrityMonitoring *bool `json:"enableIntegrityMonitoring,omitempty" tf:"enable_integrity_monitoring"`
	// Defines whether the instance has Secure Boot enabled.
	// +optional
	EnableSecureBoot *bool `json:"enableSecureBoot,omitempty" tf:"enable_secure_boot"`
}

func (*ClusterSpecNodeConfigShieldedInstanceConfig) DeepCopy

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

func (*ClusterSpecNodeConfigShieldedInstanceConfig) DeepCopyInto

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

type ClusterSpecNodeConfigShieldedInstanceConfigCodec

type ClusterSpecNodeConfigShieldedInstanceConfigCodec struct {
}

+k8s:deepcopy-gen=false

func (ClusterSpecNodeConfigShieldedInstanceConfigCodec) Decode

func (ClusterSpecNodeConfigShieldedInstanceConfigCodec) Encode

func (ClusterSpecNodeConfigShieldedInstanceConfigCodec) IsEmpty

type ClusterSpecNodeConfigTaint

type ClusterSpecNodeConfigTaint struct {
	// Effect for taint.
	Effect *string `json:"effect" tf:"effect"`
	// Key for taint.
	Key *string `json:"key" tf:"key"`
	// Value for taint.
	Value *string `json:"value" tf:"value"`
}

func (*ClusterSpecNodeConfigTaint) DeepCopy

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

func (*ClusterSpecNodeConfigTaint) DeepCopyInto

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

type ClusterSpecNodeConfigWorkloadMetadataConfig

type ClusterSpecNodeConfigWorkloadMetadataConfig struct {
	// Mode is the configuration for how to expose metadata to workloads running on the node.
	Mode *string `json:"mode" tf:"mode"`
}

func (*ClusterSpecNodeConfigWorkloadMetadataConfig) DeepCopy

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

func (*ClusterSpecNodeConfigWorkloadMetadataConfig) DeepCopyInto

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

type ClusterSpecNodeConfigWorkloadMetadataConfigCodec

type ClusterSpecNodeConfigWorkloadMetadataConfigCodec struct {
}

+k8s:deepcopy-gen=false

func (ClusterSpecNodeConfigWorkloadMetadataConfigCodec) Decode

func (ClusterSpecNodeConfigWorkloadMetadataConfigCodec) Encode

func (ClusterSpecNodeConfigWorkloadMetadataConfigCodec) IsEmpty

type ClusterSpecNodePool

type ClusterSpecNodePool struct {
	// Configuration required by cluster autoscaler to adjust the size of the node pool to the current cluster usage.
	// +optional
	Autoscaling *ClusterSpecNodePoolAutoscaling `json:"autoscaling,omitempty" tf:"autoscaling"`
	// 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.
	// +optional
	InitialNodeCount *int64 `json:"initialNodeCount,omitempty" tf:"initial_node_count"`
	// The resource URLs of the managed instance groups associated with this node pool.
	// +optional
	InstanceGroupUrls []string `json:"instanceGroupUrls,omitempty" tf:"instance_group_urls"`
	// List of instance group URLs which have been assigned to this node pool.
	// +optional
	ManagedInstanceGroupUrls []string `json:"managedInstanceGroupUrls,omitempty" tf:"managed_instance_group_urls"`
	// Node management configuration, wherein auto-repair and auto-upgrade is configured.
	// +optional
	Management *ClusterSpecNodePoolManagement `json:"management,omitempty" tf:"management"`
	// 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.
	// +optional
	MaxPodsPerNode *int64 `json:"maxPodsPerNode,omitempty" tf:"max_pods_per_node"`
	// The name of the node pool. If left blank, Terraform will auto-generate a unique name.
	// +optional
	Name *string `json:"name,omitempty" tf:"name"`
	// Creates a unique name for the node pool beginning with the specified prefix. Conflicts with name.
	// +optional
	NamePrefix *string `json:"namePrefix,omitempty" tf:"name_prefix"`
	// The configuration of the nodepool
	// +optional
	NodeConfig *ClusterSpecNodePoolNodeConfig `json:"nodeConfig,omitempty" tf:"node_config"`
	// 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.
	// +optional
	NodeCount *int64 `json:"nodeCount,omitempty" tf:"node_count"`
	// 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.
	// +optional
	NodeLocations []string `json:"nodeLocations,omitempty" tf:"node_locations"`
	// Specify node upgrade settings to change how many nodes GKE attempts to upgrade at once. The number of nodes upgraded simultaneously is the sum of max_surge and max_unavailable. The maximum number of nodes upgraded simultaneously is limited to 20.
	// +optional
	UpgradeSettings *ClusterSpecNodePoolUpgradeSettings `json:"upgradeSettings,omitempty" tf:"upgrade_settings"`
	// 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. While a fuzzy version can be specified, it's recommended that you specify explicit versions as Terraform will see spurious diffs when fuzzy versions are used. See the google_container_engine_versions data source's version_prefix field to approximate fuzzy versions in a Terraform-compatible way.
	// +optional
	Version *string `json:"version,omitempty" tf:"version"`
}

func (*ClusterSpecNodePool) DeepCopy

func (in *ClusterSpecNodePool) DeepCopy() *ClusterSpecNodePool

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

func (*ClusterSpecNodePool) DeepCopyInto

func (in *ClusterSpecNodePool) DeepCopyInto(out *ClusterSpecNodePool)

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

type ClusterSpecNodePoolAutoscaling

type ClusterSpecNodePoolAutoscaling struct {
	// Maximum number of nodes in the NodePool. Must be >= min_node_count.
	MaxNodeCount *int64 `json:"maxNodeCount" tf:"max_node_count"`
	// Minimum number of nodes in the NodePool. Must be >=0 and <= max_node_count.
	MinNodeCount *int64 `json:"minNodeCount" tf:"min_node_count"`
}

func (*ClusterSpecNodePoolAutoscaling) DeepCopy

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

func (*ClusterSpecNodePoolAutoscaling) DeepCopyInto

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

type ClusterSpecNodePoolAutoscalingCodec

type ClusterSpecNodePoolAutoscalingCodec struct {
}

+k8s:deepcopy-gen=false

func (ClusterSpecNodePoolAutoscalingCodec) Decode

func (ClusterSpecNodePoolAutoscalingCodec) Encode

func (ClusterSpecNodePoolAutoscalingCodec) IsEmpty

type ClusterSpecNodePoolManagement

type ClusterSpecNodePoolManagement struct {
	// Whether the nodes will be automatically repaired.
	// +optional
	AutoRepair *bool `json:"autoRepair,omitempty" tf:"auto_repair"`
	// Whether the nodes will be automatically upgraded.
	// +optional
	AutoUpgrade *bool `json:"autoUpgrade,omitempty" tf:"auto_upgrade"`
}

func (*ClusterSpecNodePoolManagement) DeepCopy

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

func (*ClusterSpecNodePoolManagement) DeepCopyInto

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

type ClusterSpecNodePoolManagementCodec

type ClusterSpecNodePoolManagementCodec struct {
}

+k8s:deepcopy-gen=false

func (ClusterSpecNodePoolManagementCodec) Decode

func (ClusterSpecNodePoolManagementCodec) Encode

func (ClusterSpecNodePoolManagementCodec) IsEmpty

type ClusterSpecNodePoolNodeConfig

type ClusterSpecNodePoolNodeConfig struct {
	// The Customer Managed Encryption Key used to encrypt the boot disk attached to each node in the node pool.
	// +optional
	BootDiskKmsKey *string `json:"bootDiskKmsKey,omitempty" tf:"boot_disk_kms_key"`
	// Size of the disk attached to each node, specified in GB. The smallest allowed disk size is 10GB.
	// +optional
	DiskSizeGb *int64 `json:"diskSizeGb,omitempty" tf:"disk_size_gb"`
	// Type of the disk attached to each node.
	// +optional
	DiskType *string `json:"diskType,omitempty" tf:"disk_type"`
	// GCFS configuration for this node.
	// +optional
	GcfsConfig *ClusterSpecNodePoolNodeConfigGcfsConfig `json:"gcfsConfig,omitempty" tf:"gcfs_config"`
	// List of the type and count of accelerator cards attached to the instance.
	// +optional
	GuestAccelerator []ClusterSpecNodePoolNodeConfigGuestAccelerator `json:"guestAccelerator,omitempty" tf:"guest_accelerator"`
	// The image type to use for this node. Note that for a given image type, the latest version of it will be used.
	// +optional
	ImageType *string `json:"imageType,omitempty" tf:"image_type"`
	// The map of Kubernetes labels (key/value pairs) to be applied to each node. These will added in addition to any default label(s) that Kubernetes may apply to the node.
	// +optional
	Labels *map[string]string `json:"labels,omitempty" tf:"labels"`
	// The number of local SSD disks to be attached to the node.
	// +optional
	LocalSsdCount *int64 `json:"localSsdCount,omitempty" tf:"local_ssd_count"`
	// The name of a Google Compute Engine machine type.
	// +optional
	MachineType *string `json:"machineType,omitempty" tf:"machine_type"`
	// The metadata key/value pairs assigned to instances in the cluster.
	// +optional
	Metadata *map[string]string `json:"metadata,omitempty" tf:"metadata"`
	// Minimum CPU platform to be used by this instance. The instance may be scheduled on the specified or newer CPU platform.
	// +optional
	MinCPUPlatform *string `json:"minCPUPlatform,omitempty" tf:"min_cpu_platform"`
	// 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.
	// +optional
	NodeGroup *string `json:"nodeGroup,omitempty" tf:"node_group"`
	// The set of Google API scopes to be made available on all of the node VMs.
	// +optional
	OauthScopes []string `json:"oauthScopes,omitempty" tf:"oauth_scopes"`
	// Whether the nodes are created as preemptible VM instances.
	// +optional
	Preemptible *bool `json:"preemptible,omitempty" tf:"preemptible"`
	// The Google Cloud Platform Service Account to be used by the node VMs.
	// +optional
	ServiceAccount *string `json:"serviceAccount,omitempty" tf:"service_account"`
	// Shielded Instance options.
	// +optional
	ShieldedInstanceConfig *ClusterSpecNodePoolNodeConfigShieldedInstanceConfig `json:"shieldedInstanceConfig,omitempty" tf:"shielded_instance_config"`
	// The list of instance tags applied to all nodes.
	// +optional
	Tags []string `json:"tags,omitempty" tf:"tags"`
	// List of Kubernetes taints to be applied to each node.
	// +optional
	Taint []ClusterSpecNodePoolNodeConfigTaint `json:"taint,omitempty" tf:"taint"`
	// The workload metadata configuration for this node.
	// +optional
	WorkloadMetadataConfig *ClusterSpecNodePoolNodeConfigWorkloadMetadataConfig `json:"workloadMetadataConfig,omitempty" tf:"workload_metadata_config"`
}

func (*ClusterSpecNodePoolNodeConfig) DeepCopy

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

func (*ClusterSpecNodePoolNodeConfig) DeepCopyInto

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

type ClusterSpecNodePoolNodeConfigCodec

type ClusterSpecNodePoolNodeConfigCodec struct {
}

+k8s:deepcopy-gen=false

func (ClusterSpecNodePoolNodeConfigCodec) Decode

func (ClusterSpecNodePoolNodeConfigCodec) Encode

func (ClusterSpecNodePoolNodeConfigCodec) IsEmpty

type ClusterSpecNodePoolNodeConfigGcfsConfig added in v0.5.0

type ClusterSpecNodePoolNodeConfigGcfsConfig struct {
	// Whether or not GCFS is enabled
	Enabled *bool `json:"enabled" tf:"enabled"`
}

func (*ClusterSpecNodePoolNodeConfigGcfsConfig) DeepCopy added in v0.5.0

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

func (*ClusterSpecNodePoolNodeConfigGcfsConfig) DeepCopyInto added in v0.5.0

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

type ClusterSpecNodePoolNodeConfigGcfsConfigCodec added in v0.5.0

type ClusterSpecNodePoolNodeConfigGcfsConfigCodec struct {
}

+k8s:deepcopy-gen=false

func (ClusterSpecNodePoolNodeConfigGcfsConfigCodec) Decode added in v0.5.0

func (ClusterSpecNodePoolNodeConfigGcfsConfigCodec) Encode added in v0.5.0

func (ClusterSpecNodePoolNodeConfigGcfsConfigCodec) IsEmpty added in v0.5.0

type ClusterSpecNodePoolNodeConfigGuestAccelerator

type ClusterSpecNodePoolNodeConfigGuestAccelerator struct {
	// The number of the accelerator cards exposed to an instance.
	Count *int64 `json:"count" tf:"count"`
	// Size of partitions to create on the GPU. Valid values are described in the NVIDIA mig user guide (https://docs.nvidia.com/datacenter/tesla/mig-user-guide/#partitioning)
	// +optional
	GpuPartitionSize *string `json:"gpuPartitionSize,omitempty" tf:"gpu_partition_size"`
	// The accelerator type resource name.
	Type *string `json:"type" tf:"type"`
}

func (*ClusterSpecNodePoolNodeConfigGuestAccelerator) DeepCopy

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

func (*ClusterSpecNodePoolNodeConfigGuestAccelerator) DeepCopyInto

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

type ClusterSpecNodePoolNodeConfigShieldedInstanceConfig

type ClusterSpecNodePoolNodeConfigShieldedInstanceConfig struct {
	// Defines whether the instance has integrity monitoring enabled.
	// +optional
	EnableIntegrityMonitoring *bool `json:"enableIntegrityMonitoring,omitempty" tf:"enable_integrity_monitoring"`
	// Defines whether the instance has Secure Boot enabled.
	// +optional
	EnableSecureBoot *bool `json:"enableSecureBoot,omitempty" tf:"enable_secure_boot"`
}

func (*ClusterSpecNodePoolNodeConfigShieldedInstanceConfig) DeepCopy

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

func (*ClusterSpecNodePoolNodeConfigShieldedInstanceConfig) DeepCopyInto

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

type ClusterSpecNodePoolNodeConfigShieldedInstanceConfigCodec

type ClusterSpecNodePoolNodeConfigShieldedInstanceConfigCodec struct {
}

+k8s:deepcopy-gen=false

func (ClusterSpecNodePoolNodeConfigShieldedInstanceConfigCodec) Decode

func (ClusterSpecNodePoolNodeConfigShieldedInstanceConfigCodec) Encode

func (ClusterSpecNodePoolNodeConfigShieldedInstanceConfigCodec) IsEmpty

type ClusterSpecNodePoolNodeConfigTaint

type ClusterSpecNodePoolNodeConfigTaint struct {
	// Effect for taint.
	Effect *string `json:"effect" tf:"effect"`
	// Key for taint.
	Key *string `json:"key" tf:"key"`
	// Value for taint.
	Value *string `json:"value" tf:"value"`
}

func (*ClusterSpecNodePoolNodeConfigTaint) DeepCopy

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

func (*ClusterSpecNodePoolNodeConfigTaint) DeepCopyInto

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

type ClusterSpecNodePoolNodeConfigWorkloadMetadataConfig

type ClusterSpecNodePoolNodeConfigWorkloadMetadataConfig struct {
	// Mode is the configuration for how to expose metadata to workloads running on the node.
	Mode *string `json:"mode" tf:"mode"`
}

func (*ClusterSpecNodePoolNodeConfigWorkloadMetadataConfig) DeepCopy

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

func (*ClusterSpecNodePoolNodeConfigWorkloadMetadataConfig) DeepCopyInto

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

type ClusterSpecNodePoolNodeConfigWorkloadMetadataConfigCodec

type ClusterSpecNodePoolNodeConfigWorkloadMetadataConfigCodec struct {
}

+k8s:deepcopy-gen=false

func (ClusterSpecNodePoolNodeConfigWorkloadMetadataConfigCodec) Decode

func (ClusterSpecNodePoolNodeConfigWorkloadMetadataConfigCodec) Encode

func (ClusterSpecNodePoolNodeConfigWorkloadMetadataConfigCodec) IsEmpty

type ClusterSpecNodePoolUpgradeSettings

type ClusterSpecNodePoolUpgradeSettings struct {
	// 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.
	MaxSurge *int64 `json:"maxSurge" tf:"max_surge"`
	// 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.
	MaxUnavailable *int64 `json:"maxUnavailable" tf:"max_unavailable"`
}

func (*ClusterSpecNodePoolUpgradeSettings) DeepCopy

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

func (*ClusterSpecNodePoolUpgradeSettings) DeepCopyInto

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

type ClusterSpecNodePoolUpgradeSettingsCodec

type ClusterSpecNodePoolUpgradeSettingsCodec struct {
}

+k8s:deepcopy-gen=false

func (ClusterSpecNodePoolUpgradeSettingsCodec) Decode

func (ClusterSpecNodePoolUpgradeSettingsCodec) Encode

func (ClusterSpecNodePoolUpgradeSettingsCodec) IsEmpty

type ClusterSpecPrivateClusterConfig

type ClusterSpecPrivateClusterConfig struct {
	// 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.
	EnablePrivateEndpoint *bool `json:"enablePrivateEndpoint" tf:"enable_private_endpoint"`
	// 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.
	// +optional
	EnablePrivateNodes *bool `json:"enablePrivateNodes,omitempty" tf:"enable_private_nodes"`
	// Controls cluster master global access settings.
	// +optional
	MasterGlobalAccessConfig *ClusterSpecPrivateClusterConfigMasterGlobalAccessConfig `json:"masterGlobalAccessConfig,omitempty" tf:"master_global_access_config"`
	// 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.
	// +optional
	MasterIpv4CIDRBlock *string `json:"masterIpv4CIDRBlock,omitempty" tf:"master_ipv4_cidr_block"`
	// The name of the peering between this cluster and the Google owned VPC.
	// +optional
	PeeringName *string `json:"peeringName,omitempty" tf:"peering_name"`
	// The internal IP address of this cluster's master endpoint.
	// +optional
	PrivateEndpoint *string `json:"privateEndpoint,omitempty" tf:"private_endpoint"`
	// The external IP address of this cluster's master endpoint.
	// +optional
	PublicEndpoint *string `json:"publicEndpoint,omitempty" tf:"public_endpoint"`
}

func (*ClusterSpecPrivateClusterConfig) DeepCopy

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

func (*ClusterSpecPrivateClusterConfig) DeepCopyInto

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

type ClusterSpecPrivateClusterConfigCodec

type ClusterSpecPrivateClusterConfigCodec struct {
}

+k8s:deepcopy-gen=false

func (ClusterSpecPrivateClusterConfigCodec) Decode

func (ClusterSpecPrivateClusterConfigCodec) Encode

func (ClusterSpecPrivateClusterConfigCodec) IsEmpty

type ClusterSpecPrivateClusterConfigMasterGlobalAccessConfig

type ClusterSpecPrivateClusterConfigMasterGlobalAccessConfig struct {
	// Whether the cluster master is accessible globally or not.
	Enabled *bool `json:"enabled" tf:"enabled"`
}

func (*ClusterSpecPrivateClusterConfigMasterGlobalAccessConfig) DeepCopy

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

func (*ClusterSpecPrivateClusterConfigMasterGlobalAccessConfig) DeepCopyInto

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

type ClusterSpecPrivateClusterConfigMasterGlobalAccessConfigCodec

type ClusterSpecPrivateClusterConfigMasterGlobalAccessConfigCodec struct {
}

+k8s:deepcopy-gen=false

func (ClusterSpecPrivateClusterConfigMasterGlobalAccessConfigCodec) Decode

func (ClusterSpecPrivateClusterConfigMasterGlobalAccessConfigCodec) Encode

func (ClusterSpecPrivateClusterConfigMasterGlobalAccessConfigCodec) IsEmpty

type ClusterSpecReleaseChannel

type ClusterSpecReleaseChannel struct {
	// The selected release channel. Accepted values are:
	// * UNSPECIFIED: Not set.
	// * RAPID: Weekly upgrade cadence; Early testers and developers who requires new features.
	// * REGULAR: Multiple per month upgrade cadence; Production users who need features not yet offered in the Stable channel.
	// * STABLE: Every few months upgrade cadence; Production users who need stability above all else, and for whom frequent upgrades are too risky.
	Channel *string `json:"channel" tf:"channel"`
}

func (*ClusterSpecReleaseChannel) DeepCopy

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

func (*ClusterSpecReleaseChannel) DeepCopyInto

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

type ClusterSpecReleaseChannelCodec

type ClusterSpecReleaseChannelCodec struct {
}

+k8s:deepcopy-gen=false

func (ClusterSpecReleaseChannelCodec) Decode

func (ClusterSpecReleaseChannelCodec) Encode

func (ClusterSpecReleaseChannelCodec) IsEmpty

type ClusterSpecResource

type ClusterSpecResource struct {
	Timeouts *base.ResourceTimeout `json:"timeouts,omitempty" tf:"timeouts"`

	ID string `json:"id,omitempty" tf:"id,omitempty"`

	// The configuration for addons supported by GKE.
	// +optional
	AddonsConfig *ClusterSpecAddonsConfig `json:"addonsConfig,omitempty" tf:"addons_config"`
	// Configuration for the Google Groups for GKE feature.
	// +optional
	AuthenticatorGroupsConfig *ClusterSpecAuthenticatorGroupsConfig `json:"authenticatorGroupsConfig,omitempty" tf:"authenticator_groups_config"`
	// 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.
	// +optional
	ClusterAutoscaling *ClusterSpecClusterAutoscaling `json:"clusterAutoscaling,omitempty" tf:"cluster_autoscaling"`
	// 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.
	// +optional
	ClusterIpv4CIDR *string `json:"clusterIpv4CIDR,omitempty" tf:"cluster_ipv4_cidr"`
	// Configuration for the confidential nodes feature, which makes nodes run on confidential VMs. Warning: This configuration can't be changed (or added/removed) after cluster creation without deleting and recreating the entire cluster.
	// +optional
	ConfidentialNodes *ClusterSpecConfidentialNodes `json:"confidentialNodes,omitempty" tf:"confidential_nodes"`
	// Application-layer Secrets Encryption settings. The object format is {state = string, key_name = string}. Valid values of state are: "ENCRYPTED"; "DECRYPTED". key_name is the name of a CloudKMS key.
	// +optional
	DatabaseEncryption *ClusterSpecDatabaseEncryption `json:"databaseEncryption,omitempty" tf:"database_encryption"`
	// The desired datapath provider for this cluster. By default, uses the IPTables-based kube-proxy implementation.
	// +optional
	DatapathProvider *string `json:"datapathProvider,omitempty" tf:"datapath_provider"`
	// 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.
	// +optional
	DefaultMaxPodsPerNode *int64 `json:"defaultMaxPodsPerNode,omitempty" tf:"default_max_pods_per_node"`
	// Whether the cluster disables default in-node sNAT rules. In-node sNAT rules will be disabled when defaultSnatStatus is disabled.
	// +optional
	DefaultSnatStatus *ClusterSpecDefaultSnatStatus `json:"defaultSnatStatus,omitempty" tf:"default_snat_status"`
	//  Description of the cluster.
	// +optional
	Description *string `json:"description,omitempty" tf:"description"`
	// Configuration for Cloud DNS for Kubernetes Engine.
	// +optional
	DnsConfig *ClusterSpecDnsConfig `json:"dnsConfig,omitempty" tf:"dns_config"`
	// Enable Autopilot for this cluster.
	// +optional
	EnableAutopilot *bool `json:"enableAutopilot,omitempty" tf:"enable_autopilot"`
	// Enable Binary Authorization for this cluster. If enabled, all container images will be validated by Google Binary Authorization.
	// +optional
	EnableBinaryAuthorization *bool `json:"enableBinaryAuthorization,omitempty" tf:"enable_binary_authorization"`
	// Whether Intra-node visibility is enabled for this cluster. This makes same node pod to pod traffic visible for VPC network.
	// +optional
	EnableIntranodeVisibility *bool `json:"enableIntranodeVisibility,omitempty" tf:"enable_intranode_visibility"`
	// 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.
	// +optional
	EnableKubernetesAlpha *bool `json:"enableKubernetesAlpha,omitempty" tf:"enable_kubernetes_alpha"`
	// 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.
	// +optional
	EnableLegacyAbac *bool `json:"enableLegacyAbac,omitempty" tf:"enable_legacy_abac"`
	// Enable Shielded Nodes features on all nodes in this cluster. Defaults to true.
	// +optional
	EnableShieldedNodes *bool `json:"enableShieldedNodes,omitempty" tf:"enable_shielded_nodes"`
	// Whether to enable Cloud TPU resources in this cluster.
	// +optional
	EnableTpu *bool `json:"enableTpu,omitempty" tf:"enable_tpu"`
	// The IP address of this cluster's Kubernetes master.
	// +optional
	Endpoint *string `json:"endpoint,omitempty" tf:"endpoint"`
	// 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.
	// +optional
	InitialNodeCount *int64 `json:"initialNodeCount,omitempty" tf:"initial_node_count"`
	// Configuration of cluster IP allocation for VPC-native clusters. Adding this block enables IP aliasing, making the cluster VPC-native instead of routes-based.
	// +optional
	IpAllocationPolicy *ClusterSpecIpAllocationPolicy `json:"ipAllocationPolicy,omitempty" tf:"ip_allocation_policy"`
	// The fingerprint of the set of labels for this cluster.
	// +optional
	LabelFingerprint *string `json:"labelFingerprint,omitempty" tf:"label_fingerprint"`
	// 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.
	// +optional
	Location *string `json:"location,omitempty" tf:"location"`
	// Logging configuration for the cluster.
	// +optional
	LoggingConfig *ClusterSpecLoggingConfig `json:"loggingConfig,omitempty" tf:"logging_config"`
	// 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.
	// +optional
	LoggingService *string `json:"loggingService,omitempty" tf:"logging_service"`
	// The maintenance policy to use for the cluster.
	// +optional
	MaintenancePolicy *ClusterSpecMaintenancePolicy `json:"maintenancePolicy,omitempty" tf:"maintenance_policy"`
	// 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.
	// +optional
	MasterAuth *ClusterSpecMasterAuth `json:"masterAuth,omitempty" tf:"master_auth"`
	// 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).
	// +optional
	MasterAuthorizedNetworksConfig *ClusterSpecMasterAuthorizedNetworksConfig `json:"masterAuthorizedNetworksConfig,omitempty" tf:"master_authorized_networks_config"`
	// 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.
	// +optional
	MasterVersion *string `json:"masterVersion,omitempty" tf:"master_version"`
	// 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).
	// +optional
	MinMasterVersion *string `json:"minMasterVersion,omitempty" tf:"min_master_version"`
	// Monitoring configuration for the cluster.
	// +optional
	MonitoringConfig *ClusterSpecMonitoringConfig `json:"monitoringConfig,omitempty" tf:"monitoring_config"`
	// 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.
	// +optional
	MonitoringService *string `json:"monitoringService,omitempty" tf:"monitoring_service"`
	// The name of the cluster, unique within the project and location.
	Name *string `json:"name" tf:"name"`
	// 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.
	// +optional
	Network *string `json:"network,omitempty" tf:"network"`
	// Configuration options for the NetworkPolicy feature.
	// +optional
	NetworkPolicy *ClusterSpecNetworkPolicy `json:"networkPolicy,omitempty" tf:"network_policy"`
	// Determines whether alias IPs or routes will be used for pod IPs in the cluster.
	// +optional
	NetworkingMode *string `json:"networkingMode,omitempty" tf:"networking_mode"`
	// The configuration of the nodepool
	// +optional
	NodeConfig *ClusterSpecNodeConfig `json:"nodeConfig,omitempty" tf:"node_config"`
	// 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.
	// +optional
	NodeLocations []string `json:"nodeLocations,omitempty" tf:"node_locations"`
	// 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.
	// +optional
	NodePool []ClusterSpecNodePool `json:"nodePool,omitempty" tf:"node_pool"`
	// 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. While a fuzzy version can be specified, it's recommended that you specify explicit versions as Terraform will see spurious diffs when fuzzy versions are used. See the google_container_engine_versions data source's version_prefix field to approximate fuzzy versions in a Terraform-compatible way. To update nodes in other node pools, use the version attribute on the node pool.
	// +optional
	NodeVersion *string `json:"nodeVersion,omitempty" tf:"node_version"`
	// +optional
	Operation *string `json:"operation,omitempty" tf:"operation"`
	// Configuration for private clusters, clusters with private nodes.
	// +optional
	PrivateClusterConfig *ClusterSpecPrivateClusterConfig `json:"privateClusterConfig,omitempty" tf:"private_cluster_config"`
	// 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).
	// +optional
	PrivateIpv6GoogleAccess *string `json:"privateIpv6GoogleAccess,omitempty" tf:"private_ipv6_google_access"`
	// The ID of the project in which the resource belongs. If it is not provided, the provider project is used.
	// +optional
	Project *string `json:"project,omitempty" tf:"project"`
	// Configuration options for the Release channel feature, which provide more control over automatic upgrades of your GKE clusters. Note that removing this field from your config will not unenroll it. Instead, use the "UNSPECIFIED" channel.
	// +optional
	ReleaseChannel *ClusterSpecReleaseChannel `json:"releaseChannel,omitempty" tf:"release_channel"`
	// 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.
	// +optional
	RemoveDefaultNodePool *bool `json:"removeDefaultNodePool,omitempty" tf:"remove_default_node_pool"`
	// The GCE resource labels (a map of key/value pairs) to be applied to the cluster.
	// +optional
	ResourceLabels *map[string]string `json:"resourceLabels,omitempty" tf:"resource_labels"`
	// Configuration for the ResourceUsageExportConfig feature.
	// +optional
	ResourceUsageExportConfig *ClusterSpecResourceUsageExportConfig `json:"resourceUsageExportConfig,omitempty" tf:"resource_usage_export_config"`
	// Server-defined URL for the resource.
	// +optional
	SelfLink *string `json:"selfLink,omitempty" tf:"self_link"`
	// 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.
	// +optional
	ServicesIpv4CIDR *string `json:"servicesIpv4CIDR,omitempty" tf:"services_ipv4_cidr"`
	// The name or self_link of the Google Compute Engine subnetwork in which the cluster's instances are launched.
	// +optional
	Subnetwork *string `json:"subnetwork,omitempty" tf:"subnetwork"`
	// The IP address range of the Cloud TPUs in this cluster, in CIDR notation (e.g. 1.2.3.4/29).
	// +optional
	TpuIpv4CIDRBlock *string `json:"tpuIpv4CIDRBlock,omitempty" tf:"tpu_ipv4_cidr_block"`
	// Vertical Pod Autoscaling automatically adjusts the resources of pods controlled by it.
	// +optional
	VerticalPodAutoscaling *ClusterSpecVerticalPodAutoscaling `json:"verticalPodAutoscaling,omitempty" tf:"vertical_pod_autoscaling"`
	// Configuration for the use of Kubernetes Service Accounts in GCP IAM policies.
	// +optional
	WorkloadIdentityConfig *ClusterSpecWorkloadIdentityConfig `json:"workloadIdentityConfig,omitempty" tf:"workload_identity_config"`
}

func (*ClusterSpecResource) DeepCopy

func (in *ClusterSpecResource) DeepCopy() *ClusterSpecResource

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

func (*ClusterSpecResource) DeepCopyInto

func (in *ClusterSpecResource) DeepCopyInto(out *ClusterSpecResource)

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

type ClusterSpecResourceUsageExportConfig

type ClusterSpecResourceUsageExportConfig struct {
	// Parameters for using BigQuery as the destination of resource usage export.
	BigqueryDestination *ClusterSpecResourceUsageExportConfigBigqueryDestination `json:"bigqueryDestination" tf:"bigquery_destination"`
	// Whether to enable network egress metering for this cluster. If enabled, a daemonset will be created in the cluster to meter network egress traffic.
	// +optional
	EnableNetworkEgressMetering *bool `json:"enableNetworkEgressMetering,omitempty" tf:"enable_network_egress_metering"`
	// 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.
	// +optional
	EnableResourceConsumptionMetering *bool `json:"enableResourceConsumptionMetering,omitempty" tf:"enable_resource_consumption_metering"`
}

func (*ClusterSpecResourceUsageExportConfig) DeepCopy

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

func (*ClusterSpecResourceUsageExportConfig) DeepCopyInto

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

type ClusterSpecResourceUsageExportConfigBigqueryDestination

type ClusterSpecResourceUsageExportConfigBigqueryDestination struct {
	// The ID of a BigQuery Dataset.
	DatasetID *string `json:"datasetID" tf:"dataset_id"`
}

func (*ClusterSpecResourceUsageExportConfigBigqueryDestination) DeepCopy

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

func (*ClusterSpecResourceUsageExportConfigBigqueryDestination) DeepCopyInto

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

type ClusterSpecResourceUsageExportConfigBigqueryDestinationCodec

type ClusterSpecResourceUsageExportConfigBigqueryDestinationCodec struct {
}

+k8s:deepcopy-gen=false

func (ClusterSpecResourceUsageExportConfigBigqueryDestinationCodec) Decode

func (ClusterSpecResourceUsageExportConfigBigqueryDestinationCodec) Encode

func (ClusterSpecResourceUsageExportConfigBigqueryDestinationCodec) IsEmpty

type ClusterSpecResourceUsageExportConfigCodec

type ClusterSpecResourceUsageExportConfigCodec struct {
}

+k8s:deepcopy-gen=false

func (ClusterSpecResourceUsageExportConfigCodec) Decode

func (ClusterSpecResourceUsageExportConfigCodec) Encode

func (ClusterSpecResourceUsageExportConfigCodec) IsEmpty

type ClusterSpecVerticalPodAutoscaling

type ClusterSpecVerticalPodAutoscaling struct {
	// Enables vertical pod autoscaling.
	Enabled *bool `json:"enabled" tf:"enabled"`
}

func (*ClusterSpecVerticalPodAutoscaling) DeepCopy

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

func (*ClusterSpecVerticalPodAutoscaling) DeepCopyInto

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

type ClusterSpecVerticalPodAutoscalingCodec

type ClusterSpecVerticalPodAutoscalingCodec struct {
}

+k8s:deepcopy-gen=false

func (ClusterSpecVerticalPodAutoscalingCodec) Decode

func (ClusterSpecVerticalPodAutoscalingCodec) Encode

func (ClusterSpecVerticalPodAutoscalingCodec) IsEmpty

type ClusterSpecWorkloadIdentityConfig

type ClusterSpecWorkloadIdentityConfig struct {
	// The workload pool to attach all Kubernetes service accounts to.
	// +optional
	WorkloadPool *string `json:"workloadPool,omitempty" tf:"workload_pool"`
}

func (*ClusterSpecWorkloadIdentityConfig) DeepCopy

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

func (*ClusterSpecWorkloadIdentityConfig) DeepCopyInto

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

type ClusterSpecWorkloadIdentityConfigCodec

type ClusterSpecWorkloadIdentityConfigCodec struct {
}

+k8s:deepcopy-gen=false

func (ClusterSpecWorkloadIdentityConfigCodec) Decode

func (ClusterSpecWorkloadIdentityConfigCodec) Encode

func (ClusterSpecWorkloadIdentityConfigCodec) IsEmpty

type ClusterStatus

type ClusterStatus struct {
	// Resource generation, which is updated on mutation by the API Server.
	// +optional
	ObservedGeneration int64 `json:"observedGeneration,omitempty"`
	// +optional
	Phase status.Status `json:"phase,omitempty"`
	// +optional
	Conditions []kmapi.Condition `json:"conditions,omitempty"`
}

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 NodePool

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

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) SetupWebhookWithManager

func (r *NodePool) SetupWebhookWithManager(mgr ctrl.Manager) error

func (*NodePool) ValidateCreate

func (r *NodePool) ValidateCreate() error

ValidateCreate implements webhook.Validator so a webhook will be registered for the type

func (*NodePool) ValidateDelete

func (r *NodePool) ValidateDelete() error

ValidateDelete implements webhook.Validator so a webhook will be registered for the type

func (*NodePool) ValidateUpdate

func (r *NodePool) ValidateUpdate(old runtime.Object) error

ValidateUpdate implements webhook.Validator so a webhook will be registered for the type

type NodePoolList

type NodePoolList struct {
	metav1.TypeMeta `json:",inline"`
	metav1.ListMeta `json:"metadata,omitempty"`
	// Items is a list of NodePool CRD objects
	Items []NodePool `json:"items,omitempty"`
}

NodePoolList is 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.

type NodePoolSpec

type NodePoolSpec struct {
	State *NodePoolSpecResource `json:"state,omitempty" tf:"-"`

	Resource NodePoolSpecResource `json:"resource" tf:"resource"`

	UpdatePolicy base.UpdatePolicy `json:"updatePolicy,omitempty" tf:"-"`

	TerminationPolicy base.TerminationPolicy `json:"terminationPolicy,omitempty" tf:"-"`

	ProviderRef core.LocalObjectReference `json:"providerRef" tf:"-"`

	BackendRef *core.LocalObjectReference `json:"backendRef,omitempty" tf:"-"`
}

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 NodePoolSpecAutoscaling

type NodePoolSpecAutoscaling struct {
	// Maximum number of nodes in the NodePool. Must be >= min_node_count.
	MaxNodeCount *int64 `json:"maxNodeCount" tf:"max_node_count"`
	// Minimum number of nodes in the NodePool. Must be >=0 and <= max_node_count.
	MinNodeCount *int64 `json:"minNodeCount" tf:"min_node_count"`
}

func (*NodePoolSpecAutoscaling) DeepCopy

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

func (*NodePoolSpecAutoscaling) DeepCopyInto

func (in *NodePoolSpecAutoscaling) DeepCopyInto(out *NodePoolSpecAutoscaling)

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

type NodePoolSpecAutoscalingCodec

type NodePoolSpecAutoscalingCodec struct {
}

+k8s:deepcopy-gen=false

func (NodePoolSpecAutoscalingCodec) Decode

func (NodePoolSpecAutoscalingCodec) Encode

func (NodePoolSpecAutoscalingCodec) IsEmpty

type NodePoolSpecManagement

type NodePoolSpecManagement struct {
	// Whether the nodes will be automatically repaired.
	// +optional
	AutoRepair *bool `json:"autoRepair,omitempty" tf:"auto_repair"`
	// Whether the nodes will be automatically upgraded.
	// +optional
	AutoUpgrade *bool `json:"autoUpgrade,omitempty" tf:"auto_upgrade"`
}

func (*NodePoolSpecManagement) DeepCopy

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

func (*NodePoolSpecManagement) DeepCopyInto

func (in *NodePoolSpecManagement) DeepCopyInto(out *NodePoolSpecManagement)

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

type NodePoolSpecManagementCodec

type NodePoolSpecManagementCodec struct {
}

+k8s:deepcopy-gen=false

func (NodePoolSpecManagementCodec) Decode

func (NodePoolSpecManagementCodec) Encode

func (NodePoolSpecManagementCodec) IsEmpty

type NodePoolSpecNodeConfig

type NodePoolSpecNodeConfig struct {
	// The Customer Managed Encryption Key used to encrypt the boot disk attached to each node in the node pool.
	// +optional
	BootDiskKmsKey *string `json:"bootDiskKmsKey,omitempty" tf:"boot_disk_kms_key"`
	// Size of the disk attached to each node, specified in GB. The smallest allowed disk size is 10GB.
	// +optional
	DiskSizeGb *int64 `json:"diskSizeGb,omitempty" tf:"disk_size_gb"`
	// Type of the disk attached to each node.
	// +optional
	DiskType *string `json:"diskType,omitempty" tf:"disk_type"`
	// GCFS configuration for this node.
	// +optional
	GcfsConfig *NodePoolSpecNodeConfigGcfsConfig `json:"gcfsConfig,omitempty" tf:"gcfs_config"`
	// List of the type and count of accelerator cards attached to the instance.
	// +optional
	GuestAccelerator []NodePoolSpecNodeConfigGuestAccelerator `json:"guestAccelerator,omitempty" tf:"guest_accelerator"`
	// The image type to use for this node. Note that for a given image type, the latest version of it will be used.
	// +optional
	ImageType *string `json:"imageType,omitempty" tf:"image_type"`
	// The map of Kubernetes labels (key/value pairs) to be applied to each node. These will added in addition to any default label(s) that Kubernetes may apply to the node.
	// +optional
	Labels *map[string]string `json:"labels,omitempty" tf:"labels"`
	// The number of local SSD disks to be attached to the node.
	// +optional
	LocalSsdCount *int64 `json:"localSsdCount,omitempty" tf:"local_ssd_count"`
	// The name of a Google Compute Engine machine type.
	// +optional
	MachineType *string `json:"machineType,omitempty" tf:"machine_type"`
	// The metadata key/value pairs assigned to instances in the cluster.
	// +optional
	Metadata *map[string]string `json:"metadata,omitempty" tf:"metadata"`
	// Minimum CPU platform to be used by this instance. The instance may be scheduled on the specified or newer CPU platform.
	// +optional
	MinCPUPlatform *string `json:"minCPUPlatform,omitempty" tf:"min_cpu_platform"`
	// 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.
	// +optional
	NodeGroup *string `json:"nodeGroup,omitempty" tf:"node_group"`
	// The set of Google API scopes to be made available on all of the node VMs.
	// +optional
	OauthScopes []string `json:"oauthScopes,omitempty" tf:"oauth_scopes"`
	// Whether the nodes are created as preemptible VM instances.
	// +optional
	Preemptible *bool `json:"preemptible,omitempty" tf:"preemptible"`
	// The Google Cloud Platform Service Account to be used by the node VMs.
	// +optional
	ServiceAccount *string `json:"serviceAccount,omitempty" tf:"service_account"`
	// Shielded Instance options.
	// +optional
	ShieldedInstanceConfig *NodePoolSpecNodeConfigShieldedInstanceConfig `json:"shieldedInstanceConfig,omitempty" tf:"shielded_instance_config"`
	// The list of instance tags applied to all nodes.
	// +optional
	Tags []string `json:"tags,omitempty" tf:"tags"`
	// List of Kubernetes taints to be applied to each node.
	// +optional
	Taint []NodePoolSpecNodeConfigTaint `json:"taint,omitempty" tf:"taint"`
	// The workload metadata configuration for this node.
	// +optional
	WorkloadMetadataConfig *NodePoolSpecNodeConfigWorkloadMetadataConfig `json:"workloadMetadataConfig,omitempty" tf:"workload_metadata_config"`
}

func (*NodePoolSpecNodeConfig) DeepCopy

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

func (*NodePoolSpecNodeConfig) DeepCopyInto

func (in *NodePoolSpecNodeConfig) DeepCopyInto(out *NodePoolSpecNodeConfig)

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

type NodePoolSpecNodeConfigCodec

type NodePoolSpecNodeConfigCodec struct {
}

+k8s:deepcopy-gen=false

func (NodePoolSpecNodeConfigCodec) Decode

func (NodePoolSpecNodeConfigCodec) Encode

func (NodePoolSpecNodeConfigCodec) IsEmpty

type NodePoolSpecNodeConfigGcfsConfig added in v0.5.0

type NodePoolSpecNodeConfigGcfsConfig struct {
	// Whether or not GCFS is enabled
	Enabled *bool `json:"enabled" tf:"enabled"`
}

func (*NodePoolSpecNodeConfigGcfsConfig) DeepCopy added in v0.5.0

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

func (*NodePoolSpecNodeConfigGcfsConfig) DeepCopyInto added in v0.5.0

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

type NodePoolSpecNodeConfigGcfsConfigCodec added in v0.5.0

type NodePoolSpecNodeConfigGcfsConfigCodec struct {
}

+k8s:deepcopy-gen=false

func (NodePoolSpecNodeConfigGcfsConfigCodec) Decode added in v0.5.0

func (NodePoolSpecNodeConfigGcfsConfigCodec) Encode added in v0.5.0

func (NodePoolSpecNodeConfigGcfsConfigCodec) IsEmpty added in v0.5.0

type NodePoolSpecNodeConfigGuestAccelerator

type NodePoolSpecNodeConfigGuestAccelerator struct {
	// The number of the accelerator cards exposed to an instance.
	Count *int64 `json:"count" tf:"count"`
	// Size of partitions to create on the GPU. Valid values are described in the NVIDIA mig user guide (https://docs.nvidia.com/datacenter/tesla/mig-user-guide/#partitioning)
	// +optional
	GpuPartitionSize *string `json:"gpuPartitionSize,omitempty" tf:"gpu_partition_size"`
	// The accelerator type resource name.
	Type *string `json:"type" tf:"type"`
}

func (*NodePoolSpecNodeConfigGuestAccelerator) DeepCopy

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

func (*NodePoolSpecNodeConfigGuestAccelerator) DeepCopyInto

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

type NodePoolSpecNodeConfigShieldedInstanceConfig

type NodePoolSpecNodeConfigShieldedInstanceConfig struct {
	// Defines whether the instance has integrity monitoring enabled.
	// +optional
	EnableIntegrityMonitoring *bool `json:"enableIntegrityMonitoring,omitempty" tf:"enable_integrity_monitoring"`
	// Defines whether the instance has Secure Boot enabled.
	// +optional
	EnableSecureBoot *bool `json:"enableSecureBoot,omitempty" tf:"enable_secure_boot"`
}

func (*NodePoolSpecNodeConfigShieldedInstanceConfig) DeepCopy

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

func (*NodePoolSpecNodeConfigShieldedInstanceConfig) DeepCopyInto

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

type NodePoolSpecNodeConfigShieldedInstanceConfigCodec

type NodePoolSpecNodeConfigShieldedInstanceConfigCodec struct {
}

+k8s:deepcopy-gen=false

func (NodePoolSpecNodeConfigShieldedInstanceConfigCodec) Decode

func (NodePoolSpecNodeConfigShieldedInstanceConfigCodec) Encode

func (NodePoolSpecNodeConfigShieldedInstanceConfigCodec) IsEmpty

type NodePoolSpecNodeConfigTaint

type NodePoolSpecNodeConfigTaint struct {
	// Effect for taint.
	Effect *string `json:"effect" tf:"effect"`
	// Key for taint.
	Key *string `json:"key" tf:"key"`
	// Value for taint.
	Value *string `json:"value" tf:"value"`
}

func (*NodePoolSpecNodeConfigTaint) DeepCopy

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

func (*NodePoolSpecNodeConfigTaint) DeepCopyInto

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

type NodePoolSpecNodeConfigWorkloadMetadataConfig

type NodePoolSpecNodeConfigWorkloadMetadataConfig struct {
	// Mode is the configuration for how to expose metadata to workloads running on the node.
	Mode *string `json:"mode" tf:"mode"`
}

func (*NodePoolSpecNodeConfigWorkloadMetadataConfig) DeepCopy

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

func (*NodePoolSpecNodeConfigWorkloadMetadataConfig) DeepCopyInto

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

type NodePoolSpecNodeConfigWorkloadMetadataConfigCodec

type NodePoolSpecNodeConfigWorkloadMetadataConfigCodec struct {
}

+k8s:deepcopy-gen=false

func (NodePoolSpecNodeConfigWorkloadMetadataConfigCodec) Decode

func (NodePoolSpecNodeConfigWorkloadMetadataConfigCodec) Encode

func (NodePoolSpecNodeConfigWorkloadMetadataConfigCodec) IsEmpty

type NodePoolSpecResource

type NodePoolSpecResource struct {
	Timeouts *base.ResourceTimeout `json:"timeouts,omitempty" tf:"timeouts"`

	ID string `json:"id,omitempty" tf:"id,omitempty"`

	// Configuration required by cluster autoscaler to adjust the size of the node pool to the current cluster usage.
	// +optional
	Autoscaling *NodePoolSpecAutoscaling `json:"autoscaling,omitempty" tf:"autoscaling"`
	// The cluster to create the node pool for. Cluster must be present in location provided for zonal clusters.
	Cluster *string `json:"cluster" tf:"cluster"`
	// 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.
	// +optional
	InitialNodeCount *int64 `json:"initialNodeCount,omitempty" tf:"initial_node_count"`
	// The resource URLs of the managed instance groups associated with this node pool.
	// +optional
	InstanceGroupUrls []string `json:"instanceGroupUrls,omitempty" tf:"instance_group_urls"`
	// The location (region or zone) of the cluster.
	// +optional
	Location *string `json:"location,omitempty" tf:"location"`
	// List of instance group URLs which have been assigned to this node pool.
	// +optional
	ManagedInstanceGroupUrls []string `json:"managedInstanceGroupUrls,omitempty" tf:"managed_instance_group_urls"`
	// Node management configuration, wherein auto-repair and auto-upgrade is configured.
	// +optional
	Management *NodePoolSpecManagement `json:"management,omitempty" tf:"management"`
	// 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.
	// +optional
	MaxPodsPerNode *int64 `json:"maxPodsPerNode,omitempty" tf:"max_pods_per_node"`
	// The name of the node pool. If left blank, Terraform will auto-generate a unique name.
	// +optional
	Name *string `json:"name,omitempty" tf:"name"`
	// Creates a unique name for the node pool beginning with the specified prefix. Conflicts with name.
	// +optional
	NamePrefix *string `json:"namePrefix,omitempty" tf:"name_prefix"`
	// The configuration of the nodepool
	// +optional
	NodeConfig *NodePoolSpecNodeConfig `json:"nodeConfig,omitempty" tf:"node_config"`
	// 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.
	// +optional
	NodeCount *int64 `json:"nodeCount,omitempty" tf:"node_count"`
	// 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.
	// +optional
	NodeLocations []string `json:"nodeLocations,omitempty" tf:"node_locations"`
	// +optional
	Operation *string `json:"operation,omitempty" tf:"operation"`
	// The ID of the project in which to create the node pool. If blank, the provider-configured project will be used.
	// +optional
	Project *string `json:"project,omitempty" tf:"project"`
	// Specify node upgrade settings to change how many nodes GKE attempts to upgrade at once. The number of nodes upgraded simultaneously is the sum of max_surge and max_unavailable. The maximum number of nodes upgraded simultaneously is limited to 20.
	// +optional
	UpgradeSettings *NodePoolSpecUpgradeSettings `json:"upgradeSettings,omitempty" tf:"upgrade_settings"`
	// 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. While a fuzzy version can be specified, it's recommended that you specify explicit versions as Terraform will see spurious diffs when fuzzy versions are used. See the google_container_engine_versions data source's version_prefix field to approximate fuzzy versions in a Terraform-compatible way.
	// +optional
	Version *string `json:"version,omitempty" tf:"version"`
}

func (*NodePoolSpecResource) DeepCopy

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

func (*NodePoolSpecResource) DeepCopyInto

func (in *NodePoolSpecResource) DeepCopyInto(out *NodePoolSpecResource)

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

type NodePoolSpecUpgradeSettings

type NodePoolSpecUpgradeSettings struct {
	// 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.
	MaxSurge *int64 `json:"maxSurge" tf:"max_surge"`
	// 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.
	MaxUnavailable *int64 `json:"maxUnavailable" tf:"max_unavailable"`
}

func (*NodePoolSpecUpgradeSettings) DeepCopy

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

func (*NodePoolSpecUpgradeSettings) DeepCopyInto

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

type NodePoolSpecUpgradeSettingsCodec

type NodePoolSpecUpgradeSettingsCodec struct {
}

+k8s:deepcopy-gen=false

func (NodePoolSpecUpgradeSettingsCodec) Decode

func (NodePoolSpecUpgradeSettingsCodec) Encode

func (NodePoolSpecUpgradeSettingsCodec) IsEmpty

type NodePoolStatus

type NodePoolStatus struct {
	// Resource generation, which is updated on mutation by the API Server.
	// +optional
	ObservedGeneration int64 `json:"observedGeneration,omitempty"`
	// +optional
	Phase status.Status `json:"phase,omitempty"`
	// +optional
	Conditions []kmapi.Condition `json:"conditions,omitempty"`
}

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 Registry

type Registry struct {
	metav1.TypeMeta   `json:",inline,omitempty"`
	metav1.ObjectMeta `json:"metadata,omitempty"`
	Spec              RegistrySpec   `json:"spec,omitempty"`
	Status            RegistryStatus `json:"status,omitempty"`
}

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) SetupWebhookWithManager

func (r *Registry) SetupWebhookWithManager(mgr ctrl.Manager) error

func (*Registry) ValidateCreate

func (r *Registry) ValidateCreate() error

ValidateCreate implements webhook.Validator so a webhook will be registered for the type

func (*Registry) ValidateDelete

func (r *Registry) ValidateDelete() error

ValidateDelete implements webhook.Validator so a webhook will be registered for the type

func (*Registry) ValidateUpdate

func (r *Registry) ValidateUpdate(old runtime.Object) error

ValidateUpdate implements webhook.Validator so a webhook will be registered for the type

type RegistryList

type RegistryList struct {
	metav1.TypeMeta `json:",inline"`
	metav1.ListMeta `json:"metadata,omitempty"`
	// Items is a list of Registry CRD objects
	Items []Registry `json:"items,omitempty"`
}

RegistryList is 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.

type RegistrySpec

type RegistrySpec struct {
	State *RegistrySpecResource `json:"state,omitempty" tf:"-"`

	Resource RegistrySpecResource `json:"resource" tf:"resource"`

	UpdatePolicy base.UpdatePolicy `json:"updatePolicy,omitempty" tf:"-"`

	TerminationPolicy base.TerminationPolicy `json:"terminationPolicy,omitempty" tf:"-"`

	ProviderRef core.LocalObjectReference `json:"providerRef" tf:"-"`

	BackendRef *core.LocalObjectReference `json:"backendRef,omitempty" tf:"-"`
}

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 RegistrySpecResource

type RegistrySpecResource struct {
	ID string `json:"id,omitempty" tf:"id,omitempty"`

	// The URI of the created resource.
	// +optional
	BucketSelfLink *string `json:"bucketSelfLink,omitempty" tf:"bucket_self_link"`
	// The location of the registry. One of ASIA, EU, US or not specified. See the official documentation for more information on registry locations.
	// +optional
	Location *string `json:"location,omitempty" tf:"location"`
	// The ID of the project in which the resource belongs. If it is not provided, the provider project is used.
	// +optional
	Project *string `json:"project,omitempty" tf:"project"`
}

func (*RegistrySpecResource) DeepCopy

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

func (*RegistrySpecResource) DeepCopyInto

func (in *RegistrySpecResource) DeepCopyInto(out *RegistrySpecResource)

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

type RegistryStatus

type RegistryStatus struct {
	// Resource generation, which is updated on mutation by the API Server.
	// +optional
	ObservedGeneration int64 `json:"observedGeneration,omitempty"`
	// +optional
	Phase status.Status `json:"phase,omitempty"`
	// +optional
	Conditions []kmapi.Condition `json:"conditions,omitempty"`
}

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.

Jump to

Keyboard shortcuts

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